From d6ca59b55ea3c0a4c582445572311376589849a5 Mon Sep 17 00:00:00 2001 From: Rohan Girish Date: Wed, 21 Jan 2026 15:43:59 +0100 Subject: [PATCH 01/10] Add installation instructions --- README.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/README.md b/README.md index 0718c2d8..7feb4d09 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,34 @@ it. Developed and provided by the [Imaging Core Facility (IMCF)][imcf] of the Biozentrum, University of Basel, Switzerland. +## Installation Instructions + +### Required Update Sites + +After a fresh install of [Fiji](https://fiji.sc/), navigate to *Help* -> *Update* and in the resulting window, press *Manage Update Sites*. Here, search for and tick the following necessary update sites for this package. + +- ImageJ +- Fiji +- 3D ImageJ-Suite +- clij2 +- IJPB-plugins +- IMCF Uni Basel +- StarDist +- CALM +- TrackMate-Cellpose +- TrackMate-Helper +- TrackMate-StarDist +- TrackMate-Weka +- TrackMate-MorpholibJ + +The **`IMCF Uni Basel`** update-site will supply the necessary `.jar` to run the functions contained in this package, but alternatively, the most up-to-date `.jar` for this package can be always found on the [Scijava Maven repository][scijava-1.5.0], which links to, for example, the `1.5.0` version of `python-imcflibs`. + +If you manually download the `.jar` from Scijava, extract the zip folder, and place the `.jar` file in the `\jars` folder of your Fiji installation, e.g `C:\Tools\Fiji.app\jars\`. + +### Testing Installation + +To check the package's correct installation in Fiji, search for *Script Interpreter* in the Search bar, and type `:lang python`, followed by e.g. `import imcflibs.imagej.misc`. If no errors are shown, the installation was successful. Alternatively, you can scroll in the sidebar of the Interpreter to search for imcflibs. + ## Example usage ### Shading correction / projection @@ -69,3 +97,4 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") [apidocs]: https://imcf.one/apidocs/imcflibs/imcflibs.html [pdoc]: https://pdoc.dev/ [pypi]: https://pypi.org/project/imcflibs/ +[scijava-1.5.0]: https://maven.scijava.org/#browse/browse:releases:ch%2Funibas%2Fbiozentrum%2Fimcf%2Fpython-imcflibs%2F1.5.0%2Fpython-imcflibs-1.5.0.jar \ No newline at end of file From b0323b965008f158c102125ce8d60f953779008c Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:21:59 +0100 Subject: [PATCH 02/10] Fix line length --- README.md | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 7feb4d09..6e574ef3 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,9 @@ paths, I/O (file handles, ...), strings etc. and tons of [Fiji][fiji] / cross-script redundanciees. Initially this has been a multi-purpose package where a substantial part had -been useful in **CPython** as well. However, since the latest Jython -release is still based on Python 2.7 (see the [Jython 3 roadmap][jython3] for -more info), *imcflibs* is now basically limited to the **Fiji / ImageJ2 -ecosystem**. +been useful in **CPython** as well. However, since the latest Jython release is +still based on Python 2.7 (see the [Jython 3 roadmap][jython3] for more info), +*imcflibs* is now basically limited to the **Fiji / ImageJ2 ecosystem**. Releases are made through Maven and published to the [SciJava Maven repository][sj_maven]. The easiest way to use the lib is by adding the **`IMCF @@ -36,7 +35,9 @@ Biozentrum, University of Basel, Switzerland. ### Required Update Sites -After a fresh install of [Fiji](https://fiji.sc/), navigate to *Help* -> *Update* and in the resulting window, press *Manage Update Sites*. Here, search for and tick the following necessary update sites for this package. +After a fresh install of [Fiji], navigate to *Help* -> *Update* and in the +resulting window, press *Manage Update Sites*. Here, search for and tick the +following necessary update sites for this package. - ImageJ - Fiji @@ -52,13 +53,23 @@ After a fresh install of [Fiji](https://fiji.sc/), navigate to *Help* -> *Update - TrackMate-Weka - TrackMate-MorpholibJ -The **`IMCF Uni Basel`** update-site will supply the necessary `.jar` to run the functions contained in this package, but alternatively, the most up-to-date `.jar` for this package can be always found on the [Scijava Maven repository][scijava-1.5.0], which links to, for example, the `1.5.0` version of `python-imcflibs`. +The **`IMCF Uni Basel`** update-site will supply the necessary `.jar` to run the +functions contained in this package, but alternatively, the most up-to-date +`.jar` for this package can be always found on the [Scijava Maven +repository][scijava-1.5.0], which links to, for example, the `1.5.0` version of +`python-imcflibs`. -If you manually download the `.jar` from Scijava, extract the zip folder, and place the `.jar` file in the `\jars` folder of your Fiji installation, e.g `C:\Tools\Fiji.app\jars\`. +If you manually download the `.jar` from Scijava, extract the zip folder, and +place the `.jar` file in the `\jars` folder of your Fiji installation, e.g +`C:\Tools\Fiji.app\jars\`. ### Testing Installation -To check the package's correct installation in Fiji, search for *Script Interpreter* in the Search bar, and type `:lang python`, followed by e.g. `import imcflibs.imagej.misc`. If no errors are shown, the installation was successful. Alternatively, you can scroll in the sidebar of the Interpreter to search for imcflibs. +To check the package's correct installation in Fiji, search for *Script +Interpreter* in the Search bar, and type `:lang python`, followed by e.g. +`import imcflibs.imagej.misc`. If no errors are shown, the installation was +successful. Alternatively, you can scroll in the sidebar of the Interpreter to +search for imcflibs. ## Example usage From edd1e6095d3cd8c8ea6b5f5e4ef1f906542c6a21 Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:22:48 +0100 Subject: [PATCH 03/10] Avoid doubling link references --- README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 6e574ef3..5e27ea3f 100644 --- a/README.md +++ b/README.md @@ -10,9 +10,8 @@ [![DOI](https://zenodo.org/badge/156891364.svg)][doi] This package contains a diverse collection of Python functions dealing with -paths, I/O (file handles, ...), strings etc. and tons of [Fiji][fiji] / -[ImageJ2][imagej] convenience wrappers to simplify scripting and reduce -cross-script redundanciees. +paths, I/O (file handles, ...), strings etc. and tons of [Fiji] / [ImageJ2] +convenience wrappers to simplify scripting and reduce cross-script redundancies. Initially this has been a multi-purpose package where a substantial part had been useful in **CPython** as well. However, since the latest Jython release is @@ -25,8 +24,7 @@ Uni Basel`** [update site][imcf_updsite] to your ImageJ installation. The [`pip install`able package][pypi] is probably only useful for two cases: running `pytest` (where applicable) and rendering [HTML-based API docs][apidocs] -using [`pdoc`][pdoc]. Let us know in case you're having another use case 🎪 for -it. +using [pdoc]. Let us know in case you're having another use case 🎪 for it. Developed and provided by the [Imaging Core Facility (IMCF)][imcf] of the Biozentrum, University of Basel, Switzerland. @@ -96,7 +94,7 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") * See the [FluoView_OIF_OIB_OIR_Simple_Stitcher.py][script_fvstitch] script. [imcf]: https://www.biozentrum.unibas.ch/imcf -[imagej]: https://imagej.net +[imagej2]: https://imagej.net [fiji]: https://fiji.sc [jython3]: https://www.jython.org/jython-3-roadmap [sj_maven]: https://maven.scijava.org/#nexus-search;gav~ch.unibas.biozentrum.imcf~~~~ From 6bf98c9a4ff3065f292dcceb4d16eb188929994f Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:24:13 +0100 Subject: [PATCH 04/10] Add missing newline at EOF --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5e27ea3f..504d0bc4 100644 --- a/README.md +++ b/README.md @@ -106,4 +106,4 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") [apidocs]: https://imcf.one/apidocs/imcflibs/imcflibs.html [pdoc]: https://pdoc.dev/ [pypi]: https://pypi.org/project/imcflibs/ -[scijava-1.5.0]: https://maven.scijava.org/#browse/browse:releases:ch%2Funibas%2Fbiozentrum%2Fimcf%2Fpython-imcflibs%2F1.5.0%2Fpython-imcflibs-1.5.0.jar \ No newline at end of file +[scijava-1.5.0]: https://maven.scijava.org/#browse/browse:releases:ch%2Funibas%2Fbiozentrum%2Fimcf%2Fpython-imcflibs%2F1.5.0%2Fpython-imcflibs-1.5.0.jar From f81cbf36d668cad7c889fc71d3587f2fe9103e1a Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:24:20 +0100 Subject: [PATCH 05/10] Automatic formatting --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 504d0bc4..2f338b0c 100644 --- a/README.md +++ b/README.md @@ -87,11 +87,11 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") ### Split TIFFs by channels and slices -* See the [Split_TIFFs_By_Channels_And_Slices.py][script_split] script. +- See the [Split_TIFFs_By_Channels_And_Slices.py][script_split] script. ### Use status and progress bar updates -* See the [FluoView_OIF_OIB_OIR_Simple_Stitcher.py][script_fvstitch] script. +- See the [FluoView_OIF_OIB_OIR_Simple_Stitcher.py][script_fvstitch] script. [imcf]: https://www.biozentrum.unibas.ch/imcf [imagej2]: https://imagej.net From a107d9930c7d6fce9eb59e688b2cef4866d9456f Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:26:45 +0100 Subject: [PATCH 06/10] Update link to new SciJava Nexus version Now using the HTML REST endpoint. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2f338b0c..0a214399 100644 --- a/README.md +++ b/README.md @@ -97,7 +97,7 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") [imagej2]: https://imagej.net [fiji]: https://fiji.sc [jython3]: https://www.jython.org/jython-3-roadmap -[sj_maven]: https://maven.scijava.org/#nexus-search;gav~ch.unibas.biozentrum.imcf~~~~ +[sj_maven]: https://maven.scijava.org/service/rest/repository/browse/releases/ch/unibas/biozentrum/imcf/ [imcf_updsite]: https://imagej.net/list-of-update-sites/ [script_split]: https://github.com/imcf/imcf-fiji-scripts/blob/master/src/main/resources/scripts/Plugins/IMCF_Utilities/Convert/Split_TIFFs_By_Channels_And_Slices.py [script_fvstitch]: https://github.com/imcf/imcf-fiji-scripts/blob/master/src/main/resources/scripts/Plugins/IMCF_Utilities/Stitching_Registration/FluoView_OIF_OIB_OIR_Simple_Stitcher.py From 5cb5e134d101216aa2734963d647b86fc5770f4a Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:29:31 +0100 Subject: [PATCH 07/10] Avoid the deep-link to a specific package version Plus, using the HTML REST interface will hopefully provide a much more stable URL. --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 0a214399..9f73806a 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ following necessary update sites for this package. The **`IMCF Uni Basel`** update-site will supply the necessary `.jar` to run the functions contained in this package, but alternatively, the most up-to-date `.jar` for this package can be always found on the [Scijava Maven -repository][scijava-1.5.0], which links to, for example, the `1.5.0` version of +repository][sj_maven], which links to, for example, the `1.5.0` version of `python-imcflibs`. If you manually download the `.jar` from Scijava, extract the zip folder, and @@ -106,4 +106,3 @@ correct_and_project(raw_image, out_path, model, "Maximum", ".ics") [apidocs]: https://imcf.one/apidocs/imcflibs/imcflibs.html [pdoc]: https://pdoc.dev/ [pypi]: https://pypi.org/project/imcflibs/ -[scijava-1.5.0]: https://maven.scijava.org/#browse/browse:releases:ch%2Funibas%2Fbiozentrum%2Fimcf%2Fpython-imcflibs%2F1.5.0%2Fpython-imcflibs-1.5.0.jar From bbb2611123f88305ac927223834c8fea954d302a Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:41:55 +0100 Subject: [PATCH 08/10] Split installation into standard and devel --- README.md | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 9f73806a..fa042654 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,11 @@ Biozentrum, University of Basel, Switzerland. ## Installation Instructions -### Required Update Sites +Two ways of installing the `imcflibs` package are described here, the "*easy*" +one through the *Fiji Update Sites* and the "*manual*" method using packages +explicitly downloaded from [SciJava Maven][sj_maven]. + +### Alternative 1: Update Sites Installation After a fresh install of [Fiji], navigate to *Help* -> *Update* and in the resulting window, press *Manage Update Sites*. Here, search for and tick the @@ -51,17 +55,21 @@ following necessary update sites for this package. - TrackMate-Weka - TrackMate-MorpholibJ -The **`IMCF Uni Basel`** update-site will supply the necessary `.jar` to run the -functions contained in this package, but alternatively, the most up-to-date -`.jar` for this package can be always found on the [Scijava Maven -repository][sj_maven], which links to, for example, the `1.5.0` version of -`python-imcflibs`. +The **`IMCF Uni Basel`** update-site will always provide the latest compatible +combination of *official*`.jar` file to use this package. + +### Alternative 2: Development Installation + +Alternatively, the most up-to-date `.jar` for this package can be always found +on the [Scijava Maven repository][sj_maven]. Navigate to the `python-imcflibs` +folder, pick the desired version (can also be a pre-release) and download the +contained `.jar` file, e.g. `python-imcflibs-2.0.0.jar`. -If you manually download the `.jar` from Scijava, extract the zip folder, and -place the `.jar` file in the `\jars` folder of your Fiji installation, e.g -`C:\Tools\Fiji.app\jars\`. +Then simply that file in the `\jars\` folder of your Fiji installation, e.g +`D:\Development\Fiji.app\jars\` or `/opt/Fiji.app/jars/`, possibly removing +other versions of the same package from that folder - then (re-)start Fiji. -### Testing Installation +### Installation Testing To check the package's correct installation in Fiji, search for *Script Interpreter* in the Search bar, and type `:lang python`, followed by e.g. From df8ec3dbe6b3de393eced245e6ea03e53e7237c1 Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 12:49:49 +0100 Subject: [PATCH 09/10] Reference development instructions --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index fa042654..081f068d 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,9 @@ Then simply that file in the `\jars\` folder of your Fiji installation, e.g `D:\Development\Fiji.app\jars\` or `/opt/Fiji.app/jars/`, possibly removing other versions of the same package from that folder - then (re-)start Fiji. +If you'd prefer to use the cutting-edge version from GitHub, look into the +[development instructions](DEVELOPMENT.md) for details. + ### Installation Testing To check the package's correct installation in Fiji, search for *Script From 6b01357447c9c9a50d4e4d06e8c8c6a83bbf5b21 Mon Sep 17 00:00:00 2001 From: Niko Ehrenfeuchter Date: Thu, 22 Jan 2026 16:30:09 +0100 Subject: [PATCH 10/10] Some more polishing for install instructions Point out that the listed Update Sites are also required when using a manually downloaded package from SciJava. --- README.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 081f068d..206801c4 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Two ways of installing the `imcflibs` package are described here, the "*easy*" one through the *Fiji Update Sites* and the "*manual*" method using packages explicitly downloaded from [SciJava Maven][sj_maven]. -### Alternative 1: Update Sites Installation +### 🧿 Default: Installation via Update Sites After a fresh install of [Fiji], navigate to *Help* -> *Update* and in the resulting window, press *Manage Update Sites*. Here, search for and tick the @@ -58,14 +58,19 @@ following necessary update sites for this package. The **`IMCF Uni Basel`** update-site will always provide the latest compatible combination of *official*`.jar` file to use this package. -### Alternative 2: Development Installation +### 🏗 Alternative: SciJava Maven Package 👷 -Alternatively, the most up-to-date `.jar` for this package can be always found -on the [Scijava Maven repository][sj_maven]. Navigate to the `python-imcflibs` -folder, pick the desired version (can also be a pre-release) and download the -contained `.jar` file, e.g. `python-imcflibs-2.0.0.jar`. +💡 **IMPORTANT:** 💡 same as for the *default* installation previously +described, you will need to enable **all Update Sites listed above** in your +Fiji as well when using the method described here! -Then simply that file in the `\jars\` folder of your Fiji installation, e.g +The most up-to-date `.jar` (or any other published version, including +pre-releases) for this package can be always found on the [Scijava Maven +repository][sj_maven]. Navigate to the `python-imcflibs` folder, pick the +desired version (can also be a pre-release) and download the contained `.jar` +file, e.g. `python-imcflibs-2.0.0.jar`. + +Then simply that file in the `jars` folder of your Fiji installation, e.g `D:\Development\Fiji.app\jars\` or `/opt/Fiji.app/jars/`, possibly removing other versions of the same package from that folder - then (re-)start Fiji.