pob 35.2.0 → 35.2.1

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.
@@ -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
  }
@@ -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 = "pnpm@11.0.0";
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 = "false";
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
 
@@ -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
- return pobPkg.devDependencies[dependency];
116
+ value = pobPkg.devDependencies[dependency];
114
117
  }
115
118
 
116
- return pobDependencies[dependency];
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.2.0",
3
+ "version": "35.2.1",
4
4
  "description": "Pile of bones, library generator with git/babel/typescript/typedoc/readme/jest",
5
5
  "keywords": [
6
6
  "skeleton"
@@ -51,13 +51,13 @@
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-dependencies": "24.1.0",
55
54
  "@pob/sort-pkg": "13.1.0",
55
+ "pob-dependencies": "24.1.0",
56
56
  "@pob/sort-object": "11.1.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@types/node": "24.12.4",
60
- "@pob/root": "24.2.0"
60
+ "@pob/root": "24.2.1"
61
61
  },
62
62
  "engines": {
63
63
  "node": ">=22.18.0"