@catladder/cli 0.0.0-next-2eda2fde → 0.0.0-next-a2f59d07
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/dist/apps/cli/src/adapters/terminal.d.ts +8 -0
- package/dist/apps/cli/src/adapters/terminal.js +9 -2
- package/dist/apps/cli/src/adapters/terminal.js.map +1 -1
- package/dist/apps/cli/src/apps/catenv/catenv.d.ts +5 -0
- package/dist/apps/cli/src/apps/catenv/catenv.js +10 -1
- package/dist/apps/cli/src/apps/catenv/catenv.js.map +1 -1
- package/dist/apps/cli/src/catenv.js +7 -0
- package/dist/apps/cli/src/catenv.js.map +1 -1
- package/dist/apps/cli/src/utils/gitlab.js +5 -0
- package/dist/apps/cli/src/utils/gitlab.js.map +1 -1
- package/dist/apps/cli/src/vault/VaultManager.js +6 -1
- package/dist/apps/cli/src/vault/VaultManager.js.map +1 -1
- package/dist/bundles/catci/index.js +5 -5
- package/dist/bundles/catenv/index.js +12257 -6871
- package/dist/bundles/cli/index.js +80846 -87002
- package/dist/bundles/skills/catladder-migrate-package-manager/SKILL.md +7 -0
- package/dist/bundles/skills/catladder-migrate-package-manager/references/yarn-to-pnpm-differences.md +6 -0
- package/dist/packages/pipeline/src/pipeline/packageManager.js +3 -3
- package/dist/packages/pipeline/src/pipeline/packageManager.js.map +1 -1
- package/dist/packages/pipeline/src/pipeline/projectFiles.d.ts +10 -0
- package/dist/packages/pipeline/src/pipeline/projectFiles.js +17 -0
- package/dist/packages/pipeline/src/pipeline/projectFiles.js.map +1 -0
- package/dist/skills/catladder-migrate-package-manager/SKILL.md +7 -0
- package/dist/skills/catladder-migrate-package-manager/references/yarn-to-pnpm-differences.md +6 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -6
- package/src/adapters/terminal.ts +16 -2
- package/src/apps/catenv/catenv.ts +15 -1
- package/src/catenv.ts +12 -0
- package/src/utils/gitlab.ts +7 -0
- package/src/vault/VaultManager.ts +4 -1
|
@@ -53,6 +53,13 @@ second run, not the first.
|
|
|
53
53
|
|
|
54
54
|
## Step 0 — check the blockers
|
|
55
55
|
|
|
56
|
+
- **node version** — pnpm 11 requires **node ≥ 22.13**, pnpm 10 only
|
|
57
|
+
≥ 18.12. Check `.nvmrc` (and any explicit node version in job images):
|
|
58
|
+
the jobs switch with nvm, so an `.nvmrc` of `20` downgrades a node-22
|
|
59
|
+
image and pnpm 11 dies mid-install with
|
|
60
|
+
`ERR_UNKNOWN_BUILTIN_MODULE: No such built-in module: node:sqlite`.
|
|
61
|
+
Either bump `.nvmrc` to 22 in the same change, or pin
|
|
62
|
+
`"packageManager": "pnpm@10.x"`.
|
|
56
63
|
- **`build: { type: "meteor" }`** — yarn-only in catladder; generation
|
|
57
64
|
fails outright. That component blocks the migration.
|
|
58
65
|
- **Yarn PnP** (`nodeLinker: pnp`, `.pnp.cjs`) — the migration is bigger
|
package/dist/bundles/skills/catladder-migrate-package-manager/references/yarn-to-pnpm-differences.md
CHANGED
|
@@ -86,6 +86,12 @@ node_modules tree from a *different* lockfile does not prune orphaned
|
|
|
86
86
|
cache by the lockfile instead of reusing a mutable slot — and why you
|
|
87
87
|
should never reuse a yarn branch's cache for a pnpm branch.
|
|
88
88
|
|
|
89
|
+
**pnpm 11 needs node ≥ 22.13** (pnpm 10: ≥ 18.12), and it does not fail
|
|
90
|
+
politely: it prints a `warn:` line and then crashes on
|
|
91
|
+
`No such built-in module: node:sqlite`. In CI this bites even when the
|
|
92
|
+
job image ships node 22 — the jobs run `nvm install` from `.nvmrc`, so
|
|
93
|
+
an `.nvmrc` of `20` downgrades the image right before the install.
|
|
94
|
+
|
|
89
95
|
**`minimumReleaseAge`** defaults to 1440 minutes on pnpm 11: freshly
|
|
90
96
|
published versions are refused. Set it to `0` while migrating (it is a
|
|
91
97
|
supply-chain feature worth enabling deliberately later, not something to
|
|
@@ -4,11 +4,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getPackageManagerInfoBase = exports.getPackageManagerInfoForComponent = void 0;
|
|
7
|
-
const fs_1 = require("fs");
|
|
8
7
|
const path_1 = require("path");
|
|
9
8
|
const path_equal_1 = require("path-equal");
|
|
10
9
|
const detectPackageManager_1 = require("./detectPackageManager");
|
|
11
10
|
const pnpmUtils_1 = require("./pnpm/pnpmUtils");
|
|
11
|
+
const projectFiles_1 = require("./projectFiles");
|
|
12
12
|
const yarnUtils_1 = require("./yarn/yarnUtils");
|
|
13
13
|
const memoizee_1 = __importDefault(require("memoizee"));
|
|
14
14
|
const PACKAGE_MANAGER_FILES = {
|
|
@@ -40,7 +40,7 @@ const getPackageManagerInfoForComponent = async (config, componentName) => {
|
|
|
40
40
|
const configFilePaths = [
|
|
41
41
|
...configFiles,
|
|
42
42
|
...configFiles.map((f) => (0, path_1.join)(component.dir, f)),
|
|
43
|
-
].filter((f) => (0,
|
|
43
|
+
].filter((f) => (0, projectFiles_1.projectFileExists)(f));
|
|
44
44
|
// get all folders that this workspace depend on
|
|
45
45
|
// we will later copy them into the docker build
|
|
46
46
|
const currentWorkspaceDependencies = currentWorkspace
|
|
@@ -52,7 +52,7 @@ const getPackageManagerInfoForComponent = async (config, componentName) => {
|
|
|
52
52
|
const allWorkspaceManifests = baseInfo.type === "pnpm" && componentIsInWorkspace
|
|
53
53
|
? workspaces
|
|
54
54
|
.map((w) => (0, path_1.join)(w.location, "package.json"))
|
|
55
|
-
.filter((f) => (0,
|
|
55
|
+
.filter((f) => (0, projectFiles_1.projectFileExists)(f))
|
|
56
56
|
: [];
|
|
57
57
|
// patch files referenced by patchedDependencies must exist in the
|
|
58
58
|
// image, or pnpm's frozen install fails verifying them
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageManager.js","sourceRoot":"","sources":["../../../../../../../packages/pipeline/src/pipeline/packageManager.ts"],"names":[],"mappings":";;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"packageManager.js","sourceRoot":"","sources":["../../../../../../../packages/pipeline/src/pipeline/packageManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* does this path exist in the project catladder generates for?
|
|
3
|
+
*
|
|
4
|
+
* Trivial wrapper around `existsSync`, but in its own module so the
|
|
5
|
+
* example tests can fake it: generation copies whichever package-manager
|
|
6
|
+
* config files the project happens to have into the docker build
|
|
7
|
+
* context, and reading the real filesystem there makes the example
|
|
8
|
+
* snapshots depend on catladder's *own* repository layout.
|
|
9
|
+
*/
|
|
10
|
+
export declare const projectFileExists: (path: string) => boolean;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.projectFileExists = void 0;
|
|
4
|
+
const fs_1 = require("fs");
|
|
5
|
+
/**
|
|
6
|
+
* does this path exist in the project catladder generates for?
|
|
7
|
+
*
|
|
8
|
+
* Trivial wrapper around `existsSync`, but in its own module so the
|
|
9
|
+
* example tests can fake it: generation copies whichever package-manager
|
|
10
|
+
* config files the project happens to have into the docker build
|
|
11
|
+
* context, and reading the real filesystem there makes the example
|
|
12
|
+
* snapshots depend on catladder's *own* repository layout.
|
|
13
|
+
*/
|
|
14
|
+
// export for mocking
|
|
15
|
+
const projectFileExists = (path) => (0, fs_1.existsSync)(path);
|
|
16
|
+
exports.projectFileExists = projectFileExists;
|
|
17
|
+
//# sourceMappingURL=projectFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectFiles.js","sourceRoot":"","sources":["../../../../../../../packages/pipeline/src/pipeline/projectFiles.ts"],"names":[],"mappings":";;;AAAA,2BAAgC;AAEhC;;;;;;;;GAQG;AACH,qBAAqB;AACd,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC;AAAhE,QAAA,iBAAiB,qBAA+C"}
|
|
@@ -53,6 +53,13 @@ second run, not the first.
|
|
|
53
53
|
|
|
54
54
|
## Step 0 — check the blockers
|
|
55
55
|
|
|
56
|
+
- **node version** — pnpm 11 requires **node ≥ 22.13**, pnpm 10 only
|
|
57
|
+
≥ 18.12. Check `.nvmrc` (and any explicit node version in job images):
|
|
58
|
+
the jobs switch with nvm, so an `.nvmrc` of `20` downgrades a node-22
|
|
59
|
+
image and pnpm 11 dies mid-install with
|
|
60
|
+
`ERR_UNKNOWN_BUILTIN_MODULE: No such built-in module: node:sqlite`.
|
|
61
|
+
Either bump `.nvmrc` to 22 in the same change, or pin
|
|
62
|
+
`"packageManager": "pnpm@10.x"`.
|
|
56
63
|
- **`build: { type: "meteor" }`** — yarn-only in catladder; generation
|
|
57
64
|
fails outright. That component blocks the migration.
|
|
58
65
|
- **Yarn PnP** (`nodeLinker: pnp`, `.pnp.cjs`) — the migration is bigger
|
package/dist/skills/catladder-migrate-package-manager/references/yarn-to-pnpm-differences.md
CHANGED
|
@@ -86,6 +86,12 @@ node_modules tree from a *different* lockfile does not prune orphaned
|
|
|
86
86
|
cache by the lockfile instead of reusing a mutable slot — and why you
|
|
87
87
|
should never reuse a yarn branch's cache for a pnpm branch.
|
|
88
88
|
|
|
89
|
+
**pnpm 11 needs node ≥ 22.13** (pnpm 10: ≥ 18.12), and it does not fail
|
|
90
|
+
politely: it prints a `warn:` line and then crashes on
|
|
91
|
+
`No such built-in module: node:sqlite`. In CI this bites even when the
|
|
92
|
+
job image ships node 22 — the jobs run `nvm install` from `.nvmrc`, so
|
|
93
|
+
an `.nvmrc` of `20` downgrades the image right before the install.
|
|
94
|
+
|
|
89
95
|
**`minimumReleaseAge`** defaults to 1440 minutes on pnpm 11: freshly
|
|
90
96
|
published versions are refused. Set it to `0` while migrating (it is a
|
|
91
97
|
supply-chain feature worth enabling deliberately later, not something to
|