dioxus/packages/web/CHANGELOG.md
2021-12-15 16:04:27 -05:00

28 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

v0.0.0 (2021-12-15)

Documentation

  • update local examples and docs to support new syntaxes
  • lnks to projects
  • big updates to the reference
  • move around examples

New Features

  • bubbling

  • upgrade syntax

  • events bubble now

  • support innerhtml

  • massage lifetimes

  • support desktop more completely

  • add update functionality to useref

  • shared state mechanisms

  • a cute crm

  • mutations

  • select figured out

  • re-enable suspense

  • amazingly awesome error handling

  • proper handling of events

  • mvoe away from compound context

  • make hooks free-functions

  • omg what a dumb mistake

  • suspense!

  • bless up, no more segfaults

  • more suspended nodes!

  • move over to push based mechanism

  • architecture document and edit list

  • it loads the doggos

  • task system works but I broke the other things :(

  • rebuild doesn't return errors

  • static node infrastructure and ssr changes

  • enable arbitrary body in rsx! macro

  • add edits back! and more webview support! This commit adds a new type - the DomEdit - for serializing the changes made by the diffing machine. The architecture of how DomEdits fit into the cooperative scheduling is still TBD but it will allow us to build change lists without applying them immediately. This is more performant and allows us to only render parts of the page at a time.

    This commit also adds more infrastructure around webview. Dioxus can now run on the web, generate static pages, run in the desktop, and run on mobile, with a large part of thanks to webview.

  • move to slotmap

  • integrate serialization and string borrowing This commit adds lifetimes to the diff and realdom methods so consumers may borrow the contents of the DOM for serialization or asynchronous modifications.

  • events work again!

  • props memoization is more powerful This commit solves the memoization , properly memoizing properties that don't have any generic parameters. This is a rough heuristic to prevent non-static lifetimes from creeping into props and breaking our minual lifetime management.

    Props that have a generic parameter are opted-out of the partialeq requirement and props without lifetimes must implement partialeq. We're going to leave manual disabling of memoization for future work.

  • todomvc

  • somewhat working with rc and weak

Bug Fixes

  • all the bugs!
  • append isnt backwards

Performance

  • remove global allocation for props

Commit Statistics

  • 173 commits contributed to the release over the course of 334 calendar days.
  • 169 commits where understood as conventional.
  • 0 issues like '(#ID)' where seen in commit messages

Commit Details

view details