cherry-picking Nektos Act commits #678

Closed
opened 2025-07-08 14:28:41 +00:00 by earl-warren · 29 comments
Contributor
No description provided.
Author
Contributor

TL;DR: Commits that may be worth looking into at this time:


The commits from Nektos ACT that may not yet be in this soft fork are https://github.com/nektos/act/compare/v0.2.59...v0.2.79 (211). I assume @achyrva this is the list you work on. Out of those the majority are upgrades which can be discarded because they are now managed via renovate.

The last time Forgejo ACT was in sync with Nektos ACT was in sync was March 2024 with v0.2.59 which was a series of commit on top of on top of Gitea ACT v0.259.1.

Gitea ACT v0.260.0 however was hard pushed and trashed all commits down to a9298d936c5265461dd8f6322961232b08fc6d12, three years ago. And applied ~100 commits on top of that. IIRC the motivation was that there were too many regressions introduced by cherry-picks from Nektos ACT that did not receive proper review, but maybe there were other reasons. Whatever they were, they did not cause issues for the Forgejo runner. In conclusion I think this is not worth digging into.

The commits from Gitea ACT that may be of interest to the Forgejo ACT for are https://gitea.com/gitea/act/compare/v0.260.0...v0.261.6 (29).

TL;DR: Commits that may be worth looking into at this time: - Nektos ACT - https://github.com/nektos/act/compare/v0.2.59...v0.2.79 - [see the curated list](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-45940) - Gitea ACT - https://gitea.com/gitea/act/compare/v0.260.0...v0.261.6 - [see the curated list](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-47702) --- The commits from Nektos ACT that may not yet be in this soft fork are https://github.com/nektos/act/compare/v0.2.59...v0.2.79 (211). I assume @achyrva this is the list you work on. Out of those the majority are upgrades which can be discarded because they are now [managed via renovate](https://code.forgejo.org/forgejo/act/issues/47). The last time Forgejo ACT was in sync with Nektos ACT was in sync was [March 2024 with v0.2.59](https://code.forgejo.org/forgejo/act/pulls/32) which was a series of commit on top of on top of [Gitea ACT v0.259.1](https://gitea.com/gitea/act/releases/tag/v0.259.1). [Gitea ACT v0.260.0](https://gitea.com/gitea/act/releases/tag/v0.260.0) however was [hard pushed](https://gitea.com/gitea/act/compare/v0.259.1...v0.260.0) and trashed all commits down to [a9298d936c5265461dd8f6322961232b08fc6d12](https://gitea.com/gitea/act/commit/a9298d936c5265461dd8f6322961232b08fc6d12), three years ago. And applied ~100 commits on top of that. IIRC the motivation was that there were too many regressions introduced by cherry-picks from Nektos ACT that did not receive proper review, but maybe there were other reasons. Whatever they were, they did not cause issues for the Forgejo runner. In conclusion I think this is not worth digging into. The commits from Gitea ACT that may be of interest to the Forgejo ACT for are https://gitea.com/gitea/act/compare/v0.260.0...v0.261.6 (29).
Author
Contributor

I noticed https://github.com/actions-oss exists while reading this comment from the primary author of Nektos ACT from January 2025.

I'm currently moving my resources to other projects that are less stale, closed a couple of my PR's here already.

Eventually considering to hard fork to github.com/actions-oss (might change the name as well) and provide further updates there.

If you want I can invite you to actions-oss, single owner projects like nektos/act are error prone.

There has been a few releases there but no stars on the main repository which is telling in terms of adoption in the GitHub context.

To be followed in any case.

I noticed https://github.com/actions-oss exists while reading [this comment](https://github.com/nektos/act/pull/2552#issuecomment-2600809205) from the primary author of Nektos ACT from January 2025. > I'm currently moving my resources to other projects that are less stale, closed a couple of my PR's here already. > > Eventually considering to hard fork to github.com/actions-oss (might change the name as well) and provide further updates there. > > If you want I can invite you to actions-oss, single owner projects like nektos/act are error prone. There has been a few releases there [but no stars on the main repository](https://github.com/actions-oss/act-cli) which is telling in terms of adoption in the GitHub context. To be followed in any case.
Author
Contributor

Browsing the list of changes in Nektos ACT - https://github.com/nektos/act/compare/v0.2.59...v0.2.79

I came up with the following list (out of 211, excluding those cherry-picked already). The list is loosely (i.e. non consistently) updated to remove the commits cherry-picked after 2 July 2025 - the date this list was compiled.

