skuba 14.0.0-rfc-pnpm-config-skuba-20260107001655 → 14.0.0-rfc-pnpm-config-skuba-20260107013247

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.
@@ -25,7 +25,7 @@ var import_exec = require("../../utils/exec.js");
25
25
  const installPnpmPlugin = async (skubaManifest) => {
26
26
  const version = skubaManifest.devDependencies?.["pnpm-plugin-skuba"] || "latest";
27
27
  await (0, import_exec.exec)("pnpm", "add", "--config", `pnpm-plugin-skuba@${version}`);
28
- await (0, import_exec.exec)("pnpm", "install", "--frozen-lockfile=false", "--offline");
28
+ await (0, import_exec.exec)("pnpm", "install", "--offline");
29
29
  };
30
30
  // Annotate the CommonJS export names for ESM import in node:
31
31
  0 && (module.exports = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cli/init/installPnpmPlugin.ts"],
4
- "sourcesContent": ["import type { NormalizedPackageJson } from 'read-pkg-up';\n\nimport { exec } from '../../utils/exec.js';\n\nexport const installPnpmPlugin = async (\n skubaManifest: NormalizedPackageJson,\n): Promise<void> => {\n const version =\n skubaManifest.devDependencies?.['pnpm-plugin-skuba'] || 'latest';\n\n await exec('pnpm', 'add', '--config', `pnpm-plugin-skuba@${version}`);\n\n // Run install to ensure that the pnpmfileChecksum gets written\n await exec('pnpm', 'install', '--frozen-lockfile=false', '--offline');\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,kBAAqB;AAEd,MAAM,oBAAoB,OAC/B,kBACkB;AAClB,QAAM,UACJ,cAAc,kBAAkB,mBAAmB,KAAK;AAE1D,YAAM,kBAAK,QAAQ,OAAO,YAAY,qBAAqB,OAAO,EAAE;AAGpE,YAAM,kBAAK,QAAQ,WAAW,2BAA2B,WAAW;AACtE;",
4
+ "sourcesContent": ["import type { NormalizedPackageJson } from 'read-pkg-up';\n\nimport { exec } from '../../utils/exec.js';\n\nexport const installPnpmPlugin = async (\n skubaManifest: NormalizedPackageJson,\n): Promise<void> => {\n const version =\n skubaManifest.devDependencies?.['pnpm-plugin-skuba'] || 'latest';\n\n await exec('pnpm', 'add', '--config', `pnpm-plugin-skuba@${version}`);\n\n // Run install to ensure that the pnpmfileChecksum gets written\n await exec('pnpm', 'install', '--offline');\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,kBAAqB;AAEd,MAAM,oBAAoB,OAC/B,kBACkB;AAClB,QAAM,UACJ,cAAc,kBAAkB,mBAAmB,KAAK;AAE1D,YAAM,kBAAK,QAAQ,OAAO,YAAY,qBAAqB,OAAO,EAAE;AAGpE,YAAM,kBAAK,QAAQ,WAAW,WAAW;AAC3C;",
6
6
  "names": []
7
7
  }
@@ -35,7 +35,6 @@ module.exports = __toCommonJS(migrateToPnpmConfig_exports);
35
35
  var import_util = require("util");
36
36
  var import_fs_extra = __toESM(require("fs-extra"));
37
37
  var import_semver = require("semver");
38
- var import_exec = require("../../../../../../utils/exec.js");
39
38
  var import_logging = require("../../../../../../utils/logging.js");
40
39
  var import_manifest = require("../../../../../../utils/manifest.js");
41
40
  var import_installPnpmPlugin = require("../../../../../init/installPnpmPlugin.js");
@@ -112,7 +111,6 @@ ${packageJson.packageJson.minimumReleaseAgeExcludeOverload.map((item) => ` - '$
112
111
  stringifiedPackageJson && import_fs_extra.default.promises.writeFile(packageJson.path, stringifiedPackageJson, "utf8")
113
112
  ]);
114
113
  await (0, import_installPnpmPlugin.installPnpmPlugin)(skubaPackageJson);
115
- await (0, import_exec.exec)("pnpm", "install", "--offline");
116
114
  return {
117
115
  result: "apply"
118
116
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/13.1.1/migrateToPnpmConfig.ts"],
4
- "sourcesContent": ["import { inspect } from 'util';\n\nimport fs from 'fs-extra';\nimport { SemVer, lt } from 'semver';\n\nimport { exec } from '../../../../../../utils/exec.js';\nimport { log } from '../../../../../../utils/logging.js';\nimport {\n getConsumerManifest,\n getSkubaManifest,\n} from '../../../../../../utils/manifest.js';\nimport { installPnpmPlugin } from '../../../../../init/installPnpmPlugin.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nexport const migrateToPnpmConfig: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n let pnpmWorkSpaceFile: string;\n try {\n pnpmWorkSpaceFile = await fs.promises.readFile(\n 'pnpm-workspace.yaml',\n 'utf8',\n );\n } catch {\n return {\n result: 'skip',\n reason: 'no pnpm-workspace.yaml found',\n };\n }\n\n // Remove entire # managed by skuba comments block\n\n const startingIndexText = '# managed by skuba';\n const endOfSectionIndexText = '# end managed by skuba\\n';\n\n const startingIndex = pnpmWorkSpaceFile.indexOf(startingIndexText);\n const endOfSectionIndex = pnpmWorkSpaceFile.indexOf(endOfSectionIndexText);\n\n if (startingIndex === -1 || endOfSectionIndex === -1) {\n return {\n result: 'skip',\n reason: 'no managed by skuba comment block found',\n };\n }\n\n const endSection = pnpmWorkSpaceFile.slice(\n endOfSectionIndex + endOfSectionIndexText.length,\n );\n\n let modifiedPnpmWorkspace =\n pnpmWorkSpaceFile.slice(0, startingIndex) + endSection;\n\n // Check if consumers have extended the publicHoistPattern section\n // Only match if the first non-empty, non-comment line is a list item without a preceding key\n const brokenYamlPatternRegex = /^\\s*-\\s+[^#]/;\n const firstNonEmptyNonCommentLine = endSection\n .split('\\n')\n .find((line) => line.trim() && !line.trim().startsWith('#'));\n if (\n firstNonEmptyNonCommentLine &&\n brokenYamlPatternRegex.exec(firstNonEmptyNonCommentLine)\n ) {\n modifiedPnpmWorkspace = modifiedPnpmWorkspace.replace(\n endSection,\n `publicHoistPattern:\\n${endSection}`,\n );\n }\n\n // Migrate minimumReleaseAgeExcludeOverload\n const [packageJson, skubaPackageJson] = await Promise.all([\n getConsumerManifest(),\n getSkubaManifest(),\n ]);\n\n if (\n packageJson?.packageJson.minimumReleaseAgeExcludeOverload &&\n Array.isArray(packageJson.packageJson.minimumReleaseAgeExcludeOverload)\n ) {\n modifiedPnpmWorkspace += `\\nminimumReleaseAgeExclude:\\n${packageJson.packageJson.minimumReleaseAgeExcludeOverload.map((item) => ` - '${item}'`).join('\\n')}\\n`;\n delete packageJson.packageJson.minimumReleaseAgeExcludeOverload;\n }\n\n if (typeof packageJson?.packageJson.packageManager === 'string') {\n const version = packageJson.packageJson.packageManager\n .split('@')?.[1] // strip name\n ?.split('+')?.[0]; // strip sha\n\n if (\n typeof version === 'string' &&\n lt(new SemVer(version), new SemVer('10.26.2'))\n ) {\n packageJson.packageJson.packageManager = 'pnpm@10.26.2';\n }\n }\n\n if (modifiedPnpmWorkspace === pnpmWorkSpaceFile) {\n return {\n result: 'skip',\n reason: 'no changes needed to pnpm-workspace.yaml',\n };\n }\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n const stringifiedPackageJson =\n packageJson && `${JSON.stringify(packageJson.packageJson, null, 2)}\\n`;\n\n await Promise.all([\n fs.promises.writeFile('pnpm-workspace.yaml', modifiedPnpmWorkspace, 'utf8'),\n stringifiedPackageJson &&\n fs.promises.writeFile(packageJson.path, stringifiedPackageJson, 'utf8'),\n ]);\n\n await installPnpmPlugin(skubaPackageJson);\n\n // Running install to ensure that our new pnpm config is applied\n // e.g. hoisting and enabling post build scripts\n await exec('pnpm', 'install', '--offline');\n\n return {\n result: 'apply',\n };\n};\n\nexport const tryMigrateToPnpmConfig: PatchFunction = async (config) => {\n try {\n return await migrateToPnpmConfig(config);\n } catch (err) {\n log.warn('Failed to migrate to pnpm-plugin-skuba');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { inspect } from 'util';\n\nimport fs from 'fs-extra';\nimport { SemVer, lt } from 'semver';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport {\n getConsumerManifest,\n getSkubaManifest,\n} from '../../../../../../utils/manifest.js';\nimport { installPnpmPlugin } from '../../../../../init/installPnpmPlugin.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nexport const migrateToPnpmConfig: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n let pnpmWorkSpaceFile: string;\n try {\n pnpmWorkSpaceFile = await fs.promises.readFile(\n 'pnpm-workspace.yaml',\n 'utf8',\n );\n } catch {\n return {\n result: 'skip',\n reason: 'no pnpm-workspace.yaml found',\n };\n }\n\n // Remove entire # managed by skuba comments block\n\n const startingIndexText = '# managed by skuba';\n const endOfSectionIndexText = '# end managed by skuba\\n';\n\n const startingIndex = pnpmWorkSpaceFile.indexOf(startingIndexText);\n const endOfSectionIndex = pnpmWorkSpaceFile.indexOf(endOfSectionIndexText);\n\n if (startingIndex === -1 || endOfSectionIndex === -1) {\n return {\n result: 'skip',\n reason: 'no managed by skuba comment block found',\n };\n }\n\n const endSection = pnpmWorkSpaceFile.slice(\n endOfSectionIndex + endOfSectionIndexText.length,\n );\n\n let modifiedPnpmWorkspace =\n pnpmWorkSpaceFile.slice(0, startingIndex) + endSection;\n\n // Check if consumers have extended the publicHoistPattern section\n // Only match if the first non-empty, non-comment line is a list item without a preceding key\n const brokenYamlPatternRegex = /^\\s*-\\s+[^#]/;\n const firstNonEmptyNonCommentLine = endSection\n .split('\\n')\n .find((line) => line.trim() && !line.trim().startsWith('#'));\n if (\n firstNonEmptyNonCommentLine &&\n brokenYamlPatternRegex.exec(firstNonEmptyNonCommentLine)\n ) {\n modifiedPnpmWorkspace = modifiedPnpmWorkspace.replace(\n endSection,\n `publicHoistPattern:\\n${endSection}`,\n );\n }\n\n // Migrate minimumReleaseAgeExcludeOverload\n const [packageJson, skubaPackageJson] = await Promise.all([\n getConsumerManifest(),\n getSkubaManifest(),\n ]);\n\n if (\n packageJson?.packageJson.minimumReleaseAgeExcludeOverload &&\n Array.isArray(packageJson.packageJson.minimumReleaseAgeExcludeOverload)\n ) {\n modifiedPnpmWorkspace += `\\nminimumReleaseAgeExclude:\\n${packageJson.packageJson.minimumReleaseAgeExcludeOverload.map((item) => ` - '${item}'`).join('\\n')}\\n`;\n delete packageJson.packageJson.minimumReleaseAgeExcludeOverload;\n }\n\n if (typeof packageJson?.packageJson.packageManager === 'string') {\n const version = packageJson.packageJson.packageManager\n .split('@')?.[1] // strip name\n ?.split('+')?.[0]; // strip sha\n\n if (\n typeof version === 'string' &&\n lt(new SemVer(version), new SemVer('10.26.2'))\n ) {\n packageJson.packageJson.packageManager = 'pnpm@10.26.2';\n }\n }\n\n if (modifiedPnpmWorkspace === pnpmWorkSpaceFile) {\n return {\n result: 'skip',\n reason: 'no changes needed to pnpm-workspace.yaml',\n };\n }\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n const stringifiedPackageJson =\n packageJson && `${JSON.stringify(packageJson.packageJson, null, 2)}\\n`;\n\n await Promise.all([\n fs.promises.writeFile('pnpm-workspace.yaml', modifiedPnpmWorkspace, 'utf8'),\n stringifiedPackageJson &&\n fs.promises.writeFile(packageJson.path, stringifiedPackageJson, 'utf8'),\n ]);\n\n await installPnpmPlugin(skubaPackageJson);\n\n return {\n result: 'apply',\n };\n};\n\nexport const tryMigrateToPnpmConfig: PatchFunction = async (config) => {\n try {\n return await migrateToPnpmConfig(config);\n } catch (err) {\n log.warn('Failed to migrate to pnpm-plugin-skuba');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAwB;AAExB,sBAAe;AACf,oBAA2B;AAE3B,qBAAoB;AACpB,sBAGO;AACP,+BAAkC;AAG3B,MAAM,sBAAqC,OAAO;AAAA,EACvD;AACF,MAAgC;AAC9B,MAAI;AACJ,MAAI;AACF,wBAAoB,MAAM,gBAAAA,QAAG,SAAS;AAAA,MACpC;AAAA,MACA;AAAA,IACF;AAAA,EACF,QAAQ;AACN,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAIA,QAAM,oBAAoB;AAC1B,QAAM,wBAAwB;AAE9B,QAAM,gBAAgB,kBAAkB,QAAQ,iBAAiB;AACjE,QAAM,oBAAoB,kBAAkB,QAAQ,qBAAqB;AAEzE,MAAI,kBAAkB,MAAM,sBAAsB,IAAI;AACpD,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,aAAa,kBAAkB;AAAA,IACnC,oBAAoB,sBAAsB;AAAA,EAC5C;AAEA,MAAI,wBACF,kBAAkB,MAAM,GAAG,aAAa,IAAI;AAI9C,QAAM,yBAAyB;AAC/B,QAAM,8BAA8B,WACjC,MAAM,IAAI,EACV,KAAK,CAAC,SAAS,KAAK,KAAK,KAAK,CAAC,KAAK,KAAK,EAAE,WAAW,GAAG,CAAC;AAC7D,MACE,+BACA,uBAAuB,KAAK,2BAA2B,GACvD;AACA,4BAAwB,sBAAsB;AAAA,MAC5C;AAAA,MACA;AAAA,EAAwB,UAAU;AAAA,IACpC;AAAA,EACF;AAGA,QAAM,CAAC,aAAa,gBAAgB,IAAI,MAAM,QAAQ,IAAI;AAAA,QACxD,qCAAoB;AAAA,QACpB,kCAAiB;AAAA,EACnB,CAAC;AAED,MACE,aAAa,YAAY,oCACzB,MAAM,QAAQ,YAAY,YAAY,gCAAgC,GACtE;AACA,6BAAyB;AAAA;AAAA,EAAgC,YAAY,YAAY,iCAAiC,IAAI,CAAC,SAAS,QAAQ,IAAI,GAAG,EAAE,KAAK,IAAI,CAAC;AAAA;AAC3J,WAAO,YAAY,YAAY;AAAA,EACjC;AAEA,MAAI,OAAO,aAAa,YAAY,mBAAmB,UAAU;AAC/D,UAAM,UAAU,YAAY,YAAY,eACrC,MAAM,GAAG,IAAI,CAAC,GACb,MAAM,GAAG,IAAI,CAAC;AAElB,QACE,OAAO,YAAY,gBACnB,kBAAG,IAAI,qBAAO,OAAO,GAAG,IAAI,qBAAO,SAAS,CAAC,GAC7C;AACA,kBAAY,YAAY,iBAAiB;AAAA,IAC3C;AAAA,EACF;AAEA,MAAI,0BAA0B,mBAAmB;AAC/C,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,MAAI,SAAS,QAAQ;AACnB,WAAO;AAAA,MACL,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,yBACJ,eAAe,GAAG,KAAK,UAAU,YAAY,aAAa,MAAM,CAAC,CAAC;AAAA;AAEpE,QAAM,QAAQ,IAAI;AAAA,IAChB,gBAAAA,QAAG,SAAS,UAAU,uBAAuB,uBAAuB,MAAM;AAAA,IAC1E,0BACE,gBAAAA,QAAG,SAAS,UAAU,YAAY,MAAM,wBAAwB,MAAM;AAAA,EAC1E,CAAC;AAED,YAAM,4CAAkB,gBAAgB;AAExC,SAAO;AAAA,IACL,QAAQ;AAAA,EACV;AACF;AAEO,MAAM,yBAAwC,OAAO,WAAW;AACrE,MAAI;AACF,WAAO,MAAM,oBAAoB,MAAM;AAAA,EACzC,SAAS,KAAK;AACZ,uBAAI,KAAK,wCAAwC;AACjD,uBAAI,WAAO,qBAAQ,GAAG,CAAC;AACvB,WAAO,EAAE,QAAQ,QAAQ,QAAQ,kBAAkB;AAAA,EACrD;AACF;",
6
6
  "names": ["fs"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skuba",
3
- "version": "14.0.0-rfc-pnpm-config-skuba-20260107001655",
3
+ "version": "14.0.0-rfc-pnpm-config-skuba-20260107013247",
4
4
  "private": false,
5
5
  "description": "SEEK development toolkit for backend applications and packages",
6
6
  "homepage": "https://github.com/seek-oss/skuba#readme",
@@ -102,8 +102,8 @@
102
102
  "tsx": "^4.21.0",
103
103
  "typescript": "~5.9.0",
104
104
  "zod": "^4.0.0",
105
- "@skuba-lib/api": "^2.0.0-rfc-pnpm-config-skuba-20260107001655",
106
- "eslint-config-skuba": "8.0.0-rfc-pnpm-config-skuba-20260107001655"
105
+ "@skuba-lib/api": "^2.0.0-rfc-pnpm-config-skuba-20260107013247",
106
+ "eslint-config-skuba": "8.0.0-rfc-pnpm-config-skuba-20260107013247"
107
107
  },
108
108
  "devDependencies": {
109
109
  "@changesets/cli": "2.29.8",
@@ -134,7 +134,7 @@
134
134
  "semver": "7.7.3",
135
135
  "supertest": "7.1.4",
136
136
  "type-fest": "2.19.0",
137
- "pnpm-plugin-skuba": "2.0.0-rfc-pnpm-config-skuba-20260107001655"
137
+ "pnpm-plugin-skuba": "2.0.0-rfc-pnpm-config-skuba-20260107013247"
138
138
  },
139
139
  "engines": {
140
140
  "node": ">=22.14.0"
@@ -19,11 +19,11 @@
19
19
  "test:watch": "skuba test --watch"
20
20
  },
21
21
  "dependencies": {
22
- "skuba-dive": "4.0.0-rfc-pnpm-config-skuba-20260107001655"
22
+ "skuba-dive": "4.0.0-rfc-pnpm-config-skuba-20260107013247"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/node": "^22.13.10",
26
- "skuba": "14.0.0-rfc-pnpm-config-skuba-20260107001655"
26
+ "skuba": "14.0.0-rfc-pnpm-config-skuba-20260107013247"
27
27
  },
28
28
  "packageManager": "pnpm@10.27.0",
29
29
  "engines": {
@@ -24,7 +24,7 @@
24
24
  "@aws-sdk/client-sns": "^3.363.0",
25
25
  "@seek/aws-codedeploy-hooks": "^2.0.0",
26
26
  "@seek/logger": "^11.1.0",
27
- "skuba-dive": "4.0.0-rfc-pnpm-config-skuba-20260107001655",
27
+ "skuba-dive": "4.0.0-rfc-pnpm-config-skuba-20260107013247",
28
28
  "zod": "^4.0.0"
29
29
  },
30
30
  "devDependencies": {
@@ -42,7 +42,7 @@
42
42
  "datadog-lambda-js": "^12.0.0",
43
43
  "dd-trace": "^5.0.0",
44
44
  "pino-pretty": "^13.0.0",
45
- "skuba": "14.0.0-rfc-pnpm-config-skuba-20260107001655"
45
+ "skuba": "14.0.0-rfc-pnpm-config-skuba-20260107013247"
46
46
  },
47
47
  "packageManager": "pnpm@10.27.0",
48
48
  "engines": {