From a8b8038d95ee33834c06fa8fd7470521bb034eac Mon Sep 17 00:00:00 2001 From: Wexpo Lyu Date: Sat, 9 Jul 2016 16:17:45 +0800 Subject: [PATCH 1/7] Ability to override the default warehouse url base Hope this one does override! --- tools/packaging/tropohouse.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/packaging/tropohouse.js b/tools/packaging/tropohouse.js index a30719a232..1e416f9c6b 100644 --- a/tools/packaging/tropohouse.js +++ b/tools/packaging/tropohouse.js @@ -299,6 +299,12 @@ _.extend(exports.Tropohouse.prototype, { // XXX: Error handling. _downloadBuildToTempDir: function (versionInfo, buildRecord) { var url = buildRecord.build.url; + + // Override the download domain name and protocol if METEOR_WAREHOUSE_URLBASE + // provided. + if (process.env.METEOR_WAREHOUSE_URLBASE) { + url = url.replace(/^[a-zA-Z]+:\/\/[^\/]+/, process.env.METEOR_WAREHOUSE_URLBASE); + } // XXX: We use one progress for download & untar; this isn't ideal: // it relies on extractTarGz being fast and not reporting any progress. From 618d3730ddad5952f86aa8bdfc12ab4a7e0f9665 Mon Sep 17 00:00:00 2001 From: c9s Date: Sat, 23 Jul 2016 22:29:02 +0800 Subject: [PATCH 2/7] Improve the meteor build speed on travis ci run.sh already runs ./meteor --self-test so the install section defined in travis config can be remove. --- .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 5ec40272b9..d172d1e022 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,6 @@ cache: - "dev_bundle" - ".meteor" - ".babel-cache" -install: ./meteor --get-ready script: TEST_PACKAGES_EXCLUDE="less" ./packages/test-in-console/run.sh sudo: false env: From 6b080d27ad9076792babcdc6a314c3a4a0b3ea61 Mon Sep 17 00:00:00 2001 From: "dr.dimitru" Date: Tue, 26 Jul 2016 17:46:05 +0300 Subject: [PATCH 3/7] Update generated Readme file in builded app After running `meteor build` in created archive `Readme` file with next content: ```text This is a Meteor application bundle. It has only one external dependency: Node.js 0.10.40 or newer. To run the application: $ (cd programs/server && npm install) $ export MONGO_URL='mongodb://user:password@host:port/databasename' $ export ROOT_URL='http://example.com' $ export MAIL_URL='smtp://user:password@mailhost:port/' $ node main.js Use the PORT environment variable to set the port where the application will listen. The default is 80, but that will require root on most systems. Find out more about Meteor at meteor.com. ``` Since Meteor@1.4 requires nodejs@4.4.7 and fails on nodejs@0.10.*, generated `Readme` must be updated --- tools/isobuild/bundler.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/isobuild/bundler.js b/tools/isobuild/bundler.js index 5790d0a5b2..59cab96a65 100644 --- a/tools/isobuild/bundler.js +++ b/tools/isobuild/bundler.js @@ -2312,7 +2312,7 @@ var writeSiteArchive = Profile("bundler writeSiteArchive", function ( builder.write('README', { data: new Buffer( `This is a Meteor application bundle. It has only one external dependency: -Node.js 0.10.40 or newer. To run the application: +Node.js 4.4.7 or newer. To run the application: $ (cd programs/server && npm install) $ export MONGO_URL='mongodb://user:password@host:port/databasename' From 8169b6fd573722e8b02e30202627ede922e3f037 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 27 Jul 2016 14:09:30 +1000 Subject: [PATCH 4/7] Added a note about replicaSet #7450 --- History.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/History.md b/History.md index 84f0b7520f..13c1d4f198 100644 --- a/History.md +++ b/History.md @@ -29,6 +29,10 @@ 2.6 up. Mongo 2.4 has now reached end-of-life (https://www.mongodb.com/support-policy), and is no longer supported. + If you are setting `MONGO_OPLOG_URL`, especially in production, ensure you are + passing in the `replicaSet` argument (see [#7450] + (https://github.com/meteor/meteor/issues/7450)) + * Custom Mongo options can now be specified using the `Mongo.setConnectionOptions(options)` API. [#7277](https://github.com/meteor/meteor/pull/7277) From 696de365493dd923ff6a9e740241372ca1bdd0b3 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Wed, 27 Jul 2016 16:15:51 +1000 Subject: [PATCH 5/7] More subtle logic for deciding when test files should be lazily loaded The logic at the top of this function was basically just for the case of "file is in imports but also a test file". But the logic caught up some other edge cases, such as "file is in node_modules but also a test file". --- tools/isobuild/package-source.js | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/tools/isobuild/package-source.js b/tools/isobuild/package-source.js index a32f71ded6..39648e1667 100644 --- a/tools/isobuild/package-source.js +++ b/tools/isobuild/package-source.js @@ -1361,21 +1361,16 @@ _.extend(PackageSource.prototype, { _inferFileOptions(relPath, {arch, isApp}) { const fileOptions = {}; - const isAnyTest = global.testCommandMetadata && - (global.testCommandMetadata.isTest || - global.testCommandMetadata.isAppTest); + const isTest = global.testCommandMetadata + && global.testCommandMetadata.isTest; + const isAppTest = global.testCommandMetadata + && global.testCommandMetadata.isAppTest; + const isTestFile = (isTest || isAppTest) && isTestFilePath(relPath); - if (isAnyTest) { - if (isTestFilePath(relPath)) { - // When running tests, test files should not be loaded lazily. - return fileOptions; - } - - // If running in test mode (`meteor test`), all files other than - // test files should be loaded lazily. - if (global.testCommandMetadata.isTest) { - fileOptions.lazy = true; - } + // If running in test mode (`meteor test`), all files other than + // test files should be loaded lazily. + if (isTest && !isTestFile) { + fileOptions.lazy = true; } const dirs = files.pathDirname(relPath).split(files.pathSep); @@ -1392,7 +1387,8 @@ _.extend(PackageSource.prototype, { return fileOptions; } - if (isApp && dir === "imports") { + // Files in `imports/` should be lazily loaded *apart* from tests + if (isApp && dir === "imports" && !isTestFile) { fileOptions.lazy = true; } From 98aaaed084fd87ab8003f0c2839705acdf965789 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 29 Jul 2016 12:23:04 +1000 Subject: [PATCH 6/7] Fix #7491 by wrapping child process in `script` on OSX See https://github.com/meteor/meteor/issues/7491#issuecomment-235887764 NOTE: this issue should be fixed in the next release of node v4 (4.4.8 or 4.5). When we include that in the dev bundle we should revert this change --- tools/cli/main.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tools/cli/main.js b/tools/cli/main.js index b04ad74fe6..e5ab1f1d06 100644 --- a/tools/cli/main.js +++ b/tools/cli/main.js @@ -493,6 +493,14 @@ var springboard = function (rel, options) { }).await()); } + // On OSX, there is a bug in node 4 when launching out to a node 0.10 process + // This should be fixed in the next release of node (we should then revert + // this change) https://github.com/meteor/meteor/issues/7491 + if (process.platform === 'darwin') { + newArgv.unshift('-q', '/dev/null', executable); + executable = 'script'; + } + // Now exec; we're not coming back. require('kexec')(executable, newArgv); throw Error('exec failed?'); From 7485f021182adb69655bdcfdbf4dddf6f4f5b954 Mon Sep 17 00:00:00 2001 From: Tom Coleman Date: Fri, 29 Jul 2016 12:26:41 +1000 Subject: [PATCH 7/7] Trying 1.4.0.1-rc.2 --- packages/meteor-tool/package.js | 2 +- scripts/admin/meteor-release-experimental.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/meteor-tool/package.js b/packages/meteor-tool/package.js index dca5e85d20..5f571e4cad 100644 --- a/packages/meteor-tool/package.js +++ b/packages/meteor-tool/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "The Meteor command-line tool", - version: '1.4.0' + version: '1.4.0-1-rc.2' }); Package.includeTool(); diff --git a/scripts/admin/meteor-release-experimental.json b/scripts/admin/meteor-release-experimental.json index 56fb5520a2..4476f8bab3 100644 --- a/scripts/admin/meteor-release-experimental.json +++ b/scripts/admin/meteor-release-experimental.json @@ -1,6 +1,6 @@ { "track": "METEOR", - "version": "1.4-rc.2", + "version": "1.4.0.1-rc.2", "recommended": false, "official": false, "description": "Meteor"