clij / clicy

GPU-accelerated Image Processing using CLIJ in Icy
https://clij.github.io/clicy
BSD 3-Clause "New" or "Revised" License
2 stars 2 forks source link

Deploy Clicy with Icy plugin system. #1

Closed tinevez closed 4 years ago

tinevez commented 4 years ago

Right now end-users have to manually download, copy and rename the jars of Clicy to their local installation to benefit from it.

What about using Icy plugin system instead? Clicy would then be accessible via Ctrl+S in Icy. http://icy.bioimageanalysis.org/wp-admin/post-new.php?post_type=plugin

haesleinhuepf commented 4 years ago

Hey @tinevez ,

yes! I was so happy when I found out how to use the Icy-Blocks for making CLIJ protocols / workflows! Thus, clij-blocks is waiting for approval 😉 Can you maybe help pushing it through?

image

Cheers, Robert

haesleinhuepf commented 4 years ago

"clicy-blocks" I mean. Confused by my own naming scheme 🤣

tinevez commented 4 years ago

I think I do not have the validation right. Is this what you mean? Let me call for help. @Stephane-D: HEEEELP!

Stephane-D commented 4 years ago

Hello :) What is the problem ? Do you want me to investigate the cliicy blocks plugin ?

Stephane-D commented 4 years ago

Quickly checking the plugin page i can see some issues, first and an important one is that plugin should be delivered into a single JAR file (the '+' button is used to deliver a new version of the plugin). If you require some specific dependencies then you can try to embed them into the JAR file (don't do JAR into JAR, that doesn't work, you need to extract content then repack into a single JAR), or better, deliver dependencies as library plugins for Icy (then you can setup required dependencies on the plugin page).

haesleinhuepf commented 4 years ago

Alright, thanks for the feedback @Stephane-D !

So deploying as a fat jar (or uber-jar) would do the job, right? Are there any other issues? Just curious before I do the context switch ;-)

Thanks for your support!

Cheers, Robert

Stephane-D commented 4 years ago

Yeah a fat JAR should do the job (well not too fat as there is a limit about file upload size i believe ^^). Others aspects is about required fields : image It's important to have a proper version for your plugin (1.0.0.0 for the initial version is a good choice) and also define a minimum required Icy kernel version (i guess you can set it to 1.9.0.0 safely here), changelog is up to you :)

Cheers,

haesleinhuepf commented 4 years ago

Alright @Stephane-D , done!

Let me know if there is any other issue :-)

Thanks for your support!

Cheers, Robert

Stephane-D commented 4 years ago

Hi @haesleinhuepf,

So far it seems all good =) i made some tests and could see all CL jx_ blocks in protocols. I saw you made a small example script, i tried it quickly and got that error:

Intel(R) HD Graphics 620Wrapped java.lang.IllegalArgumentException: Couldn't instantiate converter found from class icy.sequence.Sequence to class net.haesleinhuepf.clij.clearcl.ClearCLBuffer (script#20)

Dunno if that is expected (i opened a simple 2D single channel image). I think it would be nice to have some Protocols examples as well as we have many blocks available and examples would be really useful here :)

Cheers,

Stephane-D commented 4 years ago

By the way, can you publish it by yourself and do you need approvement for that (it's the case for simple post but shouldn't be the case for plugin / script and protocol) ?

haesleinhuepf commented 4 years ago

Hey @Stephane-D ,

thanks for pointing me to the script! It was using an outdated API of CLICY. I had to rename push() to pushSequence() in order make it compatible with CLATLAB and CLIJPY ;-)

I updated the script in the ICY website. http://icy.bioimageanalysis.org/script/gpu-accelerated-image-processing-demo/

I also do have some example protocols ready: https://github.com/clij/clicy/tree/master/src/main/protocols

I would polish them a bit more before I put them in the Icy website. And I would wait for the clicy-blocks to be published before I publish protocols using them.

By the way, can you publish it by yourself and do you need approvement for that (it's the case for simple post but shouldn't be the case for plugin / script and protocol) ?

No, I don't have the rights to do so. I can publish scripts but no plugins. If you could change that, that would be great. That would also minimize workload on your side in the future ;-)

Thanks again for your support!

Cheers, Robert

Stephane-D commented 4 years ago

@haesleinhuepf Ok the review stuff is new, i informed the web admin about it as normally you should not need it for plugin, protocol nor script submission. Glad to see you also have some example protocols, that will be really helpful for users !

In the meantime if your plugin is ready i can validate it of course, just tell me :)

Cheers,

Stephane

haesleinhuepf commented 4 years ago

Sure! Go ahead! Looking forward to try the Icy updater.

Thanks and have a nice weekend!

Cheers, Robert

Stephane-D commented 4 years ago

Done :)

haesleinhuepf commented 4 years ago

Great. Thanks. It's been a pleasure working with you!

@tinevez - I'm happy to close this issue.

Let me know if Icy users have any issues with clij. I'm more than happy to help and to get feedback.

Cheers, Robert

Stephane-D commented 4 years ago

You're welcome ! The new script is working perfectly by the way ! I will let you know if users meet issues with it but it seems to work at least for now, they may contact you on the plugin web page too ;)

Well done and thanks for your nice contribution to Icy =)

Cheers,

haesleinhuepf commented 4 years ago

i informed the web admin about it as normally you should not need it for plugin, protocol nor script submission.

Update: Either your admin changed my rights, or I can update clicy myself. I just did it and it worked nicely.

Stephane-D commented 4 years ago

I think the problem occurs only when adding a new resource. If the resource is already published then you can update it =)