Commit Graph

6176 Commits

Author SHA1 Message Date
Jesse Rosenberger
3b8c886f6f Merge branch 'devel' into release-1.4.3 2017-01-26 15:39:21 -08:00
Ben Newman
355cde306a Merge pull request #8239 from wojtkowiak/cordova-6.4.0
Update to Cordova 6.4.0
2017-01-25 16:39:13 -05:00
Ben Newman
0734a70299 Merge branch 'devel' into release-1.4.3 2017-01-19 11:55:29 -05:00
Hugh Willson
524e34bce2 Slight wording changes. 2017-01-15 10:37:52 -05:00
Hugh Willson
7064a029ef Updated to include note about matching architecture versions for packages. 2017-01-13 10:48:04 -05:00
Hugh Willson
24e64f483e Updated meteor build CLI help to include os.windows.x86_32 --architecture option. 2017-01-12 11:05:22 -05:00
Bartosz Wojtkowiak
9347cdff3d Update Cordova pinned plugin versions and dependencies to latest verions 2017-01-11 22:13:29 +01:00
Bartosz Wojtkowiak
503c0472d4 Update cordova-ios and cordova-android to latest versions 2017-01-11 21:55:07 +01:00
Ben Newman
fd9bda20df Merge pull request #8170 from abernix/feature/fix-7859-messaging
Improve helpfulness of error message when combining different files.
2017-01-10 18:48:01 -05:00
Ben Newman
d3bed96215 Merge branch 'devel' into release-1.4.3 2017-01-10 12:55:23 -05:00
David Glasser
b7286fc90d Make deploy errors easier to identify 2017-01-05 13:11:01 -08:00
Ben Newman
13eee64d95 Style tweak to reduce indentation in ImportScanner#_addPkgJsonToOutput. 2017-01-04 13:13:45 -05:00
Ben Newman
4fb26259b8 Unify file.emptyStub and file.imported === "implicit" as file.implicit.
Note that there was a typo in ResourceSlot#addStylesheet, so
file.emptyStub was never === true before.
2017-01-04 13:00:24 -05:00
Ben Newman
2eab0b2bf4 Preserve true "main" and "browser" fields of package.json modules.
Previously, when building a JavaScript bundle for the client, if a
package.json file had a string-valued "browser" field, we would replace
the value of the "main" field of the bundled package.json module with the
value of the "browser" field. This trick was important because it allowed
an npm package to have a different entry point on the client than it had
on the server.

However, that approach became inconsistent if the package.json file was
also explicitly imported as a module, because the package.json stub used
for module resolution prevented the real contents of package.json from
getting bundled, and disagreed with the original package.json module about
the value of the "main" field.

To resolve that inconsistency, it seems better to avoid modifying the
"main" field of package.json modules, and instead rely on the runtime
module system to make sense of the "browser" field, regardless of whether
the package.json module is a stub used only for module resolution or
contains the full contents of the original package.json file.

The ability to understand "browser" fields of package.json modules was
introduced in install@0.8.3:
377d1a3b51

This is potentially a backwards-incompatible change for developers using
this version of `ImportScanner` and `Resolver` who have not yet upgraded
their `modules-runtime` package to at least version 0.7.8. The solution is
to upgrade `modules-runtime`, though it would be nice to enforce that
better somehow.
2017-01-04 11:54:17 -05:00
Jesse Rosenberger
d15e1f9172 Ensure babel-runtime is included in skelton variations & bump versions
Also updated the `meteor-node-stubs` to the latest published release.

Closes meteor/meteor#8202
2017-01-04 01:44:05 +02:00
Ben Newman
1ee3774bdb Merge pull request #8183 from cwohlman/remove-insecure-packages-from-bare-skeleton
Remove autopublish and insecure from the bare skeleton app
2017-01-03 18:43:36 -05:00
Oleksandr Chekhovskyi
3d3c81830a Update node-mongodb driver to 2.2.16
This fixes an issue where the driver fails to recover from unresponsive
primary in a replica set.
2016-12-29 20:06:56 +01:00
Joshua Ohlman
0a87fa5df6 Remove autopublish and insecure from the bare skeleton app
Fixes #8145
2016-12-22 07:54:21 -06:00
Jesse Rosenberger
ec69e6d999 Improve helpfulness of error message when combining different files
Make the error message displayed to the developer more helpful in a situation like meteor/meteor#7859 where the `package.js` inadvertently referred to an imProPeRly-CaSeD version of the file it was importing.

