Skip to content
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

9175 api package #9238

Closed
wants to merge 6 commits into from
Closed

Conversation

poikilotherm
Copy link
Contributor

@poikilotherm poikilotherm commented Dec 20, 2022

What this PR does / why we need it:

As part of our modularization efforts, we will need a package to distribute our interfaces, DTOs and so on to folks implementing extensions. This pull request is about introducing this api package.

  • Discuss API versioning & in-tree vs out-of-tree approach (tagging & workflows)
  • Docs docs docs!
  • Release note!
  • (Not as part of this PR) Create HelloWorld Exporter example
  • Migrate in-tree exporters to not use DatasetVersion anymore
  • Discuss usage of JSON Schemas & potential of creating POJOs from it for DTOs (https://www.jsonschema2pojo.org, support for JSR-367 JSON-B coming)
  • Discuss creating a JSON-B-enabled Dataset / DatasetVersion DTO to move the data between things.
  • Discuss if ModelMapper or going for Java 17 Records can help us (Migrate codebase to Java 17 LTS #8094)
  • Create Github Workflow to push the extension-api package to Maven Central

Which issue(s) this PR closes:

Relates #9175

Special notes for your reviewer:
This is a broken draft for now as long as we do not make the usage of DatasetVersion go away. But it already demonstrates the usage quite well.

Suggestions on how to test this:
TODO

Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Nope.

Is there a release notes update needed for this change?:
Yes. To be written.

Additional documentation:
None yet.

This introduces a new submodule of the Dataverse codebase to ship an Extension API to the community.
…QSS#9175

- Change main export method signature (avoids internal model class DatasetVersion in Extension API)
- Migrate imports
- Cleanup imports order

Note: this commit introduces a BREAKING change, as a few exporters relied on the DatasetVersion parameter!
This will need to be addressed.
@poikilotherm poikilotherm added GDCC: DANS related to GDCC work for DANS HERMES related to @hermes-hmc work on Dataverse code labels Dec 20, 2022
@mreekie
Copy link

mreekie commented Jan 23, 2023

Grooming:

This issue was in the New or No Status columns on the Dataverse Global Backlog Board.
Those columns have been removed.
This issue has been removed from the board

This is NOT a reflection of the priority of these issues.
However, as we have worked on the grooming process, it became clear that these issues which are in columns that are not stewarded will likely not get prioritized or sized.

To get this item onto the Dataverse Global Backlog Board, please reach out to one of the Stewards on the board.
You can also reach out to @mreekie and I can connect you with the steward of the appropriate queue

@poikilotherm poikilotherm deleted the 9175-api-package branch May 12, 2023 10:56
@poikilotherm poikilotherm restored the 9175-api-package branch May 12, 2023 10:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GDCC: DANS related to GDCC work for DANS HERMES related to @hermes-hmc work on Dataverse code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants