@voxgig/sdkgen-infrapack 0.0.14 → 0.0.15

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/README.md CHANGED
@@ -81,7 +81,7 @@ The path resolves against the SDK repository root. Left unset, the provider
81
81
  generates in-tree under `seneca-provider/`, which is a usable default for a
82
82
  first look at the output.
83
83
 
84
- Set that in `model/project.aon`, not in the target's own file — `target add`
84
+ Set that in `model/project.aontu`, not in the target's own file — `target add`
85
85
  overwrites the latter.
86
86
 
87
87
  ## Parity
@@ -96,9 +96,15 @@ be told apart from an author who did not know it existed.
96
96
 
97
97
  ```bash
98
98
  npm install
99
- npm test # type-checks the components, then runs the suite
99
+ npm test # the comment gate, the dependency gate, then the suite
100
100
  ```
101
101
 
102
+ A committed dependency must name a published npm package or a GitHub
103
+ reference; local wiring to a sibling checkout is how a change gets tested
104
+ before its dependency is released, and undoing it is part of finishing.
105
+ `make deps` checks that and `make deps-test` runs its own suite; `npm test`,
106
+ the pre-push hook and CI all run the gate, so it cannot be forgotten.
107
+
102
108
  The suite runs on `@voxgig/sdkgen/testkit`: it installs this package into a
103
109
  staged consumer through the real `package add`, compiles the components the way
104
110
  a consumer's build does, and generates.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voxgig/sdkgen-infrapack",
3
- "version": "0.0.14",
3
+ "version": "0.0.15",
4
4
  "description": "Infrastructure-provider targets for the Voxgig SDK Generator: Seneca provider.",
5
5
  "type": "commonjs",
6
6
  "license": "MIT",
@@ -22,7 +22,7 @@
22
22
  "sdkgen-package.json"
23
23
  ],
24
24
  "scripts": {
25
- "test": "node tools/comment-gate.cjs && node --enable-source-maps --test test/*.test.js",
25
+ "test": "node tools/comment-gate.cjs && node tools/dep-gate.cjs && node --test tools/dep-gate.test.cjs && node --enable-source-maps --test test/*.test.js",
26
26
  "test-some": "node --enable-source-maps --test-name-pattern=\"$npm_config_pattern\" --test test/*.test.js",
27
27
  "watch": "tsc -w",
28
28
  "build": "tsc",
@@ -53,7 +53,7 @@
53
53
  "declaring it here would be wrong: the hit is inside the template literal",
54
54
  "in Extras that WRITES the generated provider's test file. The Seneca",
55
55
  "packages are dependencies of the generated provider, declared in",
56
- ".sdk/model/target/seneca-provider.aon's `deps` block, and a consumer of",
56
+ ".sdk/model/target/seneca-provider.aontu's `deps` block, and a consumer of",
57
57
  "THIS package has no reason to supply any of them. The grep cannot tell an",
58
58
  "import from an emitted string; expect that from any target generating a",
59
59
  "Node package.",
@@ -66,12 +66,23 @@
66
66
  "rejects — a package that installs and then fails to generate.",
67
67
  "",
68
68
  "THE SDKGEN FLOOR IS THE OLDEST PUBLISHED VERSION THIS SUITE IS RUN",
69
- "AGAINST, which is 4.9.0. Not the oldest that might work: a floor nobody",
70
- "tests is the shape of the old >=3.5.0, which accepted versions where a",
71
- "target's components install and then die at generation on a missing",
72
- "export — this target calls `pointSegments`, which sdkgen first exported",
73
- "in 4.8.0. 4.9.0 is also the first release carrying the test kit this",
74
- "suite runs on.",
69
+ "AGAINST. `peerDependencies` below is where the suite's copy lives, and",
70
+ "the `floor` lane in .github/workflows/build.yml reads it from there and",
71
+ "reinstalls at it, so the claim is enforced rather than asserted. This",
72
+ "prose deliberately does not repeat the version: a second copy of a",
73
+ "version number is the copy that goes stale.",
74
+ "",
75
+ "There IS a second copy, and it is not this one — `engines.sdkgen` in",
76
+ "sdkgen-package.json, which a consumer's `package add` reads and no lane",
77
+ "reads. Nothing asserts the two agree, so raising the floor means editing",
78
+ "both.",
79
+ "",
80
+ "Not the oldest that might work: a floor nobody tests is the shape of the",
81
+ "old >=3.5.0, which accepted versions where a target's components install",
82
+ "and then die at generation on a missing export — this target calls",
83
+ "`pointSegments`, which sdkgen first exported in 4.8.0. So raising the",
84
+ "floor is a deliberate act and lowering it is a claim about what has been",
85
+ "run; the lane is what settles either.",
75
86
  "",
76
87
  "This is a SEPARATE REPOSITORY, so there is no `file:` path back to the",
77
88
  "generator: the dependency is the published package, and that is the",
@@ -81,16 +92,25 @@
81
92
  "@types/node IS REQUIRED, not incidental: these components import",
82
93
  "`node:path` and read `__dirname`. Inside the sdkgen checkout they",
83
94
  "hoisted from the generator's own devDependencies; standing alone that",
84
- "hoist is gone and the type-check lane fails."
95
+ "hoist is gone and the type-check lane fails.",
96
+ "",
97
+ "memfs IS REQUIRED TOO, and nothing here imports it. `generateInto` in",
98
+ "@voxgig/sdkgen/testkit requires it at run time while sdkgen declares it",
99
+ "only as a devDependency, so it does not reach a consumer and the kit",
100
+ "throws `needs memfs — add it as a devDependency`. It is pinned EXACTLY,",
101
+ "matching sdkgen's own pin: this is the kit's own dependency borrowed",
102
+ "across a package boundary, so tracking what the kit is developed against",
103
+ "beats resolving newest independently of it. An unused-dependency scan",
104
+ "will flag it; it is load-bearing."
85
105
  ],
86
106
  "peerDependencies": {
87
- "@voxgig/apidef": ">=8.14.0",
88
- "@voxgig/sdkgen": ">=4.23.0"
107
+ "@voxgig/apidef": ">=8.17.0",
108
+ "@voxgig/sdkgen": ">=4.25.0"
89
109
  },
90
110
  "devDependencies": {
91
- "@voxgig/apidef": ">=8.14.0",
92
- "@voxgig/sdkgen": ">=4.23.0",
93
- "aontu": ">=0.71.0",
111
+ "@voxgig/apidef": ">=8.17.0",
112
+ "@voxgig/sdkgen": ">=4.25.0",
113
+ "aontu": ">=0.75.0",
94
114
  "memfs": "4.68.1",
95
115
  "typescript": "7.0.2",
96
116
  "@types/node": ">=24"
@@ -3,9 +3,9 @@
3
3
  "package": 1
4
4
  },
5
5
  "name": "@voxgig/sdkgen-infrapack",
6
- "version": "0.0.14",
6
+ "version": "0.0.15",
7
7
  "engines": {
8
- "sdkgen": ">=4.23.0"
8
+ "sdkgen": ">=4.25.0"
9
9
  },
10
10
  "provides": {
11
11
  "target": [