No functionality change, just developer experience.

Fixes #7859
2016-12-19 19:36:48 +02:00
Ben Newman
83b05896c3 Merge pull request #8142 from abernix/feature/fix-7849-stale-cordova-build
Cordova project preparation must occur before copying to the build
2016-12-13 19:01:49 -05:00
Ben Newman
31077c8381 Merge pull request #8151 from abernix/feature/fix-4054-console-corruption
Fix console glitch when using some admin package functions
2016-12-13 18:55:13 -05:00
Jesse Rosenberger
4a16e649cc Fix console glitch when using some admin package functions
Tiny fix for an old issue where the console output would get corrupted when running `meteor admin set-unmigrated` or `meteor admin change-homepage` due to missing newline on `rawInfo` command.

Fixes meteor/meteor#4054
2016-12-13 15:54:10 +02:00
Jesse Rosenberger
1fda39b3a0 Cordova project preparation must occur before copying to the build
This fixes a regression caused by 88d43a0f16 which is demonstrated in meteor/meteor#7849.

Essentially, with the current implementation some Cordova build elements are "stale" when the build is copied.  For example, if you execute a `meteor run ios` and then `meteor build . --server=http://example.com/` (note: `example.com`) the `config.xml` (`<access origin />`), the boilerplate HTML (`__meteor_runtime_config__`) and other elements of the bundle (`Info.plist` on iOS) will still contain the previously used `http://<local_ip>:3000` address instead of `http://example.com` as they should.

Additionally, it would appear that it's impossible to actually checkout a project and immediately run `meteor build` without running `meteor run (android|ios)` first.

Various work-arounds for this seem to exist, such as running `meteor build` twice, or running `meteor run --server=http://production.com` first.

Ultimately, this is occurring because the bundle is being copied before the Cordova `prepareForPlatform` occurs which I believe was not intended.

There is already a test in place which fails without this fix, but marked as `slow` and therefore not executed on CircleCI.  Specifically, `cordova builds with server options` would have caught this.  Forcibly running this test locally now passes with this change.

Fixes meteor/meteor#7849
Fixes meteor/meteor#7291
Fixes meteor/meteor#6756
2016-12-12 17:11:55 +02:00
Jesse Rosenberger
23c52ff002 meteor shell should pass its TTY width to the server on connect
Previously, the width (or "columns") for the readline shell was being obtained on the server.  This causes problems for clients which are connecting to the server which are sized differently.

The client will still have problems if they resize AFTER they are connected to the REPL, but at least they have the option of being a different size.

A more complete solution would be to have the client listen on process.stdout "resize" and pass that to the server when it occurs, but I'm not sure of an easy way to do that with the current communication (perhaps pause-reconfigure-unpause?).

Fixes meteor/meteor#5346
2016-12-12 12:57:16 +02:00
Ben Newman
5d0da71e27 Use process.env.METEOR_HEADLESS in CI tests.
This should also fix a bug where Console.isHeadless() was returning false
in tests.

