-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider making an update site #41
Comments
Also, if there's a new version released, the update site can deal with removing the obsolete version. |
As a note, if the OMERO 5.5-5.6 update site is enabled, all the dependencies that simple-omero-client needs are downloaded. This means that there is nothing to add except the simple-omero-client jar file, if you decide to make an update site. |
Hi @NicoKiaru, @lacan I'm actually planning on making an update site, but I'm very slow... I wanted to add methods to ease dependencies installation for end users (through a pop-up), as mentioned here (back in September...), but I've been busy with other requests in my lab the last couple months. Also, I'm not sure this code is appropriate. |
There is no issue with having a bunch of things in the update site, we had started with one update site per project but it quickly became tedious to do. We use our own server to host our files and connect through the Fiji updates via SFTP when we make updates: but you can request an update site from the fiji wiki, which means you don't have to host the files yourself |
Ok. I've finally updated the library (had not done so in a long time), but I now wonder if some refactoring is not required. I'll ask for the creation of an update site on the forums: would something like "Simple OMERO scripting" be a good name? If I try to make a version 6.0.0 (although it would be more of a version 2.0.0) and upload it before January 31st, would it be acceptable? (I'm already months late though...) |
Well it's a problem independent from the update site, no ? I mean, changing API happens (https://forum.image.sc/t/trackmate-v7-10-0-released-new-tracker-new-gap-closing-algo-and-breaking-api/76095)
Both look fine to me!
Or course, our stuff is already working and it was just a request to simplify my life! And if one day you have the recipe for not being a few months late, late (sic) me know because I would need it badly. |
So this should end up on the "OMERO" Fiji update site (soon).
The last Github Action generated the following Javadoc, but I may make the "Rectangular" interface an extension of "Shape" instead. Would these changes be too much? |
Hi @Rdornier , @NicoKiaru I've changed quite a few things (in my development branches), and most notably improved performance for saving ROIs: our code used to only save ROIs one by one instead of saving them all at once (saving 1000 one by one takes 1 minute, while it takes 3 seconds to do them all at once). I still need to rework the Folders a bit, because I noticed it was not properly handled, and while I'm there, I'd like to improve the screen/containers hierarchy. For that, I'd like your opinion, if possible. I wanted to have "getParents/getChildren" methods, but I find it hard to implement, (because of the "fixed" nature of the structures), so would it be acceptable to have two interfaces (for screens and containers) that declare methods to retrieve all the objects from any level linked to the current object? What I mean by this is that I could make a "Container" interface, implemented by Projects, Datasets and Images, which would give them all: The problem would then be how to handle "same level" objects (like calling Similarly, an "HCS" interface, implemented by Screens, Plates, PlateAcquisitions, Wells, WellSamples and Images (again) could be declared. I'm also thinking of refactoring the packages, to better mirror the OME model: https://github.com/GReD-Clermont/simple-omero-client/tree/refactor-packages/src/main/java/fr/igred/omero |
Hello @ppouchin, Great to see simple-omero-client evolving !
I do not see anything that goes against. I think it is indeed a good idea to have directly access to parent project / screen from the image level.
Yes, I think returning the object itself could be good. For images, returning the images within the filset is indeed a bit odd. For that case, I would rather add a method In this implementation way, Images will have to implement "HCS" and "container" interfaces.
I just have a comment on that. I do not really understand why the "core" folder in named like that for all classes dealing with images and image-related objects. As you said, it is mirrorred from the OME model but I would rather put "images" instead. Regarding your post from Jan.27, everything looks good to me. I just wonder if API changes and client split will affect too much the simple and easy usage of handling data, which is a strength of simple-omero-client.
What is the purpose of getting them from the browser interface ? Is it to find all keys that have already been used to avoid creating an identical key but rather to use an existing one ? I unterstand that
I think the changes are ok as long as you release them under 6.x.x version because it may break all scripts based on the previous release.
The link on "javadoc" points to a zip file to download. Is that intentional ? |
Thank you for your reply!
Yes, I uploaded an attachment to the comment, but I've now put the API for my latest experiment on the API website:
In terms of use, it should remain the same. There's only 1 concrete class If someone wants to implement these interfaces in classes wrapping Gateway facilities, it is possible too.
These considerations come, for me, from the development of the macro extensions for ImageJ:
FYI, there's actually a
Finally, I'm not sure how to name these interfaces (HCSLinked?), but We'd thus have 3 interfaces:
I'm wondering if these interfaces even need to be generic (by inheriting from RemoteObject to return the DataObject they contain) or not...
I'll think about that. It would make sense.
I think any kind of "Annotation" can be shared in Read-Annotate groups. For me, it's mostly to find all MapAnnotations which contain a given key, or a specific key-value pair, that can then be used to retrieve other objects (for example, using
The aim is indeed to make it 6.0.0! |
Hello @ppouchin,
Do you plan to make an update site with the OMERO simple client ? I know the installation is easy with a single jar, but with an update site it's possible to install it from the command line, and this would make my life easy with an installer script I wrote:
https://github.com/BIOP/biop-bash-scripts/blob/main/install_fiji_update_sites.sh
Thanks again for this super nice repo!
The text was updated successfully, but these errors were encountered: