@codependix/cli 0.0.14 → 0.0.16
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.
- package/CHANGELOG.md +22 -0
- package/README.md +42 -18
- package/dist/{main.module-DJFfw_zD.js → main.module-BySMJCYI.js} +7 -15
- package/dist/src/index.js +1 -2
- package/dist/src/main.js +1 -1
- package/package.json +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
## 0.0.16 (2026-10-13)
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- **codependix:** ✨ infer a per-project codependix-gate target from a new nx plugin ([#1429](https://github.com/organizzolini/codebase/pull/1429), [#1403](https://github.com/organizzolini/codebase/issues/1403))
|
|
6
|
+
|
|
7
|
+
### 🧱 Updated Dependencies
|
|
8
|
+
|
|
9
|
+
- Updated codependix-configuration to 0.0.16
|
|
10
|
+
- Updated codependix-boundaries to 0.0.15
|
|
11
|
+
- Updated codependix-output to 0.0.15
|
|
12
|
+
- Updated codependix-core to 0.0.14
|
|
13
|
+
|
|
14
|
+
## 0.0.15 (2026-10-12)
|
|
15
|
+
|
|
16
|
+
### 🧱 Updated Dependencies
|
|
17
|
+
|
|
18
|
+
- Updated codependix-configuration to 0.0.15
|
|
19
|
+
- Updated codependix-boundaries to 0.0.14
|
|
20
|
+
- Updated codependix-output to 0.0.14
|
|
21
|
+
- Updated codependix-core to 0.0.13
|
|
22
|
+
|
|
1
23
|
## 0.0.14 (2026-10-12)
|
|
2
24
|
|
|
3
25
|
### 🧱 Updated Dependencies
|
package/README.md
CHANGED
|
@@ -62,10 +62,11 @@ on opposite sides of a pull request.
|
|
|
62
62
|
| `reports` | A configured destination no longer holding what a fresh run would write |
|
|
63
63
|
|
|
64
64
|
A boundary violation is caused by the branch and fixed by the branch, so it
|
|
65
|
-
gates every pull request
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
gates every pull request, one project at a time — see
|
|
66
|
+
[The per-project gate](#the-per-project-gate). A stale export moves with the
|
|
67
|
+
workspace it describes and would fail every branch that changed a project
|
|
68
|
+
graph rather than anything the branch itself did, so it is published on the
|
|
69
|
+
default branch and gated nowhere. That is the same split
|
|
69
70
|
[`callidescope`](../callidescope-cli/README.md) makes between `--check depth`
|
|
70
71
|
and `--check reports`, and `reports` is deliberately spelled the same in both:
|
|
71
72
|
it is the same finding, and two names for it would make the two reports
|
|
@@ -118,8 +119,13 @@ reported the same way, as a rejected command line rather than a crash.
|
|
|
118
119
|
No mode is ever inferred, which is the rule `codometer`'s and
|
|
119
120
|
`callidescope`'s flags follow too.
|
|
120
121
|
|
|
122
|
+
In an Nx workspace the gate is a per-project `codependix-gate` target, and
|
|
123
|
+
publishing is the one workspace-wide `write` run. This repository's `guard-code`
|
|
124
|
+
reaches the first on every pull request, and its release workflow runs the
|
|
125
|
+
second on the default branch:
|
|
126
|
+
|
|
121
127
|
```bash
|
|
122
|
-
nx run
|
|
128
|
+
nx run <project>:codependix-gate
|
|
123
129
|
nx run codebase:codependix:write
|
|
124
130
|
```
|
|
125
131
|
|
|
@@ -128,6 +134,21 @@ boot its container — is reported and does not stop the rest: `--write` either
|
|
|
128
134
|
fully succeeds or names exactly which projects failed while still completing
|
|
129
135
|
every other one.
|
|
130
136
|
|
|
137
|
+
### The per-project gate
|
|
138
|
+
|
|
139
|
+
`--check boundaries --projects <name>` is a gate for one project, and needs no
|
|
140
|
+
task runner. [`@codependix/nx`](../codependix-nx/README.md) infers it for an
|
|
141
|
+
Nx workspace as a cached `codependix-gate` target on every project but the
|
|
142
|
+
workspace root, so `nx affected -t codependix-gate` selects the projects a
|
|
143
|
+
change touched and a failure names the project it is charged to rather than
|
|
144
|
+
one workspace-wide task. The target declares no configurations, so
|
|
145
|
+
`guard-code --configuration=check` falls through to its defaults, as
|
|
146
|
+
`callidescope-gate` does.
|
|
147
|
+
|
|
148
|
+
Publishing stays workspace-wide: one `--write` run produces every project's
|
|
149
|
+
anchor blocks, which must reflect one commit, so `codebase:codependix` is
|
|
150
|
+
`write`-only and is not part of `guard-code`.
|
|
151
|
+
|
|
131
152
|
### Where the output goes
|
|
132
153
|
|
|
133
154
|
Printing and delivering are separate. `--format` decides what reaches standard
|
|
@@ -173,6 +194,7 @@ and [a container that cannot boot](../codependix-examples/examples/boundary-boot
|
|
|
173
194
|
| [`@codependix/boundaries`](../codependix-boundaries/README.md) | Builds each level's graph for a workspace, judges it against the declared rules, and reports what breaks them. `--check boundaries` delegates to it wholesale |
|
|
174
195
|
| [`@codependix/configuration`](../codependix-configuration/README.md) | Reads `codependix.config.ts` and resolves per-project export destinations and boundary rules |
|
|
175
196
|
| [`@codependix/examples`](../codependix-examples/README.md) | Twenty-one subjects built to be graphed, each with the guide codependix renders from it |
|
|
197
|
+
| [`@codependix/nx`](../codependix-nx/README.md) | Nx plugin: infers a per-project `codependix-gate` target that runs `--check boundaries` over the project and its Nx dependencies |
|
|
176
198
|
| [`@codependix/nx-projects`](../codependix-nx-projects/README.md) | Builds a project's Nx Neighborhood and the whole-workspace Workspace Graph |
|
|
177
199
|
| [`@codependix/nestjs-modules`](../codependix-nestjs-modules/README.md) | Explores a NestJS project's container and builds its module graph |
|
|
178
200
|
| [`@codependix/file-imports`](../codependix-file-imports/README.md) | Builds a project's file-level import graph — a `typescript` module walking its own `ts.Program`, and a `python` module parsing `import`/`from ... import` statements |
|
|
@@ -233,6 +255,7 @@ graph LR
|
|
|
233
255
|
codependix_configuration["codependix-configuration"]
|
|
234
256
|
codependix_core["codependix-core"]
|
|
235
257
|
codependix_examples["codependix-examples"]
|
|
258
|
+
codependix_nx["codependix-nx"]
|
|
236
259
|
codependix_output["codependix-output"]
|
|
237
260
|
logging["logging"]
|
|
238
261
|
codependix_cli --> codependix_boundaries
|
|
@@ -241,6 +264,7 @@ graph LR
|
|
|
241
264
|
codependix_cli --> codependix_output
|
|
242
265
|
codependix_cli --> logging
|
|
243
266
|
codependix_examples -.-> codependix_cli
|
|
267
|
+
codependix_nx --> codependix_cli
|
|
244
268
|
classDef subject fill:#7c3aed,color:#fff,stroke:#4c1d95,stroke-width:2px
|
|
245
269
|
class codependix_cli subject
|
|
246
270
|
```
|
|
@@ -737,13 +761,13 @@ What this project is judged against, as declared in its own `callidescope.config
|
|
|
737
761
|
### Project
|
|
738
762
|
|
|
739
763
|

|
|
740
|
-

|
|
741
765
|

|
|
742
766
|

|
|
743
767
|
|
|
744
768
|
### Measured Targets
|
|
745
769
|
|
|
746
|
-

|
|
747
771
|
|
|
748
772
|
### TypeScript
|
|
749
773
|
|
|
@@ -790,16 +814,16 @@ What this project is judged against, as declared in its own `callidescope.config
|
|
|
790
814
|
### JSON
|
|
791
815
|
|
|
792
816
|

|
|
793
|
-

|
|
794
818
|

|
|
795
819
|

|
|
796
|
-

|
|
821
|
+

|
|
798
822
|

|
|
799
823
|

|
|
800
824
|

|
|
801
825
|

|
|
802
|
-

|
|
803
827
|

|
|
804
828
|
|
|
805
829
|
### YAML
|
|
@@ -925,20 +949,20 @@ What this project is judged against, as declared in its own `callidescope.config
|
|
|
925
949
|
### Markdown
|
|
926
950
|
|
|
927
951
|

|
|
928
|
-

|
|
929
953
|

|
|
930
|
-

|
|
955
|
+

|
|
932
956
|

|
|
933
957
|

|
|
934
958
|

|
|
935
|
-

|
|
960
|
+

|
|
961
|
+

|
|
938
962
|

|
|
939
963
|

|
|
940
964
|

|
|
941
|
-

|
|
942
966
|

|
|
943
967
|

|
|
944
968
|

|
|
@@ -43,12 +43,12 @@ var N = Object.defineProperty, __name = (e, t) => N(e, "name", {
|
|
|
43
43
|
"TypeOrmModule"
|
|
44
44
|
]);
|
|
45
45
|
//#endregion
|
|
46
|
-
//#region \0@oxc-project+runtime@0.
|
|
46
|
+
//#region \0@oxc-project+runtime@0.153.0/helpers/esm/decorateMetadata.js
|
|
47
47
|
function __decorateMetadata(e, t) {
|
|
48
48
|
if (typeof Reflect == "object" && typeof Reflect.metadata == "function") return Reflect.metadata(e, t);
|
|
49
49
|
}
|
|
50
50
|
//#endregion
|
|
51
|
-
//#region \0@oxc-project+runtime@0.
|
|
51
|
+
//#region \0@oxc-project+runtime@0.153.0/helpers/esm/decorate.js
|
|
52
52
|
function __decorate(e, t, n, r) {
|
|
53
53
|
var i = arguments.length, a = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, o;
|
|
54
54
|
if (typeof Reflect == "object" && typeof Reflect.decorate == "function") a = Reflect.decorate(e, t, n, r);
|
|
@@ -85,11 +85,7 @@ var R, z = class LoggerService extends e {
|
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
static logToStandardError() {
|
|
88
|
-
|
|
89
|
-
process.emitWarning("LoggerService.logToStandardError() was called after the first log line, so log lines still go to standard output and anything piping that stream will read them as data. Call it as the first statement of the application's bootstrap.");
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
R.writesToStandardError = !0;
|
|
88
|
+
R.rootLogger === void 0 ? R.writesToStandardError = !0 : process.emitWarning("LoggerService.logToStandardError() was called after the first log line, so log lines still go to standard output and anything piping that stream will read them as data. Call it as the first statement of the application's bootstrap.");
|
|
93
89
|
}
|
|
94
90
|
assertConventionalMessage(e) {
|
|
95
91
|
if (R.isProduction || this.shouldSkipConventionalMessageValidation(e.context)) return;
|
|
@@ -248,23 +244,19 @@ var V = d.object({}), H, U = H = class MapCommand extends j {
|
|
|
248
244
|
options: r,
|
|
249
245
|
workingDirectory: l.resolve(r.directory ?? process.cwd())
|
|
250
246
|
}), a = this.configurationService.touchesFiles(n) ? await this.runExports(i) : void 0, o = n.checksBoundaries ? await this.boundaryCheckService.run(i) : void 0;
|
|
251
|
-
|
|
247
|
+
this.runCombinedOutput({
|
|
252
248
|
boundaryOutcome: o,
|
|
253
249
|
combinedGraphs: a?.combinedGraphs,
|
|
254
250
|
context: i,
|
|
255
251
|
format: t,
|
|
256
252
|
options: r
|
|
257
|
-
}),
|
|
253
|
+
}), this.reportingService.reportPassOutcomes({
|
|
258
254
|
boundaryOutcome: o,
|
|
259
255
|
exportRun: a
|
|
260
|
-
})
|
|
261
|
-
process.exitCode = 1;
|
|
262
|
-
return;
|
|
263
|
-
}
|
|
264
|
-
this.reportingService.reportSuccess({
|
|
256
|
+
}) ? this.reportingService.reportSuccess({
|
|
265
257
|
boundaryOutcome: o,
|
|
266
258
|
exportOutcome: a?.outcome
|
|
267
|
-
});
|
|
259
|
+
}) : process.exitCode = 1;
|
|
268
260
|
}
|
|
269
261
|
parseCheck(e) {
|
|
270
262
|
return e;
|
package/dist/src/index.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { n as MainModule, t as MapCommand, e as MapModule };
|
|
1
|
+
export { t as MainModule, r as MapCommand, n as MapModule } from "../main.module-BySMJCYI.js";
|
package/dist/src/main.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { i as e, t } from "../main.module-
|
|
2
|
+
import { i as e, t } from "../main.module-BySMJCYI.js";
|
|
3
3
|
import { CommandFactory as n } from "nest-commander";
|
|
4
4
|
import "reflect-metadata";
|
|
5
5
|
//#region packages/ic-suite/codependix/codependix-cli/src/main.ts
|
package/package.json
CHANGED
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
"url": "https://github.com/organizzolini/codebase/issues"
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@codependix/boundaries": "0.0.
|
|
11
|
-
"@codependix/configuration": "0.0.
|
|
12
|
-
"@codependix/core": "0.0.
|
|
13
|
-
"@codependix/output": "0.0.
|
|
10
|
+
"@codependix/boundaries": "0.0.15",
|
|
11
|
+
"@codependix/configuration": "0.0.16",
|
|
12
|
+
"@codependix/core": "0.0.14",
|
|
13
|
+
"@codependix/output": "0.0.15",
|
|
14
14
|
"@nestjs/common": "^11.1.21 || ^12.0.1",
|
|
15
15
|
"@nestjs/config": "^12.0.0",
|
|
16
16
|
"@nestjs/core": "^11.1.21 || ^12.0.1",
|
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
"types": "./dist/src/index.d.ts",
|
|
40
40
|
"default": "./dist/src/index.js"
|
|
41
41
|
},
|
|
42
|
+
"./main": "./dist/src/main.js",
|
|
42
43
|
"./package.json": "./package.json"
|
|
43
44
|
},
|
|
44
45
|
"files": [
|
|
@@ -74,5 +75,5 @@
|
|
|
74
75
|
"strict": true
|
|
75
76
|
},
|
|
76
77
|
"types": "./dist/src/index.d.ts",
|
|
77
|
-
"version": "0.0.
|
|
78
|
+
"version": "0.0.16"
|
|
78
79
|
}
|