Even with pinned dependencies, we run into the problem that it's tough to
ship multiple modules that depend on each other at the same time because
cordova depends on cordova-lib.

How about we stop using -rc# suffixes for our release candidates? E.g. For
each RC, was actually do just bump the patch version and dist-tag it as @rc
instead of @latest. If it doesn't work out, we bump the patch and try
again. This will mean that it will be normal for our versions to jump by
more than 0.0.1 each time, but I don't think that's actually a problem. We
can then vote on RCs, and the final step of making the RC published, is
just to switch the dist-tag rather than any re-packaging.



On Mon, Sep 29, 2014 at 7:09 PM, Jesse <purplecabb...@gmail.com> wrote:

> +1 to pinned dependencies, and no shrinkwrap
>
> @purplecabbage
> risingj.com
>
> On Mon, Sep 29, 2014 at 1:45 PM, Marcel Kinard <cmarc...@gmail.com> wrote:
>
> > I didn't see a consensus on this topic yet, and a tools release is about
> > to get rolling by Steve.
> >
> > My original driver for this discussion is that if we are going to do
> > shrinkwrap, that we do it all the way instead of slapping it on at the
> end.
> >
> > Doing it does add more complexity. But it also removes variability,
> that's
> > the part I like. If the majority of folks want to skip the shrinkwrap, I
> > would be OK with that as long as we specifically pin all our
> dependencies (
> > "foobar": "1.2.3" ) in our package.json files (no ".x", no tilde, caret,
> > greater-than, etc). That would handle the 1st-level dependencies, but not
> > subdependencies since we don't have control of their package.json - it's
> > partway to the destination at a lower cost. This also assumes that
> partway
> > to the destination is good enough.
> >
> > I did add a step to the tools release that the pinned versions get
> updated
> > at the beginning of a release:
> >
> >
> https://git-wip-us.apache.org/repos/asf?p=cordova-coho.git;a=blobdiff;f=docs/tools-release-process.md;h=02d28c97e8dd104528035939049515338347c75b;hp=b5d288b2c5a8d3cb03bb8fc050bf26c8d15d28fb;hb=8ca35fe00cf0e72eb70d05e242fe7021ec65b028;hpb=14983eb014f84e08e7a76f1ab6ffe069b81f6ffa
> >
> > Comments?
> >
> > On Sep 22, 2014, at 10:01 AM, Andrew Grieve <agri...@chromium.org>
> wrote:
> >
> > > I like having it in. For CCA, we actually did get bit in a release
> where
> > we
> > > didn't have a shrinkwrap and a descendant dependency changed and broke
> > > things on us.
> > >
> > > It's also really nice that when we sign and vote on a release, that
> doing
> > > an "npm install" on it down the line will recreate the exact thing we
> > > tested & signed.
> > >
> > > I think the trouble came along here just from incomplete release step
> > > instructions. I think that this (lack of clear steps / process) is the
> > real
> > > problem.
> >
> >
>

Reply via email to