|
| 1 | +Version 1.10 (2025-02-11) |
| 2 | +========================= |
| 3 | + |
| 4 | +Nickel 1.10 includes various bug fixes and quality of life improvements. Nickel |
| 5 | +now comes with more prebuilt binary packages (adding Windows and arm-based |
| 6 | +MacOS), is now built with LTO (Link-Time Optimization), and comes with official |
| 7 | +python bindings to be published on PyPI together with this release. |
| 8 | + |
| 9 | +Under the hood, a lot of work has been devoted to internal refactorings in order |
| 10 | +to prepare the implementation of a bytecode compiler and virtual machine |
| 11 | +(RFC007). Those changes shouldn't have any noticeable effects currently for |
| 12 | +users. |
| 13 | + |
| 14 | +Breaking changes |
| 15 | +---------------- |
| 16 | + |
| 17 | +* Record freezing ([#2113](https://github.com/tweag/nickel/pull/2113), |
| 18 | + [#2131](https://github.com/tweag/nickel/pull/2131)). To fix an unsound and |
| 19 | + unexpected behavior appearing when first altering a record with dictionary |
| 20 | + operations (`std.record.remove`, `std.record.insert` or `std.record.update` - |
| 21 | + see [#1877](https://github.com/tweag/nickel/issues/1877) and then overriding it, |
| 22 | + the aforementioned stdlib operations now **freeze** the returned record, |
| 23 | + which removes the possibility of performing further recursive overriding. |
| 24 | + |
| 25 | + Typically, the record returned by one of those operations is a static |
| 26 | + dictionary instead of a record with recursive dependencies. While you can |
| 27 | + still override specific fields through merging, the information about internal |
| 28 | + dependencies is lost and their reverse dependencies won't be updated |
| 29 | + automatically. |
| 30 | + |
| 31 | +Documentation |
| 32 | +------------- |
| 33 | + |
| 34 | +* Mention any_of as alternative to enum by @yannham in [#2119](https://github.com/tweag/nickel/pull/2119) |
| 35 | +* Link to the CLI chapter in the manual intro by @yannham in [#2144](https://github.com/tweag/nickel/pull/2144) |
| 36 | + |
| 37 | +Stdlib |
| 38 | +------ |
| 39 | + |
| 40 | +* Add the package std module by @jneem in [#2104](https://github.com/tweag/nickel/pull/2104) |
| 41 | +* Fix empty capture groups in regexes by @jneem in [#2109](https://github.com/tweag/nickel/pull/2109) |
| 42 | +* Add `filter_map`, `dedup` and some variants to the stdlib by @yannham in [#2120](https://github.com/tweag/nickel/pull/2120) |
| 43 | + |
| 44 | +LSP |
| 45 | +--- |
| 46 | + |
| 47 | +* Fix crash in NLS by @jneem in [#2093](https://github.com/tweag/nickel/pull/2093) |
| 48 | +* Fix NLS crash when typechecking parse errors by @jneem in [#2154](https://github.com/tweag/nickel/pull/2154) |
| 49 | + |
| 50 | +Tooling |
| 51 | +------- |
| 52 | + |
| 53 | +* Add support for packages to nickel-lang-core by @jneem in [#2094](https://github.com/tweag/nickel/pull/2094) |
| 54 | +* Add support warnings by @jneem in [#2086](https://github.com/tweag/nickel/pull/2086) |
| 55 | +* Fixed `Debug` impl of `EvalOrDeserError` printing entire source of files by @rben01 in [#2118](https://github.com/tweag/nickel/pull/2118) |
| 56 | +* Do deep eval for doctests by @jneem in [#2110](https://github.com/tweag/nickel/pull/2110) |
| 57 | +* pass thru feature `nix-experimental` by @KiaraGrouwstra in [#2132](https://github.com/tweag/nickel/pull/2132) |
| 58 | +* Add github action for packaging and publishing python packages to PyPI (#1592) by @vlcek in [#2126](https://github.com/tweag/nickel/pull/2126) |
| 59 | +* Include a release artifact for nls by @jneem in [#2139](https://github.com/tweag/nickel/pull/2139) |
| 60 | +* Update rustyline to 15.0 by @neuschaefer in [#2142](https://github.com/tweag/nickel/pull/2142) |
| 61 | +* Add LTO to static builds by @jneem in [#2147](https://github.com/tweag/nickel/pull/2147) |
| 62 | +* Add import_paths parameter to Python bindings by @yannham in [#2157](https://github.com/tweag/nickel/pull/2157) |
| 63 | + |
1 | 64 | Version 1.9 (2024-11-12)
|
2 | 65 | ========================
|
3 | 66 |
|
|
0 commit comments