New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@pnpm/worker

Package Overview
Dependencies
Maintainers
2
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pnpm/worker - npm Package Compare versions

Comparing version 0.3.15 to 1.0.0

5

lib/index.d.ts

@@ -7,5 +7,6 @@ import { PnpmError } from '@pnpm/error';

export declare function finishWorkers(): Promise<void>;
export declare function addFilesFromDir(opts: Pick<AddDirToStoreMessage, 'cafsDir' | 'dir' | 'filesIndexFile' | 'sideEffectsCacheKey' | 'readManifest' | 'pkg'>): Promise<{
export declare function addFilesFromDir(opts: Pick<AddDirToStoreMessage, 'cafsDir' | 'dir' | 'filesIndexFile' | 'sideEffectsCacheKey' | 'readManifest' | 'pkg' | 'files'>): Promise<{
filesIndex: Record<string, string>;
manifest: DependencyManifest;
requiresBuild: boolean;
}>;

@@ -32,2 +33,3 @@ export declare class TarballIntegrityError extends PnpmError {

manifest: DependencyManifest;
requiresBuild: boolean;
}>;

@@ -38,2 +40,3 @@ export declare function readPkgFromCafs(cafsDir: string, verifyStoreIntegrity: boolean, filesIndexFile: string, readManifest?: boolean): Promise<{

manifest?: DependencyManifest;
requiresBuild: boolean;
}>;

@@ -40,0 +43,0 @@ export declare function importPackage(opts: Omit<LinkPkgMessage, 'type'>): Promise<{

1

lib/index.js

@@ -68,2 +68,3 @@ "use strict";

pkg: opts.pkg,
files: opts.files,
});

@@ -70,0 +71,0 @@ });

@@ -44,2 +44,3 @@ /// <reference types="node" />

pkg?: PkgNameVersion;
files?: string[];
}

