pob 38.12.0 → 38.13.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.
@@ -267,6 +267,7 @@ export default class PobAppGenerator extends Generator {
267
267
  updateOnly: this.options.updateOnly,
268
268
  resolveJsonModule: true,
269
269
  onlyLatestLTS: true,
270
+ packageManager: this.options.packageManager,
270
271
  enableHashSlash,
271
272
  plugins: (() => {
272
273
  if (this.appConfig.type === "next.js") {
@@ -15,15 +15,25 @@ on:
15
15
  default: false
16
16
  <% if (isMonorepo && isMonorepoIndependent) { -%>
17
17
  bump-dependents-highest-as:
18
- description: "Bump dependents highest as"
19
- required: false
18
+ description: "Bump dependents highest version as"
19
+ required: true
20
20
  type: choice
21
21
  options:
22
22
  - major
23
23
  - minor
24
24
  - patch
25
- default: "major"
25
+ default: major
26
26
  <% } -%>
27
+ force:
28
+ description: "Force bump all packages, even without changes"
29
+ required: true
30
+ type: choice
31
+ options:
32
+ - none
33
+ - major
34
+ - minor
35
+ - patch
36
+ default: none
27
37
 
28
38
  permissions:
29
39
  id-token: write # Required for OIDC
@@ -92,7 +102,7 @@ jobs:
92
102
 
93
103
  - name: New version (dry run)
94
104
  if: github.ref == 'refs/heads/main' && inputs.dry-run
95
- run: <%= packageManagerExec(packageManager, 'pob-version') %> --dry-run<% if (isMonorepo && isMonorepoIndependent) { %> --bump-dependents-highest-as=${{ inputs.bump-dependents-highest-as }}<% } %>
105
+ run: <%= packageManagerExec(packageManager, 'pob-version') %> --dry-run<% if (isMonorepo && isMonorepoIndependent) { %> --bump-dependents-highest-as=${{ inputs.bump-dependents-highest-as }}<% } %> ${{ inputs.force != 'none' && format('--force={0}', inputs.force) || '' }}
96
106
 
97
107
  - name: Configure Git user
98
108
  if: github.ref == 'refs/heads/main' && !inputs.dry-run
@@ -103,7 +113,7 @@ jobs:
103
113
  - name: New version
104
114
  if: github.ref == 'refs/heads/main' && !inputs.dry-run
105
115
  run: |
106
- <%= packageManagerExec(packageManager, 'pob-version') %> <% if (enablePublish && packageManager === "bun") { %>--publish <% } %>--create-release=github <% if (isMonorepo && isMonorepoIndependent) { %> --bump-dependents-highest-as=${{ inputs.bump-dependents-highest-as }}<% } %> -m 'chore: release <%- isMonorepoIndependent ? '' : '%v ' %>[skip ci]<%- isMonorepoIndependent ? '\\n\\n%t' : '' %>'
116
+ <%= packageManagerExec(packageManager, 'pob-version') %> <% if (enablePublish && packageManager === "bun") { %>--publish --publish-provenance <% } %>--create-release=github<% if (isMonorepo && isMonorepoIndependent) { %> --bump-dependents-highest-as=${{ inputs.bump-dependents-highest-as }}<% } %> ${{ inputs.force != 'none' && format('--force={0}', inputs.force) || '' }} -m 'chore: release <%- isMonorepoIndependent ? '' : '%v ' %>[skip ci]<%- isMonorepoIndependent ? '\\n\\n%t' : '' %>'
107
117
  env:
108
118
  POB_GIT_HOOKS: 0
109
119
  YARN_ENABLE_IMMUTABLE_INSTALLS: false
@@ -115,15 +125,15 @@ jobs:
115
125
  run: |
116
126
  <% if (packageManager === 'yarn') { -%>
117
127
  <% if (isMonorepo) { -%>
118
- yarn workspaces foreach --all --parallel --no-private npm publish --tolerate-republish
128
+ yarn workspaces foreach --all --parallel --no-private npm publish --tolerate-republish --provenance
119
129
  <% } else { -%>
120
- yarn npm publish
130
+ yarn npm publish --provenance
121
131
  <% } -%>
122
132
  <% } else if (packageManager === 'pnpm') { -%>
123
133
  <% if (isMonorepo) { -%>
124
- pnpm -r publish --no-git-checks
134
+ pnpm -r publish --no-git-checks --provenance
125
135
  <% } else { -%>
126
- pnpm publish --no-git-checks
136
+ pnpm publish --no-git-checks --provenance
127
137
  <% } -%>
128
138
  <% } -%>
129
139
  <% } -%>
@@ -102,6 +102,12 @@ export default class CommonTypescriptGenerator extends Generator {
102
102
  description: "typescript additional includes",
103
103
  });
104
104
 
105
+ this.option("packageManager", {
106
+ type: String,
107
+ default: "yarn",
108
+ description: "yarn, npm, bun, or pnpm",
109
+ });
110
+
105
111
  this.option("onlyLatestLTS", {
106
112
  type: Boolean,
107
113
  required: false,
@@ -146,6 +152,7 @@ export default class CommonTypescriptGenerator extends Generator {
146
152
  },
147
153
  ];
148
154
  const withNode = envs.some((env) => env.target === "node");
155
+ const withBun = this.options.packageManager === "bun";
149
156
 
150
157
  const presets = (() => {
151
158
  const babelEnvs =
@@ -172,7 +179,9 @@ export default class CommonTypescriptGenerator extends Generator {
172
179
  pkg.pob.bundler === false ||
173
180
  pkg.pob.bundler === "tsc"
174
181
  ) {
175
- return [`@pob/root/tsconfigs/targets/node-${nodeVersion}.json`];
182
+ return withBun
183
+ ? ["@pob/root/tsconfigs/targets/bun.json"]
184
+ : [`@pob/root/tsconfigs/targets/node-${nodeVersion}.json`];
176
185
  }
177
186
  if (envs && envs.every((env) => env.target === "node")) {
178
187
  return [
@@ -199,6 +208,9 @@ export default class CommonTypescriptGenerator extends Generator {
199
208
  }
200
209
  return ["@pob/root/tsconfigs/targets/webpack.json"];
201
210
  }
211
+ if (withBun) {
212
+ return ["@pob/root/tsconfigs/targets/bun.json"];
213
+ }
202
214
  return [];
203
215
  })();
204
216
 
@@ -323,6 +323,7 @@ export default class PobLibGenerator extends Generator {
323
323
  updateOnly: this.options.updateOnly,
324
324
  builddefs: true,
325
325
  onlyLatestLTS: this.onlyLatestLTS,
326
+ packageManager,
326
327
  srcDirectory: withTypescript ? "src" : "lib",
327
328
  });
328
329
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pob",
3
- "version": "38.12.0",
3
+ "version": "38.13.0",
4
4
  "description": "Pile of bones, library generator with git/babel/typescript/typedoc/readme/vitest",
5
5
  "keywords": [
6
6
  "skeleton"
@@ -58,7 +58,7 @@
58
58
  "yeoman-generator": "8.2.2"
59
59
  },
60
60
  "devDependencies": {
61
- "@pob/root": "27.12.0",
61
+ "@pob/root": "27.13.0",
62
62
  "@types/node": "24.19.1",
63
63
  "@typescript/native": "npm:typescript@7.0.2",
64
64
  "@yeoman/types": "1.11.1"