@neocompose/cli 0.89.4 → 0.89.5
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 +28 -0
- package/dist/neo-runtime.mjs +1410 -216
- package/dist/test-worker.mjs +1035 -134
- package/package.json +1 -1
- package/skills/neocompose-cli/SKILL.md +1 -1
- package/skills/neocompose-cli/references/cli-development.md +32 -1
- package/skills/neocompose-cli/references/declarations/constructors.md +2 -0
- package/skills/neocompose-cli/references/declarations/initializers.md +4 -2
- package/skills/neocompose-cli/references/neoscript/types-and-narrowing.md +6 -0
- package/skills/neocompose-cli/references/values/files.md +5 -1
- package/skills/neocompose-cli/references/values/references.md +4 -0
- package/skills/neocompose-cli/references/world/variants.md +27 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.89.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 9586371: Project unbound class-generic function and getter results through the SDK generic reader so tuple and collection results retain their types, including nested enum and reference values.
|
|
8
|
+
- c9dadd1: Run the sole declared constructor for positional calls instead of silently using the generated field constructor. Constructor throws now propagate, derived field expressions use the authored parameter types, and overloaded constructors require named arguments.
|
|
9
|
+
|
|
10
|
+
Preserve concrete class identity when constructor bodies assign through generic fields, including interface-valued fields.
|
|
11
|
+
|
|
12
|
+
- c9dadd1: Use consistent C# generic arguments for stored fields, tuple elements, function signatures, and read-only views. Collection and structured-value arguments retain the SDK storage wrappers supported by their codecs. Tuple fields and factory parameters preserve enum sets, reference handles, and nullable collection entries.
|
|
13
|
+
- 4ddaa8f: Preserve whole collection references in generic constructor field initializers by resolving the target against the constructor's type arguments before encoding its selection.
|
|
14
|
+
- c9dadd1: Preserve class row identity when a constructor receives a local dictionary or list populated by index assignments, including mixed literal and indexed entries.
|
|
15
|
+
- c9dadd1: Preserve constructor metadata when checking nested default collections. Runtime construction now accepts valid defaults, and stored default entries retain their identity and writes when a list is modified.
|
|
16
|
+
- c9dadd1: Fix generated Unity C# for lists and dictionaries containing sets of references. Nested entries now read as typed lookup sets and preserve read-only membership guards.
|
|
17
|
+
- c9dadd1: Preserve the authored file and component position when a computed vector component is rejected inside a stored nested instance default. Name the containing member and the numeric-literal restriction instead of reporting an unlocated numeric-literal error. Keep existing initializer classification and evaluation behavior unchanged.
|
|
18
|
+
- c9dadd1: Reject inserting a class instance into another owned collection after assigning a list or dictionary literal. Collection assignments preserve their backing row and class-entry identities, so ownership checks also apply to sparse stored instances while local aliases remain live.
|
|
19
|
+
- c9dadd1: Reject placing an owned set, list, or dictionary into another collection. Fresh nested collections receive a backing row on their first owned insertion so subsequent writes use the existing ownership checks. Generic constructor arguments retain nested reference descriptors so referenced class values remain shared rather than becoming owned.
|
|
20
|
+
- c9dadd1: Read stored Reference overrides through the declared virtual getter return contract. Resolve generic targets on the runtime receiver and preserve any reference layers promised by the getter.
|
|
21
|
+
- c9dadd1: Generate value-returning C# getters and matching field tokens when a stored Reference<T> implements an inherited get-only T property. Preserve reference handles for properties whose inherited contract is itself a reference.
|
|
22
|
+
- 45ea0a8: Reject collection replacements containing already-owned class values before replacing the destination or detaching its existing aliases.
|
|
23
|
+
- c9dadd1: Support descendant targets and optional-to-required NeoVariant field overrides. Drop inherited null defaults when a stored override becomes required, validate Base selections and inherited non-null defaults against the actual target, and preserve invariant inherited C# wrappers in properties, readers, and change subscriptions.
|
|
24
|
+
- c9dadd1: Preserve the ownership of constructor arguments when replay reconstructs the same stored class slot, and discard temporary replay allocations after failure.
|
|
25
|
+
- c9dadd1: Preserve closed generic types when constructing tuple declaration defaults. Open generic tuple defaults evaluate when instantiated, and copied class defaults retain independent collections and constructor arguments.
|
|
26
|
+
- c9dadd1: Infer generic function arguments through tuple elements, including nested and nullable elements. Keep sibling type evidence when another element needs context, such as a null literal or target-typed construction. Preserve numeric widening for direct tuple arguments and exact bounds inside invariant positions, consistently in editor analysis, compilation, and CLI export.
|
|
27
|
+
- c9dadd1: Report unsliced image assignments to SpriteInfo at their authored expressions with .Slice(0) guidance. Validate declaration defaults and both unused and consumed top-level object initializers before file lowering, preserving valid sliced local-image export before upload.
|
|
28
|
+
- c9dadd1: Reject non-finite vector fields and non-finite or out-of-range Color channels before mutation. Refresh compiled bodies to revision 18 so structured fields remain distinct from dictionary entries.
|
|
29
|
+
- c9dadd1: Report an unresolved class in a variant selection on the authored class identifier. Preserve its filename and location in CLI validation and export, and clear the editor diagnostic when the selection is corrected.
|
|
30
|
+
|
|
3
31
|
## 0.89.4
|
|
4
32
|
|
|
5
33
|
### Patch Changes
|