upgrade: tracy-client #50

Closed
nondescriptpointer wants to merge 1 commits from upgrade/tracy-client into dev
nondescriptpointer commented 2025-08-17 16:11:09 -04:00 (Migrated from github.com)

Summary by CodeRabbit

  • Chores
    • Updated an internal performance profiling dependency to a newer patch version to align with upstream maintenance.
    • No user-facing changes: no new features, UI updates, or API modifications.
    • Behavior and performance are expected to remain unchanged; this is a routine maintenance update.
    • Keeps dependencies current to maintain compatibility and benefit from upstream fixes and improvements.
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - Chores - Updated an internal performance profiling dependency to a newer patch version to align with upstream maintenance. - No user-facing changes: no new features, UI updates, or API modifications. - Behavior and performance are expected to remain unchanged; this is a routine maintenance update. - Keeps dependencies current to maintain compatibility and benefit from upstream fixes and improvements. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
coderabbitai[bot] commented 2025-08-17 16:11:18 -04:00 (Migrated from github.com)
📝 Walkthrough

Walkthrough

Updated a single dependency version in Cargo.toml: tracy-client from =0.18.0 to =0.18.2. No code or API changes.

Changes

Cohort / File(s) Summary
Dependency version bump
Cargo.toml
Updated tracy-client dependency from =0.18.0 to =0.18.2.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Tip

🔌 Remote MCP (Model Context Protocol) integration is now available!

Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats.

Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.
<!-- This is an auto-generated comment: summarize by coderabbit.ai --> <!-- walkthrough_start --> <details> <summary>📝 Walkthrough</summary> ## Walkthrough Updated a single dependency version in Cargo.toml: tracy-client from =0.18.0 to =0.18.2. No code or API changes. ## Changes | Cohort / File(s) | Summary | |---|---| | **Dependency version bump**<br>`Cargo.toml` | Updated `tracy-client` dependency from `=0.18.0` to `=0.18.2`. | ## Estimated code review effort 🎯 1 (Trivial) | ⏱️ ~2 minutes </details> <!-- walkthrough_end --> <!-- announcements_start --> > [!TIP] > <details> > <summary>🔌 Remote MCP (Model Context Protocol) integration is now available!</summary> > > Pro plan users can now connect to remote MCP servers from the [Integrations](https://app.coderabbit.ai/integrations) page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. > > </details> <!-- announcements_end --> <!-- internal state start --> <!-- DwQgtGAEAqAWCWBnSTIEMB26CuAXA9mAOYCmGJATmriQCaQDG+Ats2bgFyQAOFk+AIwBWJBrngA3EsgEBPRvlqU0AgfFwA6NPEgQAfACgjoCEejqANiS7ZuRKkq64qDWWAYX47AwDlszAUouAFYABgMAVUQgyAx8DCVEBgp4blxufHgMGgojfWNwKDJ6fAAzHAJiMmUaeiZWdi5efmFRcSkZeSYlKlV1LR18kyg4VFRMCsJScipahQbsrioAd0hEf2Y0Cnk5BR6VNU1tXTBDAtMDAGEtonwNAmYLDgMAIjeDAGIPyABBAEkqjNqHQ1hstvIyoxYJhSIg8pAItxaMD6M40K53J52JAlNximRXJBShQWJAXgBeUIaACMAA4NKEXpACGTKTT6QAmJlZSDXCi3e4sCwAbnQFgs/FwsEokE85GQ2AwDGhGFItA0BigPnwexIABpfgAFP4G/B8CiK8RsWX4IjwBhQmHSUXxCzyKUkZkICi0MDcLa4eS4/FK+RSCiIeDxSDLNAKpEojVGT7fH4WHLUKMYZAsj040QWLaZ+LISEkAAeGQoczNPGwAk8DvY6i8cM1kG1dYb9oA9BWq3MlB4i+ISzHKJ7mIp4KUvOqjABRRBWlG6yAUEgSLyrEilUpmziQACydHg/le701p3ORQS/HKaDwU2qsxB9TYi3XaFW61Y4MguzdMofRHIM17DPMzDqAA+vAtCINBG5biQyx0NBy4BicZwQQA7AAbAALByoTBLQeEkARAiEaUeHUjhDAAMwkKItA4QAnKEaAMQw1LIgIDB4WgJG0gIWE3pBMFwQhSHbmhxRiRBzAMNw0FMNkFa4OhuCYfkBgAN4GJAZIMGg/pqJ44jSAAymC2wvFwLydkelyGsy+D4BYyBoBI2iFg2JAvAYAC+4lKSpak0OWmnyfoQA= --> <!-- internal state end --> <!-- finishing_touch_checkbox_start --> <details> <summary>✨ Finishing Touches</summary> <details> <summary>🧪 Generate unit tests</summary> - [ ] <!-- {"checkboxId": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "radioGroupId": "utg-output-choice-group-unknown_comment_id"} --> Create PR with unit tests - [ ] <!-- {"checkboxId": "07f1e7d6-8a8e-4e23-9900-8731c2c87f58", "radioGroupId": "utg-output-choice-group-unknown_comment_id"} --> Post copyable unit tests in a comment </details> </details> <!-- finishing_touch_checkbox_end --> <!-- tips_start --> --- Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. <details> <summary>❤️ Share</summary> - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code) </details> <details> <summary>🪧 Tips</summary> ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai?utm_source=oss&utm_medium=github&utm_campaign=StardustXR/server&utm_content=50): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit <commit_id>, please review it.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` ### Support Need help? Create a ticket on our [support page](https://www.coderabbit.ai/contact-us/support) for assistance with any issues or questions. ### CodeRabbit Commands (Invoked using PR/Issue comments) Type `@coderabbitai help` to get the list of available commands. ### Other keywords and placeholders - Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. - Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description. - Add `@coderabbitai` anywhere in the PR title to generate the title automatically. ### CodeRabbit Configuration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Status, Documentation and Community - Visit our [Status Page](https://status.coderabbit.ai) to check the current availability of CodeRabbit. - Visit our [Documentation](https://docs.coderabbit.ai) for detailed information on how to use CodeRabbit. - Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements. </details> <!-- tips_end -->
coderabbitai[bot] (Migrated from github.com) reviewed 2025-08-17 16:13:54 -04:00
coderabbitai[bot] (Migrated from github.com) left a comment

