Commit Graph

321 Commits

Author SHA1 Message Date
Denis Merigoux
af1fbe884c
Encapsulate by default all Web API calls with execute_or_throw_error 2023-09-15 10:29:31 +02:00
Denis Merigoux
fc9e7330ce Remove catala_legifrance 2023-09-13 16:16:46 +02:00
zapashcanon
97e5b15531
replace let _ by let () or add type annotation 2023-09-09 22:02:39 +02:00
Louis Gesbert
4910158aea Reformat 2023-09-01 16:24:27 +02:00
Louis Gesbert
ce97b55c27 Update tests 2023-08-31 18:31:48 +02:00
Aminata-Dev
f8755f0202 Update of autogenerated files 2023-07-12 11:55:11 +02:00
Denis Merigoux
50113586e3 With @aminata-dev update Messages.Content 2023-07-12 11:55:11 +02:00
Louis Gesbert
594541b3f4 Skip rescript on 'make dependencies'
See #486: it's eating up all of the CI processing power
2023-07-10 16:31:34 +02:00
Louis Gesbert
71e3ca21c0 Remove generated files from git
and add proper pointers to the online artifacts
2023-07-10 15:48:11 +02:00
Louis Gesbert
0f9ee2c72e Refacter the main Driver module
- Use separate functions for successive passes in module `Driver.Passes`
- Use other functions for end results printing in module `Driver.Commands`

As a consequence, it is much more flexible to use by plugins or libs and we no
longer need the complex polymorphic variant parameter.

This patch leverages previous changes to use Cmdliner subcommands and
effectively specialises the flags of each Catala subcommand.

Other changes include:

- an attempt to normalise the generic options and reduce the number of global
  references. Some are ok, like `debug` ; some would better be further cleaned up,
  e.g. the ones used by Proof backend were moved to a `Proof.globals` module and
  need discussion. The printer no longer relies on the global languages and prints
  money amounts in an agnostic way.
- the plugin directory is automatically guessed and loaded even in dev setups.
  Plugins are shown by the main `catala` command and listed in `catala --help`
- exception catching at the toplevel has been refactored a bit as well; return
  codes are normalised to follow the manpage and avoid codes >= 128 that are
  generally reserved for shells.

Update tests
2023-07-03 16:42:54 +02:00
Denis Merigoux
5f48e5dac1
Merge branch 'master' into closure_conversion 2023-06-20 11:02:13 +02:00
Denis Merigoux
10cd3b0fc8 Update assets 2023-06-18 21:45:09 +02:00
Aminata-Dev
10d147a8b1 Messages renamed to Message (lighter syntax) 2023-06-13 11:50:56 +02:00
Louis Gesbert
c564e70636 Correctly setup ocolor on all output channels
(and some cleanup of the remaining deps to ANSITerminal)
2023-06-08 12:14:11 +02:00
Denis Merigoux
6b7e927294 Update assets 2023-06-03 18:09:32 +02:00
Denis Merigoux
5d765676b5 Format rather than print 2023-06-02 10:58:03 +02:00
Denis Merigoux
d1210cc0e4 The thing compiles 2023-06-02 10:50:33 +02:00
Denis Merigoux
4e6efe08da All renamings done, on with actual refactor 2023-06-02 10:50:33 +02:00
Denis Merigoux
0faa97b8fc Abstract messages interface 2023-06-02 10:50:29 +02:00
Denis Merigoux
f7d8e924dd
Exclude rescript compiler from formatting 2023-06-01 17:45:33 +02:00
Denis Merigoux
27d2fd6bde
Update locks 2023-05-31 17:31:40 +02:00
Emile Rolley
2ded437e57 pkg(french-law/js): @catala-lang/french-lawv0.8.3-b.3 2023-05-29 13:03:50 +02:00
Emile Rolley
1ffc7a25df pkg(french_law/js): udpate package.json infos 2023-05-29 12:41:16 +02:00
Denis Merigoux
8987d358e7
Implement the rest 2023-05-26 16:54:52 +02:00
Denis Merigoux
6bc4cbd066
New SMIC value: Update assets 2023-05-25 18:48:23 +02:00
Emile Rolley
d1f15db070 publish(french_law/js): v0.8.1 2023-05-24 11:33:01 +02:00
Denis Merigoux
38081245b8
Really fix #466 2023-05-23 16:39:21 +02:00
Denis Merigoux
a00501fffa
Fix typo causing bad parsing 2023-05-23 15:39:41 +02:00
Denis Merigoux
e092679b75
Fixing #466 by reversing exception precedence 2023-05-23 14:12:26 +02:00
Louis Gesbert
209be6b758 Improve integration of marks into the main AST
Two interdependent changes here:
1. Enforce all instances of Shared_ast.gexpr to use the generic type for marks.
   This makes the interfaces a tad simpler to manipulate: you now write
   `('a, 'm) gexpr` rather than `('a, 'm mark) gexpr`.
