release-monorepo-semantically 1.14.0 → 1.15.0

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.
Files changed (57) hide show
  1. package/README.md +5 -2
  2. package/dist/cli/Application.js +1 -1
  3. package/dist/cli/Application.js.map +1 -1
  4. package/dist/cli/IErrorHandler.d.ts +1 -1
  5. package/dist/cli/IErrorHandler.d.ts.map +1 -1
  6. package/dist/domain/ConventionalCommit.d.ts.map +1 -1
  7. package/dist/domain/ConventionalCommit.js +5 -2
  8. package/dist/domain/ConventionalCommit.js.map +1 -1
  9. package/dist/domain/PackageJSON.d.ts +3 -0
  10. package/dist/domain/PackageJSON.d.ts.map +1 -1
  11. package/dist/domain/PackageJSON.js.map +1 -1
  12. package/dist/exceptions/DomainException.d.ts +10 -0
  13. package/dist/exceptions/DomainException.d.ts.map +1 -1
  14. package/dist/exceptions/DomainException.js +17 -0
  15. package/dist/exceptions/DomainException.js.map +1 -1
  16. package/dist/exceptions/ExceptionHandler.d.ts +3 -1
  17. package/dist/exceptions/ExceptionHandler.d.ts.map +1 -1
  18. package/dist/exceptions/ExceptionHandler.js +29 -7
  19. package/dist/exceptions/ExceptionHandler.js.map +1 -1
  20. package/dist/features/changelog/ChangelogController.d.ts.map +1 -1
  21. package/dist/features/changelog/ChangelogController.js +4 -0
  22. package/dist/features/changelog/ChangelogController.js.map +1 -1
  23. package/dist/features/check/CheckController.d.ts +9 -0
  24. package/dist/features/check/CheckController.d.ts.map +1 -0
  25. package/dist/features/check/CheckController.js +45 -0
  26. package/dist/features/check/CheckController.js.map +1 -0
  27. package/dist/features/check/CheckModule.d.ts +5 -0
  28. package/dist/features/check/CheckModule.d.ts.map +1 -0
  29. package/dist/features/check/CheckModule.js +8 -0
  30. package/dist/features/check/CheckModule.js.map +1 -0
  31. package/dist/features/packageManager/PackageManagerController.d.ts.map +1 -1
  32. package/dist/features/packageManager/PackageManagerController.js +8 -0
  33. package/dist/features/packageManager/PackageManagerController.js.map +1 -1
  34. package/dist/features/releaseNotes/ReleaseNotesController.d.ts +3 -1
  35. package/dist/features/releaseNotes/ReleaseNotesController.d.ts.map +1 -1
  36. package/dist/features/releaseNotes/ReleaseNotesController.js +10 -2
  37. package/dist/features/releaseNotes/ReleaseNotesController.js.map +1 -1
  38. package/dist/features/report/ReportController.d.ts +3 -1
  39. package/dist/features/report/ReportController.d.ts.map +1 -1
  40. package/dist/features/report/ReportController.js +9 -2
  41. package/dist/features/report/ReportController.js.map +1 -1
  42. package/dist/features/vcs/VCSController.d.ts +3 -1
  43. package/dist/features/vcs/VCSController.d.ts.map +1 -1
  44. package/dist/features/vcs/VCSController.js +11 -3
  45. package/dist/features/vcs/VCSController.js.map +1 -1
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +2 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/modules/CommonModule.d.ts.map +1 -1
  50. package/dist/modules/CommonModule.js +3 -1
  51. package/dist/modules/CommonModule.js.map +1 -1
  52. package/dist/services/PreflightService.d.ts +16 -0
  53. package/dist/services/PreflightService.d.ts.map +1 -0
  54. package/dist/services/PreflightService.js +97 -0
  55. package/dist/services/PreflightService.js.map +1 -0
  56. package/llms.txt +8 -2
  57. package/package.json +1 -1
package/README.md CHANGED
@@ -68,7 +68,7 @@ monorepo-semantic-release vcs --context "$RELEASE_CONTEXT"
68
68
  - name: Create GitHub releases
69
69
  run: monorepo-semantic-release release-notes --context "$RELEASE_CONTEXT"
70
70
  env:
71
- GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
71
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
72
72
  ```
73
73
 
74
74
  ## Commit conventions
@@ -84,7 +84,7 @@ Non-release types: `docs`, `test`, `ci`, `chore`, `refactor`, `style`.
84
84
 
85
85
  Package scope is matched by package name.
86
86
 
87
- To force a level regardless of rules, put `[major]`, `[minor]`, `[patch]`, or `[skip-bump]` in the commit subject, e.g. `chore: drop node 18 [major]`. The tag is stripped from the subject and overrides the rule-based level for that commit.
87
+ To force a level regardless of rules, put `[major]`, `[minor]`, `[patch]`, or `[skip-bump]` in the commit subject, e.g. `chore: drop node 18 [major]`. The tag is stripped from the subject and overrides the rule-based level for that commit. A scoped tag (for example, `feat(pkg-a): ... [major]`) applies only to the package matching the scope; an unscoped tag (for example, `[major] feat: ...`) applies to every public package.
88
88
 
89
89
  This mapping is `report`'s default configuration, not a fixed rule — see [Configuring release rules](#configuring-release-rules) to change or extend it.
90
90
 
@@ -94,6 +94,7 @@ Every step accepts `--context <json>` (except `report`, which produces it) and `
94
94
 
95
95
  | Command | Action | Does |
96
96
  | ----------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
97
+ | `check` | (only one) | Validates workspace discovery, release configuration, scoped-package publish access, and configured templates without mutating files. Missing optional GitHub release-notes setup is reported as a warning. |
97
98
  | `report` | (only one) | Discovers workspace packages, computes version bumps from commits since each package's last release tag, fails if the working tree isn't clean. Writes the release context as JSON to stdout. |
98
99
  | `package-json` | (only one) | Updates internal dependency versions in each released package's `package.json` to exact versions, in the `dependencies`/`devDependencies` block each was declared in (peer ranges are left alone), then refreshes the workspace lockfile. |
99
100
  | `package-manager` | _(default)_ | Writes each released package's new version into its `package.json`. |
