jic-dtool / dservercore

Given a dataset UUID returns a URI to where the dataset is stored
MIT License
4 stars 5 forks source link

Rebranded dserver, refactored REST API #57

Closed jotelha closed 5 months ago

jotelha commented 8 months ago

This PR picks up https://github.com/jic-dtool/dtool-lookup-server/pull/56 again.

The sole fork now lives at https://github.com/livMatS/dserver, I have archived any dserver-related repos on my personal jotelha account. Once we merge, it will be relatively easy to replace livMatS in the whole repo with jic-dtool or whatever the organization will be called then.

Everything has been rebranded from dtool-lookup-server to dserver.

Major modifications and the rationale behind them are outlined briefly in the changelog.

You see the openapi docs at https://demo.dtool.dev/lookup/doc/swagger, as usual with many mock datasets and testable with a token generated with

curl --insecure -H "Content-Type: application/json"  \
  -X POST -d '{"username": "testuser", "password": "test_password" }'  \
  https://demo.dtool.dev/token

After discussion with Tjelvar on 28 Feb 2024, decided to first submit full manuscript unaltered to PLOS ONE. Then, if PLOS ONE permits, we also submit the dserver repository to JOSS for code review shortly after. We mention this intention in the cover letter to PLOS ONE. I suspect there will be no objection, as PLOS review focuses on the manuscript only without rigorous code review (see https://journals.plos.org/plosone/s/submission-guidelines#loc-methods-software-databases-and-tools and https://journals.plos.org/plosone/s/materials-software-and-code-sharing) , while JOSS does the opposite, the scopes don't overlap.

For the PLOS submission, not much work left:

For JOSS submission, we need to

We decided NOT to

jotelha commented 7 months ago

We decided on a few details.

@tjelvar-olsson does that sum up the technical decisions of our conversation yesterday accurately?

There are a few follow-up ideas I would like to discuss.

jotelha commented 7 months ago

@tjelvar-olsson Another thought: what about rebranding dtool_lookup_server repo & PyPI package to dservercore in analogy to dtoolcore? I have had rebranded most of the livMatS-side ecosystem and forks already at https://github.com/livMatS to dserver-this and dserver-that, and I think the names are better because shorter for most repositories, e.g. dserver-retrieve-plugin-mongo or dserver-notification-plugin instead of the lengthy dtool-lookup-server-retrieve-plugin-mongo or dtool-lookup-server-notification-plugin, and I suspect the only conflict on PyPI would be the dserver package.

jotelha commented 7 months ago

@tjelvar-olsson, to have the documentation deployment workflow run through, I think you migh have to modify some permissions on the repository, it runs fine for the livMatS fork, but it fails with

Branch "main" is not allowed to deploy to github-pages due to environment protection rules.

here. I don't know, however, what exactly to tune. The jic-dtool/dtool-lookup-server pages settings that I can access look like this, image while the livMatS/dserver pages settings look like this, image Look pretty similar to me.

jotelha commented 7 months ago

@tjelvar-olsson, to have the documentation deployment workflow run through, I think you migh have to modify some permissions on the repository, it runs fine for the livMatS fork, but it fails with

Branch "main" is not allowed to deploy to github-pages due to environment protection rules.

here. I don't know, however, what exactly to tune. The jic-dtool/dtool-lookup-server pages settings that I can access look like this, image while the livMatS/dserver pages settings look like this, image Look pretty similar to me.

I think it will likely work as soon as merged. The default branch on the livMatS fork is "main", and the default branch on the jic-dtool repo is master. I think the deploy error

Branch "main" is not allowed to deploy to github-pages due to environment protection rules.

arises due to that fact . Would you want to switch default branch from "master" to "main" as well?