puffin icon indicating copy to clipboard operation
puffin copied to clipboard

Upgrade to egui 0.31

Open tedsteen opened this issue 1 year ago • 17 comments

Checklist

  • [x] I have read the Contributor Guide
  • [x] I have read and agree to the Code of Conduct
  • [x] I have added a description of my changes and why I'd like them included in the section below

Description of Changes

Upgraded to egui 0.30.

Related Issues

Fixes #233

tedsteen avatar Sep 30 '24 15:09 tedsteen

How well have you tested this?

emilk avatar Sep 30 '24 20:09 emilk

How well have you tested this?

To be honest with you.. Not at all :) I plan to test this out on my own project when I find the time, so until then, unless someone else do some testing, we let this PR rest here..

tedsteen avatar Oct 01 '24 12:10 tedsteen

I tested it on my project (while bumping egui, egui-wgpu and egui-winit from 0.28.1 to 0.29.1) and haven't seen any issue so far. It even seems to be running faster but I haven't benchmarked properly.

Azkellas avatar Oct 01 '24 13:10 Azkellas

I have now at least tried to run puffin and things are looking ok. Will get back to you when I have done more extensive testing on my end.

tedsteen avatar Oct 01 '24 14:10 tedsteen

I have been using this with my own project for some time now and I have not found any issues with it. From my end this looks good to go

tedsteen avatar Oct 03 '24 16:10 tedsteen

@emilk I have been using this version with my game engine since egui 0.29 was released. It seems to be working fine

maplant avatar Oct 03 '24 19:10 maplant

Shall we?

tedsteen avatar Oct 28 '24 06:10 tedsteen

We're using puffin_egui for https://github.com/dimforge/rapier/pull/758 and rely on this PR for the next update, I didn't notice regressions :tada:

ThierryBerger avatar Dec 04 '24 14:12 ThierryBerger

This update somehow breaks profiling and puffin integration Only puffin_egui::puffin reexport works.

I use for testing this example https://github.com/aclysma/profiling/tree/master/demo-puffin

and this changes to Cargo.toml

puffin_egui = { version = "0.29.0", git = "https://github.com/tedsteen/puffin", rev = "11771ebe00fd257aedbb545df3339ad597b1cc34"}

demo

but with regular

puffin_egui = "0.29.0"

Expected result изображение

this is toml for broken version

[workspace]
# This is not part of the workspace in the profiling git repository because it causes the puffin feature to be enabled
# in examples, which we don't want.

[package]
name = "demo-puffin"
version = "0.1.0"
authors = ["Philip Degarmo <[email protected]>"]
edition = "2018"
description = "Example using puffin and the profiling crate"
license = "MIT OR Apache-2.0"
readme = "../README.md"
repository = "https://github.com/aclysma/profiling"
homepage = "https://github.com/aclysma/profiling"
keywords = ["performance", "profiling"]
categories = ["development-tools::profiling"]

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
profiling = { path = "../profiling", features = ["profile-with-puffin"] }

puffin = "0.19.1"
puffin_egui = { version = "0.29.0", git = "https://github.com/tedsteen/puffin", rev = "11771ebe00fd257aedbb545df3339ad597b1cc34"}
egui = "0.29.1" 
# wgpu also works fine here
eframe = { version = "0.29.1", default-features = false, features = ["glow"] }

log = "0.4"
env_logger = "0.11"

this is the working variant

[dependencies]
profiling = { path = "../profiling", features = ["profile-with-puffin"] }

puffin = "0.19.1"
puffin_egui = "0.29.0"
egui = "0.28.1" 
# wgpu also works fine here
eframe = { version = "0.28.1", default-features = false, features = ["glow"] }

if I try making


puffin = { version =  "0.19.1", git = "https://github.com/tedsteen/puffin", rev = "11771ebe00fd257aedbb545df3339ad597b1cc34"}
puffin_egui = { version = "0.29.0", git = "https://github.com/tedsteen/puffin", rev = "11771ebe00fd257aedbb545df3339ad597b1cc34"}

demo2

it can detect puffin, but no data is displayed

I have no idea why this version is failing - it's most likely config err, but please update this crate

Chu-4hun avatar Dec 14 '24 22:12 Chu-4hun

@Chu-4hun I made a fork of main and tried bumping egui to 0.30.0. This results in the exact same behavior you encountered. What did it for me was calling puffin::set_scopes_on(true); anywhere on startup.

However, I noticed this line is already present in the example demo in main(), so I've no clue what's causing it to fail on your end.

JasondeWolff avatar Dec 17 '24 16:12 JasondeWolff

Its already needs to be updated to egui 0.30.0

Chu-4hun avatar Dec 17 '24 21:12 Chu-4hun

I forked puffin and updated the egui, egui_extras and eframe to 0.29.0. Everything works fine it seems on my own project.

I don't understand why puffin_egui's own version is set to 0.29.0 when the egui version it uses is 0.28.0.

kaphula avatar Dec 17 '24 21:12 kaphula

Upgraded to egui 0.30. This required an upgrade of the toolchain to 0.81

tedsteen avatar Dec 17 '24 23:12 tedsteen

I forked puffin and updated the egui, egui_extras and eframe to 0.29.0. Everything works fine it seems on my own project.

I don't understand why puffin_egui's own version is set to 0.29.0 when the egui version it uses is 0.28.0.

That's because puffin_egui is part of this PR and is not yet released/merged

tedsteen avatar Dec 17 '24 23:12 tedsteen

Upgraded to egui 0.31

tedsteen avatar Feb 06 '25 13:02 tedsteen

Everything still works great btw. Been running for a while now without issues

tedsteen avatar Feb 06 '25 13:02 tedsteen

Any chance we can get this merged in soon and released?

I've been testing it using @tedsteen's branch on TetaNES and it seems to work pretty well without any other changes to my code from when it was still on egui 0.28.

image

lukexor avatar Mar 14 '25 18:03 lukexor

can this be merged? egui 0.32 is already out, so a further update would also be required..

hacknus avatar Jul 12 '25 09:07 hacknus

thanks!

emilk avatar Aug 05 '25 13:08 emilk