These are chat archives for fiji/fiji

18th
Nov 2018
Curtis Rueden
@ctrueden
Nov 18 2018 02:55
@hanslovsky I released scyjava 0.1.0 on PyPI. If you are able to update imglyb to use it, that would be really helpful for me in updating imagej.py to use this whole stack. Let me know if things not being on conda is an obstacle. If it is a problem, we could create a scijava conda channel. I am reluctant to submit things to conda-forge because they have hundreds of open PRs.
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 13:38

If you know where the best place to set PYJNIUS_JAR would be, let me know. I am not sure how it was getting set with the previous way things were organized.

Up to the user or set automatically in the pyjnius conda package.

Let me know if things not being on conda is an obstacle.

It should not be.

If it is a problem, we could create a scijava conda channel

I don't think that is necessary and we should probably either avoid that or put all my packages from my conda channel into that channel, as well. People have to add two channels (conda-forge and my channel) to intsall my software, adding another one would just create potential issues when installing software, especially since the order in which the channels are specified matters (afaik).

I am reluctant to submit things to conda-forge because they have hundreds of open PRs.

I am reluctant to submit things to conda-forge because they have hundreds of open PRs.

Then we should create our own PR as soon as possible, so it is in the queue already, no?

Philipp Hanslovsky
@hanslovsky
Nov 18 2018 13:51

If you are able to update imglyb to use it

I'll try to find some time before the holidays

Philipp Hanslovsky
@hanslovsky
Nov 18 2018 14:26
@ctrueden Actually, I just checked imglyb master, and the only occurence of jrun is in the readme. It should be using scyjava on anything else already
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 15:40
Als, check out https://github.com/hanslovsky/conda-build-scripts if you need inspiration for meta.yamls for scyjava/jgo/(imglyb)
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 15:51
Have scyjava and imglyb on my conda channel now.
Curtis Rueden
@ctrueden
Nov 18 2018 17:56
@hanslovsky Last night I pushed a new branch to imagej/imagej.py called scyjava; it has a Jupyter notebook illustrating the issue with the current imglyb.
It does work, but a warning is issued about the JVM already being initialized.
I did not have time to dig in last night, but I am guessing that both scyjava and imglyb want to initialize Java upon import?
Oh, it is possible everything from the scyjava branch of imglyb already works, though... I may have forgotten to do a local install from that branch before testing.
I do not have much time today to work on this, unfortunately. And Monday + Tuesday I have to work on I2K talk slides with @tpietzsch and @dietzc. But I will try to find some time to do more testing and so forth. I need to get it all working for imagej.py master and a new release, by end of the month.
@hanslovsky Thank you for releasing scyjava to your conda channel. I am fine with leaving everything on your conda channel for now, and not making a scijava channel, in favor of targeting conda-forge soon.
But I do not have time immediately to learn about deploying to conda-forge—I took a look at the instructions and they are too complicated for me to grok in such a constrained time-frame. :-(
I'm sure it's fine once we get the ball rolling on one of them—the rest are the same process.
Hadrien Mary
@hadim
Nov 18 2018 18:04
@ctrueden I have already submitted various packages to conda-forge. It's actually not that complicated since you only need to create a PR to https://github.com/conda-forge/staged-recipes and then wait/ask for a review. I you tell me what you want to have in conda-forge I can submit PRs today.
Curtis Rueden
@ctrueden
Nov 18 2018 18:08
@hadim That would be amazing! I will take you up on that!
The packages I'd like to see on conda-forge are: jgo, scyjava, imglyb, imagej. I know that jgo and scyjava are ready now. The imglyb project might be ready (@hanslovsky knows). The imagej python package will be ready within a few more days.
Hadrien Mary
@hadim
Nov 18 2018 18:12
Ok. WIll submit PRs soon. Is everything on PyPi? Conda forge devs prefer to pull sources from pypi instead of GH.
https://pypi.org/project/imagej (but I want to push a new release of this before adding to conda-forge)
For ImgLyb, I would be happy to upload it to pypi as soon as @hanslovsky gives the OK.
Now the question is do we need/want to add Java as a conda forge dep to jgo?
Oh I just realized pyjnius depends on openjdk so everything is fine.
Curtis Rueden
@ctrueden
Nov 18 2018 18:46
Wow @hadim you rock. :guitar: Thank you.
Hadrien Mary
@hadim
Nov 18 2018 18:47
It can take sometime before they are all merged since they are all dependent from each other. We first need to get jgo merged and then take care of the others one.
Do you want to post a message on conda-forge/conda-forge.github.io#590 about it? This could speedup the review process (which can be long sometime...).
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 21:01
Whoa, thanks @ctrueden and @hadim that looks awesome! I added imglyb to pypi: https://pypi.org/project/imglyb/
I will add a README etc in the future but that should work for now.
Do you know why the conda-forge folk prefer to fetch from pypi instead of github? They could also just fetch the tar balls for the appropriate release
Hadrien Mary
@hadim
Nov 18 2018 21:06
I think it's because a repository on GH could deleted or the tags being forced pushed more easily than on pypi.
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 21:06
gotcha
Hadrien Mary
@hadim
Nov 18 2018 21:06
But I don't know the exact reason to be honest (a conda forge dev told me that long time ago).
Philipp Hanslovsky
@hanslovsky
Nov 18 2018 22:48

It does work, but a warning is issued about the JVM already being initialized.

As you said, this is probably irrelevant. Maybe imglyb gets imported multiple times. For now, we can just live with the warning but in the future it might be nice to add a check in imglyb/__init__.py to see if imglyb has been imported already, and do not show the warning if appropriate.