On 05/08/2011, at 11:16 AM, Luke Daley wrote: > > On 04/08/2011, at 10:34 PM, matthias wrote: > >> Actually, since you mentioned that *-SNAPSHOT is a Maven thing, would you >> still recommend doing it in Gradle projects, or is there another Gradle >> specific way of flagging builds as development builds? > > Right now, -SNAPSHOT is the best solution as it's reasonably well understood. > > However, there are camps out there that will tell you that -SNAPSHOTs are the > work of the devil and that you should not under any circumstance depend on an > artifact that can change. I'm yet to see to practical solution from this camp > though. What is usually promoted is to timestamp your development builds and > to depend on specific timestamps.
Not commenting on whether SNAPSHOTs are good or bad, an alternative, if you happen to be publishing to an ivy repo, is to use some of the ivy features: * A fixed version label on each published build (eg 1.0-SNAPSHOT), combined with changing = true on the dependency definition. Not sure this buys you anything over SNAPSHOT, except that you can choose the fixed label. * A unique version for each published build (eg 1.0- plus a timestamp or build number or some other increasing integer), combined with a version range version="[1.0-+]" on the dependency definition. * A unique version for each published build, combined with version='integration.latest' on the dependency definition. -- Adam Murdoch Gradle Co-founder http://www.gradle.org VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting http://www.gradleware.com