2. Define a polymorphic `Custom` mark case for use by pass-specific annotations.
   And leverage this in the typing module
2023-05-17 17:37:00 +02:00
Louis Gesbert
fc531777c0 Rework and normalise the Marked interface
The module is renamed to `Mark`, and functions renamed to avoid redundancy:

`Marked.mark` is now `Mark.add`
`Marked.unmark` is now `Mark.remove`
`Marked.map_under_mark` is now simply `Mark.map`
etc.

`Marked.same_mark_as` is replaced by `Mark.copy`, but with the arguments
swapped (which seemed more convenient throughout)

Since a type `Mark.t` would indicate a mark, and to avoid confusion, the type
`Marked.t` is renamed to `Mark.ed` as a shorthand for `Mark.marked` ; this part
can easily be removed if that's too much quirkiness.
2023-05-17 17:37:00 +02:00
Emile Rolley
4637260b1e publish(french_law/js): @catala-lang/french-law 0.8.0 2023-05-07 15:13:22 +02:00
Emile Rolley
16eaf63004 publish(french_law/js): @catala-lang/french-law v0.5.2
+ generate src/french_law.js with `make all` instead of `make generate-website-assets`
2023-05-07 15:13:22 +02:00
Emile Rolley
64079f52e8 fix(french_law/js): move the dune file into src/ 2023-05-07 15:13:22 +02:00
Emile Rolley
6587f18331 publish(french_law/js): @catala-lang/french-law v0.5.1 2023-05-07 15:13:22 +02:00
Emile Rolley
1d9388a339 feat(french_law/js): add a ReScript wrapper for french_law.js 2023-05-07 15:13:22 +02:00
Denis Merigoux
5509239662
Update assets 2023-05-04 19:23:11 +02:00
Denis Merigoux
eae61256ef
Adhere to the GNU standard for error messages 2023-05-04 19:19:19 +02:00
Denis Merigoux
bcd91f5dea
Merge branch 'master' into aides_logement_outre_mer 2023-05-04 11:04:28 +02:00
Denis Merigoux
c6bafe8896
Update assets and tests 2023-05-02 10:58:45 +02:00
Denis Merigoux
3bc5b188ea
french_law.js on git compiled with dev profile 2023-04-28 14:49:45 +02:00
Emile Rolley
8128c47fa4 assets(french_law): udpate the french_law.js lib 2023-04-28 13:41:53 +02:00
Denis Merigoux
e6bccd716d
Fix a Catala program bug thanks to Proof mode! 2023-04-27 18:03:27 +02:00
Denis Merigoux
9b056f3ca1
Update assets and fix errors after rebase 2023-04-27 12:18:50 +02:00
Denis Merigoux
14dd879cc5
Restore tests, update assets 2023-04-27 12:14:27 +02:00
Denis Merigoux
9b06bb66db
Fix tests and restore CI 2023-04-27 12:14:16 +02:00
Denis Merigoux
ada8e4941a
Delete variable EVERYWHERE 2023-04-27 12:13:50 +02:00
Denis Merigoux
eb7be3581a
Update assets 2023-04-21 14:59:02 +02:00
Denis Merigoux
32ee2a0c72
Various small fixes to resolve conversations 2023-04-21 14:54:07 +02:00
Denis Merigoux
4a1efcaa12
Restore tests and update assets 2023-04-18 14:46:25 +02:00