@@ -107,6 +108,8 @@ Every step accepts `--context <json>` (except `report`, which produces it) and `
107
108
 
108
109
  `vcs commit`/`vcs tag`/`vcs push` exist so a pipeline can skip pushing (e.g. to inspect a release commit locally) without giving up tagging or committing.
109
110
 
111
+ Run `monorepo-semantic-release check` as a read-only preflight in pull-request CI. `report` runs the same checks before calculating a release; workspace globs must match package manifests, public scoped packages need `publishConfig.access: "public"`, and configured templates must exist. GitHub release notes remain optional, so missing credentials or `gh` produce warnings unless `release-notes` itself is invoked.
112
+
110
113
  ## Configuration
111
114
 
112
115
  Steps read settings from a `release` section in the root `package.json`, a root `.release.json` file, or the corresponding CLI flag (wins over both). When both files configure the same step, `.release.json`'s section replaces `package.json`'s entirely rather than merging field by field; steps configured only in `package.json` are unaffected. Each step reads its own key:
@@ -44,7 +44,7 @@ export class Application {
44
44
  }
45
45
  }
46
46
  catch (error) {
47
- this.errorHandler.handleError(error);
47
+ this.errorHandler.handleError(error, argv[0]);
48
48
  }
49
49
  finally {
50
50
  this.scope.dispose();
@@ -1 +1 @@
1
- {"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/cli/Application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,EAAmB,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAiB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,IAAc;IAC9C,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC;IACvC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,0BAA0B,EAAE,CAAC;IACzC,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;IAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,WAAW;IAMH;IACA;IANnB,MAAM,CAAC,SAAS,CAAC,SAAqB;QACpC,OAAO,IAAI,WAAW,CAAC,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,YACmB,KAAiB,EACjB,YAA2B;QAD3B,UAAK,GAAL,KAAK,CAAY;QACjB,iBAAY,GAAZ,YAAY,CAAe;IAC3C,CAAC;IAEJ,GAAG,CAAC,GAAG,IAAc;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAS,UAAU,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAsB,EAAE,wBAAwB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACvH,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBACzF,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/cli/Application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,EAAmB,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAiB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,IAAc;IAC9C,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC;IACvC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,0BAA0B,EAAE,CAAC;IACzC,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;IAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,WAAW;IAMH;IACA;IANnB,MAAM,CAAC,SAAS,CAAC,SAAqB;QACpC,OAAO,IAAI,WAAW,CAAC,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,YACmB,KAAiB,EACjB,YAA2B;QAD3B,UAAK,GAAL,KAAK,CAAY;QACjB,iBAAY,GAAZ,YAAY,CAAe;IAC3C,CAAC;IAEJ,GAAG,CAAC,GAAG,IAAc;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAS,UAAU,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAsB,EAAE,wBAAwB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACvH,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;gBACzF,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;CACF"}
@@ -1,6 +1,6 @@
1
1
  import { SingleToken } from 'ts-ioc-container';
2
2
  export interface IErrorHandler {
3
- handleError(error: unknown): void;
3
+ handleError(error: unknown, step?: string): void;
4
4
  }
5
5
  export declare const IErrorHandlerKey: SingleToken<IErrorHandler>;
6
6
  //# sourceMappingURL=IErrorHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IErrorHandler.d.ts","sourceRoot":"","sources":["../../src/cli/IErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACnC;AAED,eAAO,MAAM,gBAAgB,4BAAkD,CAAC"}
1
+ {"version":3,"file":"IErrorHandler.d.ts","sourceRoot":"","sources":["../../src/cli/IErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClD;AAED,eAAO,MAAM,gBAAgB,4BAAkD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConventionalCommit.d.ts","sourceRoot":"","sources":["../../src/domain/ConventionalCommit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAGD,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAAyB,CAAC;AAC9E,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAA6C,CAAC;AAClG,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAGnD,CAAC;AAEF,qBAAa,kBAAkB;IAU3B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,UAAU,EAAE,OAAO;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAC5B,QAAQ,CAAC,YAAY,EAAE,cAAc,GAAG,SAAS;IAdnD,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;gBAS9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,EACnB,IAAI,GAAE,MAAM,GAAG,IAAW,EAC1B,YAAY,GAAE,cAAc,GAAG,SAAqB;IAG/D,MAAM,IAAI,sBAAsB;IAQhC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB;IAIjE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAmB7C,oGAAoG;IACpG,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc;IAQxE,mFAAmF;IACnF,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,kBAAkB;CAM3B;AAED,eAAO,MAAM,mBAAmB,GAAI,SAAS,kBAAkB,EAAE,EAAE,MAAM,MAAM,KAAG,kBAAkB,EAAsD,CAAC;AAE3J,eAAO,MAAM,2BAA2B,GAAI,SAAS,kBAAkB,EAAE,EAAE,OAAO,MAAM,EAAE,KAAG,kBAAkB,EACrD,CAAC"}
1
+ {"version":3,"file":"ConventionalCommit.d.ts","sourceRoot":"","sources":["../../src/domain/ConventionalCommit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAGD,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAED,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAAyB,CAAC;AAC9E,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAA6C,CAAC;AAClG,eAAO,MAAM,sBAAsB,EAAE,eAAe,EAGnD,CAAC;AAEF,qBAAa,kBAAkB;IAU3B,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,UAAU,EAAE,OAAO;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAC5B,QAAQ,CAAC,YAAY,EAAE,cAAc,GAAG,SAAS;IAdnD,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;gBAS9D,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,EACnB,IAAI,GAAE,MAAM,GAAG,IAAW,EAC1B,YAAY,GAAE,cAAc,GAAG,SAAqB;IAG/D,MAAM,IAAI,sBAAsB;IAQhC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB;IAIjE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAmB7C,oGAAoG;IACpG,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc;IAWxE,mFAAmF;IACnF,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,kBAAkB;CAM3B;AAED,eAAO,MAAM,mBAAmB,GAAI,SAAS,kBAAkB,EAAE,EAAE,MAAM,MAAM,KAAG,kBAAkB,EAAsD,CAAC;AAE3J,eAAO,MAAM,2BAA2B,GAAI,SAAS,kBAAkB,EAAE,EAAE,OAAO,MAAM,EAAE,KAAG,kBAAkB,EACrD,CAAC"}
@@ -60,8 +60,11 @@ export class ConventionalCommit {
60
60
  }
61
61
  /** Highest bump level this commit triggers for the given package, or NONE if it matches nothing. */
62
62
  bumpMatch(bumpConfig, packageName) {
63
- if (this.explicitBump !== undefined)
64
- return this.explicitBump;
63
+ if (this.explicitBump !== undefined) {
64
+ if (this.scope === null || this.scope === packageName)
65
+ return this.explicitBump;
66
+ return SemVerBumpType.NONE;
67
+ }
65
68
  if (this.matchesAny(bumpConfig.major, packageName))
66
69
  return SemVerBumpType.MAJOR;
67
70
  if (this.matchesAny(bumpConfig.minor, packageName))
@@ -1 +1 @@
1
- {"version":3,"file":"ConventionalCommit.js","sourceRoot":"","sources":["../../src/domain/ConventionalCommit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConventionalCommit.js","sourceRoot":"","sources":["../../src/domain/ConventionalCommit.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,9 @@ export interface PackageJSON {
6
6
  dependencies?: Record<string, string>;
7
7
  devDependencies?: Record<string, string>;
8
8
  peerDependencies?: Record<string, string>;
9
+ publishConfig?: {
10
+ access?: string;
11
+ };
9
12
  workspaces?: string[];
10
13
  }
11
14
  /** The workspace root declares its packages here; the `report` step has nothing to release without it. */
@@ -1 +1 @@
1
- {"version":3,"file":"PackageJSON.d.ts","sourceRoot":"","sources":["../../src/domain/PackageJSON.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,0GAA0G;AAC1G,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AASrE;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;iBAO9B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;iBAInC,CAAC;AAEH,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAAG,MAAM,CAEhE"}
1
+ {"version":3,"file":"PackageJSON.d.ts","sourceRoot":"","sources":["../../src/domain/PackageJSON.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,aAAa,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,0GAA0G;AAC1G,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AASrE;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;iBAO9B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;iBAInC,CAAC;AAEH,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAAG,MAAM,CAEhE"}
@@ -1 +1 @@
1
- {"version":3,"file":"PackageJSON.js","sourceRoot":"","sources":["../../src/domain/PackageJSON.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,uEAAuE;AACvE,0EAA0E;AAC1E,uCAAuC;AACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,6BAA6B,CAAC,CAAC,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC;IAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,gDAAgD,CAAC;IAC3G,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACzC,eAAe,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IAC5C,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,EAAE,EAAE,KAAK,EAAE,mFAAmF,EAAE,CAAC;SACpJ,GAAG,CAAC,CAAC,EAAE,uCAAuC,CAAC;CACnD,CAAC,CAAC;AAEH,mFAAmF;AACnF,MAAM,UAAU,sBAAsB,CAAC,KAAiB;IACtD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzG,CAAC"}
1
+ {"version":3,"file":"PackageJSON.js","sourceRoot":"","sources":["../../src/domain/PackageJSON.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAmBxB,uEAAuE;AACvE,0EAA0E;AAC1E,uCAAuC;AACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,6BAA6B,CAAC,CAAC,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC;IAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,gDAAgD,CAAC;IAC3G,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACzC,eAAe,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IAC5C,gBAAgB,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,EAAE,EAAE,KAAK,EAAE,mFAAmF,EAAE,CAAC;SACpJ,GAAG,CAAC,CAAC,EAAE,uCAAuC,CAAC;CACnD,CAAC,CAAC;AAEH,mFAAmF;AACnF,MAAM,UAAU,sBAAsB,CAAC,KAAiB;IACtD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzG,CAAC"}
@@ -35,6 +35,16 @@ export declare class InvalidConfigException extends DomainException {
35
35
  export declare class MissingGithubCredentialsException extends DomainException {
36
36
  constructor();
37
37
  }
38
+ export declare class PreflightValidationException extends DomainException {
39
+ readonly problems: string[];
40
+ constructor(problems: string[]);
41
+ }
42
+ export declare class MissingTemplateException extends DomainException {
43
+ constructor(step: string, template: string);
44
+ }
45
+ export declare class MissingPublicAccessException extends DomainException {
46
+ constructor(packageName: string);
47
+ }
38
48
  export declare class MissingControllerException extends DomainException {
39
49
  constructor();
40
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DomainException.d.ts","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":"AAAA,8BAAsB,eAAgB,SAAQ,KAAK;IAE/C,QAAQ,CAAC,IAAI,EAAE,MAAM;IADvB,SAAS,aACE,IAAI,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;CAGxD;AAED,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,QAAQ,EAAE,MAAM;CAG7B;AAED,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG7C;AAED,qBAAa,+BAAgC,SAAQ,eAAe;gBACtD,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG7C;AAED,qBAAa,6BAA8B,SAAQ,eAAe;;CAIjE;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,kCAAmC,SAAQ,eAAe;gBACzD,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,yBAA0B,SAAQ,eAAe;;CAI7D;AAED,qBAAa,oCAAqC,SAAQ,eAAe;gBAC3D,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG5C;AAED,qBAAa,iCAAkC,SAAQ,eAAe;;CAOrE;AAED,qBAAa,0BAA2B,SAAQ,eAAe;;CAI9D"}
1
+ {"version":3,"file":"DomainException.d.ts","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":"AAAA,8BAAsB,eAAgB,SAAQ,KAAK;IAE/C,QAAQ,CAAC,IAAI,EAAE,MAAM;IADvB,SAAS,aACE,IAAI,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;CAGxD;AAED,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,QAAQ,EAAE,MAAM;CAG7B;AAED,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG7C;AAED,qBAAa,+BAAgC,SAAQ,eAAe;gBACtD,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG7C;AAED,qBAAa,6BAA8B,SAAQ,eAAe;;CAIjE;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,kCAAmC,SAAQ,eAAe;gBACzD,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,yBAA0B,SAAQ,eAAe;;CAI7D;AAED,qBAAa,oCAAqC,SAAQ,eAAe;gBAC3D,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAG5C;AAED,qBAAa,iCAAkC,SAAQ,eAAe;;CAOrE;AAED,qBAAa,4BAA6B,SAAQ,eAAe;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE;gBAAlB,QAAQ,EAAE,MAAM,EAAE;CAGxC;AAED,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAG3C;AAED,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,WAAW,EAAE,MAAM;CAGhC;AAED,qBAAa,0BAA2B,SAAQ,eAAe;;CAI9D"}
@@ -61,6 +61,23 @@ export class MissingGithubCredentialsException extends DomainException {
61
61
  super('MISSING_GITHUB_CREDENTIALS', 'GitHub releases need a repository and token: set release.release-notes.repository/token, or the GITHUB_REPOSITORY/GITHUB_TOKEN environment variables');
62
62
  }
63
63
  }
64
+ export class PreflightValidationException extends DomainException {
65
+ problems;
66
+ constructor(problems) {
67
+ super('PREFLIGHT_VALIDATION_FAILED', problems.join('\n'));
68
+ this.problems = problems;
69
+ }
70
+ }
71
+ export class MissingTemplateException extends DomainException {
72
+ constructor(step, template) {
73
+ super('MISSING_TEMPLATE', `${step} template "${template}" does not exist; correct the template path in release.${step}.template or create the file`);
74
+ }
75
+ }
76
+ export class MissingPublicAccessException extends DomainException {
77
+ constructor(packageName) {
78
+ super('MISSING_PUBLIC_ACCESS', `Scoped package ${packageName} must set publishConfig.access to "public" before publishing`);
79
+ }
80
+ }
64
81
  export class MissingControllerException extends DomainException {
65
82
  constructor() {
66
83
  super('MISSING_CONTROLLER', 'Usage: monorepo-semantic-release <controller> [action] [--flags...]');
@@ -1 +1 @@
1
- {"version":3,"file":"DomainException.js","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":"AAAA,MAAM,OAAgB,eAAgB,SAAQ,KAAK;IAEtC;IADX,YACW,IAAY,EACrB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,SAAI,GAAJ,IAAI,CAAQ;QAIrB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,iCAAkC,SAAQ,eAAe;IACpE,YAAY,WAAmB,EAAE,cAAsB;QACrD,KAAK,CAAC,4BAA4B,EAAE,cAAc,cAAc,iBAAiB,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;CACF;AAED,MAAM,OAAO,2BAA4B,SAAQ,eAAe;IAC9D,YAAY,QAAgB;QAC1B,KAAK,CAAC,sBAAsB,EAAE,sBAAsB,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,OAAO,2BAA4B,SAAQ,eAAe;IAC9D,YAAY,QAAgB,EAAE,MAAc;QAC1C,KAAK,CAAC,sBAAsB,EAAE,2BAA2B,QAAQ,KAAK,MAAM,EAAE,CAAC,CAAC;IAClF,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,eAAe;IAClE,YAAY,QAAgB,EAAE,MAAc;QAC1C,KAAK,CAAC,2BAA2B,EAAE,0CAA0C,QAAQ,KAAK,MAAM,EAAE,CAAC,CAAC;IACtG,CAAC;CACF;AAED,MAAM,OAAO,6BAA8B,SAAQ,eAAe;IAChE;QACE,KAAK,CAAC,wBAAwB,EAAE,0EAA0E,CAAC,CAAC;IAC9G,CAAC;CACF;AAED,MAAM,OAAO,iCAAkC,SAAQ,eAAe;IACpE,YAAY,UAAkB;QAC5B,KAAK,CAAC,oCAAoC,EAAE,sBAAsB,UAAU,uBAAuB,CAAC,CAAC;IACvG,CAAC;CACF;AAED,MAAM,OAAO,kCAAmC,SAAQ,eAAe;IACrE,YAAY,UAAkB;QAC5B,KAAK,CAAC,8BAA8B,EAAE,UAAU,UAAU,oBAAoB,CAAC,CAAC;IAClF,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,eAAe;IAC5D;QACE,KAAK,CAAC,oBAAoB,EAAE,6EAA6E,CAAC,CAAC;IAC7G,CAAC;CACF;AAED,MAAM,OAAO,oCAAqC,SAAQ,eAAe;IACvE,YAAY,MAAc;QACxB,KAAK,CAAC,gCAAgC,EAAE,yCAAyC,MAAM,iEAAiE,CAAC,CAAC;IAC5J,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,eAAe;IACzD,YAAY,OAAe,EAAE,MAAc;QACzC,KAAK,CAAC,gBAAgB,EAAE,sCAAsC,OAAO,MAAM,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACF;AAED,MAAM,OAAO,iCAAkC,SAAQ,eAAe;IACpE;QACE,KAAK,CACH,4BAA4B,EAC5B,sJAAsJ,CACvJ,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,eAAe;IAC7D;QACE,KAAK,CAAC,oBAAoB,EAAE,qEAAqE,CAAC,CAAC;IACrG,CAAC;CACF"}
1
+ {"version":3,"file":"DomainException.js","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import 'reflect-metadata';
2
2
  import { IErrorHandler } from '../cli/IErrorHandler.js';
3
3
  export declare class ExceptionHandler implements IErrorHandler {
4
- handleError(error: unknown): void;
4
+ handleError(error: unknown, step?: string): void;
5
+ private getChildProcessError;
6
+ private escapeAnnotation;
5
7
  }
6
8
  //# sourceMappingURL=ExceptionHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExceptionHandler.d.ts","sourceRoot":"","sources":["../../src/exceptions/ExceptionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,EAAE,aAAa,EAAoB,MAAM,yBAAyB,CAAC;AAI1E,qBACa,gBAAiB,YAAW,aAAa;IACpD,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CASlC"}
1
+ {"version":3,"file":"ExceptionHandler.d.ts","sourceRoot":"","sources":["../../src/exceptions/ExceptionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,aAAa,EAAoB,MAAM,yBAAyB,CAAC;AAK1E,qBACa,gBAAiB,YAAW,aAAa;IACpD,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,IAAI;IAcnD,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,gBAAgB;CAGzB"}
@@ -5,21 +5,43 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import 'reflect-metadata';
8
- import { DomainException } from './DomainException.js';
9
8
  import { register, singleton } from 'ts-ioc-container';
10
9
  import { IErrorHandlerKey } from '../cli/IErrorHandler.js';
10
+ import { DomainException } from './DomainException.js';
11
11
  // Application resolves IErrorHandlerKey and calls handleError() when a
12
12
  // command throws.
13
13
  let ExceptionHandler = class ExceptionHandler {
14
- handleError(error) {
15
- if (error instanceof DomainException) {
16
- console.error(`[${error.code}] ${error.message}`);
17
- }
18
- else {
19
- console.error(error);
14
+ handleError(error, step = 'release') {
15
+ const details = this.getChildProcessError(error);
16
+ const code = error instanceof DomainException ? `[${error.code}] ` : '';
17
+ for (const line of details.split(/\r?\n/).filter(Boolean)) {
18
+ const message = `[${step}] ✖ ${code}${line}`;
19
+ console.error(message);
20
+ if (process.env.GITHUB_ACTIONS === 'true') {
21
+ console.error(`::error::${this.escapeAnnotation(line)}`);
22
+ }
20
23
  }
21
24
  process.exitCode = 1;
22
25
  }
26
+ getChildProcessError(error) {
27
+ if (error && typeof error === 'object') {
28
+ const childError = error;
29
+ const stderr = childError.stderr;
30
+ if (stderr) {
31
+ const message = typeof stderr === 'string' ? stderr.trim() : stderr.toString().trim();
32
+ if (message) {
33
+ return message;
34
+ }
35
+ }
36
+ if (childError.message) {
37
+ return childError.message;
38
+ }
39
+ }
40
+ return String(error);
41
+ }
42
+ escapeAnnotation(message) {
43
+ return message.replace(/%/g, '%25').replace(/\r/g, '%0D').replace(/\n/g, '%0A').replace(/:/g, '%3A').replace(/,/g, '%2C');
44
+ }
23
45
  };
24
46
  ExceptionHandler = __decorate([
25
47
  register(IErrorHandlerKey, singleton())
@@ -1 +1 @@
1
- {"version":3,"file":"ExceptionHandler.js","sourceRoot":"","sources":["../../src/exceptions/ExceptionHandler.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAiB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE1E,uEAAuE;AACvE,kBAAkB;AAEX,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,WAAW,CAAC,KAAc;QACxB,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;CACF,CAAA;AAVY,gBAAgB;IAD5B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC;GAC3B,gBAAgB,CAU5B"}
1
+ {"version":3,"file":"ExceptionHandler.js","sourceRoot":"","sources":["../../src/exceptions/ExceptionHandler.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAiB,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,uEAAuE;AACvE,kBAAkB;AAEX,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,WAAW,CAAC,KAAc,EAAE,IAAI,GAAG,SAAS;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1D,MAAM,OAAO,GAAG,IAAI,IAAI,OAAO,IAAI,GAAG,IAAI,EAAE,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvB,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;gBAC1C,OAAO,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;IAEO,oBAAoB,CAAC,KAAc;QACzC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,KAAuD,CAAC;YAC3E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YACjC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBACtF,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,OAAO,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,OAAO,UAAU,CAAC,OAAO,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAEO,gBAAgB,CAAC,OAAe;QACtC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5H,CAAC;CACF,CAAA;AAnCY,gBAAgB;IAD5B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC;GAC3B,gBAAgB,CAmC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChangelogController.d.ts","sourceRoot":"","sources":["../../../src/features/changelog/ChangelogController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AACpG,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAGtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAc,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAKxE,eAAO,MAAM,iBAAiB;;;;;iBAG5B,CAAC;AAOH,qBACa,mBAAmB;IAEoC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAJoB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACb,aAAa,EAAE,cAAc,EACzB,EAAE,EAAE,kBAAkB,EACf,MAAM,EAAE,OAAO;IAKxE,iBAAiB,CAAqF,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,GAAG,IAAI;CAsBxJ"}
1
+ {"version":3,"file":"ChangelogController.d.ts","sourceRoot":"","sources":["../../../src/features/changelog/ChangelogController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AACpG,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAGtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAc,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAMxE,eAAO,MAAM,iBAAiB;;;;;iBAG5B,CAAC;AAOH,qBACa,mBAAmB;IAEoC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAJoB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACb,aAAa,EAAE,cAAc,EACzB,EAAE,EAAE,kBAAkB,EACf,MAAM,EAAE,OAAO;IAKxE,iBAAiB,CAAqF,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,GAAG,IAAI;CA0BxJ"}
@@ -24,6 +24,7 @@ import { CONFIG_KEY, PLUGIN_CONFIG_SCHEMA } from './ChangelogConfig.js';
24
24
  import { isDryRun, parseOptions, STEP_OPTIONS, stepCommand } from '../../utils/cli.js';
25
25
  import { validate } from '../../utils/zod.js';
26
26
  import { commandArgs } from '../../utils/ts-ioc-container.js';
27
+ import { MissingTemplateException } from '../../exceptions/DomainException.js';
27
28
  export const CHANGELOG_OPTIONS = STEP_OPTIONS.extend({
28
29
  template: z.string().trim().optional(),
29
30
  changelogName: z.string().trim().optional(),
@@ -50,6 +51,9 @@ let ChangelogController = class ChangelogController {
50
51
  const template = options.template ?? this.config.template;
51
52
  const changelogName = options.changelogName ?? this.config.changelogName;
52
53
  const dryRun = isDryRun(options, this.config);
54
+ if (template && !this.fs.fileExists(template)) {
55
+ throw new MissingTemplateException('changelog', template);
56
+ }
53
57
  for (const pkg of releasedPackages) {
54
58
  const changelogFile = path.resolve(pkg.dirname, changelogName);
55
59
  const existing = this.fs.fileExists(changelogFile) ? this.fs.readFile(changelogFile) : '';
@@ -1 +1 @@
1
- {"version":3,"file":"ChangelogController.js","sourceRoot":"","sources":["../../../src/features/changelog/ChangelogController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangelogController.js","sourceRoot":"","sources":["../../../src/features/changelog/ChangelogController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ILogger } from '../../services/ConsoleLogger.js';
2
+ import { PreflightService } from '../../services/PreflightService.js';
3
+ export declare class CheckController {
4
+ private readonly preflight;
5
+ private readonly logger;
6
+ constructor(preflight: PreflightService, logger: ILogger);
7
+ run(): void;
8
+ }
9
+ //# sourceMappingURL=CheckController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckController.d.ts","sourceRoot":"","sources":["../../../src/features/check/CheckController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAuB,MAAM,oCAAoC,CAAC;AAE3F,qBACa,eAAe;IAEK,OAAO,CAAC,QAAQ,CAAC,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADX,SAAS,EAAE,gBAAgB,EACtB,MAAM,EAAE,OAAO;IAKpE,GAAG,IAAI,IAAI;CAMZ"}
@@ -0,0 +1,45 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, register } from 'ts-ioc-container';
14
+ import { action, execute, onDefault } from '../../cli/index.js';
15
+ import { ILoggerKey } from '../../services/ConsoleLogger.js';
16
+ import { PreflightService, PreflightServiceKey } from '../../services/PreflightService.js';
17
+ let CheckController = class CheckController {
18
+ preflight;
19
+ logger;
20
+ constructor(preflight, logger) {
21
+ this.preflight = preflight;
22
+ this.logger = logger;
23
+ }
24
+ run() {
25
+ for (const warning of this.preflight.validate()) {
26
+ this.logger.info(`⚠ ${warning}`);
27
+ }
28
+ this.logger.info('Preflight checks passed');
29
+ }
30
+ };
31
+ __decorate([
32
+ onDefault(execute()),
33
+ action('run', execute()),
34
+ __metadata("design:type", Function),
35
+ __metadata("design:paramtypes", []),
36
+ __metadata("design:returntype", void 0)
37
+ ], CheckController.prototype, "run", null);
38
+ CheckController = __decorate([
39
+ register('check'),
40
+ __param(0, inject(PreflightServiceKey)),
41
+ __param(1, inject(ILoggerKey.args('check'))),
42
+ __metadata("design:paramtypes", [PreflightService, Object])
43
+ ], CheckController);
44
+ export { CheckController };
45
+ //# sourceMappingURL=CheckController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckController.js","sourceRoot":"","sources":["../../../src/features/check/CheckController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAW,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAGpF,IAAM,eAAe,GAArB,MAAM,eAAe;IAEsB;IACK;IAFrD,YACgD,SAA2B,EACtB,MAAe;QADpB,cAAS,GAAT,SAAS,CAAkB;QACtB,WAAM,GAAN,MAAM,CAAS;IACjE,CAAC;IAIJ,GAAG;QACD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AANC;IAFC,SAAS,CAAC,OAAO,EAAE,CAAC;IACpB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;;;;0CAMxB;AAbU,eAAe;IAD3B,QAAQ,CAAC,OAAO,CAAC;IAGb,WAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;IAC3B,WAAA,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;qCADwB,gBAAgB;GAFhE,eAAe,CAc3B"}
@@ -0,0 +1,5 @@
1
+ import { IContainer, IContainerModule } from 'ts-ioc-container';
2
+ export declare class CheckModule implements IContainerModule {
3
+ applyTo(container: IContainer): void;
4
+ }
5
+ //# sourceMappingURL=CheckModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckModule.d.ts","sourceRoot":"","sources":["../../../src/features/check/CheckModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AAGnF,qBAAa,WAAY,YAAW,gBAAgB;IAClD,OAAO,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAGrC"}
@@ -0,0 +1,8 @@
1
+ import { Registration as R } from 'ts-ioc-container';
2
+ import { CheckController } from './CheckController.js';
3
+ export class CheckModule {
4
+ applyTo(container) {
5
+ container.addRegistration(R.fromClass(CheckController));
6
+ }
7
+ }
8
+ //# sourceMappingURL=CheckModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckModule.js","sourceRoot":"","sources":["../../../src/features/check/CheckModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,YAAY,IAAI,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,OAAO,WAAW;IACtB,OAAO,CAAC,SAAqB;QAC3B,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IAC1D,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"PackageManagerController.d.ts","sourceRoot":"","sources":["../../../src/features/packageManager/PackageManagerController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AACpG,OAAO,EAAc,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG7E,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIzG,qBACa,wBAAwB;IAE+B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC5D,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACN,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHc,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EACjF,cAAc,EAAE,cAAc,EAC1B,EAAE,EAAE,kBAAkB,EACT,MAAM,EAAE,OAAO;IAO9E,WAAW,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;IAejH;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;IAOpB,kBAAkB,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;CAczH"}
1
+ {"version":3,"file":"PackageManagerController.d.ts","sourceRoot":"","sources":["../../../src/features/packageManager/PackageManagerController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AACpG,OAAO,EAAc,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG7E,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKzG,qBACa,wBAAwB;IAE+B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC5D,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACN,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAHc,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EACjF,cAAc,EAAE,cAAc,EAC1B,EAAE,EAAE,kBAAkB,EACT,MAAM,EAAE,OAAO;IAO9E,WAAW,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;IAejH;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;IAOpB,kBAAkB,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;CAsBzH"}
@@ -22,6 +22,7 @@ import { deserializeContext } from '../../domain/ReleaseControllerContext.js';
22
22
  import { isDryRun, parseOptions, STEP_OPTIONS, stepCommand } from '../../utils/cli.js';
23
23
  import { validate } from '../../utils/zod.js';
24
24
  import { commandArgs } from '../../utils/ts-ioc-container.js';
25
+ import { MissingPublicAccessException } from '../../exceptions/DomainException.js';
25
26
  let PackageManagerController = class PackageManagerController {
26
27
  config;
27
28
  packageManager;
@@ -66,6 +67,13 @@ let PackageManagerController = class PackageManagerController {
66
67
  publishAllPackages(options) {
67
68
  const { releasedPackages, releasedVersions } = deserializeContext(options.context);
68
69
  const dryRun = isDryRun(options, this.config);
70
+ if (!dryRun) {
71
+ for (const pkg of releasedPackages) {
72
+ if (pkg.name.startsWith('@') && this.fs.readPackageJsonOrFail(pkg.dirname).publishConfig?.access !== 'public') {
73
+ throw new MissingPublicAccessException(pkg.name);
74
+ }
75
+ }
76
+ }
69
77
  for (const pkg of releasedPackages) {
70
78
  const newVersion = releasedVersions.get(pkg.name);
71
79
  if (dryRun) {
@@ -1 +1 @@
1
- {"version":3,"file":"PackageManagerController.js","sourceRoot":"","sources":["../../../src/features/packageManager/PackageManagerController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PackageManagerController.js","sourceRoot":"","sources":["../../../src/features/packageManager/PackageManagerController.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { z } from 'zod';
3
3
  import { IRenderService } from '../../services/HandlebarsRenderService.js';
4
4
  import { ReleaseNotesService } from './services/ReleaseNotesService.js';
5
5
  import { PLUGIN_CONFIG_SCHEMA } from './ReleaseNotesConfig.js';
6
+ import { IFileSystemService } from '../../services/NodeFileSystemService.js';
6
7
  export declare const RELEASE_NOTES_OPTIONS: z.ZodObject<{
7
8
  context: z.ZodString;
8
9
  dryRun: z.ZodDefault<z.ZodBoolean>;
@@ -14,7 +15,8 @@ export declare class ReleaseNotesController {
14
15
  private readonly githubService;
15
16
  private readonly logger;
16
17
  private readonly renderService;
17
- constructor(config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>, cwd: string, githubService: ReleaseNotesService, logger: ILogger, renderService: IRenderService);
18
+ private readonly fs;
19
+ constructor(config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>, cwd: string, githubService: ReleaseNotesService, logger: ILogger, renderService: IRenderService, fs: IFileSystemService);
18
20
  createGithubRelease(options: z.infer<typeof RELEASE_NOTES_OPTIONS>): void;
19
21
  private resolveCredentials;
20
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReleaseNotesController.d.ts","sourceRoot":"","sources":["../../../src/features/releaseNotes/ReleaseNotesController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAG9F,OAAO,EAAE,mBAAmB,EAA0B,MAAM,mCAAmC,CAAC;AAChG,OAAO,EAAc,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAO3E,eAAO,MAAM,qBAAqB;;;;iBAEhC,CAAC;AAIH,qBACa,sBAAsB;IAEiC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IACjB,OAAO,CAAC,QAAQ,CAAC,aAAa;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAJwB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACR,aAAa,EAAE,mBAAmB,EACxB,MAAM,EAAE,OAAO,EAC9B,aAAa,EAAE,cAAc;IAK3E,mBAAmB,CAC0E,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GACxI,IAAI;IAgDP,OAAO,CAAC,kBAAkB;CAa3B"}
1
+ {"version":3,"file":"ReleaseNotesController.d.ts","sourceRoot":"","sources":["../../../src/features/releaseNotes/ReleaseNotesController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAG9F,OAAO,EAAE,mBAAmB,EAA0B,MAAM,mCAAmC,CAAC;AAChG,OAAO,EAAc,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAM3E,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AAGpG,eAAO,MAAM,qBAAqB;;;;iBAEhC,CAAC;AAIH,qBACa,sBAAsB;IAEiC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IACjB,OAAO,CAAC,QAAQ,CAAC,aAAa;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAL+B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACR,aAAa,EAAE,mBAAmB,EACxB,MAAM,EAAE,OAAO,EAC9B,aAAa,EAAE,cAAc,EACzB,EAAE,EAAE,kBAAkB;IAKxE,mBAAmB,CAC0E,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GACxI,IAAI;IAoDP,OAAO,CAAC,kBAAkB;CAa3B"}
@@ -24,6 +24,8 @@ import { deserializeContext } from '../../domain/ReleaseControllerContext.js';
24
24
  import { isDryRun, parseOptions, STEP_OPTIONS, stepCommand } from '../../utils/cli.js';
25
25
  import { validate } from '../../utils/zod.js';
26
26
  import { commandArgs } from '../../utils/ts-ioc-container.js';
27
+ import { IFileSystemServiceKey } from '../../services/NodeFileSystemService.js';
28
+ import { MissingTemplateException } from '../../exceptions/DomainException.js';
27
29
  export const RELEASE_NOTES_OPTIONS = STEP_OPTIONS.extend({
28
30
  template: z.string().trim().optional(),
29
31
  });
@@ -34,12 +36,14 @@ let ReleaseNotesController = class ReleaseNotesController {
34
36
  githubService;
35
37
  logger;
36
38
  renderService;
37
- constructor(config, cwd, githubService, logger, renderService) {
39
+ fs;
40
+ constructor(config, cwd, githubService, logger, renderService, fs) {
38
41
  this.config = config;
39
42
  this.cwd = cwd;
40
43
  this.githubService = githubService;
41
44
  this.logger = logger;
42
45
  this.renderService = renderService;
46
+ this.fs = fs;
43
47
  }
44
48
  createGithubRelease(options) {
45
49
  const releaseContext = deserializeContext(options.context);
@@ -50,6 +54,9 @@ let ReleaseNotesController = class ReleaseNotesController {
50
54
  const dryRun = isDryRun(options, this.config);
51
55
  const template = options.template ?? this.config.template;
52
56
  const { repository, token } = this.resolveCredentials(dryRun);
57
+ if (template && !this.fs.fileExists(template)) {
58
+ throw new MissingTemplateException('release-notes', template);
59
+ }
53
60
  if (!dryRun && !this.githubService.isCliAvailable()) {
54
61
  throw new GithubCliUnavailableException();
55
62
  }
@@ -110,7 +117,8 @@ ReleaseNotesController = __decorate([
110
117
  __param(2, inject(ReleaseNotesServiceKey)),
111
118
  __param(3, inject(ILoggerKey.args('release-notes'))),
112
119
  __param(4, inject(IRenderServiceKey)),
113
- __metadata("design:paramtypes", [Object, String, Object, Object, Object])
120
+ __param(5, inject(IFileSystemServiceKey)),
121
+ __metadata("design:paramtypes", [Object, String, Object, Object, Object, Object])
114
122
  ], ReleaseNotesController);
115
123
  export { ReleaseNotesController };
116
124
  //# sourceMappingURL=ReleaseNotesController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReleaseNotesController.js","sourceRoot":"","sources":["../../../src/features/releaseNotes/ReleaseNotesController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReleaseNotesController.js","sourceRoot":"","sources":["../../../src/features/releaseNotes/ReleaseNotesController.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { VSCService } from '../vcs/services/VSCService.js';
5
5
  import { ILogger } from '../../services/ConsoleLogger.js';
6
6
  import { OutputService } from '../../services/OutputService.js';
7
7
  import { PLUGIN_CONFIG_SCHEMA } from './ReportConfig.js';
8
+ import { PreflightService } from '../../services/PreflightService.js';
8
9
  export declare const resolvePublicPackages: (container: IContainer) => NpmPackage[];
9
10
  export declare class ReportController {
10
11
  private vsc;
@@ -12,7 +13,8 @@ export declare class ReportController {
12
13
  private output;
13
14
  private publicPackages;
14
15
  private config;
15
- constructor(vsc: VSCService, logger: ILogger, output: OutputService, publicPackages: NpmPackage[], config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>);
16
+ private preflight;
17
+ constructor(vsc: VSCService, logger: ILogger, output: OutputService, publicPackages: NpmPackage[], config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>, preflight: PreflightService);
16
18
  generate(): void;
17
19
  private logStep;
18
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReportController.d.ts","sourceRoot":"","sources":["../../../src/features/report/ReportController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAA+B,MAAM,4BAA4B,CAAC;AAErF,OAAO,EAAE,UAAU,EAAiB,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAoB,MAAM,iCAAiC,CAAC;AAQlF,OAAO,EAAc,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAOrE,eAAO,MAAM,qBAAqB,GAAI,WAAW,UAAU,KAAG,UAAU,EAQvE,CAAC;AAEF,qBACa,gBAAgB;IAEF,OAAO,CAAC,GAAG;IACC,OAAO,CAAC,MAAM;IACvB,OAAO,CAAC,MAAM;IACT,OAAO,CAAC,cAAc;IACW,OAAO,CAAC,MAAM;gBAJ/C,GAAG,EAAE,UAAU,EACH,MAAM,EAAE,OAAO,EACxB,MAAM,EAAE,aAAa,EAChB,cAAc,EAAE,UAAU,EAAE,EACK,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC;IAQtH,QAAQ,IAAI,IAAI;IA0ChB,OAAO,CAAC,OAAO;CAGhB"}
1
+ {"version":3,"file":"ReportController.d.ts","sourceRoot":"","sources":["../../../src/features/report/ReportController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAA+B,MAAM,4BAA4B,CAAC;AAErF,OAAO,EAAE,UAAU,EAAiB,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAoB,MAAM,iCAAiC,CAAC;AAQlF,OAAO,EAAc,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAuB,MAAM,oCAAoC,CAAC;AAO3F,eAAO,MAAM,qBAAqB,GAAI,WAAW,UAAU,KAAG,UAAU,EAQvE,CAAC;AAEF,qBACa,gBAAgB;IAEF,OAAO,CAAC,GAAG;IACC,OAAO,CAAC,MAAM;IACvB,OAAO,CAAC,MAAM;IACT,OAAO,CAAC,cAAc;IACW,OAAO,CAAC,MAAM;IACjD,OAAO,CAAC,SAAS;gBALf,GAAG,EAAE,UAAU,EACH,MAAM,EAAE,OAAO,EACxB,MAAM,EAAE,aAAa,EAChB,cAAc,EAAE,UAAU,EAAE,EACK,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,SAAS,EAAE,gBAAgB;IAQlE,QAAQ,IAAI,IAAI;IA8ChB,OAAO,CAAC,OAAO;CAGhB"}
@@ -24,6 +24,7 @@ import { bumpTypeToString, SemVerBumpType } from '../../domain/SemVerBumpType.js
24
24
  import { serializeContext } from '../../domain/ReleaseControllerContext.js';
25
25
  import { pluginsConfigService } from '../../services/PluginsConfigService.js';
26
26
  import { CONFIG_KEY, PLUGIN_CONFIG_SCHEMA } from './ReportConfig.js';
27
+ import { PreflightService, PreflightServiceKey } from '../../services/PreflightService.js';
27
28
  // Arrow function, not `function`: ts-ioc-container's token resolver treats any
28
29
  // function with a `.prototype` as a class to `new`, which a plain function
29
30
  // declaration has and an arrow function does not. Declared before the class
@@ -44,12 +45,14 @@ let ReportController = class ReportController {
44
45
  output;
45
46
  publicPackages;
46
47
  config;
47
- constructor(vsc, logger, output, publicPackages, config) {
48
+ preflight;
49
+ constructor(vsc, logger, output, publicPackages, config, preflight) {
48
50
  this.vsc = vsc;
49
51
  this.logger = logger;
50
52
  this.output = output;
51
53
  this.publicPackages = publicPackages;
52
54
  this.config = config;
55
+ this.preflight = preflight;
53
56
  }
54
57
  // No options parameter: `report` only reads the repository, so it has
55
58
  // nothing for --dry-run to suppress. Nothing parses argv for this action,
@@ -63,6 +66,9 @@ let ReportController = class ReportController {
63
66
  if (!this.vsc.isWorkingTreeClean()) {
64
67
  throw new DirtyWorkingTreeException();
65
68
  }
69
+ for (const warning of this.preflight.validate()) {
70
+ this.logger.info(`⚠ ${warning}`);
71
+ }
66
72
  const releasedVersions = new Map();
67
73
  const releasedCommits = new Map();
68
74
  for (const pkg of this.publicPackages) {
@@ -111,7 +117,8 @@ ReportController = __decorate([
111
117
  __param(2, inject(OutputServiceKey)),
112
118
  __param(3, inject(resolvePublicPackages)),
113
119
  __param(4, inject(pluginsConfigService(CONFIG_KEY, PLUGIN_CONFIG_SCHEMA))),
114
- __metadata("design:paramtypes", [Object, Object, Object, Array, Object])
120
+ __param(5, inject(PreflightServiceKey)),
121
+ __metadata("design:paramtypes", [Object, Object, Object, Array, Object, PreflightService])
115
122
  ], ReportController);
116
123
  export { ReportController };
117
124
  //# sourceMappingURL=ReportController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReportController.js","sourceRoot":"","sources":["../../../src/features/report/ReportController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReportController.js","sourceRoot":"","sources":["../../../src/features/report/ReportController.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { IRenderService } from '../../services/HandlebarsRenderService.js';
4
4
  import { VSCService } from './services/VSCService.js';
5
5
  import { PLUGIN_CONFIG_SCHEMA } from './VCSConfig.js';
6
6
  import { type StepOptions } from '../../utils/cli.js';
7
+ import { IFileSystemService } from '../../services/NodeFileSystemService.js';
7
8
  export declare const VCS_OPTIONS: z.ZodObject<{
8
9
  context: z.ZodString;
9
10
  dryRun: z.ZodDefault<z.ZodBoolean>;
@@ -14,8 +15,9 @@ export declare class VCSController {
14
15
  private readonly cwd;
15
16
  private readonly vcs;
16
17
  private readonly renderService;
18
+ private readonly fs;
17
19
  private readonly logger;
18
- constructor(config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>, cwd: string, vcs: VSCService, renderService: IRenderService, logger: ILogger);
20
+ constructor(config: z.infer<typeof PLUGIN_CONFIG_SCHEMA>, cwd: string, vcs: VSCService, renderService: IRenderService, fs: IFileSystemService, logger: ILogger);
19
21
  commitChanges(options: z.infer<typeof VCS_OPTIONS>): void;
20
22
  createTags(options: StepOptions): void;
21
23
  pushChanges(options: StepOptions): void;
@@ -1 +1 @@
1
- {"version":3,"file":"VCSController.d.ts","sourceRoot":"","sources":["../../../src/features/vcs/VCSController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAG9F,OAAO,EAAE,UAAU,EAAiB,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAc,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIzG,eAAO,MAAM,WAAW;;;;iBAEtB,CAAC;AAIH,qBACa,aAAa;IAE0C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IAChB,OAAO,CAAC,QAAQ,CAAC,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAJ0B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACjB,GAAG,EAAE,UAAU,EACX,aAAa,EAAE,cAAc,EACxB,MAAM,EAAE,OAAO;IAOlE,aAAa,CAAyE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI;IAqBjI,UAAU,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;IAiBhH,WAAW,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;CAYlH"}
1
+ {"version":3,"file":"VCSController.d.ts","sourceRoot":"","sources":["../../../src/features/vcs/VCSController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAqB,MAAM,2CAA2C,CAAC;AAG9F,OAAO,EAAE,UAAU,EAAiB,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAc,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE,OAAO,EAAqD,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGzG,OAAO,EAAE,kBAAkB,EAAyB,MAAM,yCAAyC,CAAC;AAGpG,eAAO,MAAM,WAAW;;;;iBAEtB,CAAC;AAIH,qBACa,aAAa;IAE0C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC1D,OAAO,CAAC,QAAQ,CAAC,GAAG;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IAChB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE;IAClB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAL0B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,EAC/E,GAAG,EAAE,MAAM,EACjB,GAAG,EAAE,UAAU,EACX,aAAa,EAAE,cAAc,EACzB,EAAE,EAAE,kBAAkB,EACrB,MAAM,EAAE,OAAO;IAOlE,aAAa,CAAyE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI;IAwBjI,UAAU,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;IAiBhH,WAAW,CAA2E,OAAO,EAAE,WAAW,GAAG,IAAI;CAYlH"}
@@ -23,6 +23,8 @@ import { deserializeContext } from '../../domain/ReleaseControllerContext.js';
23
23
  import { isDryRun, parseOptions, STEP_OPTIONS, stepCommand } from '../../utils/cli.js';
24
24
  import { validate } from '../../utils/zod.js';
25
25
  import { commandArgs } from '../../utils/ts-ioc-container.js';
26
+ import { IFileSystemServiceKey } from '../../services/NodeFileSystemService.js';
27
+ import { MissingTemplateException } from '../../exceptions/DomainException.js';
26
28
  export const VCS_OPTIONS = STEP_OPTIONS.extend({
27
29
  template: z.string().trim().optional(),
28
30
  });
@@ -32,12 +34,14 @@ let VCSController = class VCSController {
32
34
  cwd;
33
35
  vcs;
34
36
  renderService;
37
+ fs;
35
38
  logger;
36
- constructor(config, cwd, vcs, renderService, logger) {
39
+ constructor(config, cwd, vcs, renderService, fs, logger) {
37
40
  this.config = config;
38
41
  this.cwd = cwd;
39
42
  this.vcs = vcs;
40
43
  this.renderService = renderService;
44
+ this.fs = fs;
41
45
  this.logger = logger;
42
46
  }
43
47
  // Declaration order is the execution order of the default action:
@@ -49,6 +53,9 @@ let VCSController = class VCSController {
49
53
  // changes before the pipeline touches anything — lives in `report`.
50
54
  const releaseContext = deserializeContext(options.context);
51
55
  const template = options.template ?? this.config.template;
56
+ if (template && !this.fs.fileExists(template)) {
57
+ throw new MissingTemplateException('vcs', template);
58
+ }
52
59
  const cwd = template ? this.cwd : import.meta.dirname;
53
60
  const commitMessage = this.renderService.render(template ?? './release-commit-msg.hbs', releaseContext, { cwd });
54
61
  if (isDryRun(options, this.config)) {
@@ -112,8 +119,9 @@ VCSController = __decorate([
112
119
  __param(1, inject(globalConfig('cwd'))),
113
120
  __param(2, inject(VSCServiceKey)),
114
121
  __param(3, inject(IRenderServiceKey)),
115
- __param(4, inject(ILoggerKey.args('vcs'))),
116
- __metadata("design:paramtypes", [Object, String, Object, Object, Object])
122
+ __param(4, inject(IFileSystemServiceKey)),
123
+ __param(5, inject(ILoggerKey.args('vcs'))),
124
+ __metadata("design:paramtypes", [Object, String, Object, Object, Object, Object])
117
125
  ], VCSController);
118
126
  export { VCSController };
119
127
  //# sourceMappingURL=VCSController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VCSController.js","sourceRoot":"","sources":["../../../src/features/vcs/VCSController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VCSController.js","sourceRoot":"","sources":["../../../src/features/vcs/VCSController.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAW1B,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,SAAgB,GAAG,MAAM,CAgBlE;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAY1B,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,SAAgB,GAAG,MAAM,CAiBlE;AAED,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -7,10 +7,12 @@ import { PackageManagerModule } from './features/packageManager/PackageManagerMo
7
7
  import { PackageJsonModule } from './features/packageJson/PackageJsonModule.js';
8
8
  import { ChangelogModule } from './features/changelog/ChangelogModule.js';
9
9
  import { ReportModule } from './features/report/ReportModule.js';
10
+ import { CheckModule } from './features/check/CheckModule.js';
10
11
  import { Application } from './cli/Application.js';
11
12
  export function runCli(args, cwd = process.cwd()) {
12
13
  const container = new Container({ tags: ['root'] })
13
14
  .useModule(new CommonModule({ cwd }))
15
+ .useModule(new CheckModule())
14
16
  .useModule(new ReportModule())
15
17
  .useModule(new VCSModule())
16
18
  .useModule(new ReleaseNotesModule())
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,UAAU,MAAM,CAAC,IAAc,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACxD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SAChD,SAAS,CAAC,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACpC,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC;SAC7B,SAAS,CAAC,IAAI,SAAS,EAAE,CAAC;SAC1B,SAAS,CAAC,IAAI,kBAAkB,EAAE,CAAC;SACnC,SAAS,CAAC,IAAI,oBAAoB,EAAE,CAAC;SACrC,SAAS,CAAC,IAAI,eAAe,EAAE,CAAC;SAChC,SAAS,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAEtC,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjB,wEAAwE;IACxE,0CAA0C;IAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,UAAU,MAAM,CAAC,IAAc,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACxD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SAChD,SAAS,CAAC,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACpC,SAAS,CAAC,IAAI,WAAW,EAAE,CAAC;SAC5B,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC;SAC7B,SAAS,CAAC,IAAI,SAAS,EAAE,CAAC;SAC1B,SAAS,CAAC,IAAI,kBAAkB,EAAE,CAAC;SACnC,SAAS,CAAC,IAAI,oBAAoB,EAAE,CAAC;SACrC,SAAS,CAAC,IAAI,eAAe,EAAE,CAAC;SAChC,SAAS,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAEtC,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAEjB,wEAAwE;IACxE,0CAA0C;IAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,eAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommonModule.d.ts","sourceRoot":"","sources":["../../src/modules/CommonModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AAQ7F,UAAU,mBAAmB;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,YAAa,YAAW,gBAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,mBAAmB;IAEzD,OAAO,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAUrC"}
1
+ {"version":3,"file":"CommonModule.d.ts","sourceRoot":"","sources":["../../src/modules/CommonModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AAS7F,UAAU,mBAAmB;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,YAAa,YAAW,gBAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,mBAAmB;IAEzD,OAAO,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;CAWrC"}
@@ -5,6 +5,7 @@ import { ConsoleLogger } from '../services/ConsoleLogger.js';
5
5
  import { HandlebarsRenderService } from '../services/HandlebarsRenderService.js';
6
6
  import { GlobalConfigKey } from '../domain/GlobalConfig.js';
7
7
  import { PluginsConfigService } from '../services/PluginsConfigService.js';
8
+ import { PreflightService } from '../services/PreflightService.js';
8
9
  export class CommonModule {
9
10
  options;
10
11
  constructor(options) {
@@ -17,7 +18,8 @@ export class CommonModule {
17
18
  .addRegistration(R.fromClass(NodeFileSystemService))
18
19
  .addRegistration(R.fromClass(ExceptionHandler))
19
20
  .addRegistration(R.fromClass(ConsoleLogger))
20
- .addRegistration(R.fromClass(HandlebarsRenderService));
21
+ .addRegistration(R.fromClass(HandlebarsRenderService))
22
+ .addRegistration(R.fromClass(PreflightService));
21
23
  }
22
24
  }
23
25
  //# sourceMappingURL=CommonModule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonModule.js","sourceRoot":"","sources":["../../src/modules/CommonModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,YAAY,IAAI,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAM3E,MAAM,OAAO,YAAY;IACM;IAA7B,YAA6B,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAE7D,OAAO,CAAC,SAAqB;QAC3B,SAAS;aACN,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;aAElE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;aAClD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;aACnD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;aAC9C,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;aAC3C,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF"}
1
+ {"version":3,"file":"CommonModule.js","sourceRoot":"","sources":["../../src/modules/CommonModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,YAAY,IAAI,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAMnE,MAAM,OAAO,YAAY;IACM;IAA7B,YAA6B,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAE7D,OAAO,CAAC,SAAqB;QAC3B,SAAS;aACN,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;aAElE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;aAClD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;aACnD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;aAC9C,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;aAC3C,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;aACrD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACpD,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ import { SingleToken } from 'ts-ioc-container';
2
+ import { IFileSystemService } from './NodeFileSystemService.js';
3
+ import { IPluginsConfigService } from './PluginsConfigService.js';
4
+ export declare const PreflightServiceKey: SingleToken<PreflightService>;
5
+ export declare class PreflightService {
6
+ private readonly fs;
7
+ private readonly configService;
8
+ private readonly releaseNotesService;
9
+ constructor(fs: IFileSystemService, configService: IPluginsConfigService, releaseNotesService: {
10
+ isCliAvailable(): boolean;
11
+ });
12
+ validate(): string[];
13
+ private validateTemplate;
14
+ private readConfig;
15
+ }
16
+ //# sourceMappingURL=PreflightService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreflightService.d.ts","sourceRoot":"","sources":["../../src/services/PreflightService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAajE,OAAO,EAAE,kBAAkB,EAAyB,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAA4B,MAAM,2BAA2B,CAAC;AAG5F,eAAO,MAAM,mBAAmB,+BAAwD,CAAC;AAEzF,qBACa,gBAAgB;IAEM,OAAO,CAAC,QAAQ,CAAC,EAAE;IAChB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAChC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;gBAFpB,EAAE,EAAE,kBAAkB,EACnB,aAAa,EAAE,qBAAqB,EACtC,mBAAmB,EAAE;QAAE,cAAc,IAAI,OAAO,CAAA;KAAE;IAGrG,QAAQ,IAAI,MAAM,EAAE;IA8CpB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,UAAU;CAQnB"}
@@ -0,0 +1,97 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { inject, register, SingleToken } from 'ts-ioc-container';
14
+ import { MissingPublicAccessException, PreflightValidationException } from '../exceptions/DomainException.js';
15
+ import { CONFIG_KEY as CHANGELOG_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as CHANGELOG_CONFIG_SCHEMA } from '../features/changelog/ChangelogConfig.js';
16
+ import { CONFIG_KEY as PACKAGE_JSON_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as PACKAGE_JSON_CONFIG_SCHEMA } from '../features/packageJson/PackageJsonConfig.js';
17
+ import { CONFIG_KEY as PACKAGE_MANAGER_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as PACKAGE_MANAGER_CONFIG_SCHEMA, } from '../features/packageManager/PackageManagerConfig.js';
18
+ import { CONFIG_KEY as REPORT_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as REPORT_CONFIG_SCHEMA } from '../features/report/ReportConfig.js';
19
+ import { CONFIG_KEY as RELEASE_NOTES_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as RELEASE_NOTES_CONFIG_SCHEMA } from '../features/releaseNotes/ReleaseNotesConfig.js';
20
+ import { ReleaseNotesServiceKey } from '../features/releaseNotes/services/ReleaseNotesService.js';
21
+ import { CONFIG_KEY as VCS_CONFIG_KEY, PLUGIN_CONFIG_SCHEMA as VCS_CONFIG_SCHEMA } from '../features/vcs/VCSConfig.js';
22
+ import { IFileSystemServiceKey } from './NodeFileSystemService.js';
23
+ import { IPluginsConfigServiceKey } from './PluginsConfigService.js';
24
+ export const PreflightServiceKey = new SingleToken('PreflightService');
25
+ let PreflightService = class PreflightService {
26
+ fs;
27
+ configService;
28
+ releaseNotesService;
29
+ constructor(fs, configService, releaseNotesService) {
30
+ this.fs = fs;
31
+ this.configService = configService;
32
+ this.releaseNotesService = releaseNotesService;
33
+ }
34
+ validate() {
35
+ const problems = [];
36
+ let packages = [];
37
+ this.readConfig(problems, REPORT_CONFIG_KEY, REPORT_CONFIG_SCHEMA);
38
+ this.readConfig(problems, PACKAGE_JSON_CONFIG_KEY, PACKAGE_JSON_CONFIG_SCHEMA);
39
+ this.readConfig(problems, PACKAGE_MANAGER_CONFIG_KEY, PACKAGE_MANAGER_CONFIG_SCHEMA);
40
+ try {
41
+ const { workspaces } = this.fs.readRootPackageJsonOrFail();
42
+ packages = this.fs.findManyPackageJsonByGlob(workspaces);
43
+ if (packages.length === 0) {
44
+ problems.push('No package.json files matched root package.json#workspaces; add valid package globs (this tool does not read pnpm-workspace.yaml)');
45
+ }
46
+ }
47
+ catch (error) {
48
+ problems.push(error instanceof Error ? error.message : String(error));
49
+ }
50
+ for (const [, pkg] of packages) {
51
+ if (!pkg.private && pkg.name.startsWith('@') && pkg.publishConfig?.access !== 'public') {
52
+ problems.push(new MissingPublicAccessException(pkg.name).message);
53
+ }
54
+ }
55
+ this.validateTemplate(problems, 'vcs', VCS_CONFIG_KEY, VCS_CONFIG_SCHEMA);
56
+ this.validateTemplate(problems, 'changelog', CHANGELOG_CONFIG_KEY, CHANGELOG_CONFIG_SCHEMA);
57
+ const releaseNotesConfig = this.validateTemplate(problems, 'release-notes', RELEASE_NOTES_CONFIG_KEY, RELEASE_NOTES_CONFIG_SCHEMA);
58
+ if (problems.length > 0) {
59
+ throw new PreflightValidationException(problems);
60
+ }
61
+ const hasRepository = releaseNotesConfig.repository ?? process.env.GITHUB_REPOSITORY;
62
+ const hasToken = releaseNotesConfig.token ?? process.env.GITHUB_TOKEN;
63
+ const warnings = [];
64
+ if (!hasRepository || !hasToken) {
65
+ warnings.push('GitHub release notes are optional; before running release-notes, set release.release-notes.repository/token or GITHUB_REPOSITORY/GITHUB_TOKEN');
66
+ }
67
+ if (!this.releaseNotesService.isCliAvailable()) {
68
+ warnings.push('GitHub release notes are optional; install the GitHub CLI (gh) before running release-notes');
69
+ }
70
+ return warnings;
71
+ }
72
+ validateTemplate(problems, step, key, schema) {
73
+ const config = this.readConfig(problems, key, schema);
74
+ if (config?.template && !this.fs.fileExists(config.template)) {
75
+ problems.push(`Configured ${step} template "${config.template}" does not exist; correct release.${step}.template or create the file`);
76
+ }
77
+ return config ?? {};
78
+ }
79
+ readConfig(problems, key, schema) {
80
+ try {
81
+ return this.configService.getConfig(key, schema);
82
+ }
83
+ catch (error) {
84
+ problems.push(error instanceof Error ? error.message : String(error));
85
+ return undefined;
86
+ }
87
+ }
88
+ };
89
+ PreflightService = __decorate([
90
+ register(PreflightServiceKey),
91
+ __param(0, inject(IFileSystemServiceKey)),
92
+ __param(1, inject(IPluginsConfigServiceKey)),
93
+ __param(2, inject(ReleaseNotesServiceKey)),
94
+ __metadata("design:paramtypes", [Object, Object, Object])
95
+ ], PreflightService);
96
+ export { PreflightService };
97
+ //# sourceMappingURL=PreflightService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreflightService.js","sourceRoot":"","sources":["../../src/services/PreflightService.ts"],"names":[],"mappings":"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"}
package/llms.txt CHANGED
@@ -18,6 +18,7 @@ Requires Node >=20.11, a git repository, a root `package.json` with `workspaces`
18
18
  Run from the workspace root, in this order:
19
19
 
20
20
  ```bash
