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

Release - v2.2.14 #3006

Merged
merged 7 commits into from
Feb 8, 2025
Merged

Release - v2.2.14 #3006

merged 7 commits into from
Feb 8, 2025

Conversation

JAForbes
Copy link
Collaborator

@JAForbes JAForbes commented Jan 29, 2025

Release v2.2.14

Changelog

Patch Changes

Improve handling of is-elements and Fix tiny bugs of setAttr()/updateStyle() (@kfule)

Fixes a few tiny bugs in attributes and style properties updates, and improves handling of is-elements in updateNode().

domFor: always get generation from delayedRemoval instead of parameter (@kfule)

The generation of domFor is no longer passed as a parameter. This allows domFor to work well in onbeforeremove and onremove and reduces the amount of code.

render: wrap stateResult and attrsResult in Promise.resolve(), fix #2592 (@kfule)

This PR wraps the return value of onbeforeremove in Promise.resolve(). This ensures that thenable objects are also always processed asynchronously. fix #2592.

@JAForbes JAForbes requested a review from a team as a code owner January 29, 2025 11:48
kfule and others added 5 commits February 3, 2025 09:57
…Style() (#2988)

* setAttr/removeAttr: remove `key === "is"`, fixes #2799

This allows the "is" attribute to be set or removed like any other attribute.

* swap set and removal order of attributes/style properties

* bypass css text

This is a leftover from #2811.

* Vnode: add vnode.is to handle is-element

This seems to give better performance than simply adding a `(old.attrs && old.attrs.is) == (vnode.attrs && vnode.attrs.is)` evaluation to updateNode().

* refactor isEmpty()

* move `old.is === vnode.is` evaluation to the top of updateNode()

It seems better to evaluate `old.is === vnode.is` before process that assumes node update.

* revert isEmpty() back

* hasPropertyKey: evaluate `vnode.is` instead of `vnode.attrs.is`

* execSelector: use `attrs.is != null` instead of `hasOwn.call(attrs, "is")`

* Vnode: initialize `is` with undefined

* add manual test

* Update hyperscript.js

Signed-off-by: Claudia Meadows <contact@claudiameadows.dev>

---------

Signed-off-by: Claudia Meadows <contact@claudiameadows.dev>
Co-authored-by: Claudia Meadows <contact@claudiameadows.dev>
@dead-claudia dead-claudia merged commit ab2e603 into release Feb 8, 2025
7 checks passed
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

Successfully merging this pull request may close these issues.

3 participants