Release 0.21.0 - Deadlock fix and winit update

This commit is contained in:
Emil Ernerfeldt 2023-02-08 20:11:21 +01:00
parent 1384fa3287
commit ae722ab0cf
21 changed files with 70 additions and 45 deletions

View file

@ -5,6 +5,9 @@ NOTE: [`epaint`](crates/epaint/CHANGELOG.md), [`eframe`](crates/eframe/CHANGELOG
## Unreleased
## 0.21.0 - 2023-02-08 - Deadlock fix and style customizability
* ⚠️ BREAKING: `egui::Context` now use closures for locking ([#2625](https://github.com/emilk/egui/pull/2625)):
* `ctx.input().key_pressed(Key::A)` -> `ctx.input(|i| i.key_pressed(Key::A))`
* `ui.memory().toggle_popup(popup_id)` -> `ui.memory_mut(|mem| mem.toggle_popup(popup_id))`

22
Cargo.lock generated
View file

@ -1207,7 +1207,7 @@ checksum = "c9b0705efd4599c15a38151f4721f7bc388306f61084d3bfd50bd07fbca5cb60"
[[package]]
name = "ecolor"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"bytemuck",
"cint",
@ -1218,7 +1218,7 @@ dependencies = [
[[package]]
name = "eframe"
version = "0.20.1"
version = "0.21.0"
dependencies = [
"bytemuck",
"dark-light",
@ -1251,7 +1251,7 @@ dependencies = [
[[package]]
name = "egui"
version = "0.20.1"
version = "0.21.0"
dependencies = [
"accesskit",
"ahash 0.8.3",
@ -1265,7 +1265,7 @@ dependencies = [
[[package]]
name = "egui-wgpu"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"bytemuck",
"document-features",
@ -1279,7 +1279,7 @@ dependencies = [
[[package]]
name = "egui-winit"
version = "0.20.1"
version = "0.21.0"
dependencies = [
"accesskit_winit",
"android-activity",
@ -1297,7 +1297,7 @@ dependencies = [
[[package]]
name = "egui_demo_app"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"bytemuck",
"chrono",
@ -1318,7 +1318,7 @@ dependencies = [
[[package]]
name = "egui_demo_lib"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"chrono",
"criterion",
@ -1334,7 +1334,7 @@ dependencies = [
[[package]]
name = "egui_extras"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"chrono",
"document-features",
@ -1349,7 +1349,7 @@ dependencies = [
[[package]]
name = "egui_glow"
version = "0.20.1"
version = "0.21.0"
dependencies = [
"bytemuck",
"document-features",
@ -1387,7 +1387,7 @@ checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
[[package]]
name = "emath"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"bytemuck",
"document-features",
@ -1450,7 +1450,7 @@ dependencies = [
[[package]]
name = "epaint"
version = "0.20.0"
version = "0.21.0"
dependencies = [
"ab_glyph",
"ahash 0.8.3",

View file

@ -3,6 +3,9 @@ All notable changes to the `ecolor` crate will be noted in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Add `Color32::gamma_multiply` ([#2437](https://github.com/emilk/egui/pull/2437)).

View file

@ -1,6 +1,6 @@
[package]
name = "ecolor"
version = "0.20.0"
version = "0.21.0"
authors = [
"Emil Ernerfeldt <emil.ernerfeldt@gmail.com>",
"Andreas Reich <reichandreas@gmx.de>",

View file

@ -5,6 +5,9 @@ NOTE: [`egui-winit`](../egui-winit/CHANGELOG.md), [`egui_glium`](../egui_glium/C
## Unreleased
## 0.21.0 - 2023-02-08 - Update to `winit` 0.28
* ⚠️ BREAKING: `App::clear_color` now expects you to return a raw float array ([#2666](https://github.com/emilk/egui/pull/2666)).
* The `screen_reader` feature has now been renamed `web_screen_reader` and only work on web. On other platforms, use the `accesskit` feature flag instead ([#2669](https://github.com/emilk/egui/pull/2669)).

View file

@ -1,6 +1,6 @@
[package]
name = "eframe"
version = "0.20.1"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "egui framework - write GUI apps that compiles to web and/or natively"
edition = "2021"
@ -68,7 +68,7 @@ wgpu = ["dep:wgpu", "dep:egui-wgpu", "dep:pollster"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false, features = [
egui = { version = "0.21.0", path = "../egui", default-features = false, features = [
"bytemuck",
"tracing",
] }
@ -79,7 +79,7 @@ tracing = { version = "0.1", default-features = false, features = ["std"] }
## Enable this when generating docs.
document-features = { version = "0.2", optional = true }
egui_glow = { version = "0.20.0", path = "../egui_glow", optional = true, default-features = false }
egui_glow = { version = "0.21.0", path = "../egui_glow", optional = true, default-features = false }
glow = { version = "0.12", optional = true }
ron = { version = "0.8", optional = true, features = ["integer128"] }
serde = { version = "1", optional = true, features = ["derive"] }
@ -87,7 +87,7 @@ serde = { version = "1", optional = true, features = ["derive"] }
# -------------------------------------------
# native:
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
egui-winit = { version = "0.20.0", path = "../egui-winit", default-features = false, features = [
egui-winit = { version = "0.21.0", path = "../egui-winit", default-features = false, features = [
"clipboard",
"links",
] }
@ -97,7 +97,7 @@ winit = "0.28.1"
# optional native:
dark-light = { version = "1.0", optional = true }
directories-next = { version = "2", optional = true }
egui-wgpu = { version = "0.20.0", path = "../egui-wgpu", optional = true, features = [
egui-wgpu = { version = "0.21.0", path = "../egui-wgpu", optional = true, features = [
"winit",
] } # if wgpu is used, use it with winit
pollster = { version = "0.3", optional = true } # needed for wgpu
@ -164,6 +164,6 @@ web-sys = { version = "0.3.58", features = [
] }
# optional web:
egui-wgpu = { version = "0.20.0", path = "../egui-wgpu", optional = true } # if wgpu is used, use it without (!) winit
egui-wgpu = { version = "0.21.0", path = "../egui-wgpu", optional = true } # if wgpu is used, use it without (!) winit
tts = { version = "0.25", optional = true, default-features = false }
wgpu = { version = "0.15.0", optional = true, features = ["webgl"] }

View file

@ -3,6 +3,9 @@ All notable changes to the `egui-wgpu` integration will be noted in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Update to `wgpu` 0.15 ([#2629](https://github.com/emilk/egui/pull/2629))
* Return `Err` instead of panic if we can't find a device ([#2428](https://github.com/emilk/egui/pull/2428)).
* `winit::Painter::set_window` is now `async` ([#2434](https://github.com/emilk/egui/pull/2434)).

View file

@ -1,6 +1,6 @@
[package]
name = "egui-wgpu"
version = "0.20.0"
version = "0.21.0"
description = "Bindings for using egui natively using the wgpu library"
authors = [
"Nils Hasenbanck <nils@hasenbanck.de>",
@ -36,7 +36,7 @@ winit = ["dep:winit"]
[dependencies]
epaint = { version = "0.20.0", path = "../epaint", default-features = false, features = [
epaint = { version = "0.21.0", path = "../epaint", default-features = false, features = [
"bytemuck",
] }

View file

@ -3,6 +3,9 @@ All notable changes to the `egui-winit` integration will be noted in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Fixed persistence of native window position on Windows OS ([#2583](https://github.com/emilk/egui/issues/2583)).
* Update to `winit` 0.28, adding support for mac trackpad zoom ([#2654](https://github.com/emilk/egui/pull/2654)).
* Remove the `screen_reader` feature. Use the `accesskit` feature flag instead ([#2669](https://github.com/emilk/egui/pull/2669)).

View file

@ -1,6 +1,6 @@
[package]
name = "egui-winit"
version = "0.20.1"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Bindings for using egui with winit"
edition = "2021"
@ -43,7 +43,7 @@ serde = ["egui/serde", "dep:serde"]
wayland = ["winit/wayland"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false, features = [
egui = { version = "0.21.0", path = "../egui", default-features = false, features = [
"tracing",
] }
instant = { version = "0.1", features = [

View file

@ -1,6 +1,6 @@
[package]
name = "egui"
version = "0.20.1"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "An easy-to-use immediate mode GUI that runs on both web and native"
edition = "2021"
@ -59,7 +59,7 @@ unity = ["epaint/unity"]
[dependencies]
epaint = { version = "0.20.0", path = "../epaint", default-features = false }
epaint = { version = "0.21.0", path = "../epaint", default-features = false }
ahash = { version = "0.8.1", default-features = false, features = [
"no-rng", # we don't need DOS-protection, so we let users opt-in to it instead

View file

@ -1,6 +1,6 @@
[package]
name = "egui_demo_app"
version = "0.20.0"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
license = "MIT OR Apache-2.0"
edition = "2021"
@ -30,11 +30,11 @@ wgpu = ["eframe/wgpu", "bytemuck"]
[dependencies]
chrono = { version = "0.4", features = ["js-sys", "wasmbind"] }
eframe = { version = "0.20.0", path = "../eframe", default-features = false }
egui = { version = "0.20.0", path = "../egui", features = [
eframe = { version = "0.21.0", path = "../eframe", default-features = false }
egui = { version = "0.21.0", path = "../egui", features = [
"extra_debug_asserts",
] }
egui_demo_lib = { version = "0.20.0", path = "../egui_demo_lib", features = [
egui_demo_lib = { version = "0.21.0", path = "../egui_demo_lib", features = [
"chrono",
] }
tracing = "0.1"
@ -42,7 +42,7 @@ tracing = "0.1"
# Optional dependencies:
bytemuck = { version = "1.7.1", optional = true }
egui_extras = { version = "0.20.0", optional = true, path = "../egui_extras" }
egui_extras = { version = "0.21.0", optional = true, path = "../egui_extras" }
# feature "http":
ehttp = { version = "0.2.0", optional = true }

View file

@ -1,6 +1,6 @@
[package]
name = "egui_demo_lib"
version = "0.20.0"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Example library for egui"
edition = "2021"
@ -30,8 +30,8 @@ syntax_highlighting = ["syntect"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false }
egui_extras = { version = "0.20.0", path = "../egui_extras" }
egui = { version = "0.21.0", path = "../egui", default-features = false }
egui_extras = { version = "0.21.0", path = "../egui_extras" }
enum-map = { version = "2", features = ["serde"] }
tracing = { version = "0.1", default-features = false, features = ["std"] }
unicode_names2 = { version = "0.6.0", default-features = false }

View file

@ -5,6 +5,10 @@ All notable changes to the `egui_extras` integration will be noted in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Update to egui 0.21
## 0.20.0 - 2022-12-08
* Added `RetainedImage::from_svg_bytes_with_size` to be able to specify a size for SVGs to be rasterized at.
* Lots of `Table` improvements ([#2369](https://github.com/emilk/egui/pull/2369)):

View file

@ -1,6 +1,6 @@
[package]
name = "egui_extras"
version = "0.20.0"
version = "0.21.0"
authors = [
"Dominik Rössler <dominik@freshx.de>",
"Emil Ernerfeldt <emil.ernerfeldt@gmail.com>",
@ -37,7 +37,7 @@ tracing = ["dep:tracing", "egui/tracing"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false }
egui = { version = "0.21.0", path = "../egui", default-features = false }
serde = { version = "1", features = ["derive"] }

View file

@ -1,6 +1,6 @@
[package]
name = "egui_glium"
version = "0.20.1"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Bindings for using egui natively using the glium library"
edition = "2021"
@ -36,10 +36,10 @@ links = ["egui-winit/links"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false, features = [
egui = { version = "0.21.0", path = "../egui", default-features = false, features = [
"bytemuck",
] }
egui-winit = { version = "0.20.0", path = "../egui-winit", default-features = false }
egui-winit = { version = "0.21.0", path = "../egui-winit", default-features = false }
ahash = { version = "0.8.1", default-features = false, features = [
"no-rng", # we don't need DOS-protection, so we let users opt-in to it instead
@ -54,5 +54,5 @@ document-features = { version = "0.2", optional = true }
[dev-dependencies]
egui_demo_lib = { version = "0.20.0", path = "../egui_demo_lib", default-features = false }
egui_demo_lib = { version = "0.21.0", path = "../egui_demo_lib", default-features = false }
image = { version = "0.24", default-features = false, features = ["png"] }

View file

@ -3,6 +3,9 @@ All notable changes to the `egui_glow` integration will be noted in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Update to `glow` 0.12 ([#2695](https://github.com/emilk/egui/pull/2695)).
* Remove the `screen_reader` feature ([#2669](https://github.com/emilk/egui/pull/2669)).

View file

@ -1,6 +1,6 @@
[package]
name = "egui_glow"
version = "0.20.1"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Bindings for using egui natively using the glow library"
edition = "2021"
@ -44,7 +44,7 @@ winit = ["egui-winit"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false, features = [
egui = { version = "0.21.0", path = "../egui", default-features = false, features = [
"bytemuck",
] }
@ -59,7 +59,7 @@ document-features = { version = "0.2", optional = true }
# Native:
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
egui-winit = { version = "0.20.0", path = "../egui-winit", optional = true, default-features = false }
egui-winit = { version = "0.21.0", path = "../egui-winit", optional = true, default-features = false }
puffin = { version = "0.14", optional = true }
# Web:

View file

@ -1,6 +1,6 @@
[package]
name = "emath"
version = "0.20.0"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Minimal 2D math library for GUI work"
edition = "2021"

View file

@ -3,6 +3,9 @@ All notable changes to the epaint crate will be documented in this file.
## Unreleased
## 0.21.0 - 2023-02-08
* Improve the look of thin white lines ([#2437](https://github.com/emilk/egui/pull/2437)).
* Don't render `\r` (Carriage Return) ([#2452](https://github.com/emilk/egui/pull/2452)).
* Fix bug in `Mesh::split_to_u16` ([#2459](https://github.com/emilk/egui/pull/2459)).

View file

@ -1,6 +1,6 @@
[package]
name = "epaint"
version = "0.20.0"
version = "0.21.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "Minimal 2D graphics library for GUI work"
edition = "2021"
@ -67,8 +67,8 @@ serde = ["dep:serde", "ahash/serde", "emath/serde", "ecolor/serde"]
unity = []
[dependencies]
emath = { version = "0.20.0", path = "../emath" }
ecolor = { version = "0.20.0", path = "../ecolor" }
emath = { version = "0.21.0", path = "../emath" }
ecolor = { version = "0.21.0", path = "../ecolor" }
ab_glyph = "0.2.11"
ahash = { version = "0.8.1", default-features = false, features = [