### Added
odoc-config.sexp (@panglesd, #1343){!./other_page.label}, {!//other_page}.{image!/reference/to/asset} or {image:URL} for images. The syntax for {video...} and {audio...} is the same. (@panglesd, @EmileTrotignon, #1170, #1171, #1184, #1185){!/otherpackage/page}, {!/otherpackage/Module.t}.--remap option of the driver or the --remap-file option of odoc html-generate. (@jonludlam, #1189, #1248)aggregate-occurrences and count-occurrences are added. (@panglesd, #976, #1076, #1206)extract-code subcommand to extract code blocks from mld/mli files (@panglesd, #1326)odoc classify command (@jonludlam, #1121) Helps driver detecting which modules belong to which libraries.--warnings-tag options to the CLI to silence warnings from a unit, even if they end up being raised in another unit through expansion (@jonludlam, #1260)@since tag (@yawaramin, #1089)odoc-md to process standalone Markdown pages (@jonludlam, #1234)The command line interface changed to support the new features.
odoc link must now be aware of packages and libraries with the -L libname:path and -P pkgname:path options. The module search path should still be passed with the -I option. The current package should be specified with --current-package=pkgname.odoc compile now outputs .odoc in the directory tree specified with --output-dir=DIR and the parent identifier must be specified with --parent-id=PARENT. The option --source-parent-file is removed.compile-impl instead of with compile. The options --cmt=.. and --source-name=.. are removed. Source code pages are generated with html-generate-source.compile-asset, html-generate-asset are added. The option html-generate --asset is removed.compile-index. The sidebar data is extracted from the index with sidebar-generate and passed to html-generate --sidebar=...@tag is now delimited (@panglesd, #1239) A @tag can now be followed by a paragraph or other elements..odoc files (@panglesd, #1075)Odoc_html_frontend when compiled to javascript (@EmileTrotignon, #1072)header field to the json output (@panglesd, #1314)odoc html-fragment wasn't rendering headings correctly (@jonludlam, #1306)][ in code blocks, fixing issue #1137 (@Julow, #1149) This was interpreted as "code blocks with result", which now mandates a delimiter: {delim@lang[ code ]delim[ result ]}--hidden not always taken into account (@panglesd, #940)--as-json for the HTML renderer that emits HTML fragments (preamble, content) together with metadata (table of contents, breadcrumbs, whether katex is used) in JSON format. (@sabine, #908){m ... } and {math ... } tags. (@giltho, @gpetiot, #886)val x : #c) (@jonludlam, #809)uwt now can be documented (@jonludlam, #708){!modules:...} (@Julow, #597): characters (#384, reported Sylvain Le Gall).<meta generator> again (#378, Daniel Bünzli).odoc html-targets was ignoring deeply nested modules (#379, Daniel Bünzli).List.iter2 (#376, Yotam Barnoy).<span>s (#360, Thomas Refis)..mld pages (#361, Rizo Isrof).: instead of = (#344, Geoff Reedy).* instead of & (#353, Florian Angeletti).+=) printed without CSS classes found in other items (#348, reported Stéphane Lavergne).--mute (#345, Geoff Reedy).{0 ...}), and top-level sections within a page are level-1 headings ({1 ...}) (#217, Rizo Isrof).--root-uri option to --xref-base-uri (#223, Rizo Isrof).{4 ...}) and subparagraph headings ({5 ...}) (#217, Rizo Isrof).odoc support-files-targets command (#232).bsdoc for using odoc with BuckleScript (#269, Leandro Ostera)..mld pages (#293, Daniel Buenzli).- in them, such as @-> (#178).. in them, such as *. (#237)..ml file with a type annotation, when that type annotation uses an alias of 'a option (#101).{v ... v}) can now only be terminated if the v} is immediately preceded by whitespace (#71, reported Daniel Buenzli).type keyword instead of and 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).constraint clauses (#321).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).-I and -o options to refer to non-existent directories (#32, #170, Daniel Buenzli).odoc compile-targets match odoc 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 and odoc html-deps segfault on .mld pages (#277, #282, Daneil Buenzli).--theme-uri option not propagated to some subpages (#318, Thomas Refis).make in the esy build (#308, Leandro Ostera).bos (#305, Daniel Buenzli).rresult (#306, Daniel Buenzli).bisect_ppx, previously present in development checkouts (#316).odoc binary is now self-contained and requires no external files (bd3b53c).--theme-uri option (#154, Rizo Isrof)..mld to HTML fragments rather than complete pages (#166, Rizo Isrof).page- to output file name when compiling .mld files (#183, Rizo Isrof).floatarray type introduced in OCaml 4.06 (eb36158, Thomas Refis).<i> tags in italics (#104, Thibault Suzanne).odoc is now one repo.CONTRIBUTING.md, tests, coverage analysis, CI, and issue organization..mld files) (#61).[@@deprecated] attributes as the @deprecated tag (#57).kind-identifer syntax (part of #61).html-deps subcommand behavior: it now expects to be given a directory, not a single odoc file.Initial release.