@@ -5,6 +5,131 @@ If you're a contributor, please include your CHANGES entry in a file
5
5
` doc/changes/$PR_NAME.md ` . At release time, it will be incoporated into the
6
6
changelog properly.
7
7
8
+ 3.17.0 (2024-11-27)
9
+ -------------------
10
+
11
+ ### Fixed
12
+
13
+ - Show the context name for errors happening in non-default contexts.
14
+ (#10414 , fixes #10378 , @jchavarri )
15
+
16
+ - Correctly declare dependencies of indexes so that they are rebuilt when
17
+ needed. (#10623 , @voodoos )
18
+
19
+ - Don't depend on coq-stdlib being installed when expanding variables
20
+ of the ` coq.version ` family (#10631 , fixes #10629 , @gares )
21
+
22
+ - Error out if no files are found when using ` copy_files ` . (#10649 , @jchavarri )
23
+
24
+ - Re_export dune-section private library in the dune-site library stanza,
25
+ in order to avoid failure when generating and building sites modules
26
+ with implicit_transitive_deps = false. (#10650 , fixes #9661 , @MA0100 )
27
+
28
+ - Expect test fixes: support multiple modes and fix dependencies when there is
29
+ a custom runner (#10671 , @vouillon )
30
+
31
+ - In a ` (library) ` stanza with ` (extra_objects) ` and ` (foreign_stubs) ` , avoid
32
+ double linking the extra object files in the final executable.
33
+ (#10783 , fixes #10785 , @nojb )
34
+
35
+ - Map ` (re_export) ` library dependencies to the ` exports ` field in ` META ` files,
36
+ and vice-versa. This field was proposed in to
37
+ https://discuss.ocaml.org/t/proposal-a-new-exports-field-in-findlib-meta-files/13947 .
38
+ The field is included in Dune-generated ` META ` files only when the Dune lang
39
+ version is >= 3.17.
40
+ (#10831 , fixes #10830 , @nojb )
41
+
42
+ - Fix staged pps preprocessors on Windows (which were not working at all
43
+ previously) (#10869 , fixes #10867 , @nojb )
44
+
45
+ - Fix ` dune describe ` when an executable is disabled with ` enabled_if ` .
46
+ (#10881 , fixes #10779 , @moyodiallo )
47
+
48
+ - Fix an issue where C stubs would be rebuilt whenever the stderr of Dune was
49
+ redirected. (#10883 , fixes #10882 , @nojb )
50
+
51
+ - Fix the URL opened by the command ` dune ocaml doc ` . (#10897 , @gridbugs )
52
+
53
+ - Fix the file referred to in the error/warning message displayed due to the
54
+ dune configuration version not supporting a particular configuration
55
+ stanza in use. (#10923 , @H-ANSEN )
56
+
57
+ - Fix ` enabled_if ` when it uses ` env ` variable. (#10936 , fixes #10905 , @moyodiallo )
58
+
59
+ - Fix exec -w for relative paths with --root argument (#10982 , @gridbugs )
60
+
61
+ - Do not ignore the ` (locks ..) ` field in the ` test ` and ` tests ` stanza
62
+ (#11081 , @rgrinberg )
63
+
64
+ - Tolerate files without extension when generating merlin rules.
65
+ (#11128 , @anmonteiro )
66
+
67
+ ### Added
68
+
69
+ - Make Merlin/OCaml-LSP aware of "hidden" dependencies used by
70
+ ` (implicit_transitive_deps false) ` via the ` -H ` compiler flag. (#10535 , @voodoos )
71
+
72
+ - Add support for the -H flag (introduced in OCaml compiler 5.2) in dune
73
+ (requires lang versions 3.17). This adaptation gives
74
+ the correct semantics for ` (implicit_transitive_deps false) ` .
75
+ (#10644 , fixes #9333 , ocsigen/tyxml #274 , #2733 , #4963 , @MA0100 )
76
+
77
+ - Add support for specifying Gitlab organization repositories in ` source `
78
+ stanzas (#10766 , fixes #6723 , @H-ANSEN )
79
+
80
+ - New option to control jsoo sourcemap generation in env and executable stanza
81
+ (#10777 , fixes #10673 , @hhugo )
82
+
83
+ - One can now control jsoo compilation_mode inside an executable stanza
84
+ (#10777 , fixes #10673 , @hhugo )
85
+
86
+ - Add support for specifying default values of the ` authors ` , ` maintainers ` , and
87
+ ` license ` stanzas of the ` dune-project ` file via the dune config file. Default
88
+ values are set using the ` (project_defaults) ` stanza (#10835 , @H-ANSEN )
89
+
90
+ - Add names to source tree events in performance traces (#10884 , @jchavarri )
91
+
92
+ - Add ` codeberg ` as an option for defining project sources in dune-project
93
+ files. For example, ` (source (codeberg user/repo)) ` . (#10904 , @nlordell )
94
+
95
+ - ` dune runtest ` can now run individual tests with ` dune runtest mytest.t `
96
+ (#11041 , @Alizter ).
97
+
98
+ - Wasm_of_ocaml support (#11093 , @vouillon )
99
+
100
+ - Add a ` coqdep_flags ` field to the ` coq ` field of the ` env ` stanza, and to the
101
+ ` coq.theory ` stanza, allowing to configure ` coqdep ` flags. (#11094 ,
102
+ @rlepigre )
103
+
104
+ ### Changed
105
+
106
+ - Remove all remnants of the experimental ` patch-back-source-tree ` . (#10771 ,
107
+ @rgrinberg )
108
+
109
+ - Change the preset value for author and maintainer fields in the
110
+ ` dune-project ` file to encourage including emails. (#10848 , @punchagan )
111
+
112
+ - Tweak the preset value for tags in the ` dune-project ` file to hint at topics
113
+ not having a special meaning. (#10849 , @punchagan )
114
+
115
+ - Change some colors to improve readability in light-mode terminals
116
+ (#10890 , @gridbugs )
117
+
118
+ - Forward the linkall flag to jsoo in whole program compilation as well (#10935 , @hhugo )
119
+
120
+ - Configurator uses ` pkgconf ` as pkg-config implementation when available
121
+ and forwards it the ` target ` of ` ocamlc -config ` . (#10937 , @pirbo )
122
+
123
+ - Enable Dune cache by default. Add a new Dune cache setting
124
+ ` enabled-except-user-rules ` , which enables the Dune cache, but excludes
125
+ user-written rules from it. This is a conservative choice that can avoid
126
+ breaking rules whose dependencies are not correctly specified. This is the
127
+ current default. (#10944 , #10710 , @nojb , @ElectreAAS )
128
+
129
+ - Do not add ` dune ` dependency in ` dune-project ` when creating projects with
130
+ ` dune init proj ` . The Dune dependency is implicitely added when generating
131
+ opam files (#11129 , @Leonidas-from-XIV )
132
+
8
133
3.16.1 (2024-10-30)
9
134
-------------------
10
135
0 commit comments