beachball 2.65.2 → 2.65.3
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/README.md +4 -0
- package/lib/changefile/getAllChangedPackages.d.ts +18 -0
- package/lib/changefile/getAllChangedPackages.d.ts.map +1 -0
- package/lib/changefile/getAllChangedPackages.js +78 -0
- package/lib/changefile/getAllChangedPackages.js.map +1 -0
- package/lib/changefile/getCatalogChangedPackages.d.ts +19 -0
- package/lib/changefile/getCatalogChangedPackages.d.ts.map +1 -0
- package/lib/changefile/getCatalogChangedPackages.js +84 -0
- package/lib/changefile/getCatalogChangedPackages.js.map +1 -0
- package/lib/changefile/getChangedPackages.d.ts +12 -14
- package/lib/changefile/getChangedPackages.d.ts.map +1 -1
- package/lib/changefile/getChangedPackages.js +56 -109
- package/lib/changefile/getChangedPackages.js.map +1 -1
- package/lib/changefile/isPackageIncluded.d.ts +18 -0
- package/lib/changefile/isPackageIncluded.d.ts.map +1 -0
- package/lib/changefile/isPackageIncluded.js +33 -0
- package/lib/changefile/isPackageIncluded.js.map +1 -0
- package/lib/changefile/writeChangeFiles.d.ts.map +1 -1
- package/lib/changefile/writeChangeFiles.js +6 -10
- package/lib/changefile/writeChangeFiles.js.map +1 -1
- package/lib/commands/configGet.js +3 -3
- package/lib/commands/configGet.js.map +1 -1
- package/lib/commands/configList.js +2 -2
- package/lib/commands/configList.js.map +1 -1
- package/lib/git/ensureSharedHistory.d.ts +8 -2
- package/lib/git/ensureSharedHistory.d.ts.map +1 -1
- package/lib/git/ensureSharedHistory.js +25 -21
- package/lib/git/ensureSharedHistory.js.map +1 -1
- package/lib/git/fetch.d.ts +13 -4
- package/lib/git/fetch.d.ts.map +1 -1
- package/lib/git/fetch.js +18 -8
- package/lib/git/fetch.js.map +1 -1
- package/lib/monorepo/diffCatalogs.d.ts +14 -0
- package/lib/monorepo/diffCatalogs.d.ts.map +1 -0
- package/lib/monorepo/diffCatalogs.js +47 -0
- package/lib/monorepo/diffCatalogs.js.map +1 -0
- package/lib/monorepo/filterIgnoredFiles.d.ts +1 -1
- package/lib/monorepo/filterIgnoredFiles.d.ts.map +1 -1
- package/lib/monorepo/filterIgnoredFiles.js +11 -5
- package/lib/monorepo/filterIgnoredFiles.js.map +1 -1
- package/lib/types/BeachballOptions.d.ts +1 -0
- package/lib/types/BeachballOptions.d.ts.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -110,6 +110,10 @@ beachball publish -r http://localhost:4873 -t beta
|
|
|
110
110
|
|
|
111
111
|
In large monorepos, the process of fetching versions for sync or before publishing can be time-consuming due to the high number of packages. To optimize performance, you can override the concurrency for fetching from the registry by setting `options.npmReadConcurrency` (default: 5). You can also increase concurrency for hook calls and publish operations via `options.concurrency` (default: 1; respects topological order).
|
|
112
112
|
|
|
113
|
+
### Optimizing for large monorepos
|
|
114
|
+
|
|
115
|
+
If you have a large to very large monorepo, there are several configuration options and strategies that can help improve Beachball's performance. For details, see the [large repos guide](https://microsoft.github.io/beachball/concepts/large-repos.html).
|
|
116
|
+
|
|
113
117
|
### API surface
|
|
114
118
|
|
|
115
119
|
Beachball **does not** have a public API beyond the provided [options](https://microsoft.github.io/beachball/overview/configuration.html). Usage of private APIs is not supported and may break at any time.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { BeachballOptions } from '../types/BeachballOptions';
|
|
2
|
+
import type { PackageInfos, ScopedPackages } from '../types/PackageInfo';
|
|
3
|
+
/**
|
|
4
|
+
* Gets all the changed package names, regardless of the change files.
|
|
5
|
+
*
|
|
6
|
+
* PRE: Assumes shared git history has already been fetched, probably by `getChangedPackages`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getAllChangedPackages(params: {
|
|
9
|
+
options: Pick<BeachballOptions, 'path' | 'changeDir' | 'ignorePatterns' | 'verbose'>;
|
|
10
|
+
packageInfos: PackageInfos;
|
|
11
|
+
scopedPackages: ScopedPackages;
|
|
12
|
+
/**
|
|
13
|
+
* Paths of all committed and staged files in the current branch as returned by git,
|
|
14
|
+
* relative to `options.path` with forward slashes.
|
|
15
|
+
*/
|
|
16
|
+
allChangedFiles: Set<string>;
|
|
17
|
+
}): string[];
|
|
18
|
+
//# sourceMappingURL=getAllChangedPackages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAllChangedPackages.d.ts","sourceRoot":"","sources":["../../src/changefile/getAllChangedPackages.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAe,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAKtF;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,WAAW,GAAG,gBAAgB,GAAG,SAAS,CAAC,CAAC;IACrF,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B;;;OAGG;IACH,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC9B,GAAG,MAAM,EAAE,CAwDX"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getAllChangedPackages = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const filterIgnoredFiles_1 = require("../monorepo/filterIgnoredFiles");
|
|
9
|
+
const isPackageIncluded_1 = require("./isPackageIncluded");
|
|
10
|
+
const count = (n, str) => `${n} ${str}${n === 1 ? '' : 's'}`;
|
|
11
|
+
/**
|
|
12
|
+
* Gets all the changed package names, regardless of the change files.
|
|
13
|
+
*
|
|
14
|
+
* PRE: Assumes shared git history has already been fetched, probably by `getChangedPackages`.
|
|
15
|
+
*/
|
|
16
|
+
function getAllChangedPackages(params) {
|
|
17
|
+
const { options, packageInfos, scopedPackages, allChangedFiles } = params;
|
|
18
|
+
const { path: cwd, changeDir } = options;
|
|
19
|
+
const { verboseLog, logIgnored, logIncluded } = (0, isPackageIncluded_1.getIncludedLoggers)(options);
|
|
20
|
+
if (!allChangedFiles.size) {
|
|
21
|
+
verboseLog('Found no changed files in current branch');
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
verboseLog(`Found ${count(allChangedFiles.size, 'changed file')} in current branch (before filtering)`);
|
|
25
|
+
// Filter out changed files which are ignored by ignorePatterns.
|
|
26
|
+
// Also ignore the CHANGELOG files and change files because they're generated by beachball.
|
|
27
|
+
const nonIgnoredChanges = (0, filterIgnoredFiles_1.filterIgnoredFiles)({
|
|
28
|
+
filePaths: allChangedFiles,
|
|
29
|
+
ignorePatterns: [...(options.ignorePatterns || []), `${changeDir}/*.json`, 'CHANGELOG.{md,json}'],
|
|
30
|
+
logIgnored,
|
|
31
|
+
});
|
|
32
|
+
if (!nonIgnoredChanges.length) {
|
|
33
|
+
verboseLog('All files were ignored');
|
|
34
|
+
return [];
|
|
35
|
+
}
|
|
36
|
+
// Determine which package each changed file came from (using packageInfos[x].packageJsonPath),
|
|
37
|
+
// and whether that package is in scope and not private
|
|
38
|
+
const includedPackages = new Set();
|
|
39
|
+
let fileCount = 0;
|
|
40
|
+
const packageInfosByPath = {};
|
|
41
|
+
for (const info of Object.values(packageInfos)) {
|
|
42
|
+
packageInfosByPath[path_1.default.normalize(path_1.default.dirname(info.packageJsonPath))] = info;
|
|
43
|
+
}
|
|
44
|
+
for (const moddedFile of nonIgnoredChanges) {
|
|
45
|
+
const packageInfo = getMatchingPackageInfo(moddedFile, cwd, packageInfosByPath);
|
|
46
|
+
if (!packageInfo) {
|
|
47
|
+
logIgnored(moddedFile, 'not in a package');
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const { isIncluded, reason } = (0, isPackageIncluded_1.isPackageIncluded)(packageInfo, scopedPackages);
|
|
51
|
+
if (!isIncluded) {
|
|
52
|
+
logIgnored(moddedFile, reason);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
includedPackages.add(packageInfo.name);
|
|
56
|
+
fileCount++;
|
|
57
|
+
logIncluded(moddedFile);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
verboseLog(`Found ${count(fileCount, 'file')} in ${count(includedPackages.size, 'package')} that should be published`);
|
|
61
|
+
return [...includedPackages];
|
|
62
|
+
}
|
|
63
|
+
exports.getAllChangedPackages = getAllChangedPackages;
|
|
64
|
+
function getMatchingPackageInfo(file, cwd, packageInfosByPath) {
|
|
65
|
+
// Normalize all the paths before comparing (the packageInfosByPath entries should also be normalized)
|
|
66
|
+
// to ensure that this doesn't break on Windows if any input paths have forward slashes
|
|
67
|
+
cwd = path_1.default.normalize(cwd);
|
|
68
|
+
const absFile = path_1.default.normalize(path_1.default.join(cwd, file));
|
|
69
|
+
let absDir = '';
|
|
70
|
+
do {
|
|
71
|
+
absDir = path_1.default.dirname(absDir || absFile);
|
|
72
|
+
if (packageInfosByPath[absDir]) {
|
|
73
|
+
return packageInfosByPath[absDir];
|
|
74
|
+
}
|
|
75
|
+
} while (absDir !== cwd);
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=getAllChangedPackages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAllChangedPackages.js","sourceRoot":"","sources":["../../src/changefile/getAllChangedPackages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { BeachballOptions } from '../types/BeachballOptions';
|
|
2
|
+
import { type PackageInfos, type ScopedPackages } from '../types/PackageInfo';
|
|
3
|
+
/**
|
|
4
|
+
* Get the packages that were changed due to catalog version modifications.
|
|
5
|
+
*
|
|
6
|
+
* PRE: Assumes shared git history has already been fetched, probably by `getChangedPackages`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getCatalogChangedPackages(params: {
|
|
9
|
+
packageInfos: PackageInfos;
|
|
10
|
+
scopedPackages: ScopedPackages;
|
|
11
|
+
options: Pick<BeachballOptions, 'branch' | 'path' | 'verbose'>;
|
|
12
|
+
/**
|
|
13
|
+
* All changed file paths in the current branch, relative to `options.path` with forward slashes.
|
|
14
|
+
* This is only used to determine if the file which might have catalog info has changed (to avoid
|
|
15
|
+
* reading it from git history in the most common case where it hasn't changed).
|
|
16
|
+
*/
|
|
17
|
+
allChangedFiles: Set<string>;
|
|
18
|
+
}): string[];
|
|
19
|
+
//# sourceMappingURL=getCatalogChangedPackages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCatalogChangedPackages.d.ts","sourceRoot":"","sources":["../../src/changefile/getCatalogChangedPackages.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,KAAK,YAAY,EAA0B,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAKtG;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/D;;;;OAIG;IACH,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC9B,GAAG,MAAM,EAAE,CA+EX"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getCatalogChangedPackages = void 0;
|
|
7
|
+
const workspace_tools_1 = require("workspace-tools");
|
|
8
|
+
const PackageInfo_1 = require("../types/PackageInfo");
|
|
9
|
+
const isPackageIncluded_1 = require("./isPackageIncluded");
|
|
10
|
+
const diffCatalogs_1 = require("../monorepo/diffCatalogs");
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
/**
|
|
13
|
+
* Get the packages that were changed due to catalog version modifications.
|
|
14
|
+
*
|
|
15
|
+
* PRE: Assumes shared git history has already been fetched, probably by `getChangedPackages`.
|
|
16
|
+
*/
|
|
17
|
+
function getCatalogChangedPackages(params) {
|
|
18
|
+
const { options, packageInfos, scopedPackages, allChangedFiles } = params;
|
|
19
|
+
const { branch, path: cwd } = options;
|
|
20
|
+
const { verboseLog, logIncluded } = (0, isPackageIncluded_1.getIncludedLoggers)(options);
|
|
21
|
+
const currentCatalogs = (0, workspace_tools_1.getCatalogs)(cwd);
|
|
22
|
+
const catalogFilePath = currentCatalogs && (0, workspace_tools_1.getCatalogFilePath)(cwd);
|
|
23
|
+
// If there are catalogs, convert the file path to relative with forward slashes for comparison
|
|
24
|
+
// with git output. (Do the slash conversion to be safe, but realistically this should be either
|
|
25
|
+
// .yarnrc.yml, package.json, or pnpm-workspace.yaml directly under cwd.)
|
|
26
|
+
const relCatalogFilePath = catalogFilePath && path_1.default.relative(cwd, catalogFilePath.filePath).replace(/\\/g, '/');
|
|
27
|
+
// If the repo doesn't define catalogs or the catalog file hasn't changed, return early
|
|
28
|
+
// (skip the git operation to read the file from history, since this can be expensive in
|
|
29
|
+
// very large repos, and the change command is run frequently by developers)
|
|
30
|
+
if (!relCatalogFilePath || !currentCatalogs || !allChangedFiles.has(relCatalogFilePath)) {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
verboseLog('Checking for changes to catalog: dependencies...');
|
|
34
|
+
// Get the old catalog file content from the branch we're comparing against
|
|
35
|
+
const oldCatalogFileContent = (0, workspace_tools_1.getFileFromRef)({ ref: branch, filePath: relCatalogFilePath, cwd });
|
|
36
|
+
const oldCatalogs = oldCatalogFileContent
|
|
37
|
+
? (0, workspace_tools_1.parseCatalogContent)(oldCatalogFileContent, catalogFilePath.manager)
|
|
38
|
+
: undefined;
|
|
39
|
+
// Calculate the diff before going into packages, so we only check everything in the less-common
|
|
40
|
+
// case that a catalog version has changed
|
|
41
|
+
const catalogsDiff = oldCatalogs ? (0, diffCatalogs_1.diffCatalogs)({ before: oldCatalogs, after: currentCatalogs }) : currentCatalogs;
|
|
42
|
+
if (!catalogsDiff) {
|
|
43
|
+
verboseLog('No catalog: changes found');
|
|
44
|
+
return [];
|
|
45
|
+
}
|
|
46
|
+
const changedPackages = [];
|
|
47
|
+
const changedCatalogDepNames = [
|
|
48
|
+
Object.keys(catalogsDiff.default || {}),
|
|
49
|
+
Object.values(catalogsDiff.named || {}).map(catalog => Object.keys(catalog)),
|
|
50
|
+
].flat(2);
|
|
51
|
+
for (const pkg of Object.values(packageInfos)) {
|
|
52
|
+
// Skip logging exclude reasons for catalog references
|
|
53
|
+
if (!(0, isPackageIncluded_1.isPackageIncluded)(pkg, scopedPackages).isIncluded)
|
|
54
|
+
continue;
|
|
55
|
+
const changedDeps = [];
|
|
56
|
+
for (const depType of PackageInfo_1.consideredDependencies) {
|
|
57
|
+
const deps = pkg[depType];
|
|
58
|
+
if (!deps)
|
|
59
|
+
continue;
|
|
60
|
+
for (const [name, version] of Object.entries(deps)) {
|
|
61
|
+
// If this dep name might be one of the changed catalog dependencies, check if the version
|
|
62
|
+
// specified in this package can be resolved from the catalog diff. If so, it's a change.
|
|
63
|
+
// (it's possible some package could specify a non-catalog version of the same dep)
|
|
64
|
+
if (changedCatalogDepNames.includes(name) &&
|
|
65
|
+
(0, workspace_tools_1.getCatalogVersion)({ name, version, catalogs: catalogsDiff, allowNotFound: true })) {
|
|
66
|
+
changedDeps.push(name);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (changedDeps.length) {
|
|
71
|
+
if (!changedPackages.length) {
|
|
72
|
+
verboseLog('catalog: dependencies referenced by the following packages have changed:');
|
|
73
|
+
}
|
|
74
|
+
changedPackages.push(pkg.name);
|
|
75
|
+
logIncluded(`${pkg.name}: ${changedDeps.join(', ')}`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (!changedPackages.length) {
|
|
79
|
+
verboseLog('No changes found to catalog: dependencies of in-scope published packages');
|
|
80
|
+
}
|
|
81
|
+
return changedPackages;
|
|
82
|
+
}
|
|
83
|
+
exports.getCatalogChangedPackages = getCatalogChangedPackages;
|
|
84
|
+
//# sourceMappingURL=getCatalogChangedPackages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCatalogChangedPackages.js","sourceRoot":"","sources":["../../src/changefile/getCatalogChangedPackages.ts"],"names":[],"mappings":";;;;;;AAAA,qDAMyB;AAEzB,sDAAsG;AACtG,2DAA4E;AAC5E,2DAAwD;AACxD,gDAAwB;AAExB;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,MAUzC;IACC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC1E,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IACtC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAA,sCAAkB,EAAC,OAAO,CAAC,CAAC;IAEhE,MAAM,eAAe,GAAG,IAAA,6BAAW,EAAC,GAAG,CAAC,CAAC;IACzC,MAAM,eAAe,GAAG,eAAe,IAAI,IAAA,oCAAkB,EAAC,GAAG,CAAC,CAAC;IACnE,+FAA+F;IAC/F,gGAAgG;IAChG,yEAAyE;IACzE,MAAM,kBAAkB,GAAG,eAAe,IAAI,cAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE/G,uFAAuF;IACvF,wFAAwF;IACxF,4EAA4E;IAC5E,IAAI,CAAC,kBAAkB,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;QACvF,OAAO,EAAE,CAAC;KACX;IAED,UAAU,CAAC,kDAAkD,CAAC,CAAC;IAE/D,2EAA2E;IAC3E,MAAM,qBAAqB,GAAG,IAAA,gCAAc,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC;IACjG,MAAM,WAAW,GAAG,qBAAqB;QACvC,CAAC,CAAC,IAAA,qCAAmB,EAAC,qBAAqB,EAAE,eAAe,CAAC,OAAO,CAAC;QACrE,CAAC,CAAC,SAAS,CAAC;IAEd,gGAAgG;IAChG,0CAA0C;IAC1C,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,IAAA,2BAAY,EAAC,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IACnH,IAAI,CAAC,YAAY,EAAE;QACjB,UAAU,CAAC,2BAA2B,CAAC,CAAC;QACxC,OAAO,EAAE,CAAC;KACX;IAED,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,MAAM,sBAAsB,GAAG;QAC7B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC7E,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEV,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAC7C,sDAAsD;QACtD,IAAI,CAAC,IAAA,qCAAiB,EAAC,GAAG,EAAE,cAAc,CAAC,CAAC,UAAU;YAAE,SAAS;QAEjE,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,OAAO,IAAI,oCAAsB,EAAE;YAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI;gBAAE,SAAS;YAEpB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAClD,0FAA0F;gBAC1F,yFAAyF;gBACzF,mFAAmF;gBACnF,IACE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACrC,IAAA,mCAAiB,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EACjF;oBACA,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACxB;aACF;SACF;QAED,IAAI,WAAW,CAAC,MAAM,EAAE;YACtB,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;gBAC3B,UAAU,CAAC,0EAA0E,CAAC,CAAC;aACxF;YACD,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/B,WAAW,CAAC,GAAG,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACvD;KACF;IAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;QAC3B,UAAU,CAAC,0EAA0E,CAAC,CAAC;KACxF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAzFD,8DAyFC"}
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import type { BeachballOptions } from '../types/BeachballOptions';
|
|
2
|
-
import type { PackageInfos,
|
|
2
|
+
import type { PackageInfos, ScopedPackages } from '../types/PackageInfo';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Gets all the changed packages which **do not already have a change file** and are in scope.
|
|
5
|
+
* This includes all packages which should change due to catalog version changes.
|
|
6
|
+
* This is only used by the `change` and `check` commands, not the bump/publish process.
|
|
6
7
|
*
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
|
-
export declare function isPackageIncluded(packageInfo: PackageInfo | undefined, scopedPackages: ScopedPackages): {
|
|
10
|
-
isIncluded: boolean;
|
|
11
|
-
reason: string;
|
|
12
|
-
};
|
|
13
|
-
/**
|
|
14
|
-
* Gets all the changed packages which do not already have a change file and are in scope.
|
|
15
|
-
* Exceptions:
|
|
8
|
+
* Special cases:
|
|
16
9
|
* - If `options.package` is provided, use that as-is (skipping all git operations).
|
|
17
|
-
* - If `options.all` is true,
|
|
18
|
-
*
|
|
10
|
+
* - If `options.all` is true, gets all the packages in scope regardless of whether they've changed
|
|
11
|
+
* (skipping git diff of files), omitting packages that already have change files.
|
|
12
|
+
*
|
|
13
|
+
* Usually (without `options.package`) this has the side effect of calling `ensureSharedHistory` to
|
|
14
|
+
* verify that enough git history is available to check for changes between `HEAD` and
|
|
15
|
+
* `options.branch` (only an issue for shallow clones), and deepens the history if needed.
|
|
16
|
+
* Unless `options.fetch` is `false`, it will also fetch from the remote.
|
|
19
17
|
*/
|
|
20
18
|
export declare function getChangedPackages(options: BeachballOptions, packageInfos: PackageInfos, scopedPackages: ScopedPackages): string[];
|
|
21
19
|
//# sourceMappingURL=getChangedPackages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getChangedPackages.d.ts","sourceRoot":"","sources":["../../src/changefile/getChangedPackages.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"getChangedPackages.d.ts","sourceRoot":"","sources":["../../src/changefile/getChangedPackages.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAQzE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,GAC7B,MAAM,EAAE,CAgGV"}
|
|
@@ -3,129 +3,73 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getChangedPackages =
|
|
6
|
+
exports.getChangedPackages = void 0;
|
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
|
-
const paths_1 = require("../paths");
|
|
10
9
|
const workspace_tools_1 = require("workspace-tools");
|
|
11
|
-
const
|
|
10
|
+
const paths_1 = require("../paths");
|
|
12
11
|
const readJson_1 = require("../object/readJson");
|
|
13
12
|
const bulletedList_1 = require("../logging/bulletedList");
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
// to ensure that this doesn't break on Windows if any input paths have forward slashes
|
|
19
|
-
cwd = path_1.default.normalize(cwd);
|
|
20
|
-
const absFile = path_1.default.normalize(path_1.default.join(cwd, file));
|
|
21
|
-
let absDir = '';
|
|
22
|
-
do {
|
|
23
|
-
absDir = path_1.default.dirname(absDir || absFile);
|
|
24
|
-
if (packageInfosByPath[absDir]) {
|
|
25
|
-
return packageInfosByPath[absDir];
|
|
26
|
-
}
|
|
27
|
-
} while (absDir !== cwd);
|
|
28
|
-
return undefined;
|
|
29
|
-
}
|
|
13
|
+
const getAllChangedPackages_1 = require("./getAllChangedPackages");
|
|
14
|
+
const getCatalogChangedPackages_1 = require("./getCatalogChangedPackages");
|
|
15
|
+
const isPackageIncluded_1 = require("./isPackageIncluded");
|
|
16
|
+
const ensureSharedHistory_1 = require("../git/ensureSharedHistory");
|
|
30
17
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
18
|
+
* Gets all the changed packages which **do not already have a change file** and are in scope.
|
|
19
|
+
* This includes all packages which should change due to catalog version changes.
|
|
20
|
+
* This is only used by the `change` and `check` commands, not the bump/publish process.
|
|
33
21
|
*
|
|
34
|
-
*
|
|
35
|
-
*/
|
|
36
|
-
function isPackageIncluded(packageInfo, scopedPackages) {
|
|
37
|
-
const reason = !packageInfo
|
|
38
|
-
? 'no corresponding package found'
|
|
39
|
-
: packageInfo.private
|
|
40
|
-
? `${packageInfo.name} is private`
|
|
41
|
-
: // This is a package-only option (can't be set at repo level or via CLI)
|
|
42
|
-
packageInfo.packageOptions?.shouldPublish === false
|
|
43
|
-
? `${packageInfo.name} has beachball.shouldPublish=false`
|
|
44
|
-
: !scopedPackages.has(packageInfo.name)
|
|
45
|
-
? `${packageInfo.name} is out of scope`
|
|
46
|
-
: ''; // not ignored
|
|
47
|
-
return { isIncluded: !reason, reason };
|
|
48
|
-
}
|
|
49
|
-
exports.isPackageIncluded = isPackageIncluded;
|
|
50
|
-
/**
|
|
51
|
-
* Gets all the changed package names, regardless of the change files.
|
|
52
|
-
* If `options.all` is set, returns all the packages in scope, regardless of whether they've changed.
|
|
53
|
-
*/
|
|
54
|
-
function getAllChangedPackages(options, packageInfos, scopedPackages) {
|
|
55
|
-
const { branch, path: cwd, verbose, all, changeDir } = options;
|
|
56
|
-
const verboseLog = (msg) => verbose && console.log(msg);
|
|
57
|
-
const logIgnored = (file, reason) => verboseLog(` - ~~${file}~~ (${reason})`);
|
|
58
|
-
const logIncluded = (file) => verboseLog(` - ${file}`);
|
|
59
|
-
// If --all is set, return all the packages in scope rather than looking at which files changed
|
|
60
|
-
if (all) {
|
|
61
|
-
verboseLog('--all option was provided, so including all packages that are in scope (regardless of changes)');
|
|
62
|
-
return Object.values(packageInfos)
|
|
63
|
-
.filter(pkg => {
|
|
64
|
-
const { isIncluded, reason } = isPackageIncluded(pkg, scopedPackages);
|
|
65
|
-
verboseLog(isIncluded ? ` - ${pkg.name}` : ` - ~~${pkg.name}~~ (${reason.replace(`${pkg.name} `, '')})`);
|
|
66
|
-
return isIncluded;
|
|
67
|
-
})
|
|
68
|
-
.map(pkg => pkg.name);
|
|
69
|
-
}
|
|
70
|
-
console.log(`Checking for changes against "${options.branch}"`);
|
|
71
|
-
(0, ensureSharedHistory_1.ensureSharedHistory)(options);
|
|
72
|
-
const changes = [...((0, workspace_tools_1.getBranchChanges)({ branch, cwd }) || []), ...((0, workspace_tools_1.getStagedChanges)({ cwd }) || [])];
|
|
73
|
-
verboseLog(`Found ${count(changes.length, 'changed file')} in current branch (before filtering)`);
|
|
74
|
-
if (!changes.length) {
|
|
75
|
-
return [];
|
|
76
|
-
}
|
|
77
|
-
// Filter out changed files which are ignored by ignorePatterns.
|
|
78
|
-
// Also ignore the CHANGELOG files and change files because they're generated by beachball.
|
|
79
|
-
const nonIgnoredChanges = (0, filterIgnoredFiles_1.filterIgnoredFiles)({
|
|
80
|
-
filePaths: changes,
|
|
81
|
-
ignorePatterns: [...(options.ignorePatterns || []), `${changeDir}/*.json`, 'CHANGELOG.{md,json}'],
|
|
82
|
-
logIgnored,
|
|
83
|
-
});
|
|
84
|
-
if (!nonIgnoredChanges.length) {
|
|
85
|
-
verboseLog('All files were ignored');
|
|
86
|
-
return [];
|
|
87
|
-
}
|
|
88
|
-
// Determine which package each changed file came from (using packageInfos[x].packageJsonPath),
|
|
89
|
-
// and whether that package is in scope and not private
|
|
90
|
-
const includedPackages = new Set();
|
|
91
|
-
let fileCount = 0;
|
|
92
|
-
const packageInfosByPath = {};
|
|
93
|
-
for (const info of Object.values(packageInfos)) {
|
|
94
|
-
packageInfosByPath[path_1.default.normalize(path_1.default.dirname(info.packageJsonPath))] = info;
|
|
95
|
-
}
|
|
96
|
-
for (const moddedFile of nonIgnoredChanges) {
|
|
97
|
-
const packageInfo = getMatchingPackageInfo(moddedFile, cwd, packageInfosByPath);
|
|
98
|
-
if (!packageInfo)
|
|
99
|
-
continue;
|
|
100
|
-
const { isIncluded, reason } = isPackageIncluded(packageInfo, scopedPackages);
|
|
101
|
-
if (!isIncluded) {
|
|
102
|
-
logIgnored(moddedFile, reason);
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
includedPackages.add(packageInfo.name);
|
|
106
|
-
fileCount++;
|
|
107
|
-
logIncluded(moddedFile);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
verboseLog(`Found ${count(fileCount, 'file')} in ${count(includedPackages.size, 'package')} that should be published`);
|
|
111
|
-
return [...includedPackages];
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Gets all the changed packages which do not already have a change file and are in scope.
|
|
115
|
-
* Exceptions:
|
|
22
|
+
* Special cases:
|
|
116
23
|
* - If `options.package` is provided, use that as-is (skipping all git operations).
|
|
117
|
-
* - If `options.all` is true,
|
|
118
|
-
*
|
|
24
|
+
* - If `options.all` is true, gets all the packages in scope regardless of whether they've changed
|
|
25
|
+
* (skipping git diff of files), omitting packages that already have change files.
|
|
26
|
+
*
|
|
27
|
+
* Usually (without `options.package`) this has the side effect of calling `ensureSharedHistory` to
|
|
28
|
+
* verify that enough git history is available to check for changes between `HEAD` and
|
|
29
|
+
* `options.branch` (only an issue for shallow clones), and deepens the history if needed.
|
|
30
|
+
* Unless `options.fetch` is `false`, it will also fetch from the remote.
|
|
119
31
|
*/
|
|
120
32
|
function getChangedPackages(options, packageInfos, scopedPackages) {
|
|
121
33
|
const { branch } = options;
|
|
34
|
+
const { verboseLog, logIncluded, logIgnored } = (0, isPackageIncluded_1.getIncludedLoggers)(options);
|
|
122
35
|
if (options.package) {
|
|
123
36
|
return typeof options.package === 'string' ? [options.package] : [...options.package];
|
|
124
37
|
}
|
|
125
|
-
|
|
38
|
+
console.log(`Checking for changes against "${branch}"`);
|
|
39
|
+
// Ensure the current branch and target branch have a common shared commit. This has the side
|
|
40
|
+
// effect of fetching from the remote (unless disabled), which should be done even if there's
|
|
41
|
+
// already shared history (and even with --all) for accurate added change file checks later.
|
|
42
|
+
(0, ensureSharedHistory_1.ensureSharedHistory)(options);
|
|
43
|
+
let changedPackages;
|
|
44
|
+
let stagedFiles;
|
|
45
|
+
if (options.all) {
|
|
46
|
+
// If --all is set, return all the packages in scope rather than looking at which files changed
|
|
47
|
+
verboseLog('--all option was provided, so including all packages that are in scope (regardless of changes)');
|
|
48
|
+
changedPackages = new Set(Object.values(packageInfos)
|
|
49
|
+
.filter(pkg => {
|
|
50
|
+
const { isIncluded, reason } = (0, isPackageIncluded_1.isPackageIncluded)(pkg, scopedPackages);
|
|
51
|
+
isIncluded ? logIncluded(pkg.name) : logIgnored(pkg.name, reason.replace(`${pkg.name} `, ''));
|
|
52
|
+
return isIncluded;
|
|
53
|
+
})
|
|
54
|
+
.map(pkg => pkg.name));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
stagedFiles = (0, workspace_tools_1.getStagedChanges)({ cwd: options.path }) || [];
|
|
58
|
+
const committedFiles = (0, workspace_tools_1.getBranchChanges)({ branch, cwd: options.path }) || [];
|
|
59
|
+
// dedupe with a Set in case a file was already committed and has more changes staged
|
|
60
|
+
const allChangedFiles = new Set([...committedFiles, ...stagedFiles]);
|
|
61
|
+
const directChangedPackages = (0, getAllChangedPackages_1.getAllChangedPackages)({ options, packageInfos, scopedPackages, allChangedFiles });
|
|
62
|
+
const catalogChangedPackages = (0, getCatalogChangedPackages_1.getCatalogChangedPackages)({
|
|
63
|
+
options,
|
|
64
|
+
packageInfos,
|
|
65
|
+
scopedPackages,
|
|
66
|
+
allChangedFiles,
|
|
67
|
+
});
|
|
68
|
+
changedPackages = new Set([...directChangedPackages, ...catalogChangedPackages]);
|
|
69
|
+
}
|
|
126
70
|
const changePath = (0, paths_1.getChangePath)(options);
|
|
127
71
|
if (!fs_1.default.existsSync(changePath)) {
|
|
128
|
-
return changedPackages;
|
|
72
|
+
return [...changedPackages];
|
|
129
73
|
}
|
|
130
74
|
// TODO: this should probably reuse the result of readChangeFiles, but they use slightly different args...
|
|
131
75
|
const committedChangeFiles = (0, workspace_tools_1.getChangesBetweenRefs)({
|
|
@@ -137,7 +81,9 @@ function getChangedPackages(options, packageInfos, scopedPackages) {
|
|
|
137
81
|
throwOnError: false,
|
|
138
82
|
});
|
|
139
83
|
// Also consider staged change files (not yet committed) so that `check` respects them
|
|
140
|
-
const
|
|
84
|
+
const relChangeDir = path_1.default.relative(options.path, changePath).replace(/\\/g, '/') + '/';
|
|
85
|
+
const stagedChangeFiles = (stagedFiles?.filter(f => f.startsWith(relChangeDir)).map(f => f.replace(relChangeDir, '')) ||
|
|
86
|
+
(0, workspace_tools_1.getStagedChanges)({ cwd: changePath })).filter(f => f.endsWith('.json'));
|
|
141
87
|
const changeFiles = [...new Set([...committedChangeFiles, ...stagedChangeFiles])];
|
|
142
88
|
const changeFilePackageSet = new Set();
|
|
143
89
|
// Loop through the change files, building up a set of packages that we can skip
|
|
@@ -149,6 +95,7 @@ function getChangedPackages(options, packageInfos, scopedPackages) {
|
|
|
149
95
|
for (const change of changes) {
|
|
150
96
|
if (change.packageName) {
|
|
151
97
|
changeFilePackageSet.add(change.packageName);
|
|
98
|
+
changedPackages.delete(change.packageName);
|
|
152
99
|
}
|
|
153
100
|
}
|
|
154
101
|
}
|
|
@@ -160,7 +107,7 @@ function getChangedPackages(options, packageInfos, scopedPackages) {
|
|
|
160
107
|
console.log('Your local repository already has change files for these packages:\n' +
|
|
161
108
|
(0, bulletedList_1.bulletedList)([...changeFilePackageSet].sort()));
|
|
162
109
|
}
|
|
163
|
-
return changedPackages
|
|
110
|
+
return [...changedPackages];
|
|
164
111
|
}
|
|
165
112
|
exports.getChangedPackages = getChangedPackages;
|
|
166
113
|
//# sourceMappingURL=getChangedPackages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getChangedPackages.js","sourceRoot":"","sources":["../../src/changefile/getChangedPackages.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;
|
|
1
|
+
{"version":3,"file":"getChangedPackages.js","sourceRoot":"","sources":["../../src/changefile/getChangedPackages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { BeachballOptions } from '../types/BeachballOptions';
|
|
2
|
+
import type { PackageInfo, ScopedPackages } from '../types/PackageInfo';
|
|
3
|
+
/**
|
|
4
|
+
* Determines whether the package is included in the list of potentially-changed published packages,
|
|
5
|
+
* based on private flags and scopedPackages.
|
|
6
|
+
*
|
|
7
|
+
* (All the reasons except nonexistent include the package name.)
|
|
8
|
+
*/
|
|
9
|
+
export declare function isPackageIncluded(packageInfo: PackageInfo | undefined, scopedPackages: ScopedPackages): {
|
|
10
|
+
isIncluded: boolean;
|
|
11
|
+
reason: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function getIncludedLoggers(options: Pick<BeachballOptions, 'verbose'>): {
|
|
14
|
+
verboseLog: (msg: string) => void;
|
|
15
|
+
logIgnored: (name: string, reason: string) => void;
|
|
16
|
+
logIncluded: (name: string) => void;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=isPackageIncluded.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPackageIncluded.d.ts","sourceRoot":"","sources":["../../src/changefile/isPackageIncluded.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAExE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,cAAc,EAAE,cAAc,GAC7B;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAazC;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,GAAG;IAC9E,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAOA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getIncludedLoggers = exports.isPackageIncluded = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Determines whether the package is included in the list of potentially-changed published packages,
|
|
6
|
+
* based on private flags and scopedPackages.
|
|
7
|
+
*
|
|
8
|
+
* (All the reasons except nonexistent include the package name.)
|
|
9
|
+
*/
|
|
10
|
+
function isPackageIncluded(packageInfo, scopedPackages) {
|
|
11
|
+
const reason = !packageInfo
|
|
12
|
+
? 'no corresponding package found'
|
|
13
|
+
: packageInfo.private
|
|
14
|
+
? `${packageInfo.name} is private`
|
|
15
|
+
: // This is a package-only option (can't be set at repo level or via CLI)
|
|
16
|
+
packageInfo.packageOptions?.shouldPublish === false
|
|
17
|
+
? `${packageInfo.name} has beachball.shouldPublish=false`
|
|
18
|
+
: !scopedPackages.has(packageInfo.name)
|
|
19
|
+
? `${packageInfo.name} is out of scope`
|
|
20
|
+
: ''; // not ignored
|
|
21
|
+
return { isIncluded: !reason, reason };
|
|
22
|
+
}
|
|
23
|
+
exports.isPackageIncluded = isPackageIncluded;
|
|
24
|
+
function getIncludedLoggers(options) {
|
|
25
|
+
const verboseLog = (msg) => options.verbose && console.log(msg);
|
|
26
|
+
return {
|
|
27
|
+
verboseLog,
|
|
28
|
+
logIgnored: (name, reason) => verboseLog(` - ~~${name}~~ (${reason})`),
|
|
29
|
+
logIncluded: name => verboseLog(` - ${name}`),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
exports.getIncludedLoggers = getIncludedLoggers;
|
|
33
|
+
//# sourceMappingURL=isPackageIncluded.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPackageIncluded.js","sourceRoot":"","sources":["../../src/changefile/isPackageIncluded.ts"],"names":[],"mappings":";;;AAGA;;;;;GAKG;AACH,SAAgB,iBAAiB,CAC/B,WAAoC,EACpC,cAA8B;IAE9B,MAAM,MAAM,GAAG,CAAC,WAAW;QACzB,CAAC,CAAC,gCAAgC;QAClC,CAAC,CAAC,WAAW,CAAC,OAAO;YACrB,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,aAAa;YAClC,CAAC,CAAC,wEAAwE;gBAC1E,WAAW,CAAC,cAAc,EAAE,aAAa,KAAK,KAAK;oBACnD,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,oCAAoC;oBACzD,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;wBACvC,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,kBAAkB;wBACvC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc;IAEtB,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC;AAhBD,8CAgBC;AAED,SAAgB,kBAAkB,CAAC,OAA0C;IAK3E,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxE,OAAO;QACL,UAAU;QACV,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,IAAI,OAAO,MAAM,GAAG,CAAC;QACvE,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAXD,gDAWC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeChangeFiles.d.ts","sourceRoot":"","sources":["../../src/changefile/writeChangeFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAM1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,cAAc,EAAE,EACzB,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC,GAChF,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"writeChangeFiles.d.ts","sourceRoot":"","sources":["../../src/changefile/writeChangeFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAM1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,cAAc,EAAE,EACzB,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC,GAChF,MAAM,EAAE,CA4CV"}
|
|
@@ -17,7 +17,6 @@ const writeJson_1 = require("../object/writeJson");
|
|
|
17
17
|
function writeChangeFiles(changes, options) {
|
|
18
18
|
const { path: cwd, groupChanges, commit: commitChangeFiles } = options;
|
|
19
19
|
const changePath = (0, paths_1.getChangePath)(options);
|
|
20
|
-
const branchName = (0, workspace_tools_1.getBranchName)({ cwd });
|
|
21
20
|
if (!Object.keys(changes).length) {
|
|
22
21
|
return [];
|
|
23
22
|
}
|
|
@@ -39,15 +38,12 @@ function writeChangeFiles(changes, options) {
|
|
|
39
38
|
return changeFile;
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
|
-
// Stage and maybe commit
|
|
43
|
-
|
|
44
|
-
if (
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const commitOptions = ['--only', path_1.default.join(changePath, '*.json')];
|
|
49
|
-
(0, workspace_tools_1.commit)({ message: 'Change files', cwd, options: commitOptions });
|
|
50
|
-
}
|
|
41
|
+
// Stage and maybe commit
|
|
42
|
+
(0, workspace_tools_1.stage)({ patterns: changeFiles, cwd });
|
|
43
|
+
if (commitChangeFiles) {
|
|
44
|
+
// only commit change files, ignore other staged files/changes
|
|
45
|
+
const commitOptions = ['--only', path_1.default.join(changePath, '*.json')];
|
|
46
|
+
(0, workspace_tools_1.commit)({ message: 'Change files', cwd, options: commitOptions });
|
|
51
47
|
}
|
|
52
48
|
console.log(`git ${commitChangeFiles ? 'committed' : 'staged'} these change files: ${changeFiles
|
|
53
49
|
.map(f => `\n - ${f}`)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeChangeFiles.js","sourceRoot":"","sources":["../../src/changefile/writeChangeFiles.ts"],"names":[],"mappings":";;;;;;AACA,oCAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"writeChangeFiles.js","sourceRoot":"","sources":["../../src/changefile/writeChangeFiles.ts"],"names":[],"mappings":";;;;;;AACA,oCAAyC;AACzC,qDAAgD;AAChD,oDAA4B;AAC5B,4CAAoB;AACpB,gDAAwB;AAExB,mDAAgD;AAEhD;;;GAGG;AACH,SAAgB,gBAAgB,CAC9B,OAAyB,EACzB,OAAiF;IAEjF,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IACvE,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,OAAO,CAAC,CAAC;IAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;QAChC,OAAO,EAAE,CAAC;KACX;IAED,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QAC9B,YAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KAC/C;IAED,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,IAAI,gBAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACzG,IAAI,WAAqB,CAAC;IAE1B,IAAI,YAAY,EAAE;QAChB,kDAAkD;QAClD,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC3C,WAAW,GAAG,CAAC,UAAU,CAAC,CAAC;QAE3B,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KACpE;SAAM;QACL,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACjC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7E,IAAA,qBAAS,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9B,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;KACJ;IAED,yBAAyB;IACzB,IAAA,uBAAK,EAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,IAAI,iBAAiB,EAAE;QACrB,8DAA8D;QAC9D,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClE,IAAA,wBAAM,EAAC,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;KAClE;IAED,OAAO,CAAC,GAAG,CACT,OAAO,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,wBAAwB,WAAW;SACjF,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;SACrB,IAAI,CAAC,EAAE,CAAC,EAAE,CACd,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AA/CD,4CA+CC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.configGet = void 0;
|
|
4
|
-
const
|
|
4
|
+
const isPackageIncluded_1 = require("../changefile/isPackageIncluded");
|
|
5
5
|
const getDisallowedChangeTypes_1 = require("../changefile/getDisallowedChangeTypes");
|
|
6
6
|
const formatValue_1 = require("../logging/formatValue");
|
|
7
7
|
const BeachballError_1 = require("../types/BeachballError");
|
|
@@ -96,7 +96,7 @@ function configGet(options, context) {
|
|
|
96
96
|
hasError = true;
|
|
97
97
|
}
|
|
98
98
|
else {
|
|
99
|
-
const { isIncluded, reason } = (0,
|
|
99
|
+
const { isIncluded, reason } = (0, isPackageIncluded_1.isPackageIncluded)(packageInfos[pkgName], scopedPackages);
|
|
100
100
|
if (!isIncluded) {
|
|
101
101
|
console.error(`Invalid package: ${reason}`);
|
|
102
102
|
hasError = true;
|
|
@@ -149,7 +149,7 @@ function printDefault(name, options, context) {
|
|
|
149
149
|
for (const pkgInfo of Object.values(packageInfos)) {
|
|
150
150
|
const pkgValue = pkgInfo.packageOptions?.[pkgKey];
|
|
151
151
|
// Verify the package is included, but it's not an error here since it wasn't explicitly requested
|
|
152
|
-
if ((0,
|
|
152
|
+
if ((0, isPackageIncluded_1.isPackageIncluded)(pkgInfo, scopedPackages).isIncluded && pkgValue !== undefined) {
|
|
153
153
|
pkgOverrides[pkgInfo.name] = pkgValue;
|
|
154
154
|
}
|
|
155
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configGet.js","sourceRoot":"","sources":["../../src/commands/configGet.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"configGet.js","sourceRoot":"","sources":["../../src/commands/configGet.ts"],"names":[],"mappings":";;;AAAA,uEAAoE;AACpE,qFAAkF;AAClF,wDAAqD;AACrD,4DAAyD;AAIzD,sEAAsE;AACtE,MAAM,iBAAiB,GAAyB;IAC9C,GAAG,EAAE,IAAI;IACT,aAAa,EAAE,IAAI;IACnB,qBAAqB,EAAE,IAAI;IAC3B,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;CACyB,CAAC;AAE/C,gGAAgG;AAChG,MAAM,cAAc,GAAyB;IAC3C,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,gBAAgB,EAAE,IAAI;IACtB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,WAAW,EAAE,IAAI;IACjB,kBAAkB,EAAE,IAAI;IACxB,aAAa,EAAE,IAAI;IACnB,qBAAqB,EAAE,IAAI;IAC3B,0BAA0B,EAAE,IAAI;IAChC,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,iBAAiB,EAAE,IAAI;IACvB,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,cAAc,EAAE,IAAI;IACpB,eAAe,EAAE,IAAI;IACrB,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,IAAI;IACV,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE,IAAI;IACpB,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,GAAG,EAAE,IAAI;IACT,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,IAAI;IAClB,KAAK,EAAE,IAAI;IACX,GAAG,EAAE,IAAI;CACgC,CAAC;AAG5C,MAAM,gBAAgB,GAAyB;IAC7C,qBAAqB,EAAE,IAAI;CACY,CAAC;AAE1C,iDAAiD;AACjD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS;IACvC,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;IAC9B,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACjC,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;CACjC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,OAAyB,EAAE,OAA4B;IAC/E,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAEvE,MAAM,SAAS,GAAG,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;IACrD,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QACpD,MAAM,IAAI,+BAAc,CACtB,0FAA0F,CAC3F,CAAC;KACH;IAED,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC/B,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,+BAAc,CACtB,UAAU;YACR,CAAC,CAAC,4BAA4B,IAAI,qBAAqB,UAAU,IAAI;YACrE,CAAC,CAAC,4BAA4B,IAAI,GAAG,CACxC,CAAC;KACH;IAED,sCAAsC;IACtC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjH,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE;QAClC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,YAAY,OAAO,qBAAqB,CAAC,CAAC;YACxD,QAAQ,GAAG,IAAI,CAAC;SACjB;aAAM;YACL,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAA,qCAAiB,EAAC,YAAY,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;YACxF,IAAI,CAAC,UAAU,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;gBAC5C,QAAQ,GAAG,IAAI,CAAC;aACjB;SACF;KACF;IACD,IAAI,QAAQ,EAAE;QACZ,MAAM,IAAI,+BAAc,CAAC,mCAAmC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;KACxF;IAED,IAAI,YAAY,EAAE,MAAM,EAAE;QACxB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KACxD;SAAM;QACL,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KACtC;AACH,CAAC;AA5CD,8BA4CC;AAED,+EAA+E;AAC/E,SAAS,gBAAgB,CACvB,IAAY,EACZ,YAAsB,EACtB,OAAyB,EACzB,OAA4B;IAE5B,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACtE,MAAM,SAAS,GAAI,OAA8C,CAAC,IAAI,CAAC,CAAC;IAExE,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE;QAClC,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;YAC1B,IAAI,IAAI,KAAK,uBAAuB,EAAE;gBACpC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAA,mDAAwB,EAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;aAC5F;iBAAM;gBACL,qCAAqC;gBACrC,MAAM,IAAI,+BAAc,CAAC,sDAAsD,IAAI,GAAG,CAAC,CAAC;aACzF;SACF;aAAM;YACL,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC;gBACtC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC,IAA4B,CAAC;gBACtE,CAAC,CAAC,SAAS,CAAC;YACd,OAAO,CAAC,OAAO,CAAC,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SAClE;KACF;IAED,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,OAAO,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,mFAAmF;AACnF,SAAS,YAAY,CAAC,IAAY,EAAE,OAAyB,EAAE,OAA4B;IACzF,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACtF,MAAM,SAAS,GAAI,OAA8C,CAAC,IAAI,CAAC,CAAC;IAExE,4BAA4B;IAC5B,MAAM,YAAY,GAA4B,EAAE,CAAC;IACjD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;QAC3B,MAAM,MAAM,GAAG,IAA4B,CAAC;QAC5C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;YACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;YAClD,kGAAkG;YAClG,IAAI,IAAA,qCAAiB,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC,UAAU,IAAI,QAAQ,KAAK,SAAS,EAAE;gBACnF,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;aACvC;SACF;KACF;IAED,0BAA0B;IAC1B,MAAM,cAAc,GAA4B,EAAE,CAAC;IACnD,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE;QACpD,MAAM,QAAQ,GAAG,IAAuB,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE;YAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE;gBACjC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;oBAC3B,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;oBAC3B,YAAY,EAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY;iBACtD,CAAC;aACH;SACF;KACF;IAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACjE,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,eAAe,IAAI,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,IAAA,yBAAW,EAAC,SAAS,CAAC,CAAC,CAAC;IAE7C,IAAI,eAAe,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACtD;IAED,IAAI,iBAAiB,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACxD;AACH,CAAC;AAED,oFAAoF;AACpF,SAAS,WAAW,CAAC,KAAa,EAAE,UAAoB;IACtD,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,yBAAyB;IACzB,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5E,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,oBAAoB;IACpB,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5E,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IACxC,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.configList = void 0;
|
|
4
|
-
const
|
|
4
|
+
const isPackageIncluded_1 = require("../changefile/isPackageIncluded");
|
|
5
5
|
const formatValue_1 = require("../logging/formatValue");
|
|
6
6
|
/**
|
|
7
7
|
* Handles the `beachball config list` command.
|
|
@@ -24,7 +24,7 @@ function configList(options, context) {
|
|
|
24
24
|
}
|
|
25
25
|
// Print per-package overrides
|
|
26
26
|
const packagesWithOverrides = Object.values(packageInfos)
|
|
27
|
-
.filter(pkg => Object.keys(pkg.packageOptions || {}).length && (0,
|
|
27
|
+
.filter(pkg => Object.keys(pkg.packageOptions || {}).length && (0, isPackageIncluded_1.isPackageIncluded)(pkg, scopedPackages))
|
|
28
28
|
.map(pkg => [pkg.name, pkg.packageOptions]);
|
|
29
29
|
if (packagesWithOverrides.length) {
|
|
30
30
|
console.log('\nPackage overrides:');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configList.js","sourceRoot":"","sources":["../../src/commands/configList.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"configList.js","sourceRoot":"","sources":["../../src/commands/configList.ts"],"names":[],"mappings":";;;AAAA,uEAAoE;AACpE,wDAAqD;AAIrD;;;GAGG;AACH,SAAgB,UAAU,CAAC,OAAyB,EAAE,OAA4B;IAChF,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACtF,MAAM,aAAa,GAAG,OAA6C,CAAC;IAEpE,qFAAqF;IACrF,yFAAyF;IACzF,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/G,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEtD,sFAAsF;IACtF,oDAAoD;IACpD,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,uBAAuB,IAAI,KAAK,CAAC,CAAC;IACnH,IAAI,mBAAmB,CAAC,MAAM,EAAE;QAC9B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACjF;IAED,8BAA8B;IAC9B,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;SACtD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,IAAA,qCAAiB,EAAC,GAAG,EAAE,cAAc,CAAC,CAAC;SACrG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,CAAU,CAAC,CAAC;IACvD,IAAI,qBAAqB,CAAC,MAAM,EAAE;QAChC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACnF;AACH,CAAC;AA1BD,gCA0BC"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { BeachballOptions } from '../types/BeachballOptions';
|
|
2
2
|
/**
|
|
3
3
|
* Ensure that adequate history is available to check for changes between HEAD and `options.branch`.
|
|
4
|
-
* Otherwise attempting to get changes will fail with an error "no merge base".
|
|
5
|
-
*
|
|
4
|
+
* Otherwise attempting to get changes will fail with an error "no merge base". (This is mostly an
|
|
5
|
+
* issue with CI builds that use shallow clones and may not have a tracking branch configured for
|
|
6
|
+
* the remote target branch.)
|
|
7
|
+
*
|
|
8
|
+
* Since repo may be very large, it's important to avoid fetching the entire history or extra refs.
|
|
9
|
+
* If the repo is shallow and no common commit is found after a normal fetch, this function will
|
|
10
|
+
* iteratively deepen the history (100 commits at a time by default) and check for a common commit
|
|
11
|
+
* each round. If still not found, it will unshallow the clone.
|
|
6
12
|
*
|
|
7
13
|
* Throws an error if history is inadequate and cannot be fixed.
|
|
8
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureSharedHistory.d.ts","sourceRoot":"","sources":["../../src/git/ensureSharedHistory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"ensureSharedHistory.d.ts","sourceRoot":"","sources":["../../src/git/ensureSharedHistory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAKlE;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC,GACjF,IAAI,CAuEN"}
|
|
@@ -4,10 +4,17 @@ exports.ensureSharedHistory = void 0;
|
|
|
4
4
|
const workspace_tools_1 = require("workspace-tools");
|
|
5
5
|
const fetch_1 = require("./fetch");
|
|
6
6
|
const bulletedList_1 = require("../logging/bulletedList");
|
|
7
|
+
const BeachballError_1 = require("../types/BeachballError");
|
|
7
8
|
/**
|
|
8
9
|
* Ensure that adequate history is available to check for changes between HEAD and `options.branch`.
|
|
9
|
-
* Otherwise attempting to get changes will fail with an error "no merge base".
|
|
10
|
-
*
|
|
10
|
+
* Otherwise attempting to get changes will fail with an error "no merge base". (This is mostly an
|
|
11
|
+
* issue with CI builds that use shallow clones and may not have a tracking branch configured for
|
|
12
|
+
* the remote target branch.)
|
|
13
|
+
*
|
|
14
|
+
* Since repo may be very large, it's important to avoid fetching the entire history or extra refs.
|
|
15
|
+
* If the repo is shallow and no common commit is found after a normal fetch, this function will
|
|
16
|
+
* iteratively deepen the history (100 commits at a time by default) and check for a common commit
|
|
17
|
+
* each round. If still not found, it will unshallow the clone.
|
|
11
18
|
*
|
|
12
19
|
* Throws an error if history is inadequate and cannot be fixed.
|
|
13
20
|
*/
|
|
@@ -24,24 +31,16 @@ function ensureSharedHistory(options) {
|
|
|
24
31
|
// This is most likely to be an issue in a CI build which does a shallow checkout (github
|
|
25
32
|
// actions/checkout does this by default) and also disables beachball fetching.
|
|
26
33
|
logError('missing-branch', branch, remote, remoteBranch);
|
|
27
|
-
throw new
|
|
34
|
+
throw new BeachballError_1.BeachballError(`Target branch "${branch}" does not exist locally, and fetching is disabled`, {
|
|
35
|
+
alreadyLogged: true,
|
|
36
|
+
});
|
|
28
37
|
}
|
|
29
38
|
if (!remote) {
|
|
30
|
-
// If the remote isn't specified, even if fetching is allowed it will be unclear what to
|
|
31
|
-
// compare against
|
|
32
|
-
throw new
|
|
39
|
+
// If the remote isn't specified, even if fetching is allowed, it will be unclear what to
|
|
40
|
+
// compare against, so throw an error.
|
|
41
|
+
throw new BeachballError_1.BeachballError(`Target branch "${branch}" doesn't exist locally, and a remote name wasn't specified and couldn't be inferred. ` +
|
|
33
42
|
'Please set "repository" in your root package.json or include a remote in the beachball "branch" setting.');
|
|
34
43
|
}
|
|
35
|
-
// If fetching the requested branch isn't already (probably) configured, add it to the list so
|
|
36
|
-
// it can be fetched in the next step. Otherwise the ref <remote>/<remoteBranch> won't exist locally.
|
|
37
|
-
const fetchConfig = (0, workspace_tools_1.git)(['config', '--get-all', `remote.${remote}.fetch`], { cwd }).stdout.trim();
|
|
38
|
-
if (!fetchConfig.includes(`${remote}/*`) && !fetchConfig.includes(branch)) {
|
|
39
|
-
console.log(`Adding branch "${remoteBranch}" to fetch config for remote "${remote}"`);
|
|
40
|
-
const result = (0, workspace_tools_1.git)(['remote', 'set-branches', '--add', remote, remoteBranch], { cwd });
|
|
41
|
-
if (!result.success) {
|
|
42
|
-
throw new Error(`Failed to add branch "${remoteBranch}" to fetch config for remote "${remote}":\n${result.stderr}`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
44
|
}
|
|
46
45
|
if (fetch) {
|
|
47
46
|
// Fetch the latest from the remote branch for comparison. If the specified remoteBranch doesn't
|
|
@@ -56,7 +55,7 @@ function ensureSharedHistory(options) {
|
|
|
56
55
|
depth: depth && isShallowRepository(cwd) ? depth : undefined,
|
|
57
56
|
});
|
|
58
57
|
if (!result.success) {
|
|
59
|
-
throw new
|
|
58
|
+
throw new BeachballError_1.BeachballError(`Failed to fetch branch "${remoteBranch}" from remote "${remote}": ${result.errorMessage || ''}`);
|
|
60
59
|
}
|
|
61
60
|
}
|
|
62
61
|
// Verify that HEAD and the target branch share history
|
|
@@ -67,13 +66,18 @@ function ensureSharedHistory(options) {
|
|
|
67
66
|
if (!fetch) {
|
|
68
67
|
// Fetching is disabled, so the lack of history can't be fixed
|
|
69
68
|
logError('shallow-clone', branch, remote, remoteBranch);
|
|
70
|
-
throw new
|
|
69
|
+
throw new BeachballError_1.BeachballError(`Inadequate history available to connect HEAD to target branch "${branch}"`, {
|
|
70
|
+
alreadyLogged: true,
|
|
71
|
+
});
|
|
71
72
|
}
|
|
72
73
|
// Try fetching more history
|
|
73
74
|
isConnected = deepenHistory({ remote, remoteBranch, branch, depth, cwd, verbose });
|
|
74
75
|
}
|
|
76
|
+
else {
|
|
77
|
+
// Repo isn't shallow, so potentially we just need to add a ref to be connected
|
|
78
|
+
}
|
|
75
79
|
if (!isConnected) {
|
|
76
|
-
throw new
|
|
80
|
+
throw new BeachballError_1.BeachballError(`HEAD does not appear to share history with target branch "${branch}"`);
|
|
77
81
|
}
|
|
78
82
|
}
|
|
79
83
|
}
|
|
@@ -93,7 +97,7 @@ function deepenHistory(params) {
|
|
|
93
97
|
console.log(`Deepening by ${depth} more commits (attempt ${attempt}/${maxAttempts})...`);
|
|
94
98
|
const result = (0, fetch_1.gitFetch)({ remote, branch: remoteBranch, deepen: depth, cwd, verbose });
|
|
95
99
|
if (!result.success) {
|
|
96
|
-
throw new
|
|
100
|
+
throw new BeachballError_1.BeachballError(`Failed to fetch more history (see above for details)`);
|
|
97
101
|
}
|
|
98
102
|
if (hasCommonCommit(branch, cwd)) {
|
|
99
103
|
// Fetched enough history to find a common commit
|
|
@@ -108,7 +112,7 @@ function deepenHistory(params) {
|
|
|
108
112
|
console.log(`Still didn't find a common commit after deepening by ${depth * maxAttempts}. Unshallowing...`);
|
|
109
113
|
const result = (0, fetch_1.gitFetch)({ remote, branch: remoteBranch, unshallow: true, cwd, verbose });
|
|
110
114
|
if (!result.success) {
|
|
111
|
-
throw new
|
|
115
|
+
throw new BeachballError_1.BeachballError(`Failed to unshallow repo (see above for details)`);
|
|
112
116
|
}
|
|
113
117
|
return hasCommonCommit(branch, cwd);
|
|
114
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureSharedHistory.js","sourceRoot":"","sources":["../../src/git/ensureSharedHistory.ts"],"names":[],"mappings":";;;AAAA,qDAAyD;AAEzD,mCAAmC;AACnC,0DAAwE;
|
|
1
|
+
{"version":3,"file":"ensureSharedHistory.js","sourceRoot":"","sources":["../../src/git/ensureSharedHistory.ts"],"names":[],"mappings":"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"}
|
package/lib/git/fetch.d.ts
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { type GitProcessOutput } from 'workspace-tools';
|
|
2
2
|
type GitFetchParams = {
|
|
3
3
|
cwd: string;
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Remote to fetch from. This should almost always be set but might be an empty string
|
|
6
|
+
* if the repo somehow has no remotes configured.
|
|
7
|
+
*/
|
|
8
|
+
remote: string;
|
|
9
|
+
/**
|
|
10
|
+
* Branch to fetch. It will be converted to a full refspec for fetching:
|
|
11
|
+
* e.g. `branch: 'main', remote: 'origin'` will be converted to `+main:refs/remotes/origin/main`.
|
|
12
|
+
*/
|
|
13
|
+
branch: string;
|
|
8
14
|
/** Set depth to this number of commits (mutually exclusive with `deepen` and `unshallow`) */
|
|
9
15
|
depth?: number;
|
|
10
16
|
/** Deepen a shallow clone by this number of commits (mutually exclusive with `depth` and `unshallow`) */
|
|
@@ -17,6 +23,9 @@ type GitFetchParams = {
|
|
|
17
23
|
* Wrapper for `git fetch`. If `verbose` is true, log the command before starting, and display output
|
|
18
24
|
* on stdout (except in tests). In tests with `verbose`, the output will be logged all together to
|
|
19
25
|
* `console.log` when the command finishes (for easier mocking/capturing).
|
|
26
|
+
*
|
|
27
|
+
* This converts `remote` and `branch` into a fully qualified refspec, so it doesn't matter if
|
|
28
|
+
* the remote branch is tracked or not in the local repository.
|
|
20
29
|
*/
|
|
21
30
|
export declare function gitFetch(params: GitFetchParams): GitProcessOutput & {
|
|
22
31
|
errorMessage?: string;
|
package/lib/git/fetch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/git/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAG7D,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/git/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAG7D,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yGAAyG;IACzG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uGAAuG;IACvG,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,gBAAgB,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CA4D7F"}
|
package/lib/git/fetch.js
CHANGED
|
@@ -7,6 +7,9 @@ const gitAsync_1 = require("./gitAsync");
|
|
|
7
7
|
* Wrapper for `git fetch`. If `verbose` is true, log the command before starting, and display output
|
|
8
8
|
* on stdout (except in tests). In tests with `verbose`, the output will be logged all together to
|
|
9
9
|
* `console.log` when the command finishes (for easier mocking/capturing).
|
|
10
|
+
*
|
|
11
|
+
* This converts `remote` and `branch` into a fully qualified refspec, so it doesn't matter if
|
|
12
|
+
* the remote branch is tracked or not in the local repository.
|
|
10
13
|
*/
|
|
11
14
|
function gitFetch(params) {
|
|
12
15
|
const { remote, branch, depth, deepen, unshallow, cwd, verbose } = params;
|
|
@@ -15,18 +18,25 @@ function gitFetch(params) {
|
|
|
15
18
|
throw new Error('"depth", "deepen", and "unshallow" are mutually exclusive');
|
|
16
19
|
}
|
|
17
20
|
const extraArgs = depth ? [`--depth=${depth}`] : deepen ? [`--deepen=${deepen}`] : unshallow ? ['--unshallow'] : [];
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
// Be specific with the ref being fetched, so we don't have to worry about tracking configs.
|
|
22
|
+
// In git fetch <remote> +<src>:<dst>...
|
|
23
|
+
// - The + means allow non-fast-forward updates (in case the remote was force pushed).
|
|
24
|
+
// - <src> refs/heads/${branch} is resolved against the remote's advertised refs. The fully
|
|
25
|
+
// qualified ref is unambiguous, whereas bare branch names can be silently misresolved,
|
|
26
|
+
// causing git to treat the ref as absent and delete the local tracking ref.
|
|
27
|
+
// - <dst> refs/remotes/${remote}/${branch} is resolved locally and only moves the tracking ref
|
|
28
|
+
// for the remote branch, not the local refs/heads/${branch} or its tracking config.
|
|
29
|
+
const resolvedBranch = remote ? `+refs/heads/${branch}:refs/remotes/${remote}/${branch}` : undefined;
|
|
30
|
+
const shortDescription = `Fetching ${resolvedBranch ? `branch "${branch}" from remote "${remote}"` : 'all remotes'}`;
|
|
31
|
+
let description = shortDescription;
|
|
32
|
+
resolvedBranch && (description += ` (${resolvedBranch})`);
|
|
33
|
+
extraArgs.length && (description += ` (with ${extraArgs.join(' ')})`);
|
|
24
34
|
shouldLog && console.log(description + '...');
|
|
25
35
|
const result = (0, workspace_tools_1.git)([
|
|
26
36
|
'fetch',
|
|
27
37
|
...extraArgs,
|
|
28
38
|
// If the remote is unknown, don't specify the branch (fetching a branch without a remote is invalid)
|
|
29
|
-
...(
|
|
39
|
+
...(resolvedBranch ? [remote, resolvedBranch] : []),
|
|
30
40
|
], { cwd, stdio: shouldLog === 'live' ? 'inherit' : 'pipe' });
|
|
31
41
|
const log = result.success ? console.log : console.warn;
|
|
32
42
|
// do the jest logging all at once in a way that can be captured by mocks (jest can't mock process.stdout/err)
|
|
@@ -34,7 +44,7 @@ function gitFetch(params) {
|
|
|
34
44
|
result.stdout && console.log(result.stdout);
|
|
35
45
|
result.stderr && log(result.stderr);
|
|
36
46
|
}
|
|
37
|
-
let message = `${
|
|
47
|
+
let message = `${shortDescription} ${result.success ? 'completed successfully' : `failed (code ${result.status})`}`;
|
|
38
48
|
if (shouldLog) {
|
|
39
49
|
log(message);
|
|
40
50
|
message += ' - see above for details';
|
package/lib/git/fetch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/git/fetch.ts"],"names":[],"mappings":";;;AAAA,qDAA6D;AAC7D,yCAAuC;
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/git/fetch.ts"],"names":[],"mappings":";;;AAAA,qDAA6D;AAC7D,yCAAuC;AAuBvC;;;;;;;GAOG;AACH,SAAgB,QAAQ,CAAC,MAAsB;IAC7C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC1E,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,oBAAS,EAAC,OAAO,CAAC,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QACtE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;KAC9E;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpH,4FAA4F;IAC5F,wCAAwC;IACxC,sFAAsF;IACtF,2FAA2F;IAC3F,yFAAyF;IACzF,8EAA8E;IAC9E,+FAA+F;IAC/F,sFAAsF;IACtF,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,MAAM,iBAAiB,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAErG,MAAM,gBAAgB,GAAG,YAAY,cAAc,CAAC,CAAC,CAAC,WAAW,MAAM,kBAAkB,MAAM,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAErH,IAAI,WAAW,GAAG,gBAAgB,CAAC;IACnC,cAAc,IAAI,CAAC,WAAW,IAAI,KAAK,cAAc,GAAG,CAAC,CAAC;IAC1D,SAAS,CAAC,MAAM,IAAI,CAAC,WAAW,IAAI,UAAU,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtE,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAgC,IAAA,qBAAG,EAC7C;QACE,OAAO;QACP,GAAG,SAAS;QACZ,qGAAqG;QACrG,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,EACD,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAC1D,CAAC;IAEF,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IAExD,8GAA8G;IAC9G,IAAI,SAAS,KAAK,KAAK,EAAE;QACvB,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACrC;IAED,IAAI,OAAO,GAAG,GAAG,gBAAgB,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;IACpH,IAAI,SAAS,EAAE;QACb,GAAG,CAAC,OAAO,CAAC,CAAC;QACb,OAAO,IAAI,0BAA0B,CAAC;KACvC;SAAM,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;QACzC,OAAO,IAAI,cAAc,MAAM,CAAC,MAAM,cAAc,MAAM,CAAC,MAAM,EAAE,CAAC;KACrE;SAAM,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;QACzC,OAAO,IAAI,eAAe,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;KAC5D;IAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC;KAC/B;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA5DD,4BA4DC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Catalogs } from 'workspace-tools';
|
|
2
|
+
/**
|
|
3
|
+
* Returns a `Catalogs` containing only the entries that were added or changed in `after`
|
|
4
|
+
* relative to `before`. Removed entries (and removed named catalogs) are excluded.
|
|
5
|
+
* Returns `undefined` if nothing was added or changed.
|
|
6
|
+
*
|
|
7
|
+
* (It's possible that newly-added catalog entries didn't actually change from their
|
|
8
|
+
* prior versions, but it's better to be conservative and include them.)
|
|
9
|
+
*/
|
|
10
|
+
export declare function diffCatalogs(options: {
|
|
11
|
+
before: Catalogs;
|
|
12
|
+
after: Catalogs;
|
|
13
|
+
}): Catalogs | undefined;
|
|
14
|
+
//# sourceMappingURL=diffCatalogs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffCatalogs.d.ts","sourceRoot":"","sources":["../../src/monorepo/diffCatalogs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,QAAQ,EAAiB,MAAM,iBAAiB,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,GAAG,QAAQ,GAAG,SAAS,CA0BjG"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.diffCatalogs = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Returns a `Catalogs` containing only the entries that were added or changed in `after`
|
|
6
|
+
* relative to `before`. Removed entries (and removed named catalogs) are excluded.
|
|
7
|
+
* Returns `undefined` if nothing was added or changed.
|
|
8
|
+
*
|
|
9
|
+
* (It's possible that newly-added catalog entries didn't actually change from their
|
|
10
|
+
* prior versions, but it's better to be conservative and include them.)
|
|
11
|
+
*/
|
|
12
|
+
function diffCatalogs(options) {
|
|
13
|
+
const { before, after } = options;
|
|
14
|
+
let result;
|
|
15
|
+
if (after.default) {
|
|
16
|
+
const defaultDiff = diffCatalog(before.default, after.default);
|
|
17
|
+
if (defaultDiff) {
|
|
18
|
+
result = { default: defaultDiff };
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
if (after.named) {
|
|
22
|
+
const namedDiff = {};
|
|
23
|
+
for (const [catalogName, catalog] of Object.entries(after.named)) {
|
|
24
|
+
const catalogDiff = diffCatalog(before.named?.[catalogName], catalog);
|
|
25
|
+
if (catalogDiff) {
|
|
26
|
+
namedDiff[catalogName] = catalogDiff;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
if (Object.keys(namedDiff).length) {
|
|
30
|
+
result = { ...result, named: namedDiff };
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return result;
|
|
34
|
+
}
|
|
35
|
+
exports.diffCatalogs = diffCatalogs;
|
|
36
|
+
function diffCatalog(before, after) {
|
|
37
|
+
const diff = {};
|
|
38
|
+
let hasDiff = false;
|
|
39
|
+
for (const [name, version] of Object.entries(after)) {
|
|
40
|
+
if (before?.[name] !== version) {
|
|
41
|
+
diff[name] = version;
|
|
42
|
+
hasDiff = true;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return hasDiff ? diff : undefined;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=diffCatalogs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffCatalogs.js","sourceRoot":"","sources":["../../src/monorepo/diffCatalogs.ts"],"names":[],"mappings":";;;AAEA;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,OAA8C;IACzE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAClC,IAAI,MAA4B,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,WAAW,EAAE;YACf,MAAM,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;SACnC;KACF;IAED,IAAI,KAAK,CAAC,KAAK,EAAE;QACf,MAAM,SAAS,GAAkB,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAChE,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;YACtE,IAAI,WAAW,EAAE;gBACf,SAAS,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;aACtC;SACF;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE;YACjC,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SAC1C;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA1BD,oCA0BC;AAED,SAAS,WAAW,CAAC,MAA2B,EAAE,KAAc;IAC9D,MAAM,IAAI,GAAY,EAAE,CAAC;IACzB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnD,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;YACrB,OAAO,GAAG,IAAI,CAAC;SAChB;KACF;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACpC,CAAC"}
|
|
@@ -4,7 +4,7 @@ import type { BeachballOptions } from '../types/BeachballOptions';
|
|
|
4
4
|
*/
|
|
5
5
|
export declare function filterIgnoredFiles(params: Pick<BeachballOptions, 'ignorePatterns'> & {
|
|
6
6
|
/** Relative file paths */
|
|
7
|
-
filePaths: string[]
|
|
7
|
+
filePaths: string[] | Set<string>;
|
|
8
8
|
/** If specified, called for each ignored file */
|
|
9
9
|
logIgnored?: (filePath: string, reason: string) => void;
|
|
10
10
|
}): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterIgnoredFiles.d.ts","sourceRoot":"","sources":["../../src/monorepo/filterIgnoredFiles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAIlE;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,GAAG;IACjD,0BAA0B;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"filterIgnoredFiles.d.ts","sourceRoot":"","sources":["../../src/monorepo/filterIgnoredFiles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAIlE;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,GAAG;IACjD,0BAA0B;IAC1B,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,iDAAiD;IACjD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD,GACA,MAAM,EAAE,CAgBV"}
|
|
@@ -12,13 +12,19 @@ const minimatchOptions = { matchBase: true };
|
|
|
12
12
|
function filterIgnoredFiles(params) {
|
|
13
13
|
const { filePaths, ignorePatterns, logIgnored } = params;
|
|
14
14
|
if (!ignorePatterns?.length) {
|
|
15
|
-
return filePaths;
|
|
15
|
+
return Array.isArray(filePaths) ? filePaths : [...filePaths];
|
|
16
16
|
}
|
|
17
|
-
|
|
17
|
+
const filtered = [];
|
|
18
|
+
for (const filePath of filePaths) {
|
|
18
19
|
const ignorePattern = ignorePatterns.find(pattern => (0, minimatch_1.default)(filePath, pattern, minimatchOptions));
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
if (ignorePattern) {
|
|
21
|
+
logIgnored?.(filePath, `ignored by pattern "${ignorePattern}"`);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
filtered.push(filePath);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return filtered;
|
|
22
28
|
}
|
|
23
29
|
exports.filterIgnoredFiles = filterIgnoredFiles;
|
|
24
30
|
//# sourceMappingURL=filterIgnoredFiles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterIgnoredFiles.js","sourceRoot":"","sources":["../../src/monorepo/filterIgnoredFiles.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAGlC,MAAM,gBAAgB,GAAuB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAEjE;;GAEG;AACH,SAAgB,kBAAkB,CAChC,MAKC;IAED,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IACzD,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;QAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"filterIgnoredFiles.js","sourceRoot":"","sources":["../../src/monorepo/filterIgnoredFiles.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAGlC,MAAM,gBAAgB,GAAuB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAEjE;;GAEG;AACH,SAAgB,kBAAkB,CAChC,MAKC;IAED,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IACzD,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;KAC9D;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,mBAAS,EAAC,QAAQ,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;QACrG,IAAI,aAAa,EAAE;YACjB,UAAU,EAAE,CAAC,QAAQ,EAAE,uBAAuB,aAAa,GAAG,CAAC,CAAC;SACjE;aAAM;YACL,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzB;KACF;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAvBD,gDAuBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BeachballOptions.d.ts","sourceRoot":"","sources":["../../src/types/BeachballOptions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BeachballOptions.d.ts","sourceRoot":"","sources":["../../src/types/BeachballOptions.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "beachball",
|
|
3
|
-
"version": "2.65.
|
|
3
|
+
"version": "2.65.3",
|
|
4
4
|
"description": "The Sunniest Semantic Version Bumper",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"p-limit": "^3.1.0",
|
|
45
45
|
"prompts": "^2.4.2",
|
|
46
46
|
"semver": "^7.7.4",
|
|
47
|
-
"workspace-tools": "^0.41.
|
|
47
|
+
"workspace-tools": "^0.41.6",
|
|
48
48
|
"yargs-parser": "^21.1.1"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|