You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by Patrick Mueller <pm...@gmail.com> on 2012/03/12 21:03:02 UTC

naming release files and directories

One of the things that we're going to need to settle on is how to 'name'
our release artifacts.  Apache provides a lot of leeway, and there are just
a few subtle differences from how we name incubator release and how we'll
name releases after we graduate from incubator.

general references: Releases FAQ [1] and Incubator Releases Guide [2].

A little overview: releases at Apache are stored in two places: the `dist`
tree and the `archive` tree.  `dist` is used to the store the current
release, `archive` stores all your releases.  Artifacts you add to the
`dist` tree are automagically added to the `archive` tree and never deleted
from there.  Because of this, we want to decide what the shape of the
`archive` tree will be, since it will hold all releases we ever produce,
and then that drives what the shape of the `dist` tree is.

Incubator releases differ from "graduated" releases in that they are stored
in `incubator` subdirectories of the `dist` and `archive` trees, and the
release zip/tar balls should have 'incubating' in the name.

You should poke around the current trees to see what sort of structure
folks have used: [3] [4] [5] [6].

There are a couple of general themes, but I kinda like the layout of the
ant trees, modulo some name changes.  The basic idea is that the root of
the tree would contain three subdirectories: source, binaries, and manual.
[7]  Within each of the directories, in the `archive` tree, are the zip/tar
balls of all the releases.

The 'modulo name change' is that I'd prefer to use 'src', 'bin' and 'doc'
for the names of the directories, as well as the suffix on the name of the
zip/tarball.  Because I'm anal - all of the 'names' are 3 chars long. So
we'd have something like:

archive.apache.org/dist/incubator/cordova
  - bin
  - doc
  - src

archive.apache.org/dist/incubator/cordova/bin
  - apache-cordova-1.6.0-incubating-bin.zip
  - apache-cordova-1.6.1-incubating-bin.zip
  - ...

archive.apache.org/dist/incubator/cordova/doc
  - apache-cordova-1.6.0-incubating-doc.zip
  - apache-cordova-1.6.1-incubating-doc.zip
  - ...

archive.apache.org/dist/incubator/cordova/src
  - apache-cordova-1.6.0-incubating-src.zip
  - apache-cordova-1.6.1-incubating-src.zip
  - ...

I've see other projects, instead of bin/doc/src directories in their root,
have version numbers, which would be something like:

archive.apache.org/dist/incubator/cordova/
  - 1.6.0-incubating
  - 1.6.1-incubating
  - ...

archive.apache.org/dist/incubator/cordova/1.6.0-incubating
  - apache-cordova-1.6.0-incubating-bin.zip
  - apache-cordova-1.6.0-incubating-doc.zip
  - apache-cordova-1.6.0-incubating-src.zip

archive.apache.org/dist/incubator/cordova/1.6.1-incubating
  - apache-cordova-1.6.1-incubating-bin.zip
  - apache-cordova-1.6.1-incubating-doc.zip
  - apache-cordova-1.6.1-incubating-src.zip

...

As someone who often scripts downloads of Apache, Eclipse, etc artifacts, I
find this style unpleasant, as it means I need to 'script' up the URL with
version numbers twice.  Icky.  And it just looks kinda dumb, to give
someone a URL to a zip/tar ball that has the version number in it twice -
and is longer than other style. But there is something kinda nice about
having all the files for all a release in one place.

references
----------

[1] http://www.apache.org/dev/release.html
[2] http://incubator.apache.org/guides/releasemanagement.html
[3] http://www.apache.org/dist/
[4] http://www.apache.org/dist/incubator/
[5] http://archive.apache.org/dist/
[6] http://archive.apache.org/dist/incubator/
[7] http://archive.apache.org/dist/ant/

-- 
Patrick Mueller
http://muellerware.org

Re: naming release files and directories

Posted by Patrick Mueller <pm...@gmail.com>.
Nope, think I'm all set with the deps.  The one lingering issue was
shipping crypto bits that came with Jetty, but we don't have that 'problem'
anymore :-)

On Mon, Mar 12, 2012 at 19:22, Brian LeRoux <b...@brian.io> wrote:

> also: adding weinre in the dist makes good sense --- do any issues
> remain w/ the pkg of it Patrick? I remember at one point there was
> some question as to licensing of some of the deps
>
> On Mon, Mar 12, 2012 at 3:19 PM, Tim Kim <ti...@gmail.com> wrote:
> > Either way is good, but the first point is best since it avoids using the
> > version name twice as Pat said. I don't see any conflicts with signing
> but
> > a small change will need to be made with coho to sign each artefact
> > (bin/doc/src).
> >
> > Timothy Kim
>



