@neocompose/cli 0.27.1 → 0.28.0

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,33 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.28.0] - 2026-08-12
4
+
5
+ ### Added
6
+
7
+ - Parameter default values (P65): constructors and functions may declare
8
+ `string bar = "BAR"` on class headers, declared constructors, native
9
+ functions, NSFunctions, and interface functions. Defaults are constant
10
+ expressions only — bool/int/float/decimal/string literals with an optional
11
+ leading `-`, leading-dot enum options (`.North`), and `null` on nullable
12
+ parameters — and must follow every non-defaulted parameter. Call sites may
13
+ omit defaulted arguments: function calls accept a trailing-omission arity
14
+ range, and constructor calls match by name subset with C#'s
15
+ fewest-fill-ins tie-break. A fully defaulted constructor is callable as
16
+ `new()`. Defaults round-trip byte-identically through `neo push` and
17
+ `neo pull`, store the enum option id (renaming an option changes the
18
+ emitted spelling without touching the record), and surface in diagnostics
19
+ as `default-before-required-parameter`, `non-constant-parameter-default`,
20
+ `parameter-default-type-mismatch`, and
21
+ `parameter-default-on-deferred-function` — a deferred function's
22
+ parameters cannot be defaulted, and delegates, actions, closures, and
23
+ overrides carry no defaults at all.
24
+
25
+ ### Changed
26
+
27
+ - Unity export schema version is 18. Exports that declare parameter defaults
28
+ require an SDK that understands them; the SDK's exact-match gate rejects
29
+ mixed versions in either direction.
30
+
3
31
  ## [0.27.1] - 2026-08-12
4
32
 
5
33
  ### Fixed