Skip to content

build(deps): bump the all-cargo-deps group with 4 updates#2

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/all-cargo-deps-5209c5293e
Open

build(deps): bump the all-cargo-deps group with 4 updates#2
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/all-cargo-deps-5209c5293e

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot bot commented on behalf of github Apr 13, 2026

Bumps the all-cargo-deps group with 4 updates: cc, bindgen, libc and criterion.

Updates cc from 1.2.58 to 1.2.60

Release notes

Sourced from cc's releases.

cc-v1.2.60

Fixed

  • (ar) suppress warnings from D modifier probe (#1700)

cc-v1.2.59

Fixed

  • (ar) deterministic archives with D modifier (#1697)

Other

  • Regenerate target info (#1698)
  • Fix target abi parsing for sanitiser targets (#1695)
Changelog

Sourced from cc's changelog.

1.2.60 - 2026-04-10

Fixed

  • (ar) suppress warnings from D modifier probe (#1700)

1.2.59 - 2026-04-03

Fixed

  • (ar) deterministic archives with D modifier (#1697)

Other

  • Regenerate target info (#1698)
  • Fix target abi parsing for sanitiser targets (#1695)
Commits

Updates bindgen from 0.71.1 to 0.72.1

Release notes

Sourced from bindgen's releases.

v0.72.1

This is just 0.72.0 with a fix for a breaking change in clang (see #3264 and related).

Full Changelog: rust-lang/rust-bindgen@v0.72.0...v0.72.1

v0.72.0

Added

  • Report enums in ParseCallbacks.
  • Refactor item_name method to use ItemInfo struct.
  • Add callback to modify contents of macro
  • Discovery callbacks for functions and methods.
  • Options to generate uncallable C++ functions.
  • Provide option to get real virtual fn receiver.

Changed

  • Generate bindings compatible with current rustc version by default.

Removed

  • Remove unused which-rustfmt feature
  • Remove warning for opaque forward declarations

Fixed

  • More sophisticated handling of the triple in rust_to_clang_target
  • Rename *-apple-ios-sim to ...simulator
  • Fix OpenCL vectors that use "ext_vector_type".
  • Fix union layout when it contains 0 sized array.
  • Avoid crashing on variadic unions without layout information.
  • Distinguish char16_t.
  • Fix bugs in --clang-macro-fallback
  • Add missed unsafe in the raw_set_bit function
  • Use link_name for dynamic library loading
  • Add "gen" to list of rust keywords in 'rust_mangle'
  • Use appropriate rustfmt --format ... param

Full Changelog: rust-lang/rust-bindgen@v0.71.1...v0.72.0

Changelog

Sourced from bindgen's changelog.

0.72.1 (2025-08-31)

Added

Changed

Removed

Fixed

  • Fixed a bad interaction with upcoming clang 22 (#3278).

Security

0.72.0 (2025-06-08)

Added

  • Report enums in ParseCallbacks.
  • Refactor item_name method to use ItemInfo struct.
  • Add callback to modify contents of macro
  • Discovery callbacks for functions and methods.
  • Options to generate uncallable C++ functions.
  • Provide option to get real virtual fn receiver.

Changed

  • Generate bindings compatible with current rustc version by default.

Removed

  • Remove unused which-rustfmt feature
  • Remove warning for opaque forward declarations

Fixed

  • More sophisticated handling of the triple in rust_to_clang_target
  • Rename *-apple-ios-sim to ...simulator
  • Fix OpenCL vectors that use "ext_vector_type".
  • Fix union layout when it contains 0 sized array.
  • Avoid crashing on variadic unions without layout information.
  • Distinguish char16_t.
  • Fix bugs in --clang-macro-fallback
  • Add missed unsafe in the raw_set_bit function
  • Use link_name for dynamic library loading
  • Add "gen" to list of rust keywords in 'rust_mangle'
  • Use appropriate rustfmt --format ... param
Commits
  • d874de8 chore: Release
  • 173a6e6 Update changelog.
  • 2e06749 clang: Push the fix for #3277 into Type::declaration.
  • 58a8710 Get the type's definition in CompInfo::from_ty
  • d0e7d6b chore: Release
  • e7f0b9d Update changelog.
  • 2882af2 Refactor item_name method to use ItemInfo struct
  • e2940cd chore: Fix some warnings with latest stable.
  • 5d7f684 codegen: Avoid crashing on variadic unions without layout information.
  • 2613129 Remove unused which-rustfmt feature
  • Additional commits viewable in compare view

Updates libc from 0.2.183 to 0.2.184

Release notes

Sourced from libc's releases.

0.2.184

MSRV

This release increases the MSRV of libc to 1.65. With this update, you can now always use the core::ffi::c_* types with libc definitions, since libc has been changed to reexport from core rather than redefining them. (This usually worked before but had edge cases.) (#4972)

Added

  • BSD: Add IP_MINTTL to bsd (#5026)
  • Cygwin: Add TIOCM_DSR (#5031)
  • FreeBSD: Added xfile structe and file descriptor types (#5002)
  • Linux: Add CAN netlink bindings (#5011)
  • Linux: Add struct ethhdr (#4239)
  • Linux: Add struct ifinfomsg (#5012)
  • Linux: Define max_align_t for riscv64 (#5029)
  • NetBSD: Add missing CLOCK_ constants (#5020)
  • NuttX: Add _SC_HOST_NAME_MAX (#5004)
  • VxWorks: Add flock and F_*LCK constants (#4043)
  • WASI: Add all _SC_* sysconf constants (#5023)

Deprecated

The remaining fixed-width integer aliases, __uint128_t, __uint128, __int128_t, and __int128, have been deprecated. Use i128 and u128 instead. (#4343)

Fixed

  • breaking Redox: Fix signal action constant types (#5009)
  • EspIDF: Correct the value of DT_* constants (#5034)
  • Redox: Fix locale values and add RTLD_NOLOAD, some TCP constants (#5025)
  • Various: Use Padding::new(<zeroed>) rather than Padding::uninit() (#5036)

Changed

  • potentially breaking Linux: Add new fields to struct ptrace_syscall_info (#4966)
  • Re-export core::ffi integer types rather than redefining (#5015)
  • Redox: Update F_DUPFD, IP, and TCP constants to match relibc (#4990)
Changelog

Sourced from libc's changelog.

0.2.184 - 2026-04-01

MSRV

This release increases the MSRV of libc to 1.65. With this update, you can now always use the core::ffi::c_* types with libc definitions, since libc has been changed to reexport from core rather than redefining them. (This usually worked before but had edge cases.) (#4972)

Added

  • BSD: Add IP_MINTTL to bsd (#5026)
  • Cygwin: Add TIOCM_DSR (#5031)
  • FreeBSD: Added xfile structe and file descriptor types (#5002)
  • Linux: Add CAN netlink bindings (#5011)
  • Linux: Add struct ethhdr (#4239)
  • Linux: Add struct ifinfomsg (#5012)
  • Linux: Define max_align_t for riscv64 (#5029)
  • NetBSD: Add missing CLOCK_ constants (#5020)
  • NuttX: Add _SC_HOST_NAME_MAX (#5004)
  • VxWorks: Add flock and F_*LCK constants (#4043)
  • WASI: Add all _SC_* sysconf constants (#5023)

Deprecated

The remaining fixed-width integer aliases, __uint128_t, __uint128, __int128_t, and __int128, have been deprecated. Use i128 and u128 instead. (#4343)

Fixed

  • breaking Redox: Fix signal action constant types (#5009)
  • EspIDF: Correct the value of DT_* constants (#5034)
  • Redox: Fix locale values and add RTLD_NOLOAD, some TCP constants (#5025)
  • Various: Use Padding::new(<zeroed>) rather than Padding::uninit() (#5036)

Changed

  • potentially breaking Linux: Add new fields to struct ptrace_syscall_info (#4966)
  • Re-export core::ffi integer types rather than redefining (#5015)
  • Redox: Update F_DUPFD, IP, and TCP constants to match relibc (#4990)
Commits
  • b1fd610 chore: Release libc 0.2.184
  • f596819 ci: Don't enforce cargo-semver-checks
  • 4645f60 linux: update ptrace_syscall_info struct
  • 14cbbec types: Remove Padding::uninit
  • b5dcda8 pthread: Use Padding::new(\<zeroed>) rather than Padding::uninit()
  • bbb1c5d types: Add a new function to Padding
  • df06e43 Fix locale values and add RTLD_NOLOAD, some TCP constants
  • 078f5c6 newlib/espidf: Move DT_* to espidf/mod.rs
  • d32b83d Add IP_MINTTL to bsd
  • 939e0ec Define max_align_t for riscv64-linux
  • Additional commits viewable in compare view

Updates criterion from 0.5.1 to 0.8.2

Release notes

Sourced from criterion's releases.

criterion-plot-v0.8.2

Other

  • Update Readme

criterion-v0.8.2

Fixed

  • don't build alloca on unsupported targets

Other

  • (deps) bump crate-ci/typos from 1.40.0 to 1.43.0
  • Fix panic with uniform iteration durations in benchmarks
  • Update Readme
  • Exclude development scripts from published package

criterion-plot-v0.8.1

Fixed

  • Typo

criterion-v0.8.1

Fixed

  • Homepage link

Other

  • (deps) bump crate-ci/typos from 1.23.5 to 1.40.0
  • (deps) bump jontze/action-mdbook from 3 to 4
  • (deps) bump actions/checkout from 4 to 6

criterion-plot-v0.8.0

No release notes provided.

criterion-v0.8.0

BREAKING

  • Drop async-std support

Changed

  • Bump MSRV to 1.86, stable to 1.91.1

Added

  • Add ability to plot throughput on summary page.
  • Add support for reporting throughput in elements and bytes - Throughput::ElementsAndBytes allows the text summary to report throughput in both units simultaneously.
  • Add alloca-based memory layout randomisation to mitigate memory effects on measurements.

... (truncated)

Changelog

Sourced from criterion's changelog.

0.8.2 - 2026-02-04

Fixed

  • don't build alloca on unsupported targets

Other

  • (deps) bump crate-ci/typos from 1.40.0 to 1.43.0
  • Fix panic with uniform iteration durations in benchmarks
  • Update Readme
  • Exclude development scripts from published package

0.8.1 - 2025-12-07

Fixed

  • Homepage link

Other

  • (deps) bump crate-ci/typos from 1.23.5 to 1.40.0
  • (deps) bump jontze/action-mdbook from 3 to 4
  • (deps) bump actions/checkout from 4 to 6

0.8.0 - 2025-11-29

BREAKING

  • Drop async-std support

Changed

  • Bump MSRV to 1.86, stable to 1.91.1

Added

  • Add ability to plot throughput on summary page.
  • Add support for reporting throughput in elements and bytes - Throughput::ElementsAndBytes allows the text summary to report throughput in both units simultaneously.
  • Add alloca-based memory layout randomisation to mitigate memory effects on measurements.
  • Add doc comment to benchmark runner in criterion_group macro (removes linter warnings)

Fixed

  • Fix plotting NaN bug

Other

  • Remove Master API Docs links temporarily while we restore the docs publishing.

... (truncated)

Commits
  • 7f0d745 chore: release v0.8.2
  • 4a467ce chore(deps): bump crate-ci/typos from 1.40.0 to 1.43.0
  • b277a75 Fix panic with uniform iteration durations in benchmarks
  • 828af14 fix: don't build alloca on unsupported targets
  • b01316b Update Readme
  • 4c02a3b Exclude development scripts from published package
  • e4e06df chore: release v0.8.1
  • aa548b9 fix: Homepage link
  • 950c3b7 fix: Typo
  • 7e3e50c chore(deps): bump crate-ci/typos from 1.23.5 to 1.40.0
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Summary by CodeRabbit

  • Chores
    • Updated build and development dependencies to latest patch and minor versions for improved compatibility and performance.

Bumps the all-cargo-deps group with 4 updates: [cc](https://github.com/rust-lang/cc-rs), [bindgen](https://github.com/rust-lang/rust-bindgen), [libc](https://github.com/rust-lang/libc) and [criterion](https://github.com/criterion-rs/criterion.rs).


Updates `cc` from 1.2.58 to 1.2.60
- [Release notes](https://github.com/rust-lang/cc-rs/releases)
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md)
- [Commits](rust-lang/cc-rs@cc-v1.2.58...cc-v1.2.60)

Updates `bindgen` from 0.71.1 to 0.72.1
- [Release notes](https://github.com/rust-lang/rust-bindgen/releases)
- [Changelog](https://github.com/rust-lang/rust-bindgen/blob/v0.72.1/CHANGELOG.md)
- [Commits](rust-lang/rust-bindgen@v0.71.1...v0.72.1)

Updates `libc` from 0.2.183 to 0.2.184
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Changelog](https://github.com/rust-lang/libc/blob/0.2.184/CHANGELOG.md)
- [Commits](rust-lang/libc@0.2.183...0.2.184)

Updates `criterion` from 0.5.1 to 0.8.2
- [Release notes](https://github.com/criterion-rs/criterion.rs/releases)
- [Changelog](https://github.com/criterion-rs/criterion.rs/blob/master/CHANGELOG.md)
- [Commits](criterion-rs/criterion.rs@0.5.1...criterion-v0.8.2)

---
updated-dependencies:
- dependency-name: cc
  dependency-version: 1.2.60
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-cargo-deps
- dependency-name: bindgen
  dependency-version: 0.72.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-cargo-deps
- dependency-name: libc
  dependency-version: 0.2.184
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-cargo-deps
- dependency-name: criterion
  dependency-version: 0.8.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-cargo-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Apr 13, 2026
@dependabot dependabot bot requested a review from nh13 as a code owner April 13, 2026 01:39
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Apr 13, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 13, 2026

📝 Walkthrough

Walkthrough

Dependency version updates across two Cargo.toml files: bindgen bumped to 0.72 in primer3-sys, and libc bumped to 0.2.184 plus criterion bumped to 0.8 in primer3.

Changes

Cohort / File(s) Summary
Build Dependencies
primer3-sys/Cargo.toml
Updated bindgen from 0.71 to 0.72.
Runtime and Dev Dependencies
primer3/Cargo.toml
Updated libc from 0.2.183 to 0.2.184 and criterion (dev-dependency) from 0.5 to 0.8.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 Hop hop, the versions grow,
Bindgen, libc in a row,
Criterion leaps from five to eight,
Dependency dreams, oh how they're great! 📦✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title references bumping 'all-cargo-deps group with 4 updates' but the actual changes show only 3 distinct crates bumped in the files modified (bindgen, libc, criterion), though the PR objectives mention 4 total (cc, bindgen, libc, criterion).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dependabot/cargo/all-cargo-deps-5209c5293e

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@primer3/Cargo.toml`:
- Line 27: Update the workspace MSRV in the root Cargo.toml from "1.85.0" to
"1.86.0" so it meets criterion 0.8's minimum Rust requirement; locate the
workspace-level rust-version field in the root Cargo.toml and change its value
to "1.86.0" to resolve the incompatibility introduced by adding criterion = {
version = "0.8", features = ["html_reports"] } in primer3/Cargo.toml.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 3b85a2d0-d676-4ae4-895d-98709e9b3d4b

📥 Commits

Reviewing files that changed from the base of the PR and between 20fea3b and f6d8d89.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (2)
  • primer3-sys/Cargo.toml
  • primer3/Cargo.toml

Comment thread primer3/Cargo.toml

[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }
criterion = { version = "0.8", features = ["html_reports"] }
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Verify criterion 0.8 compatibility with benchmarks

# Check if html_reports feature exists in criterion 0.8
echo "=== Checking criterion 0.8 features ==="
cargo metadata --format-version 1 | \
  jq -r '.packages[] | select(.name == "criterion") | .features | keys[]' | \
  grep -E 'html_reports|plotting' || echo "Features not found - may need web search"

# Attempt to build the benchmarks
echo -e "\n=== Building benchmarks with criterion 0.8 ==="
cd primer3 && cargo bench --no-run 2>&1 | tee bench_build.log

# Check for build errors or warnings
if [ ${PIPESTATUS[0]} -ne 0 ]; then
  echo "Benchmark build failed"
  exit 1
fi

grep -i "warning\|error" bench_build.log | grep -v "^Binary" || echo "Build successful"

Repository: fg-labs/primer3-rs

Length of output: 874


🌐 Web query:

Does criterion 0.8 support the html_reports feature?

💡 Result:

Yes, Criterion 0.8 supports the html_reports feature. It is listed as an available feature flag in the official documentation for version 0.8.2, which can be enabled in Cargo.toml like criterion = { version = "0.8", features = ["html_reports"] }. The feature has been present since at least version 0.3 and continues to be supported in the 0.8 series, including in the "stable" feature set.

Citations:


🏁 Script executed:

#!/bin/bash
# Check for MSRV settings in the project
echo "=== Checking project MSRV settings ==="
if grep -r "rust-version" primer3/Cargo.toml; then
  echo "MSRV found in Cargo.toml"
else
  echo "No explicit MSRV in Cargo.toml"
fi

# Check benchmark code for any obvious API compatibility issues
echo -e "\n=== Inspecting benchmark code ==="
find . -name "benches" -type d -exec ls -la {} \;
find . -path "*/benches/*.rs" -type f | head -5

Repository: fg-labs/primer3-rs

Length of output: 396


🌐 Web query:

What is the minimum Rust version (MSRV) required for criterion 0.8?

💡 Result:

The minimum Rust version (MSRV) required for criterion 0.8 is Rust 1.86.

Citations:


🌐 Web query:

What breaking changes were introduced in criterion 0.8 from 0.5?

💡 Result:

The primary breaking change introduced in criterion 0.8 (specifically 0.8.0) from 0.5 is the removal of async-std support. Other changes between versions include MSRV bumps (Minimum Supported Rust Version) from 1.64 in 0.5 to 1.86 in 0.8, dependency updates (e.g., clap to v4 in 0.5, real_blackbox feature changes in 0.6), and the real_blackbox feature becoming no-op in 0.6 with recommendation to use std::hint::black_box. No other explicit breaking changes are listed in the changelogs for 0.6.0, 0.7.0, or 0.8.0 beyond these.

Citations:


🏁 Script executed:

#!/bin/bash
# Find and read workspace Cargo.toml
echo "=== Looking for workspace Cargo.toml ==="
find . -maxdepth 2 -name "Cargo.toml" -type f | head -10

echo -e "\n=== Reading workspace Cargo.toml ==="
cat Cargo.toml 2>/dev/null | grep -A 5 "rust-version\|workspace"

echo -e "\n=== Reading benchmark code ==="
cat -n ./primer3/benches/benchmarks.rs

Repository: fg-labs/primer3-rs

Length of output: 3654


Update the workspace MSRV from 1.85.0 to 1.86.0 to match criterion 0.8's requirement.

The project's workspace MSRV is set to 1.85.0, but criterion 0.8 requires a minimum of Rust 1.86. This creates an incompatibility—users on Rust 1.85.0 cannot build the project after this update. Bump the workspace rust-version in the root Cargo.toml to 1.86.0.

The html_reports feature is available in criterion 0.8 and the benchmark code uses compatible APIs.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@primer3/Cargo.toml` at line 27, Update the workspace MSRV in the root
Cargo.toml from "1.85.0" to "1.86.0" so it meets criterion 0.8's minimum Rust
requirement; locate the workspace-level rust-version field in the root
Cargo.toml and change its value to "1.86.0" to resolve the incompatibility
introduced by adding criterion = { version = "0.8", features = ["html_reports"]
} in primer3/Cargo.toml.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants