close
Avatar for the BoundaryML user
BoundaryML
baml
BlogDocsChangelog

Performance History

Latest Results

refactor: remove unnecessary deep cloning in native function glue (#3447) [Ticket](https://cloud.codelayer.cloud/artifacts/019de23b-2ebc-7000-85b0-9585394ab28b) | [Artifacts](https://cloud.codelayer.cloud/tasks/019de23b-2d62-7fe8-b263-1a8075ca36a4/artifacts) | [Task](https://cloud.codelayer.cloud/deep/tasks/019de23b-2d62-7fe8-b263-1a8075ca36a4) ## What problems was I solving The native function glue layer (generated by `baml_builtins2_codegen`) was cloning every heap-type argument (arrays, maps, strings, uint8arrays) when passing them to native Rust functions — even though those functions accept references (`&[Value]`, `&str`, `&IndexMap`, `&[u8]`). This caused **O(n²) behavior in array iteration**: `for (let x in arr)` calls `Array.length` every iteration, and each call cloned the entire array. For 100k elements, this meant ~10 billion `Value` copies and 9.6 seconds of wall clock time. The VM accessor methods (`vm.as_array()`, `vm.as_string()`, etc.) already return references. The native implementations already accept references. The clones in between were pure waste. ## What user-facing changes did I ship No user-facing API changes. This is an internal performance optimization that eliminates unnecessary memory allocation and copying in the VM's builtin method dispatch path. Users should see significant speedups in tight loops that call builtin methods, especially array iteration patterns. ## How I implemented it ### Phase 1: Zero-copy extraction for non-mutating builtins (commit `16458229d`) - [codegen.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-codegen) — Threaded a `needs_owned` flag through the entire extraction pipeline. Computed from `matches!(b.vm_usage, VmUsage::MutRef) || b.may_yield` in `emit_glue_method`. When `needs_owned = false`, extraction emits reference-based expressions (e.g., `vm.as_array(&args[0])?` instead of `vm.as_array(&args[0])?.to_vec()`). Updated `call_arg_for_type` with an `is_ref` flag so reference-extracted values aren't double-referenced. ### Phase 2: Reclassify read-only methods from MutRef to Ref (commit `6f7519f65`) - [containers.baml](https://github.com/BoundaryML/baml/pull/3447/files#diff-containers) — Changed `Array.join`, `Map.has`, `Map.get` from `//baml:mut_vm` to `//baml:vm` - [unstable.baml](https://github.com/BoundaryML/baml/pull/3447/files#diff-unstable) — Changed `unstable.string` from `//baml:mut_vm` to `//baml:vm` - [array.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-array), [map.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-map), [unstable.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-unstable-rs) — Changed `vm: &mut BexVm` → `vm: &BexVm` in corresponding native implementations ### Phase 3: Eliminate VM dependency from String.split (commit `cb79c358b`) - [string.baml](https://github.com/BoundaryML/baml/pull/3447/files#diff-string-baml) — Removed `//baml:mut_vm` annotation from `String.split` - [string.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-string-rs) — Changed `split` to return `Vec<String>` instead of `Vec<Value>`, removing the `vm` parameter entirely. Uses `str::to_string` instead of `vm.alloc_string`. - [codegen.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-codegen) — Added `Vec<String>` return type mapping in `baml_type_to_output` for `List(String)`. Added two-step result conversion in `emit_result_conversion_ok` that first collects `Vec<String>` into `Vec<Value>`, then allocates the array — avoiding double-borrow of `vm`. - [sys.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-sys) — Extended the same `Vec<String>` return pattern to `sys.argv` - [extract.rs](https://github.com/BoundaryML/baml/pull/3447/files#diff-extract) — Updated test assertion for `String.split` from `VmUsage::MutRef` to `VmUsage::None` ## Deviations from the plan ### Implemented as planned - Phase 1 `needs_owned` computation and threading through all extraction/call-arg functions - Phase 1 conditional extraction: reference-based for `!needs_owned`, clone-based for `needs_owned` - Phase 2 BAML annotation reclassifications and `&mut BexVm` → `&BexVm` signature changes - Phase 3 `String.split` return type change to `Vec<String>` and `VmUsage::None` reclassification - Phase 3 `baml_type_to_output` `List(String)` → `Vec<String>` mapping ### Deviations/surprises - **`emit_result_conversion_ok` vs `result_conversion_expr`**: Plan specified updating `result_conversion_expr` for the `List(String)` two-step allocation. Implementation places this logic as an early-return guard in `emit_result_conversion_ok` instead — same generated output, different code organization - **Method reference syntax**: Plan specified closure syntax `|s| s.as_str()` / `|v| v.as_slice()` for Optional conversion; implementation uses more idiomatic `String::as_str` / `Vec::as_slice` method references - **`str::to_string` vs `.to_string()`**: `String.split` uses `str::to_string` method reference instead of closure — functionally identical ### Additions not in plan - **`sys.argv` return type changed to `Vec<String>`**: Plan explicitly said `sys.argv` should remain `MutRef` with cloning. Implementation extended the `List(String)` optimization to `sys.argv` as well, which is safe since the generated glue handles VM allocation after the function returns - **Unused import cleanup**: Removed `use bex_vm_types::types::Value` and `use crate::BexVm` from `string.rs` and `sys.rs` as natural consequence of the changes ### Items planned but not implemented - None — all three phases were fully implemented ## How to verify it ### Setup ```bash git fetch scripts/create_worktree.sh hellovai/remove-unnecessary-deep-cloning-in-native-function-glue cd ~/wt/baml/remove-unnecessary-deep-cloning-in-native-function-glue/baml_language ``` ### Automated Tests ```bash cargo build -p bex_vm # validates generated glue compiles cargo test -p baml_builtins2_codegen # codegen + trait signature tests cargo test -p baml_tests # integration tests for correctness ``` ### Benchmarks ```bash cargo bench --bench runtime_benchmark # measure improvement on vm_array_iter_10k ``` ## Description for the changelog Remove unnecessary deep cloning of heap-type arguments in VM builtin method dispatch, fixing O(n²) performance in array iteration loops. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Builtin operations for arrays, maps, and strings now use less mutable VM access and improved ownership handling, reducing unnecessary borrowing and allocations. * Codegen updated to emit ownership-aware glue so arguments and returns avoid double-borrowing. * **Tests** * Adjusted test expectations to align with the refined VM-usage and ownership semantics. * **Chores** * CI workflow trigger conditions expanded for benchmark jobs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
canary
4 hours ago
chore(deps): bump the cargo group across 4 directories with 10 updates Bumps the cargo group with 4 updates in the /baml_language directory: [openssl](https://github.com/rust-openssl/rust-openssl), [rand](https://github.com/rust-random/rand), [rustls-webpki](https://github.com/rustls/webpki) and [thin-vec](https://github.com/mozilla/thin-vec). Bumps the cargo group with 8 updates in the /engine directory: | Package | From | To | | --- | --- | --- | | [aws-sdk-bedrockruntime](https://github.com/awslabs/aws-sdk-rust) | `1.106.0` | `1.107.0` | | [bytes](https://github.com/tokio-rs/bytes) | `1.10.1` | `1.11.1` | | [time](https://github.com/time-rs/time) | `0.3.43` | `0.3.47` | | [openssl](https://github.com/rust-openssl/rust-openssl) | `0.10.73` | `0.10.78` | | [quinn-proto](https://github.com/quinn-rs/quinn) | `0.11.13` | `0.11.14` | | [rand](https://github.com/rust-random/rand) | `0.8.5` | `0.9.2` | | [jsonwebtoken](https://github.com/Keats/jsonwebtoken) | `9.3.1` | `10.3.0` | | [tar](https://github.com/alexcrichton/tar-rs) | `0.4.44` | `0.4.45` | Bumps the cargo group with 2 updates in the /integ-tests/rust directory: [bytes](https://github.com/tokio-rs/bytes) and [rustls-webpki](https://github.com/rustls/webpki). Bumps the cargo group with 2 updates in the /languages/rust directory: [bytes](https://github.com/tokio-rs/bytes) and [rustls-webpki](https://github.com/rustls/webpki). Updates `openssl` from 0.10.76 to 0.10.78 - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.76...openssl-v0.10.78) Updates `rand` from 0.8.5 to 0.8.6 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/0.8.6/CHANGELOG.md) - [Commits](https://github.com/rust-random/rand/compare/0.8.5...0.8.6) Updates `rustls-webpki` from 0.103.10 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `thin-vec` from 0.2.14 to 0.2.18 - [Changelog](https://github.com/mozilla/thin-vec/blob/main/RELEASES.md) - [Commits](https://github.com/mozilla/thin-vec/commits) Updates `rand` from 0.8.5 to 0.8.6 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/0.8.6/CHANGELOG.md) - [Commits](https://github.com/rust-random/rand/compare/0.8.5...0.8.6) Updates `openssl` from 0.10.76 to 0.10.78 - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.76...openssl-v0.10.78) Updates `rustls-webpki` from 0.103.10 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `rustls-webpki` from 0.103.10 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `rustls-webpki` from 0.103.10 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `aws-sdk-bedrockruntime` from 1.106.0 to 1.107.0 - [Release notes](https://github.com/awslabs/aws-sdk-rust/releases) - [Commits](https://github.com/awslabs/aws-sdk-rust/commits) Updates `bytes` from 1.10.1 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `time` from 0.3.43 to 0.3.47 - [Release notes](https://github.com/time-rs/time/releases) - [Changelog](https://github.com/time-rs/time/blob/main/CHANGELOG.md) - [Commits](https://github.com/time-rs/time/compare/v0.3.43...v0.3.47) Updates `openssl` from 0.10.73 to 0.10.78 - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.76...openssl-v0.10.78) Updates `quinn-proto` from 0.11.13 to 0.11.14 - [Release notes](https://github.com/quinn-rs/quinn/releases) - [Commits](https://github.com/quinn-rs/quinn/compare/quinn-proto-0.11.13...quinn-proto-0.11.14) Updates `rand` from 0.8.5 to 0.9.2 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/0.8.6/CHANGELOG.md) - [Commits](https://github.com/rust-random/rand/compare/0.8.5...0.8.6) Updates `bytes` from 1.10.1 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rand` from 0.8.5 to 0.9.2 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/0.8.6/CHANGELOG.md) - [Commits](https://github.com/rust-random/rand/compare/0.8.5...0.8.6) Updates `time` from 0.3.43 to 0.3.47 - [Release notes](https://github.com/time-rs/time/releases) - [Changelog](https://github.com/time-rs/time/blob/main/CHANGELOG.md) - [Commits](https://github.com/time-rs/time/compare/v0.3.43...v0.3.47) Updates `aws-sdk-bedrockruntime` from 1.106.0 to 1.107.0 - [Release notes](https://github.com/awslabs/aws-sdk-rust/releases) - [Commits](https://github.com/awslabs/aws-sdk-rust/commits) Updates `jsonwebtoken` from 9.3.1 to 10.3.0 - [Changelog](https://github.com/Keats/jsonwebtoken/blob/master/CHANGELOG.md) - [Commits](https://github.com/Keats/jsonwebtoken/compare/v9.3.1...v10.3.0) Updates `tar` from 0.4.44 to 0.4.45 - [Commits](https://github.com/alexcrichton/tar-rs/compare/0.4.44...0.4.45) Updates `openssl` from 0.10.73 to 0.10.78 - [Release notes](https://github.com/rust-openssl/rust-openssl/releases) - [Commits](https://github.com/rust-openssl/rust-openssl/compare/openssl-v0.10.76...openssl-v0.10.78) Updates `quinn-proto` from 0.11.13 to 0.11.14 - [Release notes](https://github.com/quinn-rs/quinn/releases) - [Commits](https://github.com/quinn-rs/quinn/compare/quinn-proto-0.11.13...quinn-proto-0.11.14) Updates `bytes` from 1.10.1 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `bytes` from 1.10.1 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) Updates `bytes` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.1) Updates `rustls-webpki` from 0.103.8 to 0.103.13 - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](https://github.com/rustls/webpki/compare/v/0.103.10...v/0.103.13) --- updated-dependencies: - dependency-name: openssl dependency-version: 0.10.78 dependency-type: indirect dependency-group: cargo - dependency-name: rand dependency-version: 0.8.6 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: thin-vec dependency-version: 0.2.18 dependency-type: indirect dependency-group: cargo - dependency-name: rand dependency-version: 0.8.6 dependency-type: indirect dependency-group: cargo - dependency-name: openssl dependency-version: 0.10.78 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: aws-sdk-bedrockruntime dependency-version: 1.107.0 dependency-type: direct:production dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: direct:production dependency-group: cargo - dependency-name: time dependency-version: 0.3.47 dependency-type: direct:production dependency-group: cargo - dependency-name: openssl dependency-version: 0.10.78 dependency-type: indirect dependency-group: cargo - dependency-name: quinn-proto dependency-version: 0.11.14 dependency-type: indirect dependency-group: cargo - dependency-name: rand dependency-version: 0.9.2 dependency-type: direct:production dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: direct:production dependency-group: cargo - dependency-name: rand dependency-version: 0.9.2 dependency-type: direct:production dependency-group: cargo - dependency-name: time dependency-version: 0.3.47 dependency-type: direct:production dependency-group: cargo - dependency-name: aws-sdk-bedrockruntime dependency-version: 1.107.0 dependency-type: direct:production dependency-group: cargo - dependency-name: jsonwebtoken dependency-version: 10.3.0 dependency-type: direct:production dependency-group: cargo - dependency-name: tar dependency-version: 0.4.45 dependency-type: direct:production dependency-group: cargo - dependency-name: openssl dependency-version: 0.10.78 dependency-type: indirect dependency-group: cargo - dependency-name: quinn-proto dependency-version: 0.11.14 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: direct:production dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: direct:production dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo - dependency-name: bytes dependency-version: 1.11.1 dependency-type: indirect dependency-group: cargo - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect dependency-group: cargo ... Signed-off-by: dependabot[bot] <support@github.com>
dependabot/cargo/baml_language/cargo-8f85daf943
8 hours ago
chore: bump the all-dependencies group across 1 directory with 16 updates Bumps the all-dependencies group with 16 updates in the / directory: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `4` | `6` | | [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | `3` | `7` | | [actions/setup-python](https://github.com/actions/setup-python) | `5` | `6` | | [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `4` | `6` | | [jdx/mise-action](https://github.com/jdx/mise-action) | `2` | `4` | | [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4` | `7` | | [gradle/actions](https://github.com/gradle/actions) | `4` | `6` | | [actions/download-artifact](https://github.com/actions/download-artifact) | `4` | `8` | | [actions/cache](https://github.com/actions/cache) | `4` | `5` | | [pnpm/action-setup](https://github.com/pnpm/action-setup) | `4` | `6` | | [actions/setup-node](https://github.com/actions/setup-node) | `4` | `6` | | [infisical/secrets-action](https://github.com/infisical/secrets-action) | `1.0.9` | `1.0.16` | | [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `6` | `8` | | [softprops/action-gh-release](https://github.com/softprops/action-gh-release) | `2` | `3` | | [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.4.3` | `6.0.0` | | [actions/setup-go](https://github.com/actions/setup-go) | `5` | `6` | Updates `actions/checkout` from 4 to 6 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v6) Updates `astral-sh/setup-uv` from 3 to 7 - [Release notes](https://github.com/astral-sh/setup-uv/releases) - [Commits](https://github.com/astral-sh/setup-uv/compare/v3...v7) Updates `actions/setup-python` from 5 to 6 - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v5...v6) Updates `aws-actions/configure-aws-credentials` from 4 to 6 - [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases) - [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md) - [Commits](https://github.com/aws-actions/configure-aws-credentials/compare/v4...v6) Updates `jdx/mise-action` from 2 to 4 - [Release notes](https://github.com/jdx/mise-action/releases) - [Changelog](https://github.com/jdx/mise-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/jdx/mise-action/compare/v2...v4) Updates `actions/upload-artifact` from 4 to 7 - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4...v7) Updates `gradle/actions` from 4 to 6 - [Release notes](https://github.com/gradle/actions/releases) - [Commits](https://github.com/gradle/actions/compare/v4...v6) Updates `actions/download-artifact` from 4 to 8 - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v4...v8) Updates `actions/cache` from 4 to 5 - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4...v5) Updates `pnpm/action-setup` from 4 to 6 - [Release notes](https://github.com/pnpm/action-setup/releases) - [Commits](https://github.com/pnpm/action-setup/compare/v4...v6) Updates `actions/setup-node` from 4 to 6 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4...v6) Updates `infisical/secrets-action` from 1.0.9 to 1.0.16 - [Release notes](https://github.com/infisical/secrets-action/releases) - [Commits](https://github.com/infisical/secrets-action/compare/v1.0.9...v1.0.16) Updates `peter-evans/create-pull-request` from 6 to 8 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v6...v8) Updates `softprops/action-gh-release` from 2 to 3 - [Release notes](https://github.com/softprops/action-gh-release/releases) - [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md) - [Commits](https://github.com/softprops/action-gh-release/compare/v2...v3) Updates `codecov/codecov-action` from 5.4.3 to 6.0.0 - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/codecov/codecov-action/compare/18283e04ce6e62d37312384ff67231eb8fd56d24...57e3a136b779b570ffcdbf80b3bdc90e7fab3de2) Updates `actions/setup-go` from 5 to 6 - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](https://github.com/actions/setup-go/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: astral-sh/setup-uv dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/setup-python dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: aws-actions/configure-aws-credentials dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: jdx/mise-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: gradle/actions dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/download-artifact dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/cache dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: pnpm/action-setup dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/setup-node dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: infisical/secrets-action dependency-version: 1.0.16 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all-dependencies - dependency-name: peter-evans/create-pull-request dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: softprops/action-gh-release dependency-version: '3' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: codecov/codecov-action dependency-version: 6.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies - dependency-name: actions/setup-go dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: all-dependencies ... Signed-off-by: dependabot[bot] <support@github.com>
dependabot/github_actions/canary/all-dependencies-3f2e198334
8 hours ago
Merge branch 'canary' into vbv/runtime-benchmarks
vbv/runtime-benchmarks
9 hours ago

Latest Branches

CodSpeed Performance Gauge
N/A
refactor: remove unnecessary deep cloning in native function glue#3447
5 hours ago
808005e
hellovai/remove-unnecessary-deep-cloning-in-native-function-glue
CodSpeed Performance Gauge
N/A
chore(deps): bump the cargo group across 4 directories with 10 updates#3446
8 hours ago
708c650
dependabot/cargo/baml_language/cargo-8f85daf943
CodSpeed Performance Gauge
N/A
8 hours ago
669f9ab
dependabot/github_actions/canary/all-dependencies-3f2e198334
© 2026 CodSpeed Technology
Home Terms Privacy Docs