Version Packages - #1375
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
🏋️ Size limit report
Compared against main at 9adb076 — run 33200820105, 2026-08-28T18:46:24Z.To see which modules changed, download the size-limit-statoscope-report artifact from this run and open report.html. |
Contributor
🧪 Storybook is successfully deployed!
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@cube-dev/ui-kit@0.173.0
Minor Changes
#1374
9adb076fThanks @tenphi! - Update Tasty to 3.5.0 (from 3.3.1). No changes were needed in the kit; two things matter to apps built on it.Injected CSS is garbage-collected again. Once Tasty's render path became hook-free it stopped disposing the classes it injected, so their reference counts never fell back to zero and
gc(),cleanup()andtastyDebug.cleanup()all read a non-zero count as "still in use". Nothing was ever evicted, and a long-lived page accumulated injected rules for its entire lifetime — the failure mode is a session that gets slower the longer it stays open, worst in a UI that mounts many short-lived styled subtrees (dialogs, popovers, table cells). What a style is worth keeping is now decided by the DOM: a sweep scans for the classes actually on the page, and only classes that are both absent from it and cold for longer thangc.grace(new, default 10s) beyondgc.capacityare deleted. Nothing is tracked per class while rendering, so collection costs nothing on the render path.touch()and theStyleUsagetype are deprecated — both still exported, andtouch()'s class-name argument is now ignored — andtastyDebugno longer reportsUnused: 0 classesfor a page holding hundreds of stale rules.Local
@keyframesare content-addressed and owned by the classes that use them. A@keyframesblock written inside a styles object is emitted asfade-<hash of its steps>rather thanfade, resolved identically by the client, the SSR collector and the RSC pass, and folded into the chunk's cache key. Two components that each authoranimation: fade 1sover different steps therefore get two rules and two classes instead of one definition silently winning — which previously also let the server and the client disagree about which class to use. If your own CSS or a test refers to a local keyframes name literally, it no longer resolves;keyframes()-registered global animations are unaffected and keep their authored names.holdKeyframes()andownKeyframes()come with it, re-exported from@cube-dev/ui-kit.One 3.5.0 fix lands squarely on the kit as it now ships: since
RootsetsbatchInjection: trueandRoot,PortalandOverlayeach open aTastyBatchProviderwindow, atastyDebugread taken inside one of those windows used to describe it as empty. Reads that reach into the registry rather than through an injector API now land the pending writes first, so debug output taken mid-commit is no longer blank.Also in: styling overhead drops (from 3.4.0) — LRU cache reads are 1.79x faster in their steady-state shape, and a repeat SSR render of one component is 1.8x faster end to end now that
tasty()factories memoize their chunk cache keys. A custom property declared with a whitespace-only value (--brand-color: ;) is skipped rather than read as an empty value, so it no longer auto-registers an@propertyoff the strength of its name. Bundle: +1.21 kB on both the full import and a{ Button }-only import — matching deltas, which is what a change inside Tasty's always-included core looks like. Both stay inside budget, thoughAllis now down to 1.40 kB of headroom, most of which the kit's own recent growth spent rather than this bump.Note
Medium Risk
Minor version release pulls in Tasty runtime behavior changes (CSS GC, keyframes naming, deprecations) that can affect long-lived UIs and any code that referenced local keyframe names directly.
Overview
Release
@cube-dev/ui-kit@0.173.0via Changesets: bumpspackage.jsonfrom0.172.0, copies the Tasty 3.5.0 notes intoCHANGELOG.md, and removes the consumed.changeset/tasty-3-5-0.md.The shipped behavior change is the dependency bump to
@tenphi/tasty3.5.0 (from 3.3.1); the kit itself needed no code changes. Downstream apps get DOM-driven GC for injected CSS (fixes unbounded rule growth on long sessions), content-hashed local@keyframes(possible breakage if CSS/tests reference local animation names literally), deprecatedtouch()/StyleUsage, re-exportedholdKeyframes()/ownKeyframes(), faster LRU/SSR styling, and a small bundle increase (~1.21 kB).Reviewed by Cursor Bugbot for commit d6cb1c7. Bugbot is set up for automated code reviews on this repo. Configure here.