@neocompose/cli 0.30.3 → 0.31.1
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 +45 -0
- package/dist/neo.mjs +4789 -157
- package/package.json +1 -1
- package/skills/neocompose-cli/SKILL.md +5 -3
- package/skills/neocompose-cli/references/animation-and-world-authoring.md +62 -0
- package/skills/neocompose-cli/references/cli-development.md +1 -1
- package/skills/neocompose-cli/references/neoscript.md +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.31.1] - 2026-08-14
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- `neo script check` now preserves inline Class-body context and callable
|
|
8
|
+
delegate/action member types, so inherited generic selectors, unqualified
|
|
9
|
+
instance/static fields, and action invocation statements compile as authored.
|
|
10
|
+
|
|
11
|
+
## [0.31.0] - 2026-08-13
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- P67 NeoObject variants: author a named configuration of a `NeoObject`-derived
|
|
16
|
+
class as a top-level `NeoVariant<Class>` global with `initialize`/`apply`
|
|
17
|
+
delegates, group them with `NeoVariantFolder<Class>` records assigned by
|
|
18
|
+
`@settings(folder: ...)`, and pull them back as one file per (class, folder)
|
|
19
|
+
under `Variants/`. The canonical system schema seeds
|
|
20
|
+
`NeoVariant<TObject>` and `NeoVariantFolder<TObject>`, so `.Variant` and
|
|
21
|
+
`.VariantFolder` join the `NeoWorldKind` vocabulary.
|
|
22
|
+
- Variant declaration diagnostics surface live in the editor with the same
|
|
23
|
+
rules push enforces: folder resolution and class ownership, per-scope name
|
|
24
|
+
uniqueness across variant names and folder path segments, the reserved
|
|
25
|
+
`Base` name, C# identifier normalization, `initialize`/`apply` shapes, and
|
|
26
|
+
the reference-only rule that keeps `NeoVariant` out of every nested type
|
|
27
|
+
position.
|
|
28
|
+
- The `Variant` member kind: declare `public NeoVariant<Tree> Felled =
|
|
29
|
+
Tree.Variants.ChoppedTree;` to point data at a named configuration. The
|
|
30
|
+
default authors as the bare `<Class>.Variants.<Name>` path — never
|
|
31
|
+
`Reference(...)`, which resolves to a value row rather than a record — and
|
|
32
|
+
resolves at push to the stored `{classId, variantId}` pair, including
|
|
33
|
+
against a variant authored beside a brand-new class in the same push. Pull
|
|
34
|
+
re-emits the canonical path from the stored ids, so renaming a variant or
|
|
35
|
+
moving it between folders round-trips. `<Class>.Variants.Base` selects the
|
|
36
|
+
class with no variant applied, and a nullable declaration may default to
|
|
37
|
+
`null` for no selection at all.
|
|
38
|
+
- Live diagnostics for the two predictable member-default mistakes: a variant
|
|
39
|
+
path whose class is not the declared target or a subclass, and
|
|
40
|
+
`Reference(...)` where a bare path is required.
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
|
|
44
|
+
- `Partial<T>?` now lowers as nullable instead of silently dropping the `?`,
|
|
45
|
+
which is what lets an optional `Partial<T>? x = null` parameter declare its
|
|
46
|
+
own P65 default.
|
|
47
|
+
|
|
3
48
|
## [0.30.3] - 2026-08-13
|
|
4
49
|
|
|
5
50
|
### Fixed
|