imagej / pyimagej

Use ImageJ from Python
https://pyimagej.readthedocs.io/
Other
474 stars 83 forks source link

Suggestion : remove Labeling dependency #306

Closed b-grimaud closed 5 months ago

b-grimaud commented 6 months ago

This package currently relies on labeling >= 0.1.12.

It, in turns, relies on pillow<10. This constrains installation to Pillow v9.5, which prevents compatibility with Python 3.12 as well as with other popular image handling libraries such as imageio, that also depend on Pillow.

Seeing as Labeling looks essentially abandonned (no update in two years), and consists of two files (less than 400 lines of code), could it be incorporated into pyimagej to free it from this dependency ?

ctrueden commented 6 months ago

@BptGrm Thanks for the report! I opened Labelings/Labeling#17 to ask the current maintainer's preference on how best to proceed. If we don't hear back by the time of the next PyImageJ release (hopefully some time in June), we can fork the labeling code (at least temporarily).

b-grimaud commented 6 months ago

Thanks for the prompt reply !

I can write a tentative PR for the code integration, although I'm not familiar with the best practices for contribution in this repo.

jdeschamps commented 6 months ago

Hi @BptGrm and @ctrueden !

Sorry it took so long! I relaxed the constraints and released a new version: v0.1.14. :tada:

As to integrating Labelings directly into pyImageJ, it is a discussion we could have. Currently, the java version is not used anywhere as far as I can tell, and the python one only in pyimagej (which is so great!). It would be harder to maintain compatibility once the two libraries are not in the same "space".

Currently @BptGrm is right, it is not developed anymore because we don't have any application, I would have to discuss with @fjug to see whether the lab is going in a direction where it might become relevant again.

On the RSE side of things, and in the mean time, I don't mind maintaining it and we have more person power coming up. So don't hesitate to ping me! 😄

ctrueden commented 6 months ago

Thanks, @jdeschamps! Could you please also review and merge conda-forge/labeling-feedstock#5, to make the release available via conda, too? Edit: unless @tomburke-rse responds, you may need to visit https://github.com/orgs/conda-forge/teams/labeling and click the "Request to join" button...?

tomburke-rse commented 6 months ago

Hey everyone! I merged the PR. I am fine with you handling this small library in any way you like, as I am (obviously) no longer maintaining it actively. If you request @jdeschamps I can add you as admin to the team and you can handle it however you see fit if you want.

elevans commented 5 months ago

Thanks @tomburke-rse and @jdeschamps for updating labelings on PyPi and conda-forge! I've been able to successfully run PyImageJ on Python 3.12! Closing out this issue.