Commit Graph

3919 Commits

Author SHA1 Message Date
David Greenspan
6705025880 Kill old version-parser test, rescue another
I found this entire file of commented-out self-tests.  The
version-parsing part seems out-dated now, but there are tests of 
utils.defaultOrderKeyForReleaseVersion in there that seem legit, which
I re-enabled.
2015-02-02 13:20:45 -08:00
David Greenspan
45752e3203 parseConstraint -> parsePackageConstraint
In the return value, `name` has been changed to `package`,
and `vConstraint` is now `versionConstraint`.

`constraint.package` is better than `constraint.name`, where
`constraint` is a PackageConstraint.  It's also more consistent
with functions like parsePackageAtVersion which return an object
like `{package, version}`.

`vConstraint` was too cryptic.

Changes were discussed with Glasser in a code review.

Troposphere does not call parseConstraint or work with constraint
objects, so it doesn't need to change.

This is a breaking change to the package-version-parser API (or one
method of it, at least), but it is considered an internal API so we
are not worrying too much about it.
2015-02-02 13:13:31 -08:00
David Greenspan
948d7e34da remove unused package-version-parser function 2015-02-02 12:42:13 -08:00
David Greenspan
e7ee6184a6 Change return value of utils.parsePackageAtVersion
name -> package, as per code review
2015-02-01 12:53:03 -08:00
David Glasser
299f413617 Remove support code for legacy systems
Summary:
What I'm looking for here is: attention to the few parts that aren't just
deletions (eg in auth.js), and thoughts about if removing any of these things
might break systems I haven't thought about.

Test Plan: test-packages, self-test (which mostly passes)

Reviewers: ekatek

Differential Revision: https://phabricator.meteor.io/D18
2015-01-29 14:03:41 -08:00
David Glasser
62037959fe Clean up comments about legacy code 2015-01-29 14:03:11 -08:00
David Glasser
df37fe5a9d Remove legacy login support
This includes `meteor login --galaxy`.

We still should be capable of cleaning up legacy tokens when we find
them.
2015-01-29 14:03:11 -08:00
David Glasser
5cc93cea1a Remove legacy support from deploy-style commands
This includes removing the options `deploy --star`, `deploy --admin`,
and `logs -f`
2015-01-29 14:03:11 -08:00
David Glasser
0e0dfed6a8 Remove "control program" support
This was support code for a now unused system.
2015-01-29 14:03:10 -08:00
Ben Newman
26ebc82198 Use error.code instead of .errno in server/shell.js. 2015-01-29 14:41:00 -05:00
Ben Newman
d75f1889d7 Retry listening for meteor shell connections on EADDRINUSE errors. 2015-01-29 12:24:35 -05:00
Sashko Stubailo
5e029ba736 Add ESLint and fix most linter errors in watch.js 2015-01-28 21:47:22 -08:00
David Greenspan
361a80c243 Changes from Glasser code review
Includes all discussed changes except:
- Checking for troposphere PVP compatibility
- "vConstraint" -> "versionConstraint"
- "name" -> "package" in utils.parsePackageAtVersion
2015-01-28 16:45:01 -08:00
David Glasser
2771483390 Show 'admin' in top level 'meteor help'
Addresses #3474.
2015-01-27 18:44:03 -08:00
David Glasser
5269adefb1 Make 'meteor search' docs match implementation
Making the implementation match the previous docs is now a feature
request: #3521
2015-01-27 17:59:40 -08:00
David Glasser
074087be8a meteor login --email was supposed to be boolean!
See #3532.

We honestly should probably just drop the option and allow you to type
either a username or a password, just like in accounts-ui.

Because options have to be consistently bool or not across commands (so
that you can put them before the command name), change the testing-only
dummy command's string option to a different nonsense name.
2015-01-27 14:17:41 -08:00
David Glasser
c42ecf45af Ignore vim swap files in public and private dirs
We were already ignoring anything beginning with a dot in *source* files
in the app, but not in *asset* directories.

Notably, this means that vim swap files won't get bundled into your app,
and that hot code reload won't be triggered by editing asset files until
you actually save them!

