@dbx-tools/projen 0.6.102 → 0.6.103
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 +16 -12
- package/package.json +4 -4
- package/src/project-js.ts +16 -8
- package/tasks/bump.ts +1 -1
package/README.md
CHANGED
|
@@ -251,14 +251,14 @@ Every repo-wide task lives on the root, and the root's `compile` / `test`
|
|
|
251
251
|
delegate with `bun run --filter '*'` rather than emitting a step per member - so
|
|
252
252
|
a new package is covered without a re-synth. Work from the root:
|
|
253
253
|
|
|
254
|
-
| Task | What it does
|
|
255
|
-
| ----------------- |
|
|
256
|
-
| `bun run build` | `compile` + `test
|
|
257
|
-
| `bun run compile` | `tsc --build` in each member, in parallel
|
|
258
|
-
| `bun run test` | `eslint` once, then each member's tests
|
|
259
|
-
| `bun run sync` | re-synth (`--watch` to keep synthing)
|
|
260
|
-
| `bun run barrels` | regenerate the read-only `index.ts` barrels
|
|
261
|
-
| `bun run bump` | version, tag, and publish
|
|
254
|
+
| Task | What it does |
|
|
255
|
+
| ----------------- | ----------------------------------------------------- |
|
|
256
|
+
| `bun run build` | workspace `compile` + `test`; no root package fan-out |
|
|
257
|
+
| `bun run compile` | `tsc --build` in each member, in parallel |
|
|
258
|
+
| `bun run test` | `eslint` once, then each member's tests |
|
|
259
|
+
| `bun run sync` | re-synth (`--watch` to keep synthing) |
|
|
260
|
+
| `bun run barrels` | regenerate the read-only `index.ts` barrels |
|
|
261
|
+
| `bun run bump` | version, tag, and publish |
|
|
262
262
|
|
|
263
263
|
`bump` also mirrors a release into local registries when the active clients are
|
|
264
264
|
pointed at loopback services. npm uses `npm config get registry` and publishes
|
|
@@ -292,10 +292,14 @@ invokes, so there is no second place to run the same thing:
|
|
|
292
292
|
and publishes with lifecycle scripts disabled).
|
|
293
293
|
- `watch` - a single-package `tsc --build -w`, for narrowing a long
|
|
294
294
|
edit/compile loop to one package.
|
|
295
|
-
- `build` / `
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
295
|
+
- `build` / `package` - a complete compile/test/pack lifecycle when invoked in
|
|
296
|
+
one package. Root bump deliberately bypasses these and uses filtered compile
|
|
297
|
+
plus concurrent `bun publish --ignore-scripts`. The package phase also packs
|
|
298
|
+
with `--ignore-scripts` because its build already compiled; `prepack` remains
|
|
299
|
+
available for a standalone publish that did not run `build` first.
|
|
300
|
+
- `install` / `install:ci` / `default` / `pre-compile` / `post-compile` -
|
|
301
|
+
projen's lifecycle scaffolding, emitted for every member because its task model
|
|
302
|
+
expects them.
|
|
299
303
|
|
|
300
304
|
Do NOT run `projen default` (or `bunx projen`) from inside a member. Synth is a
|
|
301
305
|
whole-tree operation driven by the ROOT `.projenrc.ts`, so a member-level run
|
package/package.json
CHANGED
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@clack/prompts": "^1.7.0",
|
|
29
|
-
"@dbx-tools/core": "0.6.
|
|
30
|
-
"@dbx-tools/path": "0.6.
|
|
31
|
-
"@dbx-tools/shared-core": "0.6.
|
|
29
|
+
"@dbx-tools/core": "0.6.103",
|
|
30
|
+
"@dbx-tools/path": "0.6.103",
|
|
31
|
+
"@dbx-tools/shared-core": "0.6.103",
|
|
32
32
|
"commander": "^15.0.0",
|
|
33
33
|
"concurrently": "^10.0.3",
|
|
34
34
|
"constructs": "^10.6.0",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
},
|
|
48
48
|
"main": "index.ts",
|
|
49
49
|
"license": "Apache-2.0",
|
|
50
|
-
"version": "0.6.
|
|
50
|
+
"version": "0.6.103",
|
|
51
51
|
"types": "index.ts",
|
|
52
52
|
"type": "module",
|
|
53
53
|
"exports": {
|
package/src/project-js.ts
CHANGED
|
@@ -380,14 +380,13 @@ function defaultProjectOptions(
|
|
|
380
380
|
...(isRoot ? {} : { npmAccess: javascript.NpmAccess.PUBLIC }),
|
|
381
381
|
buildWorkflow: false,
|
|
382
382
|
release: false,
|
|
383
|
-
//
|
|
384
|
-
//
|
|
385
|
-
//
|
|
386
|
-
//
|
|
387
|
-
//
|
|
388
|
-
//
|
|
389
|
-
|
|
390
|
-
package: false,
|
|
383
|
+
// The root build validates the whole workspace and must not also pack every
|
|
384
|
+
// member into unused `dist/js` tarballs. Child projects keep projen's package
|
|
385
|
+
// task so `bun run build` in ONE package remains a complete compile/test/pack
|
|
386
|
+
// operation. The root bump does not invoke child builds: its publish driver
|
|
387
|
+
// compiles once with filtered root tasks and packs via
|
|
388
|
+
// `bun publish --ignore-scripts` (see {@link applyCompiledPublish}).
|
|
389
|
+
...(isRoot ? { package: false } : {}),
|
|
391
390
|
jest: false,
|
|
392
391
|
github: false,
|
|
393
392
|
npmignoreEnabled: false,
|
|
@@ -970,6 +969,15 @@ function initProject(
|
|
|
970
969
|
|
|
971
970
|
if (project.parent) {
|
|
972
971
|
project.package.file.readonly = true;
|
|
972
|
+
// `build` already compiles before its `package` phase. Keep the package's
|
|
973
|
+
// `prepack` for standalone `bun publish`, but suppress lifecycle scripts in
|
|
974
|
+
// this generated pack step so a direct child build does not compile twice.
|
|
975
|
+
const packageStep = project.packageTask.steps.find(
|
|
976
|
+
(step) => step.execArgs?.[0] === "npm" && step.execArgs[1] === "pack",
|
|
977
|
+
);
|
|
978
|
+
if (packageStep?.execArgs && !packageStep.execArgs.includes("--ignore-scripts")) {
|
|
979
|
+
packageStep.execArgs.push("--ignore-scripts");
|
|
980
|
+
}
|
|
973
981
|
// Stamp `repository` (with this package's `directory` subpath) so a published
|
|
974
982
|
// package passes npm provenance validation.
|
|
975
983
|
applyRepository(project, options.repository);
|
package/tasks/bump.ts
CHANGED
|
@@ -265,7 +265,7 @@ program
|
|
|
265
265
|
"-m",
|
|
266
266
|
"🌸 Shipped with Kanna — https://kanna.sh",
|
|
267
267
|
"-m",
|
|
268
|
-
"Co-Authored-By: Kanna <noreply@kanna.sh>\nKanna-Agent: codex/
|
|
268
|
+
"Co-Authored-By: Kanna <noreply@kanna.sh>\nKanna-Agent: codex/gpt",
|
|
269
269
|
]);
|
|
270
270
|
} else logger.info("nothing to commit");
|
|
271
271
|
}
|