From 969ce0eb4e4c2e42b9c83d5ba76c3ebc4e22b8d4 Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Wed, 18 Mar 2026 14:03:46 +0100 Subject: [PATCH 1/7] Update to puffin 0.20 --- profiling/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/profiling/Cargo.toml b/profiling/Cargo.toml index d892056..b6b49f0 100644 --- a/profiling/Cargo.toml +++ b/profiling/Cargo.toml @@ -14,7 +14,7 @@ exclude = ["/examples", "/screenshots"] rust-version = "1.60" [dependencies] -puffin = { version = "0.19", optional = true } +puffin = { version = "0.20", optional = true } optick = { version = "1.3", optional = true } tracing = { version = "0.1", optional = true } tracy-client = { version = "0.18", optional = true } From c51ee3b3f3435dc42d68f978b59be5c5daa0c377 Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:24:46 -0700 Subject: [PATCH 2/7] Fix CI attempt #1 --- .github/workflows/ci.yml | 4 ++-- CHANGELOG.md | 4 ++++ demo-puffin/Cargo.toml | 2 +- profiling-procmacros/src/lib.rs | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7c188e4..2897ce4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -114,10 +114,10 @@ jobs: matrix: config: - package: profiling - msrv: '1.60' + msrv: '1.85' extra-args: --no-default-features - package: profiling-procmacros - msrv: '1.65' + msrv: '1.85' steps: - uses: actions/checkout@v4 diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d4b9cf..2522e38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 1.0.18 +* MSRV updated to 1.85. (Upstream packages adopting edition 2024 cannot be compiled on prior MSRV) +* Update puffin to 0.20 + ## 1.0.17 * Update superluminal to 0.4 * Update tracy-client to 0.18 diff --git a/demo-puffin/Cargo.toml b/demo-puffin/Cargo.toml index f153511..10a61fd 100644 --- a/demo-puffin/Cargo.toml +++ b/demo-puffin/Cargo.toml @@ -20,7 +20,7 @@ categories = ["development-tools::profiling"] [dependencies] profiling = { path = "../profiling", features = ["profile-with-puffin"] } -puffin = "0.19.1" +puffin = "0.20" puffin_egui = "0.29.0" egui = "0.28.1" # wgpu also works fine here diff --git a/profiling-procmacros/src/lib.rs b/profiling-procmacros/src/lib.rs index a4061f5..dd5f62b 100644 --- a/profiling-procmacros/src/lib.rs +++ b/profiling-procmacros/src/lib.rs @@ -14,7 +14,7 @@ pub fn function( let body = &function.block; let new_body: syn::Block = impl_block(body, &instrumented_function_name); - function.block = Box::new(new_body); + *function.block = new_body; (quote! { #function From c4441de4c071934f9faeafba638d17596a60c321 Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:37:46 -0700 Subject: [PATCH 3/7] Update cargo deny, it is using a docker image with old rust version that doesn't support edition 2024 --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2897ce4..818c423 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -98,12 +98,12 @@ jobs: name: cargo-deny runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v1 - - uses: EmbarkStudios/cargo-deny-action@v1 + - uses: actions/checkout@v4 + - uses: EmbarkStudios/cargo-deny-action@v2 with: command: check ${{ matrix.checks }} - - uses: EmbarkStudios/cargo-deny-action@v1 + - uses: EmbarkStudios/cargo-deny-action@v2 with: manifest-path: demo-puffin/Cargo.toml command: check ${{ matrix.checks }} From 3a12f13962a710242ca58771856f8b64d8c5de58 Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:42:08 -0700 Subject: [PATCH 4/7] CI fix attempt #3 --- deny.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deny.toml b/deny.toml index f7563b2..b217e92 100644 --- a/deny.toml +++ b/deny.toml @@ -38,7 +38,7 @@ db-urls = ["https://github.com/rustsec/advisory-db"] # The lint level for security vulnerabilities vulnerability = "warn" # The lint level for unmaintained crates -unmaintained = "warn" +unmaintained = "workspace" # The lint level for crates that have been yanked from their source registry yanked = "warn" # The lint level for crates with security notices. Note that as of From a505a32cc11a09a83f3c118ebb3eacac6c730dce Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:47:59 -0700 Subject: [PATCH 5/7] CI fix attempt #4 --- deny.toml | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/deny.toml b/deny.toml index b217e92..7cbe374 100644 --- a/deny.toml +++ b/deny.toml @@ -17,6 +17,7 @@ # this list would mean the nix crate, as well as any of its exclusive # dependencies not shared by any other crates, would be ignored, as the target # list here is effectively saying which targets you are building for. +[graph] targets = [ # The triple can be any string, but only the target triples built in to # rustc (as of 1.40) can be checked against actual config expressions @@ -35,16 +36,10 @@ targets = [ db-path = "~/.cargo/advisory-db" # The url of the advisory database to use db-urls = ["https://github.com/rustsec/advisory-db"] -# The lint level for security vulnerabilities -vulnerability = "warn" # The lint level for unmaintained crates unmaintained = "workspace" # The lint level for crates that have been yanked from their source registry yanked = "warn" -# The lint level for crates with security notices. Note that as of -# 2019-12-17 there are no security notice advisories in -# https://github.com/rustsec/advisory-db -notice = "warn" # A list of advisory IDs to ignore. Note that ignored advisories will still # output a note when they are encountered. ignore = [ @@ -64,8 +59,6 @@ ignore = [ # More documentation for the licenses section can be found here: # https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html [licenses] -# The lint level for crates which do not have a detectable license -unlicensed = "deny" # List of explictly allowed licenses # See https://spdx.org/licenses/ for list of possible licenses # [possible values: any SPDX 3.7 short identifier (+ optional exception)]. @@ -87,20 +80,6 @@ allow = [ deny = [ #"Nokia", ] -# Lint level for licenses considered copyleft -copyleft = "deny" -# Blanket approval or denial for OSI-approved or FSF Free/Libre licenses -# * both - The license will be approved if it is both OSI-approved *AND* FSF -# * either - The license will be approved if it is either OSI-approved *OR* FSF -# * osi-only - The license will be approved if is OSI-approved *AND NOT* FSF -# * fsf-only - The license will be approved if is FSF *AND NOT* OSI-approved -# * neither - This predicate is ignored and the default lint level is used -allow-osi-fsf-free = "neither" -# Lint level used when no other predicates are matched -# 1. License isn't in the allow or deny lists -# 2. License isn't copyleft -# 3. License isn't OSI/FSF, or allow-osi-fsf-free = "neither" -default = "deny" # The confidence threshold for detecting a license from license text. # The higher the value, the more closely the license text must be to the # canonical license text of a valid SPDX license file. From 0a5e770ebf141f7619d5cdd5ce9b1c9e6b991bf6 Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:49:42 -0700 Subject: [PATCH 6/7] CI fix attempt #5 --- deny.toml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/deny.toml b/deny.toml index 7cbe374..cb00245 100644 --- a/deny.toml +++ b/deny.toml @@ -74,12 +74,6 @@ allow = [ "Unicode-3.0" #"Apache-2.0 WITH LLVM-exception", ] -# List of explictly disallowed licenses -# See https://spdx.org/licenses/ for list of possible licenses -# [possible values: any SPDX 3.7 short identifier (+ optional exception)]. -deny = [ - #"Nokia", -] # The confidence threshold for detecting a license from license text. # The higher the value, the more closely the license text must be to the # canonical license text of a valid SPDX license file. From bbb6f68b3b5cd7737d99bad3e4c90a5b375c79bb Mon Sep 17 00:00:00 2001 From: Philip Degarmo Date: Sun, 3 May 2026 19:57:31 -0700 Subject: [PATCH 7/7] CI fix attempt #6, remove unused crates (bincode is marked as unmaintained and fails cargo-deny) --- profiling/Cargo.toml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/profiling/Cargo.toml b/profiling/Cargo.toml index b6b49f0..4e0402c 100644 --- a/profiling/Cargo.toml +++ b/profiling/Cargo.toml @@ -22,11 +22,6 @@ superluminal-perf = { version = "0.4", optional = true } profiling-procmacros = { version = "1.0.17", path = "../profiling-procmacros", optional = true } [dev-dependencies] -bincode = "1.3.1" -lazy_static = "1" -log = "0.4" -env_logger = "0.6" - tracing-tracy = { version = "0.11.3" } tracing-subscriber = { version = "0.3" }