Skip to content

Commit

Permalink
Prep 0.17 release (#1355)
Browse files Browse the repository at this point in the history
  • Loading branch information
jstarry committed Jun 29, 2020
1 parent dcdcfe7 commit 844aa4b
Show file tree
Hide file tree
Showing 10 changed files with 76 additions and 11 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ A clear and concise description of what you expected to happen.
If applicable, add screenshots to help explain your problem.

**Environment:**
- Yew version: [e.g. v0.16.2, `master`]
- Yew version: [e.g. v0.17, `master`]
- Rust version: [e.g. 1.43.0, `nightly`]
- Target, if relevant: [e.g. `wasm32-unknown-emscripten`]
- Build tool, if relevant: [e.g. `wasm-pack`, `cargo-web`]
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report_router.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ A clear and concise description of what you expected to happen.
If applicable, add screenshots to help explain your problem.

**Environment:**
- Yew version: [e.g. v0.16.2, `master`]
- Yew version: [e.g. v0.17, `master`]
- Yew Router version: [e.g. v0.13]
- Rust version: [e.g. 1.43.0, `nightly`]
- Target, if relevant: [e.g. `wasm32-unknown-emscripten`]
Expand Down
65 changes: 65 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,68 @@
# Changelog

## **0.17.0** *(2020-06-29)*

#### Changelog

- #### ⚡️ Features

- Allow agents to send input messages to themselves. [[@mkawalec], [#1278](https://github.com/yewstack/yew/pull/1278)]
- Rendering performance has been improved by [~20%](http://static.yew.rs/v0.17-benchmarks.png). [[@jstarry], [#1296](https://github.com/yewstack/yew/pull/1296), [#1309](https://github.com/yewstack/yew/pull/1309)]
- `html!`: Elements can be specified with dynamic tag names. [[@siku2], [#1266](https://github.com/yewstack/yew/pull/1266)]

In order to specify a dynamic tag name, wrap an expression with `@{..}`:

```rust
let tag_name = "input";
html! { <@{tag_name} value="Hello" /> }
```
- HTML button element `type` can now be specified (`"submit"`, `"reset"`, or `"button"`). [[@captain-yossarian], [#1033](https://github.com/yewstack/yew/pull/1033)]
- All global event listeners can be used as listeners (`onerror`, `onloadend`, and many more). [[@siku2], [#1244](https://github.com/yewstack/yew/pull/1242)]
- `PartialEq` is now implemented for `VChild` when properties also implement `PartialEq`. [[@kellpossible], [#1242](https://github.com/yewstack/yew/pull/1242)]
- Agent callbacks now accept `Into<Message>` to improve ergonomics. [[@totorigolo], [#1215](https://github.com/yewstack/yew/pull/1215)]
- Agents can now send messages to themselves. [[@totorigolo], [#1215](https://github.com/yewstack/yew/pull/1215)]

- #### 🛠 Fixes

- Bincode dependency version has been loosened `1.2.1` -> `1`. [[@jstarry], [#1349](https://github.com/yewstack/yew/pull/1349)]
- Keyed list ordering algorithm has been fixed. [[@totorigolo] and [@jstarry], [#1231](https://github.com/yewstack/yew/pull/1231)]
- `html!`: `key` and `ref` are no longer ignored for components with no properties. [[@jstarry], [#1338](https://github.com/yewstack/yew/pull/1338)]
- `html!`: List rendering behavior is consistent no matter which syntax is chosen. [[@siku2], [#1275](https://github.com/yewstack/yew/pull/1275)]

`html! { for node_list }` is now equivalent to `html! { node_list }` when `node_list` is a `Vec<VNode>`.

- `KeyboardService` events can now have default behavior prevented. [[@ghpu], [#1286](https://github.com/yewstack/yew/pull/1286)]
- Yew will check the current DOM `input` value before comparing with the desired value. [[@ShadoySV], [#1268](https://github.com/yewstack/yew/pull/1268)]
- `html!`: Void elements (`<br/>`, `<input />`) are no longer allowed to have children. [[@kaoet], [#1217](https://github.com/yewstack/yew/pull/1217)]
- Local agents no longer require `Input` and `Output` to implement `Serializable`. [[@mkawalec], [#1195](https://github.com/yewstack/yew/pull/1195)]

- #### 🚨 Breaking changes

- `ConsoleService`, `DialogService`, `IntervalService`, `RenderService`, `TimeoutService`, and `WebSocketService` methods are now static. [[@teymour-aldridge], [#1313](https://github.com/yewstack/yew/pull/1313)]
- `html!`: `Children` no longer implements `Renderable`. [[@siku2], [#1275](https://github.com/yewstack/yew/pull/1275)]

Replace instances of `self.props.children.render()` with `self.props.children.clone()`.

- Yew no longer stops propagation of events by default. [[@jstarry], [#1256](https://github.com/yewstack/yew/pull/1256)]

Event propagation is usually stopped when you have event listeners attached to nested elements and do not want the event to bubble up from where it was first captured. If your app has this behavior, you can stop propagation by calling `stop_propagation()` on the desired event.

- The `onmousewheel` and `ontouchenter` listeners have been removed. [[@siku2], [#1244](https://github.com/yewstack/yew/pull/1244)]
- The `ondoubleclick` listener is now named `ondblclick`. [[@siku2], [#1244](https://github.com/yewstack/yew/pull/1244)]
- `FetchService` methods are now static. [[@teymour-aldridge], [#1235](https://github.com/yewstack/yew/pull/1235)]

Instead of `FetchService::new().fetch(..)` you should now use `FetchService::fetch(..)`

- The `send_message_batch` method has been removed from `AgentLink`. [[@totorigolo], [#1215](https://github.com/yewstack/yew/pull/1215)]
- Minimum supported rust version has been bumped from `1.40.0` to `1.42.0`. [[@mkawalec], [#1195](https://github.com/yewstack/yew/pull/1195)]
- Every agent `Reach` type is now generic. [[@mkawalec], [#1195](https://github.com/yewstack/yew/pull/1195)]

In order to fix your app, simply append `<Self>` to the reach:

`Reach = Context` -> `Reach = Context<Self>`
- Removed `Global` agent because it was never implemented. [[@jstarry], [#1202](https://github.com/yewstack/yew/pull/1202)]
- Reduced visibility of internal agent types that were not intended to be public. [[@jstarry], [#1202](https://github.com/yewstack/yew/pull/1202)]

## **0.16.2** *(2020-05-14)*

#### Changelog
Expand Down Expand Up @@ -875,10 +938,12 @@ This release introduces the concept of an `Agent`. Agents are separate activitie
[@lukerandall]: https://github.com/lukerandall
[@mankinskin]: https://github.com/mankinskin
[@mdtusz]: https://github.com/mdtusz
[@mkawalec]: https://github.com/mkawalec
[@mrh0057]: https://github.com/mrh0057
[@nicklaswj]: https://github.com/nicklaswj
[@philip-peterson]: https://github.com/philip-peterson
[@serzhiio]: https://github.com/serzhiio
[@siku2]: https://github.com/siku2
[@Stigjb]: https://github.com/Stigjb
[@stkevintan]: https://github.com/stkevintan
[@TheNeikos]: https://github.com/TheNeikos
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
<h4>
<a href="https://yew.rs/docs">Documentation</a>
<span> | </span>
<a href="https://github.com/yewstack/yew/tree/v0.16.0/examples">Examples</a>
<a href="https://github.com/yewstack/yew/tree/v0.17/examples">Examples</a>
<span> | </span>
<a href="https://github.com/yewstack/yew/blob/master/CHANGELOG.md">Changelog</a>
<span> | </span>
Expand Down
2 changes: 1 addition & 1 deletion yew-components/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ travis-ci = { repository = "yewstack/yew" }
[dependencies]
wasm-bindgen = "0.2.60"
web-sys = "0.3"
yew = { version = "0.16", path = "../yew" }
yew = { version = "0.17", path = "../yew" }
2 changes: 1 addition & 1 deletion yew-macro/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "yew-macro"
version = "0.16.1"
version = "0.17.0"
edition = "2018"
authors = ["Justin Starry <justin@yew.rs>"]
repository = "https://github.com/yewstack/yew"
Expand Down
2 changes: 1 addition & 1 deletion yew-router/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ web_sys = [
]

[dependencies]
yew = { version = "0.16.0", path = "../yew", features = ["services", "agent"], default-features= false, optional = true }
yew = { version = "0.17.0", path = "../yew", features = ["services", "agent"], default-features= false, optional = true }
yew-router-macro = { version = "0.13.0", path = "../yew-router-macro" }
yew-router-route-parser = { version = "0.13.0", path = "../yew-router-route-parser" }

Expand Down
2 changes: 1 addition & 1 deletion yew-router/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ You can use the released version by adding these to your dependencies.
```toml
[dependencies]
yew-router = "0.13.0"
yew = "0.16.2"
yew = "0.17.0"
```

You can use the in-development version in your project by adding it to your dependencies like so:
Expand Down
4 changes: 2 additions & 2 deletions yew-stdweb/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "yew-stdweb"
version = "0.16.2"
version = "0.17.0"
edition = "2018"
authors = [
"Denis Kolodin <deniskolodin@gmail.com>",
Expand Down Expand Up @@ -45,7 +45,7 @@ thiserror = "1"
toml = { version = "0.5", optional = true }
wasm-bindgen = { version = "0.2.60", optional = true }
wasm-bindgen-futures = { version = "0.4", optional = true }
yew-macro = { version = "0.16.1", path = "../yew-macro", features = ["std_web"] }
yew-macro = { version = "0.17.0", path = "../yew-macro", features = ["std_web"] }

# Changes here must be reflected in `build.rs`
[target.'cfg(all(target_arch = "wasm32", not(target_os="wasi"), not(cargo_web)))'.dependencies]
Expand Down
4 changes: 2 additions & 2 deletions yew/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "yew"
version = "0.16.2"
version = "0.17.0"
edition = "2018"
authors = [
"Denis Kolodin <deniskolodin@gmail.com>",
Expand Down Expand Up @@ -44,7 +44,7 @@ thiserror = "1"
toml = { version = "0.5", optional = true }
wasm-bindgen = { version = "0.2.60", optional = true }
wasm-bindgen-futures = { version = "0.4", optional = true }
yew-macro = { version = "0.16.1", path = "../yew-macro" }
yew-macro = { version = "0.17.0", path = "../yew-macro" }

[dependencies.web-sys]
version = "0.3"
Expand Down

0 comments on commit 844aa4b

Please sign in to comment.