From 2b1021118234ad176b87f786d188f5bdbad543a2 Mon Sep 17 00:00:00 2001 From: Mark Skelton Date: Fri, 4 Feb 2022 14:59:23 -0600 Subject: [PATCH 1/2] Dont't include ignored packages when adding a changeset --- .changeset/young-queens-add.md | 5 +++++ packages/cli/src/commands/add/index.ts | 13 ++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) create mode 100644 .changeset/young-queens-add.md diff --git a/.changeset/young-queens-add.md b/.changeset/young-queens-add.md new file mode 100644 index 000000000..63d7b3908 --- /dev/null +++ b/.changeset/young-queens-add.md @@ -0,0 +1,5 @@ +--- +"@changesets/cli": patch +--- + +Ignored packages are no longer listed when adding a changeset. diff --git a/packages/cli/src/commands/add/index.ts b/packages/cli/src/commands/add/index.ts index db01121ad..bb2a08db3 100644 --- a/packages/cli/src/commands/add/index.ts +++ b/packages/cli/src/commands/add/index.ts @@ -22,7 +22,9 @@ export default async function add( { empty, open }: { empty?: boolean; open?: boolean }, config: Config ) { - const packages = await getPackages(cwd); + const packages = (await getPackages(cwd)).packages.filter( + pkg => !config.ignore.includes(pkg.packageJson.name) + ); const changesetBase = path.resolve(cwd, ".changeset"); let newChangeset: UnwrapPromise>; @@ -38,10 +40,11 @@ export default async function add( ref: config.baseBranch }); const changePackagesName = changedPackages - .filter(a => a) - .map(pkg => pkg.packageJson.name); - newChangeset = await createChangeset(changePackagesName, packages.packages); - printConfirmationMessage(newChangeset, packages.packages.length > 1); + .map(pkg => pkg.packageJson.name) + .filter(pkgName => config.ignore.includes(pkgName)); + + newChangeset = await createChangeset(changePackagesName, packages); + printConfirmationMessage(newChangeset, packages.length > 1); if (!newChangeset.confirmed) { newChangeset = { From 4791c194bc091c911125499b5807b6c36849787a Mon Sep 17 00:00:00 2001 From: Mark Skelton Date: Mon, 7 Feb 2022 09:40:06 -0600 Subject: [PATCH 2/2] Add test --- packages/cli/src/commands/add/__tests__/add.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/cli/src/commands/add/__tests__/add.ts b/packages/cli/src/commands/add/__tests__/add.ts index 82e4fad87..4bf86a390 100644 --- a/packages/cli/src/commands/add/__tests__/add.ts +++ b/packages/cli/src/commands/add/__tests__/add.ts @@ -197,4 +197,18 @@ describe("Changesets", () => { }) ); }); + it("should not include ignored packages in the prompt", async () => { + const cwd = await f.copy("internal-dependencies"); + + mockUserResponses({ releases: { "pkg-a": "patch" } }); + await addChangeset( + cwd, + { empty: false }, + { ...defaultConfig, ignore: ["pkg-b"] } + ); + + // @ts-ignore + const { choices } = askCheckboxPlus.mock.calls[0][1][0]; + expect(choices).toEqual(["pkg-a", "pkg-c"]); + }); });