Community
Participate
Working Groups
When computing a build qualifier for a feature using the build-qualifier-aggregator mojo, Tycho currently only supports timestamps of included bundles and features that match exactly the format as specified in the configuration. However, when including 3rd party dependencies (eg., from Orbit) that isn't necessarily the case. Very often, dependencies use a different format. A workaround is to "touch" the features in SCM. Tycho should be smarter and discover timestamps in common formats. Scanning through the various Eclipse projects as well as Orbit, it seems that the following is very common: - v201505121915 - v20121205-1250 - N20151009-1723 - 20150602-0950 Observations: - sometimes there is a 'v' prefix, sometimes there isn't - sometimes there is a build type prefix such as I, N, S, R - sometimes the timestamp is separated by '-' (dash)
New Gerrit change created: https://git.eclipse.org/r/60297
Gerrit change https://git.eclipse.org/r/60297 was merged to [master]. Commit: http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/commit/?id=4959b87a7add9188856136ef910f919bd7d2e2e2
qualifier formats containing timestamps in the forms yyyyMMddHHmm yyyyMMdd-HHmm yyyyMMdd (i.e. with or without any prefix or suffix) are recognized by default now. You can keep this open if you want to make timestamp formats configurable.
Let's wait with enhancing further till this functionality is actually needed. Thanks for merging!
thinking about it again, I agree we don't need configurable timestamps right now. Since any prefix or suffix is allowed, the 3 qualifier patterns are covering a lot of cases now I think (at least all the formats I remember to have seen personally). Also, to ensure versions are increasing with time, the pattern has to be generally in the format year month day (hour minute) the only thing I can imagine to vary are different (or more) separators between the segments, but as you said let's wait for an actual usecase, if any. thanks for the patch!
New Gerrit change created: https://git.eclipse.org/r/60651
BTW, if you want a large sample of real-world qualifiers in use, at least as part of Eclipse's Simultaneous Release repository, I create a report of the patterns used. This was mostly done purely out of my own interest, but you can see most patterns will be "handled". And, those that are not, are not very good "dates" anyway! (That is, do not appear to be "monotonically increasing" in any obvious way). So, not sure you could handle those, even if "configurable". Just providing the data, if interested. https://hudson.eclipse.org/simrel/job/simrel.neon.runaggregator.BUILD__CLEAN/lastSuccessfulBuild/artifact/aggregation/final/buildInfo/reporeports/reports/versionPatterns.txt