-- 
Patrick Mueller
http://muellerware.org

Re: naming release files and directories

Posted by Brian LeRoux <b...@brian.io>.
also: adding weinre in the dist makes good sense --- do any issues
remain w/ the pkg of it Patrick? I remember at one point there was
some question as to licensing of some of the deps

On Mon, Mar 12, 2012 at 3:19 PM, Tim Kim <ti...@gmail.com> wrote:
> Either way is good, but the first point is best since it avoids using the
> version name twice as Pat said. I don't see any conflicts with signing but
> a small change will need to be made with coho to sign each artefact
> (bin/doc/src).
>
> Timothy Kim

Re: naming release files and directories

Posted by Tim Kim <ti...@gmail.com>.
Either way is good, but the first point is best since it avoids using the
version name twice as Pat said. I don't see any conflicts with signing but
a small change will need to be made with coho to sign each artefact
(bin/doc/src).

Timothy Kim

Re: naming release files and directories

Posted by Brian LeRoux <b...@brian.io>.
+1

should all be automated in the coho tool for sure


On Mon, Mar 12, 2012 at 2:50 PM, Filip Maj <fi...@adobe.com> wrote:
> Agree with everything you said Pat. Steve/Tim take note (and possibly set
> up some issues to factor this into the coho release tool)!
>
> On 3/12/12 1:07 PM, "Patrick Mueller" <pm...@gmail.com> wrote:
>
>>On Mon, Mar 12, 2012 at 16:03, Patrick Mueller <pm...@gmail.com> wrote:
>>
>>> ... bunch of stuff ..
>>>
>>
>>Wanted to add this as a separate point.  We should also consider what the
>>shape of the dist and archive trees will be for 'subprojects'.  Like, say
>>'weinre'.  :-)
>>
>>If we go either of the routes I outlined above, seems to me like it would
>>make sense to have a 'top-level' directory in our dist/archive home of
>>'weinre', under which we would have a parallel tree to the base cordova
>>release.  And I guess the names of the archives would be:
>>
>>apache-cordova-weinre-2.0.0-incubating-bin.zip
>>apache-cordova-weinre-2.0.0-incubating-doc.zip
>>...
>>
>>--
>>Patrick Mueller
>>http://muellerware.org
>

Re: naming release files and directories

Posted by Filip Maj <fi...@adobe.com>.
Agree with everything you said Pat. Steve/Tim take note (and possibly set
up some issues to factor this into the coho release tool)!

On 3/12/12 1:07 PM, "Patrick Mueller" <pm...@gmail.com> wrote:

>On Mon, Mar 12, 2012 at 16:03, Patrick Mueller <pm...@gmail.com> wrote:
>
>> ... bunch of stuff ..
>>
>
>Wanted to add this as a separate point.  We should also consider what the
>shape of the dist and archive trees will be for 'subprojects'.  Like, say
>'weinre'.  :-)
>
>If we go either of the routes I outlined above, seems to me like it would
>make sense to have a 'top-level' directory in our dist/archive home of
>'weinre', under which we would have a parallel tree to the base cordova
>release.  And I guess the names of the archives would be:
>
>apache-cordova-weinre-2.0.0-incubating-bin.zip
>apache-cordova-weinre-2.0.0-incubating-doc.zip
>...
>
>-- 
>Patrick Mueller
>http://muellerware.org


Re: naming release files and directories

Posted by Patrick Mueller <pm...@gmail.com>.
On Mon, Mar 12, 2012 at 16:03, Patrick Mueller <pm...@gmail.com> wrote:

> ... bunch of stuff ..
>

Wanted to add this as a separate point.  We should also consider what the
shape of the dist and archive trees will be for 'subprojects'.  Like, say
'weinre'.  :-)

If we go either of the routes I outlined above, seems to me like it would
make sense to have a 'top-level' directory in our dist/archive home of
'weinre', under which we would have a parallel tree to the base cordova
release.  And I guess the names of the archives would be:

apache-cordova-weinre-2.0.0-incubating-bin.zip
apache-cordova-weinre-2.0.0-incubating-doc.zip
...

-- 
Patrick Mueller
http://muellerware.org