Commit Graph

71 Commits

Author SHA1 Message Date
Louis Gesbert
30297b27b8 Add dune rule to build tests
This allows a new magic command: `dune test -w`
2022-05-25 18:33:20 +02:00
Louis Gesbert
9a95a3554c Add support for backend plugins using dynlink 2022-05-19 10:40:02 +02:00
Emile Rolley
144704f7fb refactor(compiler): add the Utils.File module
+ Adds wrapper functions for formatter of file/out_channel
	and uses it in both the compiler and the clerk drivers.
2022-05-19 10:04:34 +02:00
Louis Gesbert
faa5b32638 Merge remote-tracking branch 'origin/master' into allocations_logement 2022-05-12 15:22:17 +02:00
Louis Gesbert
f9fc1a8e8b Formatting: sync with master 2022-05-12 15:10:55 +02:00
Louis Gesbert
f17875f90e Formatting: some other personal preferences 2022-05-11 16:25:49 +02:00
Louis Gesbert
74c5629153 Formatting: reduce extra match-case indentation
2 is plenty enough, esp. for nested matches :)
2022-05-11 16:25:20 +02:00
Louis Gesbert
fa3693d813 Formatting: disable deprecated "smart" fun-decl option 2022-05-11 16:22:56 +02:00
Louis Gesbert
6cb0d581a6 Workaround some ocamlformat crashes
These files were not reformatted!
2022-05-11 16:21:07 +02:00
Louis Gesbert
6837af4e80 Upgrade Cmdliner dep 2022-05-09 11:39:18 +02:00
Denis Merigoux
a72944a3ec
Merge branch 'master' into allocations_logement 2022-05-05 14:27:48 +02:00
Denis Merigoux
78d5dfc194
Deprecated functions 2022-05-05 14:17:27 +02:00
Denis Merigoux
db35b09202
Use Re functions instead of Re.Pcre
Co-authored-by: Louis Gesbert <louis.gesbert@ocamlpro.com>
2022-05-05 14:14:44 +02:00
Denis Merigoux
f571ce9979
Rename tests correcly [skip ci] 2022-04-25 14:34:49 +02:00
Denis Merigoux
b3fae97f94
Correctly parse the -j option in Clerk 2022-04-14 16:56:10 +02:00
Denis Merigoux
171c3966f5
Pass some make flags to Clerk 2022-04-14 11:47:18 +02:00
Denis Merigoux
9d05dad3fb
Passing all tests! 2022-04-04 15:56:45 +02:00
Emile Rolley
7c1f4cc02d refactor: group common functions related to backend_option in the Cli module 2022-03-08 15:52:26 +01:00
Denis Merigoux
5bd66142a6
Big reformatting
ocamlformat 0.19.0 -> 0.20.1
100 -> 80 columns per line
Reestablished @emilerolley's smart fun break
2022-03-08 15:03:14 +01:00
Louis Gesbert
12ec65601d Use format strings directly in debug/error/log functions
This avoids many intermediate calls to e.g. `Format.asprintf`; should result in
some cases in "more correct" use of `Format`¹, avoid the computation of unused
debug strings, and make the code more readable.

