Commit Graph

20139 Commits

Author SHA1 Message Date
Sashko Stubailo
cdc4285357 Convert ddp-client to use only api.mainModule for client and server 2017-11-09 08:22:45 -08:00
James Baxley
70e815e7be Upgrade webapp package's Npm.depends dependencies. (#9315) 2017-11-09 10:52:25 -05:00
Jesse Rosenberger
d7e660fff1 In AppVeyor testing, only run a single dynamic import test.
Currently, three 'dynamic import' tests exist in the self-test suite:

 * dynamic import(...) in development
 * dynamic import(...) in production
 * dynamic import(...) with cache

These tests take quite some time to run; each test takes ~5 minutes.

While it's great to test them in a faster environment (Unix), which
Meteor will continue to do, the overall value of the three separate
tests is not as great in a slower testing environment, like Windows.
2017-11-09 15:53:47 +02:00
Jesse Rosenberger
235d00e2c7 Update references to cordova_lib.raw to account for raw deprecation.
The changes made in #9213 were seemingly innocent, but when merging
I missed the fact that the 'cordova-lib' package bump was done to a new
entry on the 'dev bundle', rather than on the
`CORDOVA_DEV_BUNDLE_VERSIONS` in tools/cordova/index.js which, as of
meteor/meteor#8976, is responsible for auto-installing Cordova when it
is used rather than including it in the pre-packaged 'dev bundle'.

That mistake was fixed with 958c44ff1b and
d6adc1b3a9, but not before it caused the
Cordova tests to falsely pass on the PR since it was functionally still
testing the previous version of Cordova, 7.0.0.

Unfortunately, one of the changes in the 7.1.0 was the deprecation of an
API we use within Meteor: the `raw` API on `cordova_lib`. Luckily, as
seen on the following commit, that change was merely a re-organizational
commit and still provides us access to that API by simply removing
the `raw.` segment and accessing the various methods directly:

90b6857f4d

Never saw that deprecation message, but we certainly saw the failure in
CI: https://circleci.com/gh/meteor/meteor/10412.

With any luck, this commit/PR will fix the problem.
2017-11-08 19:20:49 -05:00
Jesse Rosenberger
c70054dff1 Remove unintented extra space in Console message. 2017-11-09 02:10:21 +02:00
Ben Newman
eb8cf102cd Update tools/tests/old/app-with-private test app. 2017-11-08 17:52:49 -05:00
Jesse Rosenberger
853cf81367 Only run AppVeyor tests for Windows 64-bit, and not also 32-.
AppVeyor does provide us quite a bit of value at no cost since we're
open-source software, but with only a single container at our disposal
under that plan, our build queue is often maxed-out for hours.

Since most Meteor developers are using 64-bit platforms, the 64-bit
tests provide the most value.  Meteor doesn't have much (if any?) in the
way of 32-bit/64-bit exceptions so any functionality difference would be
at the OS level.  Some day, we might bring this back.
2017-11-09 00:28:01 +02:00
Jesse Rosenberger
1d91e05264 Remove functionality behind the build farm command.
It's still possible to publish packages for different platforms by using
the `meteor publish-for-arch` command, though it's become increasingly
difficult to offer compatible versions for every circumstance due to the
wide matrix of Node.js ABI versions. This makes it unlikely that
a package built on the build farm will be appropriate for the
application which the package is consumed by, substantially reducing the
overall value of rather expensive infrastructure.

Since Meteor 1.4, and as part of the jump from Node 0.10 to Node 4,
Meteor introduced the capability to compile binary dependencies at the
time that a package is installed.  Additionally, many Node.js packages
are already pre-compiled in a much more effective and wide-spread nature
for the entire JavaScript ecosystem using tools like `node-pre-gyp`.

cc @benjamn.
2017-11-09 00:23:25 +02:00
Jesse Rosenberger
d6adc1b3a9 Update 'cordova-lib' to the intended version, 7.1.0, not 7.1.1.
I think I just typo-ed that patch version right before I committed it.

