You are viewing a plain text version of this content. The canonical link for it is here.
Posted to repository@apache.org by Nick Chalko <ni...@chalko.com> on 2003/11/10 18:55:09 UTC
Where to put Version in the URISyntax
Lets try to summerize the different positions and then come to a
consensus on the wiki at
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/WhereIsVersionInURISytnax
I am still trying to wade throught the 60 emails from this weekend. I
would really appreciate the various pro's and con's summarized.
R,
Nick
Re: Where to put Version in the URISyntax
Posted by "Adam R. B. Jack" <aj...@trysybase.com>.
> I think we've the core of such an agreement, although we also need to
invite
> the current mirroring folks from infrastructure to review it once we at
> least agree.
I think we pretty much started with the core of an agreement, we've refined
it somewhat, and we've been dancing around and around it. Tim has helped us
out with the most specific proposal, and I feel we need to work it, and
re-work it, until done. My guess is we are days minimum (a week?) away from
ensuring we've considered the aspect & not just bored ourselves into
submission, an agreement from exhaustion. We need to refine the
specifications and leave them document/complete.
Let's all please review Tim's proposals,
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/Proposals
and raise issues with the parts we can't tolerate via TODOs:
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/ToDo
regards
Adam
RE: Where to put Version in the URISyntax
Posted by "Noel J. Bergman" <no...@devtech.com>.
> I believe most folks want more conformity rather than less,
> so are more inclined towards "version goes here" than
> "optionally here
I maintain that there is a difference between a Best Practice and a mandate.
A mandate should be reserved for where it impacts function and
interoperability. Ease of use is served by a Best Practice, which allows
for exceptions where they further the goal. Since I won't pretend to
anticipate all needs, I prefer to anticipate that there will be good reasons
for exceptions.
> Clearly it is a primary goal to work with mirroring, however
> generically parsing a bunch of the things references on here
> [http://www.apache.org/dev/mirrors.html] would be nightmarish.
I would expect tools to require that there be a URI that is reliably machine
parsable. If we accept the requirement that the repository support
symlinks, then we can even mandate a particular form of URI intended for
easy machine parsing, but I would not exclude more convenient forms of
organization for the non-tool-using user.
I think we've the core of such an agreement, although we also need to invite
the current mirroring folks from infrastructure to review it once we at
least agree.
--- Noel
Re: Where to put Version in the URISyntax
Posted by "Adam R. B. Jack" <aj...@trysybase.com>.
1) I'll cut-n-paste your pros/cons into the Wiki, thanks. I didn't want to
presume to know your vote, so please put it there:
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/WhereIsVersionInURISytnax
2) I believe most folks want more conformity rather than less, so are more
inclined towards "version goes here" than "optionally here, or here, or one
of", but folks can vote on that themselves.
3) Clearly it is a primary goal to work with mirroring, however generically
parsing a bunch of the things references on here
[http://www.apache.org/dev/mirrors.html] would be nightmarish. I'm sure that
pushing 'type' to the directory will help, but there is still significant
scope for clash with version and extension :
apache_2.0.43-win32-x86-no_ssl.msi.md5
source/httpd-2.0.43.tar.gz.md5
Where does version (if pchar*) end? Do we need to enumerate extensions?
regards
Adam
----- Original Message -----
From: "Noel J. Bergman" <no...@devtech.com>
To: <re...@apache.org>
Sent: Monday, November 10, 2003 12:53 PM
Subject: RE: Where to put Version in the URISyntax
> RE:
>
> http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/URISyntax
>
>
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/WhereIsVersionInU
> RISytnax
>
> Right now, it seems that most ASF projects follow the layout described for
> the mirroring system: http://www.apache.org/dev/mirrors.html. That scheme
> places the version in the terminal element of the URI. That scheme also
> makes heavy use of symlinks, places only the most popular formats in the
> project root, and has the user browse through project-specific layouts for
> platform-specific binary releases.
>
> Version in the product-specifier:
>
> PRO: - all artifacts for a given version in one place
> CON: - after downloading, if the version is not ALSO
> in the artifact element, the information is
> lost.
>
> Version in the artifact-specifier:
>
> PRO: - after downloading, it is obvious which version
> is being used.
> - compatible with current ASF scheme
> CON: - if the version isn't also in the path, all
> artifacts are in one huge directory.
>
> Version in both places:
>
> PRO: - all artifacts for a given version in one place
> - after downloading, it is obvious which version
> is being used.
> - compatible with current ASF scheme
> CON: - relies upon ability for file system to support
> symlinks, or has massively redundant data.
>
> We've already indicated that version "M.m.p", "current", "nightly",
> "mm-dd-yy", etc. Placing the version in the product-specifier would
appeaer
> to require a change from the current mirroring structure, which places
> current versions under <project>/, unless we define that an empty version
> means the current version.
>
> I have no problem stating a semantic that
>
> the version must either the same in both product-specifier
> and artificat-specifier, or it may be empty in one or both
> places. If it is empty in both places it is the same as
> current and is a non-preferred use. If it is empty in one
> place, and specified in the other, the empty use has no meaning.
>
> We would clearly note that although the version MAY be empty in both the
> product and version specifiers, it is highly undesirable except in
specific
> cases. The version SHOULD be in at least one place.
>
> Thoughts?
>
> --- Noel
>
RE: Where to put Version in the URISyntax
Posted by "Noel J. Bergman" <no...@devtech.com>.
RE:
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/URISyntax
http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/WhereIsVersionInU
RISytnax
Right now, it seems that most ASF projects follow the layout described for
the mirroring system: http://www.apache.org/dev/mirrors.html. That scheme
places the version in the terminal element of the URI. That scheme also
makes heavy use of symlinks, places only the most popular formats in the
project root, and has the user browse through project-specific layouts for
platform-specific binary releases.
Version in the product-specifier:
PRO: - all artifacts for a given version in one place
CON: - after downloading, if the version is not ALSO
in the artifact element, the information is
lost.
Version in the artifact-specifier:
PRO: - after downloading, it is obvious which version
is being used.
- compatible with current ASF scheme
CON: - if the version isn't also in the path, all
artifacts are in one huge directory.
Version in both places:
PRO: - all artifacts for a given version in one place
- after downloading, it is obvious which version
is being used.
- compatible with current ASF scheme
CON: - relies upon ability for file system to support
symlinks, or has massively redundant data.
We've already indicated that version "M.m.p", "current", "nightly",
"mm-dd-yy", etc. Placing the version in the product-specifier would appeaer
to require a change from the current mirroring structure, which places
current versions under <project>/, unless we define that an empty version
means the current version.
I have no problem stating a semantic that
the version must either the same in both product-specifier
and artificat-specifier, or it may be empty in one or both
places. If it is empty in both places it is the same as
current and is a non-preferred use. If it is empty in one
place, and specified in the other, the empty use has no meaning.
We would clearly note that although the version MAY be empty in both the
product and version specifiers, it is highly undesirable except in specific
cases. The version SHOULD be in at least one place.
Thoughts?
--- Noel