-
Notifications
You must be signed in to change notification settings - Fork 452
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Run a stress thread for each logical core #1675
Conversation
@ThomsonTan Thanks for looking into it. Can you run the stress tests (pick any!), and share the before/after numbers as well to see what impact switching to logical cores has on overall throughout! |
Sure, here are the data collected for the logs stress run before and after this PR on my 16 cores devbox. Before the PR
With this PR
|
Are these results with release build, if not can you share that number too? |
Yes, the previous throughput number is based on debug build. Below is the data from release build. (CPU usage data looks similar and ignore here). Throughput before the PR
Throughput with the PR
|
@ThomsonTan I see similar results for logs. But for metrics, it looks like the throughtput drops actually! Might have to do with metrics sdk implementation itself! |
We probably do more context switching in metrics than logs because of the aggregation of data points? |
Yes, I do see the same on metrics. Could it be that metrics SDK spawns its own internal threads for aggregation? If so, it could be slowed down before that extra threads will contend CPU resources with the stress threads. And this increased race condition may lower the throughput. |
This behavior has been documented in the PR description : #1564. All the threads competition for the single hashmap lock. `` `` |
Thanks for your first PR @ThomsonTan ! We understand the throughput is dropping for metrics, but that is separatelybeing addressed.! |
@@ -26,7 +26,7 @@ where | |||
STOP.store(true, Ordering::SeqCst); | |||
}) | |||
.expect("Error setting Ctrl-C handler"); | |||
let num_threads = num_cpus::get_physical(); | |||
let num_threads = num_cpus::get(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
feel like the same advice I constantly give to my little kids! No physical fights 🤣
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | Type | Update | |---|---|---|---|---|---|---|---| | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.12.12` -> `20.14.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.12/20.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.12/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.12/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.12.11` -> `20.14.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.11/20.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.11/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.11/20.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`18.3.2` -> `18.3.3`](https://renovatebot.com/diffs/npm/@types%2freact/18.3.2/18.3.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.3.2/18.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.3.2/18.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | [`7.8.0` -> `7.11.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/7.8.0/7.11.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2feslint-plugin/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2feslint-plugin/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2feslint-plugin/7.8.0/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2feslint-plugin/7.8.0/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@typescript-eslint/parser](https://typescript-eslint.io/packages/parser) ([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | [`7.8.0` -> `7.11.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/7.8.0/7.11.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2fparser/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2fparser/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2fparser/7.8.0/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2fparser/7.8.0/7.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@vitejs/plugin-react](https://togithub.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react#readme) ([source](https://togithub.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react)) | [`4.2.1` -> `4.3.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react/4.2.1/4.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-react/4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-react/4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-react/4.2.1/4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-react/4.2.1/4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [async-compression](https://togithub.com/Nullus157/async-compression) | `0.4.10` -> `0.4.11` | [![age](https://developer.mend.io/api/mc/badges/age/crate/async-compression/0.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/async-compression/0.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/async-compression/0.4.10/0.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/async-compression/0.4.10/0.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [async-lock](https://togithub.com/smol-rs/async-lock) | `3.3.0` -> `3.4.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/async-lock/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/async-lock/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/async-lock/3.3.0/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/async-lock/3.3.0/3.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [async-tungstenite](https://togithub.com/sdroege/async-tungstenite) | `0.25.1` -> `0.26.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/async-tungstenite/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/async-tungstenite/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/async-tungstenite/0.25.1/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/async-tungstenite/0.25.1/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [async-tungstenite](https://togithub.com/sdroege/async-tungstenite) | `0.25.1` -> `0.26.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/async-tungstenite/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/async-tungstenite/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/async-tungstenite/0.25.1/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/async-tungstenite/0.25.1/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dev-dependencies | minor | | [backtrace](https://togithub.com/rust-lang/backtrace-rs) | `0.3.71` -> `0.3.72` | [![age](https://developer.mend.io/api/mc/badges/age/crate/backtrace/0.3.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/backtrace/0.3.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/backtrace/0.3.71/0.3.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/backtrace/0.3.71/0.3.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [bun](https://bun.sh) ([source](https://togithub.com/oven-sh/bun)) | [`1.1.10` -> `1.1.12`](https://renovatebot.com/diffs/npm/bun/1.1.10/1.1.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/bun/1.1.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/bun/1.1.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/bun/1.1.10/1.1.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/bun/1.1.10/1.1.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [eslint-plugin-react](https://togithub.com/jsx-eslint/eslint-plugin-react) | [`7.34.1` -> `7.34.2`](https://renovatebot.com/diffs/npm/eslint-plugin-react/7.34.1/7.34.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-plugin-react/7.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-plugin-react/7.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-plugin-react/7.34.1/7.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-plugin-react/7.34.1/7.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [hyper-util](https://hyper.rs) ([source](https://togithub.com/hyperium/hyper-util)) | `0.1.4` -> `0.1.5` | [![age](https://developer.mend.io/api/mc/badges/age/crate/hyper-util/0.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/hyper-util/0.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/hyper-util/0.1.4/0.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/hyper-util/0.1.4/0.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [openidconnect](https://togithub.com/ramosbugs/openidconnect-rs) | `4.0.0-alpha.1` -> `4.0.0-alpha.2` | [![age](https://developer.mend.io/api/mc/badges/age/crate/openidconnect/4.0.0-alpha.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/openidconnect/4.0.0-alpha.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/openidconnect/4.0.0-alpha.1/4.0.0-alpha.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/openidconnect/4.0.0-alpha.1/4.0.0-alpha.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [opentelemetry](https://togithub.com/open-telemetry/opentelemetry-rust) | `0.22` -> `0.23` | [![age](https://developer.mend.io/api/mc/badges/age/crate/opentelemetry/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/opentelemetry/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/opentelemetry/0.22.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/opentelemetry/0.22.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [opentelemetry-otlp](https://togithub.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-otlp) ([source](https://togithub.com/open-telemetry/opentelemetry-rust/tree/HEAD/opentelemetry-otlp)) | `0.15` -> `0.16` | [![age](https://developer.mend.io/api/mc/badges/age/crate/opentelemetry-otlp/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/opentelemetry-otlp/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/opentelemetry-otlp/0.15.0/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/opentelemetry-otlp/0.15.0/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [opentelemetry-stdout](https://togithub.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-stdout) ([source](https://togithub.com/open-telemetry/opentelemetry-rust/tree/HEAD/opentelemetry-stdout)) | `0.3` -> `0.4` | [![age](https://developer.mend.io/api/mc/badges/age/crate/opentelemetry-stdout/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/opentelemetry-stdout/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/opentelemetry-stdout/0.3.0/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/opentelemetry-stdout/0.3.0/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [opentelemetry_sdk](https://togithub.com/open-telemetry/opentelemetry-rust) | `0.22.0` -> `0.23.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/opentelemetry_sdk/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/opentelemetry_sdk/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/opentelemetry_sdk/0.22.1/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/opentelemetry_sdk/0.22.1/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [pnpm](https://pnpm.io) ([source](https://togithub.com/pnpm/pnpm)) | [`9.1.3` -> `9.1.4`](https://renovatebot.com/diffs/npm/pnpm/9.1.3/9.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/pnpm/9.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/pnpm/9.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/pnpm/9.1.3/9.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/pnpm/9.1.3/9.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | packageManager | patch | | [proc-macro2](https://togithub.com/dtolnay/proc-macro2) | `1.0.84` -> `1.0.85` | [![age](https://developer.mend.io/api/mc/badges/age/crate/proc-macro2/1.0.85?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/proc-macro2/1.0.85?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/proc-macro2/1.0.84/1.0.85?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/proc-macro2/1.0.84/1.0.85?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [rstest](https://togithub.com/la10736/rstest) | `0.19` -> `0.21` | [![age](https://developer.mend.io/api/mc/badges/age/crate/rstest/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/rstest/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/rstest/0.19.0/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/rstest/0.19.0/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dev-dependencies | minor | | [rstest](https://togithub.com/la10736/rstest) | `0.19` -> `0.21` | [![age](https://developer.mend.io/api/mc/badges/age/crate/rstest/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/rstest/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/rstest/0.19.0/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/rstest/0.19.0/0.21.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [rstest_reuse](https://togithub.com/la10736/rstest) | `0.6` -> `0.7` | [![age](https://developer.mend.io/api/mc/badges/age/crate/rstest_reuse/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/rstest_reuse/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/rstest_reuse/0.6.0/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/rstest_reuse/0.6.0/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dev-dependencies | minor | | [strum_macros](https://togithub.com/Peternator7/strum) | `0.26.2` -> `0.26.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/strum_macros/0.26.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/strum_macros/0.26.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/strum_macros/0.26.2/0.26.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/strum_macros/0.26.2/0.26.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [swc_ecma_ast](https://togithub.com/swc-project/swc) | `0.113.4` -> `0.113.5` | [![age](https://developer.mend.io/api/mc/badges/age/crate/swc_ecma_ast/0.113.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/swc_ecma_ast/0.113.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/swc_ecma_ast/0.113.4/0.113.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/swc_ecma_ast/0.113.4/0.113.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [tokio](https://tokio.rs) ([source](https://togithub.com/tokio-rs/tokio)) | `1.37.0` -> `1.38.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dev-dependencies | minor | | [tokio](https://tokio.rs) ([source](https://togithub.com/tokio-rs/tokio)) | `1.37.0` -> `1.38.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [tokio](https://tokio.rs) ([source](https://togithub.com/tokio-rs/tokio)) | `1.37.0` -> `1.38.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.37.0/1.38.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [tokio-postgres-rustls](https://togithub.com/jbg/tokio-postgres-rustls) | `0.11.0` -> `0.12.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio-postgres-rustls/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio-postgres-rustls/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio-postgres-rustls/0.11.1/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio-postgres-rustls/0.11.1/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [tokio-rustls](https://togithub.com/rustls/tokio-rustls) | `0.25.0` -> `0.26.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio-rustls/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio-rustls/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio-rustls/0.25.0/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio-rustls/0.25.0/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [tokio-tungstenite](https://togithub.com/snapview/tokio-tungstenite) | `0.21.0` -> `0.23.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio-tungstenite/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio-tungstenite/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio-tungstenite/0.21.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio-tungstenite/0.21.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [tracing-opentelemetry](https://togithub.com/tokio-rs/tracing-opentelemetry) | `0.23` -> `0.24` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tracing-opentelemetry/0.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tracing-opentelemetry/0.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tracing-opentelemetry/0.23.0/0.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tracing-opentelemetry/0.23.0/0.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://togithub.com/kulshekhar/ts-jest)) | [`=29.1.3` -> `=29.1.4`](https://renovatebot.com/diffs/npm/ts-jest/29.1.3/29.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ts-jest/29.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ts-jest/29.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ts-jest/29.1.3/29.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ts-jest/29.1.3/29.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [tsup](https://tsup.egoist.dev/) ([source](https://togithub.com/egoist/tsup)) | [`8.0.2` -> `8.1.0`](https://renovatebot.com/diffs/npm/tsup/8.0.2/8.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tsup/8.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tsup/8.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tsup/8.0.2/8.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tsup/8.0.2/8.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [tungstenite](https://togithub.com/snapview/tungstenite-rs) | `0.21.0` -> `0.23.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tungstenite/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tungstenite/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tungstenite/0.21.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tungstenite/0.21.0/0.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor | | [type-fest](https://togithub.com/sindresorhus/type-fest) | [`4.18.2` -> `4.18.3`](https://renovatebot.com/diffs/npm/type-fest/4.18.2/4.18.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/type-fest/4.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/type-fest/4.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/type-fest/4.18.2/4.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/type-fest/4.18.2/4.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [vite](https://vitejs.dev) ([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) | [`5.2.11` -> `5.2.12`](https://renovatebot.com/diffs/npm/vite/5.2.11/5.2.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.2.11/5.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.2.11/5.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [zip](https://togithub.com/zip-rs/zip2) | `2.1.0` -> `2.1.2` | [![age](https://developer.mend.io/api/mc/badges/age/crate/zip/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/zip/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/zip/2.1.0/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/zip/2.1.0/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | --- ### Release Notes <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v7.11.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#7110-2024-05-27) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.10.0...v7.11.0) ##### 🚀 Features - **eslint-plugin:** deprecate prefer-ts-expect-error in favor of ban-ts-comment ##### 🩹 Fixes - **eslint-plugin:** \[consistent-type-assertions] prevent syntax errors on arrow functions ##### ❤️ Thank You - Abraham Guo - auvred - Dom Armstrong - Kirk Waiblinger You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v7.10.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#7100-2024-05-20) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.9.0...v7.10.0) ##### 🚀 Features - **eslint-plugin:** \[sort-type-constituents] support case sensitive sorting ##### 🩹 Fixes - **eslint-plugin:** \[prefer-regexp-exec] fix heuristic to check whether regex may contain global flag ##### ❤️ Thank You - auvred - Emanuel Hoogeveen - jsfm01 - Kirk Waiblinger You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v7.9.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#790-2024-05-13) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.8.0...v7.9.0) ##### 🩹 Fixes - **eslint-plugin:** \[explicit-function-return-types] fix false positive on default parameters ##### ❤️ Thank You - Kirk Waiblinger - Sheetal Nandi - Vinccool96 You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v7.11.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#7110-2024-05-27) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.10.0...v7.11.0) This was a version bump only for parser to align it with other projects, there were no code changes. You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v7.10.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#7100-2024-05-20) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.9.0...v7.10.0) This was a version bump only for parser to align it with other projects, there were no code changes. You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v7.9.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#790-2024-05-13) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v7.8.0...v7.9.0) This was a version bump only for parser to align it with other projects, there were no code changes. You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>vitejs/vite-plugin-react (@​vitejs/plugin-react)</summary> ### [`v4.3.0`](https://togithub.com/vitejs/vite-plugin-react/blob/HEAD/packages/plugin-react/CHANGELOG.md#430-2024-05-22) [Compare Source](https://togithub.com/vitejs/vite-plugin-react/compare/v4.2.1...v4.3.0) ##### Fix support for React compiler Don't set `retainLines: true` when the React compiler is used. This creates whitespace issues and the compiler is modifying the JSX too much to get correct line numbers after that. If you want to use the React compiler and get back correct line numbers for tools like [vite-plugin-react-click-to-component](https://togithub.com/ArnaudBarre/vite-plugin-react-click-to-component) to work, you should update your config to something like: ```ts export default defineConfig(({ command }) => { const babelPlugins = [['babel-plugin-react-compiler', {}]] if (command === 'serve') { babelPlugins.push(['@​babel/plugin-transform-react-jsx-development', {}]) } return { plugins: [react({ babel: { plugins: babelPlugins } })], } }) ``` ##### Support HMR for class components This is a long overdue and should fix some issues people had with HMR when migrating from CRA. </details> <details> <summary>Nullus157/async-compression (async-compression)</summary> ### [`v0.4.11`](https://togithub.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0411---2024-05-30) [Compare Source](https://togithub.com/Nullus157/async-compression/compare/v0.4.10...v0.4.11) ##### Other - Expose total_in/total_out from underlying flate2 encoder types. </details> <details> <summary>smol-rs/async-lock (async-lock)</summary> ### [`v3.4.0`](https://togithub.com/smol-rs/async-lock/blob/HEAD/CHANGELOG.md#Version-340) [Compare Source](https://togithub.com/smol-rs/async-lock/compare/v3.3.0...v3.4.0) - Port to `event-listener` v5.0.0. ([#​74](https://togithub.com/smol-rs/async-lock/issues/74)) </details> <details> <summary>sdroege/async-tungstenite (async-tungstenite)</summary> ### [`v0.26.0`](https://togithub.com/sdroege/async-tungstenite/blob/HEAD/CHANGELOG.md#0260---2024-06-02) [Compare Source](https://togithub.com/sdroege/async-tungstenite/compare/0.25.1...0.26.0) ##### Changed - Update to tungstenite 0.23. - Don't include default features for various dependencies. </details> <details> <summary>rust-lang/backtrace-rs (backtrace)</summary> ### [`v0.3.72`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.72) [Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.71...0.3.72) This release removes a lot of dead code. Some feature flags that haven't done anything in a long time are gone. If you depend on those features, Cargo's resolver will not update you to 0.3.72. If your code runs on Windows, or you want it to run on visionOS, however, you should probably update to this version. It contains a number of fixes for both OS. It also uses the latest version of a number of dependencies. #### What's Changed - Revert "Use rustc from stage0 instead of stage0-sysroot (rust-lang/ba… by [@​Nilstrieb](https://togithub.com/Nilstrieb) in [https://github.com/rust-lang/backtrace-rs/pull/603](https://togithub.com/rust-lang/backtrace-rs/pull/603) - Remove dead code by [@​ChrisDenton](https://togithub.com/ChrisDenton) in [https://github.com/rust-lang/backtrace-rs/pull/605](https://togithub.com/rust-lang/backtrace-rs/pull/605) - Fix CI and remove rustc-serialize by [@​ChrisDenton](https://togithub.com/ChrisDenton) in [https://github.com/rust-lang/backtrace-rs/pull/596](https://togithub.com/rust-lang/backtrace-rs/pull/596) - Use correct base address and update comment by [@​ChrisDenton](https://togithub.com/ChrisDenton) in [https://github.com/rust-lang/backtrace-rs/pull/604](https://togithub.com/rust-lang/backtrace-rs/pull/604) - Windows AArch64: Break out of tracing when no longer making progress by [@​dpaoliello](https://togithub.com/dpaoliello) in [https://github.com/rust-lang/backtrace-rs/pull/610](https://togithub.com/rust-lang/backtrace-rs/pull/610) - Remove obsolete rustc-serialize references by [@​atouchet](https://togithub.com/atouchet) in [https://github.com/rust-lang/backtrace-rs/pull/614](https://togithub.com/rust-lang/backtrace-rs/pull/614) - Update `object` and `addr2line` dependencies by [@​a1phyr](https://togithub.com/a1phyr) in [https://github.com/rust-lang/backtrace-rs/pull/612](https://togithub.com/rust-lang/backtrace-rs/pull/612) - Fix tests for rust 1.79 by [@​workingjubilee](https://togithub.com/workingjubilee) in [https://github.com/rust-lang/backtrace-rs/pull/621](https://togithub.com/rust-lang/backtrace-rs/pull/621) - Remove unused `libbacktrace` and `gimli-symbolize` features by [@​Enselic](https://togithub.com/Enselic) in [https://github.com/rust-lang/backtrace-rs/pull/615](https://togithub.com/rust-lang/backtrace-rs/pull/615) - remove some instances of dead_code by [@​klensy](https://togithub.com/klensy) in [https://github.com/rust-lang/backtrace-rs/pull/619](https://togithub.com/rust-lang/backtrace-rs/pull/619) - Reduce panics in dbghelp by [@​ChrisDenton](https://togithub.com/ChrisDenton) in [https://github.com/rust-lang/backtrace-rs/pull/608](https://togithub.com/rust-lang/backtrace-rs/pull/608) - Add Apple visionOS support by [@​QuentinPerez](https://togithub.com/QuentinPerez) in [https://github.com/rust-lang/backtrace-rs/pull/613](https://togithub.com/rust-lang/backtrace-rs/pull/613) - Update cc crate to v1.0.97 by [@​jfgoog](https://togithub.com/jfgoog) in [https://github.com/rust-lang/backtrace-rs/pull/623](https://togithub.com/rust-lang/backtrace-rs/pull/623) - chore: add docs for the global re-entrant lock by [@​Gankra](https://togithub.com/Gankra) in [https://github.com/rust-lang/backtrace-rs/pull/609](https://togithub.com/rust-lang/backtrace-rs/pull/609) - Test with lld-compatible args by [@​workingjubilee](https://togithub.com/workingjubilee) in [https://github.com/rust-lang/backtrace-rs/pull/627](https://togithub.com/rust-lang/backtrace-rs/pull/627) - Bump rustc-demangle version by [@​michaelwoerister](https://togithub.com/michaelwoerister) in [https://github.com/rust-lang/backtrace-rs/pull/624](https://togithub.com/rust-lang/backtrace-rs/pull/624) - cleanup dead_code around cpp_demangle feature by [@​klensy](https://togithub.com/klensy) in [https://github.com/rust-lang/backtrace-rs/pull/622](https://togithub.com/rust-lang/backtrace-rs/pull/622) - Cut backtrace 0.3.72 by [@​workingjubilee](https://togithub.com/workingjubilee) in [https://github.com/rust-lang/backtrace-rs/pull/628](https://togithub.com/rust-lang/backtrace-rs/pull/628) #### New Contributors - [@​Enselic](https://togithub.com/Enselic) made their first contribution in [https://github.com/rust-lang/backtrace-rs/pull/615](https://togithub.com/rust-lang/backtrace-rs/pull/615) - [@​QuentinPerez](https://togithub.com/QuentinPerez) made their first contribution in [https://github.com/rust-lang/backtrace-rs/pull/613](https://togithub.com/rust-lang/backtrace-rs/pull/613) - [@​Gankra](https://togithub.com/Gankra) made their first contribution in [https://github.com/rust-lang/backtrace-rs/pull/609](https://togithub.com/rust-lang/backtrace-rs/pull/609) **Full Changelog**: https://github.com/rust-lang/backtrace-rs/compare/0.3.71...0.3.72 </details> <details> <summary>oven-sh/bun (bun)</summary> ### [`v1.1.12`](https://togithub.com/oven-sh/bun/releases/tag/bun-v1.1.12): Bun v1.1.12 [Compare Source](https://togithub.com/oven-sh/bun/compare/bun-v1.1.11...bun-v1.1.12) This release fixes a regression briefly introduced in `bun upgrade` on Windows that occurred in Bun v1.1.11. There are no release notes, please take a look at the Bun v1.1.11 release notes instead. To install Bun v1.1.12: ```bash curl -fsSL https://bun.sh/install | bash ### or you can use npm ### npm install -g bun ``` Windows: ```bash powershell -c "irm bun.sh/install.ps1|iex" ``` To upgrade to Bun v1.1.12: ```bash bun upgrade ``` ##### **[Read Bun v1.1.11's release notes on Bun's blog](https://bun.sh/blog/bun-v1.1.11)** ### [`v1.1.11`](https://togithub.com/oven-sh/bun/releases/tag/bun-v1.1.11): Bun v1.1.11 [Compare Source](https://togithub.com/oven-sh/bun/compare/bun-v1.1.10...bun-v1.1.11) To install Bun v1.1.11: ```bash curl -fsSL https://bun.sh/install | bash ### or you can use npm ### npm install -g bun ``` Windows: ```bash powershell -c "irm bun.sh/install.ps1|iex" ``` To upgrade to Bun v1.1.11: ```bash bun upgrade ``` ##### **[Read Bun v1.1.11's release notes on Bun's blog](https://bun.sh/blog/bun-v1.1.11)** ##### Thanks to 16 contributors! - [@​AbhiPrasad](https://togithub.com/AbhiPrasad) - [@​cirospaciari](https://togithub.com/cirospaciari) - [@​creator318](https://togithub.com/creator318) - [@​dylan-conway](https://togithub.com/dylan-conway) - [@​gvilums](https://togithub.com/gvilums) - [@​HUMORCE](https://togithub.com/HUMORCE) - [@​huseeiin](https://togithub.com/huseeiin) - [@​janos-r](https://togithub.com/janos-r) - [@​Jarred-Sumner](https://togithub.com/Jarred-Sumner) - [@​JonnyBurger](https://togithub.com/JonnyBurger) - [@​nektro](https://togithub.com/nektro) - [@​paperdave](https://togithub.com/paperdave) - [@​Ptitet](https://togithub.com/Ptitet) - [@​refi64](https://togithub.com/refi64) - [@​tobycm](https://togithub.com/tobycm) - [@​zawodskoj](https://togithub.com/zawodskoj) </details> <details> <summary>jsx-eslint/eslint-plugin-react (eslint-plugin-react)</summary> ### [`v7.34.2`](https://togithub.com/jsx-eslint/eslint-plugin-react/releases/tag/v7.34.2) [Compare Source](https://togithub.com/jsx-eslint/eslint-plugin-react/compare/v7.34.1...v7.34.2) ##### Fixed - [`boolean-prop-naming`][boolean-prop-naming]: avoid a crash with a non-TSTypeReference type ([#​3718][] [@​developer-bandi](https://togithub.com/developer-bandi)) - [`jsx-no-leaked-render`][jsx-no-leaked-render]: invalid report if left side is boolean ([#​3746][] [@​akulsr0](https://togithub.com/akulsr0)) - [`jsx-closing-bracket-location`][jsx-closing-bracket-location]: message shows `{{details}}` when there are no details ([#​3759][] [@​mdjermanovic](https://togithub.com/mdjermanovic)) - [`no-invalid-html-attribute`][no-invalid-html-attribute]: ensure error messages are correct ([#​3759][] [@​mdjermanovic](https://togithub.com/mdjermanovic), [@​ljharb](https://togithub.com/ljharb)) ##### Changed - \[Refactor] create various eslint utils to fix eslint deprecations ([#​3759][] [@​mdjermanovic](https://togithub.com/mdjermanovic), [@​ljharb](https://togithub.com/ljharb)) [7.34.2]: https://togithub.com/jsx-eslint/eslint-plugin-react/compare/v7.34.1...v7.34.2 [#​3759]: https://togithub.com/jsx-eslint/eslint-plugin-react/pull/3759 [#​3746]: https://togithub.com/jsx-eslint/eslint-plugin-react/pull/3746 [#​3718]: https://togithub.com/jsx-eslint/eslint-plugin-react/pull/3718 [`boolean-prop-naming`]: docs/rules/boolean-prop-naming.md [`jsx-no-leaked-render`]: docs/rules/jsx-no-leaked-render.md [`jsx-closing-bracket-location`]: docs/rules/jsx-closing-bracket-location.md [`no-invalid-html-attribute`]: docs/rules/no-invalid-html-attribute.md </details> <details> <summary>hyperium/hyper-util (hyper-util)</summary> ### [`v0.1.5`](https://togithub.com/hyperium/hyper-util/blob/HEAD/CHANGELOG.md#015-2024-05-28) [Compare Source](https://togithub.com/hyperium/hyper-util/compare/v0.1.4...v0.1.5) - Add `server::graceful::GracefulShutdown` helper to coordinate over many connections. - Add `server::conn::auto::Connection::into_owned()` to unlink lifetime from `Builder`. - Allow `service` module to be available with only `service` feature enabled. </details> <details> <summary>ramosbugs/openidconnect-rs (openidconnect)</summary> ### [`v4.0.0-alpha.2`](https://togithub.com/ramosbugs/openidconnect-rs/releases/tag/4.0.0-alpha.2) [Compare Source](https://togithub.com/ramosbugs/openidconnect-rs/compare/4.0.0-alpha.1...4.0.0-alpha.2) #### Bug Fixes - Return `impl Future` instead of `Pin<Box<dyn Future>>` ([#​158](https://togithub.com/ramosbugs/openidconnect-rs/issues/158)) **Full Changelog**: https://github.com/ramosbugs/openidconnect-rs/compare/4.0.0-alpha.1...4.0.0-alpha.2 </details> <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry)</summary> ### [`v0.23.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/opentelemetry-0.23.0): 0.23.0 [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-0.22.0...opentelemetry-0.23.0) #### Whats changed? See individual crate changelogs for details. #### New Contributors [@​svix-jplatte](https://togithub.com/svix-jplatte) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1568](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1568) [@​rex4539](https://togithub.com/rex4539) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1587](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1587) [@​divergentdave](https://togithub.com/divergentdave) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1584](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1584) [@​pyohannes](https://togithub.com/pyohannes) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1578](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1578) [@​masato-hi](https://togithub.com/masato-hi) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1621](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1621) [@​rogercoll](https://togithub.com/rogercoll) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1624](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1624) [@​LuisOsta](https://togithub.com/LuisOsta) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1638](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1638) [@​svrnm](https://togithub.com/svrnm) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1664](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1664) [@​Lev1ty](https://togithub.com/Lev1ty) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1672](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1672) [@​ThomsonTan](https://togithub.com/ThomsonTan) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1675](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1675) [@​ramgdev](https://togithub.com/ramgdev) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1585](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1585) [@​utpilla](https://togithub.com/utpilla) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1701](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1701) [@​ChieloNewctle](https://togithub.com/ChieloNewctle) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1746](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1746) </details> <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry-otlp)</summary> ### [`v0.16.0`](https://togithub.com/open-telemetry/opentelemetry-rust/blob/HEAD/opentelemetry-otlp/CHANGELOG.md#v0160) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-otlp-0.15.0...opentelemetry-otlp-0.16.0) ##### Fixed - URL encoded values in `OTEL_EXPORTER_OTLP_HEADERS` are now correctly decoded. [#​1578](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1578) - OTLP exporter will not change the URL added through `ExportConfig` [#​1706](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1706) - Default grpc endpoint will not have path based on signal(e.g `/v1/traces`) [#​1706](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1706) - Fix feature flags for `OTEL_EXPORTER_OTLP_PROTOCOL_DEFAULT` [#​1746](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1746) ##### Added - Added `DeltaTemporalitySelector` ([#​1568]) - Add `webkpi-roots` features to `reqwest` and `tonic` backends [#​1568]: https://togithub.com/open-telemetry/opentelemetry-rust/pull/1568 ##### Changed - **Breaking** Remove global provider for Logs [#​1691](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1691/) - The method OtlpLogPipeline::install_simple() and OtlpLogPipeline::install_batch() now return `LoggerProvider` instead of `Logger`. Refer to the [basic-otlp](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp/src/main.rs) and [basic-otlp-http](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs) examples for how to initialize OTLP Log Exporter to use with OpenTelemetryLogBridge and OpenTelemetryTracingBridge respectively. - Update `opentelemetry` dependency version to 0.23 - Update `opentelemetry_sdk` dependency version to 0.23 - Update `opentelemetry-http` dependency version to 0.12 - Update `opentelemetry-proto` dependency version to 0.6 </details> <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry-stdout)</summary> ### [`v0.4.0`](https://togithub.com/open-telemetry/opentelemetry-rust/blob/HEAD/opentelemetry-stdout/CHANGELOG.md#v040) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-stdout-0.3.0...opentelemetry-stdout-0.4.0) ##### Changed - The default feature now includes logs, metrics and trace. - Update `opentelemetry` dependency version to 0.23 - Update `opentelemetry_sdk` dependency version to 0.23 - TraceExporter fixed to print InstrumentationScope's attributes. </details> <details> <summary>pnpm/pnpm (pnpm)</summary> ### [`v9.1.4`](https://togithub.com/pnpm/pnpm/compare/v9.1.3...v9.1.4) [Compare Source](https://togithub.com/pnpm/pnpm/compare/v9.1.3...v9.1.4) </details> <details> <summary>dtolnay/proc-macro2 (proc-macro2)</summary> ### [`v1.0.85`](https://togithub.com/dtolnay/proc-macro2/releases/tag/1.0.85) [Compare Source](https://togithub.com/dtolnay/proc-macro2/compare/1.0.84...1.0.85) - Mark some tests as only for 64-bit targets ([#​463](https://togithub.com/dtolnay/proc-macro2/issues/463)) </details> <details> <summary>la10736/rstest (rstest)</summary> ### [`v0.21.0`](https://togithub.com/la10736/rstest/blob/HEAD/CHANGELOG.md#0210-202461) [Compare Source](https://togithub.com/la10736/rstest/compare/v0.20.0...v0.21.0) ##### Changed - Add feature `crate-name` enabled by default to opt-in crate rename support. See [#​258](https://togithub.com/la10736/rstest/issues/258) ### [`v0.20.0`](https://togithub.com/la10736/rstest/blob/HEAD/CHANGELOG.md#0200-2024530) [Compare Source](https://togithub.com/la10736/rstest/compare/v0.19.0...v0.20.0) ##### Add - Implemented `#[by_ref]` attribute to take get a local lifetime for test arguments. See [#​241](https://togithub.com/la10736/rstest/issues/241) for more details. Thanks to [@​narpfel](https://togithub.com/narpfel) for suggesting it and useful discussions. - Support for import `rstest` with another name. See [#​221](https://togithub.com/la10736/rstest/issues/221) ##### Fixed - Don't remove Lifetimes from test function if any. See [#​230](https://togithub.com/la10736/rstest/issues/230) [#​241](https://togithub.com/la10736/rstest/issues/241) for more details. - [`PathBuf`](https://doc.rust-lang.org/std/path/struct.PathBuf.html) does no longer need to be in scope when using `#[files]` (see [#​242](https://togithub.com/la10736/rstest/pull/242)) - `#[from(now::accept::also::path::for::fixture)]` See [#​246](https://togithub.com/la10736/rstest/issues/246) for more details </details> <details> <summary>Peternator7/strum (strum_macros)</summary> ### [`v0.26.3`](https://togithub.com/Peternator7/strum/blob/HEAD/CHANGELOG.md#0263-strummacros) [Compare Source](https://togithub.com/Peternator7/strum/compare/v0.26.2...v0.26.3) - [#​344](https://togithub.com/Peternator7/strum/pull/344): Hide `EnumTable` because it's going to be deprecated in the next version. - [#​357](https://togithub.com/Peternator7/strum/pull/357): Fixes an incompatiblity with `itertools` by using the fully qualified name rather than the inherent method. - [#​345](https://togithub.com/Peternator7/strum/pull/345): Allows unnamed tuple like variants to use their variants in string interpolation. `#[strum(to_string = "Field 0: {0}, Field 1: {1})")]` will now work for tuple variants </details> <details> <summary>tokio-rs/tokio (tokio)</summary> ### [`v1.38.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.38.0): Tokio v1.38.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0) This release marks the beginning of stabilization for runtime metrics. It stabilizes `RuntimeMetrics::worker_count`. Future releases will continue to stabilize more metrics. ##### Added - fs: add `File::create_new` ([#​6573]) - io: add `copy_bidirectional_with_sizes` ([#​6500]) - io: implement `AsyncBufRead` for `Join` ([#​6449]) - net: add Apple visionOS support ([#​6465]) - net: implement `Clone` for `NamedPipeInfo` ([#​6586]) - net: support QNX OS ([#​6421]) - sync: add `Notify::notify_last` ([#​6520]) - sync: add `mpsc::Receiver::{capacity,max_capacity}` ([#​6511]) - sync: add `split` method to the semaphore permit ([#​6472], [#​6478]) - task: add `tokio::task::join_set::Builder::spawn_blocking` ([#​6578]) - wasm: support rt-multi-thread with wasm32-wasi-preview1-threads ([#​6510]) ##### Changed - macros: make `#[tokio::test]` append `#[test]` at the end of the attribute list ([#​6497]) - metrics: fix `blocking_threads` count ([#​6551]) - metrics: stabilize `RuntimeMetrics::worker_count` ([#​6556]) - runtime: move task out of the `lifo_slot` in `block_in_place` ([#​6596]) - runtime: panic if `global_queue_interval` is zero ([#​6445]) - sync: always drop message in destructor for oneshot receiver ([#​6558]) - sync: instrument `Semaphore` for task dumps ([#​6499]) - sync: use FIFO ordering when waking batches of wakers ([#​6521]) - task: make `LocalKey::get` work with Clone types ([#​6433]) - tests: update nix and mio-aio dev-dependencies ([#​6552]) - time: clean up implementation ([#​6517]) - time: lazily init timers on first poll ([#​6512]) - time: remove the `true_when` field in `TimerShared` ([#​6563]) - time: use sharding for timer implementation ([#​6534]) ##### Fixed - taskdump: allow building taskdump docs on non-unix machines ([#​6564]) - time: check for overflow in `Interval::poll_tick` ([#​6487]) - sync: fix incorrect `is_empty` on mpsc block boundaries ([#​6603]) ##### Documented - fs: rewrite file system docs ([#​6467]) - io: fix `stdin` documentation ([#​6581]) - io: fix obsolete reference in `ReadHalf::unsplit()` documentation ([#​6498]) - macros: render more comprehensible documentation for `select!` ([#​6468]) - net: add missing types to module docs ([#​6482]) - net: fix misleading `NamedPipeServer` example ([#​6590]) - sync: add examples for `SemaphorePermit`, `OwnedSemaphorePermit` ([#​6477]) - sync: document that `Barrier::wait` is not cancel safe ([#​6494]) - sync: explain relation between `wa </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC), 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://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/grafbase/grafbase). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [opentelemetry](https://togithub.com/open-telemetry/opentelemetry-rust) | workspace.dependencies | minor | `0.22.0` -> `0.24.0` | --- ### Release Notes <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry)</summary> ### [`v0.24.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/opentelemetry-0.24.0) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-0.23.0...opentelemetry-0.24.0) See individual crate changelogs for details. ### [`v0.23.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/opentelemetry-0.23.0): 0.23.0 [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-0.22.0...opentelemetry-0.23.0) #### Whats changed? See individual crate changelogs for details. #### New Contributors [@​svix-jplatte](https://togithub.com/svix-jplatte) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1568](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1568) [@​rex4539](https://togithub.com/rex4539) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1587](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1587) [@​divergentdave](https://togithub.com/divergentdave) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1584](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1584) [@​pyohannes](https://togithub.com/pyohannes) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1578](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1578) [@​masato-hi](https://togithub.com/masato-hi) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1621](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1621) [@​rogercoll](https://togithub.com/rogercoll) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1624](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1624) [@​LuisOsta](https://togithub.com/LuisOsta) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1638](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1638) [@​svrnm](https://togithub.com/svrnm) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1664](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1664) [@​Lev1ty](https://togithub.com/Lev1ty) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1672](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1672) [@​ThomsonTan](https://togithub.com/ThomsonTan) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1675](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1675) [@​ramgdev](https://togithub.com/ramgdev) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1585](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1585) [@​utpilla](https://togithub.com/utpilla) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1701](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1701) [@​ChieloNewctle](https://togithub.com/ChieloNewctle) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1746](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1746) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 8pm,before 6am" in timezone America/Los_Angeles, Automerge - "after 8pm,before 6am" in timezone America/Los_Angeles. 🚦 **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://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/oxidecomputer/crucible). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yNi4xIiwidXBkYXRlZEluVmVyIjoiMzguMjYuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [opentelemetry](https://togithub.com/open-telemetry/opentelemetry-rust) | workspace.dependencies | minor | `0.21` -> `0.24` | | [opentelemetry-otlp](https://togithub.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-otlp) ([source](https://togithub.com/open-telemetry/opentelemetry-rust/tree/HEAD/opentelemetry-otlp)) | workspace.dependencies | minor | `0.14` -> `0.17` | | [opentelemetry_sdk](https://togithub.com/open-telemetry/opentelemetry-rust) | workspace.dependencies | minor | `0.21` -> `0.24` | --- ### Release Notes <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry)</summary> ### [`v0.24.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/opentelemetry-0.24.0) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-0.23.0...opentelemetry-0.24.0) See individual crate changelogs for details. ### [`v0.23.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/opentelemetry-0.23.0): 0.23.0 [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-0.22.0...opentelemetry-0.23.0) #### Whats changed? See individual crate changelogs for details. #### New Contributors [@​svix-jplatte](https://togithub.com/svix-jplatte) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1568](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1568) [@​rex4539](https://togithub.com/rex4539) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1587](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1587) [@​divergentdave](https://togithub.com/divergentdave) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1584](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1584) [@​pyohannes](https://togithub.com/pyohannes) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1578](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1578) [@​masato-hi](https://togithub.com/masato-hi) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1621](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1621) [@​rogercoll](https://togithub.com/rogercoll) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1624](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1624) [@​LuisOsta](https://togithub.com/LuisOsta) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1638](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1638) [@​svrnm](https://togithub.com/svrnm) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1664](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1664) [@​Lev1ty](https://togithub.com/Lev1ty) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1672](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1672) [@​ThomsonTan](https://togithub.com/ThomsonTan) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1675](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1675) [@​ramgdev](https://togithub.com/ramgdev) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1585](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1585) [@​utpilla](https://togithub.com/utpilla) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1701](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1701) [@​ChieloNewctle](https://togithub.com/ChieloNewctle) made their first contribution in [https://github.com/open-telemetry/opentelemetry-rust/pull/1746](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1746) ### [`v0.22.0`](https://togithub.com/open-telemetry/opentelemetry-rust/releases/tag/v0.22.0) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/v0.21.0...opentelemetry-0.22.0) ### API #### Added - [https://github.com/open-telemetry/opentelemetry-rust/pull/1410](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1410) Add experimental synchronous gauge. This is behind the feature flag, and can be enabled by enabling the feature otel_unstable for opentelemetry crate. - [https://github.com/open-telemetry/opentelemetry-rust/pull/1410](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1410) Guidelines to add new unstable/experimental features. #### Changed - Modified AnyValue.Map to be backed by HashMap instead of custom OrderMap, which internally used IndexMap. There was no requirement to maintain the order of entries, so moving from IndexMap to HashMap offers slight performance gains, and avoids IndexMap dependency. This affects body and attributes of LogRecord. [https://github.com/open-telemetry/opentelemetry-rust/pull/1353](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1353) - Add TextMapCompositePropagator [https://github.com/open-telemetry/opentelemetry-rust/pull/1373](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1373) - Turned off events for NoopLogger to save on operations [https://github.com/open-telemetry/opentelemetry-rust/pull/1455](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1455) #### Removed - Removed OrderMap type as there was no requirement to use this over regular HashMap. [https://github.com/open-telemetry/opentelemetry-rust/pull/1353](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1353) - Remove API for Creating Histograms with signed integers. [https://github.com/open-telemetry/opentelemetry-rust/pull/1371](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1371) - Remove global::shutdown_meter_provider, use SdkMeterProvider::shutdown directly instead ([#​1412](https://togithub.com/open-telemetry/opentelemetry-rust/issues/1412)). ### SDK ##### Deprecated - XrayIdGenerator in the opentelemetry-sdk has been deprecated and moved to version 0.10.0 of the opentelemetry-aws crate. ##### Added - [#​1410](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1410) Add experimental synchronous gauge - [#​1471](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1471) Configure batch log record processor via [`OTEL_BLRP_*`](https://togithub.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#batch-logrecord-processor) environment variables and via `OtlpLogPipeline::with_batch_config` - [#​1503](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1503) Make the documentation for In-Memory exporters visible. - [#​1526](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1526) Performance Improvement : Creating Spans and LogRecords are now faster, by avoiding expensive cloning of `Resource` for every Span/LogRecord. ##### Changed - **Breaking** [#​1313](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1313) [#​1350](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1350) Changes how Span links/events are stored to achieve performance gains. See below for details: *Behavior Change*: When enforcing `max_links_per_span`, `max_events_per_span` from `SpanLimits`, links/events are kept in the first-come order. The previous "eviction" based approach is no longer performed. *Breaking Change Affecting Exporter authors*: `SpanData` now stores `links` as `SpanLinks` instead of `EvictedQueue` where `SpanLinks` is a struct with a `Vec` of links and `dropped_count`. `SpanData` now stores `events` as `SpanEvents` instead of `EvictedQueue` where `SpanEvents` is a struct with a `Vec` of events and `dropped_count`. - **Breaking** Remove `TextMapCompositePropagator` [#​1373](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1373). Use `TextMapCompositePropagator` in opentelemetry API. - [#​1375](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1375/) Fix metric collections during PeriodicReader shutdown - **Breaking** [#​1480](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1480) Remove fine grained `BatchConfig` configurations from `BatchLogProcessorBuilder` and `BatchSpanProcessorBuilder`. Use `BatchConfigBuilder` to construct a `BatchConfig` instance and pass it using `BatchLogProcessorBuilder::with_batch_config` or `BatchSpanProcessorBuilder::with_batch_config`. - **Breaking** [#​1480](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1480) Remove mutating functions from `BatchConfig`, use `BatchConfigBuilder` to construct a `BatchConfig` instance. - **Breaking** [#​1495](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1495) Remove Batch LogRecord\&Span Processor configuration via non-standard environment variables. Use the following table to migrate from the no longer supported non-standard environment variables to the standard ones. | No longer supported | Standard equivalent | |---------------------------------|---------------------------| | OTEL_BLRP_SCHEDULE_DELAY_MILLIS | OTEL_BLRP_SCHEDULE_DELAY | | OTEL_BLRP_EXPORT_TIMEOUT_MILLIS | OTEL_BLRP_EXPORT_TIMEOUT | | OTEL_BSP_SCHEDULE_DELAY_MILLIS | OTEL_BSP_SCHEDULE_DELAY | | OTEL_BSP_EXPORT_TIMEOUT_MILLIS | OTEL_BSP_EXPORT_TIMEOUT | - **Breaking** [1455](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1455) Make the LoggerProvider Owned - `Logger` now takes an Owned Logger instead of a `Weak<LoggerProviderInner>` - `LoggerProviderInner` is no longer `pub (crate)` - `Logger.provider()` now returns `&LoggerProvider` instead of an `Option<LoggerProvider>` - [1519](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1519) Performance improvements when calling `Counter::add()` and `UpDownCounter::add()` with an empty set of attributes (e.g. `counter.Add(5, &[])`) ##### Fixed - [#​1481](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1481) Fix error message caused by race condition when using PeriodicReader </details> <details> <summary>open-telemetry/opentelemetry-rust (opentelemetry-otlp)</summary> ### [`v0.17.0`](https://togithub.com/open-telemetry/opentelemetry-rust/blob/HEAD/opentelemetry-otlp/CHANGELOG.md#v0170) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-otlp-0.16.0...opentelemetry-otlp-0.17.0) - Add "metrics", "logs" to default features. With this, default feature list is "trace", "metrics" and "logs". - `OtlpMetricPipeline.build()` no longer invoke the `global::set_meter_provider`. User who setup the pipeline must do it themselves using `global::set_meter_provider(meter_provider.clone());`. - Add `with_resource` on `OtlpLogPipeline`, replacing the `with_config` method. Instead of using `.with_config(Config::default().with_resource(RESOURCE::default()))` users must now use `.with_resource(RESOURCE::default())` to configure Resource when using `OtlpLogPipeline`. - **Breaking** The methods `OtlpTracePipeline::install_simple()` and `OtlpTracePipeline::install_batch()` would now return `TracerProvider` instead of `Tracer`. These methods would also no longer set the global tracer provider. It would now be the responsibility of users to set it by calling `global::set_tracer_provider(tracer_provider.clone());`. Refer to the [basic-otlp](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp/src/main.rs) and [basic-otlp-http](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs) examples on how to initialize OTLP Trace Exporter. - **Breaking** Correct the misspelling of "webkpi" to "webpki" in features [#​1842](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1842) - Bump MSRV to 1.70 [#​1840](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1840) - Fixing the OTLP HTTP/JSON exporter. [#​1882](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1882) - The exporter was broken in the previous release. - **Breaking** [1869](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1869) The OTLP logs exporter now overrides the [InstrumentationScope::name](https://togithub.com/open-telemetry/opentelemetry-proto/blob/b3060d2104df364136d75a35779e6bd48bac449a/opentelemetry/proto/common/v1/common.proto#L73) field with the `target` from `LogRecord`, if target is populated. - Groups batch of `LogRecord` and `Span` by their resource and instrumentation scope before exporting, for better efficiency [#​1873](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1873). - **Breaking** Update to `http` v1 and `tonic` v0.12 [#​1674](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1674) - Update `opentelemetry` dependency version to 0.24 - Update `opentelemetry_sdk` dependency version to 0.24 - Update `opentelemetry-http` dependency version to 0.13 - Update `opentelemetry-proto` dependency version to 0.7 ### [`v0.16.0`](https://togithub.com/open-telemetry/opentelemetry-rust/blob/HEAD/opentelemetry-otlp/CHANGELOG.md#v0160) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-otlp-0.15.0...opentelemetry-otlp-0.16.0) ##### Fixed - URL encoded values in `OTEL_EXPORTER_OTLP_HEADERS` are now correctly decoded. [#​1578](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1578) - OTLP exporter will not change the URL added through `ExportConfig` [#​1706](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1706) - Default grpc endpoint will not have path based on signal(e.g `/v1/traces`) [#​1706](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1706) - Fix feature flags for `OTEL_EXPORTER_OTLP_PROTOCOL_DEFAULT` [#​1746](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1746) ##### Added - Added `DeltaTemporalitySelector` ([#​1568]) - Add `webkpi-roots` features to `reqwest` and `tonic` backends [#​1568]: https://togithub.com/open-telemetry/opentelemetry-rust/pull/1568 ##### Changed - **Breaking** Remove global provider for Logs [#​1691](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1691/) - The method OtlpLogPipeline::install_simple() and OtlpLogPipeline::install_batch() now return `LoggerProvider` instead of `Logger`. Refer to the [basic-otlp](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp/src/main.rs) and [basic-otlp-http](https://togithub.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs) examples for how to initialize OTLP Log Exporter to use with OpenTelemetryLogBridge and OpenTelemetryTracingBridge respectively. - Update `opentelemetry` dependency version to 0.23 - Update `opentelemetry_sdk` dependency version to 0.23 - Update `opentelemetry-http` dependency version to 0.12 - Update `opentelemetry-proto` dependency version to 0.6 ### [`v0.15.0`](https://togithub.com/open-telemetry/opentelemetry-rust/blob/HEAD/opentelemetry-otlp/CHANGELOG.md#v0150) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-otlp-0.14.0...opentelemetry-otlp-0.15.0) ##### Added - Support custom channels in topic exporters [#​1335](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1335) - Allow specifying OTLP Tonic metadata from env variable [#​1377](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1377) ##### Changed - Update to tonic 0.11 and prost 0.12 [#​1536](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1536) ##### Fixed - Fix `tonic()` to the use correct port. [#​1556](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1556) ##### Removed - **Breaking** Remove support for surf HTTP client [#​1537](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1537) - **Breaking** Remove support for grpcio transport [#​1534](https://togithub.com/open-telemetry/opentelemetry-rust/pull/1534) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "on the first day of the month" in timezone America/Los_Angeles, 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://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/get-convex/convex). GitOrigin-RevId: 81963454ddea644957059f98bcf8ecbcf4b47255
Fixes #1405
Design discussion issue (if applicable) #
Currently the stress test run a thread for each physical core with physical core reserved for the main loop. For CPU with hyper-thread enabled, this actually will take less than 50% CPU time for the whole stress run. Fix this by spawning the number of threads as the number of logical cores, but still reserve one logical core for main loop.
Task Manager shows the CPU usage as 100% and stable.
Changes
Please provide a brief description of the changes here.
Merge requirement checklist
CHANGELOG.md
files updated for non-trivial, user-facing changes