¹ for `Format` to work as expected, all intermediate calls need to go through
it. Some cases of formatting to an intermediate string then printing through Format
again are still present, but this makes the situation better.
2022-03-08 13:04:27 +01:00
Denis Merigoux
c5d63148f8
Fix dune build -p catala @runtest 2022-03-08 11:28:42 +01:00
Emile Rolley
54e71bf3e3 fix(clerk): sort subdirectory names 2022-03-07 18:02:12 +01:00
Denis Merigoux
b9f46afcd7
Revert ocamlformat changes; creates too much conflict in other files
Changes in autoformatting should be made in a separate PR in a time where
there isn't too much pending PRs for the OCaml files
2022-03-07 11:09:47 +01:00
Emile Rolley
b0829148c7 format: add break-fun-decl in .ocamlformat 2022-02-26 19:53:56 +01:00
Emile Rolley
48118f46bb test(clerk): add test cases 2022-02-26 19:49:13 +01:00
Emile Rolley
f277f272d1 test(clerk): setup alcotest + two first tests 2022-02-25 20:30:05 +01:00
Emile Rolley
15bb52e37a fix(clerk): change the -o argument to a string instead of a flag
-> catch the Sys_error if the file can't be created.
2022-02-25 20:03:58 +01:00
Emile Rolley
f4ab6f5a96 build(clerk/opam): add a clerk opam package and a clerk.driver library to test 2022-02-25 18:14:07 +01:00
Emile Rolley
73576548c6 docs: update authors fields 2022-02-25 16:49:22 +01:00
Emile Rolley
bc7160d009 feat(clerk): add the output flag 2022-02-25 14:31:37 +01:00
Emile Rolley
ee6eb717c1 test(clerk): remove irelevant tests 2022-02-25 12:42:00 +01:00
Emile Rolley
3a6450b42f Merge branch 'master' into refactor-clerk-w-ninja 2022-02-25 12:31:16 +01:00
Emile Rolley
4a83360220 refactor(clerk): change to_string to format functions 2022-02-25 12:30:29 +01:00
Emile Rolley
da6ed6b044 docs(clerk): add documentation about clerk and the Ninja_utils module 2022-02-24 14:05:05 +01:00
Emile Rolley
64820a0b20 docs(clerk): update the README file 2022-02-22 18:59:07 +01:00
Emile Rolley
abeea09d7f feat(clerk): add support for multiple inputs
+ change the Makefile 'tests' rule to call only one time clerk
2022-02-22 18:06:12 +01:00
Alain
73fe2f876c Revert "Merge pull request #196 from CatalaLang/fixup-cmdliner"
fix cmdliner to 1.0.4

This reverts commit 8e1a1ccb63, reversing
changes made to 4812830a25.
2022-02-21 14:53:48 +01:00
Emile Rolley
8214ad2ce6 fix(clerk): catch the exception and print a warning msg when a unexistant file is found (e.g. symbolic links) 2022-02-21 14:52:03 +01:00
Emile Rolley
351c7346d6 refactor(clerk): factorize functions for building ninja rules
+ add "test cases" for Lcalc and Scalc backends.
	+ add support for Scalc and Lcalc and sort by alphabetical
	  order their type declarations.
2022-02-17 16:45:49 +01:00
Emile Rolley
7a4ef62ebe refactor(clerk): add Catala backend in the name of the output build 2022-02-17 14:56:45 +01:00
Emile Rolley
bbf4b540eb test(clerk): add 'tests' for clerk 2022-02-15 20:46:33 +01:00
Emile Rolley
e58c6c52b6
Merge branch 'master' into refactor-clerk-w-ninja 2022-02-15 20:36:15 +01:00
Emile Rolley
a9f949ffc9 refactor(clerk): add ninja support for remaining catala backends
TODO:
	 * Refactoring
	 * Manage scope + output backends
2022-02-15 20:32:17 +01:00
Denis Merigoux
b25f64c3ae
Improve printing 2022-02-14 17:01:34 +01:00
Denis Merigoux
ccd90bcbf6
Display nice finish message when ending 2022-02-14 14:43:38 +01:00
Emile Rolley
9f9b12578b refactor(clerk): print a result message when tests succeed 2022-02-14 14:00:40 +01:00
Denis Merigoux
f2dd642041
Restore Dcalc backend for clerk as it does not seem to produce bugs anymore? 2022-02-14 12:03:35 +01:00
Denis Merigoux
cf8557a7aa
Merge branch 'master' into emile_ninja 2022-02-14 11:56:34 +01:00
Emile Rolley
4fe85a6b05 refactor(clerk): add support to reset output with ninja
- removes unit testing setup for Ninja_utils as
	  it's not useful right now.
2022-02-14 11:49:48 +01:00
Emile Rolley
5417a64556 fix(clerk): add the Catala command to the build output name 2022-02-11 16:24:32 +01:00