From ce258837dfd212878bb834bf272efad6f8afd159 Mon Sep 17 00:00:00 2001 From: Matthew Fishman Date: Wed, 24 Jun 2026 18:30:52 -0400 Subject: [PATCH] Qualify issue references in registration release notes The release-notes subject is the package's squash-merge commit subject, which usually ends in a bare `#123` PR reference. That text is rendered in a foreign repo (the local registry PR, or the General PR via JuliaRegistrator), where `#123` auto-links to that repo's own issue #123 instead of the package's PR. Qualify the reference with the source repo from `GITHUB_REPOSITORY` so it resolves where it was written. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/actions/version-helpers/version_helpers.jl | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/actions/version-helpers/version_helpers.jl b/.github/actions/version-helpers/version_helpers.jl index f61c955..d6a61e6 100644 --- a/.github/actions/version-helpers/version_helpers.jl +++ b/.github/actions/version-helpers/version_helpers.jl @@ -182,6 +182,15 @@ function registrator_metadata(; readchomp(`git -C $package_path log -1 --pretty=%s HEAD`), ['\n', '\r'] => ' ' ) + # The subject becomes release-notes text rendered in a foreign repo (the + # local registry PR, or the General PR via JuliaRegistrator), where a bare + # `#123` from the package's squash-merge subject would auto-link to that + # repo's issue #123 instead of the package's. Qualify it with the source + # repo so the reference resolves where it was written. + repo = get(ENV, "GITHUB_REPOSITORY", "") + if !isempty(repo) + subject = replace(subject, r"(? SubstitutionString("$repo#\\1")) + end if isempty(old_ref) || old_ref == "0000000000000000000000000000000000000000" old_ref = try