On Wed, Aug 17, 2016 at 4:12 PM, Raul Kripalani <r...@evosent.com> wrote: > Hi Claus, > > I see your point, but the vast majority of Apache TLP projects are > publishing SNAPSHOTs per-release, not per version line. > > Spark, Kafka, Zookeeper, Aries, Karaf, CXF, Maven, etc. publish per-version > SNAPSHOTs. I've only found AMQ, Flink and Tomcat doing it like us. > > The maintenance/storage problem is an infrastructure concern, not a project > one. I'm pretty sure that ASF Infrastructure have scaled the system for > this. If storage were indeed a problem, there is definitely low-hanging > fruit to deal with first, like our old snapshots from 2.0 to ~2.15, dated > three years back! https://repository.apache.org/content/groups/ > snapshots/org/apache/camel/camel-atom/ > > From the perspective of the developer, I would prefer to target a SNAPSHOT > for a given release rather than a vague one. I've seen customers run Camel > with SNAPSHOTs in production for months. If you target 2.18-SNAPSHOT, every > build can result in different dependency versions being taken throughout > the entire lifetime of a minor release (12–18 months? have a look at the > 2.15.x release lifespan). However, if you target 2.18.0-SNAPSHOT you know > that you'll be using code no more recent than 2.18.0 at any given point. >
That is actually not entirely accurate. The 2.18-SNAPSHOT is only in use until the 2.18.0 release. Then any patch releases 2.18.1, 2.18.2 and so on, are using 2.18.1-SNAPSHOT 2.18.2-SNAPSHOT etc. > It gives the developer more control and scoping. > > Cheers. > > --- > Raúl Kripalani > linkedin.com/in/raulkripalani | evosent.com > <http://evosent.com/?utm_source=email&utm_medium=email&utm_campaign=evosent_raul> > | blog: raul.io > <http://raul.io?utm_source=email&utm_medium=email&utm_campaign=evosent_raul> | > skype: raul.fuse > > On Wed, Aug 17, 2016 at 8:48 AM, Claus Ibsen <claus.ib...@gmail.com> wrote: > >> Hi >> >> I want the SNAPSHOT to stay as-is on the source code, and only do the >> .0 on the release builds. >> >> Having a plethora of .0-SNAPSHOT .1-SNAPSHOT .2-SNAPSHOT is a pain to >> work with, and having to prune/remove old versions becomes a >> maintenance problem. >> >> Using -SNAPSHOT then its easy to be assure its using the latest code >> on that branch, which is the intension of the SNAPSHOT. >> >> On Wed, Aug 17, 2016 at 9:35 AM, Raul Kripalani <r...@evosent.com> wrote: >> > Hey Claus, >> > >> > We can change it now via the versions:set goal. That way we'll start >> > publishing snapshots under 2.18.0-SNAPSHOT already. >> > >> > We should also prune 2.18-SNAPSHOT from the ASF Snapshots repo, to make >> the >> > build fail for those who might be using it. That'll make them investigate >> > and upgrade, rather than silently using an outdated snapshot. >> > >> > Cheers. >> > >> > On 17 Aug 2016 08:24, "Claus Ibsen" <claus.ib...@gmail.com> wrote: >> > >> > Hi >> > >> > Yeah the Camel releases has always been as currently. But I do think >> > its better practice to have a .0 so its always 3 digits. >> > >> > We can maybe start this from Camel 2.18.0 onwards. >> > >> > I assume its "just" a matter when the RC is cut then the version >> > number typed for the Maven command should be 2.18.0 instead of 2.18 in >> > these situations. >> > >> > >> > >> > On Wed, Aug 17, 2016 at 1:01 AM, Raul Kripalani <r...@evosent.com> >> wrote: >> >> Hi all, >> >> >> >> I've come across an obscure bug using the karaf-maven-plugin to package >> a >> >> custom Karaf distro containing Camel 2.18-SNAPSHOT. >> >> >> >> Karaf expects feature version numbers to match the same format as OSGi >> >> versions [1]. OSGi versions **require** a micro component. >> >> >> >> Karaf uses the Felix org.apache.felix.utils.version.VersionCleaner [2] >> >> which adds a 0 micro component if it doesn't exist. This magic then >> causes >> >> problems when other tools try to match version numbers of round >> releases. >> >> >> >> I particularly find confusing that we use this non-uniform scheme for >> >> versions, not only because it it causes side-effects, but because it >> feels >> >> somewhat messy. >> >> >> >> My proposal: always include a micro component in our release numbers, >> >> padding with 0 for round releases (2.18 => 2.18.0). That way we would >> > have: >> >> >> >> 2.17.4 >> >> 2.18.0 >> >> 2.18.1 >> >> >> >> Instead of: >> >> >> >> 2.17.4 >> >> 2.18 >> >> 2.18.1 >> >> >> >> Agree? >> >> >> >> [1] https://osgi.org/javadoc/r4v43/core/org/osgi/framework/Version.html >> >> [2] >> >> https://github.com/apache/felix/blob/4a60744d0f88f351551e4cb4673eb6 >> > 0b8fbd21d3/utils/src/main/java/org/apache/felix/utils/ >> > version/VersionCleaner.java >> >> >> >> --- >> >> Raúl Kripalani >> >> linkedin.com/in/raulkripalani | evosent.com >> >> <http://evosent.com/?utm_source=email&utm_medium=email& >> > utm_campaign=evosent_raul> >> >> | blog: raul.io >> >> <http://raul.io?utm_source=email&utm_medium=email&utm_ >> > campaign=evosent_raul> | >> >> skype: raul.fuse >> > >> > >> > >> > -- >> > Claus Ibsen >> > ----------------- >> > http://davsclaus.com @davsclaus >> > Camel in Action 2: https://www.manning.com/ibsen2 >> >> >> >> -- >> Claus Ibsen >> ----------------- >> http://davsclaus.com @davsclaus >> Camel in Action 2: https://www.manning.com/ibsen2 >> -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2