21
+ monorepo-semantic-release check # optional read-only PR preflight
21
22
  RELEASE_CONTEXT=$(monorepo-semantic-release report) # fails if the working tree is dirty
22
23
  monorepo-semantic-release package-json --context "$RELEASE_CONTEXT" # pin internal deps to exact new versions, refresh lockfile
23
24
  monorepo-semantic-release package-manager --context "$RELEASE_CONTEXT" # write new versions into package.json files
@@ -33,6 +34,8 @@ monorepo-semantic-release release-notes --context "$RELEASE_CONTEXT" # opti
33
34
  - `vcs` actions: default runs `commit`, `tag`, `push`; each is also callable alone (`vcs commit`, `vcs tag`, `vcs push`).
34
35
  - `package-manager` actions: default writes versions; `publish` publishes. They are separate on purpose.
35
36
  - `--template <path>` overrides the Handlebars template for `changelog`, `vcs commit`, and `release-notes`. `changelog` also takes `--changelog-name <file>`.
37
+ - `check` validates workspace package discovery, all release config, public access for scoped packages, and configured template paths. `report` runs the same validation before computing context.
38
+ - GitHub release-notes configuration is optional during preflight; missing credentials or `gh` are warnings. `release-notes` validates its own credentials and CLI before creating releases.
36
39
  - If nothing needs releasing, `report` emits a context with empty maps and the later steps are no-ops.
