Skip to content

Commit

Permalink
Merge pull request meteor#10403 from meteor/release-1.8.0.2
Browse files Browse the repository at this point in the history
Release 1.8.0.2
  • Loading branch information
benjamn authored Jan 7, 2019
2 parents 5e8434e + be6e529 commit 38c1e5c
Show file tree
Hide file tree
Showing 16 changed files with 272 additions and 195 deletions.
37 changes: 34 additions & 3 deletions History.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ N/A

### Changes

## v1.8.0.1, 2018-11-23
## v1.8.0.2, 2019-01-07

### Breaking changes
N/A
Expand All @@ -18,9 +18,36 @@ N/A

### Changes

* The `meteor-babel` npm package has been updated to version 7.1.6,
- The [React tutorial](https://www.meteor.com/tutorials/react/creating-an-app)
has been updated to address a number of inaccuracies due to changes in
recent Meteor releases that were not fully incorporated back into the
tutorial. As a reminder, Meteor now supports a `meteor create --react`
command that can be used to create a new React-based app quickly.

- Fixed a bug where modules named with `*.app-tests.js` (or `*.tests.js`)
file extensions sometimes could not be imported by the
`meteor.testModule` entry point when running the `meteor test` command
(or `meteor test --full-app`).
[PR #10402](https://github.com/meteor/meteor/pull/10402)

* The `meteor-promise` package has been updated to version 0.8.7, which
includes a [commit](https://github.com/meteor/promise/commit/bbe4f0d20b70417950381aea112993c4cc8c1168)
that should prevent memory leaks when excess fibers are discarded from
the `Fiber` pool.

* The `meteor-babel` npm package has been updated to version 7.2.0,
improving source maps for applications with custom `.babelrc` files.

## v1.8.0.1, 2018-11-23

### Breaking changes
N/A

### Migration steps
N/A

### Changes

* The `useragent` npm package used by `webapp` and (indirectly) by the
`modern-browsers` package has been updated from 2.2.1 to 2.3.0. The
`chromium` browser name has been aliased to use the same minimum modern
Expand Down Expand Up @@ -57,9 +84,13 @@ N/A
planning a quick follow-up Meteor 1.8.1 release, which can be obtained
by running the command
```bash
meteor update --release 1.8.1
meteor update --release 1.8.1-beta.n
```
where `-beta.n` is the latest beta release according to the
[releases](https://github.com/meteor/meteor/releases) page (currently
`-beta.6`).
[Issue #10216](https://github.com/meteor/meteor/issues/10216)
[PR #10248](https://github.com/meteor/meteor/pull/10248)

* Meteor 1.7 introduced a new client bundle called `web.browser.legacy` in
addition to the `web.browser` (modern) and `web.cordova` bundles.
Expand Down
2 changes: 1 addition & 1 deletion meteor
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env bash

# Note: Skip 8.12.0.0, as it has already been used.
BUNDLE_VERSION=8.11.4.7
BUNDLE_VERSION=8.11.4.8

# OS Check. Put here because here is where we download the precompiled
# bundles that are arch specific.
Expand Down
298 changes: 149 additions & 149 deletions packages/babel-compiler/.npm/package/npm-shrinkwrap.json

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions packages/babel-compiler/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ Package.describe({
// isn't possible because you can't publish a non-recommended
// release with package versions that don't have a pre-release
// identifier at the end (eg, -dev)
version: '7.2.3'
version: '7.2.4'
});

Npm.depends({
'meteor-babel': '7.1.6',
'meteor-babel': '7.2.0',
'json5': '2.1.0'
});

Expand Down
2 changes: 1 addition & 1 deletion packages/ecmascript/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
name: 'ecmascript',
version: '0.12.3',
version: '0.12.4',
summary: 'Compiler plugin that supports ES2015+ in all .js files',
documentation: 'README.md'
});
Expand Down
2 changes: 1 addition & 1 deletion packages/meteor-tool/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "The Meteor command-line tool",
version: '1.8.0_1'
version: '1.8.0_2'
});

Package.includeTool();
12 changes: 6 additions & 6 deletions packages/promise/.npm/package/npm-shrinkwrap.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions packages/promise/package.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
Package.describe({
name: "promise",
version: "0.11.1",
version: "0.11.2",
summary: "ECMAScript 2015 Promise polyfill with Fiber support",
git: "https://github.com/meteor/promise",
documentation: "README.md"
});

Npm.depends({
"meteor-promise": "0.8.6",
"promise": "8.0.1"
"meteor-promise": "0.8.7",
"promise": "8.0.2"
});

Package.onUse(function(api) {
Expand Down
2 changes: 1 addition & 1 deletion scripts/admin/meteor-release-experimental.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"track": "METEOR",
"version": "1.8.0.1-rc.4",
"version": "1.8.0.2-rc.2",
"recommended": false,
"official": false,
"description": "Meteor"
Expand Down
5 changes: 3 additions & 2 deletions scripts/admin/meteor-release-official.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
{
"track": "METEOR",
"version": "1.8.0.1",
"version": "1.8.0.2",
"recommended": false,
"official": true,
"patchFrom": [
"1.8"
"1.8",
"1.8.0.1"
],
"description": "The Official Meteor Distribution"
}
4 changes: 2 additions & 2 deletions scripts/dev-bundle-server-package.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ var packageJson = {
name: "meteor-dev-bundle",
private: true,
dependencies: {
"meteor-promise": "0.8.6",
"meteor-promise": "0.8.7",
fibers: "2.0.0",
promise: "8.0.1",
promise: "8.0.2",
// Not yet upgrading Underscore from 1.5.2 to 1.7.0 (which should be done
// in the package too) because we should consider using lodash instead
// (and there are backwards-incompatible changes either way).
Expand Down
6 changes: 3 additions & 3 deletions scripts/dev-bundle-tool-package.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ var packageJson = {
pacote: "https://github.com/meteor/pacote/tarball/a3285854a68e4969d6c8abaa74407f7d113b178f",
"node-gyp": "3.7.0",
"node-pre-gyp": "0.10.3",
"meteor-babel": "7.1.6",
"meteor-promise": "0.8.6",
"meteor-babel": "7.2.0",
"meteor-promise": "0.8.7",
promise: "8.0.1",
reify: "0.17.3",
fibers: "2.0.0",
// So that Babel can emit require("@babel/runtime/helpers/...") calls.
"@babel/runtime": "7.1.5",
"@babel/runtime": "7.2.0",
// For backwards compatibility with isopackets that still depend on
// babel-runtime rather than @babel/runtime.
"babel-runtime": "7.0.0-beta.3",
Expand Down
57 changes: 43 additions & 14 deletions tools/isobuild/package-source.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ import { PackageAPI } from "./package-api.js";
import {
TEST_FILENAME_REGEXPS,
APP_TEST_FILENAME_REGEXPS,
isTestFilePath } from './test-files.js';
isTestFilePath,
} from './test-files.js';

import {
convert as convertColonsInPath
Expand Down Expand Up @@ -1102,15 +1103,6 @@ _.extend(PackageSource.prototype, {
// Ignore the usual ignorable files.
sourceReadOptions.exclude.push(...ignoreFiles);

// Unless we're running tests, ignore all test filenames and if we are, ignore the
// type of file we *aren't* running
if (!global.testCommandMetadata || global.testCommandMetadata.isTest) {
sourceReadOptions.exclude.push(...APP_TEST_FILENAME_REGEXPS);
}
if (!global.testCommandMetadata || global.testCommandMetadata.isAppTest) {
sourceReadOptions.exclude.push(...TEST_FILENAME_REGEXPS);
}

// Read top-level source files, excluding control files that were not
// explicitly included.
const controlFiles = ['mobile-config.js'];
Expand All @@ -1121,11 +1113,48 @@ _.extend(PackageSource.prototype, {

const anyLevelExcludes = [];

// If we have a meteor.testModule from package.json, then we don't
// need to exclude tests/ directories from the search, because we
// trust meteor.testModule to identify a single test entry point.
if (! testModule) {
if (testModule) {
// If we have a meteor.testModule from package.json, then we don't
// need to exclude tests/ directories or *.tests.js files from the
// search, because we trust meteor.testModule to identify a single
// test entry point.
} else {
anyLevelExcludes.push(/^tests\/$/);

const {
isTest = false,
isAppTest = false,
} = global.testCommandMetadata || {};

if (isTest || isAppTest) {
// If we're running `meteor test` without the --full-app option,
// ignore app-test-only files like *.app-tests.js.
if (! isAppTest) {
sourceReadOptions.exclude.push(
...APP_TEST_FILENAME_REGEXPS,
);
}

// If we're running `meteor test` with the --full-app option,
// ignore non-app-test files like *.tests.js. The wisdom of this
// behavior is debatable, since you might want to run non-app
// tests even when you're using the --full-app option, but it's
// legacy behavior at this point, and it doesn't matter if you're
// using meteor.testModule anyway (recommended).
if (! isTest) {
sourceReadOptions.exclude.push(
...TEST_FILENAME_REGEXPS,
);
}

} else {
// If we're not running `meteor test` (and meteor.testModule is
// not defined in package.json), ignore all test files.
sourceReadOptions.exclude.push(
...APP_TEST_FILENAME_REGEXPS,
...TEST_FILENAME_REGEXPS,
);
}
}

anyLevelExcludes.push(
Expand Down
9 changes: 9 additions & 0 deletions tools/tests/apps/modules/imports/imported.tests.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import assert from "assert";

export const name = module.id.split("/").pop();

describe(name, () => {
it("should be imported", () => {
assert.strictEqual(name, "imported.tests.js");
});
});
7 changes: 7 additions & 0 deletions tools/tests/apps/modules/tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -653,3 +653,10 @@ describe("circular package.json resolution chains", () => {
);
});
});

describe("imported *.tests.js modules", () => {
const { name } = require("./imports/imported.tests.js");
it("should be properly compiled", () => {
assert.strictEqual(name, "imported.tests.js");
});
});
14 changes: 7 additions & 7 deletions tools/tests/test-modes.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,17 @@ selftest.define("'meteor test --port' accepts/rejects proper values", function (
runAddPackage.expectExit(0);

run = s.run("test", "--port", "3700", "--driver-package", "tmeasday:acceptance-test-driver");
run.waitSecs(120);
run.waitSecs(30);
run.match('App running at: http://localhost:3700/');
run.stop();

run = s.run("test", "--port", "127.0.0.1:3700", "--driver-package", "tmeasday:acceptance-test-driver");
run.waitSecs(120);
run.waitSecs(30);
run.match('App running at: http://127.0.0.1:3700/');
run.stop();

run = s.run("test", "--port", "[::]:3700", "--driver-package", "tmeasday:acceptance-test-driver");
run.waitSecs(120);
run.waitSecs(30);
run.match('App running at: http://[::]:3700/');
run.stop();
});
Expand Down Expand Up @@ -80,15 +80,15 @@ selftest.define("'meteor test' eagerly loads correct files", () => {

// `meteor` should load app files, but not test files or app-test files
run = s.run();
run.waitSecs(120);
run.waitSecs(30);
run.match('index.js');
run.stop();
run.forbid('foo.test.js');
run.forbid('foo.app-test.js');

// `meteor test` should load test files, but not app files or app-test files
run = s.run('test', '--driver-package', 'tmeasday:acceptance-test-driver');
run.waitSecs(120);
run.waitSecs(30);
run.match('foo.test.js');
run.stop();
run.forbid('index.js');
Expand All @@ -102,9 +102,9 @@ selftest.define("'meteor test' eagerly loads correct files", () => {
'tmeasday:acceptance-test-driver',
'--full-app',
);
run.waitSecs(120);
run.waitSecs(30);
run.match('foo.app-test.js');
run.match('index.js');
run.stop();
run.forbid('foo.test.js');
})
});

0 comments on commit 38c1e5c

Please sign in to comment.