From 9d05353fd8bd6499867e242fd064d0630e25082b Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Tue, 12 Dec 2023 15:36:40 +0100 Subject: [PATCH 1/4] [new release] odoc and odoc-parser (2.4.0) CHANGES: ### Added - Add support for external search engines (@panglesd, @EmileTrotignon, ocaml/odoc#972) This includes the generation of an index and the display of the results in the UI (HTML only). - Display 'private' keyword for private type extensions (@gpetiot, ocaml/odoc#1019) - Allow to omit parent type in constructor reference (@panglesd, @EmileTrotignon, ocaml/odoc#933) ### Fixed - Warn and exit when table(s) is not closed (@lubegasimon, ocaml/odoc#1050) - Hint when list(s) is not closed (@lubegasimon, ocaml/odoc#1050) - Fix crash on functors returning an alias (@Julow, ocaml/odoc#1046) - Fix rendering of polymorphic variants (@wikku, @panglesd, ocaml/odoc#971) - Add references to extension declarations (@gpetiot, @panglesd, ocaml/odoc#949) ### Changed - Style: Adjusted line height in the TOC to improve readability (@sorawee, ocaml/odoc#1045) - Style: Remove font fallback to Helvetica, Arial (@Julow, ocaml/odoc#1028) - Style: Preformatted elements fallback to UA monospace (@toastal, ocaml/odoc#967) - Style: Sidebar is now stuck to the left of the content instead of the left of the viewport (@EmileTrotignon, ocaml/odoc#999) --- packages/odoc-parser/odoc-parser.2.4.0/opam | 45 +++++++++++ packages/odoc/odoc.2.4.0/opam | 84 +++++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 packages/odoc-parser/odoc-parser.2.4.0/opam create mode 100644 packages/odoc/odoc.2.4.0/opam diff --git a/packages/odoc-parser/odoc-parser.2.4.0/opam b/packages/odoc-parser/odoc-parser.2.4.0/opam new file mode 100644 index 00000000000..47cddb34bc3 --- /dev/null +++ b/packages/odoc-parser/odoc-parser.2.4.0/opam @@ -0,0 +1,45 @@ +opam-version: "2.0" +synopsis: "Parser for ocaml documentation comments" +description: """ +Odoc_parser is a library for parsing the contents of OCaml documentation +comments, formatted using 'odoc' syntax, an extension of the language +understood by ocamldoc.""" +maintainer: ["Jon Ludlam "] +authors: ["Anton Bachin "] +license: "ISC" +homepage: "https://github.com/ocaml/odoc" +bug-reports: "https://github.com/ocaml/odoc/issues" +dev-repo: "git+https://github.com/ocaml/odoc.git" +doc: "https://ocaml.github.io/odoc/odoc_parser" +depends: [ + "dune" {>= "3.7"} + "ocaml" {>= "4.02.0"} + "astring" + "result" + "camlp-streams" + "ppx_expect" {with-test} + ("ocaml" {< "4.04.1" & with-test} | "sexplib0" {with-test}) +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + # Tests are not all associated with a package and would be run if using the + # default '@runtest'. + "@src/parser/runtest" {with-test} + ] +] +url { + src: "https://github.com/ocaml/odoc/releases/download/2.4.0/odoc-2.4.0.tbz" + checksum: [ + "sha256=fa52c66f12fe1bd63535776b5b0451112643446ef2171494e953859ef863959d" + "sha512=f55884d0ad788643b7137ee04cd57a1d33375ebf1f1aae32ef03b3a10f03b62723a6c05a31c2e0496794ad5d6d8794350935577a70ddfce3a061e28a49b24d82" + ] +} +x-commit-hash: "c8d3ba1604cd6a2bb7155afe10ecb596517e9e47" diff --git a/packages/odoc/odoc.2.4.0/opam b/packages/odoc/odoc.2.4.0/opam new file mode 100644 index 00000000000..5ccee12f548 --- /dev/null +++ b/packages/odoc/odoc.2.4.0/opam @@ -0,0 +1,84 @@ +opam-version: "2.0" +homepage: "https://github.com/ocaml/odoc" +doc: "https://ocaml.github.io/odoc/" +bug-reports: "https://github.com/ocaml/odoc/issues" +license: "ISC" + +maintainer: [ + "Daniel Bünzli " + "Jon Ludlam " + "Jules Aguillon " + "Paul-Elliot Anglès d'Auriac " +] +authors: [ + "Anton Bachin " + "Daniel Bünzli " + "David Sheets " + "Jon Ludlam " + "Jules Aguillon " + "Leo White " + "Lubega Simon " + "Paul-Elliot Anglès d'Auriac " + "Thomas Refis " +] +dev-repo: "git+https://github.com/ocaml/odoc.git" + +synopsis: "OCaml Documentation Generator" +description: """ +**odoc** is a powerful and flexible documentation generator for OCaml. It reads *doc comments*, demarcated by `(** ... *)`, and transforms them into a variety of output formats, including HTML, LaTeX, and man pages. + +- **Output Formats:** Odoc generates HTML for web browsing, LaTeX for PDF generation, and man pages for use on Unix-like systems. +- **Cross-References:** odoc uses the `ocamldoc` markup, which allows to create links for functions, types, modules, and documentation pages. +- **Link to Source Code:** Documentation generated includes links to the source code of functions, providing an easy way to navigate from the docs to the actual implementation. +- **Code Highlighting:** odoc automatically highlights syntax in code snippets for different languages. + +odoc is part of the [OCaml Platform](https://ocaml.org/docs/platform), the recommended set of tools for OCaml. +""" + + +depends: [ + "odoc-parser" {= version} + "astring" + "cmdliner" {>= "1.0.0"} + "cppo" {build & >= "1.1.0"} + "dune" {>= "3.7.0"} + "fpath" + "ocaml" {>= "4.02.0"} + "result" + "tyxml" {>= "4.4.0"} + "fmt" + + "ocamlfind" {with-test} + "yojson" {>= "1.6.0" & with-test} + ("ocaml" {< "4.04.1" & with-test} | "sexplib0" {with-test}) + "conf-jq" {with-test} + + "ppx_expect" {with-test} + "bos" {with-test} + "crunch" {> "1.1.0"} + + ("ocaml" {< "4.07.0" & with-test} | "bisect_ppx" {with-test & > "2.5.0"}) +] + +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +url { + src: "https://github.com/ocaml/odoc/releases/download/2.4.0/odoc-2.4.0.tbz" + checksum: [ + "sha256=fa52c66f12fe1bd63535776b5b0451112643446ef2171494e953859ef863959d" + "sha512=f55884d0ad788643b7137ee04cd57a1d33375ebf1f1aae32ef03b3a10f03b62723a6c05a31c2e0496794ad5d6d8794350935577a70ddfce3a061e28a49b24d82" + ] +} +x-commit-hash: "c8d3ba1604cd6a2bb7155afe10ecb596517e9e47" From 438d98f26473d2a47c90b751921b766571ee2207 Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Tue, 12 Dec 2023 16:17:00 +0100 Subject: [PATCH 2/4] odoc-parser.2.4.0: Fix build dependencies --- ...-Don-t-make-parser-tests-installable.patch | 25 +++++++++++++++++++ packages/odoc-parser/odoc-parser.2.4.0/opam | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch diff --git a/packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch b/packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch new file mode 100644 index 00000000000..409d1e20106 --- /dev/null +++ b/packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch @@ -0,0 +1,25 @@ +From a29977ba0ca1e5617a24bc8693d033a085563ff3 Mon Sep 17 00:00:00 2001 +From: Jules Aguillon +Date: Tue, 12 Dec 2023 15:53:06 +0100 +Subject: [PATCH] Don't make parser tests installable + +This makes the regular build of odoc-parser to depend on its +test-dependencies, making it fail. +--- + src/parser/test/dune | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/parser/test/dune b/src/parser/test/dune +index 28c4d82f7..c6769550d 100644 +--- a/src/parser/test/dune ++++ b/src/parser/test/dune +@@ -1,6 +1,5 @@ + (library + (name odoc_parser_test) +- (package odoc-parser) + (inline_tests) + (enabled_if + (>= %{ocaml_version} 4.04.1)) +-- +2.40.1 + diff --git a/packages/odoc-parser/odoc-parser.2.4.0/opam b/packages/odoc-parser/odoc-parser.2.4.0/opam index 47cddb34bc3..eb68f4a43f3 100644 --- a/packages/odoc-parser/odoc-parser.2.4.0/opam +++ b/packages/odoc-parser/odoc-parser.2.4.0/opam @@ -35,6 +35,9 @@ build: [ "@src/parser/runtest" {with-test} ] ] +patches: [ + patches/0001-Don-t-make-parser-tests-installable.patch +] url { src: "https://github.com/ocaml/odoc/releases/download/2.4.0/odoc-2.4.0.tbz" checksum: [ From 2cc046c4344a75bd77db2e6b6453104fa7b606d7 Mon Sep 17 00:00:00 2001 From: Marcello Seri Date: Wed, 13 Dec 2023 22:14:09 +0100 Subject: [PATCH 3/4] Update packages/odoc-parser/odoc-parser.2.4.0/opam --- packages/odoc-parser/odoc-parser.2.4.0/opam | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/odoc-parser/odoc-parser.2.4.0/opam b/packages/odoc-parser/odoc-parser.2.4.0/opam index eb68f4a43f3..ad6cab4b6f2 100644 --- a/packages/odoc-parser/odoc-parser.2.4.0/opam +++ b/packages/odoc-parser/odoc-parser.2.4.0/opam @@ -36,7 +36,7 @@ build: [ ] ] patches: [ - patches/0001-Don-t-make-parser-tests-installable.patch + "patches/0001-Don-t-make-parser-tests-installable.patch" ] url { src: "https://github.com/ocaml/odoc/releases/download/2.4.0/odoc-2.4.0.tbz" From a271f154af686456d3c6a961077574a188165993 Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Thu, 14 Dec 2023 11:11:43 +0100 Subject: [PATCH 4/4] odoc-parser.2.4.0: Move patch out of subdirectory --- .../0001-Don-t-make-parser-tests-installable.patch | 0 packages/odoc-parser/odoc-parser.2.4.0/opam | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename packages/odoc-parser/odoc-parser.2.4.0/files/{patches => }/0001-Don-t-make-parser-tests-installable.patch (100%) diff --git a/packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch b/packages/odoc-parser/odoc-parser.2.4.0/files/0001-Don-t-make-parser-tests-installable.patch similarity index 100% rename from packages/odoc-parser/odoc-parser.2.4.0/files/patches/0001-Don-t-make-parser-tests-installable.patch rename to packages/odoc-parser/odoc-parser.2.4.0/files/0001-Don-t-make-parser-tests-installable.patch diff --git a/packages/odoc-parser/odoc-parser.2.4.0/opam b/packages/odoc-parser/odoc-parser.2.4.0/opam index ad6cab4b6f2..f7060065010 100644 --- a/packages/odoc-parser/odoc-parser.2.4.0/opam +++ b/packages/odoc-parser/odoc-parser.2.4.0/opam @@ -36,7 +36,7 @@ build: [ ] ] patches: [ - "patches/0001-Don-t-make-parser-tests-installable.patch" + "0001-Don-t-make-parser-tests-installable.patch" ] url { src: "https://github.com/ocaml/odoc/releases/download/2.4.0/odoc-2.4.0.tbz"