Commit Graph

291 Commits

Author SHA1 Message Date
Etienne Millon a611205ff8 Initial implementation of `dune fmt`
This is a first draft with three main limitations:

- it is language agnostic, so it does not know about field names
- it is not able to parse comments
- it does not break long lines

The formatting rules are pretty simple:

- lists composed only of atoms, quoted strings, templates, and
  singletons are displayed on a single line
- other lists are displayed with a line break after each element
- an empty line is inserted between toplevel stanzas

The CLI is pretty light: it can either read a file or standard input,
and fix a file in place. In addition, the command is named
`unstable-fmt` for now, until some guarantees are given.

Closes #940

Signed-off-by: Etienne Millon <me@emillon.org>
2018-08-20 10:21:47 +02:00
Rudi Grinberg abf04b033a Fix syntax in menhir docs
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-08-19 19:24:35 +03:00
Rudi Grinberg a04f77dca1 Update configurator to use dune syntax
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-08-19 19:03:19 +03:00
Dani Dickstein a398bd7765
Update project-layout-specification.rst
I think ``dune-project`` had an extra backtick.

Signed-off-by: Dani Dickstein <daniel.dickstein@gmail.com>
2018-08-14 14:30:19 -04:00
Jeremie Dimino 0e6dda2032 Adapt the design of multi directory libraries
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-08-05 21:58:21 +03:00
Etienne Millon 00f895bb09 Quickstart: use short test stanza
In addition, document convention for expect tests.

Signed-off-by: Etienne Millon <me@emillon.org>
2018-08-03 11:49:28 +00:00
Jérémie Dimino b05e28569e
Add support for staged ppx rewriters such as ones using the typer (#1080)
Fix #193

Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-08-02 12:11:59 +01:00
Jérémie Dimino 282c0b3c41
Add support for multi directory libraries and executables (#1034)
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-08-01 15:23:26 +01:00
Rudi Grinberg 58bfe376e1
Merge pull request #1074 from rgrinberg/clarify-opam
Fix opam build instructions in usage.rst
2018-08-01 09:52:51 +02:00
Rudi Grinberg 1b553d56c6 Fix osl link jsoo page
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-31 21:33:07 +02:00
Rudi Grinberg e3a7e68c37 Fix duplicate label in manual
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-31 21:30:15 +02:00
Rudi Grinberg 5094d58774 Fix opam build instructions in usage.rst
They should include dune subst when pinning as well

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-31 21:00:08 +02:00
Rudi Grinberg 3d9612f95c Add enabled_if to aliases/tests
This field controls whether the alias/test will be run or not. Boolean
expressions are defined using the Blang.t type. This type represents simple
boolean expressions that become useful when we allow to interpolate variables
into them.

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-31 10:59:35 +02:00
Rudi Grinberg ad0b376aeb
Merge pull request #1064 from rgrinberg/jsoo-manual
Move Jsoo content to its own page
2018-07-30 19:03:07 +02:00
Rudi Grinberg 89a381530d
Merge branch 'master' into workspace-env-2 2018-07-30 17:07:41 +02:00
cedlemo 7af0af94ed doc: remove %{first-dep} in quick-start.rst
Signed-off-by: Cédric Le Moigne <cedlemo@gmx.com>
2018-07-30 15:30:55 +01:00
Marek Kubica ed5f2c5b40 ocamlyacc does not require parens either
Signed-off-by: Marek Kubica <marek@xivilization.net>
2018-07-30 15:01:43 +01:00
Marek Kubica 371c863a32 Parens not required
Closes #1054
Closes #1056

Signed-off-by: Marek Kubica <marek@xivilization.net>
2018-07-30 15:01:43 +01:00
Marek Kubica f58bca1d06 ocamllex does not need the list of modules to be in a list
Noticed this issue while finding another issue in #1056.

Signed-off-by: Marek Kubica <marek@xivilization.net>
2018-07-30 15:01:43 +01:00
Rudi Grinberg 2836a3c6b0 Document the workspace level env stanza
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 15:12:17 +02:00
Rudi Grinberg 3615b280f8 Move Jsoo content to its own page
Jsoo is about as independent as other features which have their own section

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-30 11:47:35 +02:00
Hongchang Wu 3b875f0937 Update documentation for tests
Signed-off-by: Hongchang Wu <wuhc85@gmail.com>
2018-07-29 13:01:40 -04:00
Justin Wood 69b8b8e9ba Update documentation for executable stanza format
Signed-off-by: Justin Wood <justin.k.wood@protonmail.com>
2018-07-13 09:07:48 -04:00
Rijnard van Tonder d04e73e0ef remove outdated paragraph about dune-project file
Signed-off-by: Rijnard van Tonder <rvantonder@gmail.com>
2018-07-12 10:48:59 +01:00
Jérémie Dimino d27377166b
Rename %{root} to %{workspace_root} (#993)
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-10 15:08:38 +01:00
Etienne Millon 1d594ce5a3 Fix typos in source code
Signed-off-by: Etienne Millon <etienne@cryptosense.com>
2018-07-10 13:05:58 +01:00
Xavier Clerc 64b3b0e384 Fix the doc for `install_c_headers`.
Signed-off-by: Xavier Clerc <xclerc@janestreet.com>
2018-07-10 12:39:30 +01:00
Rudi Grinberg 3866134ca3 Add docs for named deps
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-10 01:32:26 +07:00
Rudi Grinberg 5e55f3d6c5 Add some missing parens to the manual
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-10 01:32:26 +07:00
Rudi Grinberg 03f134567d Update documentation for new binding names
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-10 01:32:26 +07:00
Jeremie Dimino 38c0d56ba8 Name the intput file for action preprocessors
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-10 01:32:26 +07:00
Jeremie Dimino df15d30845 Completely get rid of first-dep
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-10 01:32:26 +07:00
Rudi Grinberg 54ff98b36d Rename ROOT to root
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-08 16:33:18 +07:00
Rudi Grinberg 9d7107d831 Add renamed vars to migration
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-08 16:33:18 +07:00
Jérémie Dimino 3348b6a913
Adapt the behavior of dune subst for dune projects (#960)
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-08 09:51:16 +01:00
Rudi Grinberg c4545fce18 Get rid of indexed lookups for deps
Have %{first-dep} to replace %{<}

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-06 18:46:10 +07:00
Rudi Grinberg 204b21f4fb Rename %{<} to %{deps[0]} and implement %{deps[i]}
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-06 18:46:09 +07:00
Rudi Grinberg a317fb0606 Rename %{@} to %{targets}
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-06 18:45:43 +07:00
Rudi Grinberg 7707872e54
Test Stanza Proposal (#822)
Add tests and test stanza

These stanzas are used to easily define tests. If a test has a corresponding .expect file, it will be immediately considered as an expect test.
2018-07-06 18:43:31 +07:00
Rudi Grinberg 35f111981f
Merge branch 'master' into dune-gen-meta 2018-07-06 15:39:43 +07:00
Rudi Grinberg 0f607c39fb
More Manual Updates (#955)
This migrates the rest of the manual to use dune
2018-07-06 15:10:59 +07:00
Rudi Grinberg a8bd8ffa44 Rename JBUILDER_GEN to DUNE_GEN
Technically, we still support JBUILDER_GEN

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-06 15:10:13 +07:00
Rudi Grinberg 4c0594caff
Port over the dune file description page to dune (#953) 2018-07-05 22:09:56 +07:00
Rudi Grinberg 11890d2b8d Port quick start to dune syntax
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-05 16:19:51 +07:00
Etienne Millon 35ff6466de Remove path-no-dep syntax
See #944

Signed-off-by: Etienne Millon <etienne@cryptosense.com>
2018-07-04 10:39:57 +02:00
Etienne Millon 628914fe28 Rename path to dep in dune files
See #842

Signed-off-by: Etienne Millon <etienne@cryptosense.com>
2018-07-03 15:59:52 +02:00
Jérémie Dimino e6a5ef9508
Add the lib_root and libexec_root install sections (#947)
Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2018-07-03 10:49:18 +01:00
Rudi Grinberg b85cc53b43
Merge branch 'master' into update-migration 2018-07-03 00:11:29 +07:00
Rudi Grinberg 1385e2046b s/jbuilder/dune/ in sphinx config
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-02 18:39:23 +07:00
Rudi Grinberg 8ed1b32ed2 Update table of renamed vars in docs
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2018-07-02 18:37:13 +07:00