Use workspace dependencies and package inheritance

We are also taking this as a chance to synchronize
the versions of all the crates! Because of this, we
will skip the `0.11` version.
This commit is contained in:
Héctor Ramón Jiménez 2023-09-04 12:58:41 +02:00
parent a56b25b909
commit f468e25d0c
No known key found for this signature in database
GPG key ID: 140CC052C94F138E
59 changed files with 447 additions and 423 deletions

View file

@ -1,22 +1,28 @@
[package] [package]
name = "iced" name = "iced"
version = "0.10.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2021"
description = "A cross-platform GUI library inspired by Elm" description = "A cross-platform GUI library inspired by Elm"
license = "MIT" version.workspace = true
repository = "https://github.com/iced-rs/iced" edition.workspace = true
documentation = "https://docs.rs/iced" authors.workspace = true
readme = "README.md" license.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] repository.workspace = true
categories = ["gui"] homepage.workspace = true
categories.workspace = true
keywords.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[badges]
maintenance = { status = "actively-developed" }
[features] [features]
default = ["wgpu"] default = ["wgpu"]
# Enable the `wgpu` GPU-accelerated renderer backend # Enable the `wgpu` GPU-accelerated renderer backend
wgpu = ["iced_renderer/wgpu"] wgpu = ["iced_renderer/wgpu"]
# Enables the `Image` widget # Enables the `Image` widget
image = ["iced_widget/image", "image_rs"] image = ["iced_widget/image", "dep:image"]
# Enables the `Svg` widget # Enables the `Svg` widget
svg = ["iced_widget/svg"] svg = ["iced_widget/svg"]
# Enables the `Canvas` widget # Enables the `Canvas` widget
@ -44,8 +50,28 @@ webgl = ["iced_renderer/webgl"]
# Enables the advanced module # Enables the advanced module
advanced = [] advanced = []
[badges] [dependencies]
maintenance = { status = "actively-developed" } iced_core.workspace = true
iced_futures.workspace = true
iced_renderer.workspace = true
iced_widget.workspace = true
iced_winit.features = ["application"]
iced_winit.workspace = true
thiserror.workspace = true
image.workspace = true
image.optional = true
[profile.release-opt]
inherits = "release"
codegen-units = 1
debug = false
lto = true
incremental = false
opt-level = 3
overflow-checks = false
strip = "debuginfo"
[workspace] [workspace]
members = [ members = [
@ -62,29 +88,66 @@ members = [
"examples/*", "examples/*",
] ]
[dependencies] [workspace.package]
iced_core = { version = "0.10", path = "core" } version = "0.12.0"
iced_futures = { version = "0.7", path = "futures" } authors = ["Héctor Ramón Jiménez <hector@hecrj.dev>"]
iced_renderer = { version = "0.1", path = "renderer" } edition = "2021"
iced_widget = { version = "0.1", path = "widget" } license = "MIT"
iced_winit = { version = "0.10", path = "winit", features = ["application"] } repository = "https://github.com/iced-rs/iced"
thiserror = "1" homepage = "https://iced.rs"
categories = ["gui"]
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
[dependencies.image_rs] [workspace.dependencies]
version = "0.24" iced = { version = "0.12", path = "." }
package = "image" iced_core = { version = "0.12", path = "core" }
optional = true iced_futures = { version = "0.12", path = "futures" }
iced_graphics = { version = "0.12", path = "graphics" }
iced_renderer = { version = "0.12", path = "renderer" }
iced_runtime = { version = "0.12", path = "runtime" }
iced_style = { version = "0.12", path = "style" }
iced_tiny_skia = { version = "0.12", path = "tiny_skia" }
iced_wgpu = { version = "0.12", path = "wgpu" }
iced_widget = { version = "0.12", path = "widget" }
iced_winit = { version = "0.12", path = "winit" }
[package.metadata.docs.rs] async-std = "1.0"
rustdoc-args = ["--cfg", "docsrs"] bitflags = "1.0"
all-features = true bytemuck = { version = "1.0", features = ["derive"] }
cosmic-text = "0.9"
[profile.release-opt] futures = "0.3"
inherits = "release" glam = "0.24"
codegen-units = 1 glyphon = { git = "https://github.com/grovesNL/glyphon.git", rev = "20f0f8fa80e0d0df4c63634ce9176fa489546ca9" }
debug = false guillotiere = "0.6"
lto = true half = "2.2"
incremental = false image = "0.24"
opt-level = 3 instant = "0.1"
overflow-checks = false kamadak-exif = "0.5"
strip = "debuginfo" kurbo = "0.9"
log = "0.4"
lyon = "1.0"
lyon_path = "1.0"
num-traits = "0.2"
once_cell = "1.0"
ouroboros = "0.17"
palette = "0.7"
qrcode = { version = "0.12", default-features = false }
raw-window-handle = "0.5"
resvg = "0.35"
rustc-hash = "1.0"
smol = "1.0"
softbuffer = "0.2"
sysinfo = "0.28"
thiserror = "1.0"
tiny-skia = "0.10"
tokio = "1.0"
tracing = "0.1"
twox-hash = { version = "1.0", default-features = false }
unicode-segmentation = "1.0"
wasm-bindgen-futures = "0.4"
wasm-timer = "0.2"
web-sys = "0.3"
wgpu = "0.17"
winapi = "0.3"
window_clipboard = "0.3"
winit = { git = "https://github.com/iced-rs/winit.git", rev = "c52db2045d0a2f1b8d9923870de1d4ab1994146e", default-features = false }

View file

@ -1,24 +1,26 @@
[package] [package]
name = "iced_core" name = "iced_core"
version = "0.10.0" description = "The essential ideas of iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "The essential concepts of Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true
[dependencies] [dependencies]
bitflags = "1.2" bitflags.workspace = true
thiserror = "1" log.workspace = true
log = "0.4.17" thiserror.workspace = true
twox-hash = { version = "1.5", default-features = false } twox-hash.workspace = true
[dependencies.palette] palette.workspace = true
version = "0.7" palette.optional = true
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies] [target.'cfg(target_arch = "wasm32")'.dependencies]
instant = "0.1" instant.workspace = true
[dev-dependencies] [dev-dependencies]
approx = "0.5" approx = "0.5"

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "tokio", "debug"] } iced.workspace = true
iced.features = ["canvas", "tokio", "debug"]

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas"] } iced.workspace = true
iced.features = ["canvas"]

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "tokio", "debug"] } iced.workspace = true
time = { version = "0.3.5", features = ["local-offset"] } iced.features = ["canvas", "tokio", "debug"]
time = { version = "0.3", features = ["local-offset"] }

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "palette"] } iced.workspace = true
palette = "0.7.0" iced.features = ["canvas", "palette"]
palette.workspace = true

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
iced.features = ["debug"]

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug", "lazy"] } iced.workspace = true
iced.features = ["debug", "lazy"]

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced"] } iced.workspace = true
iced.features = ["advanced"]

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced"] } iced.workspace = true
iced.features = ["advanced"]

