profile
viewpoint

ocaml/merlin 1361

Context sensitive completion for OCaml in Vim and Emacs

ocaml/dune 1159

A composable build system for OCaml.

inhabitedtype/httpaf 489

A high performance, memory efficient, and scalable web server written in OCaml

ahrefs/atd 205

Static types for JSON APIs

ocaml-community/cppo 81

C-style preprocessor for OCaml

ocaml/vim-ocaml 76

Vim runtime files for OCaml

andrenth/ocaml-stdint 64

Various signed and unsigned integers for OCaml

ocaml-community/biniou 33

Extensible binary data format, like JSON but faster

inhabitedtype/bigstringaf 30

Bigstring intrinsics and fast blits based on memcpy/memmove

ocaml-community/easy-format 28

Pretty-printing library for OCaml

issue commentocaml/dune

Bad ppx annotations are not reported

Jeremie's description is what I had in mind. In particular, setting individual warnings in dune. Passing the dune-project version to ppxlib also sounds like an interesting approach.

yminsky

comment created time in 3 hours

pull request commentocaml/dune

chore(stdune): rename stdune-unstable to stdune

Personally I don't feel the need for a reorganization of the current layout, but I am not against the proposed changes either. I am just not sure what would be the benefits.

The benefit is thus:

  • dune runtest <pkg dir> can now run all the tests for a particular package
  • In the future, we can add a more implicit mode where package fields can be dropped where they can be inferred from the directory.
  • The interpretation of --only-packages can be formalized.
rgrinberg

comment created time in 4 hours

pull request commentocaml/dune

Allow to configure link_flags in env

PS: needs CHANGES + docs.

hhugo

comment created time in 4 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

Allow to configure link_flags in env

 build: [     name     "-j"     jobs+    "--promote-install-files=false"     "@install"     "@runtest" {with-test}     "@doc" {with-doc}   ]+  ["dune" "install" "-p" name "--create-install-files" name]

I wonder if it's because your bootstrapped version of dune is old? If not, then we should really fix this issue.

hhugo

comment created time in 4 hours

PullRequestReviewEvent

push eventocaml/dune

Paolo G. Giarrusso

commit sha 28351103645da46648fd87a1a0ac4d4667430d41

dune-config docs for jobs: document autodetection Autodetection was implemented in 53202d0a09 for #530, but this piece of doc was not updated. Signed-off-by: Paolo G. Giarrusso <p.giarrusso@gmail.com>

view details

push time in 4 hours

PR merged ocaml/dune

dune-config docs for jobs: document autodetection

Autodetection was implemented in 53202d0a09 for #530, but this piece of doc was not updated.

Signed-off-by: Paolo G. Giarrusso p.giarrusso@gmail.com

+1 -1

0 comment

1 changed file

Blaisorblade

pr closed time in 4 hours

Pull request review commentocaml/dune

line edits for instrumentation.rst

 Here ``<names>`` is a comma-separated list of instrumentation backends. For exam     $ dune build --instrument-with bisect_ppx,landmarks -This will instruct Dune to activate the given backend globally, i.e. in all+This will instruct Dune to activate the given backend globally, i.e., in all defined build contexts. -It is also possible to enable instrumentation backends via the-``dune-workspace`` file, either globally, or for specific builds contexts.+It's also possible to enable instrumentation backends via the+``dune-workspace`` file, either globally or for specific builds contexts. -To enable an instrumentation backend globally, you can type in your+To enable an instrumentation backend globally, type the following in your ``dune-workspace`` file:  .. code:: scheme -   (lang dune 3.0)+   (lang Dune 3.0)

should be reverted. This indented block is the literal contents of a dune-workspace file. It has its own conventions and in this case it requires dune to be lowercased.

christinerose

comment created time in 14 hours

PullRequestReviewEvent

issue commentocaml/dune

@doc "Couldn't find the following modules: Stdlib"

I suppose we aren't specifying dependencies on external libraries correctly. cc @jonludlam

vphantom

comment created time in 14 hours

issue commentocaml/dune

Bad ppx annotations are not reported

If the check is enabled on the ppxlib side, will that not break a bunch of old (and not possibly not so old) projects? Seems a bit aggressive to me.

What about treating ppxlib the same way as we treat ocaml's warnings? Basically freeze the set based on the dune project version.

yminsky

comment created time in 14 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for foreign-code.rst

 follows:     (name bar)     (foreign_archives foo)) -Then, whenever you use the ``bar`` library, you will also be able to+Then, whenever you use the ``bar`` library, you'll also be able to use C functions from ``libfoo``.  Limitations -----------  When using the sandboxing method, the following limitations apply: -- the build of the foreign code will be sequential-- the build of the foreign code won't be incremental+- The build of the foreign code will be sequential+- The build of the foreign code won't be incremental -both these points could be improved. If you are interested in helping+Both these points could be improved. If you're interested in helping make this happen, please let the Dune team know and someone will guide you. -Real example+Real Example ------------  The `re2 project <https://github.com/janestreet/re2>`_ uses this-method to build the re2 C library. You can look at the file+method to build the ``re2`` C library. You can look at the file

