Hey, I run a project testing the reproducibility of GitHub Actions and found that v8.1.1 is not quite reproducible whereas v7.0.11..v8.1.0 were reproducible.
This can be confirmed locally using the following steps:
git clone git@github.com:peter-evans/create-pull-request.git
cd create-pull-request
git checkout v8.1.1
nvm install 24.4.0 # apologies for the non-standard tool use
nvm use 24.4.0 # apologies for the non-standard tool use
npm clean-install
npm run build
git status
which outputs
[...]
HEAD detached at v8.1.1
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: dist/index.js
no changes added to commit (use "git add" and/or "git commit -a")
The diff shows the problem to be minor, seemingly just a formatting mismatch...
const isEventualConsistencyError = (e) => e instanceof request_error_1.RequestError &&
e.status === 422 &&
e.message.includes('Could not resolve to a node');
- const withRetryForNewPr = (fn) => pull.created ? utils.retryWithBackoff(fn, isEventualConsistencyError) : fn();
+ const withRetryForNewPr = (fn) => pull.created
+ ? utils.retryWithBackoff(fn, isEventualConsistencyError)
+ : fn();
// Apply milestone
if (inputs.milestone) {
core.info(`Applying milestone '${inputs.milestone}'`);
However, running npm run format does not resolve the difference.
The problem appears to have been resolved on main, to test main as of writing you can use:
git clone git@github.com:peter-evans/create-pull-request.git
cd create-pull-request
git checkout eec7ab75b2f71ddc8a223341c83a67f6f774c39f
nvm install 24.4.0 # apologies for the non-standard tool use
nvm use 24.4.0 # apologies for the non-standard tool use
npm clean-install
npm run build
git status
so it appears to be a temporary issue. However, to avoid such issues in the feature I'd recommend adding a CI job/check that ensures the build output is up-to-date w.r.t. the current source code and dependencies, e.g. like actions/checkout does.
Hey, I run a project testing the reproducibility of GitHub Actions and found that v8.1.1 is not quite reproducible whereas v7.0.11..v8.1.0 were reproducible.
This can be confirmed locally using the following steps:
which outputs
The diff shows the problem to be minor, seemingly just a formatting mismatch...
const isEventualConsistencyError = (e) => e instanceof request_error_1.RequestError && e.status === 422 && e.message.includes('Could not resolve to a node'); - const withRetryForNewPr = (fn) => pull.created ? utils.retryWithBackoff(fn, isEventualConsistencyError) : fn(); + const withRetryForNewPr = (fn) => pull.created + ? utils.retryWithBackoff(fn, isEventualConsistencyError) + : fn(); // Apply milestone if (inputs.milestone) { core.info(`Applying milestone '${inputs.milestone}'`);However, running
npm run formatdoes not resolve the difference.The problem appears to have been resolved on
main, to testmainas of writing you can use:so it appears to be a temporary issue. However, to avoid such issues in the feature I'd recommend adding a CI job/check that ensures the build output is up-to-date w.r.t. the current source code and dependencies, e.g. like
actions/checkoutdoes.