Doxygen Release 1.5.9
(release date 30-04-2009)
New features
- Added new option LATEX_SOURCE_CODE, which when enabled adds
source code also to the latex output (typically to be used in
combination with SOURCE_BROWSER)
- Included updates for the Finnish, Romanian, Korean, German, Japanese,
and Hongarian translation.
- Added translation support for Esperanto.
- id 579630: Added class attribute to the \todo and \bug HTML code so they
can be customized via CSS.
- id 578740: Added support for Æ and æ characters.
Bug fixes
- id 395169: Some links via tagfiles were not correct in
combination with CREATE_SUBDIRS=YES
- id 539080: Having the same comment for the declaration and definition
of a function could result in duplicate documentation in case the
indentation level was different.
- id 566713: Dot font was not removed even though DOT_CLEANUP was YES.
- id 566925: Fixed problem resolving symbolic links.
- id 567044: Fully qualified name was not shown correctly for nested
classes.
- id 567375: Fixed parse problem for typedefs with redundant braces.
- id 567535: Fixed problem when parsing operator%= for CLI/C++ code.
- id 567777: Fixed problem with latex output when using enums.
- id 567990: Doxygen could crash when there was a symlink in project.
- id 568237: Non-ascii values entered where not saved according to the
INPUT_ENCODING.
- id 568505: Fixed build problem for old Linux distributions.
- id 569478: Fixed line continuation issue with the Fortran parser.
- id 570960: C++ class defined in a .mm file was sometimes parsed as
Objective-C code.
- id 571013: In the wizard, editing a text field in the middle of the
text in the expert tab caused the cursor to jump to the end of the line.
- id 571096: Fixed Objective-C parsing problem when multiple protocol
forward declarations are put on one line.
- id 571990: Fixed compiler issue with portable_iconv by moving the
function to a C file.
- id 572560: Fixed parse issue when a #define is inside an enum.
- id 572740: Fixed problem parsing C++ comments using line continuation.
- id 573057: Included update for Swedish translator and changed
the language code from SE to SV to comply with ISO 639.
- id 578382: When referring to a static variable or function
doxygen will now look at the file context in case of ambiguity.
Doxygen Release 1.5.8
(release date 27-12-2008)
Changes
- Completely rewrote the doxywizard. Main changes:
- It is now based on Qt version 4. (4.3 or higher is required)
- Different layout that allows easy switching between wizard
and expert mode, without losing settings.
- Running doxygen can be done without first having to save
the configuration file.
- For HTML output, there is a button to show the results in
the default browser.
- Option to change the default configuration that is used
when you first start the wizard.
- Non-default options are shown with red label, and there is
context menu to reset them back to the default.
- Included Qt help update by Sebastian Pipping introducing
three new options to define custom filter sections and attributes:
QHP_CUST_FILTER_NAME,
QHP_CUST_FILTER_ATTRS,
QHP_SECT_FILTER_ATTRS.
Doxygen now directly generates the indices needed
by the qthelpgenerator.
Qt customers can have a look at issue 28 of the Qt Quarterly for
more information.
New features
- id 131496, 522488, 541649, 554800:
Add new option EXTENSION_MAPPING, which can be used to
change the
mapping of file extension to language parser, e.g. defining
EXTENSION_MAPPING = f=C
will make doxygen parse files with the .f
extension as if it were C files.
- Added support for Vietnamese (thanks to Dang Minh Tuan)
- Thanks to Emin Ilker Cetinbas doxygen can now also produce Turkish
documentation.
- id 143218: It is now possible to add the direction attributes
normally used with the @param command to document parameters
inline, e.g.
void foo(int v /**< [in] input parameter docs */);
Bug fixes
- TYPEDEF_HIDES_STRUCT did not work correctly if the typedef did a
forward declaration of the struct/union.
- id 153222: Fixed issue following recursive symbolic links.
- id 423223: Detailed description was not visible for group functions
when SEPARATE_MEMBER_PAGES was enabled.
- id 437346: Fixed issue handling multibyte characters in the RTF output.
- id 475377: Improved error handling in case of character encoding
problems.
- id 486747: Inherited typedefs were not resolved propertly.
- id 508752: Add support for BLOCK DATA to the fortran parser.
- id 532695: included documentation update about the use of \public
and friends for object-oriented programming in C.
- id 532808: References to class variables in PHP code did not already work.
- id 536394: Warning "no matching file member found" was given for a static
variables in multiple anonymous namespaces.
- id 537686: Fixed invalid empty section for enum in a member group.
- id 539590: C# generics with the same name but different template
parameters where merged.
- id 540321: A using declaration in a header file was not taken into
account in the source file that included it.
- id 540520: Have two C# enum values with the same name in different enums
was not handled properly.
- id 543036: //## comments were extracted even if they were not part of
Rose documentation.
- id 547436: Fixed issue combining Python docstrings and doxygen comments.
- id 551615: A multiline C# comment with @ was not shown correctly in the
source browser.
- id 544598: A multiline comment as part of a #define could case
wrong line counting and missing cross-references.
- id 545128: \overload didn't work if it was the last statement in a
comment and not followed by a newline.
- id 553380: Removed bogus warning refering to a namespace member from
with a brief description that was converted to a tooltip.
- id 553968: Added support for JavaDoc command {@code ... }
- id 554444: Bullet lists were no longer correctly indented when using
IE6.
- id 554674: Fixed index rendering bug in the RTF output.
- id 555174: The .qch file didn't include generated images.
- id 555200: Fixed potential crash bug when parsing special comment
inside an if at global scope level of a PHP code fragment.
- id 556240: Tree view in HTML output was not encoded correctly.
- id 557001: VHDL Parser got confused when -- is in a string literal.
- id 557014: Undocumented VHDL record member's internal record prefix
was not removed.
- id 557026: Obj-C Protocols and interfaces had wrong
type/name in DocSets.
- id 557031: Obj-C methods no longer require a space after the
initial - or +.
- id 557034: Fixed problem parsing property in Objective-C code.
- id 557038: Items in tabs.css could not be overridden by custom
style sheet.
- id 557419: $relpath$ was no longer expanded in custom HTML headers.
- id 557735: Summary for member groups was missing for groups and files.
- id 558078: collaboration graph of a class using std::list of another class
was not correct if the classes where inside a namespace.
- id 558460: When using \subpage, any section in the sub page was
missing from the LaTeX output.
- id 558525: Template classes produced invalid HTML in the tree view.
- id 559338: PHP Parser could get confused when there was a comment inside
an array initializer.
- id 559650: Obj-C @interface without body was handle correctly.
- id 560623: Mixin template classes where not shown properly in the inheritance
diagram if the classes where inside a namespace.
- id 563136: The brief sentence is not shown for groups with no children.
- id 563384: call graphs were not generated for Qt signals and slots
- Included VHDL fix by Martin Kreis.
- grouping of multiple @todo's (and friends) didn't work anymore,
causing duplicate sections and labels.
- Some issues related to the Qt help output were 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
- 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.
Doxygen Release 1.5.6
(release date 18-5-2008)
Changes
- The GENERATE_TREEVIEW option is not longer a boolean, but can now
have 4 values, NONE (was NO), FRAME (was YES), HIERARCHIES, and ALL.
Thanks to Jake Colman for the patch.
- a page marked as a sub page (\subpage) is now shown in the LaTeX and
RTF output as a section of its parent page. So the top level pages are
shown a chapters, subpages as sections, subpages of a subpage as
subsections, etc.
- Included spec file updates by Kenneth Porter.
New features
- id 514810: Added DOT_FONTNAME and DOT_FONTPATH options which allow
instructing dot to use a different font than FreeSans.ttf which doxygen
put in the output directory.
- id 517242: Added option CHM_INDEX_ENCODING to specify the encoding
to be used for the CHM index files. Needed because CHM index files
cannot handle UTF-8 encoding.
- id 519573: Included patch to make the font-size button visible in the
CHM output.
- id 521288: Added new options SHOW_NAMESPACES and SHOW_FILES to
Suppress Namepace and Files Pages.
- id 521495: Included a patch that makes it easy to modify the root of
the html treeview with an image using style sheets.
- id 522300: Added option IDL_PROPERTY_SUPPORT to enable/disable special
propget/propput handling in IDL files.
- Translation support for Finnish has been updated.
- Added option FORMULA_FONTSIZE which can be used to change the font size
of the formulas included in the HTML documentation.
- included update for Russian translation.
- included patch to fixed some issues with VHDL code and add support
for some VHDL-93 constructs.
Bug fixes
- Regression: fixed problem handling STL classes
when BUILTIN_STL_SUPPORT was enabled
- id 142866,377976: Added new \copybrief and \copydetails commands,
which work as \copydoc but then only copy either the brief or the
detailed part of a comment block.
- id 312655: DISTRIBUTE_GROUP_DOC didn't always work in combination
with SORT_BRIEF_DOCS enabled.
- id 352234: The search index could contain invalid references when
SOURCE_BROWSER=NO and CALL_GRAPHS=YES.
- id 402447: Added support for C# method declarations with where clauses.
- id 425029: WARN_FORMAT does no longer require all of
$file, $line, $text to be valid.
- id 495687: Replaced MAX_DOT_GRAPH_MAX_NODES with DOT_GRAPH_MAX_NODES
in the docs & config file.
- id 508694 Fixed problem with mixed simple and double quotes in
fortran format declaration
- id 508752: Fixed problem where the fortran scanner didn't recognize END
- id 510971: Fortran: parser was confused by double REAL() in processed
statements.
- id 514488: Fixed problem matching argument lists with const qualifiers.
- id 514891: PDF generation failed with a LaTeX error when tocdepth
was set to a value higher than 2.
- id 515518: Links in member group documentation was broken when
CREATE_SUBDIRS was enabled.
- id 516086: Fixed division by zero when producing RTF output for the
comment /** <table><tr></tr></table> */
- id 516536: Fixed build issues on OSX 10.4 and earlier.
- id 516070: Added support for simple events without accessors in C#.
- id 516387: replace 0xA0 character in perlmodgen.cpp by a space to
avoid compilation problems with the Chinese version of Visual Studio.
- id 517112: Regression: examples with the same name but different paths
cause "file not found" warning.
- id 518334: Fixed problem parsing Objective-C protocol definitions.
- id 518537: Hiding an enum with an undocumented typedef with the same
name caused explicit referencing of the enum to fail.
- id 519661: In some cases a function prototype could incorrectly be
flagged as a variable with constructor.
- id 520325: Fixed parse problem when comment was after an extern "C"
block and before the opening bracket.
- id 521234: Fortran: fixed problem causing
"stack empty! when parsing code"
- id 522225: PDF Latex output did not produce proper hyperlinks for \page
and \subpage comment blocks.
- id 522248: Page header were wrongly displayed in the RTF output.
- id 522415: Fixed compile errors in addon/doxmlparser.
- id 522600: Added additional warnings to signal invalid configurations.
- id 523138: Removed redundant paragraph in navigation section of the
HTML output.
- id 523326: Namespace name was prepended twice to template
specializations classes.
- id 524357: Default mentioned for REFERENCED_BY_RELATION relation
was not correct.
- id 524359: Default mentioned for REFERENCES_RELATION relation was
not correct.
- id 524473: Removed incorrect warnings about parameters in VHDL.
- id 525140: Improved handling of Objective-C 2.0 properties.
- id 525143: Properties are now listed as attributes in the UML diagrams.
- id 525144: GENERATE_DOCSET option greyed out in doxywizard.
- id 526155: Removed warning about QFile::setName when parsing VHDL files.
- id 527781: Template arguments for bases class not shown in a consistent
way.
- id 528023: Inheritance relations were not correctly displayed for
C# generics.
- id 528424: Fixed rendering bug in HTML output when used with Opera.
- id 528584: Using enum and enum value with the same name in C# code
caused crash.
- id 528620: Fixed typo in French translation.
- id 528815: Fixed problem parsing define() statements in PHP code.
- id 528989: Leading C comment could prevent preprocessor expansion for
the rest of the line.
- id 529803: Doxygen didn't find call(er) relations for C# when using
this.Method() calls;
- id 529554: Putting defined() inside a macro caused the preprocessor
to get confused.
- id 529758: C++/CLI: default inheritance is now public, nested templates
ending with >> are now handled properly as well as indexed properties.
- id 530201: Avoided warning for undocumented self parameter in Python.
Doxygen Release 1.5.5
(release date 10-2-2008)
Changes
- Pages created with @page are now chapters in the LaTeX and RTF output
and treeviews, and directly follow the mainpage. Also the project name
is not longer repeated for each chapter.
This should make it more convenient to create normal, printable
documentation with doxygen.
- For dot graphs with an edge with more than ten labels, only the first
ten are shown followed by an ellipsis; done to prevent very long
dot runs resulting in unreadable graphs.
- Use of pdflatex with hyperlinks is now the default.
- id 511116: C++ preprocessor macro names are now replaced in the
comments as well. For example, S and m are replaced in the comments for:
#define C(S,m) /** container S */ struct S { /** value m */ int m; }
- id 493923: The options SOURCE_BROWSER, CALL_GRAPH, CALLER_GRAPH,
REFERENCES_RELATION, and REFERENCED_BY_RELATION can now be indepently
enabled and disabled. By default the relations are now disabled.
New features
- Added support for VHDL (.vhd or .vhdl extension) based on a patch by
Martin Kreis. Use OPTIMIZE_OUTPUT_VHDL when parsing VHDL code.
- id 374699: Added support for Objective-C 2.0 properties.
- Added compilation support for MacOSX 10.5 (Leopard) incombination with
Xcode 3
- Added support for docsets, which allow integration of doxygen generated
API documentation in Xcode 3. new options:
- GENERATE_DOCSET: enables/disables the feature
- DOCSET_FEEDNAME: sets the provider/suite name under which the set is
listed.
- DOCSET_BUNDLE_ID: A unique name for the docset.
See the configuration file or manual for more details.
- id 493467: Added compilation support 64bit Solaris machines in
combination with Sun's own compiler (thanks to Heiko Jansen).
- id 153376: Added support for the \tparam command, which works similar to \param
but is meant for documenting template parameters.
- id 140104: Added \headerfile command which can be used to specify
the second and third argument of a \class command, when
the documentation is already in front of a class definition.
- Added translator support for Macedonian.
- Added language updates for German, Perian, Spanish, Taiwanese,
and Chinese, Korean, Croatian.
Bug fixes
- Fixed potential crash bug due to wrong pointer check.
- Using @param as the first word in a comment block did not work properly
in combination with JAVADOC_AUTOBRIEF set to YES.
- Some character's could be missing from IDL properties.
- Automatic abbreviations did not work for nested classes or classes
in a namespace.
- Fixed a preprocessor bug where the line numbers of a definition could
get out of sync with the source code.
- id 142023: Putting Qt signals or slots in a group did not
make them appear in the group documentation.
- id 318668: Comments in Python function argument lists got messed up.
- id 325359: Added support for C# XML-doc commands typeparam and
typeparamref.
- id 331674: Aliases did not work in Python code.
- id 356399: Fixed strange warning when specifying a tag file with an
anchor twice.
- id 363828: Docstrings found at the top of a python file are handled
as module documentation again.
- id 429437: A #include outside the input files was not searched
in the current directory of the file containing the include.
- id 451299: Sometimes the wrong include file chosen when ambiguous
- id 460585: @cond did not work in Python code.
- id 477377: Function in undocumented anonymous namespace cause broken
link if EXTRACT_ALL was set to NO.
- id 484731: Additional fixes for parsing Fortran.
- id 488125:
operator->* was not displayed properly in the output.
- id 490766: Fixed compile error in fortranscanner.l which occurred for
some compilers.
- id 492027: Ampersand (&) in front of parameter stops documenting
of PHP source
- id 493249: using a namespace (or fortran module) caused the namespace
to appear in the documentation as if it was defined.
- id 493434: Nested C# style XML lists in a comment block were not
handled correctly.
- id 494187: Doxygen could crash due to an infinite recursion when
using tag files.
- id 494599: When updating a config file an extra space was added just
before the end of a quoted string.
- id 494760: Putting a # in a path name using Doxywizard, caused the
# to interpreted as the start of a comment in the Doxyfile.
- id 495656: Description of default used for DOT_TRANSPARENT was wrong.
- id 495687: Fixed typo in the description of DOT_GRAPH_MAX_NODES.
- id 496392: Putting character entities like é in section/group
titles resulted in ´ in the output.
- id 498049: Improvements to .spec files for RPM creation.
- id 498680: Callgraphs for functions in anonymous namespaces generated
invalid labels for 'dot' when EXTRACT_ANON_NSPACES was set to YES.
- id 498711: Reference parameters in PHP were not properly parsed.
- id 499577: Collaboration diagrams not working with typedef
- id 500227: Wrong output generated for Objective-C methods with
multiple arguments for LaTeX or RTF output.
- id 500635: Project name is no longer placed before each top level
item in the treeview and other indices.
- id 500465: Fixed some issues compiling for AIX.
- id 500928: Fixed parser issue handling a tripple quoted
string when used to initialize a Python variable.
- id 500944: Python variables with package scope were only extracted if
EXTRACT_STATIC was enabled.
- id 501704: Line numbering was wrong when a #include was placed inside
an array/struct initializer list.
- id 502213: Combining a brief and detailed description in an alias
produced the warning "unknown command \_linebr".
- id 502447: Single quoted PHP strings were not handled correctly
by the source code parser.
- id 503939: Variable was checked before initialized.
- id 504120: TYPEDEF_HIDES_STRUCT now also works for enums.
- id 504439: Assert when marshaling a member which had an associated
example.
- id 504650: Generated LaTeX code injected hyperlinks into section titles.
- id 507052: Fortran function named x_function was not properly handled.
- id 507603: Enabling FILTER_SOURCE_FILES caused strange warnings when
INPUT_FILTER is empty.
- id 508740: Using upper case port mode specifiers did not work correctly.
- id 508753: Fortran: Added .f as allowed fortran extension.
- id 508759: Fortran: fixed potential memory corruption while scanning
parameter lists.
- id 507528: XML output was not correct for pointer arrays.
- id 508752: Fortran scanner didn't recognize lonely END
- id 509278: Spaced before the \internal command where treated as
documentation.
- id 509582: Fortran: Spaces in function return type were not parsed
properly.
- id 510387: Fortran scanner didn't parse initialisation of complex type
correctly.
- id 511921: @file command ended brief description even when
JAVADOC_AUTOBRIEF was enabled.
- id 512620: \copydoc of a comment with @param commands could result in
warnings that parameters were not documented.
- id 513570: Fixed cross site scripting vulnerability in the
search.php script.
- id 514814: Included missing fromUtf8 calls to translator decoder to
prevent potential language encoding issues.
- id 513885: Using
this-> inside a function could result in incomplete
call graph.
Doxygen Release 1.5.4
(release date 27-10-2007)
Changes
- id 469260: When setting SOURCE_BROWSER to YES, all undocumented classes also ended
up in the documentation. Now this will only happen if EXTRACT_ALL is also
enabled.
- Upgraded included third party libs libpng and zlib to version 1.2.21 and 1.2.3
respectively.
New features
- Included support for parsing Fortran 90, thanks to a patch by
Anke Visser and Oleg Batrashev (source: http://dougdevel.org/index.php?page=doxygen)
- id 477548: Added config option SIP_SUPPORT to support handling SIP sources
(used for Python to C++ bindings).
- id 475828: Added support for CLI/C++ style indexed properties.
- Added config option TYPEDEF_HIDES_STRUCT which when enabled treats a typedef
of a struct as a struct with the name of the typedef. This behavious was
coupled to OPTIMIZE_OUTPUT_FOR_C in the previous version and is now an independent
option.
- Included updates for the Korean, Brazilian and Chinese translations.
Bug fixes
- id 314541: Fixed wrong DOCTYPE in HTML output when GENERATE_TREEVIEW was set to YES
- id 321784: Changed scope resolution algorithm to avoid lookup failures on using
directives (thanks to Christoph Schulz for the patch).
- id 415866: Fixed bug in preprocessor causing "More #endif's than #if's found" warning.
- id 426971,465020: A brief description would in some cases be treated as a
detailed one.
- id 430148: Doxygen reported "Internal Inconsistency" for class member inside
anonymous namespaces.
- id 433449,363010: Removed Internal inconsistency when referencing enum values found
in a tag file.
- id 438282: Line numbers were displayed when using \include inside \example.
- id 443942,461433: mscgen was not called correctly on Windows when
generating .map files.
- id 457346: increased the threshold for adding line breaks to the type part of a
declaration.
- id 460294: Missing references in source browser when using the "register" keyword.
- id 461889: Fixed bogus "no matching class member found" case.
- id 462051: In certain cases doxygen failed to find the proper inheritance relation.
- id 462077: Error in LaTeX index generation due to unescaped characters.
- id 462159, 143250: Added support for parsing functions/methods returning a
pointer or reference to an array, e.g. a function of the
form: "int (*f(int))[];"
- id 462436: Inheritance from an unknown template class was not handled consistently.
- id 462439: Adjusted \author documentation.
- id 462757: Fixed Latex output bug for members of anonymous struct or unions.
- id 462861: Members references via tagfiles were sometimes broken.
- id 463139: Doxygen failed to detect duplicate variable declarations in the same file.
- id 465138: HTML entities in page title (such as ü) where not displayed
correctly in the HTML output.
- id 465170: Wrong line numbers reported for errors when using multiline formulas.
- id 465172: Fixed issues parsing <code>operator</code>.
- id 466803: Fixed crash when parsing Java enum with empty field.
- id 466890: Handling of CVS/RCS keywords was broken.
- id 466910: When UML_LOOK is set to YES, the graph orientation is always top to bottom.
- id 466991: Template argument using '?' operator breaks file generation.
- id 468858,472310: C++ casting operator with templates was displayed wrong.
- id 468937: .hhc and .hhk was missing the </body> and </html> tags.
- id 469269: When HTML_DYNAMIC_SECTIONS was enabled, index.hhp missed
open.gif and closed.gif.
- id 470029: Fixed crash while parsing a particular piece of PHP code.
- id 471185: The word "property" was stripped from functions that started with it.
- id 471495: Objective C category documentation was ignored in some cases.
- id 472193: Fixed issue expanding multiple occurrences of the same alias command
argument.
- id 472201: Removed spurious warning introduced by the fix for bug 465170.
- id 473105: Auto link to nested class inside a base class was missing.
- id 473140: Anonymous scope ended up wrongly in the XML output.
- id 473402: context dependent \ref's inside a dot or msc graph did not work anymore.
- id 473679: Doxygen skipped function if return type contained round parenthesis.
- id 474529: index entries in LaTeX could be wrong on some platforms.
- id 476035: Externally referenced links obtained via a tag file had an extra g in
the anchor
- id 476562: argument of copydoc appears in XML output without proper escaping.
- id 476766: Type of a virtual destructor was "virtual" in the XML output.
- id 479113: Automatic links were not generated when next word started with "const".
- id 479762: Wrong character encoding was used for dot files.
- id 480722: File tooltips incorrect for the include dependency graph.
- id 481168: Allow \f{environment}{ .... \f} so the number of braces matches.
- id 481107: Using HTML_FILE_EXTENSION to set a non-default extension did not work
for the "no frames" link to main.html when GENERATE_TREEVIEW was enabled.
- id 481827: Macro expansion removed the @ character when it appear in a C comment.
- id 482964: The "template" word was a little too close to the rounded border in
the html output when rendered by Firefox.
- id 484277: Adjusted the instructions to report a bug in the hope this will result
in less duplicate bugs.
- id 484731: Fixed issue parsing unindented interface (Fortran).
- id 486159: Fixed problem parsing \xrefitem commands in joined comment blocks.
- id 488760: Added support for Trigraphs to doxygen's C-preprocessor.
- id 488800: Fixed problem in perlmod generation.
- id 488837: abstract class in PHP was not properly parsed.
- id 489049: Setting MUTLILINE_CPP_IS_BRIEF to YES could cause wrong line number
references.
- Call graphs were not properly synced between function declaration and definition.
- Fixed bug in doxygen's internal caching mechanism which could make doxygen
forget enum lists for large projects.
Doxygen Release 1.5.3
(release date 27-7-2007)
Changes
- When
OPTIMIZE_OUTPUT_FOR_C is enabled then a struct definition of the
form typedef struct _S { ... } S_t will be shown in the output as a
struct of type S_t and the typedef itself is omitted
(previousily _S was shown
as well as a typedef of the form typedef _S S_t).
- Improved the line-breaking rules for members whose return types have many characters
(for example a function returning a pointer to a template class).
- Multiple brief and detailed descriptions are now possible. It is still not
recommended to make use of them, but at least no documentation is silently hidden
when there are two brief or two detailed descriptions for the same entity.
- Improved dot layout control and page sizing to better fit images on the screen
and paper.
New features
- Added support for aliases with arguments,
see the manual
for more information.
- Added
HTML_DYNAMIC_SECTIONS option which, when enabled,
will produce sections
in the HTML output that can be expanded/collapsed. Currently used for
diagrams and graphs.
- Added support for type constraints as available in the C# language ("where" clause)
- id 332263: Added new option
EXTRACT_ANON_NSPACES that when set to YES will extract
the contents of anonymous namespaces and show then in the output.
- id 423765: Added support for <see cref="SomeSymbol"/> style XML comments.
- id 426971: Added
QT_AUTOBRIEF config option, which has the same meaning
as JAVADOC_AUTOBRIEF only now for /*! .. */ style comment blocks.
- id 435108: Reintroduced the
MAX_DOT_GRAPH_DEPTH option as a means to further
reduce the size of a graph.
Bug fixes
- id 137644: Fixed issue with "const" parsing of a typedef'ed struct where the "const"
is placed after the struct definition.
- id 153362: A typedef of a function pointer was not shown correctly in the output.
- id 156003: Wrong template arguments when using @related for a (template) function
with a template class.
- id 170004: The check for PDF or DVI in the generated latex output
was not always reliable.
- id 300022: PHP code with unknown extension was parsed as C/C++ code. Added a
detection rule for <?php to switch to PHP parsing.
- id 317967: Setting
USE_PDFLATEX to YES now generates a
Makefile with a "pdf" target,
to be consistent with the documentation.
- id 397099: Fixed several cases where "referenced by" relation was unresolved.
- id 423776: XML style see tag resulted in messed up documentation.
- id 426852: \hideinitializer was sometimes ignored when using structural commands.
- id 426977: Included a patch allow building under recent versions of Cygwin
- id 427991: Doxygen failed to call mscgen.exe properly on Win32 platforms.
- id 430962: struct keyword was stripped from typedefs even for C code.
- id 431049: Fixed potential crash when
GENERATE_PERLMOD was enabled.
- id 431202, 333607: Quotes inside strings caused the Pythons parser to get off track.
- id 431763: doxygen crashes when using unsupported tags in the config file.
- id 432420: Last enum value of a Java 1.5 style enum with constructor did not appear.
- id 432743: The "std" namespace appeared in the output when
BUILTIN_STL_SUPPORT was enabled.
- id 432757: Setting
INLINE_INHERITED_MEMBERS to YES,
did not inherit the group of grouped members of a base class.
- id 433630: Using double-quotes (") inside a brief description could lead to
errors in dot files when the brief description was used as a tooltip.
- id 434079: The number of graph nodes could still be too large despite a
conservative
DOT_GRAPH_MAX_NODES setting.
- id 436648: List of class members was no longer complete under certain conditions.
- id 437218: Special characters in \brief string cause problems HTML/XML in source
listings.
- id 438300: Fixed two cases where doxygen could access memory outside array
boundaries under certain conditions.
- id 441114: Add support for <term> inside <list> to conform to
C# XML comments.
- id 442313: Casing of special commands was not handled consistently.
- id 443942: Fixed problems running mscgen.
- id 444823: No newline after the error message when hhc failed with return code >0
- id 445105: Fixed some issues and wrong spacing for the RTF generation.
- id 446585: Doxygen could crash when producing a warning for undocumented C++/CLI
arguments of the type "T%".
- id 447133: Replaced occurrences of ' by ' in the HTML output.
- id 448210: Make rule to install manpages was broken.
- id 451297: Fixed more issues where using double-quotes (") inside a brief
description could lead to errors in dot files when the brief
description was used as a tooltip.
- id 452824: In the source browser linking of a local variable did not work
after a sizeof() of the variable.
- id 452828: Missing reference to struct member in the source browser due to
incorrect bracket count.
- id 453366: Removed bogus warning for unresolved references in brief descriptions.
- id 453918: The __init__.py files were incorrectly treated as modules causing
scoping issues for symbols defined inside such file.
- id 456471: Changing the installation location (--prefix) did not affect the
location were the documentation was installed. --docdir can still
be used to overrule the location for the documentation.
- id 456475: Added support for C++/CLI style finalizers.
- id 457857: Leading "struct" keyword is no longer stripped from the documentation of
functions that return a pointer to a struct.
- id 458710: Expanding environment variables in the config file to a
file or path name with spaces (e.g. "$(VCInstallDir)include") was
incorrectly interpreted as a list when used with for instance
INPUT.
- id 458749: Undocumented constructors/destructors inside an undocumented member group
were not visible in the output.
Doxygen Release 1.5.2
(release date 4-4-2007)
Changes
- The options
MAX_DOT_GRAPH_WIDTH, MAX_DOT_GRAPH_HEIGHT, and MAX_DOT_GRAPH_DEPTH have
been replaced by a single option DOT_GRAPH_MAX_NODES, which can be used to
limit the size of a graph indirectly, by specifying the maximum amount of nodes in
the graph. The main advantage is that this can be computed much faster; dot has
to be run only once per graph and never on graphs with more than the specified
amount of nodes. Note that doxygen will always render the root node and its
direct children even when DOT_GRAPH_MAX_NODES = 0.
- Parameters names are now copied to reimplemented functions, avoiding warnings about
missing or wrong parameter names when
INHERIT_DOCS = YES.
New features
- id 150916,159291,166209,330109,396316
Doxygen now uses UTF-8 internally for all strings and uses
iconv to recode the input to UTF-8. For HTML, LaTeX and man pages
the output is now always UTF-8. For RTF the encoding is local and
depends on the code page specified in the translator.
The config option
USE_WINDOWS_ENCODING has been removed.
A new config option INPUT_ENCODING has been added which can be used to
specify the encoding of the input. Another config option DOXYFILE_ENCODING
can be used to specify the encoding of the config file itself.
- Added support for message sequence charts (using mscgen).
For this two new commands have been added: \msc and \endmsc (similar
to \dot..\enddot), and a new config option
MSCGEN_PATH (similar to DOT_PATH)
See the manual and website for more info.
- Added support for C++/CLI. To enable it set
CPP_CLI_SUPPORT to YES in the
config file (thanks to Ben Voigt for doing a lot of the work).
-
IGNORE_PREFIX now also works for function/members names when shown in the various
indices.
- Doxygen will show a tooltip in the HTML output for links to classes, namespaces,
and members with the brief description (including dot graphs and source code).
- id 321575: Added a new config option
EXCLUDE_SYMBOLS which can be used to
exclude certain namespaces/classes/functions from the output by specifying
their name (which may include wildcards).
- id 364536: Included patch by Ben Voigt which adds syntax highlight
support for several (managed) C++ keywords.
- id 419349: Added two LaTeX layout enhancements provided by Stefan Pawig.
Bug fixes
- id 132886: Included patch to fix an issue with using a sequence of xrefitems
- id 134792: Added configure script for Cygwin autodetection.
- id 162006: Doxygen now uses the default search path of dot for user defined
dot graphs (defined with @dot and @dotfile).
- id 306231: Include fix for Japanese translation.
- id 315543: htmlinclude didn't work as part of a description of a param.
- id 322806: Doxygen now does not treat >> in a template list as a shift operator
for Java and C#.
- id 332815: Legend generated with
GENERATE_LEGEND did have typo.
- id 345820: Included patch to make doxygen handle config files with
@INCLUDE with absolute paths correctly.
- id 364780: Included patch to improve scope handling of nested classes/namespaces by
the code parser (thanks to Ben Voigt).
- id 366113: Fixed configure script issue under Solaris.
- id 367233: Non-class functions were duplicated in the xml index file.
- id 367495: Windows build files had only support for English by default.
- id 369499: In some cases variable names were duplicated in python source code output.
- id 369200: Fixed parse problem when a single quote appeared in a Python comment line.
- id 373229: Doxygen now gives a warning when it cannot inline a #include inside a body
- id 374486: Inheriting from a template argument via an intermediate typedef could
result in invalid output.
- id 375073: \ref could cause wrong XML output.
- id 375753: Added missing new line to error message.
- id 377911: Fixed problem with end of formula.
- id 380516: Fixed line number issue in the Python parser.
- id 381450: Tabs in the HTML output redefined the value of an "id" attribute,
which is not legal HTML.
- id 374592: Member grouping didn't work properly for constructors.
- id 381608: Initializer values of class variables and constants did no longer
appear in the documentations.
- id 382274: Scanning files with
RECURSIVE enabled ignored EXCLUDE_PATTERNS.
- id 383377: C# code was not passed though the C-preprocessor.
- id 383493: Improved the warning message for unterminated code/verbatim blocks.
- id 384439: Made comment block parser more robust against HTML errors.
- id 385384:
SEPARATE_MEMBER_PAGES=YES caused broken links in Html Help index.
- id 387781: Parsing #import statements was broken for Objective-C.
- id 387848: Included patch to avoid LaTeX compilation issues.
- id 389656: For C# enums in the same scope can have the same values, but doxygen's
parser got confused.
- id 389750: Fixed alignment bug in the default html footer generated by doxygen.
- id 390821: Fixed problem parsing Java 1.5 enums with initializers.
- id 391619: When dot produces an non-zero return code, doxygen now prints the
return code and the command it tried to execute.
- id 407815: Doxygen's got confused by certain combinations of " and ' s in PHP code.
- id 409935: Fixed bug in qcstring.cpp
- id 411300: PDF/Latex output was broken for operator[] documentation.
- id 411328: Fixed Accessibility/Section 508 Compliance issue.
- id 413071: Added support for Java 1.5 annotations.
- id 415683: Two typedefs of function pointers with different names could still
resolve to the same type if the only difference was the argument list
and as a result cause "Undocumented function" warnings.
- id 418920: Doxygen stripped leading comment chars from C# code blocks.
- id 421131: Character encoding was not consistent for all HTML files.
- The "list of all members" was not shown for a class with no members that derived
from a class with members.
Doxygen Release 1.5.1
(release date 29-10-2006)
Bug fixes
- id 148567: @todo at the end of a comment block caused problem when copied by @copydoc
- id 352420: Fixed bug in LaTeX output (missing space after \bf).
- id 363227: missing output for instance variables defined in a Python function
that has a doc string
- id 363397: Member groups did not appear in a class when SUBGROUPING was set to YES.
- id 364341: Parsing could become really slow if often included header files contained
using statements.
- id 364673: The values of two enums with the same name (both in difference scopes)
where merged.
- The version of dot shipped with the Mac binary had some non-standard dependencies.
- Doxywizard didn't work on PC's where no Visual Studio 2005 was present, when build
with the project files (I'm now using /MT instead of /MD which fixes this issue).
- Running 2 instances of doxygen on the same output directory caused corruption of
the temporary files generated by doxygen.
Doxygen Release 1.5.0
(release date 16-10-2006)
Changes
- cleaned up the internal structures to make them smaller, and made doxygen use
a temporary file to store the parse results (instead of keeping them in memory),
which will further reduce the memory usage, especially for large projects, and is a
first step towards incremental parsing.
New features
- Added example application that shows how to configure and run doxygen from
within an application and use the information collected by doxygen without
also generating the output (see addon/doxyapp).
- id 322467: Sections produces by \note, \warning, \remarks etc, now have a
class label in the generated HTML (<dl> tag) so you can give them a
distinct style using a non-default stylesheet (i.e. using HTML_STYLESHEET).
- Added project files for building doxygen from Visual Studio 2005 (see winbuild dir).
- added translator updates for Czech, Danish, German, Catalan, Croatian, French,
Japanese, and Italian.
- added translator support for Arabic (thanks to Moaz Reyad)
- added translator support for Persian (thanks to Ali Nadalizadeh)
Bug fixes
- id 131445: Fixed autolinking for related functions.
- id 137236: Updated documentation to make it clear that a lower-case only word
is not a candidate for autolinking.
- id 141758: Fixed a problem parsing <?=...?> contructs outside of functions in PHP.
- id 319169: Second level index not shown when DISABLE_INDEX=YES.
- id 325337: Added "optimize output for C#" option to Doxywizard.
- id 325426: Partial C# class inside a namespace where not handled properly.
- id 327358: Fixed wrong link to the search engine when CREATE_SUBDIRS was set to YES.
- id 326885: Leading ///'s ended up in code fragments when using indented
/// comments.
- id 330513: For file documentation, the scope not stripped for namespace members
even if HIDE_SCOPE_NAMES was set to YES.
- id 335131: Fixed "internal inconsistency" warning related to use of nested
classes defined outside a used namespace.
- id 338475: Added support for Q_SIGNALS and Q_SLOTS macros (thanks to Thomas
Zander for the patch).
- id 340973: Improved performance of "Computing template instances" step
significantly in case of (large) Java projects.
- id 342090: Fixed missing cross-reference to "m" for code of the form f(a[s.f]->m)
- id 344443: Code font commands where not treated properly in C# style comments.
- id 344445: Made it more clear in the documentation where the XML commands in the
comment blocks are for, and how <code> works in C#.
- id 345322: DOTFONTPATH was corrupted in mingw builds.
- id 345519: Fixed problem parsing attributes in C#.
- id 345660: Python class members that spanned multiple lines could confuse the parser.
- id 345742: enum values were shown twice in some cases.
- is 346095: Forced a newline before \normalsize in the LaTeX to avoid
font size issues.
- id 346848: Under certain conditions nesting of groups did not work properly.
- id 347444: paramref XML command did not render properly.
- id 348259: Doxygen now keeps the _formulas.log file when there is a problem
generating bitmaps for formulas. This can help to identify the problem quicker.
- id 348481: friend class in unnamed namespace produced bogus error.
- id 348537: Fixed internal inconsistency warning that could occur when reopening
an anonymous namespace
- id 349867: Fixed issue handling brief and detailed description when
both are positioned after an item.
- id 350168: Doxygen didn't parse C# type contraints properly.
- id 351890: In some cases C# attributes were treated as properties.
- id 353044: C99 style variadic macros were not handled properly by doxygen.
- id 353195: Member grouping with SUBGROUPING = YES now works the same for files
and namespaces as it does for classes.
- id 354765: A command like \ingroup now ends a brief description as was the case
in the pre 1.4.x series.
- id 355922: When a function was found in a namespace but also in the global
namespace, doxygen could make the wrong cross-reference.
- id 356204: Setting HIDE_UNDOC_RELATIONS to NO could result in
argument mismatches in certain cases.
- id 357092: Spurious doxygen warning when using a class that ends with 'const'
or 'volatile'.
- id 357438: tabs and newlines were not parsed properly for html attributes inside
a comment block.
- id 357646: objcache.cpp did not compile cleanly on a system with 64 bit pointers.
- id 361812: whitespace after the colon at the end of a Python definition caused
parsing issues.
- "struct Foo operator+()" was not parsed properly due to the "struct" keyword.
- As a side-effect of bug 329861 Obj-C protocols and categories were no longer
extracted.
- Fixed an problem with cross-referencing Obj-C code.
- Removed the memory leaks reported by valgrind and tuned some data structures
to reduce the memory usage.
- enums in a used namespace could cause arguments not to match.
- fixed several cases where arguments of function/method declaration and definition
did not match while they should.
Go back to the main page.