Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checklist for v5. #250

Open
7 of 16 tasks
hayleigh-dot-dev opened this issue Feb 22, 2025 · 2 comments
Open
7 of 16 tasks

Checklist for v5. #250

hayleigh-dot-dev opened this issue Feb 22, 2025 · 2 comments

Comments

@hayleigh-dot-dev
Copy link
Collaborator

hayleigh-dot-dev commented Feb 22, 2025

The next Lustre release comes with a bunch of internal changes. This meta issue tracks the things left for us to address before we can release:

  • [vdom] Extract event handlers

  • [vdom] Diff event handlers for prevent_default / stop_propagation / immediate. This is necessary because we'll still need this patch to send down the wire for server components.

  • [vdom] Work out event mapping

  • [vdom] Handle f*cking annoying edge case where the same event handler is referenced in multiple places.

  • [vdom] Introduce separate keyed module.

  • [vdom] Introduce a separate Keyed vdom node

  • [vdom] Add the ability to virtualise existing an DOM tree for hydration.

  • [vdom] Re-introduce batching of multiple class and style attributes.

  • [vdom] Re-introduce hidden dangerous-unescaped-html attribute or similar mechanism to inject raw HTML.

  • [vdom] Defer renders to the next animation frame, when possible.

  • [components] Re-add shadow dom styles cloning

  • [components] Add a named slot for prerendering elements for hydration

  • [server components] Re-implement server component client runtime

  • [server components] Update reconciler to work with changes sent over the wire. To minimise payload size we'll probably use an integer-tagged tuple approach so we can't use the existing reconciler.

  • [server components] Add a named slot for content to render when while loading

  • [server components] Add support for HTTP and SSE modes in addition to WebSockets.

@CrowdHailer
Copy link
Contributor

Can we add changing this function to use the decode API, now that the dynamic API has been deprecated
https://hexdocs.pm/lustre/lustre/event.html#on

@yoshi-monster
Copy link

Already done! v5 will exclusively support the new decode API.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants