Commit Graph

1003 Commits

Author SHA1 Message Date
Jeremie Dimino fae08c79be Allow to set the concurrency level from the config file 2018-02-07 12:11:27 +00:00
Jeremie Dimino 3347d4d59f Regenerate doc/jbuild 2018-02-07 12:11:27 +00:00
Jeremie Dimino 31855cdeda Changelog 2018-02-07 11:41:33 +00:00
Jérémie Dimino 0570e09f9a
Add a configuration file and a quiet mode (#490) 2018-02-07 11:38:21 +00:00
Jérémie Dimino 4e4f651b37
Don't stop on the first error (#477)
Before, jbuilder used to stop its execution after an error was
encountered. Now it continues until all branches have been explored.

To implement this feature, Future was rewritten as a Fiber module with
a simpler semantic.

This patch contains various other refactorings.
2018-02-06 14:39:03 +00:00
Jérémie Dimino d4c9eb6ba0
Do not pass -I <stdlib-dir> (#488) 2018-02-06 11:49:44 +00:00
Jérémie Dimino 80c0bfc879
Split calls to ocamldep (#486)
Instead of doing a single call to ocamldep, do one per file. This is
needed to support "menhir --infer".

This should also make compilation go further when there are files with
syntax errors.
2018-02-06 11:48:04 +00:00
Rudi Grinberg a1c02df143
Build_system.prefix_rules (#479)
* Build_system.prefix_rules

Add a way to implicitly add a build prefix to all rules added by the given
function

* Make sure that on_load_dir callbacks handle the prefix right

* Make sure that prefix_rules prefixes don't contain targets

* Move prefix validation to user facing function

* document prefix_rules
2018-02-05 18:38:42 +08:00
Jeremie Dimino f19a1d1fc3 jbuilder-universe --> dune-universe 2018-02-02 13:39:42 +00:00
Rudi Grinberg 8cc868e642
Merge pull request #478 from rgrinberg/bootstrap-g
bootstrap with -g
2018-02-02 17:17:43 +08:00
Rudi Grinberg 0f04e70c0e bootstrap with -g 2018-02-02 14:48:29 +08:00
Rudi Grinberg 092248e220
Merge pull request #476 from Armael/typos
Fix a couple typos in README.md
2018-02-01 22:56:12 +08:00
Armaël Guéneau d1286e73ae Fix a couple typos in README.md 2018-02-01 14:05:52 +01:00
Jérémie Dimino f618096d6e
Add a test for dependency cycles (#475) 2018-02-01 13:05:32 +00:00
Rudi Grinberg e61142e885
Merge pull request #460 from ocaml/fix-promote-tests-on-osx
Fix bad interaction between promotion and incremental builds on OSX
2018-02-01 20:15:18 +08:00
Rudi Grinberg 6dc08a19b9 Update date for beta17 2018-02-01 18:59:00 +08:00
Rudi Grinberg 73e5f1fe85
Merge pull request #474 from ocaml/fix-469
Fix #469
2018-02-01 18:50:02 +08:00
Jeremie Dimino f17e61dd3a Fix #469 2018-02-01 10:17:51 +00:00
Rudi Grinberg cbe881334c
Merge pull request #473 from rgrinberg/fix-468
Make target_hint not fail when target is Path.root
2018-02-01 17:53:53 +08:00
Jeremie Dimino 143145b19c Remove old stuff about updated files
This dates from the time we were using timestamps for incremental
compilation.
2018-02-01 08:23:36 +00:00
Jeremie Dimino b9c4dd2339 Remove files from the digest cache when promoting them.
This is to avoid problems with incremental compilation on OSX.

Fix #456
2018-02-01 08:23:25 +00:00
Rudi Grinberg 56c6f3bee7 Make target_hint not fail when target is Path.root
fix #468
2018-02-01 16:22:11 +08:00
Rudi Grinberg 5881f4301d
Merge pull request #471 from rgrinberg/jsoo-install-tests
Add tests of js_of_ocaml flag
2018-02-01 16:03:14 +08:00
Rudi Grinberg 3646e554a9 Add tests of js_of_ocaml flag
Make sure that adding js runtime files reflects correctly in the META and
.install files
2018-02-01 04:31:18 +08:00
Rudi Grinberg 00623728e1
Merge pull request #466 from rgrinberg/lib_db-check-dir
Verify that scope by path lookup uses valid dirs
2018-01-31 20:59:22 +08:00
Rudi Grinberg 3bf3c91105 Verify that scope by path lookup uses valid dirs
The dirs must be sub directories of the anonymous_scope path. Which is the build
root of the context of the lib db.
2018-01-31 19:18:55 +08:00
Rudi Grinberg 51b9164ff1 Update date for beta 17 2018-01-31 15:37:55 +08:00
Rudi Grinberg e788dd8a7f
Merge pull request #465 from rgrinberg/odoc-scope-bug
Fix scoping related odoc rules
2018-01-31 15:22:19 +08:00
Rudi Grinberg 4272d34fa6 Fix scoping related odoc rules
the lib component isn't just a library name. It can contain the scope as well
which we should resolve correctly
2018-01-31 03:43:39 +08:00
Rudi Grinberg a80d70aa26
Merge pull request #462 from rgrinberg/scope-ppx-bug-new-scopes
Fix scoping related ppx bug
2018-01-31 00:55:41 +08:00
Rudi Grinberg 721c80273a Update ppx scope tests 2018-01-31 00:48:58 +08:00
Rudi Grinberg a29f144bc1 Use correct scopes for generating ppx preprocessors
Use the intenral scope whenever there's an internal lib in the preprocessors.
Otherwise use the external scope.
2018-01-31 00:48:58 +08:00
Rudi Grinberg dcb3845fc4 Associate the empty scope name to the anonymous scope 2018-01-31 00:48:58 +08:00
Rudi Grinberg 1013db83b5 Add Lib.public_name 2018-01-31 00:48:58 +08:00
Rudi Grinberg ce65e27045 Add Lib_db.Scope.name 2018-01-31 00:48:58 +08:00
Rudi Grinberg 91f6a67850 Add ability to look up scopes by external name 2018-01-31 00:48:57 +08:00
Jérémie Dimino 963bb6c044
Always use a bytecode boot.exe (#463)
Fix #446
2018-01-30 14:51:51 +00:00
Rudi Grinberg f6cefa40cc
Merge pull request #451 from rgrinberg/scope-refactor
Scope Refactor
2018-01-30 19:25:53 +08:00
Rudi Grinberg 672120b3b8 Introduce explicit scopes for Lib_db
This commit introduces explicit scopes in Lib_db and refactors dune to use these
scopes where appropriate. Briefly, they are appropriate whenever we previously
used a directory to resolve the scope with Lib_db.find ~dir and friends. So a
Lib_db.Scope.t replaces a (dir, Lib_db.t) pair.

This allows to be explicit about the anonymous and external scope. Which is
important when building ppx drivers.

We also harmonize the error handling with the Findlib module. In both cases
we use a flat string list of errors. Rather than the more specific type we had
before in Findlib.
2018-01-30 19:21:40 +08:00
Rudi Grinberg a3ff5e5f30
Merge pull request #368 from rgrinberg/fanout-cleanup
replace double fanout with fanout3
2018-01-29 23:16:06 +08:00
Rudi Grinberg a02b6472e7 replace double fanout with fanout3 2018-01-29 23:13:02 +08:00
Rudi Grinberg 065d2fd9e5
Merge pull request #458 from rgrinberg/remove-dir-from-record-lib-deps
Remove the path argument from Record_lib_deps
2018-01-29 23:05:03 +08:00
Rudi Grinberg aeb186fd3b Remove the path argument from Record_lib_deps
it can always be inferred from when we can construct the rule. But to do that,
we have to pass it along to internal_rule.
2018-01-29 22:53:14 +08:00
Rudi Grinberg a5a0c4c3ae
Merge pull request #454 from rgrinberg/mention-rename-readme
Mention the jbuilder -> dune rename in readme
2018-01-27 16:05:16 +08:00
David Allsopp b6eec7a33d Correct promote-until-clean atom 2018-01-26 16:51:28 +00:00
Rudi Grinberg eeef5bcbd2 Mention the jbuilder -> dune rename in readme 2018-01-26 15:26:00 +08:00
Jérémie Dimino 437211f74f
Expose the promote mode (#437) 2018-01-25 19:07:46 +00:00
Rudi Grinberg 39afb77ee1
Merge pull request #452 from rgrinberg/findlib-exn
Avoid catching wildcard exceptions when calling Findlib.find
2018-01-26 01:07:10 +08:00
Rudi Grinberg 27e31a3196 Avoid catching wildcard exceptions when calling Findlib.find
But to avoid making the catch statements verbose, move all findlib exceptions to
a variant.
2018-01-25 22:00:52 +08:00
Jérémie Dimino c066efd196
Add the transitive dependencies of used ppx rewriters (#450) 2018-01-25 11:22:50 +00:00