I added this requirement now to the newly created https://issues.apache.org/jira/browse/SLING-7575 <https://issues.apache.org/jira/browse/SLING-7575>. We are blocked though by https://github.com/bndtools/bnd/issues/2265 <https://github.com/bndtools/bnd/issues/2265> (until the release of bnd-maven-plugin 4.0). Feel free to extend the list of common bnd instructions which should in the future be defined in our parent pom. Thanks, Konrad
> On 9. Apr 2018, at 16:30, Justin Edelson <[email protected]> wrote: > > Oh yeah, then that's a problem. It really should be epoch-based IMO. > > On Mon, Apr 9, 2018 at 10:28 AM Konrad Windszus <[email protected]> wrote: > >> By default the timestamp is having the format "yyyyMMddHHmm" ( >> http://bnd.bndtools.org/macros/tstamp.html < >> http://bnd.bndtools.org/macros/tstamp.html>), this could be a problem in >> certain cases where you redeploy two builds within the same minute. >> >> >>> On 9. Apr 2018, at 15:55, Justin Edelson <[email protected]> >> wrote: >>> >>> I'm not sure this is problematic from the perspective of the installer. >> The >>> point of the different SNAPSHOT handling is to support the use case of >>> updating a bundle with the *same* bundle version. However, if the bundle >>> versions are including a timestamp, it isn't needed since the bundle >>> versions would be constantly increasing. >>> >>> Now there could be a problem if the timestamp somehow not taking >> timezones >>> into account, but assuming it is UNIX epoch based, then this won't be an >>> issue. >>> >>> Regards, >>> Justin >>> >>> On Fri, Apr 6, 2018 at 2:32 AM Konrad Windszus <[email protected]> wrote: >>> >>>> I am just migrating the OSGi Installer HC ( >>>> https://github.com/apache/sling-org-apache-sling-installer-hc/) to the >>>> bnd-maven-plugin and I observed one difference to the >> maven-bundle-plugin: >>>> >>>> The bundle version for SNAPSHOTs by default looks like >> "1.0.1.<Timestamp>" >>>> instead of "1.0.1.SNAPSHOT" (as it was with the maven-bundle-plugin). >>>> The reason for that is this line: >>>> >> https://github.com/bndtools/bnd/blob/d7511968b0ec96f1bec5bd3de59f8010cb3cb9f1/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/BndMavenPlugin.java#L262 >>>> wich >>>> sets the snapshot instruction to the timestamp ( >>>> http://bnd.bndtools.org/instructions/snapshot.html). This leads to the >>>> SNAPSHOT qualifier in the version being replaced by the timestamp in the >>>> generated bundle version. >>>> >>>> This is IMHO problematic in combination with the OSGi Installer, as that >>>> behaves differently when it detects a SNAPSHOT ( >>>> >> https://github.com/apache/sling-org-apache-sling-installer-core/blob/1561f5e626bab4859b4c060ef1bec06026018f18/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInfo.java#L109 >>>> ). >>>> >>>> Should we configure all our bundles in a way that SNAPSHOT in the >> version >>>> is not being replaced, or can we come up with a more intelligent >> solution >>>> in the OSGi Installer? >>>> I noticed that in the manifest we have in addition still >>>> "Implementation-Version: 1.0.1-SNAPSHOT" on which we could maybe base >> the >>>> SNAPSHOT detection of the OSGi Installer. >>>> >>>> WDYT? >>>> Konrad >>>> >>>> >>>> >> >>
