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
|