pob 35.2.0 → 35.3.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.
- package/lib/generators/common/format-lint/CommonLintGenerator.js +2 -1
- package/lib/generators/common/testing/CommonTestingGenerator.js +2 -3
- package/lib/generators/common/typescript/CommonTypescriptGenerator.js +4 -3
- package/lib/generators/core/ci/templates/github-action-push-workflow.yml.ejs +2 -0
- package/lib/generators/core/git/CoreGitGenerator.js +5 -0
- package/lib/generators/core/package/CorePackageGenerator.js +3 -0
- package/lib/generators/core/pnpm/CorePnpmGenerator.js +10 -2
- package/lib/generators/core/yarn/CoreYarnGenerator.js +4 -1
- package/lib/generators/pob/PobBaseGenerator.js +3 -0
- package/lib/utils/package.js +15 -2
- package/package.json +8 -7
|
@@ -317,17 +317,17 @@ export default class CommonTestingGenerator extends Generator {
|
|
|
317
317
|
packageUtils.addDevDependencies(pkg, ["vite"]);
|
|
318
318
|
}
|
|
319
319
|
|
|
320
|
+
packageUtils.removeScripts(["generate:test-coverage"]);
|
|
321
|
+
|
|
320
322
|
if (!this.options.enable) {
|
|
321
323
|
// if (inMonorepo) {
|
|
322
324
|
// if (pkg.scripts.test === 'echo "No tests"') {
|
|
323
325
|
// delete pkg.scripts.test;
|
|
324
326
|
// }
|
|
325
|
-
// delete pkg.scripts['generate:test-coverage'];
|
|
326
327
|
// }
|
|
327
328
|
packageUtils.removeScripts([
|
|
328
329
|
"test",
|
|
329
330
|
"test:coverage",
|
|
330
|
-
"generate:test-coverage",
|
|
331
331
|
"test:watch",
|
|
332
332
|
"test:coverage",
|
|
333
333
|
"test:coverage:json",
|
|
@@ -395,7 +395,6 @@ export default class CommonTestingGenerator extends Generator {
|
|
|
395
395
|
|
|
396
396
|
if (globalTesting) {
|
|
397
397
|
if (pkg.scripts) {
|
|
398
|
-
delete pkg.scripts["generate:test-coverage"];
|
|
399
398
|
delete pkg.scripts["test:watch"];
|
|
400
399
|
delete pkg.scripts["test:coverage"];
|
|
401
400
|
}
|
|
@@ -208,8 +208,6 @@ export default class CommonTypescriptGenerator extends Generator {
|
|
|
208
208
|
delete pkg.scripts.flow;
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
-
console.log({ enableTypescript: this.options.enable });
|
|
212
|
-
|
|
213
211
|
packageUtils.addOrRemoveDevDependencies(
|
|
214
212
|
pkg,
|
|
215
213
|
this.options.enable ||
|
|
@@ -364,13 +362,16 @@ export default class CommonTypescriptGenerator extends Generator {
|
|
|
364
362
|
this.fs.delete(tsconfigBuildPath);
|
|
365
363
|
// }
|
|
366
364
|
} else {
|
|
367
|
-
if (pkg.scripts) delete pkg.scripts.tsc;
|
|
368
365
|
this.fs.delete(tsconfigPath);
|
|
369
366
|
this.fs.delete(tsconfigBuildPath);
|
|
370
367
|
this.fs.delete(tsconfigCheckPath);
|
|
371
368
|
this.fs.delete(tsconfigEslintPath);
|
|
372
369
|
}
|
|
373
370
|
|
|
371
|
+
if (!pkg.workspaces || !this.options.enable) {
|
|
372
|
+
packageUtils.addOrRemoveScripts(pkg, this.options.enable, { tsc: "tsc" });
|
|
373
|
+
}
|
|
374
|
+
|
|
374
375
|
this.fs.writeJSON(this.destinationPath("package.json"), pkg);
|
|
375
376
|
}
|
|
376
377
|
}
|
|
@@ -99,6 +99,8 @@ jobs:
|
|
|
99
99
|
with:
|
|
100
100
|
fail_ci_if_error: true
|
|
101
101
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
102
|
+
files: ./coverage/coverage-final.json
|
|
103
|
+
disable_search: true
|
|
102
104
|
if: startsWith(matrix.node-version, '<%= nodeLatestMajorVersion %>.') && github.actor != 'dependabot[bot]'
|
|
103
105
|
<% } else if (testing) { -%>
|
|
104
106
|
|
|
@@ -131,6 +131,11 @@ export default class CoreGitGenerator extends Generator {
|
|
|
131
131
|
if (!pkg.homepage && this.gitHostAccount) {
|
|
132
132
|
pkg.homepage = `https://${this.gitHost}.com/${this.gitHostAccount}/${repoName}`;
|
|
133
133
|
}
|
|
134
|
+
if (this.gitHostAccount) {
|
|
135
|
+
pkg.bugs = {
|
|
136
|
+
url: `https://${this.gitHost}.com/${this.gitHostAccount}/${repoName}/issues`,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
134
139
|
|
|
135
140
|
const repository = `https://${this.gitHost}.com/${this.gitHostAccount}/${repoName}.git`;
|
|
136
141
|
|
|
@@ -206,6 +206,8 @@ export default class CorePackageGenerator extends Generator {
|
|
|
206
206
|
directory: process.cwd().slice(inMonorepo.rootPath.length + 1),
|
|
207
207
|
};
|
|
208
208
|
pkg.homepage = rootMonorepoPkg.homepage;
|
|
209
|
+
if (pkg.private) delete pkg.bugs;
|
|
210
|
+
else if (rootMonorepoPkg.bugs) pkg.bugs = rootMonorepoPkg.bugs;
|
|
209
211
|
|
|
210
212
|
if (this.fs.exists(this.destinationPath("yarn.lock"))) {
|
|
211
213
|
fs.unlinkSync(this.destinationPath("yarn.lock"));
|
|
@@ -214,6 +216,7 @@ export default class CorePackageGenerator extends Generator {
|
|
|
214
216
|
fs.unlinkSync(this.destinationPath("pnpm-lock.yaml"));
|
|
215
217
|
}
|
|
216
218
|
}
|
|
219
|
+
|
|
217
220
|
if (this.fs.exists(this.destinationPath("yarn-error.log"))) {
|
|
218
221
|
fs.unlinkSync(this.destinationPath("yarn-error.log"));
|
|
219
222
|
}
|
|
@@ -40,7 +40,7 @@ export default class CorePnpmGenerator extends Generator {
|
|
|
40
40
|
(!pkg.packageManager.startsWith("pnpm@") ||
|
|
41
41
|
lt(pkg.packageManager.slice("pnpm@".length), "11.0.0"))
|
|
42
42
|
) {
|
|
43
|
-
pkg.packageManager
|
|
43
|
+
delete pkg.packageManager;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
const configString = this.fs.read(
|
|
@@ -50,9 +50,17 @@ export default class CorePnpmGenerator extends Generator {
|
|
|
50
50
|
const config =
|
|
51
51
|
yml.load(configString, {
|
|
52
52
|
schema: yml.FAILSAFE_SCHEMA,
|
|
53
|
-
json: true,
|
|
54
53
|
}) || {};
|
|
55
54
|
|
|
55
|
+
if (config.allowBuilds) {
|
|
56
|
+
config.allowBuilds = Object.fromEntries(
|
|
57
|
+
Object.entries(config.allowBuilds).map(([key, value]) => [
|
|
58
|
+
key,
|
|
59
|
+
value === "true" ? true : value,
|
|
60
|
+
]),
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
|
|
56
64
|
if (pkg.workspaces) {
|
|
57
65
|
config.packages = pkg.workspaces;
|
|
58
66
|
} else {
|
|
@@ -159,6 +159,9 @@ export default class CoreYarnGenerator extends Generator {
|
|
|
159
159
|
schema: yml.FAILSAFE_SCHEMA,
|
|
160
160
|
json: true,
|
|
161
161
|
}) || {};
|
|
162
|
+
if (config.enableScripts === "true") {
|
|
163
|
+
config.enableScripts = true;
|
|
164
|
+
}
|
|
162
165
|
const previousConfig = { ...config };
|
|
163
166
|
if (this.options.disableYarnGitCache) {
|
|
164
167
|
// leave default compressionLevel instead of this next line
|
|
@@ -168,7 +171,7 @@ export default class CoreYarnGenerator extends Generator {
|
|
|
168
171
|
delete config.supportedArchitectures;
|
|
169
172
|
} else {
|
|
170
173
|
config.compressionLevel = 0; // optimized for github config
|
|
171
|
-
config.enableGlobalCache =
|
|
174
|
+
config.enableGlobalCache = false;
|
|
172
175
|
// https://yarnpkg.dev/releases/3-1/
|
|
173
176
|
// make sure all supported architectures are in yarn cache
|
|
174
177
|
config.supportedArchitectures = {
|
|
@@ -137,6 +137,9 @@ export default class PobBaseGenerator extends Generator {
|
|
|
137
137
|
]);
|
|
138
138
|
|
|
139
139
|
this.projectConfig = { ...config, ...responses };
|
|
140
|
+
if (this.projectConfig.packageManager !== "yarn") {
|
|
141
|
+
delete this.projectConfig.yarnNodeLinker;
|
|
142
|
+
}
|
|
140
143
|
this.config.set("project", this.projectConfig);
|
|
141
144
|
}
|
|
142
145
|
|
package/lib/utils/package.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
1
3
|
import sortObject from "@pob/sort-object";
|
|
2
4
|
import sortPkg from "@pob/sort-pkg";
|
|
3
5
|
import parseAuthor from "parse-author";
|
|
@@ -108,12 +110,23 @@ const getVersionFromDependencyName = (dependency) => {
|
|
|
108
110
|
return pobEslintConfig.dependencies[dependency];
|
|
109
111
|
}
|
|
110
112
|
|
|
113
|
+
let value = pobDependencies[dependency];
|
|
111
114
|
// prevents cycle that lerna doesnt like
|
|
112
115
|
if (dependency === "@pob/root") {
|
|
113
|
-
|
|
116
|
+
value = pobPkg.devDependencies[dependency];
|
|
114
117
|
}
|
|
115
118
|
|
|
116
|
-
|
|
119
|
+
if (value === "workspace:*") {
|
|
120
|
+
const pkgJson = JSON.parse(
|
|
121
|
+
fs.readFileSync(
|
|
122
|
+
fileURLToPath(
|
|
123
|
+
import.meta.resolve(`${dependency}/package.json`, import.meta.url),
|
|
124
|
+
),
|
|
125
|
+
),
|
|
126
|
+
);
|
|
127
|
+
return pkgJson.version;
|
|
128
|
+
}
|
|
129
|
+
return value;
|
|
117
130
|
};
|
|
118
131
|
|
|
119
132
|
const internalAddDependencies = (pkg, type, dependencies, cleaned, prefix) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pob",
|
|
3
|
-
"version": "35.
|
|
3
|
+
"version": "35.3.0",
|
|
4
4
|
"description": "Pile of bones, library generator with git/babel/typescript/typedoc/readme/jest",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"skeleton"
|
|
@@ -46,18 +46,18 @@
|
|
|
46
46
|
"minimist": "1.2.8",
|
|
47
47
|
"oxfmt": "0.51.0",
|
|
48
48
|
"parse-author": "2.0.0",
|
|
49
|
-
"semver": "7.8.
|
|
49
|
+
"semver": "7.8.1",
|
|
50
50
|
"typescript": "6.0.3",
|
|
51
51
|
"validate-npm-package-name": "^8.0.0",
|
|
52
52
|
"yeoman-environment": "6.1.0",
|
|
53
53
|
"yeoman-generator": "8.2.2",
|
|
54
|
-
"pob-
|
|
55
|
-
"
|
|
56
|
-
"@pob/sort-
|
|
54
|
+
"@pob/sort-object": "11.1.1",
|
|
55
|
+
"pob-dependencies": "24.1.1",
|
|
56
|
+
"@pob/sort-pkg": "13.1.1"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@types/node": "24.12.4",
|
|
60
|
-
"@pob/root": "24.
|
|
60
|
+
"@pob/root": "24.3.0"
|
|
61
61
|
},
|
|
62
62
|
"engines": {
|
|
63
63
|
"node": ">=22.18.0"
|
|
@@ -69,7 +69,8 @@
|
|
|
69
69
|
"build": "pnpm run build:definitions",
|
|
70
70
|
"build:definitions": "tsc -p tsconfig.json",
|
|
71
71
|
"lint": "pnpm run lint:eslint",
|
|
72
|
-
"lint:eslint": "pnpm run --dir '../..' eslint --quiet 'packages/pob'"
|
|
72
|
+
"lint:eslint": "pnpm run --dir '../..' eslint --quiet 'packages/pob'",
|
|
73
|
+
"tsc": "tsc"
|
|
73
74
|
},
|
|
74
75
|
"bin": {
|
|
75
76
|
"pob": "./lib/pob.js"
|