@pnpm/assert-project 1100.0.32 → 1100.0.34

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/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @pnpm/assert-project
2
2
 
3
+ ## 1100.0.34
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies:
8
+ - @pnpm/assert-store@1100.0.34
9
+ - @pnpm/testing.registry-mock@1100.0.13
10
+
11
+ ## 1100.0.33
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies:
16
+ - @pnpm/assert-store@1100.0.33
17
+ - @pnpm/installing.modules-yaml@1101.0.5
18
+ - @pnpm/lockfile.types@1100.1.4
19
+ - @pnpm/testing.registry-mock@1100.0.12
20
+
3
21
  ## 1100.0.32
4
22
 
5
23
  ### Patch Changes
package/lib/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { Modules } from '@pnpm/installing.modules-yaml';
2
2
  import type { LockfileFile } from '@pnpm/lockfile.types';
3
- import isExecutable from './isExecutable.js';
3
+ import { isExecutable } from './isExecutable.js';
4
4
  export { isExecutable, type Modules };
5
5
  export interface Project {
6
6
  requireModule: (moduleName: string) => any;
package/lib/index.js CHANGED
@@ -9,40 +9,13 @@ import { REGISTRY_MOCK_PORT } from '@pnpm/testing.registry-mock';
9
9
  import yaml from 'js-yaml';
10
10
  import { readYamlFileSync } from 'read-yaml-file';
11
11
  import { writePackageSync } from 'write-package';
12
- import isExecutable from './isExecutable.js';
12
+ import { isExecutable } from './isExecutable.js';
13
13
  const require = createRequire(import.meta.url);
14
14
  export { isExecutable };
15
15
  export function assertProject(projectPath, encodedRegistryName) {
16
- const ern = encodedRegistryName ?? `localhost+${REGISTRY_MOCK_PORT}`;
17
16
  const modules = path.join(projectPath, 'node_modules');
18
- let cachedStore;
19
- function getStoreInstance() {
20
- if (!cachedStore) {
21
- const modulesYaml = readModulesManifest(modules);
22
- if (modulesYaml == null) {
23
- throw new Error(`Cannot find module store. No .modules.yaml found at "${modules}"`);
24
- }
25
- const storePath = modulesYaml.storeDir;
26
- cachedStore = {
27
- storePath,
28
- ...assertStore(storePath, ern),
29
- };
30
- }
31
- return cachedStore;
32
- }
33
- function getVirtualStoreDir() {
34
- const modulesYaml = readModulesManifest(modules);
35
- if (modulesYaml == null) {
36
- return path.join(modules, '.pnpm');
37
- }
38
- if (path.isAbsolute(modulesYaml.virtualStoreDir)) {
39
- return modulesYaml.virtualStoreDir;
40
- }
41
- return path.join(modules, modulesYaml.virtualStoreDir);
42
- }
43
- // eslint-disable-next-line
17
+ const getStoreInstance = createStoreInstanceGetter(modules, encodedRegistryName ?? `localhost+${REGISTRY_MOCK_PORT}`);
44
18
  const ok = (value) => expect(value).toBeTruthy();
45
- // eslint-disable-next-line
46
19
  const notOk = (value) => expect(value).toBeFalsy();
47
20
  return {
48
21
  dir: () => projectPath,
@@ -57,81 +30,99 @@ export function assertProject(projectPath, encodedRegistryName) {
57
30
  const md = _modulesDir ? path.join(projectPath, _modulesDir) : modules;
58
31
  notOk(fs.existsSync(path.join(md, pkgName)));
59
32
  },
60
- getStorePath() {
61
- const store = getStoreInstance();
62
- return store.storePath;
63
- },
64
- resolve(pkgName, version, relativePath) {
65
- const store = getStoreInstance();
66
- return store.resolve(pkgName, version, relativePath);
67
- },
68
- getPkgIndexFilePath(pkgName, version) {
69
- const store = getStoreInstance();
70
- return store.getPkgIndexFilePath(pkgName, version);
71
- },
33
+ getStorePath: () => getStoreInstance().storePath,
34
+ resolve: (pkgName, version, relativePath) => getStoreInstance().resolve(pkgName, version, relativePath),
35
+ getPkgIndexFilePath: (pkgName, version) => getStoreInstance().getPkgIndexFilePath(pkgName, version),
72
36
  cafsHas(pkgName, version) {
73
- const store = getStoreInstance();
74
- store.cafsHas(pkgName, version);
37
+ getStoreInstance().cafsHas(pkgName, version);
75
38
  },
76
39
  cafsHasNot(pkgName, version) {
77
- const store = getStoreInstance();
78
- store.cafsHasNot(pkgName, version);
79
- },
80
- storeHas(pkgName, version) {
81
- const store = getStoreInstance();
82
- return store.resolve(pkgName, version);
40
+ getStoreInstance().cafsHasNot(pkgName, version);
83
41
  },
42
+ storeHas: (pkgName, version) => getStoreInstance().resolve(pkgName, version),
84
43
  storeHasNot(pkgName, version) {
85
- try {
86
- const store = getStoreInstance();
87
- store.storeHasNot(pkgName, version);
88
- }
89
- catch (err) {
90
- if (util.types.isNativeError(err) && err.message.startsWith('Cannot find module store')) {
91
- return;
92
- }
93
- throw err;
94
- }
44
+ assertStoreHasNot(getStoreInstance, pkgName, version);
95
45
  },
96
46
  isExecutable(pathToExe) {
97
47
  isExecutable(ok, path.join(modules, pathToExe));
98
48
  },
99
- readCurrentLockfile() {
100
- try {
101
- return readYamlFileSync(path.join(getVirtualStoreDir(), 'lock.yaml'));
102
- }
103
- catch (err) {
104
- if (util.types.isNativeError(err) && 'code' in err && err.code === 'ENOENT')
105
- return null;
106
- throw err;
107
- }
108
- },
49
+ readCurrentLockfile: () => readCurrentLockfile(modules),
109
50
  readModulesManifest: () => readModulesManifest(modules),
110
- readLockfile(lockfileName = WANTED_LOCKFILE) {
111
- try {
112
- const raw = fs.readFileSync(path.join(projectPath, lockfileName), 'utf8');
113
- // Skip the env lockfile document if present (first document in combined format).
114
- // Cannot import from @pnpm/lockfile.fs here due to circular dependency.
115
- let content = raw;
116
- if (raw.startsWith('---\n')) {
117
- const sep = raw.indexOf('\n---\n');
118
- content = sep !== -1 ? raw.slice(sep + '\n---\n'.length) : '';
119
- }
120
- if (!content.trim())
121
- return null;
122
- return yaml.load(content);
123
- }
124
- catch (err) {
125
- if (util.types.isNativeError(err) && 'code' in err && err.code === 'ENOENT')
126
- return null;
127
- throw err;
128
- }
129
- },
51
+ readLockfile: (lockfileName = WANTED_LOCKFILE) => readLockfile(path.join(projectPath, lockfileName)),
130
52
  writePackageJson(pkgJson) {
131
53
  writePackageSync(projectPath, pkgJson); // eslint-disable-line
132
54
  },
133
55
  };
134
56
  }
57
+ function createStoreInstanceGetter(modules, encodedRegistryName) {
58
+ let cachedStore;
59
+ return () => {
60
+ if (!cachedStore) {
61
+ const modulesYaml = readModulesManifest(modules);
62
+ if (modulesYaml == null) {
63
+ throw new Error(`Cannot find module store. No .modules.yaml found at "${modules}"`);
64
+ }
65
+ const storePath = modulesYaml.storeDir;
66
+ cachedStore = {
67
+ storePath,
68
+ ...assertStore(storePath, encodedRegistryName),
69
+ };
70
+ }
71
+ return cachedStore;
72
+ };
73
+ }
74
+ function assertStoreHasNot(getStoreInstance, pkgName, version) {
75
+ try {
76
+ const store = getStoreInstance();
77
+ store.storeHasNot(pkgName, version);
78
+ }
79
+ catch (err) {
80
+ if (util.types.isNativeError(err) && err.message.startsWith('Cannot find module store')) {
81
+ return;
82
+ }
83
+ throw err;
84
+ }
85
+ }
86
+ function getVirtualStoreDir(modules) {
87
+ const modulesYaml = readModulesManifest(modules);
88
+ if (modulesYaml == null) {
89
+ return path.join(modules, '.pnpm');
90
+ }
91
+ if (path.isAbsolute(modulesYaml.virtualStoreDir)) {
92
+ return modulesYaml.virtualStoreDir;
93
+ }
94
+ return path.join(modules, modulesYaml.virtualStoreDir);
95
+ }
96
+ function readCurrentLockfile(modules) {
97
+ try {
98
+ return readYamlFileSync(path.join(getVirtualStoreDir(modules), 'lock.yaml'));
99
+ }
100
+ catch (err) {
101
+ if (util.types.isNativeError(err) && 'code' in err && err.code === 'ENOENT')
102
+ return null;
103
+ throw err;
104
+ }
105
+ }
106
+ function readLockfile(lockfilePath) {
107
+ try {
108
+ const raw = fs.readFileSync(lockfilePath, 'utf8');
109
+ // Skip the env lockfile document if present (first document in combined format).
110
+ // Cannot import from @pnpm/lockfile.fs here due to circular dependency.
111
+ let content = raw;
112
+ if (raw.startsWith('---\n')) {
113
+ const sep = raw.indexOf('\n---\n');
114
+ content = sep !== -1 ? raw.slice(sep + '\n---\n'.length) : '';
115
+ }
116
+ if (!content.trim())
117
+ return null;
118
+ return yaml.load(content);
119
+ }
120
+ catch (err) {
121
+ if (util.types.isNativeError(err) && 'code' in err && err.code === 'ENOENT')
122
+ return null;
123
+ throw err;
124
+ }
125
+ }
135
126
  function readModulesManifest(modulesDir) {
136
127
  try {
137
128
  return readYamlFileSync(path.join(modulesDir, '.modules.yaml'));
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1 @@
1
- declare const _default: (ok: (value: any, comment: string) => void, filePath: string) => void;
2
- export default _default;
1
+ export declare function isExecutable(ok: (value: boolean, comment: string) => void, filePath: string): void;
@@ -2,8 +2,7 @@ import fs from 'node:fs';
2
2
  import isWindows from 'is-windows';
3
3
  import { sync as isExeSync } from 'isexe';
4
4
  const IS_WINDOWS = isWindows();
5
- // eslint-disable-next-line
6
- export default (ok, filePath) => {
5
+ export function isExecutable(ok, filePath) {
7
6
  if (IS_WINDOWS) {
8
7
  if (fs.existsSync(`${filePath}.cmd`)) {
9
8
  ok(isExeSync(`${filePath}.cmd`), `${filePath}.cmd is executable`);
@@ -16,5 +15,5 @@ export default (ok, filePath) => {
16
15
  const stat = fs.statSync(filePath);
17
16
  ok((stat.mode & 0o111) === 0o111, `${filePath} is executable`);
18
17
  ok(stat.isFile(), `${filePath} refers to a file`);
19
- };
18
+ }
20
19
  //# sourceMappingURL=isExecutable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isExecutable.js","sourceRoot":"","sources":["../src/isExecutable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzC,MAAM,UAAU,GAAG,SAAS,EAAE,CAAA;AAE9B,2BAA2B;AAC3B,eAAe,CAAC,EAAyC,EAAE,QAAgB,EAAQ,EAAE;IACnF,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,SAAS,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,GAAG,QAAQ,oBAAoB,CAAC,CAAA;QACnE,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,SAAS,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,GAAG,QAAQ,oBAAoB,CAAC,CAAA;QACnE,CAAC;QACD,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAClC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,GAAG,QAAQ,gBAAgB,CAAC,CAAA;IAC9D,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,mBAAmB,CAAC,CAAA;AACnD,CAAC,CAAA"}
1
+ {"version":3,"file":"isExecutable.js","sourceRoot":"","sources":["../src/isExecutable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzC,MAAM,UAAU,GAAG,SAAS,EAAE,CAAA;AAE9B,MAAM,UAAU,YAAY,CAAE,EAA6C,EAAE,QAAgB;IAC3F,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,SAAS,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,GAAG,QAAQ,oBAAoB,CAAC,CAAA;QACnE,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,SAAS,CAAC,GAAG,QAAQ,MAAM,CAAC,EAAE,GAAG,QAAQ,oBAAoB,CAAC,CAAA;QACnE,CAAC;QACD,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAClC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,GAAG,QAAQ,gBAAgB,CAAC,CAAA;IAC9D,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,mBAAmB,CAAC,CAAA;AACnD,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pnpm/assert-project",
3
3
  "description": "Utils for testing projects that use pnpm",
4
- "version": "1100.0.32",
4
+ "version": "1100.0.34",
5
5
  "author": {
6
6
  "name": "Zoltan Kochan",
7
7
  "email": "z@kochan.io",
@@ -17,7 +17,7 @@
17
17
  "lib/"
18
18
  ],
19
19
  "devDependencies": {
20
- "@pnpm/assert-project": "1100.0.32",
20
+ "@pnpm/assert-project": "1100.0.34",
21
21
  "@types/is-windows": "^1.0.2",
22
22
  "@types/isexe": "2.0.4",
23
23
  "@types/js-yaml": "^4.0.9",
@@ -41,11 +41,11 @@
41
41
  },
42
42
  "dependencies": {
43
43
  "@jest/globals": "30.4.1",
44
- "@pnpm/assert-store": "1100.0.32",
44
+ "@pnpm/assert-store": "1100.0.34",
45
45
  "@pnpm/constants": "1102.0.0",
46
- "@pnpm/installing.modules-yaml": "1101.0.4",
47
- "@pnpm/lockfile.types": "1100.1.3",
48
- "@pnpm/testing.registry-mock": "1100.0.11",
46
+ "@pnpm/installing.modules-yaml": "1101.0.5",
47
+ "@pnpm/lockfile.types": "1100.1.4",
48
+ "@pnpm/testing.registry-mock": "1100.0.13",
49
49
  "@pnpm/types": "1102.1.1",
50
50
  "is-windows": "^1.0.2",
51
51
  "isexe": "4.0.0",