@ms-cloudpack/cli 0.41.0 → 0.42.1
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/lib/commands/init/bundleAndGetImports.d.ts.map +1 -1
- package/lib/commands/init/bundleAndGetImports.js +3 -10
- package/lib/commands/init/bundleAndGetImports.js.map +1 -1
- package/lib/commands/init/evaluateImportsForOverrides.d.ts.map +1 -1
- package/lib/commands/init/evaluateImportsForOverrides.js +10 -10
- package/lib/commands/init/evaluateImportsForOverrides.js.map +1 -1
- package/lib/commands/init/init.d.ts.map +1 -1
- package/lib/commands/init/init.js +2 -4
- package/lib/commands/init/init.js.map +1 -1
- package/lib/commands/start/createBundleRequestForPackage.js +2 -2
- package/lib/commands/start/createBundleRequestForPackage.js.map +1 -1
- package/lib/commands/sync/Task.d.ts +6 -0
- package/lib/commands/sync/Task.d.ts.map +1 -0
- package/lib/commands/sync/Task.js +2 -0
- package/lib/commands/sync/Task.js.map +1 -0
- package/lib/commands/sync/createDownloadTask.d.ts +5 -0
- package/lib/commands/sync/createDownloadTask.d.ts.map +1 -0
- package/lib/commands/sync/createDownloadTask.js +22 -0
- package/lib/commands/sync/createDownloadTask.js.map +1 -0
- package/lib/commands/sync/createUploadTask.d.ts +5 -0
- package/lib/commands/sync/createUploadTask.d.ts.map +1 -0
- package/lib/commands/sync/createUploadTask.js +18 -0
- package/lib/commands/sync/createUploadTask.js.map +1 -0
- package/lib/commands/sync/getPackagesToSync.d.ts +9 -0
- package/lib/commands/sync/getPackagesToSync.d.ts.map +1 -0
- package/lib/commands/sync/getPackagesToSync.js +24 -0
- package/lib/commands/sync/getPackagesToSync.js.map +1 -0
- package/lib/commands/sync/index.d.ts +4 -0
- package/lib/commands/sync/index.d.ts.map +1 -0
- package/lib/commands/sync/index.js +12 -0
- package/lib/commands/sync/index.js.map +1 -0
- package/lib/commands/sync/sync.d.ts +4 -0
- package/lib/commands/sync/sync.d.ts.map +1 -0
- package/lib/commands/sync/sync.js +21 -0
- package/lib/commands/sync/sync.js.map +1 -0
- package/lib/commands/sync/syncInternal.d.ts +10 -0
- package/lib/commands/sync/syncInternal.d.ts.map +1 -0
- package/lib/commands/sync/syncInternal.js +39 -0
- package/lib/commands/sync/syncInternal.js.map +1 -0
- package/lib/commands/sync/types/SyncOptions.d.ts +4 -0
- package/lib/commands/sync/types/SyncOptions.d.ts.map +1 -0
- package/lib/commands/sync/types/SyncOptions.js +2 -0
- package/lib/commands/sync/types/SyncOptions.js.map +1 -0
- package/lib/common/getBundleDetails.d.ts +4 -1
- package/lib/common/getBundleDetails.d.ts.map +1 -1
- package/lib/common/getBundleDetails.js +6 -2
- package/lib/common/getBundleDetails.js.map +1 -1
- package/lib/performance/markers.d.ts +12 -0
- package/lib/performance/markers.d.ts.map +1 -1
- package/lib/performance/markers.js +12 -0
- package/lib/performance/markers.js.map +1 -1
- package/package.json +6 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundleAndGetImports.d.ts","sourceRoot":"","sources":["../../../src/commands/init/bundleAndGetImports.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAGxF,OAAO,EAAE,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"bundleAndGetImports.d.ts","sourceRoot":"","sources":["../../../src/commands/init/bundleAndGetImports.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAGxF,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AACnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IACjD,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,WAAW,CAAC;CACzB,GAAG,OAAO,CAAC;IACV,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACpC,CAAC,CA4DD"}
|
|
@@ -4,13 +4,14 @@ import { getBundleDetails } from '../../common/getBundleDetails.js';
|
|
|
4
4
|
import { findImports } from './findImports.js';
|
|
5
5
|
import { prepareOutputPath } from '../../common/prepareOutputPath.js';
|
|
6
6
|
import { bundleTask } from '../../tasks/bundleTask.js';
|
|
7
|
-
import {
|
|
7
|
+
import { formatPackageName } from '@ms-cloudpack/task-reporter';
|
|
8
8
|
/**
|
|
9
9
|
* Bundle the package and return the imports it depends on.
|
|
10
10
|
*/
|
|
11
11
|
export async function bundleAndGetImports(options) {
|
|
12
12
|
const { packagePath, definition, packages, reporter, config } = options;
|
|
13
|
-
const {
|
|
13
|
+
const { outputLocation, isExternal } = await getBundleDetails({ packagePath }, { packages });
|
|
14
|
+
const outputPath = outputLocation.path;
|
|
14
15
|
if (!isExternal && !definition.exports) {
|
|
15
16
|
console.debug(`${path.join(packagePath, 'package.json')} does not have an "exports" field.`);
|
|
16
17
|
}
|
|
@@ -39,11 +40,8 @@ export async function bundleAndGetImports(options) {
|
|
|
39
40
|
let imports;
|
|
40
41
|
await reporter.runTask(`Evaluate ${formatPackageName(definition)}`, async () => {
|
|
41
42
|
imports = new Map(Object.entries((await findImports(bundleRequest.result?.outputFiles?.map((file) => path.resolve(outputPath, file.outputPath)) || [])) || {}));
|
|
42
|
-
const importCount = imports.size;
|
|
43
43
|
return {
|
|
44
44
|
status: 'complete',
|
|
45
|
-
message: importCount ? `Found ${plural(importCount, 'imported package')}` : undefined,
|
|
46
|
-
details: importCount ? `${bulletedList(getImportsList(imports))}` : undefined,
|
|
47
45
|
};
|
|
48
46
|
});
|
|
49
47
|
return {
|
|
@@ -52,9 +50,4 @@ export async function bundleAndGetImports(options) {
|
|
|
52
50
|
imports,
|
|
53
51
|
};
|
|
54
52
|
}
|
|
55
|
-
function getImportsList(imports) {
|
|
56
|
-
return Array.from(imports.keys()).reduce((list, packageName) => {
|
|
57
|
-
return list.concat(Array.from(imports.get(packageName) || []).map((importPath) => `${packageName}${importPath === '.' ? '' : `/${importPath}`}`));
|
|
58
|
-
}, []);
|
|
59
|
-
}
|
|
60
53
|
//# sourceMappingURL=bundleAndGetImports.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundleAndGetImports.js","sourceRoot":"","sources":["../../../src/commands/init/bundleAndGetImports.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAqB,
|
|
1
|
+
{"version":3,"file":"bundleAndGetImports.js","sourceRoot":"","sources":["../../../src/commands/init/bundleAndGetImports.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAqB,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGnF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAMzC;IAMC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACxE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,gBAAgB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7F,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC;IAEvC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,oCAAoC,CAAC,CAAC;KAC9F;IAED,yCAAyC;IACzC,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAEpC,qBAAqB;IACrB,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE5F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;QACnC,OAAO,CAAC,IAAI,CACV,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,qCAAqC,EAC9E,UAAU;YACR,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,sGAAsG,CAC3G,CAAC;QACF,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;KAChD;IAED,MAAM,aAAa,GAAkB;QACnC,EAAE,EAAE,WAAW;QACf,WAAW,EAAE,UAAU,CAAC,IAAI,IAAI,EAAE;QAClC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,EAAE;QACjC,WAAW;QACX,UAAU;QACV,UAAU;QACV,QAAQ;QACR,MAAM;KACP,CAAC;IAEF,MAAM,UAAU,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAE9D,yCAAyC;IACzC,IAAI,OAA6C,CAAC;IAElD,MAAM,QAAQ,CAAC,OAAO,CAAC,YAAY,iBAAiB,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QAC7E,OAAO,GAAG,IAAI,GAAG,CACf,MAAM,CAAC,OAAO,CACZ,CAAC,MAAM,WAAW,CAChB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAClG,CAAC,IAAI,EAAE,CACT,CACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,UAAU;SACnB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,WAAW,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM;QACrD,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM;QACjD,OAAO;KACR,CAAC;AACJ,CAAC","sourcesContent":["import path from 'path';\nimport { getEntriesMapFromPackage } from '@ms-cloudpack/bundler';\nimport { getBundleDetails } from '../../common/getBundleDetails.js';\nimport { findImports } from './findImports.js';\nimport { prepareOutputPath } from '../../common/prepareOutputPath.js';\nimport type { PackageJson, PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\nimport type { BundleRequest } from '../../types/BundleRequest.js';\nimport { bundleTask } from '../../tasks/bundleTask.js';\nimport { type TaskReporter, formatPackageName } from '@ms-cloudpack/task-reporter';\nimport type { CloudpackConfig } from '@ms-cloudpack/config';\n\n/**\n * Bundle the package and return the imports it depends on.\n */\nexport async function bundleAndGetImports(options: {\n packages: PackageDefinitionsCache;\n config: CloudpackConfig;\n reporter: TaskReporter;\n packagePath: string;\n definition: PackageJson;\n}): Promise<{\n hasWarnings: boolean;\n hasErrors: boolean;\n /** Map from package name to set of required relative paths */\n imports?: Map<string, Set<string>>;\n}> {\n const { packagePath, definition, packages, reporter, config } = options;\n const { outputLocation, isExternal } = await getBundleDetails({ packagePath }, { packages });\n const outputPath = outputLocation.path;\n\n if (!isExternal && !definition.exports) {\n console.debug(`${path.join(packagePath, 'package.json')} does not have an \"exports\" field.`);\n }\n\n // Ensure outputPath exists and is empty.\n await prepareOutputPath(outputPath);\n\n // Determine entries.\n const entriesMap = await getEntriesMapFromPackage({ inputPath: packagePath }, { packages });\n\n if (!Object.keys(entriesMap).length) {\n console.warn(\n `${path.join(packagePath, 'package.json')} does not specify any entry points.`,\n isExternal\n ? ''\n : 'If this package contains code imported by other packages, please consider adding an \"exports\" field.',\n );\n return { hasWarnings: true, hasErrors: false };\n }\n\n const bundleRequest: BundleRequest = {\n id: packagePath,\n packageName: definition.name || '',\n version: definition.version || '',\n packagePath,\n outputPath,\n isExternal,\n packages,\n config,\n };\n\n await bundleTask({ bundleRequest, options: { force: true } });\n\n // For each outputFile, find all imports.\n let imports: Map<string, Set<string>> | undefined;\n\n await reporter.runTask(`Evaluate ${formatPackageName(definition)}`, async () => {\n imports = new Map(\n Object.entries(\n (await findImports(\n bundleRequest.result?.outputFiles?.map((file) => path.resolve(outputPath, file.outputPath)) || [],\n )) || {},\n ),\n );\n\n return {\n status: 'complete',\n };\n });\n\n return {\n hasWarnings: !!bundleRequest.result?.warnings?.length,\n hasErrors: !!bundleRequest.result?.errors?.length,\n imports,\n };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluateImportsForOverrides.d.ts","sourceRoot":"","sources":["../../../src/commands/init/evaluateImportsForOverrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,WAAW,EAA4B,MAAM,6BAA6B,CAAC;AAClH,OAAO,KAAK,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"evaluateImportsForOverrides.d.ts","sourceRoot":"","sources":["../../../src/commands/init/evaluateImportsForOverrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,WAAW,EAA4B,MAAM,6BAA6B,CAAC;AAClH,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAQlE;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE;IACzD,QAAQ,EAAE,uBAAuB,CAAC;IAClC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAClC,UAAU,EAAE,WAAW,CAAC;IACxB,eAAe,EAAE,eAAe,CAAC;IACjC,sBAAsB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC;CACxB,GAAG,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAoGrD"}
|
|
@@ -33,20 +33,21 @@ export async function evaluateImportsForOverrides(options) {
|
|
|
33
33
|
// Get the flattened bundle-able exports map for this dependency and iterate through our import paths to ensure nothing is missing.
|
|
34
34
|
const exports = await getExportsMap({ packagePath: resolveEntry.path }, { packages });
|
|
35
35
|
const flattenedExports = flattenExportsMap(exports);
|
|
36
|
+
const packageSettings = (generatedConfig.packageSettings ??= []);
|
|
37
|
+
const { name, version } = dependencyDefinition;
|
|
38
|
+
let generatedPackageSettings;
|
|
39
|
+
if (!name || !version) {
|
|
40
|
+
throw new Error(`Package "${displayName}" depends on "${dependencyName}" but it is missing a name or version.`);
|
|
41
|
+
}
|
|
36
42
|
for (const dependencyImportPath of dependencyImportPaths) {
|
|
43
|
+
// We are missing an import path. We need to add this entry to the exports map in package settings.
|
|
37
44
|
if (!flattenedExports[dependencyImportPath]) {
|
|
38
|
-
|
|
39
|
-
const packageSettings = (generatedConfig.packageSettings ??= []);
|
|
40
|
-
const { name, version } = dependencyDefinition;
|
|
41
|
-
if (!name || !version) {
|
|
42
|
-
throw new Error(`Package "${displayName}" depends on "${dependencyName}" but it is missing a name or version.`);
|
|
43
|
-
}
|
|
44
|
-
let { generatedPackageSettings } = getPackageSettings({
|
|
45
|
+
generatedPackageSettings ??= getPackageSettings({
|
|
45
46
|
config: { generated: { packageSettings } },
|
|
46
47
|
name,
|
|
47
48
|
version,
|
|
48
49
|
firstMatch: true,
|
|
49
|
-
});
|
|
50
|
+
}).generatedPackageSettings;
|
|
50
51
|
if (!generatedPackageSettings) {
|
|
51
52
|
generatedPackageSettings = {
|
|
52
53
|
match: {
|
|
@@ -65,9 +66,8 @@ export async function evaluateImportsForOverrides(options) {
|
|
|
65
66
|
}, {
|
|
66
67
|
packages,
|
|
67
68
|
});
|
|
69
|
+
console.info(`"${name}@${version}": Added missing export "${dependencyImportPath}" (imported by "${displayName}")`);
|
|
68
70
|
generatedPackageSettings.exports = alphabetizeObject(generatedPackageSettings.exports);
|
|
69
|
-
// Clear cache when we've mutated an override. Transforms need to re-run.
|
|
70
|
-
packages.reset();
|
|
71
71
|
changeCount++;
|
|
72
72
|
// Since we've found a missing exports, we need to re-enqueue the dependency for evaluation.
|
|
73
73
|
packagePathsToEvaluate.add(resolveEntry.path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluateImportsForOverrides.js","sourceRoot":"","sources":["../../../src/commands/init/evaluateImportsForOverrides.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GACd,MAAM,iCAAiC,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,OAQjD;IACC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAC7G,OAAO,CAAC;IACV,MAAM,WAAW,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;IAC/D,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,oEAAoE;IACpE,KAAK,MAAM,CAAC,cAAc,EAAE,qBAAqB,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE;QACvE,MAAM,YAAY,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;QAElG,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,YAAY,GAChB,YAAY,WAAW,iBAAiB,cAAc,6CAA6C;gBACnG,gBAAgB,cAAc,mCAAmC,WAAW,IAAI,CAAC;YACnF,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE1B,SAAS;SACV;QAED,kCAAkC;QAClC,MAAM,oBAAoB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAEnE,IAAI,CAAC,oBAAoB,EAAE;YACzB,MAAM,YAAY,GAChB,YAAY,WAAW,iBAAiB,cAAc,SAAS,YAAY,CAAC,IAAI,IAAI;gBACpF,wCAAwC,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE1B,SAAS;SACV;QAED,oEAAoE;QACpE,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE9C,mIAAmI;QACnI,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"evaluateImportsForOverrides.js","sourceRoot":"","sources":["../../../src/commands/init/evaluateImportsForOverrides.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PackageDefinitionsCache, PackageJson, PackageJsonExportsObject } from '@ms-cloudpack/bundler-types';\nimport type { GeneratedConfig, PackageSettings } from '@ms-cloudpack/config';\nimport { getPackageSettings } from '@ms-cloudpack/config';\nimport type { ResolveMap } from '@ms-cloudpack/package-utilities';\nimport {\n addExportsMapEntry,\n findResolveMapEntry,\n flattenExportsMap,\n getExportsMap,\n} from '@ms-cloudpack/package-utilities';\n\n/**\n * Evaluate the imports depended on by a package to determine if missing exports map paths need to be added.\n * If so, updates package overrides to the given packageOverrides array.\n */\nexport async function evaluateImportsForOverrides(options: {\n packages: PackageDefinitionsCache;\n imports: Map<string, Set<string>>;\n definition: PackageJson;\n generatedConfig: GeneratedConfig;\n packagePathsToEvaluate: Set<string>;\n evaluatedPackages: Set<string>;\n resolveMap: ResolveMap;\n}): Promise<{ changeCount: number; errors: string[] }> {\n const { packages, imports, definition, generatedConfig, packagePathsToEvaluate, evaluatedPackages, resolveMap } =\n options;\n const displayName = `${definition.name}@${definition.version}`;\n let changeCount = 0;\n const errors: string[] = [];\n\n // Iterate through imports and find their path from the resolve map.\n for (const [dependencyName, dependencyImportPaths] of imports.entries()) {\n const resolveEntry = findResolveMapEntry({ definition, packageName: dependencyName, resolveMap });\n\n if (!resolveEntry) {\n const errorMessage =\n `Package \"${displayName}\" depends on \"${dependencyName}\" but it was not found in the resolve map. ` +\n `Ensure that \"${dependencyName}\" is listed in dependencies of \"${displayName}\".`;\n console.error(errorMessage);\n errors.push(errorMessage);\n\n continue;\n }\n\n // Load the dependency definition.\n const dependencyDefinition = await packages.get(resolveEntry.path);\n\n if (!dependencyDefinition) {\n const errorMessage =\n `Package \"${displayName}\" depends on \"${dependencyName}\" at \"${resolveEntry.path}\" ` +\n `but its definition couldn't be loaded.`;\n console.error(errorMessage);\n errors.push(errorMessage);\n\n continue;\n }\n\n // Make sure to add the package to the list of packages to evaluate.\n packagePathsToEvaluate.add(resolveEntry.path);\n\n // Get the flattened bundle-able exports map for this dependency and iterate through our import paths to ensure nothing is missing.\n const exports = await getExportsMap({ packagePath: resolveEntry.path }, { packages });\n const flattenedExports = flattenExportsMap(exports);\n const packageSettings = (generatedConfig.packageSettings ??= []);\n const { name, version } = dependencyDefinition;\n let generatedPackageSettings: PackageSettings | undefined;\n\n if (!name || !version) {\n throw new Error(`Package \"${displayName}\" depends on \"${dependencyName}\" but it is missing a name or version.`);\n }\n\n for (const dependencyImportPath of dependencyImportPaths) {\n // We are missing an import path. We need to add this entry to the exports map in package settings.\n if (!flattenedExports[dependencyImportPath]) {\n generatedPackageSettings ??= getPackageSettings({\n config: { generated: { packageSettings } },\n name,\n version,\n firstMatch: true,\n }).generatedPackageSettings;\n\n if (!generatedPackageSettings) {\n generatedPackageSettings = {\n match: {\n name,\n version: `^${version}`,\n },\n exports: {},\n };\n packageSettings.push(generatedPackageSettings);\n }\n\n generatedPackageSettings.exports ??= {};\n\n await addExportsMapEntry(\n {\n exports: generatedPackageSettings.exports,\n packagePath: resolveEntry.path,\n importPath: dependencyImportPath,\n },\n {\n packages,\n },\n );\n\n console.info(\n `\"${name}@${version}\": Added missing export \"${dependencyImportPath}\" (imported by \"${displayName}\")`,\n );\n\n generatedPackageSettings.exports = alphabetizeObject<PackageJsonExportsObject>(\n generatedPackageSettings.exports as PackageJsonExportsObject,\n );\n\n changeCount++;\n\n // Since we've found a missing exports, we need to re-enqueue the dependency for evaluation.\n packagePathsToEvaluate.add(resolveEntry.path);\n evaluatedPackages.delete(resolveEntry.path);\n }\n }\n }\n\n return { changeCount, errors };\n}\n\n/** Quick helper to alphabetize the exports. */\nfunction alphabetizeObject<T extends { [key: string]: unknown }>(obj: T): T {\n const sortedKeys = Object.keys(obj).sort();\n const alphabetizedObj: { [key: string]: unknown } = {};\n\n for (const key of sortedKeys) {\n alphabetizedObj[key] = obj[key];\n }\n\n return alphabetizedObj as T;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init/init.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG9D,wFAAwF;AACxF,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0CpF;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;IACT,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC,CA0HD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createPackageDefinitions, generatedConfigFileName, readConfig,
|
|
1
|
+
import { createPackageDefinitions, generatedConfigFileName, readConfig, userConfigFileName, writeGeneratedConfig, } from '@ms-cloudpack/config';
|
|
2
2
|
import { plural, red, yellow } from '@ms-cloudpack/task-reporter';
|
|
3
3
|
import { rootSpan, stopTelemetry } from '../../initTelemetry.js';
|
|
4
4
|
import { resolveDependenciesTask } from '../../tasks/resolveDependenciesTask.js';
|
|
@@ -58,7 +58,7 @@ export async function initInternal(options, context) {
|
|
|
58
58
|
config.generated = {};
|
|
59
59
|
}
|
|
60
60
|
const packages = createPackageDefinitions({ config });
|
|
61
|
-
const generatedConfig =
|
|
61
|
+
const generatedConfig = config.generated;
|
|
62
62
|
generatedConfig.packageSettings ??= [];
|
|
63
63
|
// Try to resolve dependencies.
|
|
64
64
|
const resolveMap = await resolveDependenciesTask({ appPath }, { packages, reporter });
|
|
@@ -89,8 +89,6 @@ export async function initInternal(options, context) {
|
|
|
89
89
|
// Bundle the package and find the imports it depends on.
|
|
90
90
|
const bundleResult = await bundleAndGetImports({ packagePath, definition, packages, reporter, config });
|
|
91
91
|
if (!bundleResult.imports?.size) {
|
|
92
|
-
// This is expected if the package just doesn't import anything.
|
|
93
|
-
console.info(`${packagePath} has no additional imports to evaluate.`);
|
|
94
92
|
if (bundleResult.hasErrors) {
|
|
95
93
|
errorPkgCount++;
|
|
96
94
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init/init.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n createPackageDefinitions,\n generatedConfigFileName,\n readConfig,\n readGeneratedConfig,\n userConfigFileName,\n writeGeneratedConfig,\n} from '@ms-cloudpack/config';\nimport { plural, red, yellow } from '@ms-cloudpack/task-reporter';\nimport { rootSpan, stopTelemetry } from '../../initTelemetry.js';\nimport { resolveDependenciesTask } from '../../tasks/resolveDependenciesTask.js';\nimport { evaluateImportsForOverrides } from './evaluateImportsForOverrides.js';\nimport { bundleAndGetImports } from './bundleAndGetImports.js';\nimport type { InitOptions } from './types/InitOptions.js';\nimport type { TaskContext } from '../../types/TaskContext.js';\nimport { setupReporting } from '../start/setupReporting.js';\n\n/** Given the path, updates the Cloudpack config with overrides and project settings. */\nexport async function init(options: InitOptions, context: TaskContext): Promise<void> {\n const { reporter, config } = context;\n\n await setupReporting({ reporter, config });\n\n let completeReason: string | undefined;\n let hasErrors = false;\n let hasWarnings = false;\n try {\n const { changeCount, errorPkgCount, warningPkgCount, successPkgCount } = await initInternal(options, context);\n\n hasErrors = errorPkgCount > 0;\n hasWarnings = warningPkgCount > 0;\n\n const totalCount = errorPkgCount + successPkgCount;\n\n if (hasErrors || hasWarnings) {\n const successPct = ((successPkgCount / totalCount) * 100).toFixed(1);\n completeReason =\n [\n `${successPkgCount}/${totalCount} (${successPct}%) packages bundled successfully`,\n hasErrors && `${errorPkgCount} packages with errors`,\n hasWarnings && `${warningPkgCount} packages with warnings`,\n ]\n .filter(Boolean)\n .join('\\n') + '\\n';\n } else {\n completeReason = `All ${totalCount} packages bundled successfully`;\n }\n\n if (changeCount) {\n completeReason += `\\n\\nUpdated \"${userConfigFileName}\" with ${plural(changeCount, 'change')}.`;\n }\n } catch (error) {\n hasErrors = true;\n completeReason = `Unexpected error: ${(error as Error).stack || error}`;\n }\n\n await stopTelemetry();\n reporter.complete(hasErrors ? red(completeReason) : hasWarnings ? yellow(completeReason) : completeReason);\n\n process.exit(hasErrors ? 1 : 0);\n}\n\n/**\n * Actual init operation (minus the completion logging).\n * Exported for testing only.\n */\nexport async function initInternal(\n options: InitOptions,\n context: TaskContext,\n): Promise<{\n changeCount: number;\n errorPkgCount: number;\n warningPkgCount: number;\n successPkgCount: number;\n}> {\n const { appPath, reporter } = context;\n\n if (options.check && options.reset) {\n throw Error('Cannot use --check and --reset together.');\n }\n\n const config = await readConfig(appPath);\n\n // If --reset is specified we ignore generated config.\n if (options.reset) {\n config.generated = {};\n }\n\n const packages = createPackageDefinitions({ config });\n const generatedConfig = options.reset ? {} : await readGeneratedConfig(appPath);\n\n generatedConfig.packageSettings ??= [];\n\n // Try to resolve dependencies.\n const resolveMap = await resolveDependenciesTask({ appPath }, { packages, reporter });\n\n if (!resolveMap) {\n throw new Error(\"Couldn't resolve dependencies.\");\n }\n\n const packagePathsToEvaluate = new Set<string>([appPath]);\n const evaluatedPackages = new Set<string>();\n let changeCount = 0;\n let errorPkgCount = 0;\n let warningPkgCount = 0;\n let successPkgCount = 0;\n\n while (packagePathsToEvaluate.size) {\n const packagePath = packagePathsToEvaluate.values().next().value as string;\n\n packagePathsToEvaluate.delete(packagePath);\n\n // Skip already-visited packages.\n if (!packagePath || evaluatedPackages.has(packagePath)) {\n continue;\n }\n\n evaluatedPackages.add(packagePath);\n\n const definition = await packages.get(packagePath, { refresh: true });\n\n if (!definition) {\n // This is very weird and probably won't happen.\n console.error(`Skipping ${packagePath} evaluation because the package.json was not found or not readable.`);\n errorPkgCount++;\n continue;\n }\n\n // Bundle the package and find the imports it depends on.\n const bundleResult = await bundleAndGetImports({ packagePath, definition, packages, reporter, config });\n\n if (!bundleResult.imports?.size) {\n // This is expected if the package just doesn't import anything.\n console.info(`${packagePath} has no additional imports to evaluate.`);\n if (bundleResult.hasErrors) {\n errorPkgCount++;\n } else {\n successPkgCount++;\n }\n\n if (bundleResult.hasWarnings) {\n warningPkgCount++;\n }\n\n continue;\n }\n\n // Given the package imports, find the missing exports maps and update packageOverrides.\n const overridesResult = await evaluateImportsForOverrides({\n definition,\n packages,\n packagePathsToEvaluate,\n evaluatedPackages,\n imports: bundleResult.imports,\n generatedConfig,\n resolveMap,\n });\n\n if (options.check && (overridesResult.changeCount || overridesResult.errors.length)) {\n rootSpan?.addEvent('INIT_CHECK_FAILED', {\n reason: overridesResult.changeCount ? 'Config needs to be updated.' : overridesResult.errors,\n });\n throw Error(\n overridesResult.changeCount\n ? 'Run \"cloudpack init --reset\" to update the config.'\n : overridesResult.errors.map((e) => e).join('\\n'),\n );\n }\n\n changeCount += overridesResult.changeCount;\n\n if (bundleResult.hasErrors || overridesResult.errors.length) {\n errorPkgCount++;\n } else {\n successPkgCount++;\n }\n if (bundleResult.hasWarnings) {\n warningPkgCount++;\n }\n }\n\n if (changeCount) {\n // Log the results to a file.\n console.log(\n `Writing updates to \"${generatedConfigFileName}\". If you're in a git repo, this file should be committed with your project.`,\n );\n\n if (generatedConfig.packageSettings?.length) {\n await writeGeneratedConfig(generatedConfig, appPath);\n }\n }\n\n return {\n changeCount,\n errorPkgCount,\n warningPkgCount,\n successPkgCount,\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init/init.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,OAAoB,EAAE,OAAoB;IACnE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAErC,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3C,IAAI,cAAkC,CAAC;IACvC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI;QACF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE9G,SAAS,GAAG,aAAa,GAAG,CAAC,CAAC;QAC9B,WAAW,GAAG,eAAe,GAAG,CAAC,CAAC;QAElC,MAAM,UAAU,GAAG,aAAa,GAAG,eAAe,CAAC;QAEnD,IAAI,SAAS,IAAI,WAAW,EAAE;YAC5B,MAAM,UAAU,GAAG,CAAC,CAAC,eAAe,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACrE,cAAc;gBACZ;oBACE,GAAG,eAAe,IAAI,UAAU,KAAK,UAAU,kCAAkC;oBACjF,SAAS,IAAI,GAAG,aAAa,uBAAuB;oBACpD,WAAW,IAAI,GAAG,eAAe,yBAAyB;iBAC3D;qBACE,MAAM,CAAC,OAAO,CAAC;qBACf,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;SACxB;aAAM;YACL,cAAc,GAAG,OAAO,UAAU,gCAAgC,CAAC;SACpE;QAED,IAAI,WAAW,EAAE;YACf,cAAc,IAAI,gBAAgB,kBAAkB,UAAU,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC;SAChG;KACF;IAAC,OAAO,KAAK,EAAE;QACd,SAAS,GAAG,IAAI,CAAC;QACjB,cAAc,GAAG,qBAAsB,KAAe,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;KACzE;IAED,MAAM,aAAa,EAAE,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAE3G,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAoB,EACpB,OAAoB;IAOpB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAEtC,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE;QAClC,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAC;KACzD;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;IAEzC,sDAAsD;IACtD,IAAI,OAAO,CAAC,KAAK,EAAE;QACjB,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;KACvB;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC;IAEzC,eAAe,CAAC,eAAe,KAAK,EAAE,CAAC;IAEvC,+BAA+B;IAC/B,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEtF,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,eAAe,GAAG,CAAC,CAAC;IAExB,OAAO,sBAAsB,CAAC,IAAI,EAAE;QAClC,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAe,CAAC;QAE3E,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAE3C,iCAAiC;QACjC,IAAI,CAAC,WAAW,IAAI,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACtD,SAAS;SACV;QAED,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEnC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtE,IAAI,CAAC,UAAU,EAAE;YACf,gDAAgD;YAChD,OAAO,CAAC,KAAK,CAAC,YAAY,WAAW,qEAAqE,CAAC,CAAC;YAC5G,aAAa,EAAE,CAAC;YAChB,SAAS;SACV;QAED,yDAAyD;QACzD,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAExG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE;YAC/B,IAAI,YAAY,CAAC,SAAS,EAAE;gBAC1B,aAAa,EAAE,CAAC;aACjB;iBAAM;gBACL,eAAe,EAAE,CAAC;aACnB;YAED,IAAI,YAAY,CAAC,WAAW,EAAE;gBAC5B,eAAe,EAAE,CAAC;aACnB;YAED,SAAS;SACV;QAED,wFAAwF;QACxF,MAAM,eAAe,GAAG,MAAM,2BAA2B,CAAC;YACxD,UAAU;YACV,QAAQ;YACR,sBAAsB;YACtB,iBAAiB;YACjB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,eAAe;YACf,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,WAAW,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YACnF,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,EAAE;gBACtC,MAAM,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM;aAC7F,CAAC,CAAC;YACH,MAAM,KAAK,CACT,eAAe,CAAC,WAAW;gBACzB,CAAC,CAAC,oDAAoD;gBACtD,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACpD,CAAC;SACH;QAED,WAAW,IAAI,eAAe,CAAC,WAAW,CAAC;QAE3C,IAAI,YAAY,CAAC,SAAS,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3D,aAAa,EAAE,CAAC;SACjB;aAAM;YACL,eAAe,EAAE,CAAC;SACnB;QACD,IAAI,YAAY,CAAC,WAAW,EAAE;YAC5B,eAAe,EAAE,CAAC;SACnB;KACF;IAED,IAAI,WAAW,EAAE;QACf,6BAA6B;QAC7B,OAAO,CAAC,GAAG,CACT,uBAAuB,uBAAuB,8EAA8E,CAC7H,CAAC;QAEF,IAAI,eAAe,CAAC,eAAe,EAAE,MAAM,EAAE;YAC3C,MAAM,oBAAoB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;SACtD;KACF;IAED,OAAO;QACL,WAAW;QACX,aAAa;QACb,eAAe;QACf,eAAe;KAChB,CAAC;AACJ,CAAC","sourcesContent":["import {\n createPackageDefinitions,\n generatedConfigFileName,\n readConfig,\n userConfigFileName,\n writeGeneratedConfig,\n} from '@ms-cloudpack/config';\nimport { plural, red, yellow } from '@ms-cloudpack/task-reporter';\nimport { rootSpan, stopTelemetry } from '../../initTelemetry.js';\nimport { resolveDependenciesTask } from '../../tasks/resolveDependenciesTask.js';\nimport { evaluateImportsForOverrides } from './evaluateImportsForOverrides.js';\nimport { bundleAndGetImports } from './bundleAndGetImports.js';\nimport type { InitOptions } from './types/InitOptions.js';\nimport type { TaskContext } from '../../types/TaskContext.js';\nimport { setupReporting } from '../start/setupReporting.js';\n\n/** Given the path, updates the Cloudpack config with overrides and project settings. */\nexport async function init(options: InitOptions, context: TaskContext): Promise<void> {\n const { reporter, config } = context;\n\n await setupReporting({ reporter, config });\n\n let completeReason: string | undefined;\n let hasErrors = false;\n let hasWarnings = false;\n try {\n const { changeCount, errorPkgCount, warningPkgCount, successPkgCount } = await initInternal(options, context);\n\n hasErrors = errorPkgCount > 0;\n hasWarnings = warningPkgCount > 0;\n\n const totalCount = errorPkgCount + successPkgCount;\n\n if (hasErrors || hasWarnings) {\n const successPct = ((successPkgCount / totalCount) * 100).toFixed(1);\n completeReason =\n [\n `${successPkgCount}/${totalCount} (${successPct}%) packages bundled successfully`,\n hasErrors && `${errorPkgCount} packages with errors`,\n hasWarnings && `${warningPkgCount} packages with warnings`,\n ]\n .filter(Boolean)\n .join('\\n') + '\\n';\n } else {\n completeReason = `All ${totalCount} packages bundled successfully`;\n }\n\n if (changeCount) {\n completeReason += `\\n\\nUpdated \"${userConfigFileName}\" with ${plural(changeCount, 'change')}.`;\n }\n } catch (error) {\n hasErrors = true;\n completeReason = `Unexpected error: ${(error as Error).stack || error}`;\n }\n\n await stopTelemetry();\n reporter.complete(hasErrors ? red(completeReason) : hasWarnings ? yellow(completeReason) : completeReason);\n\n process.exit(hasErrors ? 1 : 0);\n}\n\n/**\n * Actual init operation (minus the completion logging).\n * Exported for testing only.\n */\nexport async function initInternal(\n options: InitOptions,\n context: TaskContext,\n): Promise<{\n changeCount: number;\n errorPkgCount: number;\n warningPkgCount: number;\n successPkgCount: number;\n}> {\n const { appPath, reporter } = context;\n\n if (options.check && options.reset) {\n throw Error('Cannot use --check and --reset together.');\n }\n\n const config = await readConfig(appPath);\n\n // If --reset is specified we ignore generated config.\n if (options.reset) {\n config.generated = {};\n }\n\n const packages = createPackageDefinitions({ config });\n const generatedConfig = config.generated;\n\n generatedConfig.packageSettings ??= [];\n\n // Try to resolve dependencies.\n const resolveMap = await resolveDependenciesTask({ appPath }, { packages, reporter });\n\n if (!resolveMap) {\n throw new Error(\"Couldn't resolve dependencies.\");\n }\n\n const packagePathsToEvaluate = new Set<string>([appPath]);\n const evaluatedPackages = new Set<string>();\n let changeCount = 0;\n let errorPkgCount = 0;\n let warningPkgCount = 0;\n let successPkgCount = 0;\n\n while (packagePathsToEvaluate.size) {\n const packagePath = packagePathsToEvaluate.values().next().value as string;\n\n packagePathsToEvaluate.delete(packagePath);\n\n // Skip already-visited packages.\n if (!packagePath || evaluatedPackages.has(packagePath)) {\n continue;\n }\n\n evaluatedPackages.add(packagePath);\n\n const definition = await packages.get(packagePath, { refresh: true });\n\n if (!definition) {\n // This is very weird and probably won't happen.\n console.error(`Skipping ${packagePath} evaluation because the package.json was not found or not readable.`);\n errorPkgCount++;\n continue;\n }\n\n // Bundle the package and find the imports it depends on.\n const bundleResult = await bundleAndGetImports({ packagePath, definition, packages, reporter, config });\n\n if (!bundleResult.imports?.size) {\n if (bundleResult.hasErrors) {\n errorPkgCount++;\n } else {\n successPkgCount++;\n }\n\n if (bundleResult.hasWarnings) {\n warningPkgCount++;\n }\n\n continue;\n }\n\n // Given the package imports, find the missing exports maps and update packageOverrides.\n const overridesResult = await evaluateImportsForOverrides({\n definition,\n packages,\n packagePathsToEvaluate,\n evaluatedPackages,\n imports: bundleResult.imports,\n generatedConfig,\n resolveMap,\n });\n\n if (options.check && (overridesResult.changeCount || overridesResult.errors.length)) {\n rootSpan?.addEvent('INIT_CHECK_FAILED', {\n reason: overridesResult.changeCount ? 'Config needs to be updated.' : overridesResult.errors,\n });\n throw Error(\n overridesResult.changeCount\n ? 'Run \"cloudpack init --reset\" to update the config.'\n : overridesResult.errors.map((e) => e).join('\\n'),\n );\n }\n\n changeCount += overridesResult.changeCount;\n\n if (bundleResult.hasErrors || overridesResult.errors.length) {\n errorPkgCount++;\n } else {\n successPkgCount++;\n }\n if (bundleResult.hasWarnings) {\n warningPkgCount++;\n }\n }\n\n if (changeCount) {\n // Log the results to a file.\n console.log(\n `Writing updates to \"${generatedConfigFileName}\". If you're in a git repo, this file should be committed with your project.`,\n );\n\n if (generatedConfig.packageSettings?.length) {\n await writeGeneratedConfig(generatedConfig, appPath);\n }\n }\n\n return {\n changeCount,\n errorPkgCount,\n warningPkgCount,\n successPkgCount,\n };\n}\n"]}
|
|
@@ -4,13 +4,13 @@ export async function createBundleRequestForPackage(options, context) {
|
|
|
4
4
|
const { config } = context;
|
|
5
5
|
const { features = {} } = config;
|
|
6
6
|
const { path, version, name } = packageEntry;
|
|
7
|
-
const { bundleId, isExternal,
|
|
7
|
+
const { bundleId, isExternal, outputLocation } = await getBundleDetails({ packagePath: path }, context);
|
|
8
8
|
return {
|
|
9
9
|
id: bundleId,
|
|
10
10
|
packagePath: path,
|
|
11
11
|
packageName: name,
|
|
12
12
|
isExternal,
|
|
13
|
-
outputPath,
|
|
13
|
+
outputPath: outputLocation.path,
|
|
14
14
|
version,
|
|
15
15
|
disableSourceMaps: features.disableSourceMaps,
|
|
16
16
|
enableFindImports: features.enqueueDependencies,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createBundleRequestForPackage.js","sourceRoot":"","sources":["../../../src/commands/start/createBundleRequestForPackage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAIpE,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAEC,EACD,OAGC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;IACjC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;IAC7C,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"createBundleRequestForPackage.js","sourceRoot":"","sources":["../../../src/commands/start/createBundleRequestForPackage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAIpE,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAEC,EACD,OAGC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;IACjC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;IAC7C,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,MAAM,gBAAgB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;IAExG,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;QACjB,UAAU;QACV,UAAU,EAAE,cAAc,CAAC,IAAI;QAC/B,OAAO;QACP,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;QAC7C,iBAAiB,EAAE,QAAQ,CAAC,mBAAmB;QAC/C,2BAA2B,EAAE,QAAQ,CAAC,qBAAqB;QAC3D,GAAG,OAAO;KACX,CAAC;AACJ,CAAC","sourcesContent":["import type { CloudpackConfig } from '@ms-cloudpack/config';\nimport type { ResolveMapEntry } from '@ms-cloudpack/package-utilities';\nimport { getBundleDetails } from '../../common/getBundleDetails.js';\nimport type { BundleRequest } from '../../types/BundleRequest.js';\nimport type { PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\n\nexport async function createBundleRequestForPackage(\n options: {\n packageEntry: ResolveMapEntry;\n },\n context: {\n config: CloudpackConfig;\n packages: PackageDefinitionsCache;\n },\n): Promise<BundleRequest> {\n const { packageEntry } = options;\n const { config } = context;\n const { features = {} } = config;\n const { path, version, name } = packageEntry;\n const { bundleId, isExternal, outputLocation } = await getBundleDetails({ packagePath: path }, context);\n\n return {\n id: bundleId,\n packagePath: path,\n packageName: name,\n isExternal,\n outputPath: outputLocation.path,\n version,\n disableSourceMaps: features.disableSourceMaps,\n enableFindImports: features.enqueueDependencies,\n enableCacheInternalPackages: features.cacheInternalPackages,\n ...context,\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/Task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAChD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Task.js","sourceRoot":"","sources":["../../../src/commands/sync/Task.ts"],"names":[],"mappings":"","sourcesContent":["import type { TaskReporterTaskResult } from '@ms-cloudpack/task-reporter';\n\nexport interface Task {\n name: string;\n execute: () => Promise<TaskReporterTaskResult>;\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { RemoteCacheClient } from '@ms-cloudpack/remote-cache';
|
|
2
|
+
import { type PackageToSync } from './getPackagesToSync.js';
|
|
3
|
+
import type { Task } from './Task.js';
|
|
4
|
+
export declare function createDownloadTask(client: RemoteCacheClient, { folderName, packageName, path, version }: PackageToSync): Task;
|
|
5
|
+
//# sourceMappingURL=createDownloadTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDownloadTask.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/createDownloadTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAItC,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,iBAAiB,EACzB,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,aAAa,GACxD,IAAI,CAmBN"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {} from './getPackagesToSync.js';
|
|
2
|
+
import { existsSync } from 'fs';
|
|
3
|
+
import { bulletedList } from '@ms-cloudpack/task-reporter';
|
|
4
|
+
export function createDownloadTask(client, { folderName, packageName, path, version }) {
|
|
5
|
+
return {
|
|
6
|
+
name: `Downloading ${packageName}@${version}`,
|
|
7
|
+
execute: async () => {
|
|
8
|
+
if (existsSync(path)) {
|
|
9
|
+
return { status: 'skip', message: 'Package is already exist in the local cache.' };
|
|
10
|
+
}
|
|
11
|
+
const result = await client.downloadFolder(folderName, path);
|
|
12
|
+
if (!result) {
|
|
13
|
+
return { status: 'skip', message: `not found in the remote cache.` };
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
status: 'complete',
|
|
17
|
+
details: bulletedList([`FolderName: ${folderName}`, `Path: ${path}`, `Version: ${version}`]),
|
|
18
|
+
};
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=createDownloadTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDownloadTask.js","sourceRoot":"","sources":["../../../src/commands/sync/createDownloadTask.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,UAAU,kBAAkB,CAChC,MAAyB,EACzB,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAiB;IAEzD,OAAO;QACL,IAAI,EAAE,eAAe,WAAW,IAAI,OAAO,EAAE;QAC7C,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC;aACpF;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC;aACtE;YAED,OAAO;gBACL,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,YAAY,CAAC,CAAC,eAAe,UAAU,EAAE,EAAE,SAAS,IAAI,EAAE,EAAE,YAAY,OAAO,EAAE,CAAC,CAAC;aAC7F,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { RemoteCacheClient } from '@ms-cloudpack/remote-cache';\nimport { type PackageToSync } from './getPackagesToSync.js';\nimport type { Task } from './Task.js';\nimport { existsSync } from 'fs';\nimport { bulletedList } from '@ms-cloudpack/task-reporter';\n\nexport function createDownloadTask(\n client: RemoteCacheClient,\n { folderName, packageName, path, version }: PackageToSync,\n): Task {\n return {\n name: `Downloading ${packageName}@${version}`,\n execute: async () => {\n if (existsSync(path)) {\n return { status: 'skip', message: 'Package is already exist in the local cache.' };\n }\n\n const result = await client.downloadFolder(folderName, path);\n if (!result) {\n return { status: 'skip', message: `not found in the remote cache.` };\n }\n\n return {\n status: 'complete',\n details: bulletedList([`FolderName: ${folderName}`, `Path: ${path}`, `Version: ${version}`]),\n };\n },\n };\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { RemoteCacheClient } from '@ms-cloudpack/remote-cache';
|
|
2
|
+
import type { PackageToSync } from './getPackagesToSync.js';
|
|
3
|
+
import type { Task } from './Task.js';
|
|
4
|
+
export declare function createUploadTask(client: RemoteCacheClient, { folderName, packageName, path, version }: PackageToSync): Task;
|
|
5
|
+
//# sourceMappingURL=createUploadTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUploadTask.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/createUploadTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAItC,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,iBAAiB,EACzB,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,aAAa,GACxD,IAAI,CAeN"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { existsSync } from 'fs';
|
|
2
|
+
import { bulletedList } from '@ms-cloudpack/task-reporter';
|
|
3
|
+
export function createUploadTask(client, { folderName, packageName, path, version }) {
|
|
4
|
+
return {
|
|
5
|
+
name: `Uploading ${packageName}@${version}`,
|
|
6
|
+
execute: async () => {
|
|
7
|
+
if (!existsSync(path)) {
|
|
8
|
+
return { status: 'skip', message: `Not found in the local cache.` };
|
|
9
|
+
}
|
|
10
|
+
await client.uploadFolder(folderName, path);
|
|
11
|
+
return {
|
|
12
|
+
status: 'complete',
|
|
13
|
+
details: bulletedList([`FolderName: ${folderName}`, `Path: ${path}`, `Version: ${version}`]),
|
|
14
|
+
};
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=createUploadTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUploadTask.js","sourceRoot":"","sources":["../../../src/commands/sync/createUploadTask.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,UAAU,gBAAgB,CAC9B,MAAyB,EACzB,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAiB;IAEzD,OAAO;QACL,IAAI,EAAE,aAAa,WAAW,IAAI,OAAO,EAAE;QAC3C,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBACrB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;aACrE;YAED,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC5C,OAAO;gBACL,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,YAAY,CAAC,CAAC,eAAe,UAAU,EAAE,EAAE,SAAS,IAAI,EAAE,EAAE,YAAY,OAAO,EAAE,CAAC,CAAC;aAC7F,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { RemoteCacheClient } from '@ms-cloudpack/remote-cache';\nimport type { PackageToSync } from './getPackagesToSync.js';\nimport type { Task } from './Task.js';\nimport { existsSync } from 'fs';\nimport { bulletedList } from '@ms-cloudpack/task-reporter';\n\nexport function createUploadTask(\n client: RemoteCacheClient,\n { folderName, packageName, path, version }: PackageToSync,\n): Task {\n return {\n name: `Uploading ${packageName}@${version}`,\n execute: async () => {\n if (!existsSync(path)) {\n return { status: 'skip', message: `Not found in the local cache.` };\n }\n\n await client.uploadFolder(folderName, path);\n return {\n status: 'complete',\n details: bulletedList([`FolderName: ${folderName}`, `Path: ${path}`, `Version: ${version}`]),\n };\n },\n };\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TaskReporter } from '@ms-cloudpack/task-reporter';
|
|
2
|
+
export interface PackageToSync {
|
|
3
|
+
path: string;
|
|
4
|
+
folderName: string;
|
|
5
|
+
packageName: string;
|
|
6
|
+
version: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function getPackagesToSync(appPath: string, reporter: TaskReporter): Promise<PackageToSync[]>;
|
|
9
|
+
//# sourceMappingURL=getPackagesToSync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPackagesToSync.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/getPackagesToSync.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAyBzG"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { createPackageDefinitions, readConfig } from '@ms-cloudpack/config';
|
|
2
|
+
import { resolveDependenciesTask } from '../../tasks/resolveDependenciesTask.js';
|
|
3
|
+
import { findResolveMapEntry } from '@ms-cloudpack/package-utilities';
|
|
4
|
+
import { getBundleDetails } from '../../common/getBundleDetails.js';
|
|
5
|
+
export async function getPackagesToSync(appPath, reporter) {
|
|
6
|
+
const list = [];
|
|
7
|
+
const config = await readConfig(appPath);
|
|
8
|
+
const packages = createPackageDefinitions({ config });
|
|
9
|
+
const resolveMap = await resolveDependenciesTask({ appPath }, { packages, reporter });
|
|
10
|
+
const packageEntries = Object.keys(resolveMap)
|
|
11
|
+
.map((packageName) => findResolveMapEntry({
|
|
12
|
+
packageName,
|
|
13
|
+
resolveMap,
|
|
14
|
+
}))
|
|
15
|
+
.filter((item) => item);
|
|
16
|
+
for (const { path: packagePath, name, version } of packageEntries) {
|
|
17
|
+
const details = await getBundleDetails({ packagePath }, { packages });
|
|
18
|
+
if (details.isExternal) {
|
|
19
|
+
list.push({ ...details.outputLocation, packageName: name, version });
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return list;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=getPackagesToSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPackagesToSync.js","sourceRoot":"","sources":["../../../src/commands/sync/getPackagesToSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAUpE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,QAAsB;IAC7E,MAAM,IAAI,GAAoB,EAAE,CAAC;IAEjC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAEtD,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEtF,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;SAC3C,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CACnB,mBAAmB,CAAC;QAClB,WAAW;QACX,UAAU;KACX,CAAC,CACH;SACA,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAsB,CAAC;IAE/C,KAAK,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,cAAc,EAAE;QACjE,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;SACtE;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { createPackageDefinitions, readConfig } from '@ms-cloudpack/config';\nimport { resolveDependenciesTask } from '../../tasks/resolveDependenciesTask.js';\nimport { findResolveMapEntry, type ResolveMapEntry } from '@ms-cloudpack/package-utilities';\nimport { getBundleDetails } from '../../common/getBundleDetails.js';\nimport type { TaskReporter } from '@ms-cloudpack/task-reporter';\n\nexport interface PackageToSync {\n path: string;\n folderName: string;\n packageName: string;\n version: string;\n}\n\nexport async function getPackagesToSync(appPath: string, reporter: TaskReporter): Promise<PackageToSync[]> {\n const list: PackageToSync[] = [];\n\n const config = await readConfig(appPath);\n const packages = createPackageDefinitions({ config });\n\n const resolveMap = await resolveDependenciesTask({ appPath }, { packages, reporter });\n\n const packageEntries = Object.keys(resolveMap)\n .map((packageName) =>\n findResolveMapEntry({\n packageName,\n resolveMap,\n }),\n )\n .filter((item) => item) as ResolveMapEntry[];\n\n for (const { path: packagePath, name, version } of packageEntries) {\n const details = await getBundleDetails({ packagePath }, { packages });\n if (details.isExternal) {\n list.push({ ...details.outputLocation, packageName: name, version });\n }\n }\n\n return list;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGtE,+BAA+B;AAC/B,eAAO,MAAM,IAAI,EAAE,eAWlB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Defines the "sync" verb. */
|
|
2
|
+
export const init = (command, context) => {
|
|
3
|
+
command
|
|
4
|
+
.command('sync')
|
|
5
|
+
.description('Syncs the packages from/to the remote cache. If the package is not in the local cache, it will be downloaded.')
|
|
6
|
+
.option('--upload', 'Uploads the packages to the remote cache.')
|
|
7
|
+
.action(async (options) => {
|
|
8
|
+
const { sync } = await import('./sync.js');
|
|
9
|
+
await sync(options, context);
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/sync/index.ts"],"names":[],"mappings":"AAGA,+BAA+B;AAC/B,MAAM,CAAC,MAAM,IAAI,GAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACxD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,+GAA+G,CAChH;SACA,MAAM,CAAC,UAAU,EAAE,2CAA2C,CAAC;SAC/D,MAAM,CAAC,KAAK,EAAE,OAAoB,EAAE,EAAE;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC","sourcesContent":["import type { CommandFunction } from '../../types/CommandFunction.js';\nimport type { SyncOptions } from './types/SyncOptions.js';\n\n/** Defines the \"sync\" verb. */\nexport const init: CommandFunction = (command, context) => {\n command\n .command('sync')\n .description(\n 'Syncs the packages from/to the remote cache. If the package is not in the local cache, it will be downloaded.',\n )\n .option('--upload', 'Uploads the packages to the remote cache.')\n .action(async (options: SyncOptions) => {\n const { sync } = await import('./sync.js');\n await sync(options, context);\n });\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/sync.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,iBAcpE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { red } from '@ms-cloudpack/task-reporter';
|
|
2
|
+
import { stopTelemetry } from '../../initTelemetry.js';
|
|
3
|
+
import { syncInternal } from './syncInternal.js';
|
|
4
|
+
export async function sync(options, context) {
|
|
5
|
+
let hasErrors = false;
|
|
6
|
+
let message = '';
|
|
7
|
+
try {
|
|
8
|
+
await syncInternal(options, context);
|
|
9
|
+
hasErrors = context.reporter.hasErrors();
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
message = error instanceof Error ? error.message : '<Unknown error>';
|
|
13
|
+
hasErrors = true;
|
|
14
|
+
}
|
|
15
|
+
finally {
|
|
16
|
+
context.reporter.complete(hasErrors ? red(message) : message);
|
|
17
|
+
await stopTelemetry();
|
|
18
|
+
process.exit(hasErrors ? 1 : 0);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/commands/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIjD,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,OAAoB,EAAE,OAAoB;IACnE,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,OAAO,GAAW,EAAE,CAAC;IACzB,IAAI;QACF,MAAM,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;KAC1C;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACrE,SAAS,GAAG,IAAI,CAAC;KAClB;YAAS;QACR,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC9D,MAAM,aAAa,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACjC;AACH,CAAC","sourcesContent":["import { red } from '@ms-cloudpack/task-reporter';\nimport { stopTelemetry } from '../../initTelemetry.js';\nimport { syncInternal } from './syncInternal.js';\nimport type { TaskContext } from '../../types/TaskContext.js';\nimport type { SyncOptions } from './types/SyncOptions.js';\n\nexport async function sync(options: SyncOptions, context: TaskContext) {\n let hasErrors = false;\n let message: string = '';\n try {\n await syncInternal(options, context);\n hasErrors = context.reporter.hasErrors();\n } catch (error) {\n message = error instanceof Error ? error.message : '<Unknown error>';\n hasErrors = true;\n } finally {\n context.reporter.complete(hasErrors ? red(message) : message);\n await stopTelemetry();\n process.exit(hasErrors ? 1 : 0);\n }\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TaskContext } from '../../types/TaskContext.js';
|
|
2
|
+
import type { SyncOptions } from './types/SyncOptions.js';
|
|
3
|
+
/**
|
|
4
|
+
* Syncs the packages to the remote cache.
|
|
5
|
+
* @param syncOptions - The options for the sync command.
|
|
6
|
+
* @param context - The task context.
|
|
7
|
+
* @returns The number of packages synced.
|
|
8
|
+
*/
|
|
9
|
+
export declare function syncInternal({ upload: isUpload }: SyncOptions, context: TaskContext): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=syncInternal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syncInternal.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/syncInternal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAW9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCzG"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { getPackagesToSync } from './getPackagesToSync.js';
|
|
2
|
+
import { createUploadTask } from './createUploadTask.js';
|
|
3
|
+
import { createDownloadTask } from './createDownloadTask.js';
|
|
4
|
+
import { PerfMarkerSyncStart, PerfMeasurementSyncDownload, PerfMeasurementSyncUpload, } from '../../performance/markers.js';
|
|
5
|
+
import { readConfig } from '@ms-cloudpack/config';
|
|
6
|
+
import { RemoteCacheClient, getAuthenticatedConnectionString } from '@ms-cloudpack/remote-cache';
|
|
7
|
+
/**
|
|
8
|
+
* Syncs the packages to the remote cache.
|
|
9
|
+
* @param syncOptions - The options for the sync command.
|
|
10
|
+
* @param context - The task context.
|
|
11
|
+
* @returns The number of packages synced.
|
|
12
|
+
*/
|
|
13
|
+
export async function syncInternal({ upload: isUpload }, context) {
|
|
14
|
+
const { appPath, reporter } = context;
|
|
15
|
+
const config = await readConfig(appPath);
|
|
16
|
+
if (!config.remoteCache) {
|
|
17
|
+
console.warn('Remote cache is not configured. Please add remoteCache to your cloudpack.config.json file.');
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const { container, storageAccount } = config.remoteCache;
|
|
21
|
+
const connectionString = await getAuthenticatedConnectionString({
|
|
22
|
+
storageAccount,
|
|
23
|
+
container,
|
|
24
|
+
permissions: { read: !isUpload, write: isUpload },
|
|
25
|
+
});
|
|
26
|
+
const client = new RemoteCacheClient({
|
|
27
|
+
container,
|
|
28
|
+
connectionString,
|
|
29
|
+
});
|
|
30
|
+
const list = await getPackagesToSync(appPath, reporter);
|
|
31
|
+
performance.mark(PerfMarkerSyncStart);
|
|
32
|
+
const uploads = list.map((item) => {
|
|
33
|
+
const { name, execute } = isUpload ? createUploadTask(client, item) : createDownloadTask(client, item);
|
|
34
|
+
return reporter.runTask(name, execute);
|
|
35
|
+
});
|
|
36
|
+
await Promise.all(uploads);
|
|
37
|
+
performance.measure(isUpload ? PerfMeasurementSyncUpload : PerfMeasurementSyncDownload, PerfMarkerSyncStart);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=syncInternal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syncInternal.js","sourceRoot":"","sources":["../../../src/commands/sync/syncInternal.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAC;AAGjG;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAe,EAAE,OAAoB;IACxF,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAEtC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACvB,OAAO,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;QAC3G,OAAO;KACR;IAED,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACzD,MAAM,gBAAgB,GAAG,MAAM,gCAAgC,CAAC;QAC9D,cAAc;QACd,SAAS;QACT,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;KAClD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;QACnC,SAAS;QACT,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAExD,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAChC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvG,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE3B,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,2BAA2B,EAAE,mBAAmB,CAAC,CAAC;AAC/G,CAAC","sourcesContent":["import type { TaskContext } from '../../types/TaskContext.js';\nimport { getPackagesToSync } from './getPackagesToSync.js';\nimport { createUploadTask } from './createUploadTask.js';\nimport { createDownloadTask } from './createDownloadTask.js';\nimport {\n PerfMarkerSyncStart,\n PerfMeasurementSyncDownload,\n PerfMeasurementSyncUpload,\n} from '../../performance/markers.js';\nimport { readConfig } from '@ms-cloudpack/config';\nimport { RemoteCacheClient, getAuthenticatedConnectionString } from '@ms-cloudpack/remote-cache';\nimport type { SyncOptions } from './types/SyncOptions.js';\n\n/**\n * Syncs the packages to the remote cache.\n * @param syncOptions - The options for the sync command.\n * @param context - The task context.\n * @returns The number of packages synced.\n */\nexport async function syncInternal({ upload: isUpload }: SyncOptions, context: TaskContext): Promise<void> {\n const { appPath, reporter } = context;\n\n const config = await readConfig(appPath);\n if (!config.remoteCache) {\n console.warn('Remote cache is not configured. Please add remoteCache to your cloudpack.config.json file.');\n return;\n }\n\n const { container, storageAccount } = config.remoteCache;\n const connectionString = await getAuthenticatedConnectionString({\n storageAccount,\n container,\n permissions: { read: !isUpload, write: isUpload },\n });\n\n const client = new RemoteCacheClient({\n container,\n connectionString,\n });\n\n const list = await getPackagesToSync(appPath, reporter);\n\n performance.mark(PerfMarkerSyncStart);\n\n const uploads = list.map((item) => {\n const { name, execute } = isUpload ? createUploadTask(client, item) : createDownloadTask(client, item);\n return reporter.runTask(name, execute);\n });\n\n await Promise.all(uploads);\n\n performance.measure(isUpload ? PerfMeasurementSyncUpload : PerfMeasurementSyncDownload, PerfMarkerSyncStart);\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SyncOptions.d.ts","sourceRoot":"","sources":["../../../../src/commands/sync/types/SyncOptions.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SyncOptions.js","sourceRoot":"","sources":["../../../../src/commands/sync/types/SyncOptions.ts"],"names":[],"mappings":"","sourcesContent":["export interface SyncOptions {\n upload: boolean;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBundleDetails.d.ts","sourceRoot":"","sources":["../../src/common/getBundleDetails.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE3E,wBAAsB,gBAAgB,CACpC,OAAO,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,EAChC,OAAO,EAAE;IAAE,QAAQ,EAAE,uBAAuB,CAAA;CAAE
|
|
1
|
+
{"version":3,"file":"getBundleDetails.d.ts","sourceRoot":"","sources":["../../src/common/getBundleDetails.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE3E,wBAAsB,gBAAgB,CACpC,OAAO,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,EAChC,OAAO,EAAE;IAAE,QAAQ,EAAE,uBAAuB,CAAA;CAAE;;;;;;;GAmC/C"}
|
|
@@ -21,11 +21,15 @@ export async function getBundleDetails(options, context) {
|
|
|
21
21
|
version: (isExternal ? version : packagePath) || packagePath,
|
|
22
22
|
});
|
|
23
23
|
// Derive where the output should be.
|
|
24
|
-
const
|
|
24
|
+
const folderName = `${filenamify(packageName)}-${version}-${bundleId}`;
|
|
25
|
+
const outputPath = path.join(getCachePath(), folderName);
|
|
25
26
|
return {
|
|
26
27
|
bundleId,
|
|
27
28
|
isExternal,
|
|
28
|
-
|
|
29
|
+
outputLocation: {
|
|
30
|
+
path: outputPath,
|
|
31
|
+
folderName,
|
|
32
|
+
},
|
|
29
33
|
};
|
|
30
34
|
}
|
|
31
35
|
//# sourceMappingURL=getBundleDetails.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBundleDetails.js","sourceRoot":"","sources":["../../src/common/getBundleDetails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAgC,EAChC,OAA8C;IAE9C,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,4DAA4D,WAAW,GAAG,CAAC,CAAC;KAC7F;IAED,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAElD,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,WAAW,GAAG,CAAC,CAAC;KACvF;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,EAAE,WAAW;QACjB,GAAG,UAAU;QACb,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,WAAW;KAC7D,CAAC,CAAC;IAEH,qCAAqC;IACrC,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"getBundleDetails.js","sourceRoot":"","sources":["../../src/common/getBundleDetails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAgC,EAChC,OAA8C;IAE9C,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,4DAA4D,WAAW,GAAG,CAAC,CAAC;KAC7F;IAED,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAElD,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,WAAW,GAAG,CAAC,CAAC;KACvF;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,EAAE,WAAW;QACjB,GAAG,UAAU;QACb,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,WAAW;KAC7D,CAAC,CAAC;IAEH,qCAAqC;IACrC,MAAM,UAAU,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;IACvE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,CAAC,CAAC;IAEzD,OAAO;QACL,QAAQ;QACR,UAAU;QACV,cAAc,EAAE;YACd,IAAI,EAAE,UAAU;YAChB,UAAU;SACX;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { isExternalPackage } from '@ms-cloudpack/package-utilities';\nimport hash from 'object-hash';\nimport filenamify from 'filenamify';\nimport path from 'path';\nimport { getCachePath } from '@ms-cloudpack/api-server';\nimport type { PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\n\nexport async function getBundleDetails(\n options: { packagePath: string },\n context: { packages: PackageDefinitionsCache },\n) {\n const { packagePath } = options;\n const { packages } = context;\n const definition = await packages.get(packagePath);\n\n if (!definition) {\n throw new Error(`Package definition (package.json) missing or invalid at \"${packagePath}\"`);\n }\n\n const { name: packageName, version } = definition;\n\n if (!packageName) {\n throw new Error(`Package definition (package.json) missing name at \"${packagePath}\"`);\n }\n\n const isExternal = isExternalPackage(packagePath);\n const bundleId = hash({\n name: packageName,\n ...definition,\n version: (isExternal ? version : packagePath) || packagePath,\n });\n\n // Derive where the output should be.\n const folderName = `${filenamify(packageName)}-${version}-${bundleId}`;\n const outputPath = path.join(getCachePath(), folderName);\n\n return {\n bundleId,\n isExternal,\n outputLocation: {\n path: outputPath,\n folderName,\n },\n };\n}\n"]}
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
* Marks the start of the CLI entry point.
|
|
3
3
|
*/
|
|
4
4
|
export declare const PerfMarkerCliEntry = "CLI_ENTRY";
|
|
5
|
+
/**
|
|
6
|
+
* Marks the start of the sync download/upload operations.
|
|
7
|
+
*/
|
|
8
|
+
export declare const PerfMarkerSyncStart = "SYNC_START";
|
|
5
9
|
/**
|
|
6
10
|
* Measures the time it takes to open the browser.
|
|
7
11
|
*/
|
|
@@ -10,4 +14,12 @@ export declare const PerfMeasurementOpenBrowser = "OPEN_BROWSER";
|
|
|
10
14
|
* Measures the time it takes to start resolving dependencies.
|
|
11
15
|
*/
|
|
12
16
|
export declare const PerfMeasurementTimeToResolveDependencies = "TIME_TO_RESOLVE_DEPENDENCIES";
|
|
17
|
+
/**
|
|
18
|
+
* Measures the time it takes to complete the download sync operation.
|
|
19
|
+
*/
|
|
20
|
+
export declare const PerfMeasurementSyncDownload = "SYNC_DOWNLOAD";
|
|
21
|
+
/**
|
|
22
|
+
* Measures the time it takes to complete the upload sync operation.
|
|
23
|
+
*/
|
|
24
|
+
export declare const PerfMeasurementSyncUpload = "SYNC_UPLOAD";
|
|
13
25
|
//# sourceMappingURL=markers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../src/performance/markers.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../src/performance/markers.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAIhD;;GAEG;AACH,eAAO,MAAM,0BAA0B,iBAAiB,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,wCAAwC,iCAAiC,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,yBAAyB,gBAAgB,CAAC"}
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
* Marks the start of the CLI entry point.
|
|
4
4
|
*/
|
|
5
5
|
export const PerfMarkerCliEntry = 'CLI_ENTRY';
|
|
6
|
+
/**
|
|
7
|
+
* Marks the start of the sync download/upload operations.
|
|
8
|
+
*/
|
|
9
|
+
export const PerfMarkerSyncStart = 'SYNC_START';
|
|
6
10
|
// Measurements
|
|
7
11
|
/**
|
|
8
12
|
* Measures the time it takes to open the browser.
|
|
@@ -12,4 +16,12 @@ export const PerfMeasurementOpenBrowser = 'OPEN_BROWSER';
|
|
|
12
16
|
* Measures the time it takes to start resolving dependencies.
|
|
13
17
|
*/
|
|
14
18
|
export const PerfMeasurementTimeToResolveDependencies = 'TIME_TO_RESOLVE_DEPENDENCIES';
|
|
19
|
+
/**
|
|
20
|
+
* Measures the time it takes to complete the download sync operation.
|
|
21
|
+
*/
|
|
22
|
+
export const PerfMeasurementSyncDownload = 'SYNC_DOWNLOAD';
|
|
23
|
+
/**
|
|
24
|
+
* Measures the time it takes to complete the upload sync operation.
|
|
25
|
+
*/
|
|
26
|
+
export const PerfMeasurementSyncUpload = 'SYNC_UPLOAD';
|
|
15
27
|
//# sourceMappingURL=markers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/performance/markers.ts"],"names":[],"mappings":"AAAA,UAAU;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE9C,eAAe;AAEf;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,8BAA8B,CAAC","sourcesContent":["// Markers\n\n/**\n * Marks the start of the CLI entry point.\n */\nexport const PerfMarkerCliEntry = 'CLI_ENTRY';\n\n// Measurements\n\n/**\n * Measures the time it takes to open the browser.\n */\nexport const PerfMeasurementOpenBrowser = 'OPEN_BROWSER';\n\n/**\n * Measures the time it takes to start resolving dependencies.\n */\nexport const PerfMeasurementTimeToResolveDependencies = 'TIME_TO_RESOLVE_DEPENDENCIES';\n"]}
|
|
1
|
+
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/performance/markers.ts"],"names":[],"mappings":"AAAA,UAAU;AAEV;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAEhD,eAAe;AAEf;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,8BAA8B,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAe,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC","sourcesContent":["// Markers\n\n/**\n * Marks the start of the CLI entry point.\n */\nexport const PerfMarkerCliEntry = 'CLI_ENTRY';\n\n/**\n * Marks the start of the sync download/upload operations.\n */\nexport const PerfMarkerSyncStart = 'SYNC_START';\n\n// Measurements\n\n/**\n * Measures the time it takes to open the browser.\n */\nexport const PerfMeasurementOpenBrowser = 'OPEN_BROWSER';\n\n/**\n * Measures the time it takes to start resolving dependencies.\n */\nexport const PerfMeasurementTimeToResolveDependencies = 'TIME_TO_RESOLVE_DEPENDENCIES';\n\n/**\n * Measures the time it takes to complete the download sync operation.\n */\nexport const PerfMeasurementSyncDownload = 'SYNC_DOWNLOAD';\n\n/**\n * Measures the time it takes to complete the upload sync operation.\n */\nexport const PerfMeasurementSyncUpload = 'SYNC_UPLOAD';\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.42.1",
|
|
4
4
|
"description": "The Cloudpack command line interface - a tool for managing fast inner and outer looping in web apps.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -11,17 +11,18 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@lage-run/target-graph": "^0.8.6",
|
|
14
|
-
"@ms-cloudpack/api-server": "^0.12.
|
|
15
|
-
"@ms-cloudpack/bundler": "^0.14.
|
|
16
|
-
"@ms-cloudpack/config": "^0.
|
|
14
|
+
"@ms-cloudpack/api-server": "^0.12.1",
|
|
15
|
+
"@ms-cloudpack/bundler": "^0.14.5",
|
|
16
|
+
"@ms-cloudpack/config": "^0.11.0",
|
|
17
17
|
"@ms-cloudpack/create-express-app": "^1.3.9",
|
|
18
18
|
"@ms-cloudpack/json-utilities": "^0.0.7",
|
|
19
|
-
"@ms-cloudpack/overlay": "^0.14.
|
|
19
|
+
"@ms-cloudpack/overlay": "^0.14.2",
|
|
20
20
|
"@ms-cloudpack/package-utilities": "^5.1.0",
|
|
21
21
|
"@ms-cloudpack/path-string-parsing": "^1.0.3",
|
|
22
22
|
"@ms-cloudpack/path-utilities": "^2.3.2",
|
|
23
23
|
"@ms-cloudpack/task-reporter": "^0.7.0",
|
|
24
24
|
"@ms-cloudpack/telemetry": "^0.3.6",
|
|
25
|
+
"@ms-cloudpack/remote-cache": "^0.0.1",
|
|
25
26
|
"commander": "^11.0.0",
|
|
26
27
|
"cross-spawn": "^7.0.3",
|
|
27
28
|
"es-module-lexer": "^1.0.3",
|