Skip to content

Mitigate Tracy dep version woes#20109

Merged
mockersf merged 4 commits intobevyengine:mainfrom
liamaharon:pin-tracy-deps
Jul 14, 2025
Merged

Mitigate Tracy dep version woes#20109
mockersf merged 4 commits intobevyengine:mainfrom
liamaharon:pin-tracy-deps

Conversation

@liamaharon
Copy link
Contributor

Objective

Turns out, Tracy dep (in)compatibilities can be a headache. Here was my experience following the Profiling Tracy documentation:

I ran into this error when I attempted to connect to my bevy client:

Screenshot 2025-07-13 at 14 39 27

Attempting to find where the version incompatibility stemmed, I found these tracy dep versions and a link to the compatibility table in the source:

# Tracy dependency compatibility table:
# https://github.com/nagisa/rust_tracy_client
tracing-tracy = { version = "0.11.4", optional = true }
tracy-client = { version = "0.18.0", optional = true }

This led me to believe I needed Tracy 0.11.1, to match the tracy-client version 0.18.0.

This was confusing because 0.11.1 is the version I already had installed (by running brew install tracy), and latest Tracy version currently available on brew.

It turned out that Cargo was eagerly pulling tracy-client 0.18.2 instead of 0.18.0, making the Tracy version I needed actually 0.12.2. At the time of writing, 0.12.2 is not published on brew.

Solution

I've pinned the Tracy deps, and mentioned in the comment which Tracy version Bevy is compatible with.

I've also added some notes to Profiling Tracy documentation to explain

  • How to determine which Tracy version to install
  • That MacOS users may need to compile from source if the required Tracy version is not available on brew.

Testing

  • Did you test these changes? If so, how?
    I ran Tracy locally.

  • Are there any parts that need more testing?
    I don't think so.

  • How can other people (reviewers) test your changes? Is there anything specific they need to know?
    Follow instructions to run Tracy

  • If relevant, what platforms did you test these changes on, and are there any important ones you can't test?
    Tested MacOS. I think change should be OS agnostic.

@github-actions
Copy link
Contributor

Welcome, new contributor!

Please make sure you've read our contributing guide and we look forward to reviewing your pull request shortly ✨

@alice-i-cecile alice-i-cecile added this to the 0.17 milestone Jul 13, 2025
@mockersf
Copy link
Member

I would prefer to not pin versions, the instructions you added to the profiling docs will pick the actual version anyway 👍

@liamaharon
Copy link
Contributor Author

I would prefer to not pin versions, the instructions you added to the profiling docs will pick the actual version anyway 👍

Sure, removed the pin.

@mockersf mockersf added C-Docs An addition or correction to our documentation C-Performance A change motivated by improving speed, memory usage or compile times labels Jul 14, 2025
@alice-i-cecile alice-i-cecile added the A-Diagnostics Logging, crash handling, error reporting and performance analysis label Jul 14, 2025
@alice-i-cecile alice-i-cecile added the S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it label Jul 14, 2025
@mockersf mockersf added this pull request to the merge queue Jul 14, 2025
Merged via the queue into bevyengine:main with commit 0294fa8 Jul 14, 2025
40 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Diagnostics Logging, crash handling, error reporting and performance analysis C-Docs An addition or correction to our documentation C-Performance A change motivated by improving speed, memory usage or compile times S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants