refactor(setup-r-deps): delegate spatial setup to install-spatial-deps - #25
Merged
eliotmcintire merged 1 commit intoAug 31, 2026
Merged
Conversation
The two actions carried two copies of the same apt/brew/PROJ_DATA logic. That duplication is exactly how the ubuntugis PPA survived in install-spatial-deps for months after the reusable workflows had rejected it, and it meant the PPA removal in #24 had to be written twice. One implementation now. Referenced as PredictiveEcology/actions/install-spatial-deps@main rather than ./install-spatial-deps: inside a composite action a relative `uses:` resolves against GITHUB_WORKSPACE -- the CALLING repository's checkout -- so the relative form works only when the caller happens to be this repo and breaks every real consumer. The self-test cannot catch that, since there the workspace is this repo and both resolutions coincide. This could not go in #24: pre-merge, @main was still the copy with the PPA and without the version assertion, so the self-test would have exercised stale spatial code and likely failed on the ABI mismatch #24 removes. setup-r-deps: 250 -> 201 lines. Ports setup-r-deps' stronger `timeout --kill-after=60s` into the surviving copy so nothing is lost, and drops the now-obsolete "verified identical by inspection" caveat in the self-test. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012DVjmY3im9Xak7tXLSMGCa
This was referenced Aug 31, 2026
This was referenced Aug 31, 2026
This was referenced Sep 1, 2026
ci(citation): run the CITATION.cff job on ubuntu instead of macOS
PredictiveEcology/reproducible#578
Closed
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #24, which could not include this: pre-merge,
install-spatial-deps@mainwas still the copy carrying the ubuntugis PPA and lacking the version assertion, so wiringsetup-r-depsto it would have made the self-test exercise stale spatial code.What
setup-r-depshad its own copy of the apt/brew/PROJ_DATA logic thatinstall-spatial-depsalready implements. It now calls the action instead. 250 → 201 lines.That duplication is precisely how the ubuntugis PPA survived in
install-spatial-depsfor months after the reusable workflows had rejected it — and why the removal in #24 had to be written twice.Why the full name, not
./install-spatial-depsInside a composite action a relative
uses:resolves againstGITHUB_WORKSPACE— the calling repository's checkout../install-spatial-depswould therefore work only when the caller happens to be this repo, and break every real consumer.Worth flagging that the self-test cannot catch this: there the workspace is this repo, so both resolutions coincide. It is a footgun the CI is structurally blind to, hence the comment in the file.
Carried along
setup-r-deps' strongertimeout --kill-after=60sinto the surviving copy, so the dedup loses nothing.setup-r-deps (macOS)leg now exercises this action's macOS branch directly, so there is one implementation rather than two that happen to match.Known limitation
Because
setup-r-depsreferences the action at@main, thesetup-r-depslegs test main's copy, not the branch's. Changes toinstall-spatial-depsare covered by its own job, which uses the local path.🤖 Generated with Claude Code
https://claude.ai/code/session_012DVjmY3im9Xak7tXLSMGCa