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

[Port dspace-8_x] Handles versioning for ORCID publications. #9723

Open
wants to merge 1 commit into
base: dspace-8_x
Choose a base branch
from

Conversation

vins01-4science
Copy link
Contributor

@vins01-4science vins01-4science commented Jul 25, 2024

Please note that this development has been funded by Lyrasis Organization.


main version here: #9718
DSpace 7_x version here: #9722

References

Description

This PR adds improvements to the ORCID synchronization feature.
Whenever an item is versioned, and is queued for synchronization, its reference will be updated in order to have an updated publication on the ORCID side.
Whenever an item is versioned, but its already published, it will be updated.

Instructions for Reviewers

Just try to create a new publication, and leave it inside the ORCID synchronization queue.
Now try to create a new version of it, and check that the pending publication is updated with the new version (you can check it inside the orcid_queue table).
In the same way you should publish the update to the ORCID servers and then try to versionate it again. In this case you should check that the entry inside the orcid_history table has been updated correctly.

List of changes in this PR:
The changes will introduce the followings:

Consumer

  • orcid queue will be populated only by latest version of items
    Versioning
  • Items in orcid queue that are related to an older version will be deleted
  • Older items' version in the orcid history will be updated with the last one in order to have only one entry per-item.

Checklist

  • My PR is created against the main branch of code (unless it is a backport or is fixing an issue specific to an older branch).
  • My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
  • My PR passes Checkstyle validation based on the Code Style Guide.
  • My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
  • My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
  • My PR includes details on how to test it. I've provided clear instructions to reviewers on how to successfully test this fix or feature.
  • If my PR includes new libraries/dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
  • If my PR modifies REST API endpoints, I've opened a separate REST Contract PR related to this change.
  • If my PR includes new configurations, I've provided basic technical documentation in the PR itself.
  • If my PR fixes an issue ticket, I've linked them together.

…cations.

feat:
  - ORCID publications waiting to be published are removed whenever a new version is created
  - ORCID publications already published will be updated with the ref to the last item version
  - ORCID consumer will process only latest item versions, ignoring all the other ones
@vins01-4science vins01-4science added high priority integration: ORCID Related to integration with ORCID identifier system 1 APPROVAL pull request only requires a single approval to merge. authentication: general general authentication issues or new features labels Jul 25, 2024
@tdonohue tdonohue added the bug label Jul 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 APPROVAL pull request only requires a single approval to merge. authentication: general general authentication issues or new features bug high priority integration: ORCID Related to integration with ORCID identifier system
Projects
Status: 🙋 Needs Reviewers Assigned
Development

Successfully merging this pull request may close these issues.

None yet

2 participants