Skip to content

compat for new VCS integration#2128

Open
palkerecsenyi wants to merge 11 commits intoinveniosoftware:masterfrom
palkerecsenyi:vcs
Open

compat for new VCS integration#2128
palkerecsenyi wants to merge 11 commits intoinveniosoftware:masterfrom
palkerecsenyi:vcs

Conversation

@palkerecsenyi
Copy link
Member

@palkerecsenyi palkerecsenyi commented Aug 15, 2025

Closes inveniosoftware/invenio-vcs#2


Description

This PR makes the necessary adaptations for compatibility with the new major version of invenio-github, now known as invenio-vcs. This is a working name and is open to discussion: this PR includes the change of name for the module, but it is very easy to update it.

  • In invenio-github, we made frequent access to the JSON dicts directly returned from the GitHub API. To allow for genericisation (is that a word?) a new set of GenericX classes have been created (GenericRepository, GenericRelease, etc.) containing only a small subset of fields that any VCS service can reasonably be expected to return. The contrib implementations are responsible for the mapping from the API response to the generic class. This way, higher-level operations must rely only on the generic data, so this update is most of what has been changed in invenio-rdm-records.
  • The filtering and computation of the license SPDX ID of a repository that was previously fully performed within invenio-rdm-records was very specific to GitHub, so this processing has also been moved to invenio-vcs. It can be implemented for each VCS in accordance with their respective peculiarities.
  • The GITHUB_... config variables have been renamed to VCS_...
  • The directory has been renamed from github to vcs
  • Some other random code cleanups

palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Aug 19, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Oct 14, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Oct 15, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
setup.cfg Outdated
invenio-drafts-resources>=7.0.0,<8.0.0
invenio-records-resources>=8.0.0,<9.0.0
invenio-github>=3.0.0,<4.0.0
invenio-vcs>=4.0.0,<5.0.0
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We still need to make this an optional dependency and ensure we don't crash while importing it if it hasn't been installed.

@palkerecsenyi palkerecsenyi marked this pull request as ready for review October 16, 2025 10:05
@palkerecsenyi palkerecsenyi changed the title WIP: compat for new VCS integration compat for new VCS integration Oct 23, 2025
@palkerecsenyi palkerecsenyi force-pushed the vcs branch 2 times, most recently from 94c0439 to 27f6742 Compare October 31, 2025 10:01
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Oct 31, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Nov 6, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Nov 6, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Nov 11, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Nov 11, 2025
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
palkerecsenyi added a commit to palkerecsenyi/invenio-app-rdm that referenced this pull request Jan 8, 2026
* We are updating `invenio-github` to be a generic package supporting
many VCS providers, not just GitHub. As such, it will be renamed
(currently to `invenio-vcs`).

* The `RDMGitHubRelease` class has been renamed and restructured, so
this must be reflected in `config.py` for continued functionality. No
other changes are needed to this repository at the moment.

* See inveniosoftware/invenio-rdm-records#2128
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Make invenio-github support other VCS providers

1 participant