Conversation
fa85a54 to
5827743
Compare
|
@ejgallego Many fixes for the Sites features. |
| | n -> loop Scan0 ~pos:0 ~end_of_data:n | ||
|
|
||
| let test_file ~src () = | ||
| let ic = Io.open_in src in |
There was a problem hiding this comment.
This should be lazy IMO. It's cleaner to have all the side effects inside fiber.
There was a problem hiding this comment.
Could you be more specific, I'm a little lost with Io and Fiber. I would have though that we should not use Io inside fibers but we do it a lot. What should I use?
There was a problem hiding this comment.
Consider this:
let test_src = test_file ~src () in
let* test_src = test_src ..You're opening the channel after the first let, but clean up is reserved until the bind.
I would prefer if all the side effects occur after the bind.
There was a problem hiding this comment.
I changed also copy_file to respect this.
| ~doc: | ||
| "Make the binaries relocatable (the installation directory can \ | ||
| be moved).") | ||
| and+ create_install_files = |
There was a problem hiding this comment.
If it's not actually installing, why does it need to be under the install subcommand? Can't this be done just by building a target.
There was a problem hiding this comment.
We need to know the install directory for the substitution. It is known only by the install command.
| Fiber.return ()) | ||
| (fun () -> copy ~conf ~input_file:src ~input:(input ic) ~output:(output oc)) | ||
|
|
||
| let test ~input = |
There was a problem hiding this comment.
This function is too similar to copy. The common code should be factored out.
There was a problem hiding this comment.
Indeed done using a mode argument.
5827743 to
fbf5bc3
Compare
Signed-off-by: François Bobot <francois.bobot@cea.fr>
Signed-off-by: François Bobot <francois.bobot@cea.fr>
Fixes ocaml#4415 Signed-off-by: François Bobot <francois.bobot@cea.fr>
instead of Path.Build.t Signed-off-by: François Bobot <francois.bobot@cea.fr>
Signed-off-by: François Bobot <francois.bobot@cea.fr>
- Substitute the files in an intermediate directory if needed
- Backward compatible
Fixes ocaml#4198 ocaml#4212
Signed-off-by: François Bobot <francois.bobot@cea.fr>
Signed-off-by: François Bobot <francois.bobot@cea.fr>
Fixes ocaml#4325 Signed-off-by: François Bobot <francois.bobot@cea.fr>
Signed-off-by: François Bobot <francois.bobot@cea.fr>
a name matching "$ocaml_keyword_*" is converted into name^"_"
Fixes ocaml#4219
Signed-off-by: François Bobot <francois.bobot@cea.fr>
So that opening and closing be evaluated directly Signed-off-by: François Bobot <francois.bobot@cea.fr>
12cddbd to
29427c8
Compare
|
@rgrinberg , would you mind re-reviewing this? Ideally we should get it merged soon as to have it in 2.9 |
|
@bobot , 2.9 ping |
|
Sorry I missed the approval of @rgrinberg . |
|
@bobot , sorry for not looking at this closely before, but it seems to me that this PR landed in 2.9 but not in Note that:
|
…ator, dune-private-libs, dune and dune-build-info (2.9.0) CHANGES: - Add `(enabled_if ...)` to `(mdx ...)` (ocaml/dune#4434, @emillon) - Add support for instrumentation dependencies (ocaml/dune#4210, fixes ocaml/dune#3983, @nojb) - Add the possibility to use `locks` with the cram tests stanza (ocaml/dune#4480, @voodoos) - Allow to set up merlin in a variant of the default context (ocaml/dune#4145, @TheLortex, @voodoos) - Add `(package ...)` to `(mdx ...)` (ocaml/dune#4691, fixes ocaml/dune#3756, @emillon) - Handle renaming of `coq.kernel` library to `coq-core.kernel` in Coq 8.14 (ocaml/dune#4713, @proux01) - Fix generation of merlin configuration when using `(include_subdirs unqualified)` on Windows (ocaml/dune#4745, @nojb) - Fix bug for the install of Coq native files when using `(include_subdirs qualified)` (ocaml/dune#4753, @ejgallego) - Allow users to specify install target directories for `doc` and `etc` sections. We add new options `--docdir` and `--etcdir` to both Dune's configure and `dune install` command. (ocaml/dune#4744, fixes ocaml/dune#4723, @ejgallego, thanks to @JasonGross for reporting this issue) - Fix issue where Dune would ignore `(env ... (coq (flags ...)))` declarations appearing in `dune` files (ocaml/dune#4749, fixes ocaml/dune#4566, @ejgallego @rgrinberg) - Disable some warnings on Coq 8.14 and `(lang coq (>= 0.3))` due to the rework of the Coq "native" compilation system (ocaml/dune#4760, @ejgallego) - Fix a bug where instrumentation flags would be added even if the instrumentatation was disabled (@nojb, ocaml/dune#4770) - Fix ocaml/dune#4682: option `-p` takes now precedence on environement variable `DUNE_PROFILE` (ocaml/dune#4730, ocaml/dune#4774, @bobot, reported by @dra27 ocaml/dune#4632) - Fix installation with opam of package with dune sites. The `.install` file is now produced by a local `dune install` during the build phase (ocaml/dune#4730, ocaml/dune#4645, @bobot, reported by @kit-ty-kate ocaml/dune#4198) - Fix multiple issues in the sites feature (ocaml/dune#4730, ocaml/dune#4645 @bobot, reported by @Lelio-Brun ocaml/dune#4219, by @Kakadu ocaml/dune#4325, by @toots ocaml/dune#4415)
…ator, dune-private-libs, dune and dune-build-info (2.9.0) CHANGES: - Add `(enabled_if ...)` to `(mdx ...)` (ocaml/dune#4434, @emillon) - Add support for instrumentation dependencies (ocaml/dune#4210, fixes ocaml/dune#3983, @nojb) - Add the possibility to use `locks` with the cram tests stanza (ocaml/dune#4480, @voodoos) - Allow to set up merlin in a variant of the default context (ocaml/dune#4145, @TheLortex, @voodoos) - Add `(package ...)` to `(mdx ...)` (ocaml/dune#4691, fixes ocaml/dune#3756, @emillon) - Handle renaming of `coq.kernel` library to `coq-core.kernel` in Coq 8.14 (ocaml/dune#4713, @proux01) - Fix generation of merlin configuration when using `(include_subdirs unqualified)` on Windows (ocaml/dune#4745, @nojb) - Fix bug for the install of Coq native files when using `(include_subdirs qualified)` (ocaml/dune#4753, @ejgallego) - Allow users to specify install target directories for `doc` and `etc` sections. We add new options `--docdir` and `--etcdir` to both Dune's configure and `dune install` command. (ocaml/dune#4744, fixes ocaml/dune#4723, @ejgallego, thanks to @JasonGross for reporting this issue) - Fix issue where Dune would ignore `(env ... (coq (flags ...)))` declarations appearing in `dune` files (ocaml/dune#4749, fixes ocaml/dune#4566, @ejgallego @rgrinberg) - Disable some warnings on Coq 8.14 and `(lang coq (>= 0.3))` due to the rework of the Coq "native" compilation system (ocaml/dune#4760, @ejgallego) - Fix a bug where instrumentation flags would be added even if the instrumentatation was disabled (@nojb, ocaml/dune#4770) - Fix ocaml/dune#4682: option `-p` takes now precedence on environement variable `DUNE_PROFILE` (ocaml/dune#4730, ocaml/dune#4774, @bobot, reported by @dra27 ocaml/dune#4632) - Fix installation with opam of package with dune sites. The `.install` file is now produced by a local `dune install` during the build phase (ocaml/dune#4730, ocaml/dune#4645, @bobot, reported by @kit-ty-kate ocaml/dune#4198) - Fix multiple issues in the sites feature (ocaml/dune#4730, ocaml/dune#4645 @bobot, reported by @Lelio-Brun ocaml/dune#4219, by @Kakadu ocaml/dune#4325, by @toots ocaml/dune#4415)
Should fix:
The package c is not found#4325 by adding location inSection_with_sitedune build -p <pkg> @installdune install -p <pkg> --create-install-files <pkg>which substitute the files if needed into an intermediate directorygenerate_sites_modulecreates issues when used with multiple packages #4415 by delaying the computation of the content of the generated file