rucio / jupyterlab-extension

Rucio Jupyterlab plugin (GSOC Project)
Apache License 2.0
6 stars 9 forks source link

Add filters in DID search #36

Open ftorradeflot opened 1 month ago

ftorradeflot commented 1 month ago

The DID search in the jupyterlab extension only takes into account three parameters: name, scope and type.

It would be useful to be able to filter the DIDs by user-defined metadata. This could be done by adding an additional "filters" parameter in the DID search and forwarding it to the "filters" argument in the /dids/{scope}/dids/search REST API endpoint that relies on rucio.core.did.list_dids method.

The "filters" argument is not listed in the documentation of the REST API method, but it seems to be there when looking into the underlying code

An effort to implement this feature has been started in this fork

GeorgySk commented 1 month ago

Hi, all!

The author of the fork here. You can find a prototype of the interface located here: link.

As I've mentioned previously on the Mattermost, I've been trying to integrate this interface in the extension but I've been having some issues with it. It seems that the functionality that should fire after clicking the newly introduced button is simply not there.

After more digging, I discovered to my surprise that now I cannot even remove the button... It's just stuck there and even removing the code associated with it doesn't do anything. I have checked if the extension gets built correctly, I've also checked the build directory and the timestamps of the newly generated files, and I've checked the source code in the rebuilt Docker container to see if it gets updated correctly. Nothing so far points me to the source of the issue. I thought that it could be a browser caching issue but opening the JupyterLab in an incognito mode shows that the button is still there. Baffling. I'm sure I'm making a silly mistake somewhere but I cannot comprehend what it is at the moment.

Any insights on this issue are welcome.

P.S.: As I was advised, I've rebased my fork onto the master branch of this fork made by @garciagenrique.

GeorgySk commented 1 month ago

Ok, I've figured it out. It was a blunder from my side. A typo in the rucio-jupyterlab Docker image name (at some point I've started tagging it as rucio_jupyterlab for some reason). I can advance now to adding the filtering functionality itself, and I'll also have to do some polishing of the interface as the styles are all over the place.