@@ -46,0 +47,0 @@ export interface ReadPkgFromCafsMessage {

@@ -34,2 +34,3 @@ "use strict";

const create_cafs_store_1 = require("@pnpm/create-cafs-store");
const exec_pkg_requires_build_1 = require("@pnpm/exec.pkg-requires-build");
const fs_hard_link_dir_1 = require("@pnpm/fs.hard-link-dir");

@@ -65,3 +66,3 @@ const store_cafs_1 = require("@pnpm/store.cafs");

case 'readPkgFromCafs': {
const { cafsDir, filesIndexFile, readManifest, verifyStoreIntegrity } = message;
let { cafsDir, filesIndexFile, readManifest, verifyStoreIntegrity } = message;
let pkgFilesIndex;

@@ -85,2 +86,5 @@ try {

let verifyResult;
if (pkgFilesIndex.requiresBuild == null) {
readManifest = true;
}
if (verifyStoreIntegrity) {

@@ -95,2 +99,3 @@ verifyResult = (0, store_cafs_1.checkPkgFilesIntegrity)(cafsDir, pkgFilesIndex, readManifest);

}
const requiresBuild = pkgFilesIndex.requiresBuild ?? (0, exec_pkg_requires_build_1.pkgRequiresBuild)(verifyResult.manifest, pkgFilesIndex.files);
worker_threads_1.parentPort.postMessage({

@@ -102,2 +107,3 @@ status: 'success',

pkgFilesIndex,
requiresBuild,
},

@@ -150,8 +156,8 @@ });

const cafs = cafsCache.get(cafsDir);
const { filesIndex, manifest } = cafs.addFilesFromTarball(buffer, Boolean(readManifest) || !pkg?.name || !pkg.version);
const { filesIndex, manifest } = cafs.addFilesFromTarball(buffer, true);
const { filesIntegrity, filesMap } = processFilesIndex(filesIndex);
writeFilesIndexFile(filesIndexFile, { pkg: pkg ?? manifest ?? {}, files: filesIntegrity });
return { status: 'success', value: { filesIndex: filesMap, manifest } };
const requiresBuild = writeFilesIndexFile(filesIndexFile, { manifest: manifest ?? {}, files: filesIntegrity });
return { status: 'success', value: { filesIndex: filesMap, manifest, requiresBuild } };
}
function addFilesFromDir({ dir, cafsDir, filesIndexFile, sideEffectsCacheKey, pkg, readManifest }) {
function addFilesFromDir({ dir, cafsDir, filesIndexFile, sideEffectsCacheKey, pkg, readManifest, files }) {
if (!cafsCache.has(cafsDir)) {

@@ -161,4 +167,8 @@ cafsCache.set(cafsDir, (0, store_cafs_1.createCafs)(cafsDir));

const cafs = cafsCache.get(cafsDir);
const { filesIndex, manifest } = cafs.addFilesFromDir(dir, Boolean(readManifest) || !pkg?.name || !pkg.version);
const { filesIndex, manifest } = cafs.addFilesFromDir(dir, {
files,
readManifest: true,
});
const { filesIntegrity, filesMap } = processFilesIndex(filesIndex);
let requiresBuild;
if (sideEffectsCacheKey) {

@@ -170,13 +180,18 @@ let filesIndex;

catch {
pkg = pkg ?? manifest;
filesIndex = { name: pkg?.name, version: pkg?.version, files: filesIntegrity };
filesIndex = { name: manifest?.name, version: manifest?.version, files: filesIntegrity };
}
filesIndex.sideEffects = filesIndex.sideEffects ?? {};
filesIndex.sideEffects[sideEffectsCacheKey] = filesIntegrity;
if (filesIndex.requiresBuild == null) {
requiresBuild = (0, exec_pkg_requires_build_1.pkgRequiresBuild)(manifest, filesIntegrity);
}
else {
requiresBuild = filesIndex.requiresBuild;
}
writeJsonFile(filesIndexFile, filesIndex);
}
else {
writeFilesIndexFile(filesIndexFile, { pkg: pkg ?? manifest ?? {}, files: filesIntegrity });
requiresBuild = writeFilesIndexFile(filesIndexFile, { manifest: manifest ?? {}, files: filesIntegrity });
}
return { status: 'success', value: { filesIndex: filesMap, manifest } };
return { status: 'success', value: { filesIndex: filesMap, manifest, requiresBuild } };
}

@@ -223,8 +238,13 @@ function processFilesIndex(filesIndex) {

}
function writeFilesIndexFile(filesIndexFile, { pkg, files }) {
writeJsonFile(filesIndexFile, {
name: pkg.name,
version: pkg.version,
function writeFilesIndexFile(filesIndexFile, { manifest, files, sideEffects }) {
const requiresBuild = (0, exec_pkg_requires_build_1.pkgRequiresBuild)(manifest, files);
const filesIndex = {
name: manifest.name,
version: manifest.version,
requiresBuild,
files,
});
sideEffects,
};
writeJsonFile(filesIndexFile, filesIndex);
return requiresBuild;
}

@@ -231,0 +251,0 @@ function writeJsonFile(filePath, data) {

{
"name": "@pnpm/worker",
"version": "0.3.15",
"version": "1.0.0",
"description": "A worker for extracting package taralls to the store",

@@ -13,3 +13,3 @@ "main": "lib/index.js",

"keywords": [
"pnpm8",
"pnpm9",
"pnpm",

@@ -19,3 +19,3 @@ "tarball"

"engines": {
"node": ">=16.14"
"node": ">=18.12"
},

@@ -33,13 +33,14 @@ "license": "MIT",

"load-json-file": "^6.2.0",
"@pnpm/cafs-types": "4.0.0",
"@pnpm/error": "5.0.3",
"@pnpm/create-cafs-store": "6.0.14",
"@pnpm/graceful-fs": "3.2.0",
"@pnpm/fs.hard-link-dir": "3.0.0",
"@pnpm/store.cafs": "2.0.13",
"@pnpm/symlink-dependency": "7.1.4"
"@pnpm/create-cafs-store": "7.0.0",
"@pnpm/cafs-types": "5.0.0",
"@pnpm/exec.pkg-requires-build": "1.0.0",
"@pnpm/error": "6.0.0",
"@pnpm/graceful-fs": "4.0.0",
"@pnpm/store.cafs": "3.0.0",
"@pnpm/fs.hard-link-dir": "4.0.0",
"@pnpm/symlink-dependency": "8.0.0"
},
"devDependencies": {
"@pnpm/types": "9.4.2",
"@pnpm/worker": "0.3.15"
"@pnpm/types": "10.0.0",
"@pnpm/worker": "1.0.0"
},

@@ -46,0 +47,0 @@ "funding": "https://opencollective.com/pnpm",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc