Commit Graph

4464 Commits

Author SHA1 Message Date
Graham Hughes
e0aa235521 Find the first target with valid ABI.
Fixes #2848.
2015-06-10 14:23:08 -07:00
David Glasser
0c25d5395c Fix soft refresh
Due to a type error, _checkUpToDatePreloaded always returned false, so
soft refresh never actually happened.  Oops.

This might be (partially?) responsible for #3373.
2015-06-04 01:03:22 -07:00
David Glasser
78ddff5a02 Improve linker's use of noLineNumbers
Follow-up to b556e62262.

Priori to b556e62262, preserveLineNumbers always meant "in an app, not
linking multiple files into a single file" and noLineNumbers always
meant "this is an isopacket, ignoring line numbers for performance (but
still wanting source maps)".

b556e62262 made "noLineNumbers and no source map (eg, JS)" imply
preserveLineNumbers and not creating a source map for the nested
file. But that meant that in the isopacket case, the source map for the
linkered files didn't get you back to the pre-linker case.

This commit reverts to the previous behavior, where noLineNumbers + no
source map + !preserveLineNumbers still generates source maps
representing the linker transform itself.
2015-06-03 17:05:45 -07:00
David Glasser
2f393a87c3 Improve error message for publish-for-arch
Addresses #4477.
2015-06-02 14:54:11 -07:00
Mitar
2e7697391b Ignore node_modules directory. Fixes #4452
Fixes #4457.
2015-06-02 13:50:02 -07:00
SEKE
869121c743 Remove windows illegal caracter in package server file 2015-05-29 14:26:34 -04:00
David Glasser
fa9c8e3f74 Replace coffeescript reference with bare 2015-05-26 19:03:55 -07:00
Joseph Orbegoso Pea
a165a64249 Oops, typo. 2015-05-26 18:57:36 -07:00
Joseph Orbegoso Pea
d401ef9099 Added missing parameter documentation for api.addFiles.
I'm not sure if this is the complete description of the `fileOptions` parameter, but it would be helpful to see in the docs. Is `fileOptions` used by anything other than build plugins, so that I may update this PR?
2015-05-26 14:08:35 -07:00
David Glasser
c978753bb8 source maps have better paths 2015-05-22 19:17:33 -04:00
Ben Newman
b556e62262 Always annotate line numbers when a source map is available.
When a source map is available, the line number annotations are now
computed from the source map. If no source map is available, but we are
planning to combine the file with other files in a package, we generate a
simple identity source map for the file and then annotate its line numbers
using that source map. This combination of techniques provides a tolerable
debugging experience in all browsers, even those that do not support
source maps.

The File.prototype._pathForSourceMap method was removed because it is no
longer used (self.servePath is better for source maps anyway, because it
includes parent directories, and the leading / character ensures that
source map paths will not be misinterpreted as relative paths).
2015-05-22 18:29:44 -04:00
Slava Kim
77c341fea7 Fix the meteor build behavior since it was broken by Cordova 5.0 upgrade
The Cordova 5.0 is featuring Cordova Android 4.0, which now ships with a gradle project and not Ant.
2015-05-21 18:02:29 -07:00
Bartosz Wojtkowiak
1f2f584fe8 realtive path of cordova plugin should be relative to meteor project 2015-05-21 18:02:14 -07:00
Bartosz Wojtkowiak
d978ad4493 fixes according to comments from PR#4229 2015-05-21 18:02:06 -07:00
Bartosz Wojtkowiak
cd28950846 Cordova: support for local plugins 2015-05-21 18:01:48 -07:00
Slava Kim
3521fabb60 A "Fix" for a cordova build problem introduced in #4048 2015-05-21 18:01:18 -07:00
Kelly
fd35c99b2a require Android 22 2015-05-21 18:01:17 -07:00
Samuel Rounce
77cef9c211 Set Cordova build number property 2015-05-19 17:01:40 -07:00
David Greenspan
0a30cab9ad Take Glasser's suggestions 2015-05-19 14:23:07 -07:00
David Glasser
05c24d3644 drop dead code
self.declaredExports is always true since 0.9.0 (it comes from a _.pluck
in compiler.js) but test slices have their own package
name (local-test:*) so it's OK.
2015-05-18 17:29:34 -07:00
David Glasser
b6348d4939 Don't run static analysis on app code
The static analysis is used to determine what "var"s need to be
automatically inserted by the linker at the package level.  But for app
code, we never actually insert these vars, since apps run in "global
namespace" mode.  So it's a waste of time to run the static analysis at
all.
2015-05-14 11:05:26 -07:00
Slava Kim
43efe54c22 Escape the project path when subshelling to Xcode in meteor run ios-device 2015-05-13 23:50:25 -07:00
David Greenspan
b0273ad010 Print better messages in meteor update
The #1 goal is to not say, "Your packages are at
their latest compatible versions" whenever an
update has no effect.  That isn't necessarily
true.  `meteor update` with no arguments never
updates a major/minor of an indirect dependency,
for example.  Also, you may have specified some
packages on the command line (though arguably
"your packages" could be interpreted to refer to
those packages).

