1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
|
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 parentheses around arguments 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 something 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
Example:
(** {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 <p> in HTML instead of <br>
- 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 <LINK ...> in <HEAD> : 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
|