Etienne Millon
4823795fd1
Use let%map for applicative code
...
This converts easy instances of applicative code. The rewrite rule is
generally speaking:
```ocaml
e1 >>= pat1 ->
e2 >>= pat2 ->
e3 >>| pat3 ->
r
```
to:
```ocaml
let%map pat1 = e1
and pat2 = e2
and pat3 = e3
in
r
```
Signed-off-by: Etienne Millon <me@emillon.org>
2018-07-31 10:25:58 +02:00
Rudi Grinberg
835a44ff1e
Make name and names fields optional when public_name or public_names are present ( #1041 )
...
Make name field optional when public_name is specified
When name is omitted, it will be defaulted to public_name
This feature is 1.1 only.
2018-07-31 10:15:31 +02:00
Rudi Grinberg
5c93619b47
Merge branch 'master' into jsoo-cctx
2018-07-31 08:56:35 +02:00
Rudi Grinberg
024438e3cc
Represent env_nodes using a record rather than a list
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg
bd860d29e7
Pass the workspace env to context creation
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg
61d33114ee
Bump latest version to 1.1
...
And make this version a pre-req for the env field in workspaces
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg
8cda4349fa
Use toplevel env stanza from workspace file
...
This should be the top most env stanza when it's available
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg
200f9d0a52
Add toplevel env stanza to workspace files
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg
4697a7f9f4
Refactor jsoo rules to use Compilation_context
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:08 +02:00
Rudi Grinberg
a898448510
Fix typo in comment
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:08 +02:00
Rudi Grinberg
7eb7c6e21a
Simplify module OSL evaluation
...
Use Ordered_set_lang.Make_loc to automatically book keep the location for us.
Also cut down on some module name to string conversions that was just making the
code noisy. The fake_modules detection has been changed to hide the mutabiility
from the main algorithm
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 14:33:24 +02:00
Rudi Grinberg
4970448edf
Add Module.uncapitalize
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 14:33:24 +02:00
Rudi Grinberg
093cefc58b
Add Loc preserving version of Ordered_set_lang.Make
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 14:33:24 +02:00
Rudi Grinberg
50eacb0690
Add signature to Modules_field_evaluator
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 14:33:24 +02:00
Jeremie Dimino
8d5bd6819f
Small refactoring of jbuild_load.ml
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-24 15:14:14 +02:00
Rudi Grinberg
845d3a4713
Update latest syntax to 1.1
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-21 20:39:13 +02:00
Rudi Grinberg
2b72c80fbc
Use correct version for error message
...
Error.deleted_in would use the current version rather than the deleted version
for the error message
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-20 14:02:58 +02:00
Rudi Grinberg
5835e5b64c
Merge pull request #1035 from diml/move-pp-files-back
...
Move back .pp files to the source directory
2018-07-19 23:00:27 +02:00
Rudi Grinberg
eb0cb1d4c8
Merge pull request #1033 from diml/i-must-not-segfault
...
Exceptions are the little-death that brings total obliteration
2018-07-19 22:40:12 +02:00
Jeremie Dimino
213e093b07
Move back .pp files to the source directory
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-19 15:59:29 +01:00
Jeremie Dimino
0ad983c729
You get a quote from Dune if you can make Dune crash
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-19 12:22:18 +01:00
Rudi Grinberg
1f0bee0cf7
Rename base to common
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-19 13:11:42 +02:00
Rudi Grinberg
14030a8ad5
Remove unused open
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-19 12:14:25 +02:00
Rudi Grinberg
655c10164d
Use syntax extension for parsing stanza
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
78e18716ce
Rename Shared_stanaza to Dune_env
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
78786e09d4
Initialize env_node from Super_context.create
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
a82e783f15
re-arrange short match to go to the top
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
4860461ba3
Pun inherit_from field
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
b12517debb
Move Env stanza to Shared_stanza module
...
To break dependency cycles. This shared_stanza module doesn't have any
dependencies on actions.
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
4769f9df9f
Plumb through env node
...
workspace -> context -> super context
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
61d7e49e07
Move env stanza parsing to Env.t
...
This will be necessary to allow this stanza in Workspace
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
20fe7a9d20
Refactor workspace type
...
Make the opam workspace include the shared fields from a base type
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:34:18 +02:00
Rudi Grinberg
c7bd8bc556
Move sandboxed back to Action
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:27:09 +02:00
Rudi Grinberg
1b71d57bba
Move promotion to own module
...
It's not really related to actions
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:27:09 +02:00
Rudi Grinberg
bf2d842075
Split executable parts of Action into Action_exec
...
This is required for breaking the dep cycle between the context and the Action module
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 14:27:09 +02:00
Rudi Grinberg
621c666610
Remove extra is standard check that is already done in Osl.eval
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-18 13:12:50 +02:00
Jeremie Dimino
5dd218c0b8
Switch jbuild.ml to applicative parsing and let%map
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-18 11:02:43 +01:00
Jeremie Dimino
6b0a02bec9
Remove one functor
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-18 10:58:45 +01:00
Jeremie Dimino
881540662a
Move all code dealing with scanning directories into its own module
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-18 10:58:45 +01:00
Rudi Grinberg
2690415242
Manual dependency sort in super_context
...
Code is re-arranged so that evaling the OSL can access the Expander module
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-17 23:10:48 +02:00
Rudi Grinberg
e421884bd4
Add signature to Super_context.Env
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-17 23:10:48 +02:00
Jeremie Dimino
d94a7fe869
Simplify Build_system.eval_glob
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-17 13:29:49 +01:00
Jeremie Dimino
02ed099693
Make it work during bootstrap
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-17 11:37:22 +01:00
Jeremie Dimino
9734b2e6d0
Make the preprocessor more generic
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-17 11:37:22 +01:00
Jeremie Dimino
bad0294db3
Add a textual preprocessor implementing a let%map syntax
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-17 11:37:22 +01:00
Jeremie Dimino
c52d0676e8
Fix #1019
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-16 14:04:07 +01:00
Jeremie Dimino
9f7fa5ec68
Fix a typo
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-16 14:04:07 +01:00
Jeremie Dimino
c3008af5cf
Fix #1008
...
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-16 08:58:27 +01:00
Rudi Grinberg
2ec21d7b94
Pass extra params to with_expander
...
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-13 15:30:55 +02:00
Rudi Grinberg
62e7684f3b
Make the types of expanders uniform everywhere
...
No labels, and consistent parameter order
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-13 15:30:55 +02:00