In addition, `meteor update` with no arguments now
reports any direct or indirect dependencies that
aren't at their latest versions.

For example:

```
Your top-level dependencies are at their latest compatible versions.

Newer versions of the following indirect dependencies are available:
 * aldeed:collection2 0.1.7 - 2.3.3 is available
To update one or more of these packages, pass their names to `meteor update`.
```

Sort of related to #4170.
2015-05-13 14:52:12 -07:00
Ben Newman
14a989aef8 Merge pull request #4328 from meteor/issue-4300
Split on path separator before comparing files alphabetically.
2015-05-05 14:56:22 -07:00
Dominik Ferber
096019946f let package names start with digits #3670
This slightly alters the reg ex, because now there has to be at least
one character in name, whereas it could have been empty before. This
should be
irrelevant since the whole packageDot function only makes sense if name
is not empty.
2015-05-05 14:32:29 -07:00
Ben Newman
b27557eb40 Split on path separator before comparing files alphabetically.
We should be doing a lexicographical comparison of path components, rather
than including the `/` characters in the comparison, to match the order
given by the Unix `find` or `ls` commands.

Fixes #4300.
2015-05-05 14:23:07 -07:00
maersu
c13bd1ec0a Added default deployment-target for ios to 7.0. This fixes problems with #3153 2015-05-01 13:46:53 -07:00
David Greenspan
f6934329a9 Improve an error message in "meteor update" 2015-04-30 12:51:06 -07:00
David Glasser
cd2c96cca2 don't need to print which build 2015-04-21 16:52:24 -07:00
Oleksandr Chekhovskyi
a2f8efa00e Enter nested job scope per package architecture when downloading
This fixes a crash when two architectures need to be downloaded
for the same package. It happens when building for non-host architecture
if packages have not been cached yet.

Crash happened because progress object got reused for another download request,
and progress objects are not supposed to be reused.
2015-04-21 16:35:44 -07:00
David Glasser
68ce1e1c67 If a plugin fails to build, watch its sources
(Not a new bug on this branch)
2015-04-17 17:49:01 -07:00
David Glasser
131a8cc658 Fix test-packages after an initial build failure
The comments immediately after this new code claimed that the "changes
we made were persisted to disk", but they weren't.  So, if you had some
sort of build error that occured after the initializeCatalog stage (say,
invalid JS in a non-package.js file), when the runner reset the context,
it would lose the changes to
projectContext.projectConstraintsFile (.meteor/packages), and you'd end
up with no packages in the test runner app.
2015-04-17 17:47:16 -07:00
David Glasser
9039e6b2da FIx mongo failover self-test
mongo now transitively uses webapp (because ddp-server does) so we can't
really make an app with mongo and no webapp.  This is a bit of a shame
and when we refactor the mongo package we should fix this... but until
then, let's just remove the no-longer-necessary main function and be OK
with this test running a pointless web server.
2015-04-16 12:49:40 -07:00
David Glasser
3a5893aea6 Fix a self-test 2015-04-14 21:56:29 -07:00
David Glasser
64c170d6e3 The tool only needs the ddp client
However, turns out the previous commit doesn't really work --- making
webapp a strong dependency of ddp-server means that as soon as we load
mongo we'll load webapp in the tool which is bad.  So move the mongodb
Npm module out of mongo, since that's all we need in the tool.
2015-04-14 21:48:41 -07:00
David Glasser
eda010fc0c Use correct value in error message 2015-04-14 21:34:30 -07:00
David Glasser
453981214d Increase buffer size for netstat -ano on Windows
Fixes #4125 (hopefully).
2015-04-14 13:55:29 -07:00
David Greenspan
0b803b1aa9 Take glasser's suggestions on 4106e8c 2015-04-13 19:51:51 -07:00
David Greenspan
4106e8cade Allow space instead of @ in .meteor/versions
This change allows the tool to *read* .meteor/versions whether it uses
"@" or " " as a package/version separator.  It does not change how
.meteor/versions is written out.

