This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
|
|
@ -0,0 +1 @@
|
|||
(lang dune 2.0)
|
||||
|
|
@ -0,0 +1,190 @@
|
|||
$ mkdir -p partv2/partv1
|
||||
$ mkdir -p partv2/partv1bis
|
||||
$ cat >partv2/partv1/dune.inc <<EOF
|
||||
> ; comment top
|
||||
> (alias
|
||||
> (name "runtest")
|
||||
> (action (run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml)))
|
||||
>
|
||||
> (executable
|
||||
> (name aux)
|
||||
> (c_names cn1 cn2)
|
||||
> (c_flags cf1 cf2)
|
||||
> (cxx_names cxxn1 cxxn2)
|
||||
> (cxx_flags cxxf1 cxxf2))
|
||||
> EOF
|
||||
|
||||
$ cat >partv2/partv1/dune-project <<EOF
|
||||
> (lang dune 1.0)
|
||||
> (name pouet)
|
||||
> EOF
|
||||
|
||||
$ cat >partv2/partv1/dune <<EOF
|
||||
> (include dune.inc)
|
||||
>
|
||||
> (alias
|
||||
> (name runtest)
|
||||
> (action (run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml)))
|
||||
>
|
||||
> ; comment middle
|
||||
> (alias
|
||||
> (action (run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml))
|
||||
> (name runtest)) ; comment end of line
|
||||
>
|
||||
> (alias
|
||||
> (name foo)
|
||||
> (deps opam))
|
||||
>
|
||||
> (executable
|
||||
> (preprocessor_deps (alias foo))
|
||||
> (modes exe))
|
||||
>
|
||||
> (executable
|
||||
> (preprocess no_preprocessing)
|
||||
> (preprocessor_deps (alias foo)))
|
||||
>
|
||||
> (executable
|
||||
> (preprocess future_syntax)
|
||||
> (preprocessor_deps (alias foo))
|
||||
> (name toto))
|
||||
>
|
||||
> (library
|
||||
> (name foolib1)
|
||||
> (no_keep_locs)
|
||||
> (preprocess future_syntax)
|
||||
> (preprocessor_deps (alias foo)))
|
||||
>
|
||||
> (library
|
||||
> (name foolib2)
|
||||
> (preprocessor_deps (alias foo)))
|
||||
> EOF
|
||||
|
||||
$ cat >partv2/partv1bis/dune-project <<EOF
|
||||
> (lang dune 1.11)
|
||||
> (name pouetbis)
|
||||
> (using fmt 1.2 (enabled_for reason))
|
||||
> EOF
|
||||
|
||||
$ dune upgrade
|
||||
Project in dir partv2/partv1 will be upgraded to dune v2.
|
||||
Project in dir partv2/partv1bis will be upgraded to dune v2.
|
||||
Upgrading partv2/partv1bis/dune-project...
|
||||
Upgrading partv2/partv1/dune.inc...
|
||||
Upgrading partv2/partv1/dune...
|
||||
Upgrading partv2/partv1/dune-project...
|
||||
|
||||
Some projects were upgraded to dune v2. Some breaking changes may not
|
||||
have been treated automatically. Here is a list of things you should check
|
||||
to complete the migration:
|
||||
|
||||
- If you use generated dune.inc files you probably should update your
|
||||
generators.
|
||||
- mli only modules must now be explicitly declared. This was previously a
|
||||
warning and is now an error.
|
||||
- Stop installing the `ocaml-syntax-shims` binary. In order to use
|
||||
`future_syntax`, one now need to depend on the `ocaml-syntax-shims`
|
||||
package.
|
||||
- Actions which introduce targets where new targets are forbidden (e.g.
|
||||
preprocessing) are now an error instead of a warning.
|
||||
- Stop installing the `ocaml-syntax-shims` binary. In order to use
|
||||
`future_syntax`, one now need to depend on the `ocaml-syntax-shims`
|
||||
package.
|
||||
- Do not put the `<package>.install` files in the source tree unless `-p` or
|
||||
`--promote-install-files` is passed on the command line
|
||||
- Library names are now validated in a strict fashion. Previously, invalid
|
||||
names
|
||||
would be allowed for unwrapped libraries
|
||||
- Stricter validation of file names in `select`. The file names of
|
||||
conditional
|
||||
sources must match the prefix and the extension of the resultant filename.
|
||||
- Modules filtered out from the module list via the Ordered Set Language must
|
||||
now be actual modules.
|
||||
- Stub names are no longer allowed relative paths. This was previously a
|
||||
warning
|
||||
and is now an error.
|
||||
- In `(diff? x y)` action, require `x` to exist and register a
|
||||
dependency on that file.
|
||||
- `self_build_stubs_archive` was deleted in version 2.0 of the dune
|
||||
language. Use the (foreign_archives ...) field instead.
|
||||
|
||||
v1 -> v2
|
||||
|
||||
$ cat partv2/partv1/dune-project
|
||||
(lang dune 2.0)
|
||||
|
||||
(name pouet)
|
||||
|
||||
(formatting disabled)
|
||||
$ cat partv2/partv1/dune
|
||||
(include dune.inc)
|
||||
|
||||
(rule
|
||||
(alias runtest)
|
||||
(action
|
||||
(run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml)))
|
||||
|
||||
; comment middle
|
||||
|
||||
(rule
|
||||
(action
|
||||
(run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml))
|
||||
(alias runtest))
|
||||
|
||||
; comment end of line
|
||||
|
||||
(alias
|
||||
(name foo)
|
||||
(deps opam))
|
||||
|
||||
(executable
|
||||
(modes exe))
|
||||
|
||||
(executable
|
||||
(modes byte exe)
|
||||
(preprocess no_preprocessing))
|
||||
|
||||
(executable
|
||||
(modes byte exe)
|
||||
(preprocess future_syntax)
|
||||
(preprocessor_deps
|
||||
(alias foo))
|
||||
(name toto))
|
||||
|
||||
(library
|
||||
(name foolib1)
|
||||
(preprocess future_syntax)
|
||||
(preprocessor_deps
|
||||
(alias foo)))
|
||||
|
||||
(library
|
||||
(name foolib2))
|
||||
$ cat partv2/partv1/dune.inc
|
||||
; comment top
|
||||
|
||||
(rule
|
||||
(alias "runtest")
|
||||
(action
|
||||
(run %{bin:ocamlformat} -n 1 -i dir1/dir2/ignore_2.ml)))
|
||||
|
||||
(executable
|
||||
(foreign_stubs
|
||||
(language cxx)
|
||||
(names cxxn1 cxxn2)
|
||||
(flags cxxf1 cxxf2))
|
||||
(foreign_stubs
|
||||
(language c)
|
||||
(names cn1 cn2)
|
||||
(flags cf1 cf2))
|
||||
(modes byte exe)
|
||||
(name aux))
|
||||
|
||||
$ cat partv2/partv1bis/dune-project
|
||||
(lang dune 2.0)
|
||||
|
||||
(name pouetbis)
|
||||
|
||||
(formatting
|
||||
(enabled_for reason))
|
||||
|
||||
Check that the upgrader is idempotent:
|
||||
$ dune upgrade
|
||||
Loading…
Add table
Add a link
Reference in a new issue