chore: release v0.24.0 - #139
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
Contributor
Author
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.
Summary
All bumped packages.
@reactunity/create0.23.20.24.0@reactunity/material0.23.20.24.0@reactunity/renderer0.23.20.24.0@reactunity/scripts0.23.20.24.0Changelogs
2026-09-03-7b3e41.mdShow Bumped Packages (1)
npm:@reactunity/rendererA Vite preset for ReactUnity apps
@reactunity/renderer/viteconfigures Vite the way a ReactUnity app needs it, so a project's wholeconfig is:
Output goes into the Unity project. The preset walks up from the Vite root looking for an
Assetsfolder beside aProjectSettings/ProjectVersion.txt, testing each ancestor and one levelbelow it, and builds into that project's
Assets/Resources/react. Both layouts are found: the appinside the project, and the app beside it.
unityProjectandassetPathsay it outright when theguess is wrong, and it stays out of the way entirely if the config already sets
build.outDir.The output folder is cleaned, and the
.metafiles survive. Unity writes a.metabeside everyasset, and the GUID in it is what scenes and prefabs reference — so emptying the folder the way Vite
would means every rebuild mints new GUIDs and breaks whatever pointed at the old ones. The clean
deletes the output and leaves the metas, and once the build has written its files it drops only the
metas whose asset did not come back, along with any directory the build left empty. A build that
fails leaves the metas alone, so the next successful one restores the files under their original
GUIDs.
preserveexempts paths the build does not own, and the clean refuses outright to run on adirectory that is not plausibly build output — a package, a repository, an
Assetsfolder, oranything containing the Vite root.
For the same reason, output filenames carry no content hash by default: a hash renames the file on
every build, which costs it its meta.
hashFileNames: truerestores Vite's naming.Emitted assets carry their extension twice, so
index.cssis written asindex.css.css. Unityfinds a resource by its path minus the last extension, which makes
assets/index.jsandassets/index.cssthe same resource -- and asking for the script could hand back the stylesheet, tobe run as JavaScript. Doubling puts the type back into the name the lookup uses. Content hashes did
this by accident before; without them it has to be deliberate.
Assets are never inlined. Vite turns a file under 4 kB into a
data:URI, and Unity loads anasset URL through its own loaders — so a small image that got inlined stopped resolving. The limit
is 0, which is where
react-unity-scriptshad it too.CSS is emitted for an old browser. ReactUnity's CSS subset does not know
oklch(),color-mix()or nesting, and a stylesheet that uses them silently loses those declarations.
build.cssTargetdefaults to
chrome87, which is what makes Lightning CSS lower them on the way out — enough thatTailwind v4's palette arrives as hex.
Vite's devtools and the HMR error overlay are off. Neither has anywhere to draw in Unity, and an
overlay rendered into a page nobody is looking at only hides the console message.
Everything the config sets itself wins — the preset only fills in what was left out — and
react: falsedrops@vitejs/plugin-reactfor a project that wants to configure React itself.Publish
The following packages will be published if merged:
@reactunity/create0.24.0npm@reactunity/material0.24.0npm@reactunity/renderer0.24.0npm@reactunity/scripts0.24.0npm