Hi everyone!
A slightly delayed update (still trying to hold that biweekly schedule, and the last one was already two weeks ago) as I got sick during the past weeks and had to take some time off. But back to business:
Nix
Nix 2.5 release
@edolstra released Nix 2.5.
This is a somewhat exciting (and hopefolly boring) release, as it is the first one following the tentative 6 weeks schedule.
Developer workflow
- A mild frustration for some Nix hackers was that although Nix builds both with gcc and clang, the flake was hardcoding the use of gcc on Linux and clang on OSX. This was frustrating in particular because of some really nifty tools (
clangd
,libfuzzer
) that rely on LLVM, and as such weren’t easily available to Linux developers. This is now fixed since @edolstra merged a (somewhat old) PR by @thufschmitt allowing to choose the stdenv when runningnix develop
(#4996) - In an attempt to make the hydra checks more useful − in particular to make it visible when they were failing as there’s currently no notification − @thufschmitt created a scheduled github action polling hydra to get the status of the last evaluation (#5691). Although this is far from ideal so far (in particular it’s only notifying @edolstra and is spamming him as long as a build is failing which isn’t very nice), this is already a first step.
Flakes
- @edolstra fixed a regression preventing plain files to be used as flake inputs (#5771).
- @thufschmitt fixed a bug causing the autocompletion engine to try completing flakes even if the feature isn’t enabled (#5667)
Misc
-
@balsoft, @ravendii and a few others collaborated to add a
:log
command to the repl (#5666) - While doing some hairy Nixpkgs work, @infinisil noticed a nice potential performance improvement by making
lib.groupBy
a primop, which he did in #5715. - @yorickVP did a nice round of bugfixing,
- @thufschmitt fixed a regression in the REPL causing re-assignments to a variable to be ignored (#5752).
Nickel
- The main event of the past few weeks is a meeting that @yannham held with a few other Tweagers to discuss the small things that would need to be settled before the release. You can look at the notes and the original agenda. This was also an occasion to properly define the milestone for a first release.
- @avi-d-coder and @ysndr added some glue and documentation to make the lsp server easier to use (#505 and #506)
- @yannham started writing a proper introduction to the language (#485)
- @yannham added support for curried operator syntax (#501)
- A long awaited feature, @yannham started implementing the recursive overriding of records (#491) (kinda similar to the merge of NixOS options)
And that’s all, folks