37
40
 
38
41
  ## Release context (`report` output)
@@ -58,7 +61,7 @@ monorepo-semantic-release release-notes --context "$RELEASE_CONTEXT" # opti
58
61
  - `docs`, `test`, `ci`, `chore`, `refactor`, `style`, and unparseable messages do not release by default.
59
62
  - A package whose internal dependency was released in the same run gets at least a minor bump. Packages are processed dependencies-first.
60
63
  - Priority: major > minor > patch > none.
61
- - Explicit override: `[major]`, `[minor]`, `[patch]`, or `[skip-bump]` in a commit subject replaces the rule-based level for that commit.
64
+ - Explicit override: `[major]`, `[minor]`, `[patch]`, or `[skip-bump]` in a commit subject replaces the rule-based level for that commit. A scoped tag applies only to the package matching its scope; an unscoped tag applies to every public package.
62
65
  - Squash merges: by default only a squash commit's subject (e.g. the PR title) is analyzed. Set `report.squash` to `"github"` (GitHub's default squash message) or `{ "detect": "<subject regex>", "entry": "<body line regex>" }` to analyze the commits listed in its body instead. Prefer merge or rebase merges, or a conventional squash title.
63
66
  - Private packages (`"private": true`) are never released.
64
67
  - Internal dependency versions are written as exact versions; `workspace:` specifiers and `peerDependencies` are left alone.
@@ -96,7 +99,7 @@ Handlebars. Default templates ship in `dist/features/{changelog/changelog.hbs,vc
96
99
 
97
100
  ## Errors
98
101
 
99
- Failures print `[CODE] message` to stderr and exit with code 1.
102
+ Failures print `[step] ✖ <problem and suggested fix>` to stderr and exit with code 1; GitHub Actions also receives `::error::` annotations. Child-process stderr is decoded to text.
100
103
 
101
104
  | Code | Meaning / fix |
102
105
  | --- | --- |
@@ -105,6 +108,9 @@ Failures print `[CODE] message` to stderr and exit with code 1.
105
108
  | `INVALID_PACKAGE_JSON` | A workspace package lacks `name` or a `major.minor.patch` `version`. |
106
109
  | `MISSING_PACKAGE_JSON` | A workspace glob matched a directory with no `package.json`. |
107
110
  | `INVALID_CONFIG` | A config section fails the schema. The message names the section and field. |
111
+ | `PREFLIGHT_VALIDATION_FAILED` | `check` or `report` found unmatched workspace globs, a scoped package without public access, or a missing configured template. |
112
+ | `MISSING_PUBLIC_ACCESS` | A scoped package must declare `publishConfig.access: "public"` before it can be published. |
113
+ | `MISSING_TEMPLATE` | A configured or command-line template file does not exist. |
108
114
  | `MISSING_GITHUB_CREDENTIALS` | `release-notes` needs `repository`/`token` config or `GITHUB_REPOSITORY`/`GITHUB_TOKEN`. |
109
115
  | `GITHUB_CLI_UNAVAILABLE` | `release-notes` needs `gh` on `PATH`. |
110
116
  | `MISSING_DEPENDENCY_VERSION` | A dependency listed for update isn't declared in the package. |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "release-monorepo-semantically",
3
- "version": "1.14.0",
3
+ "version": "1.15.0",
4
4
  "description": "CLI that versions, changelogs, tags, and publishes the packages of a pnpm monorepo from conventional commits, as independent composable CI steps",
5
5
  "keywords": [
6
6
  "monorepo",