Tim Anderson wrote:
From: Stephen McConnell [mailto:[EMAIL PROTECTED]
Woops - see small correction in line.
Stephen McConnell wrote:
Tim Anderson wrote:
By implication - the README is not an artifact but a feature of a
version.
Is that a reasonable conclusion?
Stephen.
Why make the distinction? I view everything a project deploys as an
artifact. Some artifacts will only be useful to end users (e.g,
README, LICENSE.txt etc), others will be useful to tools.
Because there is difference between aggregation of files of a
partiular type as distinct from files that describe a particular typed
file instance. I view the "artifact" as the principal file held in a
directory qualifed by a type (e.g. the jar file in a jars directory),
and that other resources such as READMEs, LICENSEs, MD5s, etc. are
examples of data that describe features of specific things such as a
group, version, artifact, etc.
Why make the distinction? When I look at the available artifacts in a
/jars/ directory I will present these as an list of artifacts. A user
may select to view the properties/features of one of these items.
Using the name of an artifact - I can locate additional information
about the artifact such as the MD5 signature, maybe the license or
some dependency information - providing there is a convention that is
predictable. I.e. I need a mechanism to locate information about a
particular artifact - e.g.
I left out the all important principal artifact.
<artifact-path>.<type> <--------- the principal artifact (e.g.
jars/fred.jar)
<artifact-path>.<something> <------ some metadata
<artifact-path>.<something-else> <-- more meta data
<artifact-path>.MD5 <--------------- artifact signature
<artifact-path>.README <------------ readme about the artifact
The important thing is the recognition of the difference between a file
that *is* the artifact as distinct from a file that *describes*
an artifact.
Stephen.
<artifact-path>.<something>
<artifact-path>.<something-else>
<artifact-path>.MD5
<artifact-path>.README
Etc.
Stephen.
File aggregation is important to tools, less so for end-users.
The MD5 is just another artifact - its up to the tools
to determine its association with other artifacts.
If the MD5 is just another artifact then it would belong under
something like:
http://www.ibiblio.org/maven/ant/md5s/some-artifact-name.md5
But that does not make sence (or types don't make sence). The
fact is that there really is a differnce between <path> and
<path>.<meta> providing that there that is a recognition in the
base repository schema that these are two different things.
That recognition (as a part of the schema) is very important for
the attribution of information that would be used in the next
level up - i.e. that leyer on which meta data is accesses to
in order to manage an anttribute.
Stephen.
--
Stephen J. McConnell
mailto:[EMAIL PROTECTED]