Commit Graph

2059 Commits

Author SHA1 Message Date
David Glasser
a247b79aa1 test version bumps, sigh 2014-08-24 21:17:58 -07:00
David Glasser
0a47309ce6 fix change-homepage help 2014-08-24 20:52:00 -07:00
David Glasser
d4280a22eb make "no compatibile build" error not bracketed
this function needs to be rewritten, but not today
2014-08-24 20:18:43 -07:00
David Glasser
9ee39f2807 Add XXX comment to publish-for-arch 2014-08-24 19:54:44 -07:00
David Glasser
24d844a808 consistently handle package server calls
I don't love this idiom but we might as well use it consistently.

This will mean that, eg, errors from the server will not be stack
traces.
2014-08-24 19:51:41 -07:00
David Glasser
ac7915b90b print correct maintainers after add/remove 2014-08-24 19:31:33 -07:00
David Glasser
d30efc2ae8 don't print publish-for-arch warning on failure 2014-08-24 19:01:24 -07:00
David Glasser
08b2625082 METEOR-CORE -> METEOR 2014-08-24 18:46:37 -07:00
David Glasser
3f63c748ac Prevent accidental top-level package creation 2014-08-23 19:51:46 -07:00
David Glasser
95cfa87de1 Use unmigrated flag instead of description check 2014-08-23 16:33:25 -07:00
David Glasser
7fe36fb904 Actually, --show-old 2014-08-23 16:06:32 -07:00
David Glasser
80d271fa24 Rename search/show --show-broken to --include-old 2014-08-23 16:02:23 -07:00
David Glasser
bc8d2e0459 Ensure we find out about newly published *builds*
Reported at
https://github.com/meteor/meteor/issues/2405#issuecomment-53144897

Basically, we were smart enough to refresh if the local cache didn't
know about the *VERSION* but if it knew about the version but not about
the relevant build, we did not refresh.
2014-08-23 15:52:38 -07:00
David Glasser
7c23ca5fde 'curmeteor update' should still update packages 2014-08-23 15:15:37 -07:00
ekatek
ce99e88ee7 some new lines in error output 2014-08-23 13:48:46 -07:00
David Glasser
f37cfafd18 Fix for programs with attributes.json type client 2014-08-22 19:38:24 -07:00
David Glasser
a8e8995c91 Support comments in .meteor/.id file
Make project.rootDir be absolute in 'meteor create'
2014-08-22 18:04:24 -07:00
David Glasser
412033f7c4 Support comments in .meteor/.id 2014-08-22 17:54:44 -07:00
David Glasser
131b73bc71 update tools/tests id files
really, these directories shouldn't have the files, we should copy to a
temp dir...
2014-08-22 17:33:36 -07:00
David Glasser
c4948d8dff rename .meteor/identifier -> .meteor/.id 2014-08-22 17:31:21 -07:00
David Glasser
1ff2c3bae9 Bundle build before creating time-sensitive URL 2014-08-22 12:41:16 -07:00
David Glasser
55d1901729 Remove dormant "no-downgrade constraint" code
Also removes 'update --minor' and 'add --force'.

In the constraint solver, previousSolution (ie, .meteor/versions) was
intended to be used for three purposes:

  (a) The *heuristic* used in the state graph walk to decide what state
      to look at next:
       - VERY STRONGLY prefers not to downgrade *root* dependencies or
         change them to incompatible newer versions
       - Kinda Strongly prefers not to upgrade root dependencies far
       - mildy prefers not to change transitive dependencies (in any
         direction)

  (b) Actual *constraints* are added to the set of constraints we are
      trying to solve, which state that *root* dependencies are not
      to be downgraded.  Additionally, in most invocation contexts,
      constraints are added that say that *root* dependencies are
      not to be upgraded to incompatible versions (1.3.0 -> 2.0.0).
      The only contexts that lack the secondary constraints are
      part of 'update --minor', and 'add --force'.

  (c) A more recent change (past few weeks): When running the constraint
      solver, we actually run the core constraint solving algorithm
      twice. The first time, we add *equality* constraints for all
      of the previous versions.  If that succeeds, great!  We're not
      changing any versions (we may add packages that we didn't have
      before or drop packages that are no longer needed, though).

      Otherwise, we run the constraint solver again without the equality
      constraints.

However, due to a bug introduced in May in 0760ffbc36, (b) actually
*never happened*.  The commit was the one that intended to make the
(b) constraints only be for root dependencies. But the line:

     if (! _.contains(dependencies, uv.name))

is comparing 'uv.name' (something like 'foo#web.browser') to
'dependencies' (a list of things like 'foo'). So in fact, it thinks that
no dependencies are root and doesn't apply the constraints.

