catala/.nix/ninja_utils.nix

31 lines
528 B
Nix
Raw Normal View History

{ lib
, buildDunePackage
, odoc
, re
}:
buildDunePackage rec {
pname = "ninja_utils";
Bump version to 0.8.0 Changelog: --- A lot has been going on, with more than 530 patches and 70 PRs merged since 0.7.0 last summer. In summary: - Quite a lot of syntax improvements and changes. Checkout the latest [cheat-sheet](https://catalalang.github.io/catala/syntax.pdf) for an overview - Allow local `let ... equals ... in ...` definitions - Better error messages and positions throughout - Added the ability to directly call a scope and retrieve its outputs, like a function - Added disambiguation, allowing to access structure fields without specifying the structure type each time - Added automated resolution of operators, allowing e.g. to write just `+` in place of all the type-specific operators `+.`, `+$`, `+@`, `+^`, etc. - More consistent priority for operators. It is no longer allowed to write `a and b or c` without parenthesis. - Added and changed some operators (`date + duration` now allowed either way, `int / int` now returns a decimal, added `duration / duration`) - Added the ability to have variables and functions defined at top-level (outside of any scope). See annex A of the tutorial for details. - Added support for functions with multiple arguments - Some big refactors in the compiler, allowing much better code sharing between the different passes, and making it much easier to extend. Also added the possibility to run the type-checker earlier, etc. - Countless bug-fixes - Improvements to our proof backend with Z3 - A tool to automatically synchronise with the upstream French law from Legifrance
2023-03-08 15:27:16 +03:00
version = "0.8.0"; # TODO parse `catala.opam` with opam2json
minimumOCamlVersion = "4.11";
src = ../.;
2022-09-05 13:47:52 +03:00
duneVersion = "3";
propagatedBuildInputs = [
odoc
re
];
doCheck = true;
meta = with lib; {
homepage = "https://catala-lang.org";
description =
"A collection of utility functions used to generate Ninja build files";
license = licenses.asl20;
maintainers = with maintainers; [ ];
};
}