Hi all,<div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><br>Basically, the problem with snapshot versions is that they are moving<br>


targets. So imglib2-2.0.0-beta3 cannot depend on mpicbg-2.0.0-SNAPSHOT.<br>That was my thinko and Curtis corrected that.</blockquote><div><br></div><div>Yes, the good thing about release versions (i.e., any version without "-SNAPSHOT" as the suffix) is that they never change after deployment (i.e., once they are available to anyone external). The idea is that adding a release version dependency creates a looser-and-more-stable linkage between projects, whereas a snapshot dependency creates a tighter-but-less-stable one.</div>

<div><br></div><div>The way we are doing it with ImageJ2 and ImgLib2 is that the development version of ImageJ2 depends on an ImgLib2 snapshot. When we do a release, we do a release for the entire stack, with both ImageJ2 and ImgLib2 versioned the same (but if you want to change this in the future, we can discuss).</div>

<div><br></div><div>It is forbidden for a release version of a project to have any snapshot dependencies (because then depending on that release would not be transitively stable). Therefore, when we do a release of the ImgLib2 projects, we need a new-enough release version of mpicbg as well—at least until the transition away from mpicbg is complete someday.<br>


<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><br>Okay, that would be version 20120621, then, as that is the date of the<br>

commit in fiji.git, referring to the mpicbg commit 4200032831.<br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

 </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">I verified that the Updater considers my compiled version of that revision<br>

and what you uploaded as identical, so I "deployed" (== "uploaded to the<br>Maven repository" in Maven speak) the latter[*1*].</blockquote><div><br></div>Sounds perfect!<br><br>Regards,<br>Curtis</div>

<div><br></div><div><br><div class="gmail_quote">On Sun, Jul 8, 2012 at 2:50 PM, Johannes Schindelin <span dir="ltr"><<a href="mailto:Johannes.Schindelin@gmx.de" target="_blank">Johannes.Schindelin@gmx.de</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Stephan,<br>
<div><br>
On Sun, 8 Jul 2012, Stephan Saalfeld wrote:<br>
<br>
> thanks for explaining.  I am not familiar with the differences between<br>
> snapshots and releases.  I trust in you to make the right choice.<br>
<br>
</div>Basically, the problem with snapshot versions is that they are moving<br>
targets. So imglib2-2.0.0-beta3 cannot depend on mpicbg-2.0.0-SNAPSHOT.<br>
That was my thinko and Curtis corrected that.<br>
<div><br>
> To explain the mpicbg situation: I consider the version of the git<br>
> repository that is committed as submodule to the fiji repository the<br>
> stable release because I tested it in the full Fiji context (at least<br>
> for compiling issues) which includes TrakEM2 and ImgLib1/2.  That<br>
> version corresponds to what is uploaded to the Fiji updater.<br>
<br>
</div>Okay, that would be version 20120621, then, as that is the date of the<br>
commit in fiji.git, referring to the mpicbg commit 4200032831.<br>
<br>
I verified that the Updater considers my compiled version of that revision<br>
and what you uploaded as identical, so I "deployed" (== "uploaded to the<br>
Maven repository" in Maven speak) the latter[*1*].<br>
<div><br>
> The dependencies in imglib2 are wrong transformed comments.  imglib2-ij,<br>
> imglib2-algorithms-gpl, imglib-scripting and imglib2-tests use utility<br>
> classes that I will transfer to imglib2 in August now that I've seen it.<br>
> imglib2-algorithms-gpl and imglib-scripting use it for transformation<br>
> which can now be replaced by imglib2-realtransform (actually the<br>
> transform as implemented there is obsolete now that RealViews exist).<br>
><br>
> My plan is to free imglib2 from mpicbg dependencies because it will<br>
> incorporate all its functions wrapped in improved interfaces.  This,<br>
> however, is a longer term project which means that mpicbg will remain<br>
> for quite some time, mainly in the Fiji context for TrakEM2 and other<br>
> plugins.  Synchronizing version numbers between imglib2 and mpicbg would<br>
> thus be misleading in my understanding.<br>
<br>
</div>Okay, great, thanks for the clarification! Much appreciated.<br>
<div><br>
> Be patient with me---I have to finish my thesis by July 31---no further<br>
> mercy.  Back in hacking mood after that...<br>
<br>
</div>Yep, the thesis is more important right now. Good luck with that!<br>
<br>
Ciao,<br>
Dscho<br>
<br>
[Footnote *1*] I did not upload my compiled version, since -- as you know<br>
-- .jar files are really .zip files, storing timestamps with the files, so<br>
by necessity the .jar files are different when they are recompiled. The<br>
Updater is a bit clever about that situation and inspects the .zip<br>
contents (in newer incarnations, it ignores even more things that depend<br>
on the build environment/date).<br>
<div><div><br>
--<br>
Please avoid top-posting, and please make sure to reply-to-all!<br>
<br>
Mailing list web interface: <a href="http://groups.google.com/group/fiji-devel" target="_blank">http://groups.google.com/group/fiji-devel</a><br>
</div></div></blockquote></div><br></div>