Actionable comments posted: 1

🧹 Nitpick comments (1)
Cargo.toml (1)

83-83: Optional: avoid exact pin or gate tracy-client behind the profiling feature

  • If exact pinning isn’t required, prefer a non-exact version to reduce resolver friction with transitive deps:
- tracy-client = { version = "=0.18.2" }
+ tracy-client = { version = "0.18.2" }
  • If tracy-client is only used when profiling is enabled, consider making it optional and enabling via profile_app to keep default builds lean:
- tracy-client = { version = "=0.18.2" }
+ tracy-client = { version = "0.18.2", optional = true }

Then include it in the feature (outside this hunk):

[features]
profile_app = [
  "dep:tracing-tracy",
  "dep:tracy-client",
  "bevy/trace_tracy",
  "bevy/trace",
]

This keeps the dependency out of default builds while still available for profiling.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 877a32ab09 and 764205d6e4.

Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (1)
  • Cargo.toml (1 hunks)
🔇 Additional comments (2)
Cargo.toml (2)

83-83: Patch-level bump to tracy-client looks good

Moving from =0.18.0 to =0.18.2 is a safe, backward-compatible update and aligns with typical patch fixes.


83-83: tracy-client upgrade verified

All checks passed—no further action needed before merging:

  • Cargo.lock lists a single tracy-client at version 0.18.2.
  • No direct tracy_client API usage found in the codebase.
**Actionable comments posted: 1** <details> <summary>🧹 Nitpick comments (1)</summary><blockquote> <details> <summary>Cargo.toml (1)</summary><blockquote> `83-83`: **Optional: avoid exact pin or gate tracy-client behind the profiling feature** - If exact pinning isn’t required, prefer a non-exact version to reduce resolver friction with transitive deps: ```diff - tracy-client = { version = "=0.18.2" } + tracy-client = { version = "0.18.2" } ``` - If tracy-client is only used when profiling is enabled, consider making it optional and enabling via profile_app to keep default builds lean: ```diff - tracy-client = { version = "=0.18.2" } + tracy-client = { version = "0.18.2", optional = true } ``` Then include it in the feature (outside this hunk): ```toml [features] profile_app = [ "dep:tracing-tracy", "dep:tracy-client", "bevy/trace_tracy", "bevy/trace", ] ``` This keeps the dependency out of default builds while still available for profiling. </blockquote></details> </blockquote></details> <details> <summary>📜 Review details</summary> **Configuration used: CodeRabbit UI** **Review profile: CHILL** **Plan: Pro** **💡 Knowledge Base configuration:** - MCP integration is disabled by default for public repositories - Jira integration is disabled by default for public repositories - Linear integration is disabled by default for public repositories You can enable these sources in your CodeRabbit configuration. <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between 877a32ab09ce1fb77b0a8e79433e85465ecee288 and 764205d6e4b64f617c3eecd790a3c1dabc6a058b. </details> <details> <summary>⛔ Files ignored due to path filters (1)</summary> * `Cargo.lock` is excluded by `!**/*.lock` </details> <details> <summary>📒 Files selected for processing (1)</summary> * `Cargo.toml` (1 hunks) </details> <details> <summary>🔇 Additional comments (2)</summary><blockquote> <details> <summary>Cargo.toml (2)</summary> `83-83`: **Patch-level bump to tracy-client looks good** Moving from =0.18.0 to =0.18.2 is a safe, backward-compatible update and aligns with typical patch fixes. --- `83-83`: **✅ tracy-client upgrade verified** All checks passed—no further action needed before merging: - Cargo.lock lists a single `tracy-client` at version 0.18.2. - No direct `tracy_client` API usage found in the codebase. </details> </blockquote></details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
@@ -82,3 +82,3 @@
tracing-tracy = { version = "0.11.1", optional = true }
tracy-client = { version = "=0.18.0" }
tracy-client = { version = "=0.18.2" }
coderabbitai[bot] (Migrated from github.com) commented 2025-08-17 16:13:53 -04:00

