It's unfortunate that this change is in `compiler.compile`. It's
actually unfortunate that we only catch this during publish-for-arch.
But it seems too much to disallow all packages published with colons
even if they don't have binary dependencies since a lot of old
packages were created with our command-line tool that created
filenames with colons in them.
We were incorrectly always assuming that Meteor is running
by not actually trying to connect to the port that the
MONGO-PORT file reports Mongo is listening to.
The problem is that that file isn't cleared when Meteor
quits or crashes.
Fixes https://github.com/meteor/windows-preview/issues/138
In particular: `create`, `test-packages`, `rebuild`, `publish`,
`publish-for-arch`, `admin run-upgrader`
Add it to the help text for `publish`, and simply force the flag to
true in `create`. Other commands get it as an undocumented flag
in case the version solver tells you to pass it in.
The fix is actually in https://github.com/npm/fstream/pull/42,
but now we also remove our explicit path length check
that used to throw an error instead of silently losing files.
This commit also adds a self-test to test the entire flow
through `files.createTarball` and `files.extractTarGz`.
Fixes the bug where the history would be parsed as one big blob on Windows,
because it is always written with "\n" but parsed with "\r\n" on Windows and
"\n" on Unixy platforms.
Starting with cordova-lib 4.2.0 (shipped with Meteor 1.0.4) the cordova
create command checks that app IDs look like Java namespaces. Clean up
the most obvious ways that our generated app IDs won't look like Java
namespaces (most notably hyphens).
This isn't perfect (eg we don't check for leading digits or
consecutive/leading/trailing dots, or for Java reserved words). This
check is implemented by the valid-identifier NPM package.
While we're at it, put app ids under `com.meteor.userapps` so that there
are other parts of `com.meteor` available for potential MDG Java work.
Fixes#3950.
Starting with cordova-lib 4.2.0 (shipped with Meteor 1.0.4) the cordova
create command checks that app IDs look like Java namespaces. Clean up
the most obvious ways that our generated app IDs won't look like Java
namespaces (most notably hyphens).
This isn't perfect (eg we don't check for leading digits or
consecutive/leading/trailing dots, or for Java reserved words). This
check is implemented by the valid-identifier NPM package.
While we're at it, put app ids under `com.meteor.userapps` so that there
are other parts of `com.meteor` available for potential MDG Java work.
Fixes#3950.
When the tool runs the constraint solver to see what releases can
be chosen, it creates its own ProjectContext and does not pass
command-line flags through. Additionally, if the release you ask
for is not possible to choose for whatever reason (constraints in
.meteor/packages, and now the guard against downgrading root
dependencies), the error is swallowed and a pleasant "success"
message is printed. We should probably fix this at some point.
For now, `meteor update --release` just runs the constraint solver
as if `--allow-incompatible-update` was passed, which effectively
means it gets to ignore `.meteor/versions` if necessary.
There's no detail yet, but I'm going to add some. In the mean time,
you just get the total ms for "Selecting Package Versions...", and
if it runs a second time you'll get another report for "(Try 2)"!
It used to create a directory with an underscore instead of a colon
Now, it just removes the prefix.
In cases where the name of the package has more than one colon or starts or ends
witha colon, we report an error.