openmicroscopy/bioformats — pull request #51 by ctrueden (2012-04-05 17:22:12+00:00)
Title: Remove ImgLib2 I/O capabilities

This branch reverts the three pull requests that introduce ImgLib2 I/O capabilities into SCIFIO.

After talking with Melissa, we decided to remove the ImgLib2 I/O functionality from SCIFIO for the time being. The reasons are:

1. We need a fluid branch that can deploy new SCIFIO & Bio-Formats JAR snapshots to our Maven repository at a realtime development pace. The plan is to have a new merge branch (maybe "snapshot" or "merge-yellow" or "merge-purple") that can be used to merge pending pull requests, then build and deploy snapshots to Maven via Jenkins.

2. The Bio-Formats C++ builds (BIOFORMATS-cpp-daily and BIOFORMATS-trunk-cpp) broke as a consequence of the new imglib2 dependency. While I suspect that fixing these builds will be straightforward, it is something that must be further debugged and tested before proceeding with an ImgLib2-enabled version of SCIFIO.

3. Due to parallel versions of the ImgLib2 I/O code (one in ome.scifio.img in bioformats.git, and another in net.imglib2.io in imglib.git), there is a near-circular dependency between SCIFIO and ImgLib2. Technically there the dependency tree is still a tree (i.e., no loops) if you examine the individual modules: imglib2-io depends on scifio and imglib2, scifio depends on imglib2. But as a whole, scifio.git now depends on imglib.git, and vice versa, which results in complications when building the respective codebases. We really need to remove the imglib2-io project completely from imglib.git, once it is fully migrated to bioformats.git.

The timeline for reintroduction of ImgLib2 I/O into SCIFIO will depend on how quickly (1) above is resolved, together with fixing the build problems described in (2). Once we are ready to reintroduce ImgLib2 I/O capabilities, and are confident everything is working well, we can proceed to remove the old code from imglib.git as described in (3).