npmdata 0.1.7-beta.0 → 0.2.0-beta.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/dist/publisher.js CHANGED
@@ -9,6 +9,28 @@ exports.initPublisher = initPublisher;
9
9
  const node_fs_1 = __importDefault(require("node:fs"));
10
10
  const node_path_1 = __importDefault(require("node:path"));
11
11
  const utils_1 = require("./utils");
12
+ /**
13
+ * Read the version of the currently running npmdata package so we can pin it
14
+ * in the generated package.json rather than using 'latest'.
15
+ */
16
+ function getOwnVersion() {
17
+ // eslint-disable-next-line functional/no-try-statements
18
+ try {
19
+ const ownPkg = (0, utils_1.readJsonFile)(node_path_1.default.join(__dirname, '../package.json'));
20
+ return `^${ownPkg.version}`;
21
+ }
22
+ catch {
23
+ return 'latest';
24
+ }
25
+ }
26
+ /**
27
+ * Parse a package spec like "pkg@^1.0.0" or "@scope/pkg@2.x" into name and version.
28
+ * Delegates to the shared utility; keeps 'latest' as default when no version is given.
29
+ */
30
+ function parsePublisherPackageSpec(spec) {
31
+ const { name, version } = (0, utils_1.parsePackageSpec)(spec);
32
+ return { name, version: version ?? 'latest' };
33
+ }
12
34
  function validateFolders(folders, workingDir) {
13
35
  const errors = [];
14
36
  for (const folder of folders) {
@@ -29,7 +51,7 @@ function generateCliScript() {
29
51
  require('npmdata/dist/runner.js').run(__dirname);
30
52
  `;
31
53
  }
32
- function preparePackageJson(folders, workingDir) {
54
+ function preparePackageJson(folders, workingDir, additionalPackages = []) {
33
55
  const packageJsonPath = node_path_1.default.join(workingDir, 'package.json');
34
56
  // eslint-disable-next-line functional/no-let
35
57
  let packageJson;
@@ -62,7 +84,20 @@ function preparePackageJson(folders, workingDir) {
62
84
  if (!packageJson.dependencies) {
63
85
  packageJson.dependencies = {};
64
86
  }
65
- packageJson.dependencies.npmdata = 'latest';
87
+ packageJson.dependencies.npmdata = getOwnVersion();
88
+ // Merge additional packages: preserve existing entries, add new ones without duplicates
89
+ const existingAdditional = packageJson.npmdata?.additionalPackages ?? [];
90
+ const mergedAdditional = Array.from(new Set([...existingAdditional, ...additionalPackages]));
91
+ // Store additional packages config and add them to dependencies
92
+ if (mergedAdditional.length > 0) {
93
+ packageJson.npmdata = { ...packageJson.npmdata, additionalPackages: mergedAdditional };
94
+ for (const pkgSpec of mergedAdditional) {
95
+ const { name: pkgName, version: pkgVersion } = parsePublisherPackageSpec(pkgSpec);
96
+ if (!packageJson.dependencies[pkgName]) {
97
+ packageJson.dependencies[pkgName] = pkgVersion;
98
+ }
99
+ }
100
+ }
66
101
  if (!packageJson.bin) {
67
102
  packageJson.bin = 'bin/npmdata.js';
68
103
  }
@@ -73,6 +108,7 @@ function preparePackageJson(folders, workingDir) {
73
108
  */
74
109
  async function initPublisher(folders, options = {}) {
75
110
  const workingDir = options.workingDir ?? process.cwd();
111
+ const additionalPackages = options.additionalPackages ?? [];
76
112
  // eslint-disable-next-line functional/no-try-statements
77
113
  try {
78
114
  if (!folders || folders.length === 0) {
@@ -88,17 +124,19 @@ async function initPublisher(folders, options = {}) {
88
124
  message: `npmdata: folder validation failed:\n${validation.errors.join('\n')}`,
89
125
  };
90
126
  }
91
- const packageJson = preparePackageJson(folders, workingDir);
127
+ const packageJson = preparePackageJson(folders, workingDir, additionalPackages);
92
128
  const packageJsonPath = node_path_1.default.join(workingDir, 'package.json');
93
129
  (0, utils_1.writeJsonFile)(packageJsonPath, packageJson);
94
130
  const cliScriptPath = node_path_1.default.join(workingDir, 'bin', 'npmdata.js');
95
131
  node_fs_1.default.mkdirSync(node_path_1.default.dirname(cliScriptPath), { recursive: true });
96
132
  node_fs_1.default.writeFileSync(cliScriptPath, generateCliScript(), 'utf8');
97
133
  node_fs_1.default.chmodSync(cliScriptPath, 0o755);
134
+ const finalAdditionalPackages = packageJson.npmdata?.additionalPackages;
98
135
  return {
99
136
  success: true,
100
137
  message: 'npmdata: project initialization completed successfully',
101
138
  publishedFolders: folders,
139
+ additionalPackages: finalAdditionalPackages,
102
140
  packageJsonPath,
103
141
  };
104
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"publisher.js","sourceRoot":"","sources":["../src/publisher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publisher.js","sourceRoot":"","sources":["../src/publisher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAmDxC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAiEA;;;GAGG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAwCxC"}
package/dist/runner.js CHANGED
@@ -9,28 +9,23 @@ const node_child_process_1 = require("node:child_process");
9
9
  const node_fs_1 = __importDefault(require("node:fs"));
10
10
  const node_path_1 = __importDefault(require("node:path"));
11
11
  /**
12
- * Runs the npmdata CLI (extract or check) on behalf of a publishable package.
13
- * Called from the minimal generated bin script with its own __dirname as binDir.
12
+ * Returns the owning package name plus any additional packages listed in
13
+ * `npmdata.additionalPackages` of the package.json at the given path.
14
14
  */
15
- function run(binDir) {
16
- const pkgJsonPath = node_path_1.default.join(binDir, '../package.json');
15
+ function collectPackages(pkgJsonPath) {
17
16
  const pkg = JSON.parse(node_fs_1.default.readFileSync(pkgJsonPath).toString());
18
- const fpCliPath = require.resolve('npmdata/dist/main.js', {
19
- paths: [binDir],
20
- });
21
- const action = process.argv[2] ?? 'extract';
22
- if (action !== 'extract' && action !== 'check') {
23
- process.stderr.write(`Invalid action: "${action}". Must be "extract" or "check".\n`);
24
- // eslint-disable-next-line unicorn/no-process-exit
25
- process.exit(1);
26
- }
27
- // Parse --output / -o, --force, --files, --content-regex from argv
17
+ const additional = pkg.npmdata?.additionalPackages ?? [];
18
+ return [pkg.name, ...additional];
19
+ }
20
+ function parseArgs(extraArgs) {
28
21
  let outputDir;
29
22
  let force = false;
30
23
  let gitignore = false;
24
+ let silent = false;
25
+ let dryRun = false;
26
+ let upgrade = false;
31
27
  let files;
32
28
  let contentRegex;
33
- const extraArgs = process.argv.slice(3);
34
29
  for (let i = 0; i < extraArgs.length; i += 1) {
35
30
  if (extraArgs[i] === '--output' || extraArgs[i] === '-o') {
36
31
  outputDir = extraArgs[i + 1];
@@ -42,6 +37,15 @@ function run(binDir) {
42
37
  else if (extraArgs[i] === '--gitignore') {
43
38
  gitignore = true;
44
39
  }
40
+ else if (extraArgs[i] === '--silent') {
41
+ silent = true;
42
+ }
43
+ else if (extraArgs[i] === '--dry-run') {
44
+ dryRun = true;
45
+ }
46
+ else if (extraArgs[i] === '--upgrade') {
47
+ upgrade = true;
48
+ }
45
49
  else if (extraArgs[i] === '--files') {
46
50
  files = extraArgs[i + 1];
47
51
  i += 1;
@@ -51,12 +55,40 @@ function run(binDir) {
51
55
  i += 1;
52
56
  }
53
57
  }
58
+ return { outputDir, force, gitignore, silent, dryRun, upgrade, files, contentRegex };
59
+ }
60
+ /**
61
+ * Runs the npmdata CLI (extract or check) on behalf of a publishable package.
62
+ * Called from the minimal generated bin script with its own __dirname as binDir.
63
+ */
64
+ function run(binDir) {
65
+ const pkgJsonPath = node_path_1.default.join(binDir, '../package.json');
66
+ const allPackages = collectPackages(pkgJsonPath);
67
+ const fpCliPath = require.resolve('npmdata/dist/main.js', {
68
+ paths: [binDir],
69
+ });
70
+ const action = process.argv[2] ?? 'extract';
71
+ if (action !== 'extract' && action !== 'check' && action !== 'list') {
72
+ process.stderr.write(`Invalid action: "${action}". Must be "extract", "check", or "list".\n`);
73
+ // eslint-disable-next-line unicorn/no-process-exit
74
+ process.exit(1);
75
+ }
76
+ const { outputDir, force, gitignore, silent, dryRun, upgrade, files, contentRegex } = parseArgs(process.argv.slice(3));
54
77
  const outputFlag = outputDir ? ` --output "${outputDir}"` : '';
55
- const forceFlag = force ? ' --force' : '';
56
- const gitignoreFlag = gitignore ? ' --gitignore' : '';
57
- const filesFlag = files ? ` --files "${files}"` : '';
58
- const contentRegexFlag = contentRegex ? ` --content-regex "${contentRegex}"` : '';
59
- const command = `node "${fpCliPath}" ${action} --package "${pkg.name}"${outputFlag}${forceFlag}${gitignoreFlag}${filesFlag}${contentRegexFlag}`;
78
+ let command;
79
+ if (action === 'list') {
80
+ command = `node "${fpCliPath}" list${outputFlag}`;
81
+ }
82
+ else {
83
+ const forceFlag = force ? ' --force' : '';
84
+ const gitignoreFlag = gitignore ? ' --gitignore' : '';
85
+ const silentFlag = silent ? ' --silent' : '';
86
+ const dryRunFlag = dryRun ? ' --dry-run' : '';
87
+ const upgradeFlag = upgrade ? ' --upgrade' : '';
88
+ const filesFlag = files ? ` --files "${files}"` : '';
89
+ const contentRegexFlag = contentRegex ? ` --content-regex "${contentRegex}"` : '';
90
+ command = `node "${fpCliPath}" ${action} --packages "${allPackages.join(',')}"${outputFlag}${forceFlag}${gitignoreFlag}${silentFlag}${dryRunFlag}${upgradeFlag}${filesFlag}${contentRegexFlag}`;
91
+ }
60
92
  process.on('uncaughtException', () => {
61
93
  process.exit(3);
62
94
  });
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -16,18 +16,44 @@ export type FileFilterConfig = {
16
16
  */
17
17
  contentRegexes?: RegExp[];
18
18
  };
19
+ /**
20
+ * Event emitted by extract() as files are processed.
21
+ */
22
+ export type ProgressEvent = {
23
+ type: 'package-start';
24
+ packageName: string;
25
+ packageVersion: string;
26
+ } | {
27
+ type: 'package-end';
28
+ packageName: string;
29
+ packageVersion: string;
30
+ } | {
31
+ type: 'file-added';
32
+ packageName: string;
33
+ file: string;
34
+ } | {
35
+ type: 'file-modified';
36
+ packageName: string;
37
+ file: string;
38
+ } | {
39
+ type: 'file-deleted';
40
+ packageName: string;
41
+ file: string;
42
+ } | {
43
+ type: 'file-skipped';
44
+ packageName: string;
45
+ file: string;
46
+ };
19
47
  /**
20
48
  * Configuration for the consumer
21
49
  */
22
50
  export type ConsumerConfig = FileFilterConfig & {
23
51
  /**
24
- * Package name to install from registry
52
+ * Package specs to install from registry. Each entry is either a bare package name
53
+ * ("my-pkg") or a name with a semver constraint ("my-pkg@^1.2.3"). Multiple packages
54
+ * can be provided and they will all be extracted into outputDir.
25
55
  */
26
- packageName: string;
27
- /**
28
- * Optional version constraint (semver pattern)
29
- */
30
- version?: string;
56
+ packages: string[];
31
57
  /**
32
58
  * Output directory where files will be extracted
33
59
  */
@@ -50,6 +76,21 @@ export type ConsumerConfig = FileFilterConfig & {
50
76
  * adding the managed files and the .publisher file itself to be ignored by git.
51
77
  */
52
78
  gitignore?: boolean;
79
+ /**
80
+ * When true, simulate extraction without writing anything to disk.
81
+ * The returned ConsumerResult reflects what would have changed.
82
+ */
83
+ dryRun?: boolean;
84
+ /**
85
+ * When true, force a fresh install of each package even if a satisfying version
86
+ * is already installed. Useful to pick up the latest patch or minor release.
87
+ */
88
+ upgrade?: boolean;
89
+ /**
90
+ * Optional callback called for each file event during extraction.
91
+ * Useful for progress reporting in scripts and build tools.
92
+ */
93
+ onProgress?: (event: ProgressEvent) => void;
53
94
  };
54
95
  /**
55
96
  * Metadata about managed files
@@ -80,10 +121,16 @@ export type ConsumerResult = {
80
121
  modified: string[];
81
122
  deleted: string[];
82
123
  skipped: string[];
83
- sourcePackage: {
124
+ sourcePackages: Array<{
84
125
  name: string;
85
126
  version: string;
86
- };
127
+ changes: {
128
+ added: string[];
129
+ modified: string[];
130
+ deleted: string[];
131
+ skipped: string[];
132
+ };
133
+ }>;
87
134
  };
88
135
  /**
89
136
  * Result of a check operation
@@ -94,7 +141,7 @@ export type CheckResult = {
94
141
  */
95
142
  ok: boolean;
96
143
  /**
97
- * Files that differ from source
144
+ * Aggregated files that differ from source (across all packages)
98
145
  */
99
146
  differences: {
100
147
  /**
@@ -105,14 +152,35 @@ export type CheckResult = {
105
152
  * Files whose contents differ from the package source
106
153
  */
107
154
  modified: string[];
155
+ /**
156
+ * Files that exist in the package but have not been extracted yet
157
+ */
158
+ extra: string[];
108
159
  };
109
160
  /**
110
- * Package information
161
+ * Per-package breakdown of differences
111
162
  */
112
- sourcePackage: {
163
+ sourcePackages: Array<{
113
164
  name: string;
114
165
  version: string;
115
- };
166
+ ok: boolean;
167
+ differences: {
168
+ missing: string[];
169
+ modified: string[];
170
+ extra: string[];
171
+ };
172
+ }>;
173
+ };
174
+ /**
175
+ * npmdata-specific configuration stored inside the publishable package.json
176
+ */
177
+ export type NpmdataConfig = {
178
+ /**
179
+ * Additional package specs to include as data sources when the CLI script runs.
180
+ * Each entry is a bare package name ("my-pkg") or a name with a semver constraint
181
+ * ("my-pkg@^1.2.3"). These are merged with the package's own name when extracting.
182
+ */
183
+ additionalPackages?: string[];
116
184
  };
117
185
  /**
118
186
  * Package.json for a publishable project
@@ -125,6 +193,7 @@ export type PublishablePackageJson = {
125
193
  bin?: string;
126
194
  files?: string[];
127
195
  dependencies?: Record<string, string>;
196
+ npmdata?: NpmdataConfig;
128
197
  [key: string]: unknown;
129
198
  };
130
199
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,UAMrC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG;IAC9C;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAEzC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,EAAE,EAAE,OAAO,CAAC;IAEZ;;OAEG;IACH,WAAW,EAAE;QACX;;WAEG;QACH,OAAO,EAAE,MAAM,EAAE,CAAC;QAElB;;WAEG;QACH,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IAEF;;OAEG;IACH,aAAa,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -1,10 +1,24 @@
1
1
  import { ManagedFileMetadata } from './types';
2
+ /**
3
+ * Parse a package spec like "my-pkg@^1.2.3" or "@scope/pkg@2.x" into name and version.
4
+ * The version separator is the LAST "@" so that scoped packages ("@scope/name") are handled correctly.
5
+ */
6
+ export declare function parsePackageSpec(spec: string): {
7
+ name: string;
8
+ version: string | undefined;
9
+ };
10
+ /**
11
+ * Detect whether a file is binary by scanning it for null bytes.
12
+ * Reads up to the first 8 KB only to keep memory usage low.
13
+ */
14
+ export declare function isBinaryFile(filePath: string): boolean;
2
15
  /**
3
16
  * Get hash of file contents
4
17
  */
5
18
  export declare function calculateFileHash(filePath: string): string;
6
19
  /**
7
- * Check if file contents match regex patterns
20
+ * Check if file contents match regex patterns.
21
+ * Binary files (detected via null-byte scan) are always excluded when patterns are set.
8
22
  */
9
23
  export declare function matchesContentRegex(filePath: string, patterns?: RegExp[]): boolean;
10
24
  /**
@@ -25,9 +39,10 @@ export declare function removeFile(filePath: string): void;
25
39
  */
26
40
  export declare function copyFile(src: string, dest: string): void;
27
41
  /**
28
- * Detect package manager type
42
+ * Detect package manager type.
43
+ * Inspects the lock files in the given directory (defaults to process.cwd()).
29
44
  */
30
- export declare function detectPackageManager(): 'npm' | 'yarn' | 'pnpm';
45
+ export declare function detectPackageManager(cwd?: string): 'npm' | 'yarn' | 'pnpm';
31
46
  /**
32
47
  * Get package info from installed package
33
48
  */
@@ -41,11 +56,13 @@ export declare function readJsonFile<T>(filePath: string): T;
41
56
  */
42
57
  export declare function writeJsonFile(filePath: string, data: unknown): void;
43
58
  /**
44
- * Read the .publisher CSV marker file
59
+ * Read the .publisher marker file.
60
+ * Supports both the current pipe-delimited format and the legacy comma-delimited format
61
+ * (detected automatically for backward compatibility).
45
62
  */
46
63
  export declare function readCsvMarker(filePath: string): ManagedFileMetadata[];
47
64
  /**
48
- * Write the .publisher CSV marker file
65
+ * Write the .publisher marker file using the pipe-delimited format.
49
66
  */
50
67
  export declare function writeCsvMarker(filePath: string, data: ManagedFileMetadata[]): void;
51
68
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAIlF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,GACxB,MAAM,EAAE,CA8BV;AAED,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,EAAE,WAAW,MAAM,EAAE,KAAG,OAW9E,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI3C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAGjD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAOxD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,KAAK,GAAG,MAAM,GAAG,MAAM,CAkB9D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAe3F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAGnD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAQnE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAYrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAUlF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAQ5F;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAWtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAKlF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,GACxB,MAAM,EAAE,CA8BV;AAED,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,EAAE,WAAW,MAAM,EAAE,KAAG,OAa9E,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI3C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAGjD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAOxD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAmB1E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAe3F;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAGnD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAQnE;AAID;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAcrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAUlF"}
package/dist/utils.js CHANGED
@@ -4,6 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.matchesFilenamePattern = void 0;
7
+ exports.parsePackageSpec = parsePackageSpec;
8
+ exports.isBinaryFile = isBinaryFile;
7
9
  exports.calculateFileHash = calculateFileHash;
8
10
  exports.matchesContentRegex = matchesContentRegex;
9
11
  exports.findMatchingFiles = findMatchingFiles;
@@ -20,6 +22,36 @@ const node_fs_1 = __importDefault(require("node:fs"));
20
22
  const node_path_1 = __importDefault(require("node:path"));
21
23
  const node_crypto_1 = __importDefault(require("node:crypto"));
22
24
  const minimatch_1 = require("minimatch");
25
+ /**
26
+ * Parse a package spec like "my-pkg@^1.2.3" or "@scope/pkg@2.x" into name and version.
27
+ * The version separator is the LAST "@" so that scoped packages ("@scope/name") are handled correctly.
28
+ */
29
+ function parsePackageSpec(spec) {
30
+ const atIdx = spec.lastIndexOf('@');
31
+ if (atIdx > 0) {
32
+ // eslint-disable-next-line no-undefined
33
+ return { name: spec.slice(0, atIdx), version: spec.slice(atIdx + 1) || undefined };
34
+ }
35
+ // eslint-disable-next-line no-undefined
36
+ return { name: spec, version: undefined };
37
+ }
38
+ /**
39
+ * Detect whether a file is binary by scanning it for null bytes.
40
+ * Reads up to the first 8 KB only to keep memory usage low.
41
+ */
42
+ function isBinaryFile(filePath) {
43
+ // eslint-disable-next-line functional/no-try-statements
44
+ try {
45
+ const fd = node_fs_1.default.openSync(filePath, 'r');
46
+ const buf = Buffer.alloc(8192);
47
+ const bytesRead = node_fs_1.default.readSync(fd, buf, 0, 8192, 0);
48
+ node_fs_1.default.closeSync(fd);
49
+ return buf.slice(0, bytesRead).includes(0x00);
50
+ }
51
+ catch {
52
+ return false;
53
+ }
54
+ }
23
55
  /**
24
56
  * Get hash of file contents
25
57
  */
@@ -28,11 +60,14 @@ function calculateFileHash(filePath) {
28
60
  return node_crypto_1.default.createHash('sha256').update(content).digest('hex');
29
61
  }
30
62
  /**
31
- * Check if file contents match regex patterns
63
+ * Check if file contents match regex patterns.
64
+ * Binary files (detected via null-byte scan) are always excluded when patterns are set.
32
65
  */
33
66
  function matchesContentRegex(filePath, patterns) {
34
67
  if (!patterns)
35
68
  return true;
69
+ if (isBinaryFile(filePath))
70
+ return false;
36
71
  const content = node_fs_1.default.readFileSync(filePath, 'utf8');
37
72
  return patterns.some((pattern) => pattern.test(content));
38
73
  }
@@ -70,8 +105,10 @@ const matchesFilenamePattern = (filename, patterns) => {
70
105
  // Separate include and exclude patterns (exclude patterns start with '!')
71
106
  const includes = patterns.filter((p) => !p.startsWith('!'));
72
107
  const excludes = patterns.filter((p) => p.startsWith('!')).map((p) => p.slice(1));
73
- return (includes.some((pattern) => (0, minimatch_1.minimatch)(filename, pattern)) &&
74
- !excludes.some((pattern) => (0, minimatch_1.minimatch)(filename, pattern)));
108
+ // When there are no positive include patterns, treat as "match all" (same as undefined).
109
+ // This avoids the footgun where an empty array silently excludes every file.
110
+ const matchesIncludes = includes.length === 0 || includes.some((pattern) => (0, minimatch_1.minimatch)(filename, pattern));
111
+ return matchesIncludes && !excludes.some((pattern) => (0, minimatch_1.minimatch)(filename, pattern));
75
112
  };
76
113
  exports.matchesFilenamePattern = matchesFilenamePattern;
77
114
  /**
@@ -101,12 +138,14 @@ function copyFile(src, dest) {
101
138
  node_fs_1.default.copyFileSync(src, dest);
102
139
  }
103
140
  /**
104
- * Detect package manager type
141
+ * Detect package manager type.
142
+ * Inspects the lock files in the given directory (defaults to process.cwd()).
105
143
  */
106
- function detectPackageManager() {
144
+ function detectPackageManager(cwd) {
145
+ const dir = cwd ?? '.';
107
146
  // eslint-disable-next-line functional/no-try-statements
108
147
  try {
109
- const lockFiles = node_fs_1.default.readdirSync('.');
148
+ const lockFiles = node_fs_1.default.readdirSync(dir);
110
149
  if (lockFiles.includes('pnpm-lock.yaml'))
111
150
  return 'pnpm';
112
151
  if (lockFiles.includes('yarn.lock'))
@@ -165,31 +204,36 @@ function writeJsonFile(filePath, data) {
165
204
  // eslint-disable-next-line unicorn/no-null
166
205
  node_fs_1.default.writeFileSync(filePath, `${JSON.stringify(data, null, 2)}\n`, 'utf8');
167
206
  }
207
+ const MARKER_DELIMITER = '|';
168
208
  /**
169
- * Read the .publisher CSV marker file
209
+ * Read the .publisher marker file.
210
+ * Supports both the current pipe-delimited format and the legacy comma-delimited format
211
+ * (detected automatically for backward compatibility).
170
212
  */
171
213
  function readCsvMarker(filePath) {
172
214
  const content = node_fs_1.default.readFileSync(filePath, 'utf8');
173
215
  const lines = content.split('\n').filter((line) => line.trim() !== '');
174
216
  return lines.map((line) => {
175
- const fields = line.split(',');
217
+ // Detect format: new records use '|'; legacy records use ','
218
+ const delimiter = line.includes(MARKER_DELIMITER) ? MARKER_DELIMITER : ',';
219
+ const fields = line.split(delimiter);
176
220
  return {
177
221
  path: fields[0],
178
222
  packageName: fields[1],
179
223
  packageVersion: fields[2],
180
- force: fields[3] === 'true',
224
+ force: fields[3] === '1',
181
225
  };
182
226
  });
183
227
  }
184
228
  /**
185
- * Write the .publisher CSV marker file
229
+ * Write the .publisher marker file using the pipe-delimited format.
186
230
  */
187
231
  function writeCsvMarker(filePath, data) {
188
232
  ensureDir(node_path_1.default.dirname(filePath));
189
233
  if (node_fs_1.default.existsSync(filePath)) {
190
234
  node_fs_1.default.chmodSync(filePath, 0o644);
191
235
  }
192
- const rows = data.map((m) => [m.path, m.packageName, m.packageVersion, m.force ? 'true' : 'false'].join(','));
236
+ const rows = data.map((m) => [m.path, m.packageName, m.packageVersion, m.force ? '1' : '0'].join(MARKER_DELIMITER));
193
237
  node_fs_1.default.writeFileSync(filePath, `${rows.join('\n')}\n`, 'utf8');
194
238
  node_fs_1.default.chmodSync(filePath, 0o444);
195
239
  }
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npmdata",
3
- "version": "0.1.7-beta.0",
3
+ "version": "0.2.0-beta.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "bin": "dist/main.js",