It certainly should have been 7.1.0. :(

Ref: https://github.com/meteor/meteor/pull/9213

cc @skirunman.
2017-11-08 21:55:48 +02:00
Jesse Rosenberger
958c44ff1b Move 'cordova-lib' back to CORDOVA_DEV_BUNDLE_VERSIONS for auto install.
While 'cordova-lib' used to live in 'dev-bundle-tool-package.js' where
it was pre-bundled into the "dev bundle", that is no longer the case.

It is now automatically installed, on demand, when Cordova is used.

This follows up on meteor/meteor#9213, which added it back to the
'dev-bundle-tool-package.js' and updates it in the new location.

Ref: https://github.com/meteor/meteor/pull/9213
Ref: 073f2410a6

cc @skirunman.
2017-11-08 21:53:37 +02:00
Ben Newman
a39f502d2c Define addSource and addMissing dynamic-import helper functions. 2017-11-08 14:40:55 -05:00
Ben Newman
35bc8f0c15 Bump boilerplate-generator package versions. 2017-11-08 14:30:43 -05:00
Ben Newman
84dd4d4ed3 Bump minimongo package version to 1.4.1. 2017-11-08 14:22:28 -05:00
Ben Newman
fa80c17c0e Bump ddp-server package version to 2.1.1. 2017-11-08 14:03:04 -05:00
Ben Newman
abc349cab7 Update shrinkwrap for ddp-server npm dependencies. 2017-11-08 14:00:59 -05:00
Mitar
8695fbfb0c Bumping sockjs-node to 0.3.19. (#9215) 2017-11-08 20:15:25 +02:00
Ben Newman
35e70fd23d Stop adding line number comments to linked JavaScript files. (#9323)
Several years ago, before all major browsers supported source maps, we
felt it was important to provide line number information in generated
files using end-of-line comments like "// 123\n".

Adding all these comments was always slower than leaving the code
unmodified, and recently they have begun interacting badly with certain
newer ECMAScript syntax, such as multi-line template strings (#9160).

Since source maps are well supported in most browsers that developers are
likely to be using for development, and the line number comments are now
causing substantive problems beyond the performance cost, I think it's
time we stopped using them once and for all.

Fixes #9160.
2017-11-08 12:04:59 -05:00
Simon Fridlund
18f73f2041 Minimongo sorting bug with falsey selector (#9302)
* Add test for sorting with falsey selector

Falsy selectors should result in empty result and sorting shouldn't blow up.

* Protect sorter from falsey selectors
2017-11-08 11:57:59 -05:00
Hugh Willson
18dcb4d6d2 Handle overridden _.template settings in boilerplate-generator (#9250)
* Handle overridden _.template settings in boilerplate-generator

When `underscore`'s default `_.template` settings are overridden
using `_.templateSettings` in an application, this can adversely
affect the `_.template` calls used by the `boilerplate-generator`
to render an application's initial HTML template. These changes
make sure the `boilerplate-generator` is overridding any
defined `_.templateSettings` with its own verified to work
settings.

Fixes #9149.

* Add comment explaining additional _.template config override

* Handle overridden _.templateSettings with the cordova boilerplate

* Remove underscore use wherever possible

* Change incorrect implementation of an "empty" manifest.

This test was trying to imply an empty manifest by using an empty
associative array (hash), whereas a manifest is only ever an array
of hashes (as per the bundler code).  Therefore, an empty manifest
should be an array with no items.

This is to fix the failure seen in https://travis-ci.org/meteor/meteor/builds/291857783?utm_source=github_status&utm_medium=notification
because of @hwillson's changes in 9aee811a4b.

Refs: meteor/meteor#9250.

* Make underscore replacement code more defensive

`_.map` handles a falsy input value, whereas `Array.prototype.map`
(obivously) does not. While not likely common practice, it's
possible falsy values are being passed into the boilerplate
generator, for elements like `js`, `css`, etc. These changes
replicate `_.map`'s handling of incoming falsy values by
converting them to an empty array.
2017-11-08 18:43:14 +02:00
skirunman
073f2410a6 Cordova 7.1.0, Android 6.3.0 and iOS 4.5.3 updates (#9213)
* Update to Cordova 7.1.0 and Cordova Android 6.3.0

* Update deprecated Cordova plugins

* Update History.md for both Cordova updates and previous iOS icons and launch screens

* Update the PR #

* Remove change to History.md

This change is now in https://github.com/meteor/meteor/pull/9227

* Update to iOS 4.5.2

Update to new Cordova iOS 4.5.2 release. https://cordova.apache.org/announcements/2017/10/16/ios-release.html

* Update History.md for Cordova iOS 4.5.2.

* Update to Cordova iOS 4.5.3

Update to Cordova iOS 4.5.3, see https://cordova.apache.org/announcements/2017/10/31/ios-release.html

* Tweak history for update to Cordova iOS 4.5.3

* Update iOS launch screens 

Updating iOS launch screens to match what is supported in Cordova iOS 4.5.3 and remove latest iPad Pro sizes that are not supported in Xcode 9 and therefore not in Cordova iOS. See c3d24a9f02/bin/templates/scripts/cordova/lib/prepare.js
2017-11-08 18:14:12 +02:00
Hugh Willson
c26b91a1f0 Update Facebook OAuth app config steps (#9258)
* Update Facebook OAuth app config steps

Facebook has updated their application developer portal, so the
steps for creating a Facebook OAuth app have changed. This commit
updates the steps shown as part of the `facebook-config-ui`
setup process, to line up with Facebook's new dev portal.

Fixes #8867.

* Capitalize CAPTCHA.

Nit: Capitalized CAPTCHA since it's an acronym.

* Bump facebook-config-ui package version to 1.0.1.
2017-11-08 14:02:14 +02:00
Hugh Willson
f32f1e2b07 Add note about possible package incompatibilty with 1.5 (#9314) 2017-11-07 10:23:00 -05:00
Ben Newman
cfc509e581 Merge pull request #9312 from meteor/extract-unibuild-class
Extract Unibuild class.
2017-11-06 17:40:28 -05:00
Ben Newman
54b649d5f5 Encapsulate deserialization logic in Unibuild#fromJSON method. 2017-11-06 17:14:05 -05:00
Ben Newman
081d59fa1a Avoid passing two unnecessary parameters to Unibuild#toJSON. 2017-11-06 17:12:10 -05:00
Ben Newman
60fe3a096d Encapsulate serialization logic in Unibuild#toJSON method. 2017-11-06 17:12:10 -05:00
Ben Newman
206f6b7ce4 Convert Unibuild to class and extract into own module. 2017-11-06 17:12:10 -05:00
Ben Newman
5f1e2c22ff Merge pull request #9309 from meteor/Package._define
Use Package._define to reduce package boilerplate.
2017-11-06 16:56:16 -05:00
Ben Newman
f70f3f275c Bump LINKER_CACHE_SALT after recent linker changes. 2017-11-06 16:55:31 -05:00
Ben Newman
78a7cc0633 Use PackageRegistry for build plugins, too. 2017-11-06 16:55:31 -05:00
Ben Newman
57533d2205 Use Package._define helper to initialize Package.* exports.
This saves a little bit of boilerplate code in every package.
2017-11-06 16:55:31 -05:00
Ben Newman
5ee44ca81c Initialize global.Package once, instead of in every package. 2017-11-06 16:55:31 -05:00
Ben Newman
a33ac61ea8 Remove underscore import from boot.js. 2017-11-06 16:55:31 -05:00
Ben Newman
d3571161e5 Merge pull request #9311 from meteor/package.json-browser-object-relative-style
Support object-valued "browser" field in package.json.
2017-11-06 16:54:33 -05:00
Ben Newman
1cbcfb59bc Update dynamic-import test app to use React 16. 2017-11-06 15:46:33 -05:00
Ben Newman
9526ce8976 Test that object-valued package.json "browser" fields are respected.
Regression test for #6890.
2017-11-06 15:46:09 -05:00
Ben Newman
d6b8648eec Add a package-lock.json file to the dynamic-import test app. 2017-11-06 15:10:38 -05:00
Ben Newman
6ada1565aa Update dynamic-import test app to Meteor 1.6. 2017-11-06 15:10:38 -05:00
Ben Newman
234fb35174 Update modules test app to Meteor 1.6. 2017-11-06 15:09:55 -05:00
Ben Newman
8d3ae25eb8 Cache Resolver methods for finding package.json data. 2017-11-06 14:09:54 -05:00
Ben Newman
71cffb2a1f Output package.json "browser" aliases in tools/isobuild/linker.js. 2017-11-06 14:09:54 -05:00
Ben Newman
edc97bad27 Register aliases from package.json "browser" field in ImportScanner. 2017-11-06 14:09:54 -05:00
Ben Newman
d4872366d0 Refactor Resolver handling of package.json files.
Any package.json file that includes an object-valued "browser" field will
now be included in the .packageJsonMap.
2017-11-06 14:09:54 -05:00
Ben Newman
26ab2e5b4e Rename installPath property to absModuleId, and make absolute.
The `installPath` property was always essentially an absolute module
identifier that was simply missing the leading '/' character, so this
commit acknowledges that role by renaming the property to `absModuleId`
and adding the leading slash.
2017-11-06 14:09:54 -05:00
Ben Newman
92f5350e1e Merge instead of replacing implicit files in ImportScanner. 2017-11-06 11:21:27 -05:00
Jesse Rosenberger
6f716eec93 Merge branch 'master' into devel 2017-11-05 15:20:05 +02:00
Jesse Rosenberger
c69ead89dc Merge pull request #9304 from meteor/abernix/update-1.5.3-history-master
Update History.md with miscellaneous changes in Meteor 1.5.3.
2017-11-05 15:19:40 +02:00
Jesse Rosenberger
e3dce16795 Update History.md with miscellaneous changes in Meteor 1.5.3. 2017-11-05 15:13:43 +02:00
Ben Newman
4bbe849b35 Merge pull request #9107 from GeoffreyBooth/coffeescript-2
CoffeeScript 2.0.2
2017-11-01 10:49:20 -04:00
Geoffrey Booth
904ba9597d Bump coffeescript NPM module version 2017-10-31 14:00:56 -07:00