@dbx-tools/projen 0.6.102 → 0.6.104

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
@@ -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` + `package` across every member |
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` / `install` / `install:ci` / `default` / `pre-compile` /
296
- `post-compile` / `package` - projen's own lifecycle scaffolding, emitted for
297
- every member because projen's task model expects them. Nothing in this repo's
298
- workflow calls them per member.
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.102",
30
- "@dbx-tools/path": "0.6.102",
31
- "@dbx-tools/shared-core": "0.6.102",
29
+ "@dbx-tools/core": "0.6.104",
30
+ "@dbx-tools/path": "0.6.104",
31
+ "@dbx-tools/shared-core": "0.6.104",
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.102",
50
+ "version": "0.6.104",
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
- // No `npm pack` step on any project. projen wires `package` into `build`, so
384
- // `bunx projen build` would tarball all 36 manifests (root included) into
385
- // gitignored `dist/js` on every CI run and never read them: publishing here
386
- // is the workspace publish task compiling packages once from the root before
387
- // `bun publish --ignore-scripts` packs them (see {@link applyCompiledPublish}),
388
- // and `release: false` means no projen Publisher exists to consume the
389
- // artifacts either.
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/databricks-gpt-5-6-sol",
268
+ "Co-Authored-By: Kanna <noreply@kanna.sh>\nKanna-Agent: codex/gpt",
269
269
  ]);
270
270
  } else logger.info("nothing to commit");
271
271
  }