Releases: ocaml/odoc
2.0.0-beta2
CHANGES:
Additions
- Add the ability to specifiy canonical paths for types and module types (@jonludlam, #596)
- Several improvements to the HTML tree (@dbuenzli, #600, #605, #589, @Drup, #579)
- Render module synopses in
{!modules:...}
(@Julow, #597)
Bugs fixed
- Fix for resolving references in mld files (@jonludlam, #611)
- Fix placement of documentation in module aliases (@Julow, #606)
- Fix breakage involving includes and shadowing (@jonludlam, #603)
- Don't link to hidden items (@lubegasimon, #583)
- Don't remove docs of inlined includes (@Julow, #595)
- Don't render shadowed values (@lubegasimon, #580)
- Fix unresolved references in the first comment of a file (@Julow, #592)
2.0.0-beta
CHANGES:
- New model for expanding and cross referencing (@jonludlam, @Julow, @lubegasimon)
This is a brand-new implementation, ensuring that the expansions and links are
correct, requring no rendering of hidden modules, and correctly handling functors,
destructive substitution, module type of
expressions, dependently-typed functors
and other complex language features.
- New document output layer, supporting HTML, LaTeX and man page output (@Drup, @Octachron, @jonludlam, @Julow, @lubegasimon)
This release introduces a new intermediate representation of the documentation,
allowing new backend renderers to be added without having to understand every
detail of the language. Included with this release are renderers for HTML,
LaTeX and man pages.
- Experimental parent/child support for structured output (@jonludlam)
This allows the output pages to be structured in a hierarchy. This is an experimental
feature intended to enable the support of more complex outputs, such as that required
to produce a site documenting all opam packages.
1.5.2
pre-alpha-8
Update README.md
pre-alpha-7
Remove unecessary line ending computation
1.5.1
odoc 1.5.0
odoc 1.4.2
Bugs fixed
- Build on OCaml 4.09 (#383, Anil Madhavapeddy).
- Handle OCaml 4.08 type and module substitutions (#381, Jon Ludlam).
- Parser: better trimming of leading whitespace in code blocks (#370, Jules Aguillon).
- Parser: allow references to operators containing
:
characters (#384, reported Sylvain Le Gall). - HTML: emit
<meta generator>
again (#378, Daniel Bünzli). - CLI:
odoc html-targets
was ignoring deeply nested modules (#379, Daniel Bünzli). - Fix bad internal usage of
List.iter2
(#376, Yotam Barnoy).
odoc 1.4.1
Bugs fixed
- Messy formatting in large definitions due to lack of
<span>
s (#360, Thomas Refis). - Missing table of contents on
.mld
pages (#361, Rizo Isrof). - Missing space before polymorphic class names (#339, Kevin Ji).
- Module type definitions printed with
:
instead of=
(#344, Geoff Reedy). - Conjunctive types printed with
*
instead of&
(#353, Florian Angeletti). - Type extensions (
+=
) printed without CSS classes found in other items (#348, reported Stéphane Lavergne). - High memory usage on large codebases (#361, Thomas Refis).
- Build: double underscores in internal filenames (#357, Thomas Refis).
- Development: test suite assumed that html5-tidy supports
--mute
(#345, Geoff Reedy). - Internal: refactored AST (#351, #364, Jules Aguillon).
odoc 1.4.0
Changes
- All parsing errors are now recoverable warnings (#238).
- Page titles are now level-0 headings (
{0 ...}
), and top-level sections within a page are level-1 headings ({1 ...}
) (#217, Rizo Isrof). - Don't render definitions of externals (#275, Nik Graf).
- Disable programming ligatures (#248).
- Rename
--root-uri
option to--xref-base-uri
(#223, Rizo Isrof). - Deprecate redundant reference kind annotations (#246).
Additions
- Preliminary compatibility with the current 4.08 beta releases (#309, Jon Ludlam).
- Paragraph headings (
{4 ...}
) and subparagraph headings ({5 ...}
) (#217, Rizo Isrof). odoc support-files-targets
command (#232).- Recommend
bsdoc
for using odoc with BuckleScript (#269, Leandro Ostera).
Bugs fixed
- Improve breadcrumbs on
.mld
pages (#293, Daniel Buenzli). - Display tables of contents in nested module and class pages (#261, Rizo Isrof).
- Uncaught exception when parsing references to operators with
-
in them, such as@->
(#178). - Incorrect parsing of references to operators with
.
in them, such as*.
(#237). - Assertion failure when processing optional arguments in an
.ml
file with a type annotation, when that type annotation uses an alias of'a option
(#101). - Assertion failure when two modules with the same name are found by odoc (#148, Jon Ludlam).
- Verbatim blocks (
{v ... v}
) can now only be terminated if thev}
is immediately preceded by whitespace (#71, reported Daniel Buenzli). - Wrong column numbers for errors reported in comments (#227, #253).
- Restore parsing of ocamldoc-style reference kind annotations (#244).
- Ordinary
type
keyword instead ofand
rendered in HTML for mutually-recursive types (#105, reported @Fourchaux). nonrec
keyword not rendered (#249).and
not rendered for mutually-recursive modules, classes, and class types (#251).- Outer comment attached to a module rendered when the module is included (#87, Jon Ludlam).
- Polymorphic variant constructor documentation not rendered (#176, reported @steinuil).
- Variant constructor and record field documentation styled differently (#260, Jon Ludlam).
- Sloppy keyword markup in HTML output (#319).
- Rendering of multiple
constraint
clauses (#321). - Incorrect order of functor arguments (#261, Rizo Isrof).
odoc html
option-o
now creates the output directory if it does not exist #171, #264 Rizo Isrof).odoc html-targets
output now includes path prefix given through-o
option (#173, Rizo Isrof).- Allow
-I
and-o
options to refer to non-existent directories (#32, #170, Daniel Buenzli). - Make
odoc compile-targets
matchodoc compile
(#273, Daniel Buenzli). odoc compile-deps
does not work on.cmt
files (#162, Daniel Buenzli).odoc html-deps
now scans for.odoc
files recursively (#307, Daniel Buenzli).odoc html-targets
ignores stop comments (#276, Daniel Buenzli).odoc html-targets
andodoc html-deps
segfault on.mld
pages (#277, #282, Daneil Buenzli).--theme-uri
option not propagated to some subpages (#318, Thomas Refis).- Binary files not opened in binary mode (#281, Ulrik Strid).
Build and development
- Always print backtraces for unhandled exceptions (3d10feb).
- CI on macOS (#216, Leandro Ostera).
- Test runner improvements (#266, Rizo Isrof).
- Fix esy builds in Travis (#301, Jon Ludlam).
- Don't require
make
in the esy build (#308, Leandro Ostera). - Get rid of some large GADTs (#292, Jon Ludlam).
- Remove dependency on
bos
(#305, Daniel Buenzli). - Remove dependency on
rresult
(#306, Daniel Buenzli). - Remove dependency on
bisect_ppx
, previously present in development checkouts (#316).