💡 Verification agent

🧩 Analysis chain

Double-check upstream compatibility matrix

Please confirm tracing-tracy 0.11.1’s supported tracy-client range to ensure 0.18.2 is within bounds.


🌐 Web query:

What tracy-client version(s) does tracing-tracy 0.11.1 depend on or support?

💡 Result:

tracing-tracy 0.11.1 depends on and supports tracy-client version 0.16.x.

The crates.io page for tracing-tracy (not directly in your search results) specifies:

  • tracing-tracy 0.11.1 has a required dependency:
    tracy-client >=0.16.0, <0.17.0

This means tracing-tracy 0.11.1 is compatible with tracy-client versions from 0.16.0 up to, but not including, 0.17.0.

Supporting context:

  • No search result directly lists the version mapping for 0.11.1, but tracing-tracy and tracy-client exhibit tight version coupling.
  • The tracing-tracy documentation describes features requiring tracy-client and refers to additional profiling capabilities from that dependency[9].
  • Community discussions highlight frequent incompatibilities between the embedded Tracy library and the external client, but do not list the current version mapping for 0.11.1[2][7].
  • Previous traceable examples indicate that major tracing-tracy releases consistently bump their tracy-client requirement.

Therefore, for tracing-tracy 0.11.1 specifically, use tracy-client 0.16.x.
Using other versions (e.g., 0.15.x or 0.17.x) will likely result in protocol incompatibility errors[7].

If you need to check or update this mapping for future releases, always check the Cargo.toml of the tracing-tracy version or its crates.io listing.

Citations:


Address tracy-client compatibility with tracing-tracy 0.11.1

tracing-tracy v0.11.1 requires tracy-client >=0.16.0, <0.17.0, but the PR pins tracy-client = "0.18.2", which is out of range and will cause protocol mismatches.

• Cargo.toml, line 83

- tracy-client = { version = "=0.18.2" }
+ # Option A: downgrade to the supported 0.16.x series
+ tracy-client = "0.16"

+ # Option B: upgrade tracing-tracy to a version that supports 0.18.x
+ # e.g., in Cargo.toml
+ # tracing-tracy = "0.12.0"

Please choose one of the above or align both dependencies to a matching compatibility range.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

# Option A: downgrade to the supported 0.16.x series
tracy-client = "0.16"

