dune/CHANGES.org

3.7 KiB

1.0+beta5

  • When ocamlfind is present in the PATH, do not attempt to call opam config var lib
  • Better error message when a jbuild file in OCaml syntax forgets to call Jbuild_plugin.V*.send
  • Added examples of use

1.0+beta4 (20/03/2017)

  • Improve error messages about invalid/missing pkg.opam files
  • Ignore all errors while running ocamlfind printconf path

1.0+beta3 (15/03/2017)

  • Print optional dependencies as optional in the output of jbuilder external-lib-deps --missing
  • Added a few forms to the DSL:

    • with-{stderr,outputs}-to
    • ignore-{stdout,stderr,outputs}
  • Added ${null} which expands to /dev/null on Unix and NUL on Windows
  • Improve the doc generated by odoc for wrapped libraries
  • Improve the error reported when an installed package depends on a library that is not installed
  • Documented (files_recursively_in ...)
  • Added black box tests
  • Fix a bug where jbuilder would crash when there was no <package>.opam file
  • Fixed a bug where .merlin files where not generated at the root of the workspace (#20)
  • Fix a bug where a (glob_files ...) would cause other dependencies to be ignored
  • Fix the generated ppx(...) line in META files
  • Fix (optional) when a ppx runtime dependency is not available (#24)
  • Do not crash when an installed package that we don't need has missing dependencies (#25)

1.0+beta2 (10/03/2017)

  • Simplified the rules for finding the root of the workspace as the old ones were often picking up the home directory. New rules are:

    • look for a jbuild-workspace file in parent directories
    • look for a jbuild-workspace* file in parent directories
    • use the current directory
  • Fixed the expansion of ${ROOT} in actions
  • Install quick-start.org in the documentation directory
  • Add a few more things in the log file to help debugging

1.0+beta1 (07/03/2017)

  • Added a manual
  • Support incremental compilation
  • Switched the CLI to cmdliner and added a build command (#5, Rudi Grinberg)
  • Added a few commands:

    • runtest
    • install
    • uninstall
    • installed-libraries
    • exec: execute a command in an environment similar to what you would get after jbuilder install
  • Removed the build-package command in favor of a --only-packages option that is common to all commands
  • Automatically generate .merlin files (#2, Richard Davison)
  • Improve the output of jbuilder, in particular don't mangle the output of commands when using -j N with N > 1
  • Generate a log in _build/log
  • Versioned the jbuild format and added a first stable version. You should now put (jbuilder_version 1) in a jbuild file at the root of your project to ensure forward compatibility
  • Switch from ppx_driver to ocaml-migrate-parsetree.driver. In order to use ppx rewriters with Jbuilder, they need to use ocaml-migrate-parsetree.driver
  • Added support for aliases (#7, Rudi Grinberg)
  • Added support for compiling against multiple opam switch simultaneously by writing a jbuild-worspace file
  • Added support for OCaml 4.02.3
  • Added support for architectures that don't have natdynlink
  • Search the root according to the rules described in the manual instead of always using the current directory
  • extended the action language to support common actions without using a shell:

    • (with-stdout-to <file> <DSL>)
    • (copy <src> <dst>)

  • Removed all implicit uses of bash or the system shell. Now one has to write explicitely (bash "...") or (system "...")
  • Generate meaningful versions in META files
  • Strengthen the scope of a package. Jbuilder knows about package foo only in the sub-tree starting from where foo.opam lives

0.1.alpha1 (04/12/2016)

First release