cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steven Gill <>
Subject Re: [DISCUSS] Should pinned platforms allow for patch updates?
Date Tue, 12 May 2015 22:21:39 GMT
I am totally on board with --save flag saving '^1.2.3' in config.xml since
it mimics the behavior of npm --save. No need to change anything.

The more I think about it, the more I think we should loosen our grips on
platform pinning. As long as we are being semver compliant for all of our
platforms, we shouldn't run into issues.

I like the idea of changing our pins to `^1.2.3` so it respects major only.
It would grab the newest released version of the platform with the same
major. This would only impact new projects or projects that are adding a
platform for the first time. Existing projects would still have to cordova
platform rm PLATFORM and cordova platform add PLATFORM to get the latest

One of the reasons we originally wanted to keep pinning was so we could
easily help users when they tell us what version of Cordova they are having
problems with. With the ability to add whatever version of platforms via
`cordova platform add windows@VERSION`, knowing the cli version doesn't
give us the details we want. Users can get installed platform versions with
`cordova platform ls`.

If we make this change, we should review our fetch/cache logic to see if it
would grab the latest if an older version exists).

We seem to have a fairly good track record with newer platform versions
working with older CLI versions. Everytime we do a tools release, we could
update the pinned versions to the latest released ones/newest version cli
was tested with at release time. For platform releases, we would have to
test it with the oldest version of the CLI that could potentially pull it

What do others think?

On Tue, May 12, 2015 at 6:36 AM, Tim Barham <>

> ?Currently our pinned platforms are all in the form "1.2.3", which I
> expect means we'll always get that exact version. Should we instead use the
> form "1.2.x" to allow for patches without having to do a tools release?
> BTW... When you add a platform, and we use the pinned version of, say,
> '1.2.3', if you use the '--save' flag, we'll save it to config.xml as
> '^1.2.3', like npm currently doe (in other words... 'allow any backwardly
> compatible version'). This means adding the platform later could end up
> with a later version (even with the minor version greater than 2 in this
> example). Perhaps we need to be consistent here - if we change pinned
> version to use the form '1.2.x', then should we save exactly that to
> config.xml? Or alternatively should we use the form '^1.2.3' for our pinned
> version, which will introduce a lot more variation, but will be more
> consistent with how semver and npm work?
> Thanks!
> Tim

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message