Changes: Two new methods of searching through the HTML documentation were
added: via a PHP based Web server and via an Eclipse help plugin. The
\addindex command now also works for the HTML indices. Rendering of LaTeX
formulas in the HTML output has been improved (especially for non-white
backgrounds), along with a number of smaller improvements and a large
number of bugfixes.
The HTML output is now XHTML compliant and a new DHTML based live
search function has been added, which replaces the PHP-based search
function. The ablity to customise the LaTeX output has been improved.
There were also a number of smaller improvements and bugfixes.
This release introduces an updated wizard, which now uses Qt4 and
provides more convenience in configuring and running doxygen. It
also features a new Qt Help generator, which no longer requires an
external tool to postprocess the output. An option had been added
that allows configuring the parser that doxygen will use for a
given file extension. As always, a large number of bugs have been
fixed.
Doxygen Release 1.5.7.1
(release date 5-10-2008)
Changes
* The dot tool is no longer part of the doxygen package for
MacOSX. Please install GraphViz separately and set the dot path
to /usr/local/bin
New features
* Added option DOT_FONTSIZE which allows to set the size of
the fonts used in dot generated graphs.
Bug fixes
* id 554432: Re-added ALPHABETICAL_INDEX option.
* id 554379: Fixed internal error for GENERATE_INDEXLOG when
GENERATE_HTML was set to NO.
* id 554546: Included fix for handling relative includes in
the preprocessor.
* Included several VHDL fixes related to syntax highlighting,
finding class members, and mixing upper and lower case.
* Included patch to allow setting DEST_DIR environment variable
to determine where to install doxygen.
Doxygen Release 1.5.7
(release date 28-9-2008)
Changes
* The default CSS style sheet has been cleaned up and simplified,
thanks to the work done by Quinn Taylor.
New features
* Added new config options GENERATE_QHP which enables generating
.qch (Qt compiled help) file via the Qt's qthelpgenerator tool
(part of Qt 4.4+). This type of files can be read with Qt's
Assisant to browse the documentation in a similar way as is
possible with Microsoft's compiled HTML help (.chm). To further
customize the output and run the help generator from within
doxygen, the following options are available: QCH_FILE,
QHP_NAMESPACE, QHP_VIRTUAL_FOLDER, QHG_LOCATION. Thanks to
Sebastian Pipping for the patch.
* Add new option SYMBOL_CACHE_SIZE to allow a different trade
off between doxygen's memory usage and the amount of disk
accesses.
* id 532695: Added 3 new commands: \extends, \implements, and
\memberof that allow object oriented constructs to be documented
as such for languages that do not support it natively (e.g. C)
* Added better support for one line comments after VHDL types.
* Added new option LAYOUT_FILE which can be used to specify a
layout template file that tells doxygen in which order to
generate the output and which titles to use for headings and
how the navigation index will look; Read this for more info.
As a result the following options are now obsolete since they
can now only be controlled via the layout file: DETAILS_AT_TOP,
ALPHABETICAL_INDEX. The following options can also be set via
the layout file, but for convenience and backward compatibility
reasons they are still also part of the configuration file:
SHOW_INCLUDE_FILES, SHOW_USED_FILES, CLASS_GRAPH, COLLABORATION_GRAPH,
GROUP_GRAPHS, INCLUDE_GRAPH, INCLUDED_BY_GRAPH. Run doxygen
with the -l option to generate the default layout file.
* Included update for the Macedonian, Catalan, Brazilian, and
Serbian translation and also support for Serbian with Cyrilic
characters.
Bug fixes (ids refer to the bugzilla database)
* id 140264, 332187, 541924: Sections inside a \subpage where
not shown as subsection in the LaTeX/RTF output.
* id 155098,156188: Added support for UTF-8 special characters
in identifiers (which is allowed by e.g. C#).
* id 304598: operator-- caused invalid HTML output.
* id 324047: parameter type [in or out] were not generated in
RTF document
* id 363499: @todo and friends did not work in a comment marked
with @dir.
* id 445485: HTML commands in a comment block with attribute
values without quotes were not handled properly.
* id 533855: Processes were always documented as anonymous in
VHDL code.
* id 535379: Added support for %{...%} blocks in XPCOM's IDL.
* id 536298: Last port in a VHDL port list was not correctly
put in a member group.
* id 536385: Fixed problem matching function prototype and
implementation under certain conditions.
* id 536629: Fixed compilation issue on NetBSD.
* id 537393: Properties in Python were not properly handled.
* id 538065: Added support for @optional and @required in
Objective C 2.0 protocols.
* id 538239: Some unlabeled VHDL processes were not corrected
detected.
* id 538515: Deriving a Objective-C interface from a protocol
caused parsing problems if the interface also has a body.
* id 539057: Part of an Objective-C expression could be missing
in the source browser under certain conditions.
* id 539590: Generic C# classes with the same name but different
template arguments were no longer treated as different classes.
* id 539712: Fixed code parser issue for parameter indices of
procedures and functions.
* id 540058: Creator code was wrong in the MacOSX application
bundle.
* id 540372: Fixed problem parsing large table by increasing
YY_READ_BUF_SIZE in the generated parser files.
* id 540247: Fixed potential memory corruption issue parsing
VHDL.
* id 541113: Fixed locale for ctype, to avoid stripping of 0xA0
from multi-byte UTF-8 characters.
* id 544479: SORT_MEMBER_DOCS did not work for class members.
* id 546621: Fixed makefile so that .svn stuff is removed from
the tarball when doing "make archive".
* id 546812: Using a table with row span greater than 1 did
not produce correct LaTeX output.
* id 545098: Fixed problem parsing where clauses in combination
with C# generics.
* id 545503: Nameless parameters of type "struct A" could end
up wrongly in the XML output.
* id 545970: Refering to the main page did not work as advertised.
* id 546158: The variable defined inside a foreach statement
in C# code was not considered for source linking, cause
potentially incomplete call graphs.
* id 547361: Linking to specialized template functions did not
work.
* id 548175: Fixed problem parsing class members within a class
X, inside a namespace that is also named X.
* id 548443: Documenting a nested namespace/classes with
@namespace X.Y did not work for C# (only X::Y worked).
* id 548489: C++/CLI classes of type sealed abstract were not
processed correctly.
* id 549318: Some headings in the user manual where wrongly
formatted.
* id 549581: Fixed potential buffer overflow in preprocessor.
* id 550058: Obj-C: properties for private fields did not appear
in the output unless EXTRACT_PRIVATE was enabled.
* id 550156: Corrected typo in the documentation for
GENERATE_TREEVIEW.
* id 550247: Fixed problem parsing octal character literals in
the preprocessing phase.
* id 551739: Related function with explicit namespace scope
was not properly placed if the function also existed in the
global namespace.
* id 552115: Anonymous structs and unions could produce invalid
links in the html help index.
* id 552361: Fixed problem with operators in the LaTeX output.
* id 552600: \copybrief ended a brief description instead of
appending to it.
* id 553469: Removed bogus warning about internal inconsistency
when importing items via a tagfiles that are inside an undocumented
scope.
* id 553616: One can now remove the automatic line breaks in
the type part of a declaration by using a custom stylesheet
with BR.typebreak { display: none; }
* id 553663: Aliases did not work in Fortan comments.
* id 549022: Reimplemented in links could be wrong in case of
overloaded members.
* id 553225: Parser was confused by arrays inside an Obj-C
message.
* Finnish translation was disabled.
* A collaboration graph with multiple edge labels with not
written to the XML output correctly.
* sub pages of a \mainpage were not shown in the Latex/RTF
output.
* Included some fixed for the VHDL parser.
g++ -c -Wall -W -O3 -I/usr/pkg/include -I/usr/pkg/include/freetype2 -I/usr/include -I/usr/pkg/include/python2.4 -I../qtools -o ../objects/config.o config.cpp
cc1plus: out of memory allocating 10824496 bytes after a total of 123209640 bytes
gmake[2]: *** [../objects/config.o] Error 1
Workaround by unlimiting "datasize".
Approved by agc@ during freeze.
suggested fix in the Doxygen Bugzilla for this issue. It will presumably
exactly match the solution in the next release of Doxygen (the current
release is 1.5.0).
http://bugzilla.gnome.org/show_bug.cgi?id=366113
* The stylesheet has changed, so if you use your own, you will need to update
it or the output will look ugly.
* Added support for universal binaries on MacOSX (only the non-GUI part).
* Added CALLER_GRAPH config option and \callergraph command to add a caller
(or called-by) graph to a function or all functions.
* Added REFERENCES_LINK_SOURCE config option which allows to selected if
reference relations should point to the source or to the documentation.
the appropriate tool via USE_TOOLS (usually "gs:run"), and remove
ghostscript.mk. This change removes a rather out-dated file from
pkgsrc and switches packages to use the more compact implementation
of the Ghostcript-handling inside the tools framework.
It is more consistent with the tex.buildlink3.mk name. Also, if a package
really needs latex, it just has to set TEX_ACCEPTED to latex distributions
altough today, all TEX_ACCEPTED possibilities are latex distributions
output filenames. This is problematic in a pkgsrc context as it means
WRKDIR pathnames can appear in generated filenames. Fix by reverting
to the old way of naming the files. Bump PKGREVISION.
New features
Added support for parsing Python code. Special comment blocks in Python
are of the ## # Some comment #
or you can rely on Python docstrings. This code uses the new parser
interface and was based on the work done by a group of students as part
of a compiler design project. Added support for C# style XML tags in the
comments. See the manual or the C# language specification for more
details. Thanks to Talin for doing most of the work. Added support for
the JavaDoc command {@inheritDoc}.
And some bug fixes. For details see:
http://www.stack.nl/~dimitri/doxygen/changelog.html
Doxygen Release 1.4.3
(release date 16-5-2005)
Changes
* For Developers: Added an abstract interface for language
parsers (see src/parserintf.h), which can be used implement
new programming language parsers. There is also a manager
class, where a parser instance can be bound to a certain
file extension.
* Changed the algorithm for matching function/method
declarations against their definitions. The new algorithm
should be faster, more powerful, and more accurate.
New features
* Included new config option HTAGS. When enabled in
combination with SOURCE_BROWSER=YES, the source browser of
GNU's Global source system (via htags) is used instead of
doxygen's own (thanks to Shigio Yamaguchi for the patch).
* Added language updates for Indonesian, Catalan, Russian,
Korean, German, Hungarian, Polish, and Lithuanian.
* Included update of the .spec file (thanks to Stephane
Gourichon).
Bug fixes (ids refer to the bugzilla database)
* id 163705: Using \image for latex without caption but with
size parameter "width=\textwidth" did not work.
* id 163783: Items of an autolist could be wrongly indented if
put directly after @name.
* id 163928: Class section was missing in the file
documentation.
* id 164072: When using tag files unneeded external classes
could appear in the class hierarchy in some cases.
* id 169755: page title was omitted in the XML output if
CASE_SENSE_NAME was set to NO.
* id 170592: Using \ref for Objective-C methods did not work
if the name contained a colon.
* id 171795: Refering to Objective-C methods now follows
Apple's conventions.
* id 171878: When JAVADOC_AUTOBRIEF = YES and there was no
blank line after a page command, the first sentence did not
appear in the documentation.
* id 171923: Doxygen failed to match arguments for a function
documentated out-of-line with @fn and using @relatesalso.
* id 172118: Doxywizard now shows the version of doxygen it is
for.
* id 172133: Doxygen did not longer ignore preceding C++
comments inside a comment block.
* id 172217: 'using namespace' declarations with spaces
resulted in duplicate namespaces.
* id 172329: The index of the CHM did not always link to
groups correctly.
* id 172456: Fixed case where doxygen had problems
differentiating const and non-const member functions.
* id 172494: @code blocks were not poperly ignored by the
preprocessor in some cases.
* id 172622: Fixed parse problem for Objective-C method
implementations whole declaration part ended with a
semicolon.
* id 172723: Namespace members appeared in the file
documentation without proper links to the namespace.
* id 172778: A single colon after retval caused a crash.
* id 172783: Doxygen will now put quotes around a filter name
before calling it so it will work with filters with spaces
in the name or path.
* id 172818: Improved translation of Todo List to German.
* id 172937: FILE_VERSION_FILTER failed for filenames
containing spaces.
* id 173034: The \elseif command was not handled properly.
* id 173110: \ingroup did not work with multiple group labels
anymore.
* id 300204: Doxygen disobeyed Cygwin's 'text/binary mount
mode' (thanks to Max Bowsher for the patch).
* id 300466: Improved the documentation for
FILTER_SOURCE_FILES.
* is 300473: Added a browse button for several of Doxywizard's
fields of the expert dialog where a file was expected.
* id 300532: consecutive @todo items were joined together even
if they are in different sections.
* id 300745: A disabled @cond section did not omit #define
documentation.
* is 301409: autolinks to undocumented files did not work
correctly when SOURCE_BROWSER was enabled.
* id 301437: Fixed a typo in an example that is part of the
preprocessor documentation.
* id 301478: Fixed some cases where cross-references were not
properly detected anymore.
* id 301616: Added "+" or "-" to the Objective-C method lists
in the summary section of a class.
* id 302100: An enum could not be grouped by grouping out of
line documentation.
* id 302158: When enabling SEPARATE_MEMBER_PAGES and
CREATE_SUBDIRS the member index contained invalid links.
* id 302160: list directly after @brief not parsed properly if
there were spaces before the @brief command.
* id 302713: Updated doxytag so it works better with recent
versions of Qt3 and the Qt4 beta versions.
* id 303305: When using \subpage the page hierarchy wasn't
reflected in the tree view or .chm index.
* id 303511: Documenting a class in a namespace with a comment
block inside the namespace containing a @class command did
not work properly.
* id 303911: Links from todo list items to Objective-C
categories were broken.
* id 304026: A class/struct/interface can now be turned into
something else of the same kind using the proper command
(i.e. @interface could by used to turn a class into an
interface).
* Doxygen did not honor the "All members of an interface in
Java are implicitly public" rule.
* An enum of a class could not be documented with @enum from
inside a namespace.
* Fixed problem handling unname member groups (useful in
combination with DISTRIBUTE_GROUP_DOC = YES, which didn't
work anymore).
* Updated Doxygen.dsp (thanks to Gerik Rhoden).
* For a word marked with a #, the # is now also removed when
no link could be generated.
* Using '<' (or '\<') in a <pre> section cause '$<$' to appear
in the Latex output.
Doxygen Release 1.4.2
(release date 28-3-2005)
Changes
* If the class/namespace/file member indexes get too long they
are now automatically split over multiple pages (one page
per index letter).
* Internal: I've split the input scanner (scanner.l) in a part
that scans the supported programming languages and passes
the comment blocks to a second scanner. This should clean up
the code a lot and make the handling of structural commands
(like \class and \section) more consistent. It is also a
first step towards supporting dedicated scanners for other
programming languages.
* Made doxygen parse .as files (Action Script) as Java code.
New features
* Added a new option SEPARATE_MEMBER_PAGES. When enabled
doxygen will generate a separate page for each documented
member, instead of putting all members on the
class/file/namespace page. An index for other members of the
same compound is rendered on the left hand side of the page.
* Added new command \subpage that can be used to build a
hierarchy of pages. For pages this is more convenient than
using \defgroup and \ingroup. See the documentation more
details and an example.
* Included man pages for doxygen and doxywizard.
* Language updates for Czech, Swedish, Russian, Italian,
Catalan, German, Brazilian, Korean, Ukrainian, Romanian,
Croatian and Chinese,
Bug fixes
* id 124214: #'s inside a single quoted PHP string could lead
to parse problems.
* id 142339: Doxygen did not using the LATEX_CMD_NAME setting
when generating formulas.
* id 163180: Extension specific filters did not work.
* id 163940: Labels in dot graphs containing quotes where not
escaped properly.
* id 164198: \overload text was always English, it is now
translatable.
* id 164498: Fixed problem where doxygen ignored the
documentation for members of Objective C class categories
when put in the implementation section.
* id 164563: \anchor didn't work inside a <pre>...</pre>
section.
* id 164812: fix compile problem for certain language
selections.
* id 165097: Fixed problem with wrong syntax color in \code
section.
* id 165188: in index.xsd the refid attribute type (xsd:Name)
was not broad enough and has been replaced by xsd:string.
* id 165339: Fixed some issues in the code parser causing
missed cross-referencing relations and/or call graphs.
* id 165428: ALIASES containing @section commands where not
handled properly.
* id 165503: grouped classes did not appear as such in the XML
output.
* id 165793: input filter was applied to \verbinclude.
* id 165816: Grouped functions referenced via tag files had
broken links
* id 165821: Tag file parser produced bogus errors for nested
classes and namespaces and no line number was reported.
* id 166043: static initializer block in Java made doxygen
ignore the rest of the file.
* id 166161: More documentation to make the \code command more
clear.
* id 166756: Fixed a number of issues with the new comment
scanner. It should be much more usable now.
* id 166782: XML output: Simple types in a namespace are also
listed at file scope in index.xml
* id 166863: @class required fully qualified name even if the
comment block was in the right scope already.
* id 166898: Forward declaring a template class added the
template argument to next class defined
* id 167037: The method names were non-informative in the todo
like lists when HIDE_SCOPE_NAMES was set to YES (thanks to
Luigi Ballabio for the fix).
* id 167040: Related functions were listed as members in the
todo list.
* id 167462: Doxygen doesn't recognize references to methods
of classes that come as parameter
* id 168159: Sometimes enums don't have hyperlinks in the
source code.
* id 168243: Doxygen produced an unclear warning when putting
multiple @page commands in one comment block.
* id 168693: A C-style comment ending with a brief description
(including dot) and a **/ as end marker, caused strange
warning.
* id 168734: Nested C comments in a \code block confused the
preprocessor.
* id 168754: //@{ was not working with the new comment block
scanner.
* id 168871: \~ did not work in C++ style documentation and
aliases.
* id 168961: Fixed problem parsing arrays of unnamed structs.
* id 169003: cross-references were make to global variables
even if the global variables were hidden by local ones or
undocumented/private member variables.
* id 169069: static C++ variables with initializers were
detected as functions.
* id 169188: static functions were not extracted from PHP
classes even though EXTRACT_STATIC was set to YES.
* id 169495: const Qt properties were not parsed properly.
* id 169535: spaces after \ref command were not preserved in
<pre> context when the command had only one argument.
* id 169547: Removed bogus warning for friend classes inside
classes in an anonymous namespace.
* id 169549: Previous fixes introduced flattening of the class
hierarchy.
* id 169640: File suffix check for the D language was broken.
* id 169641: D contructors and destructors were not detected.
* is 169657: Fixed the way import is treated in D to prevent
recursive lockup.
* id 169784: Objective-C methods with a variable number of
arguments were are not parsed properly.
* id 169789: Images specified via \image are now also copied
to the XML output.
* id 170612: documenting members of nested anonymous compounds
did no longer work.
* id 170833: <code> ended a brief description.
* id 170835: doxygen didn't match members of classes in
unnamed namespaces with their definitions
* id 170846: template instance friend classes could not be
documented externally.
* id 171260: In some cases doxygen produced an incorrect
warning about duplicate detailed descriptions.
* id 171295: It now possible again to link to a (enum)value of
a @retval using #name.
* id 171376: \else command was not properly parsed if the
corresponding \if was disabled.
* id 171749: Using @relatesalso for functions in a namespace
didn't work correctly.
* It is now possible again to use Thing%s to auto-link to a
class Thing and put a non-linked "s" after it.
* Nested anonymous namespaces appeared as @<num> in the
documentation of the parent namespace.
* aliases containing @brief were not handled correctly.
* The class name in the HtmlHelp index was linked to the first
member function of that class instead of the class itself.