@smoothbricks/cli 0.11.20 → 0.11.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/monorepo/packs/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,mBAAmB,CAAC;AAW5E,OAAO,EAKL,KAAK,sBAAsB,EAS5B,MAAM,sBAAsB,CAAC;AAU9B,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAClD,WAAW,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACzD,YAAY,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,gBAAgB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAClE,iBAAiB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,mBAAmB,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAC9F;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAmJD,0DAA0D;AAC1D,eAAO,MAAM,YAAY,gBAAQ,CAAC;AAElC,wBAAsB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,mBAAwB,EACjC,KAAK,GAAE,oBAAyB,GAC/B,OAAO,CAAC,kBAAkB,CAAC,CA0B7B;AAwMD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAexG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/monorepo/packs/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,mBAAmB,CAAC;AAW5E,OAAO,EAKL,KAAK,sBAAsB,EAS5B,MAAM,sBAAsB,CAAC;AAU9B,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAClD,WAAW,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACzD,YAAY,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,gBAAgB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAClE,iBAAiB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,mBAAmB,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAC9F;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAmJD,0DAA0D;AAC1D,eAAO,MAAM,YAAY,gBAAQ,CAAC;AAElC,wBAAsB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,mBAAwB,EACjC,KAAK,GAAE,oBAAyB,GAC/B,OAAO,CAAC,kBAAkB,CAAC,CA0B7B;AAwMD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAcxG"}
@@ -352,7 +352,6 @@ export function resolvedTargetsByProject(projects) {
352
352
  {
353
353
  ...(project.root ? { root: project.root } : {}),
354
354
  targets: new Set(project.targets),
355
- ...(project.buildDependsOn ? { buildDependsOn: project.buildDependsOn } : {}),
356
355
  ...(project.targetDependencies ? { targetDependencies: project.targetDependencies } : {}),
357
356
  ...(project.targetExecutors ? { targetExecutors: project.targetExecutors } : {}),
358
357
  ...(project.targetOptions ? { targetOptions: project.targetOptions } : {}),
@@ -3,7 +3,6 @@ export interface ProjectTargets {
3
3
  project: string;
4
4
  root?: string;
5
5
  targets: string[];
6
- buildDependsOn?: string[];
7
6
  /** Per-target `cache`, for policies that only govern what Nx can restore. */
8
7
  targetCache?: Map<string, boolean>;
9
8
  targetDependencies?: Map<string, string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nx/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nx/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAe,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGlG,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,kFAAkF;IAClF,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,wBAAgB,cAAc,IAAI,iBAAiB,CAElD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEzD;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAG9F;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAExG;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAwBlH;AAsBD,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAY7G;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAYpH;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAE7G;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAE5G;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ1G;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAY3G;AA0BD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAK3E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAK3F;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK7D;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhG;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG5D;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAa5D;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AAYjE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAOhE;AA2DD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,MAAM,EAAE,CAQtE;AAED,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,UAAU,GAAG,cAAc,EAAE,CAkBnF;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAEhF;AAED,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC"}
package/dist/nx/index.js CHANGED
@@ -288,7 +288,6 @@ export function projectTargetsFromNxProjects(projects) {
288
288
  project,
289
289
  root: projectRootFromNxProjectJson(metadata),
290
290
  targets: targetNamesFromNxProjectJson(metadata),
291
- buildDependsOn: targetDependencies.get('build'),
292
291
  targetCache: targetCacheFromNxProjectJson(metadata),
293
292
  targetDependencies,
294
293
  targetInputs: targetInputsFromNxProjectJson(metadata),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smoothbricks/cli",
3
- "version": "0.11.20",
3
+ "version": "0.11.21",
4
4
  "type": "module",
5
5
  "description": "SmoothBricks monorepo automation CLI",
6
6
  "bin": {
@@ -69,7 +69,7 @@
69
69
  ],
70
70
  "dependencies": {
71
71
  "@arethetypeswrong/core": "^0.18.2",
72
- "@smoothbricks/nx-plugin": "0.4.14",
72
+ "@smoothbricks/nx-plugin": "0.4.15",
73
73
  "@smoothbricks/validation": "0.1.8",
74
74
  "commander": "^14.0.3",
75
75
  "make-synchronized": "^0.8.0",
@@ -532,12 +532,7 @@ describe('workspace package script policy', () => {
532
532
  });
533
533
  try {
534
534
  await writeJson(join(root, 'packages/native/tsconfig.lib.json'), {});
535
- const resolvedTargetsByProject = new Map([
536
- [
537
- 'native',
538
- { targets: new Set(['build', 'tsc-js', 'tsdown-js']), buildDependsOn: ['^build', 'tsc-js', 'tsdown-js'] },
539
- ],
540
- ]);
535
+ const resolvedTargetsByProject = new Map([['native', { targets: new Set(['build', 'tsc-js', 'tsdown-js']) }]]);
541
536
 
542
537
  applyWorkspaceDependencyDefaults(root, { resolvedTargetsByProject });
543
538
 
@@ -574,9 +569,7 @@ describe('workspace package script policy', () => {
574
569
  ],
575
570
  });
576
571
  try {
577
- const resolvedTargetsByProject = new Map([
578
- ['native', { targets: new Set(['build', 'tsdown-js']), buildDependsOn: ['^build', 'tsdown-js'] }],
579
- ]);
572
+ const resolvedTargetsByProject = new Map([['native', { targets: new Set(['build', 'tsdown-js']) }]]);
580
573
 
581
574
  applyWorkspaceDependencyDefaults(root, { resolvedTargetsByProject });
582
575
 
@@ -596,7 +589,7 @@ describe('workspace package script policy', () => {
596
589
  }
597
590
  });
598
591
 
599
- it('removes noop aggregate build targets only when they match resolved Nx plugin output', async () => {
592
+ it('removes noop aggregate build targets whose dependencies inference already produces', async () => {
600
593
  const root = await createWorkspace({
601
594
  rootName: '@smoothbricks/codebase',
602
595
  packages: [
@@ -613,12 +606,7 @@ describe('workspace package script policy', () => {
613
606
  ],
614
607
  });
615
608
  try {
616
- const resolvedTargetsByProject = new Map([
617
- [
618
- 'native',
619
- { targets: new Set(['build', 'tsc-js', 'tsdown-js']), buildDependsOn: ['^build', 'tsc-js', 'tsdown-js'] },
620
- ],
621
- ]);
609
+ const resolvedTargetsByProject = new Map([['native', { targets: new Set(['build', 'tsc-js', 'tsdown-js']) }]]);
622
610
 
623
611
  applyWorkspaceDependencyDefaults(root, { resolvedTargetsByProject });
624
612
 
@@ -629,6 +617,51 @@ describe('workspace package script policy', () => {
629
617
  }
630
618
  });
631
619
 
620
+ /**
621
+ * The AxE regression: `containium` declares its build aggregate because
622
+ * inference cannot reach the producers it needs — its own `build-cli`, and
623
+ * sibling targets that are not named `build`, so `^build` never visits them,
624
+ * and are outside the `*-js|*-web|…` output family, so the inferred aggregate
625
+ * never collects them either. Nx replaces a named property of an inferred
626
+ * target with the declared one, so the resolved graph echoes the declaration
627
+ * straight back; comparing a declaration against that echo says "redundant"
628
+ * about every hand-written aggregate and deletes the only thing that ordered
629
+ * the build. `tsc-js` is in the list on purpose: one inferable entry beside
630
+ * two that are not must still keep the whole block.
631
+ */
632
+ it('keeps noop build aggregates that name edges inference cannot produce', async () => {
633
+ const declaredBuild = {
634
+ executor: 'nx:noop',
635
+ cache: true,
636
+ dependsOn: ['build-cli', 'containium-bun:runtime', 'tsc-js'],
637
+ };
638
+ const root = await createWorkspace({
639
+ rootName: '@smoothbricks/codebase',
640
+ packages: [
641
+ { dir: 'containium-bun', name: '@axe.sc/containium-bun', nx: { name: 'containium-bun' } },
642
+ {
643
+ dir: 'containium',
644
+ name: '@axe.sc/containium',
645
+ nx: { name: 'containium', targets: { build: declaredBuild } },
646
+ },
647
+ ],
648
+ });
649
+ try {
650
+ const resolvedTargetsByProject = new Map([
651
+ ['containium-bun', { targets: new Set(['build', 'runtime', 'tsc-js']) }],
652
+ ['containium', { targets: new Set(['build', 'build-cli', 'tsc-js']) }],
653
+ ]);
654
+
655
+ applyWorkspaceDependencyDefaults(root, { resolvedTargetsByProject });
656
+
657
+ const containium = await readJson(join(root, 'packages/containium/package.json'));
658
+ expect(containium.nx).toEqual({ name: 'containium', targets: { build: declaredBuild } });
659
+ expect(validateWorkspaceDependencies(root, { resolvedTargetsByProject })).toBe(0);
660
+ } finally {
661
+ await rm(root, { recursive: true, force: true });
662
+ }
663
+ });
664
+
632
665
  it('accepts wildcard aggregate build dependencies', async () => {
633
666
  const root = await createWorkspace({
634
667
  rootName: '@smoothbricks/codebase',
@@ -669,9 +702,7 @@ describe('workspace package script policy', () => {
669
702
  ],
670
703
  });
671
704
  try {
672
- const resolvedTargetsByProject = new Map([
673
- ['native', { targets: new Set(['build', 'tsc-js', 'tsdown-js']), buildDependsOn: buildOutputDependencies }],
674
- ]);
705
+ const resolvedTargetsByProject = new Map([['native', { targets: new Set(['build', 'tsc-js', 'tsdown-js']) }]]);
675
706
 
676
707
  applyWorkspaceDependencyDefaults(root, { resolvedTargetsByProject });
677
708
 
@@ -466,7 +466,6 @@ export function resolvedTargetsByProject(projects: ProjectTargets[]): Map<string
466
466
  {
467
467
  ...(project.root ? { root: project.root } : {}),
468
468
  targets: new Set(project.targets),
469
- ...(project.buildDependsOn ? { buildDependsOn: project.buildDependsOn } : {}),
470
469
  ...(project.targetDependencies ? { targetDependencies: project.targetDependencies } : {}),
471
470
  ...(project.targetExecutors ? { targetExecutors: project.targetExecutors } : {}),
472
471
  ...(project.targetOptions ? { targetOptions: project.targetOptions } : {}),
@@ -126,7 +126,6 @@ describe('Nx helper output formatting', () => {
126
126
  project: 'cli',
127
127
  root: 'packages/cli',
128
128
  targets: ['lint'],
129
- buildDependsOn: undefined,
130
129
  targetCache: new Map(),
131
130
  targetDependencies: new Map(),
132
131
  targetExecutors: new Map(),
@@ -139,7 +138,6 @@ describe('Nx helper output formatting', () => {
139
138
  project: 'web',
140
139
  root: 'packages/web',
141
140
  targets: ['build', 'test'],
142
- buildDependsOn: undefined,
143
141
  targetCache: new Map([['test', true]]),
144
142
  targetDependencies: new Map([['test', ['build']]]),
145
143
  targetExecutors: new Map([['test', '@smoothbricks/nx-plugin:bounded-exec']]),
package/src/nx/index.ts CHANGED
@@ -12,7 +12,6 @@ export interface ProjectTargets {
12
12
  project: string;
13
13
  root?: string;
14
14
  targets: string[];
15
- buildDependsOn?: string[];
16
15
  /** Per-target `cache`, for policies that only govern what Nx can restore. */
17
16
  targetCache?: Map<string, boolean>;
18
17
  targetDependencies?: Map<string, string[]>;
@@ -324,7 +323,6 @@ export function projectTargetsFromNxProjects(projects: NxProjects): ProjectTarge
324
323
  project,
325
324
  root: projectRootFromNxProjectJson(metadata),
326
325
  targets: targetNamesFromNxProjectJson(metadata),
327
- buildDependsOn: targetDependencies.get('build'),
328
326
  targetCache: targetCacheFromNxProjectJson(metadata),
329
327
  targetDependencies,
330
328
  targetInputs: targetInputsFromNxProjectJson(metadata),