Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] Custom qualifiers for release versions (rc1, rc2, rc3, ...)

We're also using strictVersions=false for some plugins because we're using the tycho-buildtimestamp-jgit plugin of Tycho Extras and wants to publish these plugins into a Maven repository, too. The tycho-buildtimestamp-jgit plugin is working fine in combination with strictVersions=true if you're including the -SNAPSHOT suffix in the version element of the corresponding POM. But for a release version this is IMO a bad pattern. Therefore we've removed the snapshot suffix of these POMs, set strictVersions property to false but leaves the .qualifier in the MANIFEST.MF (so that the SimRel report is not complaining that we don't follow the 4 segment version pattern).

Is there a better solution for this? Of course, theoretically you can also deploy 4 segment versions with a time stamp as the fourth digit into a Maven repository but this put as into a tricky position. Unfortunately we're generating POMs during the build which can be used by the customer to create web archives. These POMs are including our plugins and we've found no way to figuring out the timestamp which was used for each plugin.

Regards,
Sven

-----Ursprüngliche Nachricht-----
Von: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] Im Auftrag von Oberlies, Tobias
Gesendet: Montag, 8. April 2013 17:22
An: Tycho user list
Betreff: Re: [tycho-user] Custom qualifiers for release versions (rc1, rc2, rc3, ...)

AFAIK, setting strictVersions=false breaks the build in subtle ways. The reason why we introduced the strict version check is that there are/were too many places in the Tycho code where the assumption that versions match was made. At the time, the effort for fixing this was deemed not worth the benefit. And you probably didn't want to propose to fix the basic problems, right?

Still, I would not be opposed to also just fixing a small fraction of the semi-supported strictVersions=false feature, as long as it doesn't break the main use cases. http://wiki.eclipse.org/Tycho/Contributor_Guide explains how to make contributions.

Regards
Tobias


> -----Original Message-----
> From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user- 
> bounces@xxxxxxxxxxx] On Behalf Of Bernd.Vogt@xxxxxxxxxxxx
> Sent: Donnerstag, 21. März 2013 16:37
> To: tycho-user@xxxxxxxxxxx
> Subject: [tycho-user] Custom qualifiers for release versions (rc1, 
> rc2, rc3, ...)
> 
> Hello,
> 
> we'd like to use custom qualifiers for release versions, e.g. 
> 1.0.0-rc1, 1.0.0-alpha-1. The use case is to provide our QA teams with 
> specific artifacts via our Maven repository. Snapshot artifacts are 
> not allowed, because the releated projects has to pass our whole release process.
> 
> Yes, we're aware of the fact that there's a semantic clash between 
> Maven and OSGi qualifiers, but we decided to go the Maven (user friendly) way...
> therefore we'll won't make use of OSGis qualifier semantics and handle 
> potential conflicts via separate p2 repositories. In production we'll 
> only allow final non-qualified versions, 1.0.0, 1.0.1, 2.0.0 and so on...
> 
> Ok, to implement custom release qualifiers with Tycho, I set the 
> "strichtVersions" property of the tycho-packaging-plugin to "false". 
> This seems to work for all project types instead of 
> "eclipse-repository", see trace below...
> 
> Caused by: org.apache.maven.plugin.MojoFailureException: Not a valid 
> OSGi version 1.0.0-rc1 for project MavenProject: 
> com.bosch:repository:1.0.0-rc1 @ 
> D:\src\e43\srcpit\ws\qualified-version-
> test\target\projects\QualifiedVersionTest\testRepository\repository\po
> m.xm
> l
> 	at
> org.eclipse.tycho.buildversion.BuildQualifierMojo.execute(BuildQualifi
> erMo
> jo.java:145)
> 	at
> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultB
> uild
> PluginManager.java:101)
> 	at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.
> java
> :209)
> 	... 19 more
> 
> It's easy to fix by converting the qualifier separator from '-' to '.' 
> in AbstractArtifactBasedProject.getOsgiVersion(ReactorProject). We're 
> really happy when Tycho would take this into consideration!? (We would 
> also provide the appropriate patch.)
> 
> Mit freundlichen Grüßen / Best regards
> 
> Bernd Vogt
> 
> Bosch Software Innovations GmbH
> Development Software - Core Products Immenstaad (INST/DSW-Imb) 
> Ziegelei 7
> 88090 Immenstaad GERMANY www.bosch-si.de
> 
> Registered office: Immenstaad, Register court: Amtsgericht Ulm, HRB 
> 631888
> Executives: Heinz Derenbach; Thomas Cotic, Erica Fölsche, Michael 
> Hahn, Klaus Hüftle
> 
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user




Back to the top