Merge pull request #1328 from iced-rs/release/0.4.0
Release `0.4` — Stateless widgets, component trait, responsive views, WebGL support, and more!
This commit is contained in:
commit
b566c887b5
13 changed files with 91 additions and 46 deletions
34
CHANGELOG.md
34
CHANGELOG.md
|
|
@ -6,6 +6,37 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
|
||||
## [Unreleased]
|
||||
|
||||
|
||||
## [0.4.0] - 2022-05-02
|
||||
### Added
|
||||
- __[Stateless widgets][stateless]__ (#1284)
|
||||
A brand new widget API that removes the need to keep track of internal widget state. No more `button::State` in your application!
|
||||
|
||||
- __[`Component` trait][component]__ (#1131)
|
||||
A new trait to implement custom widgets with internal mutable state while using composition and [The Elm Architecture].
|
||||
|
||||
- __[`Responsive` widget][responsive]__ (#1193)
|
||||
A widget that is aware of its dimensions and can be used to easily build responsive user interfaces.
|
||||
|
||||
- __[Experimental WebGL support][webgl]__ (#1096)
|
||||
Applications can now be rendered into an HTML `canvas` when targeting Wasm by leveraging the WebGL support in [`wgpu`]. Thanks to @pacmancoder and @kaimast!
|
||||
|
||||
- __[Support for Raspberry Pis and older devices][raspberry]__ (#1160)
|
||||
The compatibility of our OpenGL renderer has been improved and should run on any hardware that supports OpenGL 3.0+ or OpenGL ES 2.0+. Additionally, we started maintaining [Docker images for `aarch64` and `armv7`](https://github.com/orgs/iced-rs/packages) to easily cross-compile `iced` applications and target Raspberry Pis. Thanks to @derezzedex!
|
||||
|
||||
- __[Simpler `Renderer` APIs][renderer_apis]__ (#1110)
|
||||
The surface of the `Renderer` APIs of the library has been considerably reduced. Instead of a `Renderer` trait per widget, now there are only 3 traits that are reused by all the widgets.
|
||||
|
||||
[webgl]: https://github.com/iced-rs/iced/pull/1096
|
||||
[renderer_apis]: https://github.com/iced-rs/iced/pull/1110
|
||||
[component]: https://github.com/iced-rs/iced/pull/1131
|
||||
[raspberry]: https://github.com/iced-rs/iced/pull/1160
|
||||
[responsive]: https://github.com/iced-rs/iced/pull/1193
|
||||
[stateless]: https://github.com/iced-rs/iced/pull/1284
|
||||
[The Elm Architecture]: https://guide.elm-lang.org/architecture/
|
||||
[`wgpu`]: https://github.com/gfx-rs/wgpu
|
||||
|
||||
|
||||
## [0.3.0] - 2021-03-31
|
||||
### Added
|
||||
- Touch support. [#57] [#650] (thanks to @simlay and @discordance!)
|
||||
|
|
@ -219,7 +250,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
### Added
|
||||
- First release! :tada:
|
||||
|
||||
[Unreleased]: https://github.com/iced-rs/iced/compare/0.3.0...HEAD
|
||||
[Unreleased]: https://github.com/iced-rs/iced/compare/0.4.0...HEAD
|
||||
[0.4.0]: https://github.com/iced-rs/iced/compare/0.3.0...0.4.0
|
||||
[0.3.0]: https://github.com/iced-rs/iced/compare/0.2.0...0.3.0
|
||||
[0.2.0]: https://github.com/iced-rs/iced/compare/0.1.1...0.2.0
|
||||
[0.1.1]: https://github.com/iced-rs/iced/compare/0.1.0...0.1.1
|
||||
|
|
|
|||
22
Cargo.toml
22
Cargo.toml
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced"
|
||||
version = "0.3.0"
|
||||
version = "0.4.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A cross-platform GUI library inspired by Elm"
|
||||
|
|
@ -98,21 +98,21 @@ members = [
|
|||
]
|
||||
|
||||
[dependencies]
|
||||
iced_core = { version = "0.4", path = "core" }
|
||||
iced_futures = { version = "0.3", path = "futures" }
|
||||
iced_native = { version = "0.4", path = "native" }
|
||||
iced_graphics = { version = "0.2", path = "graphics" }
|
||||
iced_winit = { version = "0.3", path = "winit" }
|
||||
iced_glutin = { version = "0.2", path = "glutin", optional = true }
|
||||
iced_glow = { version = "0.2", path = "glow", optional = true }
|
||||
iced_pure = { version = "0.1", path = "pure", optional = true }
|
||||
iced_core = { version = "0.5", path = "core" }
|
||||
iced_futures = { version = "0.4", path = "futures" }
|
||||
iced_native = { version = "0.5", path = "native" }
|
||||
iced_graphics = { version = "0.3", path = "graphics" }
|
||||
iced_winit = { version = "0.4", path = "winit" }
|
||||
iced_glutin = { version = "0.3", path = "glutin", optional = true }
|
||||
iced_glow = { version = "0.3", path = "glow", optional = true }
|
||||
iced_pure = { version = "0.2", path = "pure", optional = true }
|
||||
thiserror = "1.0"
|
||||
|
||||
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
||||
iced_wgpu = { version = "0.4", path = "wgpu", optional = true }
|
||||
iced_wgpu = { version = "0.5", path = "wgpu", optional = true }
|
||||
|
||||
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
||||
iced_wgpu = { version = "0.4", path = "wgpu", features = ["webgl"], optional = true }
|
||||
iced_wgpu = { version = "0.5", path = "wgpu", features = ["webgl"], optional = true }
|
||||
|
||||
[package.metadata.docs.rs]
|
||||
rustdoc-args = ["--cfg", "docsrs"]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_core"
|
||||
version = "0.4.0"
|
||||
version = "0.5.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "The essential concepts of Iced"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_futures"
|
||||
version = "0.3.0"
|
||||
version = "0.4.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "Commands, subscriptions, and runtimes for Iced"
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
[package]
|
||||
name = "iced_glow"
|
||||
version = "0.2.0"
|
||||
version = "0.3.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A glow renderer for iced"
|
||||
license = "MIT AND OFL-1.1"
|
||||
repository = "https://github.com/hecrj/iced"
|
||||
repository = "https://github.com/iced-rs/iced"
|
||||
|
||||
[features]
|
||||
canvas = ["iced_graphics/canvas"]
|
||||
|
|
@ -24,11 +24,11 @@ bytemuck = "1.4"
|
|||
log = "0.4"
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_graphics]
|
||||
version = "0.2"
|
||||
version = "0.3"
|
||||
path = "../graphics"
|
||||
features = ["font-fallback", "font-icons", "opengl"]
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_glutin"
|
||||
version = "0.2.0"
|
||||
version = "0.3.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A glutin runtime for Iced"
|
||||
|
|
@ -19,14 +19,14 @@ git = "https://github.com/iced-rs/glutin"
|
|||
rev = "7a0ee02782eb2bf059095e0c953c4bb53f1eef0e"
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_winit]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
path = "../winit"
|
||||
|
||||
[dependencies.iced_graphics]
|
||||
version = "0.2"
|
||||
version = "0.3"
|
||||
path = "../graphics"
|
||||
features = ["opengl"]
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
[package]
|
||||
name = "iced_graphics"
|
||||
version = "0.2.0"
|
||||
version = "0.3.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A bunch of backend-agnostic types that can be leveraged to build a renderer for Iced"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/hecrj/iced"
|
||||
repository = "https://github.com/iced-rs/iced"
|
||||
documentation = "https://docs.rs/iced_graphics"
|
||||
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
|
||||
categories = ["gui"]
|
||||
|
|
@ -29,15 +29,15 @@ version = "1.4"
|
|||
features = ["derive"]
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_style]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
path = "../style"
|
||||
|
||||
[dependencies.iced_pure]
|
||||
version = "0.1"
|
||||
version = "0.2"
|
||||
path = "../pure"
|
||||
optional = true
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,14 @@
|
|||
[package]
|
||||
name = "iced_lazy"
|
||||
version = "0.1.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "Lazy widgets for Iced"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/iced-rs/iced"
|
||||
documentation = "https://docs.rs/iced_lazy"
|
||||
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
|
||||
categories = ["gui"]
|
||||
|
||||
[features]
|
||||
pure = ["iced_pure"]
|
||||
|
|
@ -10,10 +17,10 @@ pure = ["iced_pure"]
|
|||
ouroboros = "0.13"
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_pure]
|
||||
version = "0.1"
|
||||
version = "0.2"
|
||||
path = "../pure"
|
||||
optional = true
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_native"
|
||||
version = "0.4.0"
|
||||
version = "0.5.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A renderer-agnostic library for native GUIs"
|
||||
|
|
@ -16,14 +16,14 @@ unicode-segmentation = "1.6"
|
|||
num-traits = "0.2"
|
||||
|
||||
[dependencies.iced_core]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../core"
|
||||
|
||||
[dependencies.iced_futures]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
path = "../futures"
|
||||
features = ["thread-pool"]
|
||||
|
||||
[dependencies.iced_style]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
path = "../style"
|
||||
|
|
|
|||
|
|
@ -1,9 +1,15 @@
|
|||
[package]
|
||||
name = "iced_pure"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
edition = "2021"
|
||||
description = "Pure widgets for Iced"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/iced-rs/iced"
|
||||
documentation = "https://docs.rs/iced_pure"
|
||||
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
|
||||
categories = ["gui"]
|
||||
|
||||
[dependencies]
|
||||
iced_native = { version = "0.4", path = "../native" }
|
||||
iced_style = { version = "0.3", path = "../style" }
|
||||
iced_native = { version = "0.5", path = "../native" }
|
||||
iced_style = { version = "0.4", path = "../style" }
|
||||
num-traits = "0.2"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_style"
|
||||
version = "0.3.0"
|
||||
version = "0.4.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "The default set of styles of Iced"
|
||||
|
|
@ -11,5 +11,5 @@ keywords = ["gui", "ui", "graphics", "interface", "widgets"]
|
|||
categories = ["gui"]
|
||||
|
||||
[dependencies.iced_core]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../core"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "iced_wgpu"
|
||||
version = "0.4.0"
|
||||
version = "0.5.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A wgpu renderer for Iced"
|
||||
|
|
@ -43,11 +43,11 @@ version = "1.4"
|
|||
features = ["derive"]
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_graphics]
|
||||
version = "0.2"
|
||||
version = "0.3"
|
||||
path = "../graphics"
|
||||
features = ["font-fallback", "font-icons"]
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
[package]
|
||||
name = "iced_winit"
|
||||
version = "0.3.0"
|
||||
version = "0.4.0"
|
||||
authors = ["Héctor Ramón Jiménez <hector0193@gmail.com>"]
|
||||
edition = "2021"
|
||||
description = "A winit runtime for Iced"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/hecrj/iced"
|
||||
repository = "https://github.com/iced-rs/iced"
|
||||
documentation = "https://docs.rs/iced_winit"
|
||||
keywords = ["gui", "ui", "graphics", "interface", "widgets"]
|
||||
categories = ["gui"]
|
||||
|
|
@ -24,15 +24,15 @@ git = "https://github.com/iced-rs/winit"
|
|||
rev = "02a12380960cec2f351c09a33d6a7cc2789d96a6"
|
||||
|
||||
[dependencies.iced_native]
|
||||
version = "0.4"
|
||||
version = "0.5"
|
||||
path = "../native"
|
||||
|
||||
[dependencies.iced_graphics]
|
||||
version = "0.2"
|
||||
version = "0.3"
|
||||
path = "../graphics"
|
||||
|
||||
[dependencies.iced_futures]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
path = "../futures"
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies.winapi]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue