Skip to content

Commit

Permalink
Bump version to 0.8.0
Browse files Browse the repository at this point in the history
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
  • Loading branch information
AltGr committed Mar 8, 2023
1 parent 8840607 commit deb12d2
Show file tree
Hide file tree
Showing 20 changed files with 6,622 additions and 6,398 deletions.
2 changes: 1 addition & 1 deletion .nix/catala.nix
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

buildDunePackage {
pname = "catala";
version = "0.7.0"; # TODO parse `catala.opam` with opam2json
version = "0.8.0"; # TODO parse `catala.opam` with opam2json

minimumOCamlVersion = "4.11";

Expand Down
2 changes: 1 addition & 1 deletion .nix/clerk.nix
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

buildDunePackage {
pname = "clerk";
version = "0.7.0"; # TODO parse `catala.opam` with opam2json
version = "0.8.0"; # TODO parse `catala.opam` with opam2json

minimumOCamlVersion = "4.11";

Expand Down
2 changes: 1 addition & 1 deletion .nix/french_law.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

buildDunePackage {
pname = "french_law";
version = "0.7.0"; # TODO parse `catala.opam` with opam2json
version = "0.8.0"; # TODO parse `catala.opam` with opam2json

minimumOCamlVersion = "4.11";

Expand Down
2 changes: 1 addition & 1 deletion .nix/ninja_utils.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

buildDunePackage rec {
pname = "ninja_utils";
version = "0.7.0"; # TODO parse `catala.opam` with opam2json
version = "0.8.0"; # TODO parse `catala.opam` with opam2json

minimumOCamlVersion = "4.11";

Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -39,5 +39,5 @@ abstract: >-
faithful-by-construction algorithms from
legislative texts.
license: Apache-2.0
version: 0.7.0
version: 0.8.0
date-released: "2022-03-08"
2 changes: 1 addition & 1 deletion catala.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis:
"Compiler and library for the literate programming language for tax code specification"
description:
Expand Down
2 changes: 1 addition & 1 deletion catala_legifrance.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis: "Linter that queries the LégiFrance API to check for correctness and expiration of Catala programs."
maintainer: ["[email protected]"]
authors: ["Denis Merigoux"]
Expand Down
2 changes: 1 addition & 1 deletion clerk.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis:
"Build system for Catala, a specification language for tax and social benefits computation rules"
description:
Expand Down
2 changes: 1 addition & 1 deletion compiler/catala_utils/cli.ml
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ let set_option_globals options : unit =
disable_counterexamples := options.disable_counterexamples;
avoid_exceptions_flag := options.avoid_exceptions

let version = "0.7.0"
let version = "0.8.0"

let info =
let doc =
Expand Down
2 changes: 1 addition & 1 deletion doc/catala-dev-dependencies.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis: "Virtual package listing the requirements for a complete Catala dev environment"
maintainer: ["[email protected]"]
authors: [
Expand Down
2 changes: 1 addition & 1 deletion dune-project
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

(name catala)

(version 0.7.0)
(version 0.8.0)

(generate_opam_files false)

Expand Down
2 changes: 1 addition & 1 deletion french_law.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis: "A collection of algorithms and computations defined by French law"
description:
"This library contains the implementations of algorithmic portions of French law. The library source code was generated from Catala annotations of the relevant portions of the French law, see https://catala-lang.org"
Expand Down
6,936 changes: 3,470 additions & 3,466 deletions french_law/js/french_law.js

Large diffs are not rendered by default.

3,069 changes: 1,580 additions & 1,489 deletions french_law/ocaml/law_source/aides_logement.ml

Large diffs are not rendered by default.

144 changes: 90 additions & 54 deletions french_law/ocaml/law_source/aides_logement_api_web.ml

Large diffs are not rendered by default.

390 changes: 195 additions & 195 deletions french_law/ocaml/law_source/allocations_familiales.ml

Large diffs are not rendered by default.

15 changes: 9 additions & 6 deletions french_law/ocaml/law_source/allocations_familiales_api_web.ml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2,149 changes: 1,119 additions & 1,030 deletions french_law/python/src/aides_logement.py

Large diffs are not rendered by default.

291 changes: 146 additions & 145 deletions french_law/python/src/allocations_familiales.py

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion ninja_utils.opam
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
opam-version: "2.0"
version: "0.7.0"
version: "0.8.0"
synopsis:
"A collection of utility functions used to generate Ninja build files"
description:
Expand Down

0 comments on commit deb12d2

Please sign in to comment.