Legend:

  • 🟨 reusable workflow related
  • 🟩 artifact v4 related
  • skip
  • 🍒 worth cherry-picking
  • ported to Forgejo runner
  • 💡unsure if it is worth picking, needs thinking

  • 0bc47aea * added info log when container image platform mismatched (#3225) #826
  • 7c7b383c * fix: post step failure is job failure (#5297) - tests depend on self-hosted and the implementation is different in the runner
  • 4ba1c2bd * feat: --validate and --strict (#2717) - workflow schema validation can be in strict mode or not forgejo/act#180
  • d8506bfa * fix: valueMasker concurrent map write (#5026) #825 that has no impact on the runner value masking logic because it is only applied to an entry right before it is written and not before calling the hook (Fire)
  • 67e332e8 * fix: GITHUB_ENV and GITHUB_OUTPUT allow larger lines (#5028) 💡raising the scanner to 1GB may have performance consequences?
  • 1154f0d9 * feat: log parsed commands and step summary (#2761) #824
  • 16b86a64 * feat: add cli option to set concurrent jobs count (#2762) the CLI is not used
  • bd4bc99e * feat: add models permission level for AI inference responses (#2767) AI is not in scope for Forgejo just yet
  • bea04dd8 * feat: Support graceful job step cancellation (#2714) already in Forgejo in the runner
  • 517c3ac4 * fix: reporting fetch failure as job error and log the error (#2715) #823
  • 0098044d * Report the elapsed time for each workflow step (#2700) it belongs to Forgejo
  • c6a77549 * Disable "unable to get git repo" when none exists. (#2495) #822
  • 404620bd * Add tests against reading config files (#2682) the CLI is not used
  • c956febf * add test workflows to cmd pkg (#2665) the CLI is not used
  • 7fec28d6 * fix: secret file reading (#45) (#2664) the CLI is not used
  • cb26fd86 * Use gh auth token for default GITHUB_TOKEN secret (#2651) the CLI is not used
  • 51147d45 * Incorporate Debug, Warn, Error logging. (#2490) && 60a499da * refactor logger 💡 PR it would simplify some of the guessing in the runner Reporter but it will also need a PR there otherwise it will break the logic
  • e6366849 * Detect available flags for extensions (#2557) the CLI is not used
  • be516017 * fix: parse_env_file discard utf8 bom (#2638) powershell & windows specific
  • 9dd0854a * fix: Added support for dereferenced map properties (#2635) #821 (see also https://github.com/nektos/act/issues/2591)
  • deea8ec8 * fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#2502) 🟨
  • fe017a10 * feat: Adding in logic to check if act needs to be downloaded (#2575) act install script
  • b4ef6fb4 * fix: short sha has at least four digits (#2540) #820
  • e6b5062e * fix: amd64 arch to X64 (#2580) #819
  • e3b4e3ad * add test for listartifacts v4 filter (#2507) 🟩
  • 2c0e3fea * fix: tests with validation errors were skipped (#2496) this was already fixed / modified in the Forgejo runner
  • f77a443e * fix: merge-multiple artifacts were broken (#2505) 🟩
  • 5ffec84f * fix: if condition in composite action misbehaves (#2473) #818
  • a34d9c6d * run_context: add GITHUB_RUN_ATTEMPT (#2458) #817
  • be89cbcf * Fix install sh usage (#2454) act install script
  • 2e117a4d * bug/issue #2448 - manage special bash options when no shell is defined (#2449) this is a hack and needs to be done differently - see also #150
  • 013c0d4e * feat: generate a manual page automatically with cobra/doc (#2352)
  • 32b6bb7a * fix: artifact v4 upload above 8MB (#2402) 🟩
  • 60a2fed3 * fix GOOS parsing to match expected GHA RUNNER_OS values (#2422) already in Forgejo
  • cd8b710f * remove double negation in --help (#2405) the CLI is not used
  • 570ccf39 * Fix #2363. Add /pre- and /post-entrypoint handling (#2394) 💡 no testing
  • 3c7eda7f * act/avoid-slash-in-actor fix: docker stub and add a test for this (#2355) forgejo/act#146/files
  • a1a96da1 * fix: changed location of actrc in info message (#2373) the CLI is not used
  • 2ad5ff74 * fix: add missing service container health check (#2354) #805
  • e4607fc7 * fix: skip service container for empty image (#2281) forgejo/act#162
  • b5ad3c4a * fix: composite action input pollution (#2348) #818 (obsolete forgejo/act#161)
  • b917ecc1 * fix: update reusable workflow input handling (#2349) 🟨 forgejo/act#160
  • 55a8f9af * Add riscv64 binary release (#2350) ACT distribution
  • e1e5671e * Actions Artifacts v4 backend (#2224) 🟩
  • 843cd94c * Add codespell support (config, workflow to detect/not fix) and make it fix few typos (#2296) forgejo/act#153
  • 8cdc3fcb * Update action.yml (#2293) GitHub tests
  • 89e3c146 * fix: favor command-line over files (#2274) the CLI is not used
  • e1cd7c91 * fix: logo and demo asset urls (#2226) costmetic
  • ac6a465e * feat: Test writing remote Actions locally (#2155) 💡 could be implemented in the runner forgejo/act#125
  • f2e65e1d * fix: Rootless error concerning /var/run/docker.sock (#2181) the CLI is not used
  • 12c0c427 * feat: correctly use the xdg library, which has the side effect to fix the config survey (#2195) the CLI is not used

  • 🟦 cache related

A new cache was introduced August 2023 and is not used by Forgejo. See also Gitea ACT cache related commits.

Browsing the list of changes in Nektos ACT - https://github.com/nektos/act/compare/v0.2.59...v0.2.79 I came up with the following list (out of 211, excluding those cherry-picked already). The list is loosely (i.e. non consistently) updated to remove the commits cherry-picked **after** 2 July 2025 - the date this list was compiled. Legend: - 🟨 reusable workflow related - 🟩 artifact v4 related - ⏩ skip - 🍒 worth cherry-picking - ✅ ported to Forgejo runner - 💡unsure if it is worth picking, needs thinking --- - 0bc47aea * added info log when container image platform mismatched (#3225) ✅ https://code.forgejo.org/forgejo/runner/pulls/826 - 7c7b383c * fix: post step failure is job failure (#5297) - ⏩ tests depend on self-hosted and the implementation is different in the runner - 4ba1c2bd * feat: `--validate` and `--strict` (#2717) - ✅workflow schema validation can be in strict mode or not https://code.forgejo.org/forgejo/act/pulls/180 - d8506bfa * fix: valueMasker concurrent map write (#5026) ✅ https://code.forgejo.org/forgejo/runner/pulls/825 that has no impact on the runner value masking logic because it is only applied to an entry [right before it is written](https://github.com/sirupsen/logrus/blob/70b809335b84c8f42c95060a35f86e50db7bb156/entry.go#L288-L300) and not before calling the hook (Fire) - 67e332e8 * fix: GITHUB_ENV and GITHUB_OUTPUT allow larger lines (#5028) 💡raising the scanner to 1GB may have performance consequences? - 1154f0d9 * feat: log parsed commands and step summary (#2761) ✅ https://code.forgejo.org/forgejo/runner/pulls/824 - 16b86a64 * feat: add cli option to set concurrent jobs count (#2762) ⏩ the CLI is not used - bd4bc99e * feat: add models permission level for AI inference responses (#2767) ⏩ AI is not in scope for Forgejo just yet - bea04dd8 * feat: Support graceful job step cancellation (#2714) ⏩ already in Forgejo in the runner - 517c3ac4 * fix: reporting fetch failure as job error and log the error (#2715) ✅ https://code.forgejo.org/forgejo/runner/pulls/823 - 0098044d * Report the elapsed time for each workflow step (#2700) ⏩ it belongs to Forgejo - c6a77549 * Disable "unable to get git repo" when none exists. (#2495) ✅ https://code.forgejo.org/forgejo/runner/pulls/822 - 404620bd * Add tests against reading config files (#2682) ⏩ the CLI is not used - c956febf * add test workflows to cmd pkg (#2665) ⏩ the CLI is not used - 7fec28d6 * fix: secret file reading (#45) (#2664) ⏩ the CLI is not used - cb26fd86 * Use gh auth token for default GITHUB_TOKEN secret (#2651) ⏩ the CLI is not used - 51147d45 * Incorporate Debug, Warn, Error logging. (#2490) && 60a499da * refactor logger 💡 [PR](https://github.com/nektos/act/pull/2552) it would simplify some of the guessing in the runner Reporter but it will also need a PR there otherwise it will break the logic - e6366849 * Detect available flags for extensions (#2557) ⏩ the CLI is not used - be516017 * fix: parse_env_file discard utf8 bom (#2638) ⏩ powershell & windows specific - 9dd0854a * fix: Added support for dereferenced map properties (#2635) ✅ https://code.forgejo.org/forgejo/runner/pulls/821 (see also https://github.com/nektos/act/issues/2591) - deea8ec8 * fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#2502) 🟨 - fe017a10 * feat: Adding in logic to check if act needs to be downloaded (#2575) ⏩ act install script - b4ef6fb4 * fix: short sha has at least four digits (#2540) ✅ https://code.forgejo.org/forgejo/runner/pulls/820 - e6b5062e * fix: amd64 arch to X64 (#2580) ✅ https://code.forgejo.org/forgejo/runner/pulls/819 - e3b4e3ad * add test for listartifacts v4 filter (#2507) 🟩 - 2c0e3fea * fix: tests with validation errors were skipped (#2496) ⏩ this was already fixed / modified in the Forgejo runner - f77a443e * fix: merge-multiple artifacts were broken (#2505) 🟩 - 5ffec84f * fix: if condition in composite action misbehaves (#2473) ✅ https://code.forgejo.org/forgejo/runner/pulls/818 - a34d9c6d * run_context: add GITHUB_RUN_ATTEMPT (#2458) ✅ https://code.forgejo.org/forgejo/runner/pulls/817 - be89cbcf * Fix install sh usage (#2454) ⏩ act install script - 2e117a4d * bug/issue #2448 - manage special bash options when no shell is defined (#2449) ⏩ this is a hack and needs to be done differently - see also https://code.forgejo.org/forgejo/runner/issues/150 - 013c0d4e * feat: generate a manual page automatically with cobra/doc (#2352) ⏩ - 32b6bb7a * fix: artifact v4 upload above 8MB (#2402) 🟩 - 60a2fed3 * fix GOOS parsing to match expected GHA RUNNER_OS values (#2422) ⏩ already in Forgejo - cd8b710f * remove double negation in --help (#2405) ⏩ the CLI is not used - 570ccf39 * Fix #2363. Add /pre- and /post-entrypoint handling (#2394) 💡 no testing - 3c7eda7f * act/avoid-slash-in-actor fix: docker stub and add a test for this (#2355) ✅ https://code.forgejo.org/forgejo/act/pulls/146/files - a1a96da1 * fix: changed location of actrc in info message (#2373) ⏩ the CLI is not used - 2ad5ff74 * fix: add missing service container health check (#2354) ✅ https://code.forgejo.org/forgejo/runner/pulls/805 - e4607fc7 * fix: skip service container for empty image (#2281) ✅ https://code.forgejo.org/forgejo/act/pulls/162 - b5ad3c4a * fix: composite action input pollution (#2348) ✅ https://code.forgejo.org/forgejo/runner/pulls/818 (obsolete https://code.forgejo.org/forgejo/act/pulls/161) - b917ecc1 * fix: update reusable workflow input handling (#2349) 🟨 https://code.forgejo.org/forgejo/act/pulls/160 - 55a8f9af * Add riscv64 binary release (#2350) ⏩ ACT distribution - e1e5671e * Actions Artifacts v4 backend (#2224) 🟩 - 843cd94c * Add codespell support (config, workflow to detect/not fix) and make it fix few typos (#2296) ✅ https://code.forgejo.org/forgejo/act/pulls/153 - 8cdc3fcb * Update action.yml (#2293) ⏩ GitHub tests - 89e3c146 * fix: favor command-line over files (#2274) ⏩ the CLI is not used - e1cd7c91 * fix: logo and demo asset urls (#2226) ⏩ costmetic - ac6a465e * feat: Test writing remote Actions locally (#2155) 💡 could be implemented in the runner https://code.forgejo.org/forgejo/act/pulls/125 - f2e65e1d * fix: Rootless error concerning `/var/run/docker.sock` (#2181) ⏩ the CLI is not used - 12c0c427 * feat: correctly use the xdg library, which has the side effect to fix the config survey (#2195) ⏩ the CLI is not used --- - 🟦 cache related A [new cache was introduced August 2023](https://github.com/nektos/act/pull/1913) and is not used by Forgejo. See also [Gitea ACT](https://gitea.com/gitea/act/compare/v0.260.0...v0.261.6) cache related commits. - a8ac5293 * fix: wrap subpath in '' (#https://github.com/nektos/act/pull/2754) (#https://github.com/nektos/act/pull/2755) ⏩ cosmetic only - 49710c85 * fixes #2689 Make the external url of cache server configurable if necessary (#https://github.com/nektos/act/pull/2690) ⏩ in the Forgejo runner, cache is implemented differently as well as specifying the URL of an optional external cache (via the config file) - 95e411da * fix: remote docker actions new action cache and dry run mode (#https://github.com/nektos/act/pull/2513) ⏩ the new action cache is not used by the Forgejo runner - 16bdce5f * feat: GoGitActionCache shallow fetch (#https://github.com/nektos/act/pull/2677) ⏩ the new action cache is not used by the Forgejo runner - 9142ed9b * feat: improve new action cache logging (#https://github.com/nektos/act/pull/2474) ⏩ the new action cache is not used by the Forgejo runner - f825e42c * fix: cache adjust restore order of exact key matches (#https://github.com/nektos/act/pull/2267) ✅ 017db5edaede48644ba2c156be7bc6991cec1fb2 - b9382a2c * Support overwriting caches (#https://github.com/nektos/act/pull/2265) ✅ https://code.forgejo.org/forgejo/runner/commit/b0c54edc78398984e527420572bac4020cbd4a0a - 119ceb81 * fix: rootless permission bits (new actions cache) (#https://github.com/nektos/act/pull/2242) ✅ https://code.forgejo.org/forgejo/act/pulls/122 - 5601fb0e * refactor: simpilfy go-git cache (#https://github.com/nektos/act/pull/2208) ✅ https://code.forgejo.org/forgejo/act/pulls/117 - 852959e1 * feat: offline mode for new action cache (#https://github.com/nektos/act/pull/2173) ✅ https://code.forgejo.org/forgejo/act/pulls/117 - <del>75e4ad93 * fix: docker buildx cache restore not working (#https://github.com/nektos/act/pull/2236)</del> ✅ https://code.forgejo.org/forgejo/runner/pulls/783
Author
Contributor

forgejo/act#170 cherry-picked the following (removed from the full list)

  • cf09fd0a * fix: use non strict schema to allow some undefined behavior (#2524)
  • 41430177 * fix: schema validation for job if functions (#2446)
  • 102e6cbc * feat: Validate GitHub Actions schema (#2416)
  • 515dd661 * feat: allow workflow description (#5326)
https://code.forgejo.org/forgejo/act/pulls/170 cherry-picked the following (removed from [the full list](https://code.forgejo.org/forgejo/act/issues/124#issuecomment-44562)) - cf09fd0a * fix: use non strict schema to allow some undefined behavior (#2524) - 41430177 * fix: schema validation for job if functions (#2446) - 102e6cbc * feat: Validate GitHub Actions schema (#2416) - 515dd661 * feat: allow workflow description (#5326)
Author
Contributor

Each remaining commit (~40 if ignoring those to be skipped ) was classified for easier reference and grouping commits that relate to the same topic.

@Kwonunn you may be interested by those 🟦 cache related
@achyrva I linked to some of your pull requests but I was not thorough, if you see any that I missed, please let me know. The following are those that were already merged in.

Each remaining commit (~40 if ignoring those to be skipped ⏩ ) [was classified](https://code.forgejo.org/forgejo/act/issues/124#issuecomment-44562) for easier reference and grouping commits that relate to the same topic. @Kwonunn you may be interested by those 🟦 cache related @achyrva I linked to some of your pull requests but I was not thorough, if you see any that I missed, please let me know. The following are those that were already merged in. - 4977ba91 * Meta-copy-symlinks-new-actions-cache (#2337) 🟦 https://code.forgejo.org/forgejo/act/pulls/159 - 070c2576 * Add documentation for `dryrun` parameter (#2311) ⏩ the CLI is not used https://code.forgejo.org/forgejo/act/pulls/158 - 657a3d76 * Fix for issue 2232: Many lines of "Could not find any stages to run" on run (#2272) 🍒 https://code.forgejo.org/forgejo/act/pulls/157 - 5a9dd3d0 * fix: skipped jobs have no result (#2276) 🍒 https://code.forgejo.org/forgejo/act/pulls/143 - 89e3c146 * fix: favor command-line over files (#2274) ⏩ the CLI is not used https://code.forgejo.org/forgejo/act/pulls/143 - 352ad41a * fix function name in comment (#2240) ⏩ costmetic https://code.forgejo.org/forgejo/act/pulls/122 - https://github.com/nektos/act/pull/2279 🍒https://code.forgejo.org/forgejo/act/pulls/143 - cdc22da7 * Remove local action cache if remote has changed (#2284) 🟦 https://code.forgejo.org/forgejo/act/pulls/142 - d9a19c8b * Trivial: reduce log spam. (#2256) 🍒 https://code.forgejo.org/forgejo/act/pulls/139 - https://github.com/nektos/act/pull/2259 🍒 https://code.forgejo.org/forgejo/act/pulls/139 - f56dd65f * test: use ping to improve network test (#2266) 🍒 https://code.forgejo.org/forgejo/act/pulls/138 - ac6a465e * feat: Test writing remote Actions locally (#2155) 💡 could be implemented in the runner https://code.forgejo.org/forgejo/act/pulls/125 - 75e4ad93 * fix: docker buildx cache restore not working (#2236) 🟦 https://code.forgejo.org/forgejo/act/pulls/122 reverted by https://code.forgejo.org/forgejo/act/pulls/173 - 119ceb81 * fix: rootless permission bits (new actions cache) (#2242) 🟦 https://code.forgejo.org/forgejo/act/pulls/122
Contributor

@earl-warren , you did a great work to collect all delta excluding dependencies update commits. Thank you.

If I understood you correctly, the team decided to suspend the process of reducing delta till the time of taking a strategy how to move forward.
I would like to be informed about your decisions or even participate in discussion.

@earl-warren , you did a great work to collect all delta excluding dependencies update commits. Thank you. If I understood you correctly, the team decided to suspend the process of reducing delta till the time of taking a strategy how to move forward. I would like to be informed about your decisions or even participate in discussion.
Author
Contributor

If I understood you correctly, the team decided to suspend the process of reducing delta till the time of taking a strategy how to move forward.

It is not suspended.

I would like to be informed about your decisions or even participate in discussion.

All discussions are in this tracker, there are no other space where discussions happen on that topic.

If you do decide to help porting/cherry-picking, please make sure to do it only one pull request at a time. Also make sure to review all comments sent to your past pull requests as well as the pull requests that reverted some of the changes. It was quite time consuming and I'd like to make sure that won't happen again. I'll be very careful when reviewing your pull requests moving forward.

> If I understood you correctly, the team decided to suspend the process of reducing delta till the time of taking a strategy how to move forward. It is not suspended. > I would like to be informed about your decisions or even participate in discussion. All discussions are in this tracker, there are no other space where discussions happen on that topic. If you do decide to help porting/cherry-picking, please make sure to do it only one pull request at a time. Also make sure to review all comments sent to your past pull requests as well as the pull requests that reverted some of the changes. It was quite time consuming and I'd like to make sure that won't happen again. I'll be very careful when reviewing your pull requests moving forward.
Contributor

It's clear now.

I propose my following steps:

  1. I'll review one more time that was already merged and prepare full list of commits that should be merged with check boxes to be able to track what was done (also I'll save the legend that proposed by @earl-warren )
  2. I'll start from commits marked as 🍒 (worth cherry-picking) from simplest to difficult
  3. What it will be done I will continue with 🟨 (reusable workflow related) 🟩 (artifact v4 related) commits.

Tell me, please, if you have any concerns.

Also, could you clarify for me your thought about https://github.com/actions-oss

It's clear now. I propose my following steps: 1. I'll review one more time that was already merged and prepare full list of commits that should be merged with check boxes to be able to track what was done (also I'll save the legend that proposed by @earl-warren ) 2. I'll start from commits marked as 🍒 (worth cherry-picking) from simplest to difficult 3. What it will be done I will continue with 🟨 (reusable workflow related) 🟩 (artifact v4 related) commits. Tell me, please, if you have any concerns. Also, could you clarify for me your thought about https://github.com/actions-oss
Author
Contributor

@achyrva wrote in #678 (comment):

2. I'll start from commits marked as 🍒 (worth cherry-picking) from simplest to difficult

Please start with forgejo/act@2ad5ff74

@achyrva wrote in https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-46259: > 2\. I'll start from commits marked as :cherries: (worth cherry-picking) from simplest to difficult Please start with https://code.forgejo.org/forgejo/act/commit/2ad5ff74
Contributor

I have prepared a complete list of all the commits I found. Based on the suggested legend, I have categorized them and formatted them as a checklist. Here is the result. Please edit it if necessary.

List of commits

Legend

🍒 - worth cherry-picking
🟨 - reusable workflow related
🟩 - artifact v4 related
- skip
💡 - unsure if it is worth picking, needs thinking

Commits by Category

🍒 Worth Cherry-Picking

  • 1154f0d9 feat: log parsed commands and step summary (#2761)
  • 517c3ac4 fix: reporting fetch failure as job error and log the error (#2715)
  • c6a77549 Disable "unable to get git repo" when none exists. (#2495)
  • be516017 parse_env_file discard utf8 bom (#2638)
  • 9dd0854a Added support for dereferenced map properties (#2635)
  • b4ef6fb4 fix: short sha has at least four digits (#2540)
  • e6b5062e fix: amd64 arch to X64 (#2580)
  • 2c0e3fea fix: tests with validation errors were skipped (#2496)
  • 5ffec84f fix: if condition in composite action misbehaves (#2473)
  • a34d9c6d run_context: add GITHUB_RUN_ATTEMPT (#2458)
  • 3c7eda7f fix: docker stub and add a test for this (#2355)
  • 2ad5ff74 fix: add missing service container health check (#2354)
  • e4607fc7 fix: skip service container for empty image (#2281)
  • b5ad3c4a fix: composite action input pollution (#2348)
  • 843cd94c Add codespell support (config, workflow to detect/not fix) and make it fix few typos (#2296)
  • a8ac5293 fix: wrap subpath in '' (#2754) (#2755)
  • 49710c85 fixes #2689 Make the external url of cache server configurable if necessary (#2690)
  • 95e411da fix: remote docker actions new action cache and dry run mode (#2513)
  • 16bdce5f feat: GoGitActionCache shallow fetch (#2677)
  • 9142ed9b feat: improve new action cache logging (#2474)
  • f825e42c fix: cache adjust restore order of exact key matches (#2267)
  • b9382a2c Support overwriting caches (#2265)
  • 119ceb81 fix: rootless permission bits (new actions cache) (#2242)
  • 5601fb0e refactor: simpilfy go-git cache (#2208)
  • 852959e1 feat: offline mode for new action cache (#2173)
  • e3b4e3ad add test for listartifacts v4 filter (#2507)
  • f77a443e fix: merge-multiple artifacts were broken (#2505)
  • 32b6bb7a fix: artifact v4 upload above 8MB (#2402)
  • e1e5671e Actions Artifacts v4 backend (#2224)
  • deea8ec8 fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#2502)
  • b917ecc1 fix: update reusable workflow input handling (#2349)
  • cf09fd0a fix: use non strict schema to allow some undefined behavior (#2524)
  • 41430177 fix: schema validation for job if functions (#2446)
  • 102e6cbc feat: Validate GitHub Actions schema (#2416)

💡 Unsure if it is worth picking

  • 51147d45 Incorporate Debug, Warn, Error logging. (#2490)
  • 60a499da refactor logger
  • 570ccf39 Fix #2363. Add /pre- and /post-entrypoint handling (#2394)
  • 2e117a4d bug/issue #2448 - manage special bash options when no shell is defined (#2449)
  • ac6a465e feat: Test writing remote Actions locally (#2155)

Skip

  • 16b86a64 feat: add cli option to set concurrent jobs count (#2762)
  • bd4bc99e feat: add models permission level for AI inference responses (#2767)
  • bea04dd8 feat: Support graceful job step cancellation (#2714)
  • 0098044d Report the elapsed time for each workflow step (#2700)
  • 404620bd Add tests against reading config files (#2682)
  • c956febf add test workflows to cmd pkg (#2665)
  • 7fec28d6 fix: secret file reading (#45) (#2664)
  • cb26fd86 Use gh auth token for default GITHUB_TOKEN secret (#2651)
  • e6366849 Detect available flags for extensions (#2557)
  • fe017a10 feat: Adding in logic to check if act needs to be downloaded (#2575)
  • a1a96da1 fix: changed location of actrc in info message (#2373)
  • be89cbcf Fix install sh usage (#2454)
  • 013c0d4e feat: generate a manual page automatically with cobra/doc (#2352)
  • 60a2fed3 fix GOOS parsing to match expected GHA RUNNER_OS values (#2422)
  • cd8b710f remove double negation in --help (#2405)
  • 8cdc3fcb Update action.yml (#2293)
  • 89e3c146 fix: favor command-line over files (#2274)
  • e1cd7c91 fix: logo and demo asset urls (#2226)
  • 55a8f9af Add riscv64 binary release (#2350)
  • f2e65e1d fix: Rootless error concerning /var/run/docker.sock (#2181)

TBD. Uncategorised

  • 8d2fa04db5 ci: make codecov informational only (#2924)
  • b5469ac4ca fix: add missing punctuation to error report (#2752) (#2753)
  • f0da96d34e docs: Remove Gitter (#2678)
  • 8a18fb08ad chore(ci): disable invalid test case (#2875)
  • 324bab61f0 ci: disable stale bot (#2745)
  • c2425cd608 update-choco (#2742)
  • 460ca18a19 chore(ci): Only promote if possible (#2721)
  • cf0df9da37 chore(deps): bump to go1.24 due to deps updates (#2705)
  • eb46e8aa5a Refer to nektosact.com (#2692)
  • de962cba8f Clarify --no-skip-checkout flag (#2687)
  • 326d516f64 chore: mergify and codeowners do not request review (#2683)
  • c739bc4a4f Update .gitleaksignore (#2676)
  • f19f6dd651 chore: Group DependableBot Updates monthly (#2673)
  • c2409db605 chore: move to environment secrets (#2653)
  • 89755d3f25 chore: remove comments from mergify on merge conflict or check failures (#2652)
  • 5ce39f621c Add GitHub Local Actions to README (#2588)
  • 0ca1e18334 Fix typo in --action-offline-mode option description (#2590)
  • 7172fc31d1 chore: upgrade dependencies (#2589)
  • 6de25a53bc fix: make node tool non volatile (#2372)
  • 4977ba910c Meta-copy-symlinks-new-actions-cache (#2337)
  • 070c257640 Add documentation for dryrun parameter (#2311)
  • 657a3d768c Fix for issue 2232: Many lines of "Could not find any stages to run" on run (#2272)
  • 2df924c509 Bump docker to v26 (#2289)
  • 5a9dd3d0ea fix: skipped jobs have no result (#2276)
  • ac13a1b20d chore: fix some comments (#2279)
  • cdc22da7f0 Remove local action cache if remote has changed (#2284)
  • d2c341332b chore: fix codecov (#2288)
  • d9a19c8b02 Trivial: reduce log spam. (#2256)
  • 3949d74af5 chore: remove repetitive words (#2259)
  • f56dd65ff6 test: use ping to improve network test (#2266)
  • 352ad41ad2 fix function name in comment (#2240)
  • 75e4ad93f4 fix: docker buildx cache restore not working (#2236)
  • a62063b73f Bump mergo to v1.0.0 with new module URL (#2403)
  • 2feff3f193 build(deps): bump github.com/timshannon/bolthold to v0.0.0-20240314194003-30aac6950928 (#2248)
  • 6e80373eb6 Shrink Readme (#2198)
I have prepared a complete list of all the commits I found. Based on the suggested legend, I have categorized them and formatted them as a checklist. Here is the result. Please edit it if necessary. # List of commits <details> ## Legend 🍒 - worth cherry-picking 🟨 - reusable workflow related 🟩 - artifact v4 related ⏩ - skip 💡 - unsure if it is worth picking, needs thinking ## Commits by Category ### 🍒 Worth Cherry-Picking - [ ] `1154f0d9` feat: log parsed commands and step summary (#2761) - [ ] `517c3ac4` fix: reporting fetch failure as job error and log the error (#2715) - [ ] `c6a77549` Disable "unable to get git repo" when none exists. (#2495) - [ ] `be516017` parse_env_file discard utf8 bom (#2638) - [ ] `9dd0854a` Added support for dereferenced map properties (#2635) - [ ] `b4ef6fb4` fix: short sha has at least four digits (#2540) - [ ] `e6b5062e` fix: amd64 arch to X64 (#2580) - [ ] `2c0e3fea` fix: tests with validation errors were skipped (#2496) - [ ] `5ffec84f` fix: if condition in composite action misbehaves (#2473) - [ ] `a34d9c6d` run_context: add GITHUB_RUN_ATTEMPT (#2458) - [ ] `3c7eda7f` fix: docker stub and add a test for this (#2355) - [ ] `2ad5ff74` fix: add missing service container health check (#2354) - [ ] `e4607fc7` fix: skip service container for empty image (#2281) - [ ] `b5ad3c4a` fix: composite action input pollution (#2348) - [ ] `843cd94c` Add codespell support (config, workflow to detect/not fix) and make it fix few typos (#2296) ### 🟦 Cache related - [ ] `a8ac5293` fix: wrap subpath in '' (#2754) (#2755) - [ ] `49710c85` fixes #2689 Make the external url of cache server configurable if necessary (#2690) - [ ] `95e411da` fix: remote docker actions new action cache and dry run mode (#2513) - [ ] `16bdce5f` feat: GoGitActionCache shallow fetch (#2677) - [ ] `9142ed9b` feat: improve new action cache logging (#2474) - [x] `f825e42c` fix: cache adjust restore order of exact key matches (#2267) - [x] `b9382a2c` Support overwriting caches (#2265) - [x] `119ceb81` fix: rootless permission bits (new actions cache) (#2242) - [ ] `5601fb0e` refactor: simpilfy go-git cache (#2208) - [ ] `852959e1` feat: offline mode for new action cache (#2173) ### 🟩 Artifact v4 related - [ ] `e3b4e3ad` add test for listartifacts v4 filter (#2507) - [ ] `f77a443e` fix: merge-multiple artifacts were broken (#2505) - [ ] `32b6bb7a` fix: artifact v4 upload above 8MB (#2402) - [ ] `e1e5671e` Actions Artifacts v4 backend (#2224) ### 🟨 Reusable workflow related - [ ] `deea8ec8` fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#2502) - [ ] `b917ecc1` fix: update reusable workflow input handling (#2349) ### Schema validation related - [ ] `cf09fd0a` fix: use non strict schema to allow some undefined behavior (#2524) - [ ] `41430177` fix: schema validation for job if functions (#2446) - [ ] `102e6cbc` feat: Validate GitHub Actions schema (#2416) ### 💡 Unsure if it is worth picking - [ ] `51147d45` Incorporate Debug, Warn, Error logging. (#2490) - [ ] `60a499da` refactor logger - [ ] `570ccf39` Fix #2363. Add /pre- and /post-entrypoint handling (#2394) - [ ] `2e117a4d` bug/issue #2448 - manage special bash options when no shell is defined (#2449) - [x] `ac6a465e` feat: Test writing remote Actions locally (#2155) ### ⏩ Skip - [ ] `16b86a64` feat: add cli option to set concurrent jobs count (#2762) - [ ] `bd4bc99e` feat: add models permission level for AI inference responses (#2767) - [ ] `bea04dd8` feat: Support graceful job step cancellation (#2714) - [ ] `0098044d` Report the elapsed time for each workflow step (#2700) - [ ] `404620bd` Add tests against reading config files (#2682) - [ ] `c956febf` add test workflows to cmd pkg (#2665) - [ ] `7fec28d6` fix: secret file reading (#45) (#2664) - [ ] `cb26fd86` Use gh auth token for default GITHUB_TOKEN secret (#2651) - [ ] `e6366849` Detect available flags for extensions (#2557) - [ ] `fe017a10` feat: Adding in logic to check if act needs to be downloaded (#2575) - [ ] `a1a96da1` fix: changed location of actrc in info message (#2373) - [ ] `be89cbcf` Fix install sh usage (#2454) - [ ] `013c0d4e` feat: generate a manual page automatically with cobra/doc (#2352) - [ ] `60a2fed3` fix GOOS parsing to match expected GHA RUNNER_OS values (#2422) - [ ] `cd8b710f` remove double negation in --help (#2405) - [ ] `8cdc3fcb` Update action.yml (#2293) - [x] `89e3c146` fix: favor command-line over files (#2274) - [ ] `e1cd7c91` fix: logo and demo asset urls (#2226) - [ ] `55a8f9af` Add riscv64 binary release (#2350) - [ ] `f2e65e1d` fix: Rootless error concerning /var/run/docker.sock (#2181) ### TBD. Uncategorised - [ ] `8d2fa04db5` ci: make codecov informational only (#2924) - [ ] `b5469ac4ca` fix: add missing punctuation to error report (#2752) (#2753) - [ ] `f0da96d34e` docs: Remove Gitter (#2678) - [ ] `8a18fb08ad` chore(ci): disable invalid test case (#2875) - [ ] `324bab61f0` ci: disable stale bot (#2745) - [ ] `c2425cd608` update-choco (#2742) - [ ] `460ca18a19` chore(ci): Only promote if possible (#2721) - [ ] `cf0df9da37` chore(deps): bump to go1.24 due to deps updates (#2705) - [ ] `eb46e8aa5a` Refer to nektosact.com (#2692) - [ ] `de962cba8f` Clarify --no-skip-checkout flag (#2687) - [ ] `326d516f64` chore: mergify and codeowners do not request review (#2683) - [ ] `c739bc4a4f` Update .gitleaksignore (#2676) - [ ] `f19f6dd651` chore: Group DependableBot Updates monthly (#2673) - [ ] `c2409db605` chore: move to environment secrets (#2653) - [ ] `89755d3f25` chore: remove comments from mergify on merge conflict or check failures (#2652) - [ ] `5ce39f621c` Add GitHub Local Actions to README (#2588) - [ ] `0ca1e18334` Fix typo in --action-offline-mode option description (#2590) - [ ] `7172fc31d1` chore: upgrade dependencies (#2589) - [ ] `6de25a53bc` fix: make node tool non volatile (#2372) - [x] `4977ba910c` Meta-copy-symlinks-new-actions-cache (#2337) - [x] `070c257640` Add documentation for dryrun parameter (#2311) - [x] `657a3d768c` Fix for issue 2232: Many lines of "Could not find any stages to run" on run (#2272) - [ ] `2df924c509` Bump docker to v26 (#2289) - [x] `5a9dd3d0ea` fix: skipped jobs have no result (#2276) - [ ] `ac13a1b20d` chore: fix some comments (#2279) - [x] `cdc22da7f0` Remove local action cache if remote has changed (#2284) - [ ] `d2c341332b` chore: fix codecov (#2288) - [x] `d9a19c8b02` Trivial: reduce log spam. (#2256) - [ ] `3949d74af5` chore: remove repetitive words (#2259) - [x] `f56dd65ff6` test: use ping to improve network test (#2266) - [x] `352ad41ad2` fix function name in comment (#2240) - [x] `75e4ad93f4` fix: docker buildx cache restore not working (#2236) - [ ] `a62063b73f` Bump mergo to v1.0.0 with new module URL (#2403) - [ ] `2feff3f193` build(deps): bump github.com/timshannon/bolthold to v0.0.0-20240314194003-30aac6950928 (#2248) - [ ] `6e80373eb6` Shrink Readme (#2198) </details>
Author
Contributor

@earl-warren wrote in #678 (comment):

@achyrva wrote in #678 (comment):

  1. I'll start from commits marked as 🍒 (worth cherry-picking) from simplest to difficult

Please start with 2ad5ff74

Please.

@earl-warren wrote in https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-46260: > @achyrva wrote in #678 (comment): > > > 2. I'll start from commits marked as :cherries: (worth cherry-picking) from simplest to difficult > > Please start with [`2ad5ff74`](https://code.forgejo.org/forgejo/act/commit/2ad5ff74) Please.
Author
Contributor

@achyrva I would appreciate if you could focus on contributing a single pull request at a time and ensure it is done exactly right. It would allow me to focus on reviewing it properly and carefully. I failed to see problems in your past pull requests and that was my bad as a reviewer. But I then had to spend a lot of time going over all other pull request and then fix regressions. I would like to avoid that.

The list above would also need careful reviewing but it is a much larger work and I'd rather not do that until we have a few good PR merged in. This is why I asked you to start with this particular pull request.

Is that OK with you?

@achyrva I would appreciate if you could focus on contributing a single pull request at a time and ensure it is done exactly right. It would allow me to focus on reviewing it properly and carefully. I failed to see problems in your past pull requests and that was my bad as a reviewer. But I then had to spend a lot of time going over all other pull request and then fix regressions. I would like to avoid that. The list above would also need careful reviewing but it is a much larger work and I'd rather not do that until we have a few good PR merged in. This is why I asked you to start with this particular pull request. Is that OK with you?
Contributor

@earl-warren wrote in #678 (comment):

@achyrva I would appreciate if you could focus on contributing a single pull request at a time and ensure it is done exactly right. It would allow me to focus on reviewing it properly and carefully. I failed to see problems in your past pull requests and that was my bad as a reviewer. But I then had to spend a lot of time going over all other pull request and then fix regressions. I would like to avoid that.

The list above would also need careful reviewing but it is a much larger work and I'd rather not do that until we have a few good PR merged in. This is why I asked you to start with this particular pull request.

Is that OK with you?

Of course! I'm also interested in doing this work well. The list is just a starting point and I just wanted to structure it in a way that is more understandable to me. Pull request with commit 2ad5ff74 will be tomorrow

@earl-warren wrote in https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-46377: > @achyrva I would appreciate if you could focus on contributing a single pull request at a time and ensure it is done exactly right. It would allow me to focus on reviewing it properly and carefully. I failed to see problems in your past pull requests and that was my bad as a reviewer. But I then had to spend a lot of time going over all other pull request and then fix regressions. I would like to avoid that. > > The list above would also need careful reviewing but it is a much larger work and I'd rather not do that until we have a few good PR merged in. This is why I asked you to start with this particular pull request. > > Is that OK with you? Of course! I'm also interested in doing this work well. The list is just a starting point and I just wanted to structure it in a way that is more understandable to me. Pull request with commit [2ad5ff74 ](https://code.forgejo.org/forgejo/act/commit/2ad5ff74)will be tomorrow
Contributor

@earl-warren , please, look at forgejo/act#176

@earl-warren , please, look at https://code.forgejo.org/forgejo/act/pulls/176
Author
Contributor

git log --oneline gitea/main..v0.260.0

Legend:

  • 🟨 reusable workflow related
  • 🟩 artifact v4 related
  • skip
  • 🍒 worth cherry-picking
  • ported to Forgejo runner
  • 💡unsure if it is worth picking, needs thinking

  • 39509e9a Support Simplified Concurrency (#139) 🍒
  • 9924aea7 (tag: v0.261.6) Evaluate run-name field for workflows (#137) the motivation for this is unclear. It is nice to have but not really necessary. see also https://github.com/go-gitea/gitea/pull/34301/files. Let's wait for someone to ask.
  • 65c232c4 (tag: v0.261.5) Parse permissions (#133) 💡
  • 5da4954b (tag: v0.261.4) fix handle missing yaml.ScalarNode (#129) workflow_dispatch Gitea implementation
  • ec091ad2 Support concurrency (#124) 🍒
  • 16562067 Improve the support for reusable workflows (#122) 🟨
  • 6cdf1e57 (tag: v0.261.3) Fix ParseRawOn sequence problem (#119) workflow_dispatch Gitea implementation
  • ab381649 Add parsing for workflow dispatch (#118) workflow_dispatch Gitea implementation
  • 2ab80605 Check all job results when calling reusable workflows (#116) 🟨
  • 6a090f67 Support some GITEA_ environment variables (#112) Gitea specific
  • 517d11c6 (tag: v0.261.1) Reduce log noise (#108) done differently in Forgejo
  • 64876e36 Interpolate job name with matrix (#106) ae5411b096
  • 3fa1dba9 (tag: v0.261.0) Merge tag 'nektos/v0.2.61' dependency management
  • 361b7e9f (tag: v0.2.61, tag: nektos/v0.2.61) chore: bump VERSION to 0.2.61 dependency management
  • 9725f603 Support reusing workflows with absolute URLs (#104) 🟨
  • d9a19c8b Trivial: reduce log spam. (#2256) done differently in Forgejo
  • 3949d74a chore: remove repetitive words (#2259) cosmetic
  • f56dd65f test: use ping to improve network test (#2266) forgejo/act#138
  • e1b1e811 Revert "Pass 'sleep' as container command rather than entrypoint (#86)" (#107) 107 cancels 86
  • a79d8198 (tag: v0.260.2) Pass 'sleep' as container command rather than entrypoint (#86) 107 cancels 86
  • 655f5785 (tag: v0.260.1) Remove the network when there is no service (#103) forgejo/act#189
  • 069720ab build(deps): bump github.com/docker/docker (#2252) dependency management
  • 8c83d572 build(deps): bump golang.org/x/term from 0.17.0 to 0.18.0 (#2244) dependency management
  • 352ad41a fix function name in comment (#2240) cosmetic
  • 934b13a7 build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#2235) dependency management

  • 🟦 cache related

  • 38e7e9e9 (tag: v0.261.2) Use hashed uses string as cache dir name (#117) 🟦 forgejo/act#186
  • f825e42c fix: cache adjust restore order of exact key matches (#2267) 🟦 exists in ACT -
  • b9382a2c Support overwriting caches (#2265) 🟦 exists in ACT -
  • 119ceb81 fix: rootless permission bits (new actions cache) (#2242) 🟦 forgejo/act#122
  • 75e4ad93 fix: docker buildx cache restore not working (#2236) 🟦 exists in ACT -
`git log --oneline gitea/main..v0.260.0` Legend: - 🟨 reusable workflow related - 🟩 artifact v4 related - ⏩ skip - 🍒 worth cherry-picking - ✅ ported to Forgejo runner - 💡unsure if it is worth picking, needs thinking --- * 39509e9a Support Simplified Concurrency (#139) 🍒 * 9924aea7 (tag: v0.261.6) Evaluate `run-name` field for workflows (#137) ⏩ the motivation for this is unclear. It is nice to have but not really necessary. see also https://github.com/go-gitea/gitea/pull/34301/files. Let's wait for someone to ask. * 65c232c4 (tag: v0.261.5) Parse permissions (#133) 💡 * 5da4954b (tag: v0.261.4) fix handle missing yaml.ScalarNode (#129) ⏩ workflow_dispatch Gitea implementation * ec091ad2 Support concurrency (#124) 🍒 * 16562067 Improve the support for reusable workflows (#122) 🟨 * 6cdf1e57 (tag: v0.261.3) Fix ParseRawOn sequence problem (#119) ⏩ workflow_dispatch Gitea implementation * ab381649 Add parsing for workflow dispatch (#118) ⏩ workflow_dispatch Gitea implementation * 2ab80605 Check all job results when calling reusable workflows (#116) 🟨 * 6a090f67 Support some `GITEA_` environment variables (#112) ⏩ Gitea specific * 517d11c6 (tag: v0.261.1) Reduce log noise (#108) ⏩ done differently in Forgejo * 64876e36 Interpolate job name with matrix (#106) ✅ ae5411b096ef7c7540fb386f511b3acad82e6017 * 3fa1dba9 (tag: v0.261.0) Merge tag 'nektos/v0.2.61' ⏩ dependency management * 361b7e9f (tag: v0.2.61, tag: nektos/v0.2.61) chore: bump VERSION to 0.2.61 ⏩ dependency management * 9725f603 Support reusing workflows with absolute URLs (#104) 🟨 * d9a19c8b Trivial: reduce log spam. (#2256) ⏩ done differently in Forgejo * 3949d74a chore: remove repetitive words (#2259) ⏩ cosmetic * f56dd65f test: use ping to improve network test (#2266) ✅ https://code.forgejo.org/forgejo/act/pulls/138 * e1b1e811 Revert "Pass 'sleep' as container command rather than entrypoint (#86)" (#107) ⏩ 107 cancels 86 * a79d8198 (tag: v0.260.2) Pass 'sleep' as container command rather than entrypoint (#86) ⏩ 107 cancels 86 * 655f5785 (tag: v0.260.1) Remove the network when there is no service (#103) ✅ https://code.forgejo.org/forgejo/act/pulls/189 * 069720ab build(deps): bump github.com/docker/docker (#2252) ⏩ dependency management * 8c83d572 build(deps): bump golang.org/x/term from 0.17.0 to 0.18.0 (#2244) ⏩ dependency management * 352ad41a fix function name in comment (#2240) ⏩ cosmetic * 934b13a7 build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#2235) ⏩ dependency management --- - 🟦 cache related --- * 38e7e9e9 (tag: v0.261.2) Use hashed `uses` string as cache dir name (#117) 🟦 https://code.forgejo.org/forgejo/act/pulls/186 * <del>f825e42c fix: cache adjust restore order of exact key matches (#2267) 🟦 exists in ACT -</del> * <del>b9382a2c Support overwriting caches (#2265) 🟦 exists in ACT - </del> * 119ceb81 fix: rootless permission bits (new actions cache) (#2242) 🟦 https://code.forgejo.org/forgejo/act/pulls/122 * <del>75e4ad93 fix: docker buildx cache restore not working (#2236) 🟦 exists in ACT - </del>
earl-warren changed title from chore: merge Nektos Act updates into Forgejo Act to chore: cherry-picking Nektos Act commits 2025-07-28 19:17:46 +00:00
earl-warren changed title from chore: cherry-picking Nektos Act commits to cherry-picking Nektos Act commits 2025-07-28 20:59:09 +00:00
Author
Contributor

All cache related items (the local runner cache provided to the jobs as well as the not-used action cache) in both Nektos ACT and Gitea ACT are accounted for.

All cache related items (the local runner cache provided to the jobs as well as the not-used action cache) in both [Nektos ACT](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-45940) and [Gitea ACT](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-47702) are accounted for.
Author
Contributor

@Crown0815 there is a windows specific fix that you may want to add https://github.com/nektos/act/pull/2638. It probably cherry-picks fine but in the absence of windows test environment in Forgejo, it can't be tested.

@Crown0815 there is a windows specific fix that you may want to add https://github.com/nektos/act/pull/2638. It probably cherry-picks fine but in the absence of windows test environment in Forgejo, it can't be tested.
Author
Contributor

The following are left to work on

Concurrency 🍒

Artifacts v4 🟩

Reusable workflows 🟨


The following are left to work on ### Concurrency 🍒 - 39509e9a Support Simplified Concurrency (#https://gitea.com/gitea/act/pulls/139) - ec091ad2 Support concurrency (#https://gitea.com/gitea/act/pulls/124) ### Artifacts v4 🟩 - e3b4e3ad * add test for listartifacts v4 filter (#https://github.com/nektos/act/pull/2507) - f77a443e * fix: merge-multiple artifacts were broken (#https://github.com/nektos/act/pull/2505) - 32b6bb7a * fix: artifact v4 upload above 8MB (#https://github.com/nektos/act/pull/2402) - e1e5671e * Actions Artifacts v4 backend (#https://github.com/nektos/act/pull/2224) ### Reusable workflows 🟨 - b917ecc1 * fix: update reusable workflow input handling (#https://github.com/nektos/act/pull/2349) - https://code.forgejo.org/forgejo/act/pulls/160 - deea8ec8 * fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#https://github.com/nektos/act/pull/2502) --- - Nektos ACT - https://github.com/nektos/act/compare/v0.2.59...v0.2.79 - [see the curated list](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-45940) - Gitea ACT - https://gitea.com/gitea/act/compare/v0.260.0...v0.261.6 - [see the curated list](https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-47702)
Author
Contributor

@mfenniak would you be interested in picking one of the above? ( concurrency (🍒) reusable workflows (🟨) artifacts v4 (🟩) )? I have not yet explored the associated commits but I suspect concurrency is the easiest.

@mfenniak would you be interested in picking one of the above? ( concurrency (🍒) reusable workflows (🟨) artifacts v4 (🟩) )? I have not yet explored the associated commits but I suspect concurrency is the easiest.
Owner

@earl-warren I'll take a shot at concurrency. 👍

@earl-warren I'll take a shot at concurrency. 👍
Owner

re: section "Artifacts v4", I don't think there's anything to cherry-pick there. All of the work seems to the artifact server support which was removed from forgejo's runner (#740).

re: section "Artifacts v4", I don't think there's anything to cherry-pick there. All of the work seems to the artifact server support which was removed from forgejo's runner (https://code.forgejo.org/forgejo/runner/pulls/740).
Author
Contributor

Artifacts v4 🟩

I confirm that those commits are for the runner side implementation of artifacts v4, which is redundant with the Forgejo artifacts v4 implementation.

> ### Artifacts v4 🟩 > > - e3b4e3ad * add test for listartifacts v4 filter (#https://github.com/nektos/act/pull/2507) > - f77a443e * fix: merge-multiple artifacts were broken (#https://github.com/nektos/act/pull/2505) > - 32b6bb7a * fix: artifact v4 upload above 8MB (#https://github.com/nektos/act/pull/2402) > - e1e5671e * Actions Artifacts v4 backend (#https://github.com/nektos/act/pull/2224) I confirm that those commits are for the runner side implementation of artifacts v4, which is redundant with the Forgejo artifacts v4 implementation.
Author
Contributor

@earl-warren wrote in #678 (comment):

Reusable workflows 🟨

I'll take a look at those now. Unless you're already on it @mfenniak?

@earl-warren wrote in https://code.forgejo.org/forgejo/runner/issues/678#issuecomment-52387: > ### Reusable workflows :yellow_square: > > * b917ecc1 * fix: update reusable workflow input handling (#https://github.com/nektos/act/pull/2349) - forgejo/act#160 > * deea8ec8 * fix: prevent unintended input replacement in reusable workflows with workflow_dispatch when using workflow_call (#https://github.com/nektos/act/pull/2502) I'll take a look at those now. Unless you're already on it @mfenniak?
Owner

@earl-warren I have not. 👍

@earl-warren I have not. 👍
Author
Contributor

It turns out to not be much. But valuable bug fixes which is good.

It turns out to not be much. But valuable bug fixes which is good.
Author
Contributor

Reusable workflows 🟨

### Reusable workflows :yellow_square: * b917ecc1 * fix: update reusable workflow input handling (#https://github.com/nektos/act/pull/2349) - https://code.forgejo.org/forgejo/runner/pulls/833
Author
Contributor

Reusable workflows 🟨

### Reusable workflows :yellow_square: * b917ecc1 * fix: update reusable workflow input handling (#https://github.com/nektos/act/pull/2349) - https://code.forgejo.org/forgejo/runner/pulls/834
Author
Contributor

This concludes the harvest up until today. Unpinned and replaced by a fresh one to be worked on later. I set a reminder in three months. Given the pace at which they are going it should be frequent enough.

This concludes the harvest up until today. Unpinned and replaced by a fresh one to be worked on later. I set a reminder in three months. Given the pace at which they are going it should be frequent enough.
Author
Contributor
https://code.forgejo.org/forgejo/runner/issues/835
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo/runner#678
No description provided.