<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coq/dune-project, branch master</title>
<subtitle>The formal proof system</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/'/>
<entry>
<title>[build] Split stdlib to it's own opam package.</title>
<updated>2021-03-03T15:06:14+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-06-22T15:52:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=ab98d847d237af3cd0e46edef42218be65cfc98f'/>
<id>ab98d847d237af3cd0e46edef42218be65cfc98f</id>
<content type='text'>
We introduce a new package structure for Coq:

- `coq-core`: Coq's OCaml tools code and plugins
- `coq-stdlib`: Coq's stdlib [.vo files]
- `coq`: meta-package that pulls `coq-{core,stdlib}`

This has several advantages, in particular it allows to install Coq
without the stdlib which is useful in several scenarios, it also open
the door towards a versioning of the stdlib at the package level.

The main user-visible change is that Coq's ML development files now
live in `$lib/coq-core`, for compatibility in the regular build we
install a symlink and support both setups for a while.

Note that plugin developers and even `coq_makefile` should actually
rely on `ocamlfind` to locate Coq's OCaml libs as to be more robust.

There is a transient state where we actually look for both
`$coqlib/plugins` and `$coqlib/../coq-core/plugins` as to support
the non-ocamlfind plus custom variables.

This will be much improved once #13617 is merged (which requires this
PR first), then, we will introduce a `coq.boot` library so finally
`coqdep`, `coqchk`, etc... can share the same path setup code.

IMHO the plan should work fine.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We introduce a new package structure for Coq:

- `coq-core`: Coq's OCaml tools code and plugins
- `coq-stdlib`: Coq's stdlib [.vo files]
- `coq`: meta-package that pulls `coq-{core,stdlib}`

This has several advantages, in particular it allows to install Coq
without the stdlib which is useful in several scenarios, it also open
the door towards a versioning of the stdlib at the package level.

The main user-visible change is that Coq's ML development files now
live in `$lib/coq-core`, for compatibility in the regular build we
install a symlink and support both setups for a while.

Note that plugin developers and even `coq_makefile` should actually
rely on `ocamlfind` to locate Coq's OCaml libs as to be more robust.

There is a transient state where we actually look for both
`$coqlib/plugins` and `$coqlib/../coq-core/plugins` as to support
the non-ocamlfind plus custom variables.

This will be much improved once #13617 is merged (which requires this
PR first), then, we will introduce a `coq.boot` library so finally
`coqdep`, `coqchk`, etc... can share the same path setup code.

IMHO the plan should work fine.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge PR #13640: Add ounit2 to with-test dependencies</title>
<updated>2021-02-11T20:06:44+00:00</updated>
<author>
<name>coqbot-app[bot]</name>
</author>
<published>2021-02-11T20:06:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=b1532790555b122b5bb3091405595b4b5586483e'/>
<id>b1532790555b122b5bb3091405595b4b5586483e</id>
<content type='text'>
Reviewed-by: ejgallego
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed-by: ejgallego
</pre>
</div>
</content>
</entry>
<entry>
<title>Add ounit2 to with-test dependencies</title>
<updated>2020-12-16T08:38:03+00:00</updated>
<author>
<name>Lasse Blaauwbroek</name>
</author>
<published>2020-12-16T08:38:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=44c2f05102533e3656f369f2eed16ad2730ef775'/>
<id>44c2f05102533e3656f369f2eed16ad2730ef775</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add build dependency of conf-ptyon-3 to coq-doc</title>
<updated>2020-12-16T08:35:39+00:00</updated>
<author>
<name>Lasse Blaauwbroek</name>
</author>
<published>2020-12-16T08:14:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=537c8f2c38d5e3751adcc402e70010c1e7e9e9bd'/>
<id>537c8f2c38d5e3751adcc402e70010c1e7e9e9bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] [opam] Disable dune subst in opam files until the upstream fix is propagated</title>
<updated>2020-12-04T16:24:20+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2020-12-04T16:20:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=92ea6137a2fc2a70b5e26cfb154d0372974f93b2'/>
<id>92ea6137a2fc2a70b5e26cfb154d0372974f93b2</id>
<content type='text'>
`dune subst` is broken on unicode files, see
https://github.com/ocaml/dune/pull/3879 and
https://github.com/ocaml/dune/pull/3879

This is a frequent problem, introduced by
https://github.com/coq/coq/pull/13374 , so disabling pending on dune
2.8 being released.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`dune subst` is broken on unicode files, see
https://github.com/ocaml/dune/pull/3879 and
https://github.com/ocaml/dune/pull/3879

