From dea96ecac6c84ebd2256ee24708ed25b7102e4a3 Mon Sep 17 00:00:00 2001 From: Ben Newman Date: Thu, 10 Jan 2019 11:15:19 -0500 Subject: [PATCH] Fix #10409 by ignoring self-referential browser aliases in package.json. --- tools/isobuild/import-scanner.js | 6 ++++++ tools/tests/apps/modules/package-lock.json | 5 +++++ tools/tests/apps/modules/package.json | 1 + tools/tests/apps/modules/tests.js | 8 ++++++++ 4 files changed, 20 insertions(+) diff --git a/tools/isobuild/import-scanner.js b/tools/isobuild/import-scanner.js index ed2adcc1c2..065c005206 100644 --- a/tools/isobuild/import-scanner.js +++ b/tools/isobuild/import-scanner.js @@ -1422,6 +1422,12 @@ export default class ImportScanner { return; } + // Ignore useless self-referential browser aliases, to fix + // https://github.com/meteor/meteor/issues/10409. + if (target.id === source.id) { + return; + } + Object.assign(alias, target); alias.absModuleId = this._getAbsModuleId(target.path); diff --git a/tools/tests/apps/modules/package-lock.json b/tools/tests/apps/modules/package-lock.json index 465c19b2ab..38c8483f7b 100644 --- a/tools/tests/apps/modules/package-lock.json +++ b/tools/tests/apps/modules/package-lock.json @@ -1210,6 +1210,11 @@ "minimist": "0.0.8" } }, + "mobx": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-5.8.0.tgz", + "integrity": "sha512-NsZB+9bF5j+nv9Qwk6bNeE3np26a4TbTGkMpOLf6o1zXoM9BtHPQn/00px4uZ2AXJXtQML5P4MEWdMm6icMIfQ==" + }, "moment": { "version": "2.22.2", "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", diff --git a/tools/tests/apps/modules/package.json b/tools/tests/apps/modules/package.json index 82172b7b2e..0fed419e6e 100644 --- a/tools/tests/apps/modules/package.json +++ b/tools/tests/apps/modules/package.json @@ -17,6 +17,7 @@ "jsx-import-test": "file:imports/links/jsx-import-test", "lodash-es": "^4.17.7", "meteor-node-stubs": "^0.4.1", + "mobx": "5.8.0", "moment": "^2.22.2", "mssql": "^3.1.1", "mysql": "^2.15.0", diff --git a/tools/tests/apps/modules/tests.js b/tools/tests/apps/modules/tests.js index 454b5915ff..891091a546 100644 --- a/tools/tests/apps/modules/tests.js +++ b/tools/tests/apps/modules/tests.js @@ -660,3 +660,11 @@ describe("imported *.tests.js modules", () => { assert.strictEqual(name, "imported.tests.js"); }); }); + +describe("issue #10409", () => { + it("should be able to import mobx@5.8.0", () => { + const { observable, action } = require("mobx"); + assert.strictEqual(typeof observable, "function"); + assert.strictEqual(typeof action, "function"); + }); +});