Fixes #3322.
2015-01-26 15:10:15 -08:00
David Glasser
3d5e81bf23 Test the right packages with --test-app-path
Usually the project used for test-packages is a brand-new temporary
project. But you can also use --test-app-path, either for performance
reasons (to share the .meteor/local/isopacks cache between executions)
or because Cordova has issues with /tmp.  Previous to this change,
though, test-packages would leave packages in .meteor/packages from a
previous execution, even if they were packages that we are no longer
testing.

Fixes #3446.
2015-01-26 14:57:42 -08:00
David Glasser
10173c0ca5 Stop semi-supporting Npm.require in package.js
It can be used to get things like `path` (though you can just use '/'),
but trying to require the packages whose list is determined by running
the file while running the file just doesn't make any sense.
2015-01-23 16:58:33 -08:00
David Glasser
71af635a25 improve JsImage.load Npm.require errors
- Use buildmessage (skips stack trace)
- Drop extraneous trailing single quote
- Say "from" instead of "while loading" since this can also happen
  when running code from the file after load time
2015-01-23 16:47:49 -08:00
David Glasser
806ecd827b Support Npm.require('foo/bar') in JsImage.load
(ie, plugins and isopackets)
2015-01-23 16:44:02 -08:00
David Glasser
d4e1f80bf7 Add a comment 2015-01-23 16:43:52 -08:00
gsuess
2bd8eae66b Npm.require load correct submodule 2015-01-23 16:33:10 -08:00
gsuess
be11590dbe Fix Npm.require() package sub-modules. 2015-01-23 16:33:10 -08:00
archy
2a0d0dff3f fixed some typos that caused error message to be cut off half way 2015-01-22 21:20:09 +08:00
ekatek
27f7daa7f8 Merge branch 'master' into devel 2015-01-20 18:03:40 -08:00
ekatek
3347604325 Merge branch 'release-1.0.3' 2015-01-20 17:59:53 -08:00
Ekaterina Kuznetsova
92a6adf5af Merge pull request #3281 from meteor/console-comments
more, cleaner comments in Console.js
2015-01-20 16:00:55 -08:00
Justin Santa Barbara
18a3b1ee08 Add files import to tools/run-selenium.js 2015-01-20 18:54:45 -05:00
ekatek
afb0915e68 be slightly more efficient in checking if dir exists
Cache the result of the stat call, rather than repeating it.
Also, while at it, rename the function.
2015-01-20 13:37:18 -08:00
ekatek
73a2f50d7d error handling in mkdir_p
Summary:
According to its contract, mkdir -p returns true if the directory
exists (and creates it if needed) and false if the item exists and isn't
a directory (so we couldn't make one). Because directory creation can
be concurrent, we need to wrap the actual mkdir call in a try/catch to handle
this issue (rather than just checking once).

This issue was always here. Previously, the race was against other apps editing
the same directory (which didn't come up that often). As of 1.0.3, files.js is a lot
more yieldy and this becomes a race condition on Meteor itself.

Test Plan: self-test

Reviewers: glasser

Differential Revision: https://phabricator.meteor.io/D15
2015-01-20 13:23:45 -08:00
Ben Newman
1aba3a8e7a Eliminate the need for getAppDir in tools/server/shell.js.
Summary:
Instead of expecting the child process to figure out where the
`.meteor/local` directory is, we now tell it explicitly via the
`METEOR_SHELL_DIR` environment variable.

Fixes #3437.

Test Plan:
Run `meteor shell` in a separate terminal and see that it still connects
to an app running from the same app directory.

Reviewers: glasser

Reviewed By: glasser

Differential Revision: https://phabricator.meteor.io/D11
2015-01-20 13:56:57 -05:00
ekatek
b5628f4b23 minor test fixes
This mostly fixes tests:
- removes the 'restarted' check from some tests. We don't need it in those cases
  (printing the other banner is enough). We can no longer rely on that executing
  after the code in the package (in fact it seems to execute before, and then
  get overwritten), and the test still tests what it is intended to (that the new
  package code executes).

- minor fixes to essentially syntax errors -- the skeleton now uses double quotes
  instead of single quotes, so a regex failed to work, for example. We changed a
  version number in one part of the test, but not another.

- fixes selftest.js, sort of, to actually print out what test we are testing. This
  is an unfortunate interaction of Console.js changes in 1.0.2 and a progress bar
  (that came later). The progress bar erases the message telling you what test is
  running when you use a standard terminal. That's awkward, fixed.
2015-01-16 16:50:51 -08:00
Ben Newman
3f98fe900a Allow redefinition of shell _ variable. 2015-01-16 11:33:13 -05:00
ekatek
fe88795ef9 fixing some tests
Literally, just fixing a test to account for the fact that we now use " instead of
' in the package.js skeleton.
2015-01-15 13:20:14 -08:00
ekatek
3eba43a42b do not tell publish-release to call a nonexistent command 2015-01-15 10:56:58 -08:00
Ben Newman
2443d83226 Reenable tab-completion of global variable names in meteor shell.
Summary:
Before this commit you could type `Meteor.is` in a `meteor shell` session
and then tab to see a list of possible completions (e.g.
`Meteor.isClient`, `Meteor.isServer`), but typing a prefix of a global
variable name like `Mete` followed by tab has been broken ever since we
stopped using the global object as the REPL context:
https://github.com/meteor/meteor/commit/7c7e52f2d2

The reason for that commit was to prevent the REPL from overwriting the
global `_` variable (which most Meteor developers expect to be bound to
`require("underscore")`): https://github.com/meteor/meteor/3227

This commit solves #3227 by making `repl.context._` a read-only property
that is permanently "bound" to underscore.  As a bonus, we now intercept
assignments to `_` and store those values as `repl.context.__`, so you
still have access to the last result in the shell via `__`.

Test Plan:
Run `meteor shell`, evaluate a few expressions, and see that (1) global
variables can be tab-completed, (2) `_` remains bound to underscore, and
(3) `__` gets bound to the result of the evaluated expressions.

Reviewers: avital, stubailo, glasser

Reviewed By: glasser

Differential Revision: https://phabricator.meteor.io/D12
2015-01-15 13:49:57 -05:00
ekatek
d663d846c0 remove the deprecated set-latest-readme command 2015-01-14 18:36:41 -08:00
ekatek
d7bceb7d66 remove the deprecated set-latest-readme command 2015-01-14 18:36:18 -08:00
ekatek
be9ab672ce fixing existing-version
This was broken as part of the merge.
2015-01-14 18:35:43 -08:00
ekatek
4e1de9b56a show build architectures correctly
Part of the merge that has gone wrong: we forgot to show build arches
in --ejson. Fixing.
2015-01-14 18:35:33 -08:00
ekatek
f446fbc292 fixing existing-version
This was broken as part of the merge.
2015-01-13 20:15:15 -08:00
ekatek
c2de48c909 show build architectures correctly
Part of the merge that has gone wrong: we forgot to show build arches
in --ejson. Fixing.
2015-01-13 20:00:44 -08:00
David Glasser
2aba1dce35 style cleanup 2015-01-13 16:35:39 -08:00
rissem
909cd7a99f document --velocity flag 2015-01-13 16:33:56 -08:00
rissem
bfdad18487 support velocity when using test-packages command 2015-01-13 16:33:56 -08:00
David Glasser
9ab74b60d4 Only load moment when needed
Good for performance, and also for the fact that devel is currently semi
broken due to dev bundle issues (will fix soon)
2015-01-13 16:05:18 -08:00
David Glasser
44f2305c8e remove excess console.log 2015-01-13 15:40:51 -08:00
ekatek
e4bd9b7a07 merging 'meteor show' changes
This is mostly cleaning up some syntax errrors that have resulted from
merging the previous commits.
2015-01-13 13:53:22 -08:00
ekatek
798c1635fc show version number in package view
Summary:
When running 'meteor show <packageName>' show

Package: <packageName>@<defaultVersion>

(instead of  "Package: <packageName>" )

The default version is the version number of the version record
that acts as the source for exports, implies, long description, etc.
It is the local record (in which case, we will show "@local" to be
more clear); if there is no local record, it is the highest semver mainline
record (ie: not a pre-release) and if *that* doesn't exist, it is just
the highest semver record that we have.

Test Plan: self-test show --slow

Reviewers: glasser

Differential Revision: https://phabricator.meteor.io/D8
2015-01-13 13:53:22 -08:00