This is a frequent problem, introduced by
https://github.com/coq/coq/pull/13374 , so disabling pending on dune
2.8 being released.
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] [opam] Generate opam files automatically using Dune.</title>
<updated>2020-11-15T16:08:52+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-06-11T01:49:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=061998b6db89480629ad41d33295a97f8ad84719'/>
<id>061998b6db89480629ad41d33295a97f8ad84719</id>
<content type='text'>
- closes #12376 : dune version is now consistent as suggested
- cc #12858 : coqide and coqide-server do no depend on ocamlfind
  when built this way.
- closes #13372 : more precision in the license identifier
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- closes #12376 : dune version is now consistent as suggested
- cc #12858 : coqide and coqide-server do no depend on ocamlfind
  when built this way.
- closes #13372 : more precision in the license identifier
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] [stdlib] Build the standard library natively with Dune.</title>
<updated>2020-04-11T21:45:18+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-03-22T05:33:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=5db591257070734439dd5550995d6d3f497256c0'/>
<id>5db591257070734439dd5550995d6d3f497256c0</id>
<content type='text'>
This completes a pure Dune bootstrap of Coq.

There is still the question if we should modify `coqdep` so it does
output a dependency on `Init.Prelude.vo` in certain cases.

TODO: We still double-add `theories` and `plugins` [in coqinit and in
Dune], this should be easy to clean up.

Setting `libs_init_load_path` does give a correct build indeed;
however we still must call this for compatibility?
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This completes a pure Dune bootstrap of Coq.

There is still the question if we should modify `coqdep` so it does
output a dependency on `Init.Prelude.vo` in certain cases.

TODO: We still double-add `theories` and `plugins` [in coqinit and in
Dune], this should be easy to clean up.

Setting `libs_init_load_path` does give a correct build indeed;
however we still must call this for compatibility?
</pre>
</div>
</content>
</entry>
<entry>
<title>[fmt] [dune] Add ocamlformat configuration.</title>
<updated>2019-12-13T13:15:36+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-12-08T13:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=4407f71ee45f98499b7ae8b533614dde5b877795'/>
<id>4407f71ee45f98499b7ae8b533614dde5b877795</id>
<content type='text'>
For now we don't enable it in any source file, neither on dune files.

`lint-repository` has been updated so it will check `dune build @fmt`
returns 0.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For now we don't enable it in any source file, neither on dune files.

`lint-repository` has been updated so it will check `dune build @fmt`
returns 0.
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] Update to dune language version 2.0</title>
<updated>2019-12-04T13:14:58+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-11-24T18:57:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=1d454c7721a429490165d1147313c061164b0b66'/>
<id>1d454c7721a429490165d1147313c061164b0b66</id>
<content type='text'>
This is the minimal set of changes requires for Coq to build under 2.0
mode. We may likely take advantage of some more new features.

Note that Dune 2.0 requires OCaml &gt;= 4.06.0, OPAM allows to use Dune
in older versions as it will install a secondary compiler.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the minimal set of changes requires for Coq to build under 2.0
mode. We may likely take advantage of some more new features.

Note that Dune 2.0 requires OCaml &gt;= 4.06.0, OPAM allows to use Dune
in older versions as it will install a secondary compiler.
</pre>
</div>
</content>
</entry>
<entry>
<title>[dune] Move to Dune 1.10, use coq.pp directive.</title>
<updated>2019-08-22T00:37:33+00:00</updated>
<author>
<name>Emilio Jesus Gallego Arias</name>
</author>
<published>2019-06-11T01:49:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/coq/commit/?id=1c34e2244e77a0759bf7a5b6925643de8fe133b5'/>
<id>1c34e2244e77a0759bf7a5b6925643de8fe133b5</id>
<content type='text'>
We use the `(coq.pp ...)` dune directive which will produce correct
error messages for `.mlg` files.

Unfortunately we cannot yet use the automatic opam generation features
of Dune 1.10, as this does require a fully native Dune build.

Dune 1.6-1.10 has quite a few other improvements that could be used by
Coq, for example for promote modes.

I have fixed a couple of documentation issues. `Drop` and `ocamldebug`
have been tested in this version.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We use the `(coq.pp ...)` dune directive which will produce correct
error messages for `.mlg` files.

Unfortunately we cannot yet use the automatic opam generation features
of Dune 1.10, as this does require a fully native Dune build.

Dune 1.6-1.10 has quite a few other improvements that could be used by
Coq, for example for promote modes.

I have fixed a couple of documentation issues. `Drop` and `ocamldebug`
have been tested in this version.
</pre>
</div>
</content>
</entry>
</feed>