View file

@ -6,7 +6,8 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["tokio"] } iced.workspace = true
iced.features = ["tokio"]
[dependencies.reqwest] [dependencies.reqwest]
version = "0.11" version = "0.11"

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
iced.features = ["debug"]

View file

@ -5,4 +5,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,8 +6,10 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "tokio", "debug"] } iced.workspace = true
tokio = { version = "1.0", features = ["sync"] } iced.features = ["debug", "canvas", "tokio"]
itertools = "0.9" itertools = "0.9"
rustc-hash = "1.1" rustc-hash.workspace = true
env_logger = "0.10" tokio = { workspace = true, features = ["sync"] }
tracing-subscriber = "0.3"

View file

@ -18,7 +18,7 @@ use iced::{
use std::time::{Duration, Instant}; use std::time::{Duration, Instant};
pub fn main() -> iced::Result { pub fn main() -> iced::Result {
env_logger::builder().format_timestamp(None).init(); tracing_subscriber::fmt::init();
GameOfLife::run(Settings { GameOfLife::run(Settings {
antialiasing: true, antialiasing: true,

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced"] } iced.workspace = true
iced.features = ["advanced"]

View file

@ -6,18 +6,19 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced_winit = { path = "../../winit" } iced_winit.workspace = true
iced_wgpu = { path = "../../wgpu" } iced_wgpu.workspace = true
iced_widget = { path = "../../widget" } iced_widget.workspace = true
iced_renderer = { path = "../../renderer", features = ["wgpu"] }
env_logger = "0.10" tracing-subscriber = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies] [target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.7" console_error_panic_hook = "0.1.7"
console_log = "0.2.0" console_log = "0.2.0"
log = "0.4" log.workspace = true
wasm-bindgen = "0.2" wasm-bindgen = "0.2"
web-sys = { version = "0.3", features = ["Element", "HtmlCanvasElement", "Window", "Document"] } web-sys = { version = "0.3", features = ["Element", "HtmlCanvasElement", "Window", "Document"] }
# This dependency a little bit quirky, it is deep in the tree and without `js` feature it # This dependency a little bit quirky, it is deep in the tree and without `js` feature it
# refuses to work with `wasm32-unknown-unknown target`. Unfortunately, we need this patch # refuses to work with `wasm32-unknown-unknown target`. Unfortunately, we need this patch
# to make it work # to make it work

View file

@ -41,7 +41,7 @@ pub fn main() -> Result<(), Box<dyn std::error::Error>> {
}; };
#[cfg(not(target_arch = "wasm32"))] #[cfg(not(target_arch = "wasm32"))]
env_logger::init(); tracing_subscriber::fmt::init();
// Initialize winit // Initialize winit
let event_loop = EventLoop::new(); let event_loop = EventLoop::new();

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug", "lazy"] } iced.workspace = true
iced.features = ["debug", "lazy"]

View file

@ -6,6 +6,8 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced", "canvas"] } iced.workspace = true
lyon_algorithms = "1" iced.features = ["advanced", "canvas"]
once_cell = "1"
lyon_algorithms = "1.0"
once_cell.workspace = true

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced"] } iced.workspace = true
iced.features = ["advanced"]

View file

@ -6,7 +6,8 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "tokio", "debug"] } iced.workspace = true
tokio = { version = "1.0", features = ["sync"] } iced.features = ["debug", "canvas", "tokio"]
env_logger = "0.10"
tracing-subscriber = "0.3"
voronator = "0.2" voronator = "0.2"

View file

@ -13,7 +13,7 @@ use iced::{
use std::collections::HashMap; use std::collections::HashMap;
pub fn main() -> iced::Result { pub fn main() -> iced::Result {
env_logger::builder().format_timestamp(None).init(); tracing_subscriber::fmt::init();
Multitouch::run(Settings { Multitouch::run(Settings {
antialiasing: true, antialiasing: true,

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug", "lazy"] } iced.workspace = true
iced.features = ["debug", "lazy"]

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
iced.features = ["debug"]

View file

@ -6,7 +6,9 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["image", "debug", "tokio"] } iced.workspace = true
iced.features = ["image", "debug", "tokio"]
serde_json = "1.0" serde_json = "1.0"
[dependencies.serde] [dependencies.serde]

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["qr_code"] } iced.workspace = true
iced.features = ["qr_code"]

View file

@ -6,6 +6,8 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug", "image", "advanced"] } iced.workspace = true
image = { version = "0.24.6", features = ["png"]} iced.features = ["debug", "image", "advanced"]
env_logger = "0.10.0"
image = { workspace = true, features = ["png"]}
tracing-subscriber = "0.3"

View file

@ -13,7 +13,7 @@ use ::image as img;
use ::image::ColorType; use ::image::ColorType;
fn main() -> iced::Result { fn main() -> iced::Result {
env_logger::builder().format_timestamp(None).init(); tracing_subscriber::fmt::init();
Example::run(iced::Settings::default()) Example::run(iced::Settings::default())
} }

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
once_cell = "1.16.0" iced.features = ["debug"]
once_cell.workspace = true

View file

@ -6,5 +6,7 @@ edition = "2018"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "debug"] } iced.workspace = true
rand = "0.8.4" iced.features = ["debug", "canvas"]
rand = "0.8"

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,6 +6,8 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["canvas", "tokio", "debug"] } iced.workspace = true
env_logger = "0.10.0" iced.features = ["debug", "canvas", "tokio"]
rand = "0.8.3" rand = "0.8.3"
tracing-subscriber = "0.3"

View file

@ -23,7 +23,7 @@ use iced::{
use std::time::Instant; use std::time::Instant;
pub fn main() -> iced::Result { pub fn main() -> iced::Result {
env_logger::builder().format_timestamp(None).init(); tracing_subscriber::fmt::init();
SolarSystem::run(Settings { SolarSystem::run(Settings {
antialiasing: true, antialiasing: true,

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["smol"] } iced.workspace = true
iced.features = ["smol"]

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["svg"] } iced.workspace = true
iced.features = ["svg"]

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["system"] } iced.workspace = true
bytesize = { version = "1.1.0" } iced.features = ["system"]
bytesize = "1.1"

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["advanced"] } iced.workspace = true
iced.features = ["advanced"]

View file

@ -6,18 +6,20 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["async-std", "debug"] } iced.workspace = true
iced.features = ["async-std", "debug"]
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0" serde_json = "1.0"
once_cell = "1.15" once_cell.workspace = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies] [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
async-std = "1.0" async-std.workspace = true
directories-next = "2.0" directories-next = "2.0"
[target.'cfg(target_arch = "wasm32")'.dependencies] [target.'cfg(target_arch = "wasm32")'.dependencies]
web-sys = { version = "0.3", features = ["Window", "Storage"] } web-sys = { workspace = true, features = ["Window", "Storage"] }
wasm-timer = "0.2" wasm-timer.workspace = true
[package.metadata.deb] [package.metadata.deb]
assets = [ assets = [

View file

@ -6,4 +6,5 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
iced.features = ["debug"]

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["image", "debug"] } iced.workspace = true
env_logger = "0.10.0" iced.features = ["image", "debug"]
tracing-subscriber = "0.3"

View file

@ -8,7 +8,7 @@ use iced::widget::{Button, Column, Container, Slider};
use iced::{Color, Element, Font, Length, Renderer, Sandbox, Settings}; use iced::{Color, Element, Font, Length, Renderer, Sandbox, Settings};
pub fn main() -> iced::Result { pub fn main() -> iced::Result {
env_logger::init(); tracing_subscriber::fmt::init();
Tour::run(Settings::default()) Tour::run(Settings::default())
} }

View file

@ -6,4 +6,4 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../.." } iced.workspace = true

View file

@ -6,5 +6,7 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["debug"] } iced.workspace = true
once_cell = "1" iced.features = ["debug"]
once_cell.workspace = true

View file

@ -6,16 +6,16 @@ edition = "2021"
publish = false publish = false
[dependencies] [dependencies]
iced = { path = "../..", features = ["tokio", "debug"] } iced.workspace = true
once_cell = "1.15" iced.features = ["debug", "tokio"]
once_cell.workspace = true
warp = "0.3"
[dependencies.async-tungstenite] [dependencies.async-tungstenite]
version = "0.23" version = "0.23"
features = ["tokio-rustls-webpki-roots"] features = ["tokio-rustls-webpki-roots"]
[dependencies.tokio] [dependencies.tokio]
version = "1" workspace = true
features = ["time"] features = ["time"]
[dependencies.warp]
version = "0.3"

View file

@ -1,47 +1,40 @@
[package] [package]
name = "iced_futures" name = "iced_futures"
version = "0.7.0" description = "Commands, subscriptions, and future executors for iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "Commands, subscriptions, and runtimes for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_futures" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "futures"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[features] [features]
thread-pool = ["futures/thread-pool"] thread-pool = ["futures/thread-pool"]
[dependencies] [dependencies]
log = "0.4" iced_core.workspace = true
[dependencies.iced_core] futures.workspace = true
version = "0.10" log.workspace = true
path = "../core"
[dependencies.futures] [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
version = "0.3" async-std.workspace = true
async-std.optional = true
async-std.features = ["unstable"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio] smol.workspace = true
package = "tokio" smol.optional = true
version = "1.0"
optional = true
features = ["rt", "rt-multi-thread", "time"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.async-std] tokio.workspace = true
version = "1.0" tokio.optional = true
optional = true tokio.features = ["rt", "rt-multi-thread", "time"]
features = ["unstable"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.smol]
version = "1.2"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies] [target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen-futures = "0.4" wasm-bindgen-futures.workspace = true
wasm-timer = "0.2" wasm-timer.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true

View file

@ -1,14 +1,18 @@
[package] [package]
name = "iced_graphics" name = "iced_graphics"
version = "0.9.0" description = "A bunch of backend-agnostic types that can be leveraged to build a renderer for iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "A bunch of backend-agnostic types that can be leveraged to build a renderer for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_graphics" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[features] [features]
geometry = ["lyon_path"] geometry = ["lyon_path"]
@ -17,33 +21,21 @@ image = ["dep:image", "kamadak-exif"]
web-colors = [] web-colors = []
[dependencies] [dependencies]
glam = "0.24" iced_core.workspace = true
half = "2.2.1"
log = "0.4"
raw-window-handle = "0.5"
thiserror = "1.0"
bitflags = "1.2"
[dependencies.bytemuck] bitflags.workspace = true
version = "1.4" bytemuck.workspace = true
features = ["derive"] glam.workspace = true
half.workspace = true
log.workspace = true
raw-window-handle.workspace = true
thiserror.workspace = true
[dependencies.iced_core] lyon_path.workspace = true
version = "0.10" lyon_path.optional = true
path = "../core"
[dependencies.image] image.workspace = true
version = "0.24" image.optional = true
optional = true
[dependencies.kamadak-exif] kamadak-exif.workspace = true
version = "0.5" kamadak-exif.optional = true
optional = true
[dependencies.lyon_path]
version = "1"
optional = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true

View file

@ -1,14 +1,14 @@
[package] [package]
name = "iced_renderer" name = "iced_renderer"
version = "0.1.0" description = "The official renderer for iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "The official renderer for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_renderer" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[features] [features]
wgpu = ["iced_wgpu"] wgpu = ["iced_wgpu"]
@ -20,19 +20,12 @@ web-colors = ["iced_wgpu?/web-colors"]
webgl = ["iced_wgpu?/webgl"] webgl = ["iced_wgpu?/webgl"]
[dependencies] [dependencies]
raw-window-handle = "0.5" iced_graphics.workspace = true
thiserror = "1" iced_tiny_skia.workspace = true
log = "0.4"
[dependencies.iced_graphics] iced_wgpu.workspace = true
version = "0.9" iced_wgpu.optional = true
path = "../graphics"
[dependencies.iced_tiny_skia] log.workspace = true
version = "0.1" raw-window-handle.workspace = true
path = "../tiny_skia" thiserror.workspace = true
[dependencies.iced_wgpu]
version = "0.11"
path = "../wgpu"
optional = true

View file

@ -1,23 +1,21 @@
[package] [package]
name = "iced_runtime" name = "iced_runtime"
version = "0.1.1" description = "A renderer-agnostic runtime for iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "A renderer-agnostic runtime for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true
[features] [features]
debug = [] debug = []
[dependencies] [dependencies]
thiserror = "1" iced_core.workspace = true
iced_futures.workspace = true
iced_futures.features = ["thread-pool"]
[dependencies.iced_core] thiserror.workspace = true
version = "0.10"
path = "../core"
[dependencies.iced_futures]
version = "0.7"
path = "../futures"
features = ["thread-pool"]

View file

@ -13,7 +13,7 @@ use std::path::Path;
/// This will return an error in case the file is missing at run-time. You may prefer [`Self::from_file_data`] instead. /// This will return an error in case the file is missing at run-time. You may prefer [`Self::from_file_data`] instead.
#[cfg(feature = "image")] #[cfg(feature = "image")]
pub fn from_file<P: AsRef<Path>>(icon_path: P) -> Result<Icon, Error> { pub fn from_file<P: AsRef<Path>>(icon_path: P) -> Result<Icon, Error> {
let icon = image_rs::io::Reader::open(icon_path)?.decode()?.to_rgba8(); let icon = image::io::Reader::open(icon_path)?.decode()?.to_rgba8();
Ok(icon::from_rgba(icon.to_vec(), icon.width(), icon.height())?) Ok(icon::from_rgba(icon.to_vec(), icon.width(), icon.height())?)
} }
@ -25,9 +25,10 @@ pub fn from_file<P: AsRef<Path>>(icon_path: P) -> Result<Icon, Error> {
#[cfg(feature = "image")] #[cfg(feature = "image")]
pub fn from_file_data( pub fn from_file_data(
data: &[u8], data: &[u8],
explicit_format: Option<image_rs::ImageFormat>, explicit_format: Option<image::ImageFormat>,
) -> Result<Icon, Error> { ) -> Result<Icon, Error> {
let mut icon = image_rs::io::Reader::new(std::io::Cursor::new(data)); let mut icon = image::io::Reader::new(std::io::Cursor::new(data));
let icon_with_format = match explicit_format { let icon_with_format = match explicit_format {
Some(format) => { Some(format) => {
icon.set_format(format); icon.set_format(format);
@ -59,5 +60,5 @@ pub enum Error {
/// The `image` crate reported an error. /// The `image` crate reported an error.
#[cfg(feature = "image")] #[cfg(feature = "image")]
#[error("Unable to create icon from a file: {0}")] #[error("Unable to create icon from a file: {0}")]
ImageError(#[from] image_rs::error::ImageError), ImageError(#[from] image::error::ImageError),
} }

View file

@ -1,22 +1,18 @@
[package] [package]
name = "iced_style" name = "iced_style"
version = "0.9.0"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
edition = "2021"
description = "The default set of styles of Iced" description = "The default set of styles of Iced"
license = "MIT" version.workspace = true
repository = "https://github.com/iced-rs/iced" edition.workspace = true
documentation = "https://docs.rs/iced_style" authors.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] license.workspace = true
categories = ["gui"] repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true
[dependencies.iced_core] [dependencies]
version = "0.10" iced_core.workspace = true
path = "../core" iced_core.features = ["palette"]
features = ["palette"]
[dependencies.palette] palette.workspace = true
version = "0.7" once_cell.workspace = true
[dependencies.once_cell]
version = "1.15"

View file

@ -1,14 +1,14 @@
[package] [package]
name = "iced_tiny_skia" name = "iced_tiny_skia"
version = "0.1.0" description = "A software renderer for iced on top of tiny-skia"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "A software renderer for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_tiny_skia" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[features] [features]
image = ["iced_graphics/image"] image = ["iced_graphics/image"]
@ -16,27 +16,21 @@ svg = ["resvg"]
geometry = ["iced_graphics/geometry"] geometry = ["iced_graphics/geometry"]
[dependencies] [dependencies]
raw-window-handle = "0.5" iced_graphics.workspace = true
softbuffer = "0.2"
tiny-skia = "0.10"
cosmic-text = "0.9"
bytemuck = "1"
rustc-hash = "1.1"
kurbo = "0.9"
log = "0.4"
[dependencies.iced_graphics] bytemuck.workspace = true
version = "0.9" cosmic-text.workspace = true
path = "../graphics" kurbo.workspace = true
log.workspace = true
raw-window-handle.workspace = true
rustc-hash.workspace = true
softbuffer.workspace = true
tiny-skia.workspace = true
twox-hash.workspace = true
[dependencies.twox-hash] resvg.workspace = true
version = "1.6" resvg.optional = true
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.twox-hash] [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
version = "1.6.1" twox-hash.workspace = true
features = ["std"] twox-hash.features = ["std"]
[dependencies.resvg]
version = "0.35"
optional = true

View file

@ -1,11 +1,18 @@
[package] [package]
name = "iced_wgpu" name = "iced_wgpu"
version = "0.11.1" description = "A renderer for iced on top of wgpu"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "A wgpu renderer for Iced" authors.workspace = true
license = "MIT AND OFL-1.1" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[features] [features]
geometry = ["iced_graphics/geometry", "lyon"] geometry = ["iced_graphics/geometry", "lyon"]
@ -15,47 +22,30 @@ web-colors = ["iced_graphics/web-colors"]
webgl = ["wgpu/webgl"] webgl = ["wgpu/webgl"]
[dependencies] [dependencies]
wgpu = "0.17" iced_graphics.workspace = true
glyphon = { git = "https://github.com/grovesNL/glyphon.git", rev = "20f0f8fa80e0d0df4c63634ce9176fa489546ca9" }
raw-window-handle = "0.5"
guillotiere = "0.6"
futures = "0.3"
bitflags = "1.2"
once_cell = "1.0"
rustc-hash = "1.1"
log = "0.4"
[dependencies.twox-hash] bitflags.workspace = true
version = "1.6" bytemuck.workspace = true
default-features = false futures.workspace = true
glam.workspace = true
glyphon.workspace = true
guillotiere.workspace = true
log.workspace = true
once_cell.workspace = true
raw-window-handle.workspace = true
rustc-hash.workspace = true
twox-hash.workspace = true
wgpu.workspace = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.twox-hash] lyon.workspace = true
version = "1.6.1" lyon.optional = true
features = ["std"]
[dependencies.bytemuck] resvg.workspace = true
version = "1.9" resvg.optional = true
features = ["derive"]
[dependencies.iced_graphics] tracing.workspace = true
version = "0.9" tracing.optional = true
path = "../graphics"
[dependencies.glam] [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
version = "0.24" twox-hash.workspace = true
twox-hash.features = ["std"]
[dependencies.lyon]
version = "1.0"
optional = true
[dependencies.resvg]
version = "0.35"
optional = true
[dependencies.tracing]
version = "0.1.6"
optional = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true

View file

@ -1,14 +1,18 @@
[package] [package]
name = "iced_widget" name = "iced_widget"
version = "0.1.3" description = "The built-in widgets for iced"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "The built-in widgets for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_widget" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[features] [features]
lazy = ["ouroboros"] lazy = ["ouroboros"]
@ -18,31 +22,16 @@ canvas = ["iced_renderer/geometry"]
qr_code = ["canvas", "qrcode"] qr_code = ["canvas", "qrcode"]
[dependencies] [dependencies]
unicode-segmentation = "1.6" iced_renderer.workspace = true
num-traits = "0.2" iced_runtime.workspace = true
thiserror = "1" iced_style.workspace = true
[dependencies.iced_runtime] num-traits.workspace = true
version = "0.1" thiserror.workspace = true
path = "../runtime" unicode-segmentation.workspace = true
[dependencies.iced_renderer] ouroboros.workspace = true
version = "0.1" ouroboros.optional = true
path = "../renderer"
[dependencies.iced_style] qrcode.workspace = true
version = "0.9" qrcode.optional = true
path = "../style"
[dependencies.ouroboros]
version = "0.17"
optional = true
[dependencies.qrcode]
version = "0.12"
optional = true
default-features = false
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
all-features = true

View file

@ -1,19 +1,17 @@
[package] [package]
name = "iced_winit" name = "iced_winit"
version = "0.10.0" description = "A runtime for iced on top of winit"
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"] version.workspace = true
edition = "2021" edition.workspace = true
description = "A winit runtime for Iced" authors.workspace = true
license = "MIT" license.workspace = true
repository = "https://github.com/iced-rs/iced" repository.workspace = true
documentation = "https://docs.rs/iced_winit" homepage.workspace = true
keywords = ["gui", "ui", "graphics", "interface", "widgets"] categories.workspace = true
categories = ["gui"] keywords.workspace = true
[features] [features]
default = ["x11", "wayland", "wayland-dlopen", "wayland-csd-adwaita"] default = ["x11", "wayland", "wayland-dlopen", "wayland-csd-adwaita"]
trace = ["tracing", "tracing-core", "tracing-subscriber"]
chrome-trace = ["trace", "tracing-chrome"]
debug = ["iced_runtime/debug"] debug = ["iced_runtime/debug"]
system = ["sysinfo"] system = ["sysinfo"]
application = [] application = []
@ -23,54 +21,23 @@ wayland-dlopen = ["winit/wayland-dlopen"]
wayland-csd-adwaita = ["winit/wayland-csd-adwaita"] wayland-csd-adwaita = ["winit/wayland-csd-adwaita"]
[dependencies] [dependencies]
window_clipboard = "0.3" iced_graphics.workspace = true
log = "0.4" iced_runtime.workspace = true
thiserror = "1.0" iced_style.workspace = true
raw-window-handle = "0.5"
[dependencies.winit] log.workspace = true
version = "0.28" raw-window-handle.workspace = true
git = "https://github.com/iced-rs/winit.git" thiserror.workspace = true
rev = "c52db2045d0a2f1b8d9923870de1d4ab1994146e" tracing.workspace = true
default-features = false window_clipboard.workspace = true
winit.workspace = true
[dependencies.iced_runtime] sysinfo.workspace = true
version = "0.1" sysinfo.optional = true
path = "../runtime"
[dependencies.iced_graphics] [target.'cfg(target_os = "windows")'.dependencies]
version = "0.9" winapi.workspace = true
path = "../graphics"
[dependencies.iced_style] [target.'cfg(target_arch = "wasm32")'.dependencies]
version = "0.9" web-sys.workspace = true
path = "../style" web-sys.features = ["Document", "Window"]
[dependencies.tracing]
version = "0.1.37"
optional = true
features = ["std"]
[dependencies.tracing-core]
version = "0.1.30"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.16"
optional = true
features = ["registry"]
[dependencies.tracing-chrome]
version = "0.7.0"
optional = true
[target.'cfg(target_os = "windows")'.dependencies.winapi]
version = "0.3.6"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = ["Document", "Window"]
[dependencies.sysinfo]
version = "0.28"
optional = true