TODO: - need to fix display of type parameters for inherited classes/class types - need to add an environment while generating to print correct links: file foo.mli: type u module type M = sig type u end module N : sig include M val f: u -> unit end Here, in html for example, f in displayed being of type Foo.u instead of Foo.M.u - latex: types variant polymorphes depassent de la page quand ils sont trop longs - utilisation nouvelles infos de Xavier: "debut de rec", etc. - xml generator ===== Release > 3.11.0: - option -g also for native code version (loading custom generators) ===== Release 3.09.3: - mod: PR#4017 new option -short-functors to use a short form to display functors in html generator - fix: PR#4016 (using modtype constraint to filter module elements displayed in doc) - fix: PR#4066 (missing crossref in text from intro files) - fix: PR#4007 (error in merging of top dependencies of modules) - fix: PR#3981 (-dot-colors has no effect) - mod: name resolution in cross-referencing: {!name} if name is not found, then it is searched in the parent module/class, and in the parent of the parent, and so on until it is found. ===== Release 3.09.1: - fix: remove .TP for generated man pages, use .sp instead (.TP caused a lot of odd margins) - fix: html generator now output DOCTYPE and character encoding information. - add: m_text_only field in Module.t_module, to separate real modules from text files handled as modules. - fix: display only text for "text modules" - extensible {foo } syntax - user can give .txt files on the command line, containing ocamldoc formatted text, to be able to include bigger texts out of source files - -o option is now used by the html generator to indicate the prefix of generated index files (to avoid conflict when a Index module exists on case-insensitive file systems). ===== Release 3.08.4: - some improvements in html display - better error messages for misplaced variant constructors comments - some fixes in man page generation (escaping characters) ===== Release 3.08.2: - fix: error "Lexing: empty token" (PR#3173) ===== Release 3.08.1: - add: new -intf and -impl options supported (PR#3036) - fix: display of class parameters in HTML and LaTeX (PR#2994) - fix: display of link to class page in html (PR#2994) ===== Release 3.08.0: - fix: method parameters names in signature are now retrieved correctly (fix of Odoc_value.parameter_list_from_arrows to handle Tpoly for methods) - ajout a la doc de Module_list et Index_list (utilise dans le html seulement) - ajout a la doc: fichier de l'option -intro utilise pour l'index en html - fix: create a Module_with instead of a Module_alias when we encounter module A : Foo in a signature - latex: style latex pour indenter dans les module kind et les class kind - latex: il manque la generation des parametres de classe - parse des {!modules: } et {!indexlist} - gestion des Module_list et Index_list - no need to Dynlink.add_available_units any more - generate html from module_kind rather than from module_type + same for classes and class types - add the kind to module parameters (the way the parameter was build in the parsetree) - fix: the generated ocamldoc.sty is more robust for paragraphs in ocamldocdescription environment - fix: when generating separated files in latex, generate them in the same directory than the main file, (the one specified by -o) - mod: one section per to module in latex output + improve latex output - mod: odoc_latex: use buffers instead of string concatenation - add: new ocamldoc man page, thanks to Samuel Mimram - fix: useless parenthesis around agruments of arguments of a type constructor in type definitions, and aournd arguments of exceptions in exception definitions. - fix: blank lines in verbatim, latex, code pre, code and ele ref modes are now accepted - fix: html generator: included module names were displayed with their simple name rather than their fully qualified name - fix: use a formatter from a buffer rather Format.str_formatter in Odoc_mist.sting_of_module_type, to avoid too much blanks - new module odoc_print, will work when Format.pp_print_flush is fixed - odoc_html: use buffers instead of string concatenation - odoc_man: use buffers instead of string concatenation - odoc_cross.ml: use hash tables modified on the fly to resolve (module | module type | exception) name aliases - odoc_html: replace some calls to Str. by specific functions on strings - odoc_cross.ml: use a Map to associate a complete name to the known elements with this name, instead of searching each time through the whole list of modules -> a gain of more than 90% in speed for cross-referencing (Odoc_cross.associate) - fix: Odoc_name.cut printed a '(' instead of a '.' - add: new option -customdir - add: new option -i (to add a path to the directory where to look for custom generators) - add: add odoc_config.ml{,i} - add: keep_code in Odoc_info.Args interface - add: m_code_intf and m_code fields for modules, fit when the Odoc_args.keep_code option is set, and fit for all modules, not only toplevel ones - fix: bug preventing to get the code in a .mli - fix: missing spaces after carriage return in types (Odoc_misc.string_of_type_expr) - fixes: some bugs in the text parser ( ]} meaning end of code and somehting else instead of end of precode) - add: in Odoc_info: text_of_string, text_string_of_text, info_of_string - fix: better output of titles in html (use more the style) - add: -intro option to use a file content as ocamldoc comment to use as introduction for LaTeX document and HTML index page - add: the HTML generator generates the code of the module if available - add: field m_code for modules, to keep the code of top modules - fix: display "include Foo" instead of "include module Foo" in Latex, Man, Texi - fix: not display comments associated to include directives - fix: bad display of type parameters for class and class types ====== Release 3.05 : - added link tags in html header to reference sections and subsections in each page (for browser which handle those tags) - no titles nor lists in first sentence of text in indexes and latex titles - only one table for the titles in HTML output - fix of bad comment association for types in .ml files - dumps now contain a magic number, checked when dumps are loaded - new option -o to use with texi, latex and dot generators - new .code CSS class used - better output for classes and modules, with their type - added texinfo generator, by Olivier Andrieu - removed iso generator, which became the odoc_check custom generator - link syntax {{:url}text} added to the manual - (** comments in code is colorized in ocaml code html pages - new class .code in style - new generator : -dot . Output dot code to display modules or types dependencies. - new option -inv-merge-ml-mli to inverse the priority of .ml and .mli when merging - option -werr becomes -warn-error - possibility to define and reference section labels Exemple: (** {2:mysectionlabel My title bla bla bla} *) in module Foo This section is referenced with {!Foo.mysectionlabel} in a comment. Pre-release 4 : - new option -werr to treat ocamldoc warnings as errors - new option -hide to remove some modules from complete names, (e.g., print ref instead of Pervasives.ref) - HTML doc in classic style only contain indexes to existing element kinds (i.e. there is no class index if the doc does not contain any class.) - First description sentence now stops at the first period followed by a blank, or at the first blank line. - update of user manual - check report generator added (options -iso and -iso-{val|ty|cl|ex|mod}) - Odoc_info.Scan.scanner base class added - support for custom tags (@xxx with xxx not a predefined tag), see manual - new classes info in Odoc_html, Odoc_to_text, Odoc_latex, and Odoc_man, which contains the functions for printing info structures - replacement of modules Odoc_html.Text and Odoc_latex.Text by classes Odoc_html.text and Odoc_latex.text to allow the redefinition of their methods in custom generators - bug fix : a shortcut list can be pu after a blank line - improved display of variant constructors, record fields and their comments in classic HTML - blank lines in comments become

in HTML instead of
- bug fix : there can be blanks between the last item and the ending } of a list - new option -latextitles - number of errors encountered is displayed - if at least one error occurs, exit code is not 0 - more precise error messages - bug fix : \n and other blanks are accepted after, for example, {i Pre-release 3 : - option -stars - complete paths of executables in the generated Makefile - names of executables changed to ocamldoc and ocamldoc.opt - better LaTeX output - option -sepfiles for LaTeX - ocamldoc.sty used by the generated LaTeX - ocamldoc.hva added to use Hevea on the generated LaTeX - user manual updated - {[ ]} marks to put pre-formatted code on more than one line - {!Toto.tutu} to add cross references between elements - some bug fixes Rep-release 2 : - generator of texinfo files : odoc_texi.cma - use of CSS in generated html - new option -css-style to provide a different style sheet - improved html - added more precise titles in generated html pages - no more links to unknown elements - added indexes - simple html : added in : compliant browsers should display quick access to modules and indexes in their navigation bar (for example, mozilla 0.9.5 is compliant) - '{bone}' doesn't work any more ; a space is required as in '{b one}'. Same for {e, {i, and some others marks. Check the manual - bug fixes