From 9a5a29c862587c30ac78131b241b31782199f4f9 Mon Sep 17 00:00:00 2001 From: Daniel Stockman Date: Tue, 14 May 2019 15:53:07 -0700 Subject: [PATCH] fix(add): Never pass filter options to nested bootstrap Fixes #1989 --- commands/add/__tests__/add-command.test.js | 27 ++++++++++++++++++++++ commands/add/index.js | 7 ++++++ 2 files changed, 34 insertions(+) diff --git a/commands/add/__tests__/add-command.test.js b/commands/add/__tests__/add-command.test.js index a88faae45b..ffd98d9595 100644 --- a/commands/add/__tests__/add-command.test.js +++ b/commands/add/__tests__/add-command.test.js @@ -239,6 +239,33 @@ describe("AddCommand", () => { ); }); + it("should not pass filter options to bootstrap", async () => { + const testDir = await initFixture("existing"); + + await lernaAdd(testDir)( + "@test/package-2", + "--scope=@test/package-1", + "--ignore=@test/package-3", + "--no-private", + "--since=deadbeef", + "--include-filtered-dependents", + "--include-filtered-dependencies" + ); + const [pkg1] = await getPackages(testDir); + + expect(pkg1).toDependOn("@test/package-2"); + expect(bootstrap).toHaveBeenLastCalledWith( + expect.objectContaining({ + scope: undefined, + ignore: undefined, + private: undefined, + since: undefined, + includeFilteredDependents: undefined, + includeFilteredDependencies: undefined, + }) + ); + }); + it("should not bootstrap unchanged packages", async () => { const testDir = await initFixture("unchanged"); diff --git a/commands/add/index.js b/commands/add/index.js index 8dc4a05872..b173ca1e8e 100644 --- a/commands/add/index.js +++ b/commands/add/index.js @@ -100,6 +100,13 @@ class AddCommand extends Command { cwd: this.project.rootPath, // silence initial cli version logging, etc composed: "add", + // NEVER pass filter-options, it is very bad + scope: undefined, + ignore: undefined, + private: undefined, + since: undefined, + includeFilteredDependents: undefined, + includeFilteredDependencies: undefined, }); return bootstrap(argv);