1.12.0 #2271
yannham
announced in
Announcements
1.12.0
#2271
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Version 1.12 (2025-06-04)
Nickel 1.12 includes the long-awaited addition a field punning, in the form of include expressions, which makes it easy to re-use a variable as a record field without running into infinite recursion errors or clumsy renamings. If
foois a symbol in the environment (e.g. a variable defined earlier or a function parameter), one can now write{ include foo }instead of having to writelet foo_ = foo in { foo = foo_ }to put it in a field with the same name. See the syntax section of the manual for more details.The Nickel CLI now accepts any supported configuration format as file input, making the
nickelbinary a possible merge engine for JSON, YAML or TOML configurations. for example,nickel export conf1.json conf2.toml --format YAML --output result.yamlwill merge a JSON configuration and a TOML configuration into a YAML one using Nickel's merge semantics. Together with the just added--apply-contractargument, it's also possible to use Nickel as a non-invasive validator for existing configurations without needing to convert them to Nickel first. For example,nickel eval config.json --apply-contract schema.nclwill validateconfig.jsonagainst the Nickel contractschema.ncl.Core language
LSP
Tooling
--apply-contractargument to the CLI by @yannham in [Feat] Add--apply-contractargument to the CLI #2266Fixes
New Contributors
Full Changelog: 1.11.0...1.12.0
This discussion was created from the release 1.12.0.
Beta Was this translation helpful? Give feedback.
All reactions