<html>
<head>
<meta name="generator" content="Windows Mail 17.5.9600.20689">
<style data-externalstyle="true"><!--
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph {
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
}
p.MsoNormal, li.MsoNormal, div.MsoNormal {
margin:0in;
margin-bottom:.0001pt;
}
p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst, 
p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle, 
p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast {
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
line-height:115%;
}
--></style></head>
<body dir="ltr">
<div data-externalstyle="false" dir="ltr" style="font-family: 'Calibri', 'Segoe UI', 'Meiryo', 'Microsoft YaHei UI', 'Microsoft JhengHei UI', 'Malgun Gothic', 'sans-serif';font-size:12pt;">
<div style="color: rgb(0, 0, 0);">Fudge fudge fudge I did this. </div><div style="color: rgb(0, 0, 0);">I am really sorry this is something I vastly overlooked. <br></div><div style="color: rgb(0, 0, 0);" data-signatureblock="true"><div style="color: rgb(0, 0, 0);">Next pizza & beer are on me.</div><div style="color: rgb(0, 0, 0);"><br></div></div><div style="padding-top: 5px; border-top-color: rgb(229, 229, 229); border-top-width: 1px; border-top-style: solid;"><div><font face=" 'Calibri', 'Segoe UI', 'Meiryo', 'Microsoft YaHei UI', 'Microsoft JhengHei UI', 'Malgun Gothic', 'sans-serif'" style='line-height: 15pt; letter-spacing: 0.02em; font-family: "Calibri", "Segoe UI", "Meiryo", "Microsoft YaHei UI", "Microsoft JhengHei UI", "Malgun Gothic", "sans-serif"; font-size: 12pt;'><b>De :</b> <a href="mailto:hiner@wisc.edu" target="_parent">Mark Hiner</a><br><b>Envoyé :</b> ‎lundi‎ ‎16‎ ‎mars‎ ‎2015 ‎20‎:‎38<br><b>À :</b> <a href="mailto:pietzsch@mpi-cbg.de" target="_parent">Tobias Pietzsch</a>, <a href="mailto:tinevez@pasteur.fr" target="_parent">Jean-Yves Tinevez</a><br><b>Cc :</b> <a href="mailto:imagej-devel@imagej.net" target="_parent">imagej-devel@imagej.net</a></font></div></div><div><br></div><div dir=""><div dir="ltr"><div><div><div><div><div><div>Hi all,<br><br> I wanted to share a brief case study on the current dependency skew of ImgLib2-algorithm-related components.<br><br> Last week, an <a href="https://github.com/imglib/imglib2-algorithm/commit/e1460f140a0b03554fcb6f3d14ca43362d7d86a5" target="_parent">innocent-looking commit</a> was merged into imglib2-algorithm. It then made its way into a patch release of imglib2-algorithm, and <a href="https://github.com/imagej/pom-imagej/commit/d28f954494f76898d80296b168b5352238d25915" target="_parent">patch release of pom-imagej</a>. Unfortunately, even a trivial package move like this is actually a breaking API change, and both the component and pom releases should have incremented a major version to indicate this.<br><br></div> Further, pom-imagej now declares a set of components that are incompatible with each other - as components downstream of imglib2-algorithm are not updated to use the new packages. Thus if these libraries were consolidated (e.g. to upload to Fiji), there would be hit by dependency skew.<br><br></div> For those interested, there are two possible solutions:<br><br></div>1) Track down all uses of the old packages, update them, cut releases, update pom-imagej.<br></div>or<br></div>2) Add deprecated, trivial extensions of the moved classes back to the old locations, which can then be removed at a later date.<br><br></div> Naturally, #2 is much simpler and thus looking more attractive right now. :) Either way, developers should be aware of the current problems with pom-imagej 5.12.3 and 5.13.0 (the latter also points to an unreleased ij1-patcher, due to incompatibilities with ImageJ 1.49p - so certainly don't use that one).<br><br><div><div><div><div><div><div><div><div> Our versioning practices are on the wiki: <a href="http://imagej.net/Architecture#Versioning" target="_parent">http://imagej.net/Architecture#Versioning</a> but please let us know if anything is unclear or hard to find.<br><br></div><div> The burden of manually accounting for SemVer changes is hopefully one we will soon be free from. For now, it's just something we have to consider whenever we cut releases.<br><br></div><div>Best,<br></div><div>Mark<br></div></div></div></div></div></div></div></div></div>
</div>


</div>
</body>
</html>