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

Uncouple bridge generation from mappings refresh. #3439

Merged
merged 1 commit into from
Nov 28, 2024

Conversation

gouttegd
Copy link
Collaborator

@gouttegd gouttegd commented Nov 28, 2024

We change the refresh-external-resources target so that it still refreshes (1) the imports, (2) the "local" imports (in fact the local copies of the foreign ontologies used to build Composite Metazoan), (3) the externally maintained mapping sets, (4) the externally maintained bridges; but it does not re-generate the bridge files that are dependent on the refreshed mappings.

The mappings-derived bridges are now expected to be built at release time (and also at QC time). We build them under MIR=false, so they will only be built using the locally available mappings (from the last time they were refreshed), without triggering the download of any remote resource.

Editors/maintainers can still locally trigger the building of the bridge files at any time by explicitly invoking the refresh-bridges target, if they want/need to do so.

This does not change anything for whoever is running the refresh pipeline nowadays: it’s still only a matter of invoking refresh-external-resources. The only difference is that this won't trigger a rebuild of the bridge files.

Two benefits: the “refresh imports” PRs will no longer be polluted by needless changes in the bridge files, in which only the version IRI has changed; the bridge files will always be generated (at least) at the same time as the release, so they will always have a correct version IRI.

Minor cosmetic changes also in this commit:

  • CUSTOM_BRIDGES is renamed to EXTERN_BRIDGES, which reflects better the true nature of those bridges (it does not really matter that they are “custom”, what matters is that they are not generated here).

  • We use MIR=false, rather than IMP=false, to prevent the downloading of any remote resource. This is for consistency with other parts of the Makefile.

closes #3438

@gouttegd gouttegd requested a review from matentzn as a code owner November 28, 2024 13:03
@gouttegd gouttegd self-assigned this Nov 28, 2024
We change the "refresh-external-resources" target so that it still
refreshes (1) the imports, (2) the "local" imports (in fact the local
copies of the foreign ontologies used to build Composite Metazoan),
(3) the externally maintained mapping sets, (4) the externally
maintained bridges; BUT it does not re-generate the bridge files that
are dependent on the refreshed mappings.

The mappings-derived bridges are now expected to be built at release
time (and also at QC time). We build them under MIR=false, so they will
only be built using the locally available mappings (from the last time
they were refreshed), without triggering the download of any remote
resource.

Editors/maintainers can still locally trigger the building of the bridge
files at any time by explicitly invoking the "refresh-bridges" target,
if they want/need to do so.

This does not change anything for whoever is running the refresh
pipeline nowadays: it's still only a matter of invoking
"refresh-external-resources". The only difference is that this won't
trigger a rebuild of the bridge files.

Two benefits: the "refresh imports" PRs will no longer be polluted by
needless changes in the bridge files, in which only the version IRI has
changed; the bridge files will always be generated (at least) at the
same time as the release, so they will always have a correct version
IRI.

Minor cosmetic changes also in this commit:

* "CUSTOM_BRIDGES" is renamed to "EXTERN_BRIDGES", which reflects better
  the true nature of those bridges (it does not really matter that they
  are "custom", what matters is that they are not generated here).

* We use MIR=false, rather than IMP=false, to prevent the downloading of
  any remote resource. This is for consistency with other parts of the
  Makefile.

closes #3438
@gouttegd gouttegd force-pushed the uncouple-mappings-refresh-and-bridge-generation branch from 70efd7c to 9b64085 Compare November 28, 2024 13:17
Copy link
Contributor

@matentzn matentzn left a comment

Choose a reason for hiding this comment

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

I scanned it 12 times but cant find any obvious issues! LGTM!

@gouttegd gouttegd merged commit 8385067 into master Nov 28, 2024
1 check passed
@gouttegd gouttegd deleted the uncouple-mappings-refresh-and-bridge-generation branch November 28, 2024 13:36
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.

Tech: Version IRIs in bridge files
2 participants