v0.4.2

DioxusLabs/dioxusv0.4.2Dec 7, 2023by jkelleyrtp

AI Summary

This release focuses on stabilizing the router, enhancing Fullstack features, and addressing various CLI and documentation bugs. It includes security fixes and introduces the Signals implementation.

Key Highlights

  • Stabilized router with improved history management and lazy scroll updates.
  • Enhanced Fullstack features including flexible server functions and response headers.
  • Security fix for 'zip slip' vulnerability in the CLI tool.
  • Introduction of Signals implementation and `with`/`with_mut` for shared state.

New Features

  • Signals implementation
  • FileEngine exposing native file types on different platforms
  • Add 'with' and 'with_mut' to 'use_shared_state'
  • Publish CLI binaries for cargo-binstall
  • Make server function features flexible

Full Release Notes

## What's Changed
* Reject all external routes when parsing a route by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1272
* Fix navigator push/replace route by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1274
* Deduplicate route history by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1273
* Update scroll history lazily when you leave a page by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1275
* Release new versions (0.4.1) by @jkelleyrtp in https://github.com/DioxusLabs/dioxus/pull/1276
* fixed "http_equiv" in meta to generate "http-equiv" instead of "http_… by @ChrisCA in https://github.com/DioxusLabs/dioxus/pull/1277
* Fix Fullstack docs building by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1284
* Make server function features flexible by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1285
* doc: fix typo by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1287
* docs(cli): fix typo by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1294
* build(web): fix `default-features` warning by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1296
* Minor Proxy Improvements by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1289
* docs(hooks): fix typos by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1299
* refactor(cli): move `check` module alongside others by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1304
* docs(cli): update subcommand comments by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1303
* chore(cli): remove unused module by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1302
* fix(cli): prevent "zip slip" vulnerability in tool extract by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1305
* incorrect word spelling by @dylanblokhuis in https://github.com/DioxusLabs/dioxus/pull/1308
* chore(cli): remove unused function by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1301
* refactor(cli): use more semantic `Instant::elapsed` by @eventualbuddha in https://github.com/DioxusLabs/dioxus/pull/1307
* fix: readme awesome link by @HashCookie in https://github.com/DioxusLabs/dioxus/pull/1320
* Set response headers from response, not request, parts by @gmorenz in https://github.com/DioxusLabs/dioxus/pull/1328
* docs: add Japanese README by @eltociear in https://github.com/DioxusLabs/dioxus/pull/1329
* Make launch functions pub by @CodedNil in https://github.com/DioxusLabs/dioxus/pull/1288
* Separate Parent and Child Component Lifetimes by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1332
* Fix the login form example by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1327
* Complete Signals implementation by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1300
* Update tailwind examples to work with multi-page apps by @swpecht in https://github.com/DioxusLabs/dioxus/pull/1339
* Use `--profile` to identify cargo build artifact if present for dx cli web builds by @swpecht in https://github.com/DioxusLabs/dioxus/pull/1344
* Add 'with' and 'with_mut' to 'use_shared_state' by @DanielAlbl in https://github.com/DioxusLabs/dioxus/pull/1353
* Publish CLI binaries for cargo-binstall by @esimkowitz in https://github.com/DioxusLabs/dioxus/pull/1358
* Fix the context API in lists by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1351
* Fix leak in core because of bump allocated Vec by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1364
* Update README.md to use 0.4 version of `Guide` instead of 0.3 by @Dillon-Roller in https://github.com/DioxusLabs/dioxus/pull/1370
* DOC: Add note about form prevent_default behavior. by @vgobbo in https://github.com/DioxusLabs/dioxus/pull/1343
* CLI: Behavior when web.https.mkcert is not specified. by @vgobbo in https://github.com/DioxusLabs/dioxus/pull/1342
* FileEngine: expose native file types on different platforms by @wooden-worm in https://github.com/DioxusLabs/dioxus/pull/1258
* deps: Update keyboard-types to 0.7. by @waywardmonkeys in https://github.com/DioxusLabs/dioxus/pull/1378
* Update ZH_CN.md to use 0.4 version of guide by @HashCookie in https://github.com/DioxusLabs/dioxus/pull/1388
* Constrain Props lifetime to parent, not child scope lifetime by @ealmloff in https://github.com/DioxusLabs/dioxus/pull/1345

## New Contributors
* @ChrisCA made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1277
* @dylanblokhuis made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1308
* @HashCookie made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1320
* @gmorenz made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1328
* @eltociear made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1329
* @CodedNil made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1288
* @swpecht made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1339
* @Dillon-Roller made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1370
* @vgobbo made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1343
* @wooden-worm made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1258
* @waywardmonkeys made their first contribution in https://github.com/DioxusLabs/dioxus/pull/1378

**Full Changelog**: https://github.com/DioxusLabs/dioxus/compare/v0.4.0...v0.4.2