# Option B: upgrade tracing-tracy to a version that supports 0.18.x
# e.g., in Cargo.toml
# tracing-tracy = "0.12.0"
🤖 Prompt for AI Agents
In Cargo.toml around line 83, the PR pins tracy-client = "0.18.2" which is
incompatible with tracing-tracy v0.11.1 (it requires tracy-client >=0.16.0,
<0.17.0); fix by aligning the two dependencies — either downgrade tracy-client
to a 0.16.x release that satisfies tracing-tracy (e.g., set tracy-client to a
0.16-compatible version/range) or upgrade tracing-tracy to a version that
supports tracy-client 0.18.2; pick one approach and update the Cargo.toml
dependency entries so their version ranges overlap, then run cargo update/build
to verify dependency resolution succeeds.
_💡 Verification agent_ <details> <summary>🧩 Analysis chain</summary> **Double-check upstream compatibility matrix** Please confirm tracing-tracy 0.11.1’s supported tracy-client range to ensure 0.18.2 is within bounds. --- 🌐 Web query: ```web What tracy-client version(s) does tracing-tracy 0.11.1 depend on or support? ``` 💡 Result: **tracing-tracy 0.11.1 depends on and supports tracy-client version 0.16.x.** The [crates.io page for tracing-tracy](https://crates.io/crates/tracing-tracy/0.11.1) (not directly in your search results) specifies: - **tracing-tracy 0.11.1** has a required dependency: `tracy-client >=0.16.0, <0.17.0` This means tracing-tracy 0.11.1 is compatible with **tracy-client versions from 0.16.0 up to, but not including, 0.17.0**. **Supporting context:** - No search result directly lists the version mapping for 0.11.1, but tracing-tracy and tracy-client exhibit tight version coupling. - The `tracing-tracy` documentation describes features requiring `tracy-client` and refers to additional profiling capabilities from that dependency[9]. - Community discussions highlight frequent incompatibilities between the embedded Tracy library and the external client, but do not list the current version mapping for 0.11.1[2][7]. - Previous traceable examples indicate that major `tracing-tracy` releases consistently bump their `tracy-client` requirement. Therefore, for **tracing-tracy 0.11.1 specifically**, use **tracy-client 0.16.x**. Using other versions (e.g., 0.15.x or 0.17.x) will likely result in protocol incompatibility errors[7]. **If you need to check or update this mapping for future releases, always check the `Cargo.toml` of the tracing-tracy version or its crates.io listing.** Citations: - 1: https://github.com/MethanePowered/Tracy/releases - 2: https://users.rust-lang.org/t/tracy-profiler-version-hell/94190 - 3: https://github.com/wolfpld/tracy/releases - 4: https://docs.cvedia.com/support/tracy_profiler.html - 5: https://www.libhunt.com/compare-minitrace-vs-tracy - 6: https://iree.dev/developers/performance/profiling-with-tracy/ - 7: https://forums.developer.nvidia.com/t/tracy-profiler-mismatch-version/328676 - 8: https://docs.rs/crate/tracing-tracy/0.8.0 - 9: https://docs.rs/tracing-tracy/latest/tracing_tracy/ - 10: https://escholarship.org/content/qt5vb169rb/qt5vb169rb.pdf --- </details> **Address tracy-client compatibility with tracing-tracy 0.11.1** tracing-tracy v0.11.1 requires `tracy-client >=0.16.0, <0.17.0`, but the PR pins `tracy-client = "0.18.2"`, which is out of range and will cause protocol mismatches. • Cargo.toml, line 83 ```diff - tracy-client = { version = "=0.18.2" } + # Option A: downgrade to the supported 0.16.x series + tracy-client = "0.16" + # Option B: upgrade tracing-tracy to a version that supports 0.18.x + # e.g., in Cargo.toml + # tracing-tracy = "0.12.0" ``` Please choose one of the above or align both dependencies to a matching compatibility range. <!-- suggestion_start --> <details> <summary>📝 Committable suggestion</summary> > ‼️ **IMPORTANT** > Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements. ```suggestion # Option A: downgrade to the supported 0.16.x series tracy-client = "0.16" # Option B: upgrade tracing-tracy to a version that supports 0.18.x # e.g., in Cargo.toml # tracing-tracy = "0.12.0" ``` </details> <!-- suggestion_end --> <details> <summary>🤖 Prompt for AI Agents</summary> ``` In Cargo.toml around line 83, the PR pins tracy-client = "0.18.2" which is incompatible with tracing-tracy v0.11.1 (it requires tracy-client >=0.16.0, <0.17.0); fix by aligning the two dependencies — either downgrade tracy-client to a 0.16.x release that satisfies tracing-tracy (e.g., set tracy-client to a 0.16-compatible version/range) or upgrade tracing-tracy to a version that supports tracy-client 0.18.2; pick one approach and update the Cargo.toml dependency entries so their version ranges overlap, then run cargo update/build to verify dependency resolution succeeds. ``` </details> <!-- fingerprinting:phantom:triton:chinchilla --> <!-- This is an auto-generated comment by CodeRabbit -->
Schmarni-Dev commented 2025-08-17 19:22:54 -04:00 (Migrated from github.com)

this isn't really helpful sadly, different versions are required based on what tracy version it shipped in the distro

this isn't really helpful sadly, different versions are required based on what tracy version it shipped in the distro
nondescriptpointer commented 2025-08-18 03:16:44 -04:00 (Migrated from github.com)

this isn't really helpful sadly, different versions are required based on what tracy version it shipped in the distro

That's fair. This was just the version linked to the tracy version currently in Arch repo's.

> this isn't really helpful sadly, different versions are required based on what tracy version it shipped in the distro That's fair. This was just the version linked to the tracy version currently in Arch repo's.

Pull request closed

Sign in to join this conversation.