### Commit Statistics
- 142 commits contributed to the release over the course of 223 calendar days.
- 9 commits where understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' where seen in commit messages
### Commit Details
* **Uncategorized**
- rework proc macros to not generate as many macros (38a6439)
- refactoring (16f0955)
- fix stroked rects (f62f964)
- integrate external hook count into FragmentStore (91d395e)
- don't use as_ref for get_args, it seems to be slow (a7b84f7)
- use index generated by FragmentStore for new keys in KeyMap (ae80e3e)
- change hook tracking to be stored in PatchedTree (133ed26)
- change ergonomics of rect and input (0d4c5dc)
- recursively clip clippers with parent (a2b65a2)
- clippy + fmt (43c7710)
- rework fragments to be stored in a FreeList besides their args (4ff7e6d)
- cargo fmt (4949bec)
- Add support for clipping (c8867dd)
- fix logic bugs in PatchedTree::shout (61d5e4b)
- fmt + clippy (6b78ddb)
- remove (potentially) existing patch when shouting a value equal to the old one (642411d)
- diff shouted values to old ones (9d37313)
- avoid looking up the key twice adding a new arg (65854c3)
- remove custom owning_ref (0b96892)
- only create the key once in rsx_macro (1e7ff04)
- rework PatchedTree to be FreeList based (bcc3801)
- rework ArgsTree to be FreeList based (d8e9ed4)
- rework VecWithHoles into FreeList, Layouter without Keys (afea828)
- increase number of allowed vertices (2772924)
- implement depth testing, rework stack (5eba0e0)
- cargo clippy & cargo fmt (cf6fbbf)
- improve error message on key conflicts (5f5bb5d)
- add key_map to CallbackContext (64e84c2)
- rework debug bounds to compile time option (a919db3)
- fix layout debug (5a7c5f9)
- rework lyon renderer (5f61394)
- rework hook storage, leaks memory:( (f72badf)
- fix removal of nodes (59be411)
- rework keys mapping slightly (1584f55)
- store RenderObject beside dyn Layout (1bde37d)
- format (6f169fe)
- better hashmap based key implementation (8101e1b)
- prototype of global key map (e1ff2d8)
- add env var for mailbox persent mode (7d3e3bf)
- more clippy (7bb8420)
- clippy v2 (a8b3e53)
- cargo fmt (2cb1eb0)
- compress keys even further (e0e500b)
- optimize the renderers (12f2fd7)
- misc cleanup (62138dc)
- optimize keys (8972a69)
- improve partial relayout (2bf62e3)
- add effect and thread hook (bbef1eb)
- continue integration, first simple widgets are working (cf4d8da)
- start narui integration (dae0dbc)
- request required extensions (f09ff6c)
- cargo fmt (1821569)
- text widget: take IntoString instead of String (e45c4ae)
- fix api & rendering bugs (06629d8)
- improve thread & effectc hook (86cd79e)
- add panic when two children have the same key (ca6b7df)
- dont override explicitly set styles (aa010a7)
- use environment variable for debug bounds (434f790)
- generate a mod for each widget (f1b4500)
- fix examples (ce77f27)
- raw_renderer: add nescescary layout information (aaf74ad)
- enrich styles api (0f34c68)
- Vec2: implement scalar mul div add sub (ed20e6a)
- fix colors of text and shape (f216dde)
- more node_graph work (0a50a86)
- change object model (6bc6753)
- improve debug printing for Fragment (9555c17)
- add fragment widget (bd55e5c)
- add measure hooks (e9b698c)
- improve macros (6ab607e)
- add last layout result to context (b41314f)
- lyon renderer: dont store path_gen in context (e80d72f)
- fix build on stable rust (d129bd5)
- improve style ergonomics (8c11f07)
- introduce util package (951f802)
- fix & rename collect_fragment (acbc33d)
- add after frame callback (2c5be7d)
- cleanup (d6b1025)
- cargo clippy & cargo fmt (3d594b9)
- use vulkan context from narui (fd5b5c8)
- cargo clippy (0d25f6b)
- TreeFilter.update() was never called (1a15278)
- cargo fmt (eb1ca7a)
- cleanup (fcd45f2)
- Fix delta eval bug (71537fa)
- introduce type alias for RenderFnInner (d30cee9)
- Improve formatting of Key (f167fd1)
- Clarify KeyPart choice for sub widgets (16c6bbc)
- Optimize Vulkan drawing sequence for input latency (87a0439)
- bump vulkano + winit version (13e496c)
- implement effects with cleanup & thread spawning (2e0d991)
- improve output latency & input handling (51423d8)
- change KeyPart syntax (55e0d4a)
- remove unneeded dependencies (8b6e60b)
- add better rerender-when-needed logic (9b6a855)
- only re-render when needed (is this really what we want?) (4a43b13)
- dont invoke stretch if nothing has changed (eaff7fb)
- clippy (e8f5344)
- fix wrong context key for arg evaluation bug (8cff8ca)
- performance optimizations (0231ec8)
- fix partial rebuild (7df2eb5)
- fix examples (1ed9003)
- move examples to examples folder (2806c9c)
- implement stroke rendering (8112f0e)
- implement better input handling again (454010a)
- more clippy; restructure Vec2 conversions (cab283e)
- cargo fix + cargo fmt (2c24877)
- rename Widget struct to Fragment (5783261)
- rename & move narui_derive to narui_macros; add key to PositionedRenderObject (4d0141f)
- working version (25a9fd6)
- compiling form (5704659)
- before error fixing (2e640b3)
- before restructuring (0517ff0)
- add almost working partial update (932a776)
- add non working delta evaluation (currently it never reevaluates) (c1395e3)
- implement working change detection for widget arguments (598a70b)
- non working hash based foo (4934762)
- prepare for partial updates (713c6f9)
- restructure key to enum (707786c)
- fix logic bug (b9b05bf)
- big performance improvement by using jemalloc (8b3fb8a)
- performance optimizations; lyon caching (3cbeba7)
- small performance improvements with incremental re-layout (07af869)
- sane reference counting and nice introspectable widget tree (148556d)
- add more reference counting in preparation of partioal updates (7b6f1a0)
- fix state management; fix font rendering; improve slider (48bd896)
- add basic slider (b82d728)
- more input handling; add counter demo (98a4edd)
- add basic input handling (6f2a811)
- some layouting reconsideration (1e67ca4)
- add initial working font rendering (f645dfe)
- add first test rendering prototype does not work (picks wrong texture region for display) (712f8b1)
- add color support; reevaluate rsx for every frame (9e56569)
- split narui_derive into multiple files (54ea578)
- fix layout fuckup (6757b45)
- initial renderer prototype (57b50de)
- fix warnings (e71eb8c)
- tweak ergonomics (bb0d5c5)
- first layouting prototype (a3e053e)
- first prototype of hooks api (69ffce5)
- wip wiered macro fail (bc94461)
- prototyping of macros for react like ergonomics (d4d4bde)