Skip to content

Conversation

@chriseppstein
Copy link
Contributor

This changes the rewrite of css blocks to emit fewer arguments to the css-blocks helper. There's some preliminary perf results that show that argument passing, which invokes change tracking, is more expensive than you might expect. The hypothesis is that by passing few arguments we can speed up the runtime performance. In this change we pass a stringified JSON object that describes the overall shape of the various css blocks styles keeping the arguments for just the runtime variables and expressions provided by the template author. It remains to be seen whether this is a net savings.

The @css-blocks/glimmer package has a bunch of dependencies that we
don't need and is just bloating the installation of @css-blocks/ember.
Changes the way the css-blocks helper is invoked. Instead of passing
many arguments representing all the styles and their runtime state, a
single serialized JSON value is passed that represents all the styles.
the remainder of the arguments are the arguments passed by the author to
the various block attributes.
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.

2 participants