directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Karasulu" <>
Subject Re: [VOTE] Policy for Managing TLP POM
Date Thu, 24 May 2007 18:36:29 GMT
Thanks Jorg for this feedback it's very useful to us especially now that we
are working on these issues.  I will consult them while trying to clean up
our source/build configuration.


On 5/24/07, Jörg Schaible <> wrote:
> Hi folks,
> as a plain lurker to ADS, I'd like to make some minor comments to this
> proposal, too. Mainly because we deal with a comparable complexity here in
> our office.
> Some History Regarding Maven Interactions:
> You mension, that the SNAPSHOT handling for parents is broken. This is not
> the complete truth, since any SNAPSHOT handling is broken. Maven does not
> download a SNAPSHOT again, that is in your local repo. So if you have a dep
> on a SNAPSHOT, you can only trust it if you either have wiped out any
> SNAPSHOT out of your local repo before or you have build all those yourself
> (as I do my 234 reported projects currently).
> What we do with our TLP:
> - it's an own project. In your case tlp-commons will be released
> automatically with every version bump. Might be OK though for tlp-commons
> - we locked down the version *all* used plugins in a pluginManagement
> section otherwise the build is not really repeatable (it's still not, if you
> don't use the same Maven version - at least currently)
> - we do not define plugins directly in the TLP. In your case you do so for
> the jar and surefire plugin, but keep in mind, not every produced artifact
> might use them
> - we use a dependencyManagement section declaring all externals and
> released deps with versions, no version is used in the dep declaration
> anywhere else (this is a policy you have to decide on your own, but it helps
> to use the same version everywhere)
> - we use also TLP version "SNAPSHOT" i.e. the latest, it helps to
> introduce changes that effects a lot of other modules. If you have to
> release the TLP always for this, you'll have to update a lot of POMs to the
> new version. If the TLP is released, we set the next version always back to
> SNAPSHOT. This also helps with artifacts that are not released but reference
> the "latest" TLP version.
> Drawbacks:
> - when releasing an artifact, you should always remember to set the
> version to the parent (normally TLP) to the latest one (otherwise you may
> use older plugin versions or global settings)
> - you do normally a frequent manually update of the TLP from svn and
> install it in the local repo (to get latest changes)
> Maybe you can pick some useful parts for your policy.
> BTW: We use also a lot of POMs that get never released. They usually
> reside in the top lovel directories and have basically just a module section
> (and often those modules are "injected" by svn:externals). We call them
> "builder POMs" and they are never used as parent POM anywhere. Quite handy.
> Cheers,
> Jörg

View raw message