Browse Source

Move dependencies to workspace (#4495)

<!--
Please read the "Making a PR" section of
[`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md)
before opening a Pull Request!

* Keep your PR:s small and focused.
* The PR title is what ends up in the changelog, so make it descriptive!
* If applicable, add a screenshot or gif.
* If it is a non-trivial addition, consider adding a demo for it to
`egui_demo_lib`, or a new example.
* Do NOT open PR:s from your `master` branch, as that makes it hard for
maintainers to add commits to your PR.
* Remember to run `cargo fmt` and `cargo clippy`.
* Open the PR as a draft until you have self-reviewed it and run
`./scripts/check.sh`.
* When you have addressed a PR comment, mark it as resolved.

Please be patient! I will review your PR, but my time is limited!
-->

Inspired by:

44d65f41ac/Cargo.toml (L65)

I took the liberty of removing that comment since I *think* that I got
all "relevant" ones (showing up more than once, sort of).
pull/4498/head
Oscar Gustafsson 6 months ago
committed by GitHub
parent
commit
c1eb3f884d
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 9
      Cargo.toml
  2. 4
      crates/ecolor/Cargo.toml
  3. 16
      crates/eframe/Cargo.toml
  4. 2
      crates/egui-wgpu/Cargo.toml
  5. 2
      crates/egui-winit/Cargo.toml
  6. 4
      crates/egui/Cargo.toml
  7. 8
      crates/egui_demo_app/Cargo.toml
  8. 2
      crates/egui_demo_lib/Cargo.toml
  9. 2
      crates/egui_extras/Cargo.toml
  10. 10
      crates/egui_glow/Cargo.toml
  11. 2
      crates/egui_plot/Cargo.toml
  12. 4
      crates/emath/Cargo.toml
  13. 4
      crates/epaint/Cargo.toml

9
Cargo.toml

@ -62,24 +62,31 @@ egui_demo_lib = { version = "0.27.2", path = "crates/egui_demo_lib", default-fea
egui_glow = { version = "0.27.2", path = "crates/egui_glow", default-features = false }
eframe = { version = "0.27.2", path = "crates/eframe", default-features = false }
#TODO(emilk): make more things workspace dependencies
ahash = { version = "0.8.6", default-features = false, features = [
"no-rng", # we don't need DOS-protection, so we let users opt-in to it instead
"std",
] }
backtrace = "0.3"
bytemuck = "1.7.2"
criterion = { version = "0.5.1", default-features = false }
document-features = " 0.2.8"
glow = "0.13"
glutin = "0.31"
glutin-winit = "0.4"
image = { version = "0.25", default-features = false }
log = { version = "0.4", features = ["std"] }
nohash-hasher = "0.2"
parking_lot = "0.12"
puffin = "0.19"
puffin_http = "0.16"
ron = "0.8"
raw-window-handle = "0.6.0"
serde = { version = "1", features = ["derive"] }
thiserror = "1.0.37"
web-time = "0.2" # Timekeeping for native and web
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = "0.3.58"
wgpu = { version = "0.20.0", default-features = false, features = [
# Make the renderer `Sync` even on wasm32, because it makes the code simpler:
"fragile-send-sync-non-atomic-wasm",

4
crates/ecolor/Cargo.toml

@ -33,7 +33,7 @@ default = []
#! ### Optional dependencies
## [`bytemuck`](https://docs.rs/bytemuck) enables you to cast `ecolor` types to `&[u8]`.
bytemuck = { version = "1.7.2", optional = true, features = ["derive"] }
bytemuck = { workspace = true, optional = true, features = ["derive"] }
## [`cint`](https://docs.rs/cint) enables interoperability with other color libraries.
cint = { version = "0.3.1", optional = true }
@ -45,4 +45,4 @@ color-hex = { version = "0.2.0", optional = true }
document-features = { workspace = true, optional = true }
## Allow serialization using [`serde`](https://docs.rs/serde).
serde = { version = "1", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }

16
crates/eframe/Cargo.toml

@ -144,8 +144,8 @@ glow = { workspace = true, optional = true }
rwh_05 = { package = "raw-window-handle", version = "0.5.2", optional = true, features = [
"std",
] }
ron = { version = "0.8", optional = true, features = ["integer128"] }
serde = { version = "1", optional = true, features = ["derive"] }
ron = { workspace = true, optional = true, features = ["integer128"] }
serde = { workspace = true, optional = true }
# -------------------------------------------
# native:
@ -166,8 +166,8 @@ pollster = { version = "0.3", optional = true } # needed for wgpu
# we can expose these to user so that they can select which backends they want to enable to avoid compiling useless deps.
# this can be done at the same time we expose x11/wayland features of winit crate.
glutin = { version = "0.31", optional = true }
glutin-winit = { version = "0.4", optional = true }
glutin = { workspace = true, optional = true }
glutin-winit = { workspace = true, optional = true }
puffin = { workspace = true, optional = true }
wgpu = { workspace = true, optional = true, features = [
# Let's enable some backends so that users can use `eframe` out-of-the-box
@ -199,12 +199,12 @@ winapi = { version = "0.3.9", features = ["winuser"] }
# -------------------------------------------
# web:
[target.'cfg(target_arch = "wasm32")'.dependencies]
bytemuck = "1.7"
bytemuck.workspace = true
js-sys = "0.3"
percent-encoding = "2.1"
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = { version = "0.3.58", features = [
wasm-bindgen.workspace = true
wasm-bindgen-futures.workspace = true
web-sys = { workspace = true, features = [
"BinaryType",
"Blob",
"Clipboard",

2
crates/egui-wgpu/Cargo.toml

@ -50,7 +50,7 @@ x11 = ["winit?/x11"]
egui = { workspace = true, default-features = false }
epaint = { workspace = true, default-features = false, features = ["bytemuck"] }
bytemuck = "1.7"
bytemuck.workspace = true
document-features.workspace = true
log.workspace = true
thiserror.workspace = true

2
crates/egui-winit/Cargo.toml

@ -73,7 +73,7 @@ accesskit_winit = { version = "0.16.0", optional = true }
document-features = { workspace = true, optional = true }
puffin = { workspace = true, optional = true }
serde = { version = "1.0", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }
webbrowser = { version = "1.0.0", optional = true }
[target.'cfg(any(target_os="linux", target_os="dragonfly", target_os="freebsd", target_os="netbsd", target_os="openbsd"))'.dependencies]

4
crates/egui/Cargo.toml

@ -95,5 +95,5 @@ document-features = { workspace = true, optional = true }
log = { workspace = true, optional = true }
puffin = { workspace = true, optional = true }
ron = { version = "0.8", optional = true }
serde = { version = "1", optional = true, features = ["derive", "rc"] }
ron = { workspace = true, optional = true }
serde = { workspace = true, optional = true, features = ["derive", "rc"] }

8
crates/egui_demo_app/Cargo.toml

@ -51,7 +51,7 @@ log.workspace = true
# Optional dependencies:
bytemuck = { version = "1.7.1", optional = true }
bytemuck = { workspace = true, optional = true }
puffin = { workspace = true, optional = true }
puffin_http = { workspace = true, optional = true }
# Enable both WebGL & WebGPU when targeting the web (these features have no effect when not targeting wasm32)
@ -64,7 +64,7 @@ image = { workspace = true, optional = true, features = ["jpeg", "png"] }
poll-promise = { version = "0.3", optional = true, default-features = false }
# feature "persistence":
serde = { version = "1", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }
# native:
@ -78,5 +78,5 @@ rfd = { version = "0.13", optional = true }
# web:
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "=0.2.92"
wasm-bindgen-futures = "0.4"
web-sys = "0.3"
wasm-bindgen-futures.workspace = true
web-sys.workspace = true

2
crates/egui_demo_lib/Cargo.toml

@ -52,7 +52,7 @@ unicode_names2 = { version = "0.6.0", default-features = false } # this old vers
chrono = { version = "0.4", optional = true, features = ["js-sys", "wasmbind"] }
## Enable this when generating docs.
document-features = { workspace = true, optional = true }
serde = { version = "1", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }
[dev-dependencies]

2
crates/egui_extras/Cargo.toml

@ -66,7 +66,7 @@ egui = { workspace = true, default-features = false, features = ["serde"] }
enum-map = { version = "2", features = ["serde"] }
log.workspace = true
serde = { version = "1", features = ["derive"] }
serde.workspace = true
#! ### Optional dependencies

10
crates/egui_glow/Cargo.toml

@ -56,7 +56,7 @@ x11 = ["winit?/x11"]
egui = { workspace = true, default-features = false, features = ["bytemuck"] }
egui-winit = { workspace = true, optional = true, default-features = false }
bytemuck = "1.7"
bytemuck.workspace = true
glow.workspace = true
log.workspace = true
memoffset = "0.9"
@ -74,13 +74,13 @@ winit = { workspace = true, optional = true, default-features = false, features
# Web:
[target.'cfg(target_arch = "wasm32")'.dependencies]
web-sys = { version = "0.3", features = ["console"] }
wasm-bindgen = "0.2"
web-sys = { workspace = true, features = ["console"] }
wasm-bindgen.workspace = true
[dev-dependencies]
glutin = "0.31" # examples/pure_glow
glutin-winit = "0.4.0"
glutin.workspace = true # examples/pure_glow
glutin-winit.workspace = true
# glutin stuck on old version of raw-window-handle:
rwh_05 = { package = "raw-window-handle", version = "0.5.2", features = [
"std",

2
crates/egui_plot/Cargo.toml

@ -42,4 +42,4 @@ egui = { workspace = true, default-features = false }
## Enable this when generating docs.
document-features = { workspace = true, optional = true }
serde = { version = "1", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }

4
crates/emath/Cargo.toml

@ -30,7 +30,7 @@ default = []
#! ### Optional dependencies
## [`bytemuck`](https://docs.rs/bytemuck) enables you to cast `emath` types to `&[u8]`.
bytemuck = { version = "1.7.2", optional = true, features = ["derive"] }
bytemuck = { workspace = true, optional = true, features = ["derive"] }
## Enable this when generating docs.
document-features = { workspace = true, optional = true }
@ -39,4 +39,4 @@ document-features = { workspace = true, optional = true }
mint = { version = "0.5.6", optional = true }
## Allow serialization using [`serde`](https://docs.rs/serde).
serde = { version = "1", optional = true, features = ["derive"] }
serde = { workspace = true, optional = true }

4
crates/epaint/Cargo.toml

@ -84,7 +84,7 @@ nohash-hasher.workspace = true
parking_lot.workspace = true # Using parking_lot over std::sync::Mutex gives 50% speedups in some real-world scenarios.
#! ### Optional dependencies
bytemuck = { version = "1.7.2", optional = true, features = ["derive"] }
bytemuck = { workspace = true, optional = true, features = ["derive"] }
## Enable this when generating docs.
document-features = { workspace = true, optional = true }
@ -94,7 +94,7 @@ puffin = { workspace = true, optional = true }
rayon = { version = "1.7", optional = true }
## Allow serialization using [`serde`](https://docs.rs/serde) .
serde = { version = "1", optional = true, features = ["derive", "rc"] }
serde = { workspace = true, optional = true, features = ["derive", "rc"] }
# native:
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]

Loading…
Cancel
Save