Same here. re2 is does not appear in source code so it should be single quoted as in:

`re2` C library

or just left alone as re2.

christinerose

comment created time in 15 hours

Pull request review commentocaml/dune

line editing for foreign-code.rst

 demonstrates how to access the bound C library functions and values: From here, one only needs to run ``dune build ./foo.exe`` to generate the stubs and build and link the example ``foo.exe`` program. -Complete information about the ctypes combinators used above is available at-the ctypes_ project.+Complete information about the ``ctypes`` combinators used above is available at

Since ctypes isn't an identifier that appears in source code, it should just be Ctypes.

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for foreign-code.rst

 demonstrates how to access the bound C library functions and values: From here, one only needs to run ``dune build ./foo.exe`` to generate the stubs and build and link the example ``foo.exe`` program. -Complete information about the ctypes combinators used above is available at-the ctypes_ project.+Complete information about the ``ctypes`` combinators used above is available at+the ``ctypes_ project``.

I believe this destroys the link to the Ctypes project.

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for foreign-code.rst

 Your example ``function_description.ml`` file is:    open Ctypes -  (* This Types_generated module is an instantiation of the Types-     functor defined in the type_description.ml file. It's generated by+  (* This Types_generated module is an instantiation of the ``Types``+     functor defined in the ``type_description.ml`` file. It's generated by

In the indented section, we are actually writing OCaml source. So ReStructured Text's conventions no longer apply. Therefore the quoting does nothing here and should be removed.

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for documentation.rst

 be named ``foo.mld``, ``bar.mld``, and ``baz.mld``     (package foo)      (mld_files foo bar baz)) -This stanza will attach all mld files excluding ``wip.mld`` in the current-directory to the inferred package:+This stanza will attach all ``.mld`` files to the inferred package, +excluding ``wip.mld``, in the current directory:  .. code-block:: lisp     (documentation     (mld_files :standard \ wip)) -All mld files attached to a package will be included in the generated-``.install`` file for that package, and hence will be installed by opam.+All ``.mld`` files attached to a package will be included in the generated+``.install`` file for that package. They'll be installed by Opam. -Package entry page+Package Entry Page ------------------  The ``index.mld`` file (specified as ``index`` in ``mld_files``) is-treated specially by dune. This will be the file used to generate the+treated specially by Dune. This will be the file used to generate the entry page for the package, linked from the main package listing.  To generate pleasant documentation, we recommend writing an-``index.mld`` file with at least short description of your package,+``index.mld`` file with at least short description of your package  and possibly some examples. -If you do not write your own ``index.mld`` file, dune will generate+If you do not write your own ``index.mld`` file, Dune will generate one with the entry modules for your package. But this generated file will not be installed.  .. _odoc-options: -Passing options to Odoc-=======================+Passing Options to ``odoc``

Isn't it weird that we're referring to the Odoc tool by the name of its binary?

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for documentation.rst

 Documentation for private libraries may also be built with:    $ dune build @doc-private -But these libraries will not be in the main html listing above, since they do not-belong to any particular package. But the generated html will still be found in+But these libraries will not be in the main ``_html`` listing above, since they don't

Note that in the original paragraph, html does not refer to the path _html, but html as in "the generated documentation written in html markup". So we should say revert to generated HTML, or even consider moving away from this phrasing altogether. If it confused you, I'm sure others are scratching their head as well.

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for documentation.rst

 .. _documentation:  ************************-Generating documentation+Generating Documentation ************************  Prerequisites ============= -Documentation in dune is done courtesy of the odoc_ tool. Therefore, to-generate documentation in dune, you will need to install this tool. This-should likely be done with opam:+Documentation in Dune is done courtesy of the ``odoc_`` tool. Therefore, to

Same question. It would be nice to verify that the link to the odoc project is maintained.

christinerose

comment created time in 15 hours

PullRequestReviewEvent

Pull request review commentocaml/dune

line editing for foreign-code.rst

 the C/C++ source files or in the same directory group when using  The header files must have the ``.h`` extension. -Installing header files+Installing Header Files -----------------------  It is sometimes desirable to install header files with the library. For that you have two choices: install them explicitly with an :ref:`install` stanza or use the ``install_c_headers`` field of the :ref:`library` stanza. This field takes a list of header files names-without the ``.h`` extension. When a library install header files,-these are made visible to users of the library via the include search+without the ``.h`` extension. When a library installs header files,+they are made visible to users of the library via the include search path.  .. _ctypes-stubgen:  Stub Generation with Dune Ctypes ================================ -Beginning in dune 3.0, it is possible to use the ctypes_ stanza to generate+Beginning in Dune 3.0, it's possible to use the ``ctypes_`` stanza to generate

When you quote ctypes_, does the link to the ctypes library get destroyed?

christinerose

comment created time in 15 hours

PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
more