Follow-up to #8037.
2016-12-06 12:47:05 -05:00
Ben Newman
f42c137f55 Always copy node_modules/.bin into bundle/programs/server/npm.
Fixes #8136.
2016-12-06 10:16:43 -05:00
Ben Newman
e804c00e97 Merge pull request #8037 from mitar/headless
Respect METEOR_HEADLESS environment variable.
2016-12-01 10:18:52 -05:00
Ben Newman
3dc623cb8f Merge pull request #8120 from hwillson/issue-5626-proper
Help address the Unicode asset filename issues discussed in #5626
2016-12-01 09:40:43 -05:00
Hugh Willson
4a10a1b26b Making sure asset filenames are Unicode normalized when loaded (to help address issue #5626). 2016-11-30 20:31:37 -05:00
Hugh Willson
c55d8cca76 Revert "Revert "Merge pull request #7963 from hwillson/issue-5626" (#8118)"
This reverts commit 5754f8ef3e.
2016-11-30 20:28:21 -05:00
Ben Newman
7c148b2a4e Merge branch 'devel' into run-reify-before-babel 2016-11-30 19:51:05 -05:00
Ben Newman
5754f8ef3e Revert "Merge pull request #7963 from hwillson/issue-5626" (#8118)
This reverts commit 11ce2f7bbc, reversing
changes made to dfde4146f7.
2016-11-30 19:48:19 -05:00
Mitar
fca0dccd20 Parse JSON for the flag. 2016-11-30 03:18:52 -08:00
Ben Newman
11ce2f7bbc Merge pull request #7963 from hwillson/issue-5626
Load `program.json` using the Unicode Normalization Form of the loaded JSON string
2016-11-29 18:22:00 -05:00
Ben Newman
dfde4146f7 Merge pull request #8104 from abernix/feature/8034-improve-compiler-error
Improve build plugin error when asset is added with empty contents
2016-11-29 18:12:57 -05:00
Ben Newman
ac86594346 Install npm dependencies automatically when creating apps.
Although I have said I do not think Meteor should run `npm install`
automatically to update application node_modules, my real concern is that
Meteor should not interfere with your preferred node_modules-related
workflow, be it npm, npm-shinkwrap.json, yarn, yarn.lock, checking your
node_modules into git/mercurial/cvs, or whatever other scheme you have.

Automatically installing node_modules from the default package.json file
when a new app is created will eliminate real confusion, and should not
interfere with any workflows, because there is no opportunity to establish
another workflow before Meteor runs `npm install` the very first time.
2016-11-28 12:11:59 -05:00
Ben Newman
c83094ae26 Tolerate module["import"] properties in findImportedModuleIdentifiers. 2016-11-26 13:07:27 -05:00
Jesse Rosenberger
487b41fd75 Improve compiler error when asset is added with empty contents
While not a Meteor bug, this makes the error message more helpful when a compiler tries adding an asset without data, as demonstrated in meteor/meteor#8034.

Thanks to suggestion by @sdarnell for this.

Closes meteor/meteor#8034
2016-11-24 16:20:46 +02:00
Rhywden
b029732a11 Fix for console output in PowerShell on Win10
See https://github.com/meteor/meteor/issues/6785

Basically, 
```
new Array(249).join('\b')
```
is not a good idea for a carriage return. Code has been tested with CMD, PowerShell and PowerShell in Legacy Mode and seems to solve the issue.
2016-11-21 20:34:11 +01:00
Ben Newman
3120b9324d Update modules test app to Meteor 1.4.2.3. 2016-11-18 11:01:47 -05:00
Ben Newman
f4abbccf45 Merge branch 'master' into devel 2016-11-17 16:23:04 -05:00
David Burles
00c6681ae4 remove inline eslint rules 2016-11-17 16:21:40 -05:00
David Burles
76f85113f1 remove validation test 2016-11-17 16:21:40 -05:00
David Burles
9ac8df351f remove url validation 2016-11-17 16:21:40 -05:00
David Burles
180ce53633 more concise export 2016-11-17 16:21:40 -05:00
David Burles
44d3181d1c code style changes for skel-full 2016-11-17 16:21:40 -05:00
Ben Newman
1b855047ae Limit InputFile#findControlFile to package source root directory.
This is an improvement that I noticed while investigating the
feasibility of fixing #8068.
2016-11-17 13:17:49 -05:00
Ben Newman
fc9c56a73e Improve InputFile#resolve. 2016-11-17 13:12:27 -05:00
Ben Newman
4cf06c37a6 Avoid global/method name ambiguity in InputFile#require. 2016-11-17 13:12:27 -05:00
David Burles
dc1bdc3a56 remove inline eslint rules 2016-11-16 11:22:45 -05:00