That's actually good, because this code is used in many more places than
just 'meteor update', and applying these things as strong constraints
would actually be problematic; eg, it would break 'meteor --release
slightlyolderrelease'!

In addition, the `update --minor` flag was actually not implemented (it
was not in the command declaration).

So for now, we're removing this dead code.  We may reintroduce 'update
--minor' or 'add --force' later.  We trust that the heuristic will do a
decent job of preventing unnecessary downgrades or incompatible upgrades
while still allowing you to run updates to an older version, eg.

(And in the future, we may change 'meteor update' to use the constraint
solver to figure out which release to update to, rather than going for
the latest one that there exists any solution for.)
2014-08-21 23:20:17 -07:00
David Glasser
a4c5009cea fix 'sync local catalog' test
there was an unnecessarily strong ordering assumption
2014-08-21 19:43:54 -07:00
David Glasser
1843ba0cd6 fix help test 2014-08-21 19:37:23 -07:00
David Glasser
1ff35e49fb list-sites sorts its output. fix test. 2014-08-21 19:37:05 -07:00
David Glasser
5fbb8bc9f1 help update for create --package 2014-08-21 18:45:08 -07:00
Emily Stark
3c6c51acd1 Add extra check in stats retrieval in test 2014-08-21 18:31:46 -07:00
Emily Stark
1852e7b2c0 Update test for new package stats format 2014-08-21 18:23:38 -07:00
Emily Stark
81a0a0c7e2 Update to new package stats format 2014-08-21 18:23:38 -07:00
Emily Stark
0c2dd7aff4 Change package stats server hostname 2014-08-21 18:23:37 -07:00
David Glasser
e36c4184ab fix old bundler test failure 2014-08-21 17:46:51 -07:00
David Glasser
bc1520cbdd great, now we can use parseConstraint 2014-08-21 17:09:36 -07:00
David Glasser
5d5d1876da De-dup package name/constraint parsing code
Now we can all any of them from even before uniload is ready in the tool

I <3 symlinks
2014-08-21 17:00:21 -07:00
David Glasser
a9c740165c stop uniload packages from using versionsFrom
They don't need to and it won't work.
2014-08-21 16:52:02 -07:00
David Glasser
d6855456a2 Use buildmessage better in api.use, etc
Provide good messages when you provide invalid things to api.use and
api.imply.

Provide better message when you provide invalid things to
api.versionsFrom.

Drop "notInitialized" hack from catalog: now that we load things in
order, it's not necessary.  (This means life will break if you use
api.versionsFrom in a uniloaded package. So don't do that.)
2014-08-21 16:48:13 -07:00
David Glasser
2453820597 fix buildmessage errors within onUse/onTest
Adding buildmessage.markBoundary ensures that we don't display a stack
containing the call stack in the tool above this point.
2014-08-21 16:42:46 -07:00
David Glasser
5bc415c51a Improve package name/version parsing errors
We now throw more specific errors, consistent between both tools and
package-version-parser (copy-and-pasted code, sadly, but we really do
have to make this check before uniload-from-checkout).
2014-08-21 16:21:12 -07:00
David Glasser
c68e1489bd 'meteor create --package foo' in app DTRT
It puts the package in $APPROOT/packages/foo instead of ./foo.
2014-08-21 15:06:46 -07:00
ekatek
2f73eebf0a even better wording 2014-08-21 15:01:58 -07:00
ekatek
7f0e7eee67 even better wording 2014-08-21 15:00:48 -07:00
ekatek
d81bbefa22 better error message 2014-08-21 15:00:12 -07:00
ekatek
c89ff1fa25 check to make sure package names don't start with a dot 2014-08-21 13:49:36 -07:00
ekatek
e859266aaf changes, as per glasser's code review 2014-08-21 13:41:29 -07:00
David Glasser
f1a50bbc93 show stack if error is unexpected 2014-08-21 10:48:20 -07:00
David Glasser
e98cd49b3b A more specific error for nonexistent package
This helps with #2410 though that particular case doesn't work since
paths are explored in a bad order.
2014-08-20 23:21:30 -07:00
David Glasser
7e32a1cba4 Revert "one weird hack to maybe have better messages for nonexistent packages"
This reverts commit 75df1097e0.
2014-08-20 23:21:30 -07:00
David Glasser
4586d60e7d Revert "bad merge diffs"
This reverts commit 7946be9f9b.
2014-08-20 23:21:30 -07:00
Matthew Arbesfeld
d771fdbf2a Fix uniload for packages with plugins 2014-08-20 20:54:58 -07:00
ekatek
7946be9f9b bad merge diffs 2014-08-20 16:20:29 -07:00
ekatek
75df1097e0 one weird hack to maybe have better messages for nonexistent packages 2014-08-20 16:19:24 -07:00