Background:
The convention in the new Version Solver is that "foo@1.2.3" means a
constraint, which is satisfied by "foo 1.2.4" but not "foo 1.2.2", which
are specific versions of a package.  This convention avoids the same
confusion of .meteor/packages being a list of constraints while
.meteor/versions is conceptually a list of (package,version) pairs, even
though both look like package@version.

We'd like to replace "@" by " " in .meteor/versions from now on.
Unfortunately, even if the new tool can read old .meteor/versions files,
the old tool wouldn't be able to read the new style.  If in some release
of Meteor, we start writing .meteor/versions that use spaces, you won't
be able to switch between newer and older releases of Meteor without
getting a hard error about a malformed versions file in your app.

What we can do, at least, is start letting the tool read the better
format now, and maybe in the future we can switch.

This change also makes parsePackageAtVersion stand alone, instead of
being defined in terms of parsePackageConstraint, which is nice.
2015-04-12 16:30:26 -07:00
Avital Oliver
5781110def Correct remove references to WINDOWS-PREVIEW 2015-04-10 10:51:04 -07:00
Avital Oliver
3d33192d77 Revert "Remove reference to WINDOWS-PREVIEW"
This reverts commit 415c179310.

This commit was wrong. Instead of removing the `if` block
we should always be running the contents. Thanks @glasser
for noticing.
2015-04-10 10:49:10 -07:00
Avital Oliver
415c179310 Remove reference to WINDOWS-PREVIEW 2015-04-09 21:56:44 -07:00
David Glasser
2815e0ed32 run-mongo: Only use pgrep on OS X
The fix to #3999 didn't work on newer Linux systems whose pgrep contains
the backwards-incompatible change
f12277c74d
to not include arguments.

Since the inspiration to use pgrep instead of 'ps ax' was to work around
an OS X bug, just avoid pgrep on Linux in the first place.

Fixes #4115.
2015-04-03 14:26:50 -04:00
David Glasser
779f942aa3 Improvements to hot-code-push test
This test had been somewhat flaky.  It seems to be less flaky now.
Changes include:

- Trying to not send the client->server logging RPC if the client is
  about to reload due to autoupdate
- Making sure that the client doesn't send anything at all until a
  little bit after starting, in order to make the ordering of messages
  between tool-printed and server-printed messages more predictable

Also updated from standard-app-packages to meteor-tool.
2015-04-02 16:45:39 -04:00
David Glasser
2eb2f426e5 Fix self-test broken by bb271987e
Note that this test has been flaky in the past, but this was just a full
breakage.
2015-04-02 16:45:39 -04:00
Ben Newman
8a578e954b Fix race condition where shell listens too early.
Fixes #4109.
2015-04-02 15:28:46 -04:00
Robert Lowe
0496359025 Fixes typos in cordova commands
Fixes typos in cordova commands
2015-04-02 13:03:07 -04:00
David Glasser
a1e002a250 meteor run sees changes to .meteor/versions
`meteor run` doesn't always write changes to `.meteor/versions`: it only
does so if its release (or checkout-ness) matches `.meteor/release`.  So
it preferred to just remember the value of `.meteor/versions` from
rebuild to rebuild rather than forgetting what it knew and re-reading
the possibly-not-updated file.

However, if some other process changes `.meteor/versions`, it would
ignore that change.  With this fix, if `.meteor/versions` changes then
that is considered to be the previous versions list, not the last
version list from the same process.  For example, this would commonly
happen due to using `meteor update` to update packages (without changing
the tool, which would cause the runner to stop).

Fixes #3582.
2015-04-01 14:39:46 -04:00
David Glasser
0371c4ff26 Allow bare files on the server
This restriction was originally in place because we did not know of a
use case for bare files on the server.  The main use case for bare files
is putting pre-existing files in your app which expect top-level `var`s
to be "exported", which is common in browsers but not in Node.

However, there is a use case for this on the server: putting
pre-existing files that were originally written with clients in mind but
which function fine on the server into your server code. So we'll relax
the restriction.

Fixes #3681.
2015-04-01 12:36:42 -04:00
David Greenspan
8557d054dc Merge branch 'master' into devel 2015-03-31 16:36:15 -07:00