Repository navigation
fix(initimg): stabilize Linux startup stack layout - #53
not-matthias merged 1 commit into
Conversation
[Medium impact] The PR appears safe to merge; no actionable new issue was established. SummaryKeeps the Linux initial stack pointer at a fixed offset from the stack top.
The supplied previous threads have no Comment numbers, so they have no numbered entries in The previous reviewed commit is not an ancestor of the head, so this review used the full PR diff. No tests were executed.
|
Merging this PR will not alter performance
Comparing Footnotes
|
GuillaumeLagrange
left a comment
There was a problem hiding this comment.
olgtm, let's wait for uv bench variance results before merging to check if we need additionnal changes here
7bd999c to
159fb30
Compare
Reserve a fixed 16 MiB startup region so argument and environment sizes do not move the initial client stack pointer. Preserve startup data and account for the region separately from the runtime stack limit.
159fb30 to
921efb9
Compare
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | minor | `v5.5.0` → `v5.6.0` | --- ### Release Notes <details> <summary>CodSpeedHQ/action</summary> ### [`v5.6.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.6.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0) Bumps the CodSpeed runner to [v5.6.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.6.0). ##### Highlights ##### More consistent CPU Simulation results Changes to your CI environment, like a different path or an extra environment variable, no longer change the performance. Each benchmark now starts with the same memory layout, reducing the chance of false regressions. ##### 🐛 Bug Fixes - Keep the user's `HOME` when wrapping commands with sudo by [@&open-telemetry#8203;lvaroqui](https://redirect.github.com/lvaroqui) in [#&open-telemetry#8203;588](https://redirect.github.com/CodSpeedHQ/codspeed/pull/588) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed10](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed10) by [@&open-telemetry#8203;adriencaccia](https://redirect.github.com/adriencaccia) in [#&open-telemetry#8203;593](https://redirect.github.com/CodSpeedHQ/codspeed/pull/593) - fix(callgrind): suppress L3 warning for explicit LL settings by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#52](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/52) - fix(initimg): stabilize Linux startup stack layout by [@&open-telemetry#8203;not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#53](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/53) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.6.0 by [@&open-telemetry#8203;github-actions](https://redirect.github.com/github-actions)\[bot] in [#&open-telemetry#8203;253](https://redirect.github.com/CodSpeedHQ/action/pull/253) **Full Changelog**: <CodSpeedHQ/action@v5.5.0...v5.6.0> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/open-telemetry/opentelemetry-go). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNzYuMyIsInVwZGF0ZWRJblZlciI6IjQ0LjE3Ni4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJTa2lwIENoYW5nZWxvZyIsImRlcGVuZGVuY2llcyJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | minor | `v5.5.0` → `v5.6.0` | --- ### Release Notes <details> <summary>CodSpeedHQ/action</summary> ### [`v5.6.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.6.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0) Bumps the CodSpeed runner to [v5.6.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.6.0). ##### Highlights ##### More consistent CPU Simulation results Changes to your CI environment, like a different path or an extra environment variable, no longer change the performance. Each benchmark now starts with the same memory layout, reducing the chance of false regressions. ##### 🐛 Bug Fixes - Keep the user's `HOME` when wrapping commands with sudo by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​588](https://redirect.github.com/CodSpeedHQ/codspeed/pull/588) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed10](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed10) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​593](https://redirect.github.com/CodSpeedHQ/codspeed/pull/593) - fix(callgrind): suppress L3 warning for explicit LL settings by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#52](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/52) - fix(initimg): stabilize Linux startup stack layout by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#53](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/53) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.6.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​253](https://redirect.github.com/CodSpeedHQ/action/pull/253) **Full Changelog**: <CodSpeedHQ/action@v5.5.0...v5.6.0> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/spiraldb/onpair). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xODAuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjE4MC4wIiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCIsImxhYmVscyI6WyJjaGFuZ2Vsb2cvY2hvcmUiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [Blaizzy/mlx-audio-swift](https://redirect.github.com/Blaizzy/mlx-audio-swift) | | patch | `0.1.5` → `0.1.6` | | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | minor | `v5.5.0` → `v5.6.0` | | [astral-sh/setup-uv](https://redirect.github.com/astral-sh/setup-uv) | action | patch | `v10.3.0` → `v10.3.2` | | [astral-sh/uv](https://redirect.github.com/astral-sh/uv) | uses-with | patch | `0.13.1` → `0.13.5` | | [j178/prek-action](https://redirect.github.com/j178/prek-action) | action | minor | `v3.0.1` → `v3.1.0` | | [prek](https://redirect.github.com/j178/prek) | uses-with | patch | `v0.5.5` → `v0.5.7` | --- ### Release Notes <details> <summary>Blaizzy/mlx-audio-swift</summary> ### [`v0.1.6`](https://redirect.github.com/Blaizzy/mlx-audio-swift/releases/tag/v0.1.6) [Compare Source](https://redirect.github.com/Blaizzy/mlx-audio-swift/compare/v0.1.5...v0.1.6) #### What's Changed - support for dia by [@​Lazarus-931](https://redirect.github.com/Lazarus-931) in [#​262](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/262) - Add VoxCPM2 TTS model (2B params, 48kHz, voice cloning) by [@​sb1992](https://redirect.github.com/sb1992) in [#​175](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/175) - Fix parallel test runner by [@​lucasnewman](https://redirect.github.com/lucasnewman) in [#​282](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/282) - Remove dependencies on MLXLMCommon / MLXLLM by [@​lucasnewman](https://redirect.github.com/lucasnewman) in [#​287](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/287) - Add Gradium Phonon TTS model by [@​lucasnewman](https://redirect.github.com/lucasnewman) in [#​288](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/288) - Add translation example by [@​lucasnewman](https://redirect.github.com/lucasnewman) in [#​289](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/289) #### New Contributors - [@​sb1992](https://redirect.github.com/sb1992) made their first contribution in [#​175](https://redirect.github.com/Blaizzy/mlx-audio-swift/pull/175) **Full Changelog**: <Blaizzy/mlx-audio-swift@v0.1.5...v0.1.6> </details> <details> <summary>CodSpeedHQ/action</summary> ### [`v5.6.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.6.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0) Bumps the CodSpeed runner to [v5.6.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.6.0). ##### Highlights ##### More consistent CPU Simulation results Changes to your CI environment, like a different path or an extra environment variable, no longer change the performance. Each benchmark now starts with the same memory layout, reducing the chance of false regressions. ##### 🐛 Bug Fixes - Keep the user's `HOME` when wrapping commands with sudo by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​588](https://redirect.github.com/CodSpeedHQ/codspeed/pull/588) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed10](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed10) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​593](https://redirect.github.com/CodSpeedHQ/codspeed/pull/593) - fix(callgrind): suppress L3 warning for explicit LL settings by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#52](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/52) - fix(initimg): stabilize Linux startup stack layout by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#53](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/53) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.6.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​253](https://redirect.github.com/CodSpeedHQ/action/pull/253) **Full Changelog**: <CodSpeedHQ/action@v5.5.0...v5.6.0> </details> <details> <summary>astral-sh/setup-uv</summary> ### [`v10.3.2`](https://redirect.github.com/astral-sh/setup-uv/releases/tag/v10.3.2): 🌈 update known checksums for 0.13.5 [Compare Source](https://redirect.github.com/astral-sh/setup-uv/compare/v10.3.1...v10.3.2) ##### Changes ##### 🧰 Maintenance - chore: update known checksums for 0.13.5 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1103](https://redirect.github.com/astral-sh/setup-uv/issues/1103)) ##### 📚 Documentation - docs: update version references to v10.3.1 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1102](https://redirect.github.com/astral-sh/setup-uv/issues/1102)) ### [`v10.3.1`](https://redirect.github.com/astral-sh/setup-uv/releases/tag/v10.3.1): 🌈 preserve cache error class names in save-cache bundle [Compare Source](https://redirect.github.com/astral-sh/setup-uv/compare/v10.3.0...v10.3.1) ##### Changes This release includes a fix so that multiple concurrent workflows trying to upload the same cache no longer warn `##[warning]Failed to save: Unable to reserve cache with key ..., another job may be creating this cache.` ##### 🐛 Bug fixes - fix: preserve cache error class names in save-cache bundle [@​dannyward630](https://redirect.github.com/dannyward630) ([#​1093](https://redirect.github.com/astral-sh/setup-uv/issues/1093)) ##### 🧰 Maintenance - chore: update known checksums for 0.13.4 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1099](https://redirect.github.com/astral-sh/setup-uv/issues/1099)) - chore: update known checksums for 0.13.2/0.13.3 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1098](https://redirect.github.com/astral-sh/setup-uv/issues/1098)) - chore: update known checksums for 0.13.1 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1094](https://redirect.github.com/astral-sh/setup-uv/issues/1094)) - Verify npm dependency signatures before builds [@​zaniebot](https://redirect.github.com/zaniebot) ([#​1027](https://redirect.github.com/astral-sh/setup-uv/issues/1027)) ##### 📚 Documentation - docs: cache-dependency-glob matches relative to the working directory [@​flange-ipb](https://redirect.github.com/flange-ipb) ([#​1092](https://redirect.github.com/astral-sh/setup-uv/issues/1092)) - docs: update version references to v10.3.0 @​[github-actions\[bot\]](https://redirect.github.com/apps/github-actions) ([#​1090](https://redirect.github.com/astral-sh/setup-uv/issues/1090)) ##### ⬆️ Dependency updates - chore(deps): roll up Dependabot updates [@​eifinger](https://redirect.github.com/eifinger) ([#​1101](https://redirect.github.com/astral-sh/setup-uv/issues/1101)) </details> <details> <summary>astral-sh/uv</summary> ### [`v0.13.5`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0135) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.13.4...0.13.5) Released on 2026-10-21. Following [uv 0.13.4](https://redirect.github.com/astral-sh/uv/releases/tag/0.13.4), which removed the affected eMudhra/emSign root from uv's own certificate store, this release updates the latest managed CPython builds for 3.11 and newer to [python-build-standalone 20261021](https://redirect.github.com/astral-sh/python-build-standalone/releases/tag/20261021), including the CPython [3.15.1](https://www.python.org/downloads/release/python-3151/), [3.14.9](https://www.python.org/downloads/release/python-3149/), and [3.13.17](https://www.python.org/downloads/release/python-31317/) security patch releases. These builds include [pip 26.2.2](https://pip.pypa.io/en/stable/news/#v26-2-2) both preinstalled in the managed interpreter and bundled with `ensurepip`, which installs pip by default when you run `python -m venv`. Both copies use certifi 2026.10.19, which removes the same affected root. After upgrading uv, run `uv python upgrade` to install the updated builds. Virtual environments pinned to an older Python patch version do not switch to the updated interpreter automatically. Upgrade pip separately in existing virtual environments. Please note upstream CPython 3.9 and 3.10 still bundle pip releases whose certificate bundles trust the affected eMudhra/emSign root. We recommend migrating off of those versions and will no longer be releasing Docker images with uv installed for EOL Python versions. ##### Enhancements - Report incompatible self-dependencies directly in resolution errors ([#​21845](https://redirect.github.com/astral-sh/uv/pull/21845)) ##### Python - Add CPython 3.15.1, 3.14.9, and 3.13.17 ([#​22802](https://redirect.github.com/astral-sh/uv/pull/22802)) ##### Preview features - Select and rank wheel variants with no required properties or properties from PEP 850 static providers in platform-specific resolutions with `wheel-variants` ([#​22535](https://redirect.github.com/astral-sh/uv/pull/22535), [#​22536](https://redirect.github.com/astral-sh/uv/pull/22536), [#​22687](https://redirect.github.com/astral-sh/uv/pull/22687), [#​22688](https://redirect.github.com/astral-sh/uv/pull/22688)) ##### Performance - Reduce peak memory use when resolving dependencies across multiple environments ([#​22769](https://redirect.github.com/astral-sh/uv/pull/22769), [#​22770](https://redirect.github.com/astral-sh/uv/pull/22770), [#​22784](https://redirect.github.com/astral-sh/uv/pull/22784)) - Speed up exports with complex transitive extras by resolving activation across the dependency graph ([#​22751](https://redirect.github.com/astral-sh/uv/pull/22751)) - Reduce uv's binary size by keeping additional error formatters out of line ([#​22775](https://redirect.github.com/astral-sh/uv/pull/22775)) - Reduce overhead when parsing custom build cache keys ([#​22749](https://redirect.github.com/astral-sh/uv/pull/22749)) ##### Bug fixes - Lock packages distributed only as Android wheels without a source distribution ([#​22806](https://redirect.github.com/astral-sh/uv/pull/22806)) - Export optional dependencies correctly when transitive extras are activated through different or incompatible environment paths ([#​22751](https://redirect.github.com/astral-sh/uv/pull/22751)) - Reject invalid custom build cache keys instead of silently falling back to the defaults ([#​22749](https://redirect.github.com/astral-sh/uv/pull/22749)) ##### Security - Reject certificate chains containing compromised eMudhra intermediate keys via `rustls-webpki` 0.103.16 ([#​22777](https://redirect.github.com/astral-sh/uv/pull/22777)) - Stop publishing uv Docker images based on Python 3.9 and 3.10 images that no longer receive upstream updates ([#​22773](https://redirect.github.com/astral-sh/uv/pull/22773)) ### [`v0.13.4`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0134) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.13.3...0.13.4) Released on 2026-10-20. ##### Preview features - Validate PEP 825 variant metadata and treat package versions with invalid metadata as unavailable under `wheel-variants` ([#​22512](https://redirect.github.com/astral-sh/uv/pull/22512)) ##### Other changes - Update the bundled Mozilla root certificates via `webpki-root-certs` 1.0.10 ([#​22760](https://redirect.github.com/astral-sh/uv/pull/22760)) ### [`v0.13.3`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0133) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.13.2...0.13.3) Released on 2026-10-20. ##### Performance - Avoid severe `uv export` slowdowns in dependency graphs with extras ([#​22750](https://redirect.github.com/astral-sh/uv/pull/22750)) ### [`v0.13.2`](https://redirect.github.com/astral-sh/uv/blob/HEAD/CHANGELOG.md#0132) [Compare Source](https://redirect.github.com/astral-sh/uv/compare/0.13.1...0.13.2) Released on 2026-10-19. ##### Enhancements - Report all installed packages in `uv workspace metadata`, including packages outside the selected resolution ([#​22395](https://redirect.github.com/astral-sh/uv/pull/22395)) - Include supported environment restrictions when exporting `pylock.toml` ([#​22596](https://redirect.github.com/astral-sh/uv/pull/22596)) - Retry dropped GET and HEAD requests when fetching package and index data ([#​22672](https://redirect.github.com/astral-sh/uv/pull/22672)) - Preserve encoding declarations in wheel data scripts that require shell launchers ([#​22526](https://redirect.github.com/astral-sh/uv/pull/22526)) - Show causes and hints when `uv python find --script` cannot discover an interpreter, including with `-q` ([#​22549](https://redirect.github.com/astral-sh/uv/pull/22549)) - Print valid ksh activation instructions and support non-relocatable environments under OpenBSD-derived ksh ([#​22538](https://redirect.github.com/astral-sh/uv/pull/22538), [#​22572](https://redirect.github.com/astral-sh/uv/pull/22572)) - Allow PEP 508 direct URLs, including Mercurial and extensionless archive URLs, in uv-build's `[build-system].requires` validation ([#​22577](https://redirect.github.com/astral-sh/uv/pull/22577)) ##### Python - Add PyPy 3.11.17 and 3.12.15 ([#​22578](https://redirect.github.com/astral-sh/uv/pull/22578)) ##### Preview features - Fetch and parse PEP 825 index-level variant metadata with `wheel-variants` ([#​22509](https://redirect.github.com/astral-sh/uv/pull/22509), [#​22511](https://redirect.github.com/astral-sh/uv/pull/22511)) ##### Performance - Avoid exponential work when simplifying, traversing, and exporting complex dependency markers ([#​22608](https://redirect.github.com/astral-sh/uv/pull/22608), [#​22615](https://redirect.github.com/astral-sh/uv/pull/22615), [#​22651](https://redirect.github.com/astral-sh/uv/pull/22651), [#​22674](https://redirect.github.com/astral-sh/uv/pull/22674)) - Reduce the time and memory used to parse and store complex dependency markers ([#​22675](https://redirect.github.com/astral-sh/uv/pull/22675), [#​22676](https://redirect.github.com/astral-sh/uv/pull/22676), [#​22681](https://redirect.github.com/astral-sh/uv/pull/22681)) - Reduce resolver memory use for large dependency graphs, forks, extras, and dependency groups ([#​22565](https://redirect.github.com/astral-sh/uv/pull/22565), [#​22625](https://redirect.github.com/astral-sh/uv/pull/22625)) - Speed up project discovery in large workspaces by caching member names ([#​22635](https://redirect.github.com/astral-sh/uv/pull/22635)) - Reduce uv's binary size and speed up CycloneDX exports ([#​22431](https://redirect.github.com/astral-sh/uv/pull/22431)) - Reduce `uv-build` binary size, including Linux x86_64 wheels ([#​22539](https://redirect.github.com/astral-sh/uv/pull/22539), [#​22573](https://redirect.github.com/astral-sh/uv/pull/22573)) - Reduce allocations when parsing TOML ([#​22679](https://redirect.github.com/astral-sh/uv/pull/22679)) ##### Bug fixes - Respect `--exclude-newer` when a newer wheel for the selected source distribution is already cached ([#​22685](https://redirect.github.com/astral-sh/uv/pull/22685)) - Prevent URL credentials from leaking through diagnostics or persisted metadata ([#​22600](https://redirect.github.com/astral-sh/uv/pull/22600), [#​22601](https://redirect.github.com/astral-sh/uv/pull/22601), [#​22617](https://redirect.github.com/astral-sh/uv/pull/22617), [#​22622](https://redirect.github.com/astral-sh/uv/pull/22622), [#​22646](https://redirect.github.com/astral-sh/uv/pull/22646)) - Keep separate cache entries for signed `--find-links` URLs that differ only in sensitive query values ([#​22630](https://redirect.github.com/astral-sh/uv/pull/22630)) - Honor PEP 751 environment restrictions when installing or syncing from `pylock.toml` ([#​22594](https://redirect.github.com/astral-sh/uv/pull/22594)) - Use configured credentials before prompting during `uv publish`, and avoid prompting when no upload occurs ([#​22593](https://redirect.github.com/astral-sh/uv/pull/22593)) - Match recursive build globs against complete file paths and ignore invalid license symlinks ([#​22581](https://redirect.github.com/astral-sh/uv/pull/22581), [#​22583](https://redirect.github.com/astral-sh/uv/pull/22583)) - Return an error for invalid `uv pip compile --python-version` values instead of panicking ([#​22727](https://redirect.github.com/astral-sh/uv/pull/22727)) - Reject invalid `pylock.toml` output filenames before resolution instead of panicking ([#​22725](https://redirect.github.com/astral-sh/uv/pull/22725)) - Avoid panicking during repeated resolution conflicts involving fixed-priority packages ([#​22589](https://redirect.github.com/astral-sh/uv/pull/22589)) - Create version aliases correctly when installing managed Python into a relative directory ([#​22547](https://redirect.github.com/astral-sh/uv/pull/22547)) - Show incompatibilities from failing `uv pip check` invocations with `-q` ([#​22544](https://redirect.github.com/astral-sh/uv/pull/22544)) - Treat logically equivalent dependency markers as equal regardless of construction order ([#​22680](https://redirect.github.com/astral-sh/uv/pull/22680)) ##### Rust API - Require the opt-in `unsafe-url` feature to use raw `url::Url` APIs in `uv-pep508` ([#​22623](https://redirect.github.com/astral-sh/uv/pull/22623)) ##### Documentation - Clarify credential lookup, environment synchronization, managed Python, and integration guidance ([#​22542](https://redirect.github.com/astral-sh/uv/pull/22542)) ##### Other changes - Use stable `sh.astral.*` signing identifiers for macOS binaries ([#​22648](https://redirect.github.com/astral-sh/uv/pull/22648)) </details> <details> <summary>j178/prek-action</summary> ### [`v3.1.0`](https://redirect.github.com/j178/prek-action/releases/tag/v3.1.0) [Compare Source](https://redirect.github.com/j178/prek-action/compare/v3.0.2...v3.1.0) #### What's Changed - Add `sha256` input for prek downloads by [@​j178](https://redirect.github.com/j178) in [#​184](https://redirect.github.com/j178/prek-action/pull/184) - Support `latest-known` for prek versions by [@​j178](https://redirect.github.com/j178) in [#​193](https://redirect.github.com/j178/prek-action/pull/193) **Full Changelog**: <j178/prek-action@v3.0.2...v3.1.0> ### [`v3.0.2`](https://redirect.github.com/j178/prek-action/releases/tag/v3.0.2) [Compare Source](https://redirect.github.com/j178/prek-action/compare/v3.0.1...v3.0.2) #### What's Changed - Preserve class names in bundled dist by [@​TheKevJames](https://redirect.github.com/TheKevJames) in [#​181](https://redirect.github.com/j178/prek-action/pull/181) - Update known versions for prek 0.5.6 by [@​j178](https://redirect.github.com/j178) in [#​182](https://redirect.github.com/j178/prek-action/pull/182) #### New Contributors - [@​TheKevJames](https://redirect.github.com/TheKevJames) made their first contribution in [#​181](https://redirect.github.com/j178/prek-action/pull/181) **Full Changelog**: <j178/prek-action@v3.0.1...v3.0.2> </details> <details> <summary>j178/prek (prek)</summary> ### [`v0.5.7`](https://redirect.github.com/j178/prek/releases/tag/v0.5.7): 0.5.7 [Compare Source](https://redirect.github.com/j178/prek/compare/v0.5.6...v0.5.7) #### Release Notes Released on 2026-10-21. ##### Enhancements - Support system Rust toolchains without rustup ([#​2887](https://redirect.github.com/j178/prek/pull/2887)) ##### Performance - Use blocking file checks for CPU-heavy builtin hooks ([#​2910](https://redirect.github.com/j178/prek/pull/2910)) ##### Other changes - Update CA root crates and uv for the eMudhra intermediate CA compromise ([#​2919](https://redirect.github.com/j178/prek/pull/2919)) ##### Contributors - [@​shaanmajid](https://redirect.github.com/shaanmajid) - [@​j178](https://redirect.github.com/j178) #### Install prek 0.5.7 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.5.7/prek-installer.sh | sh ``` ##### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.5.7/prek-installer.ps1 | iex" ``` ##### Install prebuilt binaries via Homebrew ```sh brew install prek ``` #### Download prek 0.5.7 | File | Platform | Checksum | | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------ | | [prek-aarch64-apple-darwin.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-apple-darwin.tar.gz.sha256) | | [prek-aarch64-pc-windows-msvc.zip](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-pc-windows-msvc.zip) | ARM64 Windows | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-pc-windows-msvc.zip.sha256) | | [prek-x86_64-pc-windows-msvc.zip](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-pc-windows-msvc.zip) | x64 Windows | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-pc-windows-msvc.zip.sha256) | | [prek-aarch64-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-unknown-linux-gnu.tar.gz) | ARM64 Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-unknown-linux-gnu.tar.gz.sha256) | | [prek-powerpc64le-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-powerpc64le-unknown-linux-gnu.tar.gz) | PPC64LE Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-powerpc64le-unknown-linux-gnu.tar.gz.sha256) | | [prek-x86_64-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-unknown-linux-gnu.tar.gz) | x64 Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-unknown-linux-gnu.tar.gz.sha256) | | [prek-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-aarch64-unknown-linux-musl.tar.gz.sha256) | | [prek-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.7/prek-x86_64-unknown-linux-musl.tar.gz.sha256) | #### Verifying GitHub Artifact Attestations The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the [GitHub CLI](https://cli.github.com/manual/gh_attestation_verify): ```sh gh attestation verify <file-path of downloaded artifact> --repo j178/prek ``` You can also download the attestation from [GitHub](https://redirect.github.com/j178/prek/attestations) and verify against that directly: ```sh gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation> ``` ### [`v0.5.6`](https://redirect.github.com/j178/prek/releases/tag/v0.5.6): 0.5.6 [Compare Source](https://redirect.github.com/j178/prek/compare/v0.5.5...v0.5.6) #### Release Notes Released on 2026-10-19. ##### Enhancements - Add builtin hook `check-commit-trailers` ([#​2885](https://redirect.github.com/j178/prek/pull/2885)) - Add builtin hook `check-signed-commit` ([#​2725](https://redirect.github.com/j178/prek/pull/2725)) ##### Performance - Enable PGO for native release builds ([#​2890](https://redirect.github.com/j178/prek/pull/2890)) - Reduce hook process launches with balanced batches ([#​2907](https://redirect.github.com/j178/prek/pull/2907)) - Resolve hook commands before batching ([#​2840](https://redirect.github.com/j178/prek/pull/2840)) ##### Bug fixes - Accept UTF-8 BOM in `check-json` ([#​2879](https://redirect.github.com/j178/prek/pull/2879)) - Preserve unquoted dotted revisions in `prek update` ([#​2853](https://redirect.github.com/j178/prek/pull/2853)) ##### Documentation - Document standalone installer options ([#​2859](https://redirect.github.com/j178/prek/pull/2859)) - Update benchmarks for prek 0.5.5 ([#​2786](https://redirect.github.com/j178/prek/pull/2786)) ##### Other changes - Enable ICF for release builds ([#​2891](https://redirect.github.com/j178/prek/pull/2891)) - Update uv to 0.13.0 ([#​2856](https://redirect.github.com/j178/prek/pull/2856)) ##### Contributors - [@​ebuildy](https://redirect.github.com/ebuildy) - [@​j178](https://redirect.github.com/j178) - [@​shaanmajid](https://redirect.github.com/shaanmajid) #### Install prek 0.5.6 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.5.6/prek-installer.sh | sh ``` ##### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.5.6/prek-installer.ps1 | iex" ``` ##### Install prebuilt binaries via Homebrew ```sh brew install prek ``` #### Download prek 0.5.6 | File | Platform | Checksum | | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------ | | [prek-aarch64-apple-darwin.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-apple-darwin.tar.gz.sha256) | | [prek-aarch64-pc-windows-msvc.zip](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-pc-windows-msvc.zip) | ARM64 Windows | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-pc-windows-msvc.zip.sha256) | | [prek-x86_64-pc-windows-msvc.zip](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-pc-windows-msvc.zip) | x64 Windows | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-pc-windows-msvc.zip.sha256) | | [prek-aarch64-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-unknown-linux-gnu.tar.gz) | ARM64 Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-unknown-linux-gnu.tar.gz.sha256) | | [prek-powerpc64le-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-powerpc64le-unknown-linux-gnu.tar.gz) | PPC64LE Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-powerpc64le-unknown-linux-gnu.tar.gz.sha256) | | [prek-x86_64-unknown-linux-gnu.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-unknown-linux-gnu.tar.gz) | x64 Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-unknown-linux-gnu.tar.gz.sha256) | | [prek-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-aarch64-unknown-linux-musl.tar.gz.sha256) | | [prek-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/j178/prek/releases/download/v0.5.6/prek-x86_64-unknown-linux-musl.tar.gz.sha256) | #### Verifying GitHub Artifact Attestations The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the [GitHub CLI](https://cli.github.com/manual/gh_attestation_verify): ```sh gh attestation verify <file-path of downloaded artifact> --repo j178/prek ``` You can also download the attestation from [GitHub](https://redirect.github.com/j178/prek/attestations) and verify against that directly: ```sh gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation> ``` </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/zrr1999/rill). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xODAuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjE4MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
> [!NOTE] > This PR body was truncated due to platform limits. This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | major | `v3.8.1` → `v5.6.0` | | [actions/cache](https://redirect.github.com/actions/cache) | action | major | `v4.3.0` → `v6.1.0` | | [actions/checkout](https://redirect.github.com/actions/checkout) | action | major | `v4.3.1` → `v7.0.1` | | [actions/checkout](https://redirect.github.com/actions/checkout) | action | major | `v5.0.1` → `v7.0.1` | | [actions/download-artifact](https://redirect.github.com/actions/download-artifact) | action | major | `v5.0.0` → `v8.0.2` | | [actions/setup-node](https://redirect.github.com/actions/setup-node) | action | major | `v5.0.0` → `v7.1.0` | | [actions/setup-node](https://redirect.github.com/actions/setup-node) | action | major | `v4.4.0` → `v7.1.0` | | [actions/stale](https://redirect.github.com/actions/stale) | action | major | `v4.1.1` → `v11.0.0` | | [actions/upload-artifact](https://redirect.github.com/actions/upload-artifact) | action | major | `v4.6.2` → `v7.0.2` | | [dcarbone/install-jq-action](https://redirect.github.com/dcarbone/install-jq-action) | action | major | `v2.1.0` → `v4.0.1` | | [deno](https://redirect.github.com/denoland/deno) | uses-with | major | `v1.x` → `2.x` | | [denoland/setup-deno](https://redirect.github.com/denoland/setup-deno) | action | major | `v1.5.2` → `v2.0.5` | | [dessant/lock-threads](https://redirect.github.com/dessant/lock-threads) | action | major | `v3.0.0` → `v6.0.2` | | [node](https://redirect.github.com/actions/node-versions) | uses-with | major | `20` → `24` | | [node](https://redirect.github.com/actions/node-versions) | uses-with | major | `18` → `24` | | [suzuki-shunsuke/pinact-action](https://redirect.github.com/suzuki-shunsuke/pinact-action) | action | major | `v2.0.0` → `v3.0.0` | | [ubuntu](https://redirect.github.com/actions/runner-images) | github-runner | major | `22.04` → `26.04` | --- ### Release Notes <details> <summary>CodSpeedHQ/action</summary> ### [`v5.6.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.6.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0) Bumps the CodSpeed runner to [v5.6.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.6.0). ##### Highlights ##### More consistent CPU Simulation results Changes to your CI environment, like a different path or an extra environment variable, no longer change the performance. Each benchmark now starts with the same memory layout, reducing the chance of false regressions. ##### 🐛 Bug Fixes - Keep the user's `HOME` when wrapping commands with sudo by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​588](https://redirect.github.com/CodSpeedHQ/codspeed/pull/588) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed10](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed10) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​593](https://redirect.github.com/CodSpeedHQ/codspeed/pull/593) - fix(callgrind): suppress L3 warning for explicit LL settings by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#52](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/52) - fix(initimg): stabilize Linux startup stack layout by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#53](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/53) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.6.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​253](https://redirect.github.com/CodSpeedHQ/action/pull/253) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0> ### [`v5.5.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.5.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.4.2...v5.5.0) Bumps the CodSpeed runner to [v5.5.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.5.0). This release adds support for Ubuntu 26.04, on both x86_64 and arm64. The officially supported distributions are now Ubuntu 22.04, 24.04 and 26.04, and Debian 12. Profile uploads are also faster on GitHub-hosted runners, and archives larger than 5 GiB can now be uploaded. Results from the [Memory instrument](https://codspeed.io/docs/instruments/memory) are processed much faster and with less memory on large benchmarks. This release also fixes a crash that could affect some `pytest-codspeed` benchmarks since v5.4.2. ##### 🚀 Features - Split profile archive uploads into concurrent parts by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​565](https://redirect.github.com/CodSpeedHQ/codspeed/pull/565) ##### 🐛 Bug Fixes - Only set `PYTHONPERFSUPPORT` for exec-harness benchmarks by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​584](https://redirect.github.com/CodSpeedHQ/codspeed/pull/584) ##### ⚡ Performance - Stream memtrack frames and decode them in parallel when finding module events by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​578](https://redirect.github.com/CodSpeedHQ/codspeed/pull/578) - Use mimalloc as the runner's global allocator by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​581](https://redirect.github.com/CodSpeedHQ/codspeed/pull/581) ##### ⚙️ Internals - Support Ubuntu 26.04 by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​574](https://redirect.github.com/CodSpeedHQ/codspeed/pull/574) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - ci: migrate to github default arm runners by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​250](https://redirect.github.com/CodSpeedHQ/action/pull/250) - chore: bump runner version to 5.5.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​251](https://redirect.github.com/CodSpeedHQ/action/pull/251) #### New Contributors - [@​lvaroqui](https://redirect.github.com/lvaroqui) made their first contribution in [#​250](https://redirect.github.com/CodSpeedHQ/action/pull/250) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.4.2...v5.5.0> ### [`v5.4.2`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.4.2) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.4.0...v5.4.2) Bumps the CodSpeed runner to [v5.4.2](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.4.2), including [v5.4.1](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.4.1). This release improves and adds support for memory flamegraphs in C++, Python and Node.js. Fixes flamegraphs for Python in simulation mode in the exec CLI. ##### 🚀 Features - Name Python and Node.js frames in memory flamegraphs: emit their perf maps in memory mode, and harvest perf maps and JIT unwind data for memory tracking, by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​556](https://redirect.github.com/CodSpeedHQ/codspeed/pull/556) - Launch `node` with the codspeed-node V8 flags for the current mode in `codspeed exec`, including through npm, npx and `#!/usr/bin/env node` scripts, by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​556](https://redirect.github.com/CodSpeedHQ/codspeed/pull/556) ##### 🐛 Bug Fixes - Always set `PYTHONPERFSUPPORT`, so Python `codspeed exec` targets keep their Python frames in simulation-mode flamegraphs, by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​577](https://redirect.github.com/CodSpeedHQ/codspeed/pull/577) - Fix memory flamegraph stacks: restore return addresses hijacked by uretprobes in nested allocator calls, compare mapped modules against their mapping, and keep every placement of a module mapped more than once, by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​564](https://redirect.github.com/CodSpeedHQ/codspeed/pull/564), [#​563](https://redirect.github.com/CodSpeedHQ/codspeed/pull/563) and [#​556](https://redirect.github.com/CodSpeedHQ/codspeed/pull/556) - Only pass `--interpreted-frames-native-stack` to node in analysis mode by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​556](https://redirect.github.com/CodSpeedHQ/codspeed/pull/556) - Label dropped benchmarks in the comparison table by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​570](https://redirect.github.com/CodSpeedHQ/codspeed/pull/570) ##### ⚙️ Internals - Pin memtrack 1.6.1 and exec-harness 1.4.1, through 1.4.0, by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​575](https://redirect.github.com/CodSpeedHQ/codspeed/pull/575) and [#​580](https://redirect.github.com/CodSpeedHQ/codspeed/pull/580) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.4.2 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​246](https://redirect.github.com/CodSpeedHQ/action/pull/246) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.4.0...v5.4.2> ### [`v5.4.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.4.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.2.1...v5.4.0) Bumps the CodSpeed runner to [v5.4.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.4.0), including [v5.3.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.3.0) and [v5.3.1](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.3.1). The [Memory instrument](https://codspeed.io/docs/instruments/memory) now tracks physical (resident) memory and captures allocation call stacks to build memory flamegraphs. Both are enabled by default and can be turned off with the new `disable-memory-track-physical` and `disable-memory-capture-stack` inputs. Serialization is also faster on large memory benchmarks. The action now exposes the id of the CodSpeed run as a `run-id` output, and CodSpeed now works on non-Ubuntu/Debian distributions such as Arch Linux. ##### 🚀 Features - Track physical memory and capture allocation call stacks for memory flamegraphs, both enabled by default by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​529](https://redirect.github.com/CodSpeedHQ/codspeed/pull/529), [#​522](https://redirect.github.com/CodSpeedHQ/codspeed/pull/522) and [#​553](https://redirect.github.com/CodSpeedHQ/codspeed/pull/553) - Expose the run id as a GitHub Actions step output by [@​moha-bekh](https://redirect.github.com/moha-bekh) in [#​551](https://redirect.github.com/CodSpeedHQ/codspeed/pull/551) - Add an `--experimental-disable-pythonmalloc-override` flag (`CODSPEED_EXPERIMENTAL_DISABLE_PYTHONMALLOC_OVERRIDE`) to stop overriding the Python allocator, which can break free-threaded Python in simulation mode, by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​539](https://redirect.github.com/CodSpeedHQ/codspeed/pull/539) - Apply kernel memory tunables before memory-mode runs, and fail early when the kernel has no BTF by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​507](https://redirect.github.com/CodSpeedHQ/codspeed/pull/507) and [#​524](https://redirect.github.com/CodSpeedHQ/codspeed/pull/524) - Pause producers under ring buffer pressure in memory mode, and log process stops per reason by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​543](https://redirect.github.com/CodSpeedHQ/codspeed/pull/543) - Log which authentication method the run uses by [@​fargito](https://redirect.github.com/fargito) in [#​521](https://redirect.github.com/CodSpeedHQ/codspeed/pull/521) ##### 🐛 Bug Fixes - Support distributions CodSpeed publishes no valgrind package for (Arch, rolling releases) by [@​moha-bekh](https://redirect.github.com/moha-bekh) in [#​525](https://redirect.github.com/CodSpeedHQ/codspeed/pull/525) - Error out when the profile archive exceeds the upload size limit by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​557](https://redirect.github.com/CodSpeedHQ/codspeed/pull/557) - Detect free-threaded Python from venv and uv before setting `PYTHONMALLOC` by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​539](https://redirect.github.com/CodSpeedHQ/codspeed/pull/539) - Honor deprecated experimental flags, including their falsey values, instead of ignoring them by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​532](https://redirect.github.com/CodSpeedHQ/codspeed/pull/532) and [#​553](https://redirect.github.com/CodSpeedHQ/codspeed/pull/553) - Fix memory tracking edge cases: reused pids, stack-ring overflow, BPF links held by forked processes, and allocator symbols aliased at an attached offset by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​522](https://redirect.github.com/CodSpeedHQ/codspeed/pull/522) and [#​543](https://redirect.github.com/CodSpeedHQ/codspeed/pull/543) - Attach memory tracking hooks without `perf_event_open` by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​536](https://redirect.github.com/CodSpeedHQ/codspeed/pull/536) - Restore profiling sysctls in walltime mode by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​507](https://redirect.github.com/CodSpeedHQ/codspeed/pull/507) ##### ⚡ Performance - Speed up memory serialization and reduce the tracker's memory usage on large memory benchmarks by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​522](https://redirect.github.com/CodSpeedHQ/codspeed/pull/522), [#​537](https://redirect.github.com/CodSpeedHQ/codspeed/pull/537), [#​548](https://redirect.github.com/CodSpeedHQ/codspeed/pull/548), [#​558](https://redirect.github.com/CodSpeedHQ/codspeed/pull/558) and [#​560](https://redirect.github.com/CodSpeedHQ/codspeed/pull/560) ##### ⚙️ Internals - Pin memtrack to 1.6.0, through 1.5.0 and 1.5.1, by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​530](https://redirect.github.com/CodSpeedHQ/codspeed/pull/530), [#​541](https://redirect.github.com/CodSpeedHQ/codspeed/pull/541) and [#​561](https://redirect.github.com/CodSpeedHQ/codspeed/pull/561) - Keep mmap/munmap/brk as deprecated memtrack artifact variants by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​538](https://redirect.github.com/CodSpeedHQ/codspeed/pull/538) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.3.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​239](https://redirect.github.com/CodSpeedHQ/action/pull/239) - feat: add memory-track-physical experimental input by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​238](https://redirect.github.com/CodSpeedHQ/action/pull/238) - chore: bump runner version to 5.3.1 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​240](https://redirect.github.com/CodSpeedHQ/action/pull/240) - feat: add a run-id output by [@​moha-bekh](https://redirect.github.com/moha-bekh) in [#​243](https://redirect.github.com/CodSpeedHQ/action/pull/243) - chore: bump runner version to 5.4.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​244](https://redirect.github.com/CodSpeedHQ/action/pull/244) - feat: add disable-memory-capture-stack and disable-memory-track-physical inputs by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​242](https://redirect.github.com/CodSpeedHQ/action/pull/242) #### New Contributors - [@​moha-bekh](https://redirect.github.com/moha-bekh) made their first contribution in [#​243](https://redirect.github.com/CodSpeedHQ/action/pull/243) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.2.1...v5.4.0> ### [`v5.2.1`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.2.1) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.2.0...v5.2.1) Bumps the CodSpeed runner to [v5.2.1](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.2.1). ##### 🚀 Features - Add a `simulation-track-subprocess` input, which enables measuring the subprocesses spawned by the benchmarked process in `simulation` mode by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​235](https://redirect.github.com/CodSpeedHQ/action/pull/235) - Bump the go-runner to [v1.3.0](https://redirect.github.com/CodSpeedHQ/codspeed-go/releases/tag/v1.3.0), adding Go 1.26 and 1.27 support by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​516](https://redirect.github.com/CodSpeedHQ/codspeed/pull/516) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - feat: add simulation-track-subprocess input by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​235](https://redirect.github.com/CodSpeedHQ/action/pull/235) - chore: bump runner version to 5.2.1 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​236](https://redirect.github.com/CodSpeedHQ/action/pull/236) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.2.0...v5.2.1> ### [`v5.2.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.2.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.0.3...v5.2.0) Bumps the CodSpeed runner to [v5.2.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.2.0), including [v5.1.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.1.0). ##### 🚀 Features - Add a `--simulation-track-subprocess` flag that enables tracking benchmark subprocesses, along with per-thread dumps by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​493](https://redirect.github.com/CodSpeedHQ/codspeed/pull/493) and [#​513](https://redirect.github.com/CodSpeedHQ/codspeed/pull/513) - Collect RSS via rss_stat and folio-rmap reconstruction by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​453](https://redirect.github.com/CodSpeedHQ/codspeed/pull/453) - Support CircleCI for GitHub repositories by [@​fargito](https://redirect.github.com/fargito) in [#​482](https://redirect.github.com/CodSpeedHQ/codspeed/pull/482) ##### 🐛 Bug Fixes - Fix cache behavior that was causing an apt reinstall of the libc debug symbols despite cache restore by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​509](https://redirect.github.com/CodSpeedHQ/codspeed/pull/509) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed7](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed7) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​515](https://redirect.github.com/CodSpeedHQ/codspeed/pull/515) - fix(callgrind): represent os threads under `--separate-threads=yes` by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [CodSpeedHQ/valgrind-codspeed#24](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/24) - feat(callgrind): track subprocesses across fork and exec by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [CodSpeedHQ/valgrind-codspeed#25](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/25) - Stop skipping the rustup wrapper for valgrind by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​493](https://redirect.github.com/CodSpeedHQ/codspeed/pull/493) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - fix: add the distribution to the instruments cache key by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​233](https://redirect.github.com/CodSpeedHQ/action/pull/233) - chore: bump runner version to 5.1.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​232](https://redirect.github.com/CodSpeedHQ/action/pull/232) - chore: bump runner version to 5.2.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​234](https://redirect.github.com/CodSpeedHQ/action/pull/234) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.0.3...v5.2.0> ### [`v5.0.3`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.0.3) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.0.2...v5.0.3) Bumps the CodSpeed runner to [v5.0.2](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.0.2). ##### 🐛 Bug Fixes - Retry complete pinned binary downloads by [@​art049](https://redirect.github.com/art049) in [#​499](https://redirect.github.com/CodSpeedHQ/codspeed/pull/499) - Accept `--exclude-allocations` and `--cycle-estimation` without a value by [@​not-matthias](https://redirect.github.com/not-matthias) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.0.2 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​230](https://redirect.github.com/CodSpeedHQ/action/pull/230) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.0.2...v5.0.3> ### [`v5.0.2`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.0.2) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.0.1...v5.0.2) #### What's Changed - feat: add cycle-estimation and exclude-allocations inputs by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​229](https://redirect.github.com/CodSpeedHQ/action/pull/229) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v5.0.1...v5.0.2> ### [`v5.0.1`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.0.1) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.0.0...v5.0.1) #### 🚀 Highlights ##### More precise measurements by default `cycle-estimation` is now enabled by default, giving more precise benchmark cycle estimation in Simulation mode. See [docs](https://codspeed.io/docs/instruments/cpu#estimating-cycles). ##### New: allocation exclusion Opt in to `exclude-allocations` to remove allocator time from benchmarks in Simulation mode and reduce variance. See [docs](https://codspeed.io/docs/instruments/cpu/allocation-exclusion). ##### `samply`-based profiler by default on Linux The walltime profiler now uses `samply` on all OSes. Set `CODSPEED_WALLTIME_PROFILER=perf` to restore the previous behavior. #### ⚠️ Breaking changes - `cycle-estimation` is now enabled by default (see above) - The `samply`-based profiler is now the default on Linux; set `CODSPEED_WALLTIME_PROFILER=perf` to revert #### Details ##### <!-- 0 -->🚀 Features - Load eBPF through a delegated BPF token by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Enable cycle estimation and allocation exclusion by default by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​461](https://redirect.github.com/CodSpeedHQ/runner/pull/461) - Make samply profiler default for all OSes ([#​472](https://redirect.github.com/CodSpeedHQ/action/issues/472)) by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​475](https://redirect.github.com/CodSpeedHQ/runner/pull/475) ##### <!-- 1 -->🐛 Bug Fixes - Classify mapped libraries without init-userns privilege by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Disable allocator exclusion by default ([#​489](https://redirect.github.com/CodSpeedHQ/action/issues/489)) by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​489](https://redirect.github.com/CodSpeedHQ/runner/pull/489) ##### <!-- 10 -->💼 Other - Bump the memtrack pin to 1.4.0 by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​484](https://redirect.github.com/CodSpeedHQ/runner/pull/484) ##### <!-- 2 -->🏗️ Refactor - Hook-based CPU isolation for the walltime runner by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) ##### <!-- 6 -->🧪 Testing - Run every tracking test under both BPF variants by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 5.0.1 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​228](https://redirect.github.com/CodSpeedHQ/action/pull/228) - docs: bump documented action version to v5 by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​227](https://redirect.github.com/CodSpeedHQ/action/pull/227) - Bump submodule to reduce debug info server timeouts by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Make tests run release builds of the binaries by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​456](https://redirect.github.com/CodSpeedHQ/runner/pull/456) - Update submodule to fix fmt and ignore ubuntu debuginfod serv by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) #### Install codspeed-runner 5.0.1 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 5.0.1 | File | Platform | Checksum | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v5.0.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.19.1...v5.0.1> ### [`v5.0.0`](https://redirect.github.com/CodSpeedHQ/action/compare/v4.19.1...v5.0.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.19.1...v5.0.0) ### [`v4.19.1`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.19.1) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.19.0...v4.19.1) #### Release Notes This release ships improvements for the memory instrument. The memory instrument now lazily attaches to allocators, which lowers the startup time to a few seconds (down from minutes on certain systems). Additionally, we shipped a series of serialization improvements, removing in some large benchmarks 3+ minutes of extra CI time. ##### <!-- 1 -->🐛 Bug Fixes - Track successful posix_memalign allocations ([#​470](https://redirect.github.com/CodSpeedHQ/action/issues/470)) by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​470](https://redirect.github.com/CodSpeedHQ/runner/pull/470) - Prompt sudo on interactive stdin ([#​459](https://redirect.github.com/CodSpeedHQ/action/issues/459)) by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​459](https://redirect.github.com/CodSpeedHQ/runner/pull/459) - Reject empty command before executor setup ([#​467](https://redirect.github.com/CodSpeedHQ/action/issues/467)) by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​467](https://redirect.github.com/CodSpeedHQ/runner/pull/467) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 4.19.1 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​225](https://redirect.github.com/CodSpeedHQ/action/pull/225) ##### <!-- 10 -->💼 Other - Bump the memtrack pin to 1.3.0 by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​474](https://redirect.github.com/CodSpeedHQ/runner/pull/474) #### Install codspeed-runner 4.19.1 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.19.1 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.19.0...v4.19.1> ### [`v4.19.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.19.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.18.5...v4.19.0) #### Release Notes This release adds a new `--experimental-exclude-allocations` feature to remove allocator time from Simulation benchmarks. ##### <!-- 0 -->🚀 Features - Remove eager allocator discovery by [@​not-matthias](https://redirect.github.com/not-matthias) - Attach allocator probes on demand via exec-mapping watcher by [@​not-matthias](https://redirect.github.com/not-matthias) - Add exec-mapping watcher BPF prog and inode maps by [@​not-matthias](https://redirect.github.com/not-matthias) - Add experimental --exclude-allocations setting by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 1 -->🐛 Bug Fixes - Join attach worker thread on drop, not only on finish() by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​445](https://redirect.github.com/CodSpeedHQ/runner/pull/445) - Fail loud when a watcher mapping is unresolved on a live process by [@​not-matthias](https://redirect.github.com/not-matthias) - Canonicalize map_files dirent name for low-address mappings by [@​not-matthias](https://redirect.github.com/not-matthias) - Classify unprefixed jemalloc builds as jemalloc by [@​not-matthias](https://redirect.github.com/not-matthias) - Fail closed when tracking_enabled lookup fails by [@​not-matthias](https://redirect.github.com/not-matthias) - Lower zstd compression level to -5 to reduce serialization overhead by [@​not-matthias](https://redirect.github.com/not-matthias) - Wire MemtrackWriter serializer through BufWriter to fix per-event zstd compression bottleneck by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 10 -->💼 Other - Let the tracker own the poller and drain on shutdown by [@​not-matthias](https://redirect.github.com/not-matthias) - Return the underlying sink from MemtrackWriter::finish by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 2 -->🏗️ Refactor - Split monolithic eBPF C and Rust into domain files by [@​not-matthias](https://redirect.github.com/not-matthias) - Split memtrack into module by [@​not-matthias](https://redirect.github.com/not-matthias) - Attach uprobes at resolved file offsets instead of func_name by [@​not-matthias](https://redirect.github.com/not-matthias) - Align cycle-estimation flag with experimental naming scheme by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​425](https://redirect.github.com/CodSpeedHQ/runner/pull/425) ##### <!-- 3 -->📚 Documentation - Add crate AGENTS.md guide by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​455](https://redirect.github.com/CodSpeedHQ/runner/pull/455) - Stop hardcoding MCP tool schemas in the optimize skill by [@​fargito](https://redirect.github.com/fargito) in [#​451](https://redirect.github.com/CodSpeedHQ/runner/pull/451) ##### <!-- 4 -->⚡ Performance - Drain ringbuf bursts eagerly and reserve poller cores by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​436](https://redirect.github.com/CodSpeedHQ/runner/pull/436) - Grow the event ring buffer to 256 MiB by [@​not-matthias](https://redirect.github.com/not-matthias) - Wake the ringbuf consumer only past a data watermark by [@​not-matthias](https://redirect.github.com/not-matthias) - Pre-size and reuse the memtrack encode window buffer by [@​not-matthias](https://redirect.github.com/not-matthias) - Replace drain/writer threads with the encode pipeline by [@​not-matthias](https://redirect.github.com/not-matthias) - Add parallel zstd encode pipeline for artifact events by [@​not-matthias](https://redirect.github.com/not-matthias) - Detach BPF links in parallel at teardown by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​440](https://redirect.github.com/CodSpeedHQ/runner/pull/440) - Resolve allocator symbol offsets in parallel by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 6 -->🧪 Testing - Add dlopen/on-demand allocator tests + CI matrix by [@​not-matthias](https://redirect.github.com/not-matthias) - Benchmark encode_events with a realistic allocation trace by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 4.19.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​224](https://redirect.github.com/CodSpeedHQ/action/pull/224) - Lower on-demand attach log to debug by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​462](https://redirect.github.com/CodSpeedHQ/runner/pull/462) - Install rust toolchain by explicit channel for older rustup by [@​not-matthias](https://redirect.github.com/not-matthias) - Also run runner-shared benchmarks in walltime mode by [@​not-matthias](https://redirect.github.com/not-matthias) - Dedup memtrack build deps into install-bpf-deps action by [@​not-matthias](https://redirect.github.com/not-matthias) #### Install codspeed-runner 4.19.0 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.19.0 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.19.0/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.18.5...v4.19.0> ### [`v4.18.5`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.18.5) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.18.4...v4.18.5) #### Release Notes ##### <!-- 10 -->💼 Other - Bump pinned valgrind-codspeed to [3.26.0-0codspeed6](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed6) ([#​448](https://redirect.github.com/CodSpeedHQ/action/issues/448)) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​448](https://redirect.github.com/CodSpeedHQ/runner/pull/448) - fix: hangs on ARM64 due to atomics by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#23](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/23) - fix(aspacem): raise amd64 managed address ceiling to 1 TiB by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#22](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/22) #### Install codspeed-runner 4.18.4 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.18.4 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.4/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.18.4...v4.18.5> ### [`v4.18.4`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.18.4) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.18.2...v4.18.4) #### What's Changed - fix 4.18.3 runner hash – [`bf19f56`](https://redirect.github.com/CodSpeedHQ/action/commit/bf19f56fe8857e83e4343138c1a927e56f666e3b) by [@​adriencaccia](https://redirect.github.com/adriencaccia) **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.18.3...v4.18.4> ### [`v4.18.2`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.18.2) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.18.1...v4.18.2) #### Release Notes ##### <!-- 1 -->🐛 Bug Fixes - Source forwarded env below memtrack's capability boundary by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​439](https://redirect.github.com/CodSpeedHQ/runner/pull/439) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 4.18.2 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​219](https://redirect.github.com/CodSpeedHQ/action/pull/219) #### Install codspeed-runner 4.18.2 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.18.2 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.2/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> **Full Changelog**: <https://github.com/CodSpeedHQ/action/compare/v4.18.1...v4.18.2> ### [`v4.18.1`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.18.1) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.18.0...v4.18.1) #### Release Notes ##### <!-- 0 -->🚀 Features - Bump go-runner to 1.2.1 by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​421](https://redirect.github.com/CodSpeedHQ/runner/pull/421) #### Install codspeed-runner 4.18.1 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.18.1 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.1/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> ### [`v4.18.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.18.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.17.6...v4.18.0) #### Release Notes ##### <!-- 0 -->🚀 Features - Bump valgrind-codspeed to 3.26.0-0codspeed4 - Bump samply by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​415](https://redirect.github.com/CodSpeedHQ/runner/pull/415) - Set env var to have node dump inlining information by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Change isolation logic to include samply and non root fallback by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Add experimental --cycle-estimation flag by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​412](https://redirect.github.com/CodSpeedHQ/runner/pull/412) - Make samply-codspeed a submodule rather than git rev with cargo by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​416](https://redirect.github.com/CodSpeedHQ/runner/pull/416) ##### <!-- 1 -->🐛 Bug Fixes - Honor locally-installed valgrind on non-apt systems by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​414](https://redirect.github.com/CodSpeedHQ/runner/pull/414) #### Install codspeed-runner 4.18.0 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.18.0 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-x86_64-unknown-linux-musl.tar.gz) | x64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.18.0/codspeed-runner-x86_64-unknown-linux-musl.tar.gz.sha256) | **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> ### [`v4.17.6`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v4.17.6) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v4.17.5...v4.17.6) #### Release Notes ##### <!-- 0 -->🚀 Features - feat: skip hash check error when installing pre-release by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​215](https://redirect.github.com/CodSpeedHQ/action/pull/215) - Show memtrack capability status in setup status by [@​not-matthias](https://redirect.github.com/not-matthias) - Run memtrack sudo-less via file capabilities by [@​not-matthias](https://redirect.github.com/not-matthias) - Use extra events when using samply on linux by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) in [#​404](https://redirect.github.com/CodSpeedHQ/runner/pull/404) - Update `PerfEvent` to also support samply format by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Use isolation for with samply by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Make eh_frame_hdr optional in unwind data (V4) by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 1 -->🐛 Bug Fixes - Keep rolling buffer off during executor setup by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​411](https://redirect.github.com/CodSpeedHQ/runner/pull/411) - Gate memory executor behind Linux target by [@​not-matthias](https://redirect.github.com/not-matthias) - Enable tracking when running without IPC by [@​not-matthias](https://redirect.github.com/not-matthias) - Tolerate RLIMIT_MEMLOCK EPERM on modern kernels by [@​not-matthias](https://redirect.github.com/not-matthias) - Install libc6-dbg during valgrind setup by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​394](https://redirect.github.com/CodSpeedHQ/runner/pull/394) - Skip rustup-wrapped proxy in trace-children by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​405](https://redirect.github.com/CodSpeedHQ/runner/pull/405) - Retry streamed uploads on transient failures by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​399](https://redirect.github.com/CodSpeedHQ/runner/pull/399) - Extract unwind data for binaries without eh_frame_hdr by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 10 -->💼 Other - Drop OpenSSL, move TLS stack to rustls ([#​406](https://redirect.github.com/CodSpeedHQ/action/issues/406)) by [@​art049](https://redirect.github.com/art049) in [#​406](https://redirect.github.com/CodSpeedHQ/runner/pull/406) ##### <!-- 2 -->🏗️ Refactor - Split executor privilege granting into grant_privileges by [@​not-matthias](https://redirect.github.com/not-matthias) ##### <!-- 3 -->📚 Documentation - Add unwind data version changelog by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​393](https://redirect.github.com/CodSpeedHQ/runner/pull/393) ##### <!-- 7 -->⚙️ Internals - chore: bump runner version to 4.17.6 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​216](https://redirect.github.com/CodSpeedHQ/action/pull/216) - Grant memtrack file capabilities before memory tests by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​407](https://redirect.github.com/CodSpeedHQ/runner/pull/407) - Bump samply to support additional events by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) - Add helper script to use local versions of samply and framehop easily by [@​GuillaumeLagrange](https://redirect.github.com/GuillaumeLagrange) #### Install codspeed-runner 4.17.6 ##### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-installer.sh | sh ``` #### Download codspeed-runner 4.17.6 | File | Platform | Checksum | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | [codspeed-runner-aarch64-apple-darwin.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-apple-darwin.tar.gz.sha256) | | [codspeed-runner-aarch64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-unknown-linux-musl.tar.gz) | ARM64 MUSL Linux | [checksum](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-runner-aarch64-unknown-linux-musl.tar.gz.sha256) | | [codspeed-runner-x86_64-unknown-linux-musl.tar.gz](https://redirect.github.com/CodSpeedHQ/codspeed/releases/download/v4.17.6/codspeed-run > [!IMPORTANT] > ✂ PR body was truncated to here. --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: DongYun Kang <kdy.1997.dev@gmail.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action) | action | minor | `v5.4.2` → `v5.6.0` | | [Glatzel/template](https://redirect.github.com/Glatzel/template) | action | patch | `v2026.10.9` → `v2026.10.13` | --- ### Release Notes <details> <summary>CodSpeedHQ/action</summary> ### [`v5.6.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.6.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.5.0...v5.6.0) Bumps the CodSpeed runner to [v5.6.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.6.0). ##### Highlights ##### More consistent CPU Simulation results Changes to your CI environment, like a different path or an extra environment variable, no longer change the performance. Each benchmark now starts with the same memory layout, reducing the chance of false regressions. ##### 🐛 Bug Fixes - Keep the user's `HOME` when wrapping commands with sudo by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​588](https://redirect.github.com/CodSpeedHQ/codspeed/pull/588) ##### ⚙️ Internals - Bump pinned valgrind-codspeed to [3.26.0-0codspeed10](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/releases/tag/3.26.0-0codspeed10) by [@​adriencaccia](https://redirect.github.com/adriencaccia) in [#​593](https://redirect.github.com/CodSpeedHQ/codspeed/pull/593) - fix(callgrind): suppress L3 warning for explicit LL settings by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#52](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/52) - fix(initimg): stabilize Linux startup stack layout by [@​not-matthias](https://redirect.github.com/not-matthias) in [CodSpeedHQ/valgrind-codspeed#53](https://redirect.github.com/CodSpeedHQ/valgrind-codspeed/pull/53) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - chore: bump runner version to 5.6.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​253](https://redirect.github.com/CodSpeedHQ/action/pull/253) **Full Changelog**: <CodSpeedHQ/action@v5.5.0...v5.6.0> ### [`v5.5.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v5.5.0) [Compare Source](https://redirect.github.com/CodSpeedHQ/action/compare/v5.4.2...v5.5.0) Bumps the CodSpeed runner to [v5.5.0](https://redirect.github.com/CodSpeedHQ/codspeed/releases/tag/v5.5.0). This release adds support for Ubuntu 26.04, on both x86_64 and arm64. The officially supported distributions are now Ubuntu 22.04, 24.04 and 26.04, and Debian 12. Profile uploads are also faster on GitHub-hosted runners, and archives larger than 5 GiB can now be uploaded. Results from the [Memory instrument](https://codspeed.io/docs/instruments/memory) are processed much faster and with less memory on large benchmarks. This release also fixes a crash that could affect some `pytest-codspeed` benchmarks since v5.4.2. ##### 🚀 Features - Split profile archive uploads into concurrent parts by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​565](https://redirect.github.com/CodSpeedHQ/codspeed/pull/565) ##### 🐛 Bug Fixes - Only set `PYTHONPERFSUPPORT` for exec-harness benchmarks by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​584](https://redirect.github.com/CodSpeedHQ/codspeed/pull/584) ##### ⚡ Performance - Stream memtrack frames and decode them in parallel when finding module events by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​578](https://redirect.github.com/CodSpeedHQ/codspeed/pull/578) - Use mimalloc as the runner's global allocator by [@​not-matthias](https://redirect.github.com/not-matthias) in [#​581](https://redirect.github.com/CodSpeedHQ/codspeed/pull/581) ##### ⚙️ Internals - Support Ubuntu 26.04 by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​574](https://redirect.github.com/CodSpeedHQ/codspeed/pull/574) **Full Runner Changelog**: <https://github.com/CodSpeedHQ/codspeed/blob/main/CHANGELOG.md> #### What's Changed - ci: migrate to github default arm runners by [@​lvaroqui](https://redirect.github.com/lvaroqui) in [#​250](https://redirect.github.com/CodSpeedHQ/action/pull/250) - chore: bump runner version to 5.5.0 by [@​github-actions](https://redirect.github.com/github-actions)\[bot] in [#​251](https://redirect.github.com/CodSpeedHQ/action/pull/251) #### New Contributors - [@​lvaroqui](https://redirect.github.com/lvaroqui) made their first contribution in [#​250](https://redirect.github.com/CodSpeedHQ/action/pull/250) **Full Changelog**: <CodSpeedHQ/action@v5.4.2...v5.5.0> </details> <details> <summary>Glatzel/template</summary> ### [`v2026.10.13`](https://redirect.github.com/Glatzel/template/compare/v2026.10.12...v2026.10.13) [Compare Source](https://redirect.github.com/Glatzel/template/compare/v2026.10.12...v2026.10.13) ### [`v2026.10.12`](https://redirect.github.com/Glatzel/template/compare/v2026.10.11...v2026.10.12) [Compare Source](https://redirect.github.com/Glatzel/template/compare/v2026.10.11...v2026.10.12) ### [`v2026.10.11`](https://redirect.github.com/Glatzel/template/compare/v2026.10.10...v2026.10.11) [Compare Source](https://redirect.github.com/Glatzel/template/compare/v2026.10.10...v2026.10.11) ### [`v2026.10.10`](https://redirect.github.com/Glatzel/template/compare/v2026.10.9...v2026.10.10) [Compare Source](https://redirect.github.com/Glatzel/template/compare/v2026.10.9...v2026.10.10) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - On day 1 of the month (`* * 1 * *`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/Glatzel/pyxis). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xODguMiIsInVwZGF0ZWRJblZlciI6IjQ0LjE4OC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
TLDR: Argument and environment sizes move the initial guest stack pointer and change simulated cache misses. Reserve a fixed startup region to keep the stack pointer stable (Linux).
AT_RANDOM.This removes startup stack-address variation, not input-dependent work, randomness or scheduling nondeterminism.
Before/after variance matrix — 47 workloads
Same x86-64 Linux host and byte-identical workload executable; parent
e1e4bdf3versus stack-layout fixa5dc7701. Both Valgrind builds report3.26.0.codspeed9; the parent was rebuilt cleanly. Each build runs 18 controlled process states × three repetitions: 54 samples per workload, 2,538 samples total. The states vary ignored environment values/counts, argument contents/counts and directory contents.CV is population standard deviation / mean × 100 across these controlled states, not walltime variance or a speedup. D1mr/D1mw are L1 data read/write misses; DLmr/DLmw are last-level data read/write misses. Small miss counts can produce large relative CVs. The after column is the maximum CV across all 11 checked counters (
Ir,Dr,Dw,I1mr,D1mr,D1mw,ILmr,DLmr,DLmw,Ct,Cl): every value is exactly invariant, not merely rounded to zero.expr_eval_recursiveexpr_accumulate_recursiveinsertion_sort_64merge_sort_recursive_64dense_stack_checksum_4kstrided_static_table_sumheap_slice_sum_controlregister_arithmetic_controlsparse_64b_d08sparse_80b_d08dense_64b_d08dense_80b_d08aligned_64b_d08aligned_80b_d08sparse_64b_d32sparse_80b_d32dense_64b_d32dense_80b_d32aligned_64b_d32aligned_80b_d32sparse_64b_d64sparse_80b_d64dense_64b_d64dense_80b_d64aligned_64b_d64aligned_80b_d64sparse_784b_d08sparse_800b_d08dense_784b_d08aligned_784b_d08spread_784b_d08spread_800b_d08aligned_spread_784b_d08sparse_784b_d32sparse_800b_d32dense_784b_d32aligned_784b_d32spread_784b_d32spread_800b_d32aligned_spread_784b_d32sparse_784b_d64sparse_800b_d64dense_784b_d64aligned_784b_d64spread_784b_d64spread_800b_d64aligned_spread_784b_d64Workload executable SHA-256:
cd9d44401bb329cb33d54463ecea22d6ebb1b6517d67dd948f1804b91aa921cc.