Search code examples
meteor

Updating all Meteor packages to latest versions


I'm developing a Meteor app that isn't yet in production, so I can afford to move quickly when adopting new package versions (useraccounts had a significant version bump a few hours after I'd integrated it, for instance.) This was what I thought meteor update was meant to accomplish. Yet when I run:

meteor update

from my project, I'm told that packages were updated but .meteor/versions remains unchanged.

I can upgrade the package by running meteor add someone:package@whatever, but this just shuffles the version dependency from .meteor/versions to .meteor/packages even though it seems to do the upgrade. I'm happy to lock versions down when I go to production, but it seems like in development I should be able to use the update command, especially as meteor list indicates that as a next step.

I've managed to upgrade all my packages by removing .meteor/versions and .meteor/local and running meteor update, but this seems messy.

I also found this issue but it was closed. Should it be reopened or should I open a new issue? I understand how semver works, but I think the issue is that Meteor isn't writing its constraint solver results to .meteor/versions so doesn't realize that package updates have been applied. Is that accurate or am I just misunderstanding something?


Solution

  • For the time being it looks like that you have 2 options for packages which have updates you wish to use:

    1. remove and add the package of concern via meteor remove provider:package_name and meteor add provider:package_name
    2. update packages with their specific version manually via meteor add provider:package_name@X.X.X

    Meteor won't update packages unless you remove and add them #2500