@neocompose/cli 0.72.0 → 0.72.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.72.2] - 2026-10-08
4
+
5
+ - Resolve void statement calls through generic class and interface constraints, preserving generic arguments and receiver nullability checks.
6
+ - Infer contextual enum literals in positional and named constructor arguments, including generic parameters and overloads with defaults.
7
+ - Reject unrelated explicit class constructions in typed initializers, with source diagnostics that agree between the editor and CLI. Preserve concrete and generic types when a local target-typed construction is stored through a base-class member.
8
+
9
+ ## [0.72.1] - 2026-10-07
10
+
11
+ - Speed up `neo export` and `neo dev`: reuse verified unchanged exports, cache unchanged parsing and preparation work, share dialogue compiler symbols, and index Unity generation. Regenerate C# only when its schema inputs change; continue validating edited content and repairing changed output files.
12
+ - Reuse current compiled bodies for local tests, recompiling missing or stale member and constructor bodies without rewriting the pulled state.
13
+ - Share prepared commit records across export, tests, and push hooks. Avoid recompiling prepared schema bodies, reuse test preparation in doctor, and retain source analysis when showing status during `neo dev`.
14
+ - Keep source analysis and construction caches across processes and pulls. Reuse unchanged schema analysis after dialogue prose edits, and invalidate construction results when their structural inputs or observed localized values change. Restore missing or modified Unity output files from verified cached bytes.
15
+ - Persist validated source lowering, prepared candidates, animation validation proofs, and Unity builds in a shared file cache. Reuse them in fresh CLI processes, and preserve unaffected export structure across prose-only pulls.
16
+ - Reuse file reachability when construction inputs are unchanged, including dialogue text edits that do not affect file selection.
17
+ - Watch before the initial `neo dev` export, batch saves with a shorter bounded delay, ignore unrelated asset events, and recover after workspace lock failures.
18
+
3
19
  ## [0.72.0] - 2026-10-07
4
20
 
5
21
  - Add the User root and `User` storage for per-player data shared across saves. Every project has `root.User` in its root source, and `@storage(allowed: .User)` marks a User class. A `Root.neo` pulled before the User root reports that it needs `neo pull`.
package/README.md CHANGED
@@ -107,6 +107,17 @@ those IDs and receives branch/version switches. `neo export` writes into that
107
107
  Unity project; without `unityConfigPath`, it offers to link the config asset
108
108
  for this project it finds in the Unity project around the working copy.
109
109
 
110
+ Validated source lowering, commit preparation, animation validation, and Unity
111
+ builds live in a shared file cache under `.neo/build/`. A new CLI process can
112
+ reuse them; keeping `neo dev` running is not required. Exact input and dependency
113
+ checks invalidate affected results. Independent dialogue prose changes preserve
114
+ structural work, including a pull that commits those changes. Structural source
115
+ edits still require broader analysis and preparation.
116
+
117
+ Export checks output bytes and restores missing or modified generated files
118
+ from its cache, without rewriting unchanged files. `neo dev` uses the same
119
+ preparation and export rules after each save.
120
+
110
121
  Pull, push, and export refuse a working copy whose pulled project or version
111
122
  differs from the config's, which happens when the asset changes outside the
112
123
  CLI. Run `neo branch switch <versionId>` to reset and pull the config's