backfill-hasher
Advanced tools
Comparing version 3.1.0-alpha.0 to 4.0.0
@@ -1,2 +0,5 @@ | ||
export declare function generateHashOfFiles(packageRoot: string, glob?: string[]): Promise<string>; | ||
//# sourceMappingURL=hashOfFiles.d.ts.map | ||
export declare function generateHashOfFiles( | ||
packageRoot: string, | ||
globs: string[] | ||
): Promise<string>; | ||
//# sourceMappingURL=hashOfFiles.d.ts.map |
"use strict"; | ||
var __importDefault = | ||
(this && this.__importDefault) || | ||
function(mod) { | ||
return mod && mod.__esModule ? mod : { default: mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const crypto = require("crypto"); | ||
const fg = require("fast-glob"); | ||
const fs = require("fs-extra"); | ||
const path = require("path"); | ||
const backfill_config_1 = require("backfill-config"); | ||
const crypto_1 = __importDefault(require("crypto")); | ||
const path_1 = __importDefault(require("path")); | ||
const fast_glob_1 = __importDefault(require("fast-glob")); | ||
const fs_extra_1 = __importDefault(require("fs-extra")); | ||
const helpers_1 = require("./helpers"); | ||
const newline = /\r\n|\r|\n/g; | ||
const LF = "\n"; | ||
async function generateHashOfFiles(packageRoot, glob) { | ||
if (!glob) { | ||
glob = backfill_config_1.createConfig(packageRoot).hashGlobs; | ||
} | ||
const files = await fg(glob, { | ||
cwd: packageRoot, | ||
onlyFiles: false, | ||
objectMode: true | ||
}); | ||
files.sort((a, b) => a.path.localeCompare(b.path)); | ||
const hashes = await Promise.all(files.map(async (file) => { | ||
const hasher = crypto.createHash("sha1"); | ||
hasher.update(file.path); | ||
if (!file.dirent.isDirectory()) { | ||
const fileBuffer = await fs.readFile(path.join(packageRoot, file.path)); | ||
const data = fileBuffer.toString().replace(newline, LF); | ||
hasher.update(data); | ||
} | ||
return hasher.digest("hex"); | ||
})); | ||
return helpers_1.hashStrings(hashes); | ||
async function generateHashOfFiles(packageRoot, globs) { | ||
const files = await fast_glob_1.default(globs, { | ||
cwd: packageRoot, | ||
onlyFiles: false, | ||
objectMode: true | ||
}); | ||
files.sort((a, b) => a.path.localeCompare(b.path)); | ||
const hashes = await Promise.all( | ||
files.map(async file => { | ||
const hasher = crypto_1.default.createHash("sha1"); | ||
hasher.update(file.path); | ||
if (!file.dirent.isDirectory()) { | ||
const fileBuffer = await fs_extra_1.default.readFile( | ||
path_1.default.join(packageRoot, file.path) | ||
); | ||
const data = fileBuffer.toString().replace(newline, LF); | ||
hasher.update(data); | ||
} | ||
return hasher.digest("hex"); | ||
}) | ||
); | ||
return helpers_1.hashStrings(hashes); | ||
} | ||
exports.generateHashOfFiles = generateHashOfFiles; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaE9mRmlsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaGFzaE9mRmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMsZ0NBQWdDO0FBQ2hDLCtCQUErQjtBQUMvQiw2QkFBNkI7QUFDN0IscURBQStDO0FBQy9DLHVDQUF3QztBQUV4QyxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUM7QUFDOUIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDO0FBRVQsS0FBSyxVQUFVLG1CQUFtQixDQUN2QyxXQUFtQixFQUNuQixJQUFlO0lBRWYsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNULElBQUksR0FBRyw4QkFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztLQUM1QztJQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRTtRQUMzQixHQUFHLEVBQUUsV0FBVztRQUNoQixTQUFTLEVBQUUsS0FBSztRQUNoQixVQUFVLEVBQUUsSUFBSTtLQUNqQixDQUFDLENBQUM7SUFFSCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFbkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUM5QixLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxJQUFJLEVBQUMsRUFBRTtRQUNyQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQzlCLE1BQU0sVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN4RSxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN4RCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFFRixPQUFPLHFCQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDN0IsQ0FBQztBQWhDRCxrREFnQ0MifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaE9mRmlsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaGFzaE9mRmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsZ0RBQXdCO0FBQ3hCLDBEQUEyQjtBQUMzQix3REFBMEI7QUFFMUIsdUNBQXdDO0FBRXhDLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQztBQUM5QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUM7QUFFVCxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLFdBQW1CLEVBQ25CLEtBQWU7SUFFZixNQUFNLEtBQUssR0FBRyxNQUFNLG1CQUFFLENBQUMsS0FBSyxFQUFFO1FBQzVCLEdBQUcsRUFBRSxXQUFXO1FBQ2hCLFNBQVMsRUFBRSxLQUFLO1FBQ2hCLFVBQVUsRUFBRSxJQUFJO0tBQ2pCLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVuRCxNQUFNLE1BQU0sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQzlCLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLElBQUksRUFBQyxFQUFFO1FBQ3JCLE1BQU0sTUFBTSxHQUFHLGdCQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQzlCLE1BQU0sVUFBVSxHQUFHLE1BQU0sa0JBQUUsQ0FBQyxRQUFRLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDeEUsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNyQjtRQUVELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBRUYsT0FBTyxxQkFBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzdCLENBQUM7QUE1QkQsa0RBNEJDIn0= |
@@ -0,1 +1,2 @@ | ||
import { Logger } from "backfill-logger"; | ||
import { ParsedYarnLock } from "./yarnLock"; | ||
@@ -10,3 +11,3 @@ import { WorkspaceInfo } from "./yarnWorkspaces"; | ||
export declare function generateHashOfInternalPackages(internalPackages: PackageHashInfo[]): string; | ||
export declare function getPackageHash(packageRoot: string, workspaces: WorkspaceInfo, yarnLock: ParsedYarnLock): Promise<PackageHashInfo>; | ||
export declare function getPackageHash(packageRoot: string, workspaces: WorkspaceInfo, yarnLock: ParsedYarnLock, logger: Logger, hashGlobs: string[]): Promise<PackageHashInfo>; | ||
//# sourceMappingURL=hashOfPackage.d.ts.map |
"use strict"; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const crypto = require("crypto"); | ||
const path = require("path"); | ||
const fs = require("fs"); | ||
const fsExtra = require("fs-extra"); | ||
const backfill_logger_1 = require("backfill-logger"); | ||
const crypto_1 = __importDefault(require("crypto")); | ||
const path_1 = __importDefault(require("path")); | ||
const resolveInternalDependencies_1 = require("./resolveInternalDependencies"); | ||
@@ -14,3 +14,3 @@ const resolveExternalDependencies_1 = require("./resolveExternalDependencies"); | ||
internalPackages.sort((a, b) => a.name.localeCompare(b.name)); | ||
const hasher = crypto.createHash("sha1"); | ||
const hasher = crypto_1.default.createHash("sha1"); | ||
internalPackages.forEach(pkg => { | ||
@@ -24,12 +24,9 @@ hasher.update(pkg.name); | ||
exports.generateHashOfInternalPackages = generateHashOfInternalPackages; | ||
async function getPackageHash(packageRoot, workspaces, yarnLock) { | ||
const cacheFile = path.join(packageRoot, "node_modules", "backfill-hash.json"); | ||
try { | ||
const cachedValue = await fs.promises.readFile(cacheFile); | ||
const result = JSON.parse(cachedValue.toString()); | ||
return result; | ||
const memoization = {}; | ||
async function getPackageHash(packageRoot, workspaces, yarnLock, logger, hashGlobs) { | ||
const memoizationKey = path_1.default.resolve(packageRoot); | ||
if (memoization[memoizationKey]) { | ||
return memoization[memoizationKey]; | ||
} | ||
catch { | ||
} | ||
const { name, dependencies, devDependencies } = require(path.join(packageRoot, "package.json")); | ||
const { name, dependencies, devDependencies } = require(path_1.default.join(packageRoot, "package.json")); | ||
const allDependencies = { | ||
@@ -45,7 +42,7 @@ ...dependencies, | ||
]; | ||
const filesHash = await hashOfFiles_1.generateHashOfFiles(packageRoot); | ||
const filesHash = await hashOfFiles_1.generateHashOfFiles(packageRoot, hashGlobs); | ||
const dependenciesHash = helpers_1.hashStrings(resolvedDependencies); | ||
backfill_logger_1.logger.silly(name); | ||
backfill_logger_1.logger.silly(` ${filesHash} (fileHash)`); | ||
backfill_logger_1.logger.silly(` ${dependenciesHash} (dependenciesHash)`); | ||
logger.silly(name); | ||
logger.silly(` ${filesHash} (fileHash)`); | ||
logger.silly(` ${dependenciesHash} (dependenciesHash)`); | ||
const packageHash = { | ||
@@ -57,7 +54,6 @@ name, | ||
}; | ||
await fsExtra.mkdirp(path.dirname(cacheFile)); | ||
await fs.promises.writeFile(cacheFile, JSON.stringify(packageHash)); | ||
memoization[memoizationKey] = packageHash; | ||
return packageHash; | ||
} | ||
exports.getPackageHash = getPackageHash; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaE9mUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYXNoT2ZQYWNrYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQWlDO0FBQ2pDLDZCQUE2QjtBQUM3Qix5QkFBeUI7QUFDekIsb0NBQW9DO0FBQ3BDLHFEQUF5QztBQUV6QywrRUFBNEU7QUFDNUUsK0VBQTRFO0FBQzVFLCtDQUFvRDtBQUVwRCx1Q0FBd0M7QUFXeEMsU0FBZ0IsOEJBQThCLENBQzVDLGdCQUFtQztJQUVuQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUU5RCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzlCLENBQUM7QUFiRCx3RUFhQztBQUVNLEtBQUssVUFBVSxjQUFjLENBQ2xDLFdBQW1CLEVBQ25CLFVBQXlCLEVBQ3pCLFFBQXdCO0lBRXhCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGNBQWMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBRS9FLElBQUk7UUFDRixNQUFNLFdBQVcsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDbEQsT0FBTyxNQUFNLENBQUM7S0FFZjtJQUNELE1BQU07S0FFTDtJQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUMvRCxXQUFXLEVBQ1gsY0FBYyxDQUNmLENBQUMsQ0FBQztJQUVILE1BQU0sZUFBZSxHQUFpQjtRQUNwQyxHQUFHLFlBQVk7UUFDZixHQUFHLGVBQWU7S0FDbkIsQ0FBQztJQUVGLE1BQU0sb0JBQW9CLEdBQUcseURBQTJCLENBQ3RELGVBQWUsRUFDZixVQUFVLENBQ1gsQ0FBQztJQUVGLE1BQU0sb0JBQW9CLEdBQUcseURBQTJCLENBQ3RELGVBQWUsRUFDZixVQUFVLEVBQ1YsUUFBUSxDQUNULENBQUM7SUFFRixNQUFNLG9CQUFvQixHQUFHO1FBQzNCLEdBQUcsb0JBQW9CO1FBQ3ZCLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7SUFFRixNQUFNLFNBQVMsR0FBRyxNQUFNLGlDQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pELE1BQU0sZ0JBQWdCLEdBQUcscUJBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTNELHdCQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25CLHdCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssU0FBUyxhQUFhLENBQUMsQ0FBQztJQUMxQyx3QkFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLGdCQUFnQixxQkFBcUIsQ0FBQyxDQUFDO0lBRXpELE1BQU0sV0FBVyxHQUFHO1FBQ2xCLElBQUk7UUFDSixTQUFTO1FBQ1QsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtLQUNyQixDQUFDO0lBRUYsTUFBTSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM5QyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFcEUsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQTdERCx3Q0E2REMifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaE9mUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oYXNoT2ZQYWNrYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLGdEQUF3QjtBQUl4QiwrRUFBNEU7QUFDNUUsK0VBR3VDO0FBQ3ZDLCtDQUFvRDtBQUVwRCx1Q0FBd0M7QUFXeEMsU0FBZ0IsOEJBQThCLENBQzVDLGdCQUFtQztJQUVuQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUU5RCxNQUFNLE1BQU0sR0FBRyxnQkFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBYkQsd0VBYUM7QUFFRCxNQUFNLFdBQVcsR0FBdUMsRUFBRSxDQUFDO0FBRXBELEtBQUssVUFBVSxjQUFjLENBQ2xDLFdBQW1CLEVBQ25CLFVBQXlCLEVBQ3pCLFFBQXdCLEVBQ3hCLE1BQWMsRUFDZCxTQUFtQjtJQUVuQixNQUFNLGNBQWMsR0FBRyxjQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRWpELElBQUksV0FBVyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1FBQy9CLE9BQU8sV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ3BDO0lBRUQsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLEdBQUcsT0FBTyxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQy9ELFdBQVcsRUFDWCxjQUFjLENBQ2YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxlQUFlLEdBQWlCO1FBQ3BDLEdBQUcsWUFBWTtRQUNmLEdBQUcsZUFBZTtLQUNuQixDQUFDO0lBRUYsTUFBTSxvQkFBb0IsR0FBRyx5REFBMkIsQ0FDdEQsZUFBZSxFQUNmLFVBQVUsQ0FDWCxDQUFDO0lBRUYsTUFBTSxvQkFBb0IsR0FBRyx5REFBMkIsQ0FDdEQsZUFBZSxFQUNmLFVBQVUsRUFDVixRQUFRLENBQ1QsQ0FBQztJQUVGLE1BQU0sb0JBQW9CLEdBQUc7UUFDM0IsR0FBRyxvQkFBb0I7UUFDdkIsR0FBRyxvQkFBb0I7S0FDeEIsQ0FBQztJQUVGLE1BQU0sU0FBUyxHQUFHLE1BQU0saUNBQW1CLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sZ0JBQWdCLEdBQUcscUJBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTNELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLFNBQVMsYUFBYSxDQUFDLENBQUM7SUFDMUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLGdCQUFnQixxQkFBcUIsQ0FBQyxDQUFDO0lBRXpELE1BQU0sV0FBVyxHQUFHO1FBQ2xCLElBQUk7UUFDSixTQUFTO1FBQ1QsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtLQUNyQixDQUFDO0lBRUYsV0FBVyxDQUFDLGNBQWMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztJQUUxQyxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBeERELHdDQXdEQyJ9 |
export declare function hashStrings(strings: string | string[]): string; | ||
export declare function getPackageRoot(cwd: string): Promise<string>; | ||
export declare function nameAtVersion(name: string, version: string): string; | ||
//# sourceMappingURL=helpers.d.ts.map | ||
//# sourceMappingURL=helpers.d.ts.map |
"use strict"; | ||
var __importDefault = | ||
(this && this.__importDefault) || | ||
function(mod) { | ||
return mod && mod.__esModule ? mod : { default: mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const path = require("path"); | ||
const crypto = require("crypto"); | ||
const findUp = require("find-up"); | ||
const path_1 = __importDefault(require("path")); | ||
const crypto_1 = __importDefault(require("crypto")); | ||
const find_up_1 = __importDefault(require("find-up")); | ||
function hashStrings(strings) { | ||
const hasher = crypto.createHash("sha1"); | ||
const anArray = typeof strings === "string" ? [strings] : strings; | ||
const elements = [...anArray]; | ||
elements.sort((a, b) => a.localeCompare(b)); | ||
elements.forEach(element => hasher.update(element)); | ||
return hasher.digest("hex"); | ||
const hasher = crypto_1.default.createHash("sha1"); | ||
const anArray = typeof strings === "string" ? [strings] : strings; | ||
const elements = [...anArray]; | ||
elements.sort((a, b) => a.localeCompare(b)); | ||
elements.forEach(element => hasher.update(element)); | ||
return hasher.digest("hex"); | ||
} | ||
exports.hashStrings = hashStrings; | ||
async function getPackageRoot(cwd) { | ||
const packageRoot = await findUp("package.json", { cwd }); | ||
if (!packageRoot) { | ||
throw new Error(`Could not find package.json inside ${cwd}.`); | ||
} | ||
return path.dirname(packageRoot); | ||
const packageRoot = await find_up_1.default("package.json", { cwd }); | ||
if (!packageRoot) { | ||
throw new Error(`Could not find package.json inside ${cwd}.`); | ||
} | ||
return path_1.default.dirname(packageRoot); | ||
} | ||
exports.getPackageRoot = getPackageRoot; | ||
function nameAtVersion(name, version) { | ||
return `${name}@${version}`; | ||
return `${name}@${version}`; | ||
} | ||
exports.nameAtVersion = nameAtVersion; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkJBQTZCO0FBQzdCLGlDQUFpQztBQUNqQyxrQ0FBa0M7QUFFbEMsU0FBZ0IsV0FBVyxDQUFDLE9BQTBCO0lBQ3BELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFekMsTUFBTSxPQUFPLEdBQUcsT0FBTyxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDbEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUVwRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQVRELGtDQVNDO0FBRU0sS0FBSyxVQUFVLGNBQWMsQ0FBQyxHQUFXO0lBQzlDLE1BQU0sV0FBVyxHQUFHLE1BQU0sTUFBTSxDQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFFMUQsSUFBSSxDQUFDLFdBQVcsRUFBRTtRQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0tBQy9EO0lBRUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ25DLENBQUM7QUFSRCx3Q0FRQztBQUVELFNBQWdCLGFBQWEsQ0FBQyxJQUFZLEVBQUUsT0FBZTtJQUN6RCxPQUFPLEdBQUcsSUFBSSxJQUFJLE9BQU8sRUFBRSxDQUFDO0FBQzlCLENBQUM7QUFGRCxzQ0FFQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0RBQXdCO0FBQ3hCLG9EQUE0QjtBQUM1QixzREFBNkI7QUFFN0IsU0FBZ0IsV0FBVyxDQUFDLE9BQTBCO0lBQ3BELE1BQU0sTUFBTSxHQUFHLGdCQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXpDLE1BQU0sT0FBTyxHQUFHLE9BQU8sT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ2xFLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUM5QixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFFcEQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzlCLENBQUM7QUFURCxrQ0FTQztBQUVNLEtBQUssVUFBVSxjQUFjLENBQUMsR0FBVztJQUM5QyxNQUFNLFdBQVcsR0FBRyxNQUFNLGlCQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUUxRCxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLEdBQUcsR0FBRyxDQUFDLENBQUM7S0FDL0Q7SUFFRCxPQUFPLGNBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDbkMsQ0FBQztBQVJELHdDQVFDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLElBQVksRUFBRSxPQUFlO0lBQ3pELE9BQU8sR0FBRyxJQUFJLElBQUksT0FBTyxFQUFFLENBQUM7QUFDOUIsQ0FBQztBQUZELHNDQUVDIn0= |
@@ -0,5 +1,6 @@ | ||
import { Logger } from "backfill-logger"; | ||
import { PackageHashInfo } from "./hashOfPackage"; | ||
import { WorkspaceInfo } from "./yarnWorkspaces"; | ||
export interface IHasher { | ||
createPackageHash: () => Promise<string>; | ||
createPackageHash: (salt: string) => Promise<string>; | ||
hashOfOutput: () => Promise<string>; | ||
@@ -10,12 +11,14 @@ } | ||
private options; | ||
private buildCommandSignature; | ||
private logger; | ||
private packageRoot; | ||
private outputGlob; | ||
private hashGlobs; | ||
constructor(options: { | ||
packageRoot: string; | ||
outputGlob: string[]; | ||
}, buildCommandSignature: string); | ||
createPackageHash(): Promise<string>; | ||
hashGlobs: string[]; | ||
}, logger: Logger); | ||
createPackageHash(salt: string): Promise<string>; | ||
hashOfOutput(): Promise<string>; | ||
} | ||
//# sourceMappingURL=index.d.ts.map |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const backfill_logger_1 = require("backfill-logger"); | ||
const hashOfFiles_1 = require("./hashOfFiles"); | ||
@@ -27,10 +26,11 @@ const hashOfPackage_1 = require("./hashOfPackage"); | ||
class Hasher { | ||
constructor(options, buildCommandSignature) { | ||
constructor(options, logger) { | ||
this.options = options; | ||
this.buildCommandSignature = buildCommandSignature; | ||
this.logger = logger; | ||
this.packageRoot = this.options.packageRoot; | ||
this.outputGlob = this.options.outputGlob; | ||
this.hashGlobs = this.options.hashGlobs; | ||
} | ||
async createPackageHash() { | ||
backfill_logger_1.logger.profile("hasher:calculateHash"); | ||
async createPackageHash(salt) { | ||
const tracer = this.logger.setTime("hashTime"); | ||
const packageRoot = await helpers_1.getPackageRoot(this.packageRoot); | ||
@@ -46,3 +46,3 @@ const yarnLock = await yarnLock_1.parseLockFile(packageRoot); | ||
} | ||
const packageHash = await hashOfPackage_1.getPackageHash(packageRoot, workspaces, yarnLock); | ||
const packageHash = await hashOfPackage_1.getPackageHash(packageRoot, workspaces, yarnLock, this.logger, this.hashGlobs); | ||
addToQueue(packageHash.internalDependencies, queue, done, workspaces); | ||
@@ -52,12 +52,9 @@ done.push(packageHash); | ||
const internalPackagesHash = hashOfPackage_1.generateHashOfInternalPackages(done); | ||
const buildCommandHash = helpers_1.hashStrings(this.buildCommandSignature); | ||
const combinedHash = helpers_1.hashStrings([ | ||
internalPackagesHash, | ||
buildCommandHash | ||
]); | ||
backfill_logger_1.logger.verbose(`Hash of internal packages: ${internalPackagesHash}`); | ||
backfill_logger_1.logger.verbose(`Hash of build command: ${buildCommandHash}`); | ||
backfill_logger_1.logger.verbose(`Combined hash: ${combinedHash}`); | ||
backfill_logger_1.logger.profile("hasher:calculateHash"); | ||
backfill_logger_1.logger.setHash(combinedHash); | ||
const buildCommandHash = helpers_1.hashStrings(salt); | ||
const combinedHash = helpers_1.hashStrings([internalPackagesHash, buildCommandHash]); | ||
this.logger.verbose(`Hash of internal packages: ${internalPackagesHash}`); | ||
this.logger.verbose(`Hash of build command: ${buildCommandHash}`); | ||
this.logger.verbose(`Combined hash: ${combinedHash}`); | ||
tracer.stop(); | ||
this.logger.setHash(combinedHash); | ||
return combinedHash; | ||
@@ -70,2 +67,2 @@ } | ||
exports.Hasher = Hasher; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxREFBeUM7QUFFekMsK0NBQW9EO0FBQ3BELG1EQUl5QjtBQUN6Qix1Q0FBd0Q7QUFDeEQseUNBQTJDO0FBQzNDLHFEQUkwQjtBQU8xQixTQUFTLE1BQU0sQ0FBQyxJQUF1QixFQUFFLFdBQW1CO0lBQzFELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQsU0FBUyxTQUFTLENBQUMsS0FBZSxFQUFFLFdBQW1CO0lBQ3JELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELFNBQWdCLFVBQVUsQ0FDeEIsZUFBeUIsRUFDekIsS0FBZSxFQUNmLElBQXVCLEVBQ3ZCLFVBQXlCO0lBRXpCLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDN0IsTUFBTSxjQUFjLEdBQUcsa0NBQWlCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNELElBQUksY0FBYyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsRUFBRTtnQkFDNUQsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUM1QjtTQUNGO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBZkQsZ0NBZUM7QUFFRCxNQUFhLE1BQU07SUFJakIsWUFDVSxPQUFzRCxFQUN0RCxxQkFBNkI7UUFEN0IsWUFBTyxHQUFQLE9BQU8sQ0FBK0M7UUFDdEQsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFRO1FBRXJDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDNUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztJQUM1QyxDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQjtRQUM1Qix3QkFBTSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRXZDLE1BQU0sV0FBVyxHQUFHLE1BQU0sd0JBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0QsTUFBTSxRQUFRLEdBQUcsTUFBTSx3QkFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sVUFBVSxHQUFHLGtDQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWxELE1BQU0sS0FBSyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsTUFBTSxJQUFJLEdBQXNCLEVBQUUsQ0FBQztRQUVuQyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUVsQyxJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNoQixTQUFTO2FBQ1Y7WUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLDhCQUFjLENBQ3RDLFdBQVcsRUFDWCxVQUFVLEVBQ1YsUUFBUSxDQUNULENBQUM7WUFFRixVQUFVLENBQUMsV0FBVyxDQUFDLG9CQUFvQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFFdEUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN4QjtRQUVELE1BQU0sb0JBQW9CLEdBQUcsOENBQThCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEUsTUFBTSxnQkFBZ0IsR0FBRyxxQkFBVyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sWUFBWSxHQUFHLHFCQUFXLENBQUM7WUFDL0Isb0JBQW9CO1lBQ3BCLGdCQUFnQjtTQUNqQixDQUFDLENBQUM7UUFFSCx3QkFBTSxDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLHdCQUFNLENBQUMsT0FBTyxDQUFDLDBCQUEwQixnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDN0Qsd0JBQU0sQ0FBQyxPQUFPLENBQUMsa0JBQWtCLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFakQsd0JBQU0sQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN2Qyx3QkFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUU3QixPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQVk7UUFDdkIsT0FBTyxpQ0FBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0Y7QUE1REQsd0JBNERDIn0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFFQSwrQ0FBb0Q7QUFDcEQsbURBSXlCO0FBQ3pCLHVDQUF3RDtBQUN4RCx5Q0FBMkM7QUFDM0MscURBSTBCO0FBTzFCLFNBQVMsTUFBTSxDQUFDLElBQXVCLEVBQUUsV0FBbUI7SUFDMUQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO0FBQ2hFLENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxLQUFlLEVBQUUsV0FBbUI7SUFDckQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUN4QixlQUF5QixFQUN6QixLQUFlLEVBQ2YsSUFBdUIsRUFDdkIsVUFBeUI7SUFFekIsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM3QixNQUFNLGNBQWMsR0FBRyxrQ0FBaUIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFM0QsSUFBSSxjQUFjLEVBQUU7WUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxFQUFFO2dCQUM1RCxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQzVCO1NBQ0Y7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFmRCxnQ0FlQztBQUVELE1BQWEsTUFBTTtJQUtqQixZQUNVLE9BSVAsRUFDTyxNQUFjO1FBTGQsWUFBTyxHQUFQLE9BQU8sQ0FJZDtRQUNPLFdBQU0sR0FBTixNQUFNLENBQVE7UUFFdEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUM1QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUVNLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFZO1FBQ3pDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sV0FBVyxHQUFHLE1BQU0sd0JBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0QsTUFBTSxRQUFRLEdBQUcsTUFBTSx3QkFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sVUFBVSxHQUFHLGtDQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWxELE1BQU0sS0FBSyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUIsTUFBTSxJQUFJLEdBQXNCLEVBQUUsQ0FBQztRQUVuQyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUVsQyxJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNoQixTQUFTO2FBQ1Y7WUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLDhCQUFjLENBQ3RDLFdBQVcsRUFDWCxVQUFVLEVBQ1YsUUFBUSxFQUNSLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FDZixDQUFDO1lBRUYsVUFBVSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRXRFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDeEI7UUFFRCxNQUFNLG9CQUFvQixHQUFHLDhDQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sZ0JBQWdCLEdBQUcscUJBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxNQUFNLFlBQVksR0FBRyxxQkFBVyxDQUFDLENBQUMsb0JBQW9CLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBRTNFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLDhCQUE4QixvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsMEJBQTBCLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUV0RCxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVsQyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRU0sS0FBSyxDQUFDLFlBQVk7UUFDdkIsT0FBTyxpQ0FBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0Y7QUFqRUQsd0JBaUVDIn0= |
import { ParsedYarnLock } from "./yarnLock"; | ||
import { WorkspaceInfo } from "./yarnWorkspaces"; | ||
export declare type Dependencies = { | ||
[key in string]: string; | ||
[key in string]: string; | ||
}; | ||
export declare type ExternalDependenciesQueue = { | ||
name: string; | ||
versionRange: string; | ||
name: string; | ||
versionRange: string; | ||
}[]; | ||
export declare function filterExternalDependencies(dependencies: Dependencies, workspaces: WorkspaceInfo): Dependencies; | ||
export declare function addToQueue(dependencies: Dependencies | undefined, done: string[], queue: [string, string][]): void; | ||
export declare function resolveExternalDependencies(allDependencies: Dependencies, workspaces: WorkspaceInfo, yarnLock: ParsedYarnLock): string[]; | ||
//# sourceMappingURL=resolveExternalDependencies.d.ts.map | ||
export declare function filterExternalDependencies( | ||
dependencies: Dependencies, | ||
workspaces: WorkspaceInfo | ||
): Dependencies; | ||
export declare function addToQueue( | ||
dependencies: Dependencies | undefined, | ||
done: string[], | ||
queue: [string, string][] | ||
): void; | ||
export declare function resolveExternalDependencies( | ||
allDependencies: Dependencies, | ||
workspaces: WorkspaceInfo, | ||
yarnLock: ParsedYarnLock | ||
): string[]; | ||
//# sourceMappingURL=resolveExternalDependencies.d.ts.map |
@@ -7,55 +7,70 @@ "use strict"; | ||
function filterExternalDependencies(dependencies, workspaces) { | ||
const workspacePackageNames = yarnWorkspaces_1.listOfWorkspacePackageNames(workspaces); | ||
const externalDependencies = {}; | ||
Object.entries(dependencies).forEach(([name, versionRange]) => { | ||
if (workspacePackageNames.indexOf(name) < 0) { | ||
externalDependencies[name] = versionRange; | ||
} | ||
}); | ||
return externalDependencies; | ||
const workspacePackageNames = yarnWorkspaces_1.listOfWorkspacePackageNames( | ||
workspaces | ||
); | ||
const externalDependencies = {}; | ||
Object.entries(dependencies).forEach(([name, versionRange]) => { | ||
if (workspacePackageNames.indexOf(name) < 0) { | ||
externalDependencies[name] = versionRange; | ||
} | ||
}); | ||
return externalDependencies; | ||
} | ||
exports.filterExternalDependencies = filterExternalDependencies; | ||
function isDone(done, key) { | ||
return done.indexOf(key) >= 0; | ||
return done.indexOf(key) >= 0; | ||
} | ||
function isInQueue(queue, key) { | ||
return Boolean(queue.find(([name, versionRange]) => helpers_1.nameAtVersion(name, versionRange) === key)); | ||
return Boolean( | ||
queue.find( | ||
([name, versionRange]) => | ||
helpers_1.nameAtVersion(name, versionRange) === key | ||
) | ||
); | ||
} | ||
function addToQueue(dependencies, done, queue) { | ||
if (dependencies) { | ||
Object.entries(dependencies).forEach(([name, versionRange]) => { | ||
const versionRangeSignature = helpers_1.nameAtVersion(name, versionRange); | ||
if (!isDone(done, versionRangeSignature) && | ||
!isInQueue(queue, versionRangeSignature)) { | ||
queue.push([name, versionRange]); | ||
} | ||
}); | ||
} | ||
if (dependencies) { | ||
Object.entries(dependencies).forEach(([name, versionRange]) => { | ||
const versionRangeSignature = helpers_1.nameAtVersion(name, versionRange); | ||
if ( | ||
!isDone(done, versionRangeSignature) && | ||
!isInQueue(queue, versionRangeSignature) | ||
) { | ||
queue.push([name, versionRange]); | ||
} | ||
}); | ||
} | ||
} | ||
exports.addToQueue = addToQueue; | ||
function resolveExternalDependencies(allDependencies, workspaces, yarnLock) { | ||
const externalDependencies = filterExternalDependencies(allDependencies, workspaces); | ||
const done = []; | ||
const doneRange = []; | ||
const queue = Object.entries(externalDependencies); | ||
while (queue.length > 0) { | ||
const next = queue.shift(); | ||
if (!next) { | ||
continue; | ||
} | ||
const [name, versionRange] = next; | ||
doneRange.push(helpers_1.nameAtVersion(name, versionRange)); | ||
const lockFileResult = yarnLock_1.queryLockFile(name, versionRange, yarnLock); | ||
if (lockFileResult) { | ||
const { version, dependencies } = lockFileResult; | ||
addToQueue(dependencies, doneRange, queue); | ||
done.push(helpers_1.nameAtVersion(name, version)); | ||
} | ||
else { | ||
done.push(helpers_1.nameAtVersion(name, versionRange)); | ||
} | ||
const externalDependencies = filterExternalDependencies( | ||
allDependencies, | ||
workspaces | ||
); | ||
const done = []; | ||
const doneRange = []; | ||
const queue = Object.entries(externalDependencies); | ||
while (queue.length > 0) { | ||
const next = queue.shift(); | ||
if (!next) { | ||
continue; | ||
} | ||
return done; | ||
const [name, versionRange] = next; | ||
doneRange.push(helpers_1.nameAtVersion(name, versionRange)); | ||
const lockFileResult = yarnLock_1.queryLockFile( | ||
name, | ||
versionRange, | ||
yarnLock | ||
); | ||
if (lockFileResult) { | ||
const { version, dependencies } = lockFileResult; | ||
addToQueue(dependencies, doneRange, queue); | ||
done.push(helpers_1.nameAtVersion(name, version)); | ||
} else { | ||
done.push(helpers_1.nameAtVersion(name, versionRange)); | ||
} | ||
} | ||
return done; | ||
} | ||
exports.resolveExternalDependencies = resolveExternalDependencies; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZUV4dGVybmFsRGVwZW5kZW5jaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Jlc29sdmVFeHRlcm5hbERlcGVuZGVuY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHVDQUEwQztBQUMxQyx5Q0FBMkQ7QUFDM0QscURBQThFO0FBUzlFLFNBQWdCLDBCQUEwQixDQUN4QyxZQUEwQixFQUMxQixVQUF5QjtJQUV6QixNQUFNLHFCQUFxQixHQUFHLDRDQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sb0JBQW9CLEdBQWlCLEVBQUUsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7UUFDNUQsSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQztTQUMzQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxvQkFBb0IsQ0FBQztBQUM5QixDQUFDO0FBZEQsZ0VBY0M7QUFFRCxTQUFTLE1BQU0sQ0FBQyxJQUFjLEVBQUUsR0FBVztJQUN6QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxLQUF5QixFQUFFLEdBQVc7SUFDdkQsT0FBTyxPQUFPLENBQ1osS0FBSyxDQUFDLElBQUksQ0FDUixDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsS0FBSyxHQUFHLENBQ3BFLENBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixVQUFVLENBQ3hCLFlBQXNDLEVBQ3RDLElBQWMsRUFDZCxLQUF5QjtJQUV6QixJQUFJLFlBQVksRUFBRTtRQUNoQixNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDNUQsTUFBTSxxQkFBcUIsR0FBRyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztZQUVoRSxJQUNFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQztnQkFDcEMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLHFCQUFxQixDQUFDLEVBQ3hDO2dCQUNBLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDO0FBakJELGdDQWlCQztBQUVELFNBQWdCLDJCQUEyQixDQUN6QyxlQUE2QixFQUM3QixVQUF5QixFQUN6QixRQUF3QjtJQUV4QixNQUFNLG9CQUFvQixHQUFHLDBCQUEwQixDQUNyRCxlQUFlLEVBQ2YsVUFBVSxDQUNYLENBQUM7SUFFRixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEIsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUVuRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsU0FBUztTQUNWO1FBRUQsTUFBTSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDbEMsU0FBUyxDQUFDLElBQUksQ0FBQyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRWxELE1BQU0sY0FBYyxHQUFHLHdCQUFhLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVuRSxJQUFJLGNBQWMsRUFBRTtZQUNsQixNQUFNLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxHQUFHLGNBQWMsQ0FBQztZQUVqRCxVQUFVLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDekM7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQWEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztTQUM5QztLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBckNELGtFQXFDQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZUV4dGVybmFsRGVwZW5kZW5jaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Jlc29sdmVFeHRlcm5hbERlcGVuZGVuY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHVDQUEwQztBQUMxQyx5Q0FBMkQ7QUFDM0QscURBQThFO0FBUzlFLFNBQWdCLDBCQUEwQixDQUN4QyxZQUEwQixFQUMxQixVQUF5QjtJQUV6QixNQUFNLHFCQUFxQixHQUFHLDRDQUEyQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sb0JBQW9CLEdBQWlCLEVBQUUsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7UUFDNUQsSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQztTQUMzQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxvQkFBb0IsQ0FBQztBQUM5QixDQUFDO0FBZEQsZ0VBY0M7QUFFRCxTQUFTLE1BQU0sQ0FBQyxJQUFjLEVBQUUsR0FBVztJQUN6QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFFRCxTQUFTLFNBQVMsQ0FBQyxLQUF5QixFQUFFLEdBQVc7SUFDdkQsT0FBTyxPQUFPLENBQ1osS0FBSyxDQUFDLElBQUksQ0FDUixDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsS0FBSyxHQUFHLENBQ3BFLENBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixVQUFVLENBQ3hCLFlBQXNDLEVBQ3RDLElBQWMsRUFDZCxLQUF5QjtJQUV6QixJQUFJLFlBQVksRUFBRTtRQUNoQixNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxFQUFFLEVBQUU7WUFDNUQsTUFBTSxxQkFBcUIsR0FBRyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztZQUVoRSxJQUNFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQztnQkFDcEMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLHFCQUFxQixDQUFDLEVBQ3hDO2dCQUNBLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDO0FBakJELGdDQWlCQztBQUVELFNBQWdCLDJCQUEyQixDQUN6QyxlQUE2QixFQUM3QixVQUF5QixFQUN6QixRQUF3QjtJQUV4QixNQUFNLG9CQUFvQixHQUFHLDBCQUEwQixDQUNyRCxlQUFlLEVBQ2YsVUFBVSxDQUNYLENBQUM7SUFFRixNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7SUFDaEIsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUVuRCxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsU0FBUztTQUNWO1FBRUQsTUFBTSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDbEMsU0FBUyxDQUFDLElBQUksQ0FBQyx1QkFBYSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRWxELE1BQU0sY0FBYyxHQUFHLHdCQUFhLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVuRSxJQUFJLGNBQWMsRUFBRTtZQUNsQixNQUFNLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxHQUFHLGNBQWMsQ0FBQztZQUVqRCxVQUFVLENBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDekM7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQWEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztTQUM5QztLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBckNELGtFQXFDQyJ9 |
import { WorkspaceInfo } from "./yarnWorkspaces"; | ||
export declare type Dependencies = { | ||
[key in string]: string; | ||
[key in string]: string; | ||
}; | ||
export declare function filterInternalDependencies(dependencies: Dependencies, workspaces: WorkspaceInfo): string[]; | ||
export declare function resolveInternalDependencies(allDependencies: Dependencies, workspaces: WorkspaceInfo): string[]; | ||
//# sourceMappingURL=resolveInternalDependencies.d.ts.map | ||
export declare function filterInternalDependencies( | ||
dependencies: Dependencies, | ||
workspaces: WorkspaceInfo | ||
): string[]; | ||
export declare function resolveInternalDependencies( | ||
allDependencies: Dependencies, | ||
workspaces: WorkspaceInfo | ||
): string[]; | ||
//# sourceMappingURL=resolveInternalDependencies.d.ts.map |
@@ -5,11 +5,18 @@ "use strict"; | ||
function filterInternalDependencies(dependencies, workspaces) { | ||
const workspacePackageNames = yarnWorkspaces_1.listOfWorkspacePackageNames(workspaces); | ||
return Object.keys(dependencies).filter(dependency => workspacePackageNames.indexOf(dependency) >= 0); | ||
const workspacePackageNames = yarnWorkspaces_1.listOfWorkspacePackageNames( | ||
workspaces | ||
); | ||
return Object.keys(dependencies).filter( | ||
dependency => workspacePackageNames.indexOf(dependency) >= 0 | ||
); | ||
} | ||
exports.filterInternalDependencies = filterInternalDependencies; | ||
function resolveInternalDependencies(allDependencies, workspaces) { | ||
const dependencyNames = filterInternalDependencies(allDependencies, workspaces); | ||
return dependencyNames; | ||
const dependencyNames = filterInternalDependencies( | ||
allDependencies, | ||
workspaces | ||
); | ||
return dependencyNames; | ||
} | ||
exports.resolveInternalDependencies = resolveInternalDependencies; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZUludGVybmFsRGVwZW5kZW5jaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Jlc29sdmVJbnRlcm5hbERlcGVuZGVuY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFEQUE4RTtBQUk5RSxTQUFnQiwwQkFBMEIsQ0FDeEMsWUFBMEIsRUFDMUIsVUFBeUI7SUFFekIsTUFBTSxxQkFBcUIsR0FBRyw0Q0FBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0RSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUNyQyxVQUFVLENBQUMsRUFBRSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQzdELENBQUM7QUFDSixDQUFDO0FBUkQsZ0VBUUM7QUFFRCxTQUFnQiwyQkFBMkIsQ0FDekMsZUFBNkIsRUFDN0IsVUFBeUI7SUFFekIsTUFBTSxlQUFlLEdBQUcsMEJBQTBCLENBQ2hELGVBQWUsRUFDZixVQUFVLENBQ1gsQ0FBQztJQUVGLE9BQU8sZUFBZSxDQUFDO0FBQ3pCLENBQUM7QUFWRCxrRUFVQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZUludGVybmFsRGVwZW5kZW5jaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Jlc29sdmVJbnRlcm5hbERlcGVuZGVuY2llcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFEQUE4RTtBQUk5RSxTQUFnQiwwQkFBMEIsQ0FDeEMsWUFBMEIsRUFDMUIsVUFBeUI7SUFFekIsTUFBTSxxQkFBcUIsR0FBRyw0Q0FBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0RSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUNyQyxVQUFVLENBQUMsRUFBRSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQzdELENBQUM7QUFDSixDQUFDO0FBUkQsZ0VBUUM7QUFFRCxTQUFnQiwyQkFBMkIsQ0FDekMsZUFBNkIsRUFDN0IsVUFBeUI7SUFFekIsTUFBTSxlQUFlLEdBQUcsMEJBQTBCLENBQ2hELGVBQWUsRUFDZixVQUFVLENBQ1gsQ0FBQztJQUVGLE9BQU8sZUFBZSxDQUFDO0FBQ3pCLENBQUM7QUFWRCxrRUFVQyJ9 |
import { Dependencies } from "./resolveExternalDependencies"; | ||
declare type YarnLockDependency = { | ||
version: string; | ||
dependencies?: Dependencies; | ||
version: string; | ||
dependencies?: Dependencies; | ||
}; | ||
export declare type ParsedYarnLock = { | ||
type: "success" | "merge" | "conflict"; | ||
object: { | ||
[key in string]: YarnLockDependency; | ||
}; | ||
type: "success" | "merge" | "conflict"; | ||
object: { | ||
[key in string]: YarnLockDependency; | ||
}; | ||
}; | ||
export declare function parseLockFile(packageRoot: string): Promise<ParsedYarnLock>; | ||
export declare function queryLockFile(name: string, versionRange: string, yarnLock: ParsedYarnLock): YarnLockDependency; | ||
export declare function parseLockFile( | ||
packageRoot: string | ||
): Promise<ParsedYarnLock>; | ||
export declare function queryLockFile( | ||
name: string, | ||
versionRange: string, | ||
yarnLock: ParsedYarnLock | ||
): YarnLockDependency; | ||
export {}; | ||
//# sourceMappingURL=yarnLock.d.ts.map | ||
//# sourceMappingURL=yarnLock.d.ts.map |
"use strict"; | ||
var __importDefault = | ||
(this && this.__importDefault) || | ||
function(mod) { | ||
return mod && mod.__esModule ? mod : { default: mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const findUp = require("find-up"); | ||
const fs = require("fs-extra"); | ||
const lockfile = require("@yarnpkg/lockfile"); | ||
const find_up_1 = __importDefault(require("find-up")); | ||
const fs_extra_1 = __importDefault(require("fs-extra")); | ||
const lockfile_1 = require("@yarnpkg/lockfile"); | ||
const helpers_1 = require("./helpers"); | ||
const memoization = {}; | ||
async function parseLockFile(packageRoot) { | ||
const yarnLockPath = await findUp("yarn.lock", { cwd: packageRoot }); | ||
if (!yarnLockPath) { | ||
throw new Error("Could not find a yarn.lock file. The hashing algorithm requires you to use yarn."); | ||
} | ||
const yarnLock = fs.readFileSync(yarnLockPath).toString(); | ||
return lockfile.parse(yarnLock); | ||
const yarnLockPath = await find_up_1.default("yarn.lock", { | ||
cwd: packageRoot | ||
}); | ||
if (!yarnLockPath) { | ||
throw new Error( | ||
"Could not find a yarn.lock file. The hashing algorithm requires you to use yarn." | ||
); | ||
} | ||
if (memoization[yarnLockPath]) { | ||
return memoization[yarnLockPath]; | ||
} | ||
const yarnLock = fs_extra_1.default.readFileSync(yarnLockPath).toString(); | ||
const parsed = lockfile_1.parse(yarnLock); | ||
memoization[yarnLockPath] = parsed; | ||
return parsed; | ||
} | ||
exports.parseLockFile = parseLockFile; | ||
function queryLockFile(name, versionRange, yarnLock) { | ||
const versionRangeSignature = helpers_1.nameAtVersion(name, versionRange); | ||
return yarnLock.object[versionRangeSignature]; | ||
const versionRangeSignature = helpers_1.nameAtVersion(name, versionRange); | ||
return yarnLock.object[versionRangeSignature]; | ||
} | ||
exports.queryLockFile = queryLockFile; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybkxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMveWFybkxvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsK0JBQStCO0FBQy9CLDhDQUE4QztBQUc5Qyx1Q0FBMEM7QUFjbkMsS0FBSyxVQUFVLGFBQWEsQ0FDakMsV0FBbUI7SUFFbkIsTUFBTSxZQUFZLEdBQUcsTUFBTSxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFckUsSUFBSSxDQUFDLFlBQVksRUFBRTtRQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLGtGQUFrRixDQUNuRixDQUFDO0tBQ0g7SUFFRCxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBYkQsc0NBYUM7QUFFRCxTQUFnQixhQUFhLENBQzNCLElBQVksRUFDWixZQUFvQixFQUNwQixRQUF3QjtJQUV4QixNQUFNLHFCQUFxQixHQUFHLHVCQUFhLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2hFLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBQ2hELENBQUM7QUFQRCxzQ0FPQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybkxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMveWFybkxvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzREFBNkI7QUFDN0Isd0RBQTBCO0FBQzFCLGdEQUEwQztBQUcxQyx1Q0FBMEM7QUFjMUMsTUFBTSxXQUFXLEdBQXVDLEVBQUUsQ0FBQztBQUVwRCxLQUFLLFVBQVUsYUFBYSxDQUNqQyxXQUFtQjtJQUVuQixNQUFNLFlBQVksR0FBRyxNQUFNLGlCQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFFckUsSUFBSSxDQUFDLFlBQVksRUFBRTtRQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLGtGQUFrRixDQUNuRixDQUFDO0tBQ0g7SUFFRCxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUM3QixPQUFPLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztLQUNsQztJQUVELE1BQU0sUUFBUSxHQUFHLGtCQUFFLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFELE1BQU0sTUFBTSxHQUFHLGdCQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFL0IsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHLE1BQU0sQ0FBQztJQUVuQyxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBckJELHNDQXFCQztBQUVELFNBQWdCLGFBQWEsQ0FDM0IsSUFBWSxFQUNaLFlBQW9CLEVBQ3BCLFFBQXdCO0lBRXhCLE1BQU0scUJBQXFCLEdBQUcsdUJBQWEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDaEUsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFDaEQsQ0FBQztBQVBELHNDQU9DIn0= |
@@ -5,3 +5,3 @@ export declare type WorkspaceInfo = { | ||
}[]; | ||
export declare function getWorkspacePackageInfo(workspacePaths?: string[]): WorkspaceInfo; | ||
export declare function getWorkspacePackageInfo(workspacePaths: string[]): WorkspaceInfo; | ||
export declare function listOfWorkspacePackageNames(workspaces: WorkspaceInfo): string[]; | ||
@@ -8,0 +8,0 @@ export declare function findWorkspacePath(workspaces: WorkspaceInfo, packageName: string): string | undefined; |
"use strict"; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const path = require("path"); | ||
const fg = require("fast-glob"); | ||
const findWorkspaceRoot = require("find-yarn-workspace-root"); | ||
const path_1 = __importDefault(require("path")); | ||
const fast_glob_1 = __importDefault(require("fast-glob")); | ||
const find_yarn_workspace_root_1 = __importDefault(require("find-yarn-workspace-root")); | ||
function getYarnWorkspaceRoot(cwd) { | ||
const yarnWorkspacesRoot = findWorkspaceRoot(cwd); | ||
const yarnWorkspacesRoot = find_yarn_workspace_root_1.default(cwd); | ||
if (!yarnWorkspacesRoot) { | ||
@@ -14,3 +17,3 @@ throw new Error("Could not find yarn workspaces root"); | ||
function getRootPackageJson(yarnWorkspacesRoot) { | ||
const packageJson = require(path.join(yarnWorkspacesRoot, "package.json")); | ||
const packageJson = require(path_1.default.join(yarnWorkspacesRoot, "package.json")); | ||
if (!packageJson) { | ||
@@ -32,3 +35,3 @@ throw new Error("Could not load package.json from workspaces root"); | ||
function getPackagePaths(yarnWorkspacesRoot, packages) { | ||
const packagePaths = packages.map(glob => fg.sync(glob, { | ||
const packagePaths = packages.map(glob => fast_glob_1.default.sync(glob, { | ||
cwd: yarnWorkspacesRoot, | ||
@@ -38,5 +41,11 @@ onlyDirectories: true, | ||
})); | ||
return packagePaths.reduce((acc, cur) => { | ||
/* | ||
* fast-glob returns unix style path, | ||
* so we use path.join to align the path with the platform. | ||
*/ | ||
return packagePaths | ||
.reduce((acc, cur) => { | ||
return [...acc, ...cur]; | ||
}); | ||
}) | ||
.map(p => path_1.default.join(p)); | ||
} | ||
@@ -50,3 +59,3 @@ function getWorkspacePackageInfo(workspacePaths) { | ||
try { | ||
name = require(path.join(workspacePath, "package.json")).name; | ||
name = require(path_1.default.join(workspacePath, "package.json")).name; | ||
} | ||
@@ -91,2 +100,2 @@ catch { | ||
exports.getYarnWorkspaces = getYarnWorkspaces; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybldvcmtzcGFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMveWFybldvcmtzcGFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2QkFBNkI7QUFDN0IsZ0NBQWdDO0FBRWhDLDhEQUE4RDtBQWE5RCxTQUFTLG9CQUFvQixDQUFDLEdBQVc7SUFDdkMsTUFBTSxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsRCxJQUFJLENBQUMsa0JBQWtCLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsT0FBTyxrQkFBa0IsQ0FBQztBQUM1QixDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxrQkFBMEI7SUFDcEQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUUzRSxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztLQUNyRTtJQUVELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxXQUFrQztJQUNyRCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsV0FBVyxDQUFDO0lBRW5DLElBQUksVUFBVSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDM0MsT0FBTyxVQUFVLENBQUM7S0FDbkI7SUFFRCxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxDQUFDLENBQUM7S0FDdkU7SUFFRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7QUFDN0IsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUN0QixrQkFBMEIsRUFDMUIsUUFBa0I7SUFFbEIsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUN2QyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNaLEdBQUcsRUFBRSxrQkFBa0I7UUFDdkIsZUFBZSxFQUFFLElBQUk7UUFDckIsUUFBUSxFQUFFLElBQUk7S0FDZixDQUFDLENBQ0gsQ0FBQztJQUVGLE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUN0QyxPQUFPLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxTQUFnQix1QkFBdUIsQ0FDckMsY0FBeUI7SUFFekIsSUFBSSxDQUFDLGNBQWMsRUFBRTtRQUNuQixPQUFPLEVBQUUsQ0FBQztLQUNYO0lBRUQsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFnQixDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsRUFBRTtRQUN6RSxJQUFJLElBQVksQ0FBQztRQUVqQixJQUFJO1lBQ0YsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUMvRDtRQUFDLE1BQU07WUFDTixPQUFPLFdBQVcsQ0FBQztTQUNwQjtRQUVELE9BQU87WUFDTCxHQUFHLFdBQVc7WUFDZDtnQkFDRSxJQUFJO2dCQUNKLElBQUksRUFBRSxhQUFhO2FBQ3BCO1NBQ0YsQ0FBQztJQUNKLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNULENBQUM7QUF4QkQsMERBd0JDO0FBRUQsU0FBZ0IsMkJBQTJCLENBQ3pDLFVBQXlCO0lBRXpCLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFKRCxrRUFJQztBQUVELFNBQWdCLGlCQUFpQixDQUMvQixVQUF5QixFQUN6QixXQUFtQjtJQUVuQixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxDQUFDO0lBRXRFLElBQUksU0FBUyxFQUFFO1FBQ2IsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDO0tBQ3ZCO0FBQ0gsQ0FBQztBQVRELDhDQVNDO0FBRUQsU0FBZ0IsaUJBQWlCLENBQUMsR0FBVztJQUMzQyxJQUFJO1FBQ0YsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyRCxNQUFNLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQy9ELE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM5QyxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDbkUsTUFBTSxhQUFhLEdBQUcsdUJBQXVCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFNUQsT0FBTyxhQUFhLENBQUM7S0FDdEI7SUFBQyxNQUFNO1FBQ04sT0FBTyxFQUFFLENBQUM7S0FDWDtBQUNILENBQUM7QUFaRCw4Q0FZQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWFybldvcmtzcGFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMveWFybldvcmtzcGFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnREFBd0I7QUFDeEIsMERBQTJCO0FBQzNCLHdGQUF5RDtBQWF6RCxTQUFTLG9CQUFvQixDQUFDLEdBQVc7SUFDdkMsTUFBTSxrQkFBa0IsR0FBRyxrQ0FBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsRCxJQUFJLENBQUMsa0JBQWtCLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0tBQ3hEO0lBRUQsT0FBTyxrQkFBa0IsQ0FBQztBQUM1QixDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxrQkFBMEI7SUFDcEQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUUzRSxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztLQUNyRTtJQUVELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxXQUFrQztJQUNyRCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsV0FBVyxDQUFDO0lBRW5DLElBQUksVUFBVSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDM0MsT0FBTyxVQUFVLENBQUM7S0FDbkI7SUFFRCxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRTtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxDQUFDLENBQUM7S0FDdkU7SUFFRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7QUFDN0IsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUN0QixrQkFBMEIsRUFDMUIsUUFBa0I7SUFFbEIsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUN2QyxtQkFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDWixHQUFHLEVBQUUsa0JBQWtCO1FBQ3ZCLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQyxDQUNILENBQUM7SUFFRjs7O09BR0c7SUFDSCxPQUFPLFlBQVk7U0FDaEIsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ25CLE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUMsQ0FBQztTQUNELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM1QixDQUFDO0FBRUQsU0FBZ0IsdUJBQXVCLENBQ3JDLGNBQXdCO0lBRXhCLElBQUksQ0FBQyxjQUFjLEVBQUU7UUFDbkIsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUVELE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBZ0IsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLEVBQUU7UUFDekUsSUFBSSxJQUFZLENBQUM7UUFFakIsSUFBSTtZQUNGLElBQUksR0FBRyxPQUFPLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDL0Q7UUFBQyxNQUFNO1lBQ04sT0FBTyxXQUFXLENBQUM7U0FDcEI7UUFFRCxPQUFPO1lBQ0wsR0FBRyxXQUFXO1lBQ2Q7Z0JBQ0UsSUFBSTtnQkFDSixJQUFJLEVBQUUsYUFBYTthQUNwQjtTQUNGLENBQUM7SUFDSixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDO0FBeEJELDBEQXdCQztBQUVELFNBQWdCLDJCQUEyQixDQUN6QyxVQUF5QjtJQUV6QixPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM1QyxDQUFDO0FBSkQsa0VBSUM7QUFFRCxTQUFnQixpQkFBaUIsQ0FDL0IsVUFBeUIsRUFDekIsV0FBbUI7SUFFbkIsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsQ0FBQztJQUV0RSxJQUFJLFNBQVMsRUFBRTtRQUNiLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQztLQUN2QjtBQUNILENBQUM7QUFURCw4Q0FTQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLEdBQVc7SUFDM0MsSUFBSTtRQUNGLE1BQU0sa0JBQWtCLEdBQUcsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckQsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUMvRCxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDOUMsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sYUFBYSxHQUFHLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTVELE9BQU8sYUFBYSxDQUFDO0tBQ3RCO0lBQUMsTUFBTTtRQUNOLE9BQU8sRUFBRSxDQUFDO0tBQ1g7QUFDSCxDQUFDO0FBWkQsOENBWUMifQ== |
@@ -10,3 +10,3 @@ { | ||
}, | ||
"version": "3.1.0-alpha.0", | ||
"version": "4.0.0", | ||
"main": "lib/index.js", | ||
@@ -21,15 +21,14 @@ "scripts": { | ||
"@yarnpkg/lockfile": "^1.1.0", | ||
"backfill-config": "^3.0.0-alpha.0", | ||
"backfill-logger": "^3.0.0-alpha.0", | ||
"backfill-config": "^4.0.0", | ||
"backfill-logger": "^4.0.0", | ||
"fast-glob": "^3.0.4", | ||
"find-up": "^4.1.0", | ||
"find-yarn-workspace-root": "^1.2.1", | ||
"fs-extra": "^8.1.0", | ||
"normalize-path": "^3.0.0" | ||
"fs-extra": "^8.1.0" | ||
}, | ||
"devDependencies": { | ||
"@types/fs-extra": "^8.0.0", | ||
"@types/normalize-path": "^3.0.0", | ||
"@types/yarnpkg__lockfile": "^1.1.3", | ||
"backfill-utils-test": "^3.0.0-alpha.0", | ||
"backfill-utils-tsconfig": "^2.0.3", | ||
"backfill-utils-test": "^4.0.0", | ||
"backfill-utils-tsconfig": "^4.0.0", | ||
"jest": "^24.0.12", | ||
@@ -39,3 +38,3 @@ "ts-jest": "^25.1.0", | ||
}, | ||
"gitHead": "ff8429c51760c2fbcf9324a707226459489ac19d" | ||
"gitHead": "895732a868c0d856f623a2e7ce668194a9c162c0" | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
7
1
5
38048
19
552
1
+ Addedfast-glob@^3.0.4
+ Added@nodelib/fs.scandir@2.1.5(transitive)
+ Added@nodelib/fs.stat@2.0.5(transitive)
+ Added@nodelib/fs.walk@1.2.8(transitive)
+ Addedbackfill-config@4.0.0(transitive)
+ Addedbackfill-logger@4.0.0(transitive)
+ Addedbraces@3.0.3(transitive)
+ Addedfast-glob@3.3.2(transitive)
+ Addedfastq@1.18.0(transitive)
+ Addedfill-range@7.1.1(transitive)
+ Addedglob-parent@5.1.2(transitive)
+ Addedis-extglob@2.1.1(transitive)
+ Addedis-glob@4.0.3(transitive)
+ Addedis-number@7.0.0(transitive)
+ Addedmerge2@1.4.1(transitive)
+ Addedmicromatch@4.0.8(transitive)
+ Addedpicomatch@2.3.1(transitive)
+ Addedqueue-microtask@1.2.3(transitive)
+ Addedreusify@1.0.4(transitive)
+ Addedrun-parallel@1.2.0(transitive)
+ Addedto-regex-range@5.0.1(transitive)
- Removednormalize-path@^3.0.0
- Removedbackfill-config@3.0.0(transitive)
- Removedbackfill-generic-logger@3.0.0(transitive)
- Removedbackfill-logger@3.0.0(transitive)
- Removedbackfill-performance-logger@3.0.0(transitive)
- Removednormalize-path@3.0.0(transitive)
Updatedbackfill-config@^4.0.0
Updatedbackfill-logger@^4.0.0