 |
Doxygen Release 1.6.2
(release date 30-12-2009)
Changes
- id 594787: Autolinking to all-lower case words has been disabled,
in accordance with the documentation.
- id 604543: Doxygen now allows any extension supported by dot via the
DOT_IMAGE_FORMAT option.
- Switched back to using PNGs for built-in diagrams and formulas using
the Lode Vandevenne's PNG encoder.
New features
- Added new option SERVER_BASED_SEARCH to re-enable searching via a
PHP enabled web browser instead of only using javascript locally.
This method better scales to larger projects and allows full text
search.
- Added new options GENERATE_ECLIPSEHELP and ECLIPSE_DOC_ID
to generate an index file that can be used to embed doxygen's HTML
output into Eclipse as a help plugin
(thanks to a patch by Ondrej Starek).
- Wrote new documentation
regarding the methods of searching in the HTML output.
- Included patch by Ed Rosten to render formulas with
proper anti-aliasing on non-white backgrounds using transparency.
- Add new option FORCE_LOCAL_INCLUDES to make the default #include
appearance in class documentation with "" i.s.o sharp brackets.
- id 558457: Make \addindex put keywords into the .qhp file.
- id 595214: #cmakedefine is now treated the same was as #define
(for users of the CMake build system).
- Added compilation support for OSX 10.6 (aka Snow Leopard)
- Included language update for Brazilian.
Bug fixes (ids refer to the bugzilla database)
- Doxywizard did not warn when it failed to save its config file.
- id 557035: Empty class definitions were not included in Tokens file
for docsets.
- id 563233: GENERATE_QHP details was considered even though it is
not defined.
- id 567346: Comment parser could get stuck in certain cases.
- id 570369: GENERATE_QHP should generate keywords for classes in
generated *.qhc.
- id 571964: Fixed two issues in the compound.xsd schema definition.
- id 592991: Fixed wrong default destination directory.
- id 593040: Fixed problem with distributing member group documentation
for anonymous member groups.
- id 593273: GENERATE_TODOLIST=NO and friends not longer worked.
- id 593928: Added support for UCS-2 encoded input files.
- id 594391: Fixed problem parsing fully-qualified java annotations.
- id 594592,596815: Fixed problem handling quotes.
- id 595191: Not all configuration options appeared in the index of
the documentation and some were not sorted correctly.
- id 595253: formulas had the .png extension while they were gifs.
- id 595833: Fixed recursive lockup while resolving template relations.
- id 595935: Doxygen's preprocessor got confused when /**/ appeared as
part of a macro definition.
- id 596085: Removed obsolete option USE_WINDOWS_ENCODING from the docs.
- id 596233: RTF output was missing a new paragraph for brief
member descriptions.
- id 596807,596819: Code reformatting done for the LaTeX output could
break multibyte UTF-8 characters causing invalid output.
- id 596809: Using multibyte characters in a page label caused invalid
output.
- id 596816: Documented the interaction between LATEX_CMD_NAME and
USE_PDFLATEX.
- id 597015: Todo items for two inner classes with the same name where
collapsed together in the todo list when HIDE_SCOPE_NAMES
was enabled.
- id 597016: Scope was not hidden for members in the todo list even
though HIDE_SCOPE_NAMES was set to YES.
- id 598497: Struct variable with explicit struct keyword got labelled
with [read] attribute.
- id 596902: PHP was not parsed properly when it appeared in a
<script language="php"> section.
- id 597415: Fixed problem matching base class member against the
member in the derived class.
- id 597518: Makefile for Docsets now honors DESTDIR.
- id 598298: Made browsing for HHC_LOCATION via the wizard
yield an absolute path.
- id 599128: Changed default for CHM_INDEX_ENCODING to CP1250 to avoid
issues in a Solaris environment.
- id 595931: Removed unnecessary paragraphs from HTML table cells.
- id 597541: referring to page labels of the form a-1 did not work.
- id 599224: Code generators could produce extra </span> tags.
- id 599974: Included the PHP search engine again (with new config
option SERVER_BASED_SEARCH to enable it)
- id 600544: Doxygen produced invalid Latex output for RCS tags.
- id 600563: Fixed issue with include dependency tracking that could
cause macro expansion not to work properly.
- id 600940: Fixed issue with VHDL call graph (thank to Martin Kreis
for the fix).
- id 601138: Fixed problem parsing C++ function-try-blocks.
- id 601222: #include inside a class could cause line numbers to be off.
- id 601223: Fixed parsing problem skipping over /**/ comment.
- id 601694: Fixed problem handling Javadoc style {@code ... } blocks.
- id 601771: Special commands did not work in the title of
the @mainpage.
- id 602818: Fixed problem parsing files that start with UTF-8 BOM.
- id 603001: Fixed problem parsing friend function with explicit scope.
- id 603238: Fixed perlmod generation issue.
- id 604948: Project number was not centered anymore in the HTML output.
- id 604503: Using %word in a page title incorrectly did show the %.
Doxygen Release 1.6.1
(release date 25-08-2009)
Bug fixes
- Fixed file handle leak when parsing include files. Also fixed
the logic that determines whether or not an include file need to be
parsed.
- Search result pages were not using UTF-8 character encoding.
- Search results pointing to external references were not linked correctly.
- id 133418: Multiline second argument of \ref caused unexpected " warning.
- id 592454: Feeding invalid XML could crash doxygen's DBus XML parser.
- id 592485: Include patch to fix problem with building rpms.
- id 592511,592625: Doxywizard problem with GENERATE_TREEVIEW.
- id 592650: SHOW_USED_FILES now works again.
- id 592808: xrefitems (like @todo) did not appear in the list when
found in comments marked with @enum or @name.
Doxygen Release 1.6.0
(release date 20-08-2009)
Changes
- id 580924, 541234: Replaced the PHP based search engine by a
Javascript/DHTML based one.
As a result the search feature no longer requires a HTTP server
with PHP enabled to be usable. Searching is limited to symbols
though, but it is now possible to filter on symbol type.
- id 519886: Make the HTML output XHTML 1.0 compliant.
- id 579950: Objective-C categories are now merged with their base
class, unless there is no base class.
- Member groups with the same header within the same scope are now
merged. This also works for Objective-C categories.
- Changed the LaTeX style sheet such that more of the markup is
configurable. Please update your style sheet if you use a custom one.
- id 584844: Treat \details inside a brief description as a new paragraph
command.
- Split GENERATE_TREEVIEW into two separate options:
GENERATE_TREEVIEW and USE_INLINE_TREES.
- Removed the dependencies on libpng and libz, doxygen now generates
gifs again for internal class diagrams (like it did 7 years ago ;-)
New features
- Added option SORT_MEMBERS_CTORS_1ST, which when enabled places the
constructors and destructors first in an otherwise sorted list.
- id 581518: Applied patch by Tobias Hunger that adds support for
documenting DBus XML interface descriptions.
- Included QtHelp patch by Karsten Heimrich which adds missing
reference and keyword for methods.
- Included updates for the Korean and Polish translation.
Bug fixes
- id 131989: Fixed preprocessor handling for C# code.
- id 133418: -- was not rendered correctly for LaTeX output
- id 157485: Missing link in todo page.
- id 318061: Two template functions that only differed in the number
of template arguments were seen as the same function.
- id 443939: HIDE_UNDOC_CLASSES did not work properly.
- id 509348: Fixed problem with syncing the information of
declaration and definition in the presence of an extra forward
declaration in the source code.
- id 522193: For C# enum values were merged together if the same enum
name was used in different scopes.
- id 523167: Included patch to handle PROGRAM statement in Fortran as
subroutines/functions.
- id 554636: Remove spacing around brackets for Obj-C protocols.
- id 557026: Included patch for fixing wrongly labeled items in docsets.
- id 560512: Improved parser to better disambiguate
nested templates ending with >> from the bitshift right operator.
- id 570238: Fixed matching problem for method in nested class, where
the outer class is a template.
- id 581746: Segfault/realloc error when a very long path was used.
- id 582469: documented #define with guard caused wrong documentation.
- id 582276: Doxywizard could crash on exit in some cases.
- id 582676: Regression: a struct ivar in ObjC class screws up method
identification.
- id 583213: Included patch that avoids trailing spaces in the
generated Doxyfile template.
- id 584192: Included VHDL patch by Martin Klein
- id 585543: Fixed case where matching declaration and definition did
not work correctly.
- id 585260: The "more..." link for files was broken, since the anchor
was not generated.
- id 586925: Fixed parsing problem when an unpaired apostrophe
appeared in a Python comment.
- id 588291: Included fix for doxywizard makefile.
- id 588587: Added missing virtual destructor to CompAccept base class.
- id 588968: Fixed segmentation fault for specific case in PHP code.
- Fixed some issues building for Windows.
- id 589514: Fixed problem handling strings like a"\b" within a comment.
- id 589616: Fixed problem matching explicitly scoped parameter in a
template class.
- id 590712: A namespaced with name "internal" (C++/CLI keyword)
could confuse doxygen's C++ parser.
- id 591749: @optional/@required attributes for Objective-C were missing
from the XML output.
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.
Doxygen Release 1.4.7
(release date 11-06-2006)
Changes
- The stylesheet has changed, so if you use your own, you will need to
update it or the output will look ugly.
New features
- 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.
(thanks to Daniel Sherwood for the patch)
- Added REFERENCES_LINK_SOURCE config option which allows to selected
if reference relations should point to the source or to the
documentation (thanks to Daniel Sherwood for the patch).
- Included patch by Christoph Pesch to mention the member type in the
warning "Member ... of ... is not documented".
- included update for Spanish, Italian, Norwegian, and Czech translations.
- Added support for get/set properties in IDL (thanks to a patch by
Sander Stoks).
Bug fixes
- id 151959: incremental "using" of nested namespaces could prevent
that doxygen matched function declaration against definition.
- id 310521: HIDE_IN_BODY_DOCS was longer working.
- id 315039: Improved handling of members in an anonymous scope.
- id 322415: Under certain conditions a scrollbar appeared in a HTML page
while this was not needed.
- id 325845: Documentation parser was confused when starting a HTML list
directly after a \b command.
- id 325866: SORT_BY_SCOPE_NAME=YES did not always work if SORT_BRIEF_DOCS
was also enabled.
- id 326023: CHM files had @ signs in CHM index for anonymous class enums
- id 326250: Fixed incorrect regular expression in constexp.l
- id 326688: Added better support for PHP5 style constructors
and destructors.
- id 326885: Using multi-line //!-blocks did not work nicely together with
@code...@endcode blocks anymore.
- id 327242: Python: Methods starting with _ are now marked private,
except for special method names (i.e. starting and ending with __).
- id 327666: Fixed parse issue that resulted in a missing call graph.
- id 328435: When enabling USE_PDFLATEX a blank line appeared in the
makefile
- id 328849: Added clarification to the manual about the use of //!<
comments.
- id 328635: Text of the HTML output didn't always wrap properly anymore
after "fixing" bug 322415.
- id 329343: Fixed segment in Python parser caused by @var or @fn with
a missing argument.
- id 329530: An apostrophe in ##-comments inside a Python class confused
the parser.
- id 329534: Fixed problem resolving inheritance relations for nested
Python classes.
- id 329537: Corrected the Python example to show how modules should be
documented.
- id 329719: # comment in PHP containing a ' caused doxygen to ignore
rest of input.
- id 329861: Fixed problem parsing embedded structs in an Objective-C
interface.
- id 329905: PDF manual produced a LaTeX error because style sheet
was not up to date.
- id 330209: A typedef in an Obj-C implementation file could obscure
class implementation later in the file
- id 331511: no matching class member found error for class template
instance in combination with "using" of said class.
- id 331751: Fixed problem parsing a function typedef.
- id 332110: method matching failed for equivalent template instance
types.
- id 332178: Fixed malformed XML output for readable properties.
- id 333270: Fixed BoundingBox problem with PostScript graphs generated
with dot using graphviz-2.9.20060302.0540 and later (thanks to
John Ellison for the patch)
- id 332875: Enabling SEPARATE_MEMBER_PAGES could lead to bogus warning
messages about undocumented parameters if only the HTML output was
enabled.
- id 333330: Patch the reorganizes the treeview.
- id 333831: "typedef const struct { } NAME" construction was not
properly parsed.
- id 334716: Doxygen could hang when calling latex with invalid formulas.
- id 336467: Latex formula could prevent /// comment blocks to be properly
converted to /** */ blocks.
- id 336782: Prevented crash when providing code with illegal/redundant
class scope.
- id 337344: Configure now accept system's /usr/bin/install on FreeBSD.
- id 341365: @endcode comment was skipped in a specific case.
- id 341453: Under certain conditions @cond did not stop at @endcond
- id 341456: Fixed crash when feeding doxygen /dev/null as config file
- id 342329: Text such as "dir/file.cpp" was not auto-linked.
- id 342946: Anonymous enums couldn't be grouped using separate @var block
- id 344118: Inbody documentation could hide the detailed description.
- id 344172: Class Hierarchy appeared in a C-Code-Documentation.
- Protection level of inner classes was not written to the XML output
(thanks to Shachar Itzhaky for the patch)
- Included patch by Ernst Giessmann, which prevents most of the underfull
hbox warnings that are produced when compiling doxygen's LaTeX output.
- Fixed potential crash during preprocessing if C-macros are defined
with /* (thanks to Günther Haslauer for the patch).
- Anonymous struct members could end up in the wrong scope
(thanks to Bruno Andrillon for the patch).
- saving to an existing file in doxywizard now requires a confirmation.
- Fixed potential crash in case a template class with a redundant
namespace qualifier was used:
e.g. "namespace N { template<> class N::C<G::H> {}; }"
Doxygen Release 1.4.6
(release date 30-12-2005)
New features
- id 317773: Improved .spec file and better support for building rpms
(thanks to Kevin McBride)
Bug fixes
- id 145294: Boolean expression with '<' as template argument confused
doxygen.
- id 303297: The class hierarchy was sometimes incorrectly shown.
- id 317819: Updated the documentation concerning the creation of PDF
output.
- id 317967: @htmlonly..@endhtmlonly type of blocks (including formulas)
were not always working properly if used in inline parameter
documentation.
- id 318008: The base class name was missing from the XML output.
- id 318208: Enabling SUBDIRS resulted in the tabs at the top of certain
pages not be styled as tabs. Also, links to include dependency graphs
had wrong links or were incomplete.
- id 318564: Python: parser skipped comment blocks in some cases.
- id 318565: Python: single quote doc strings did not get parsed properly
if there was no space before the closing '''.
- id 318567: Python: parse problem when () appear in default value of a
function parameter.
- id 318618: If INLINE_INHERITED_MEMB = YES constructors of a
template class were shown in the derived class.
- id 318678: Python: A referenced variable that
was not found using docstring could lead to memory corruption.
- id 319170: The CHM file did not include the stylesheet material needed
to properly render the tabs at the top of each page.
- id 319341: Doxygen crashed while generating call graph under certain
circumstances.
- id 319539: Fixed parse problem with Python/Objective-C code.
- id 319586: tabs.css not correctly included with CREATE_SUBDIRS option
set.
- id 318460: Multiply-defined labels if two function specializations
differ only on the name of a template parameter.
- id 319219: Spurious space was inserted after inlined math formulae.
- id 319826: The file name for template classes could become too
long causing files that cannot be created by some file systems.
- id 320026: undocumented "typedef struct foo baz" causes subsequent
variables appear as typedefs.
- id 320543: If enabled the alphabetical class list is now the default
item under the classes tab.
- id 320587: Links in brief file descriptions shown in directory pages
were broken if CREATE_SUBDIRS was enabled.
- id 320693: First sentence in mainpage was missing with
JAVADOC_AUTOBRIEF enabled.
- id 320740: Added support for documenting individual elements of an
associative array in PHP.
- id 320813: The if() statement with space after the if confused the
code parser and resulted in partial call graphs.
- id 320960: redundant line continuation characters were not removed
by doxygen's C-preprocessor.
- id 321165: Doxygen choked on Qt properties with namespaced types
- id 321197: using a namespace that contains a nested class, where the
inner class was forward defined, could introduce a bogus namespace
with the name of the outer class.
- id 321256: Installation path mentioned in the documentation was wrong.
- id 321349: In typedefs like "typedef struct {} T, *pT, the pT typedef
appeared wrongly in the documentation.
- id 321540: An array of type an anonymous struct was not parsed
properly if there was a space between the name and the size, i.e.
struct {} Var [10];
- id 321682: Fixed typo in the HTML output of the search page.
- id 321743: Cross-references were missing to members of
anonymous structs.
- id 311833: A template specialization of a private class member was
marked as public.
- id 312329: @link label @endlink, i.e without link text now shows
the label as text, and space after label is omitted.
- id 312624: \verbatim block could cause wrong line numbers while
parsing the source code.
- id 322752: Fixed specific case where aliases were incorrectly expanded
inside environment formulas
- id 322997: Putting function-style macros in a parameter of a
template return type of a function confused doxygen's parser.
- id 323320: An enum name that also appears as a typedef
(i.e. typedef T {} T; }) is now linked as an enum and the typedef is
omitted from the output.
- id 323557: Bit field information was missing from the XML output.
- id 323627: Fixed compiler warning when using gcc 4.x.
- id 323628: Improved warning when documenting #defines while the
preprocessor is disabled.
- id 323988: FILE_VERSION_FILTER incorrectly handled command parameters
- id 324076: Fixed some typos in the documentation.
- id 324153: The configure script didn't work for SunOS 5.8.
- id 324163: \todo paragraph did not end at \author (or similar commands).
- id 324313: Added support for having a Linux system where libraries are
located in lib64 by adding a new platform to tmake: linux-64
- id 324521: Autolinking to classes in a group which itself was in a
namespace didn't work without explicit scoping.
- id 324558: Null pointer dereference in namespacedef.cpp
- id 324565: References and callgraphs missing for some functions
(thanks to a patch by Dave Dodge).
- id 324566: Fixed problem matching
f(unsigned long const a) against f(unsigned long)
- id 324568: Fixed problem were some function prototypes were detected
as variable constructor calls (thanks to Dave Dodge for the patch).
- id 324601: Cross referencing and call graphs were broken by
certain bracket positions for functions.
- id 324823: Doxygen's code parser lost track in some cases, causing
function definitions not being found in some cases.
- id 324891: Doxygen crashed on circular python imports.
Doxygen Release 1.4.5
(release date 4-10-2005)
Changes
- Changed to way the index looks (I hope you like it!).
It now is a list of items styled (with CSS) as a row of tabs.
Also class/namespace/file related items are now grouped together and
presented as a second row of tabs to prevent clutter (the latter is
based on the suggestions/patch in bug report 162968).
Note that if you use a custom HTML header you need to add
<link href="tabs.css" rel="stylesheet" type="text/css">
to the head section!
- Copydoc now copies the brief description as well.
New features
- id 306889: Added new config option BUILTIN_STL_SUPPORT. When enabled,
doxygen will assume that STL classes exist (without the need to include
the STL headers as INPUT).
This helps with matching of argument lists for function declarations and
definitions and also helps to improve the collaboration and inheritance
diagrams that involve STL classes.
- id 317010: Added support for the following new HTML entities:
‘ ’ “ ” –
— (thanks to a patch by madalexonline)
- Included update for Chinese translation.
- included update for the VC++ project files (in wintools dir), thanks
to Johan Eriksson.
Bug fixes
- id 304339: Using \dot in latex formulas conflicted with the doxygen's
\dot command.
- id 306076: Using a namespace inside an example listed with
@example did not work.
- id 306069: Search engine required lower case names in order to find
something, which made pasting of names difficult.
- id 308395: Doxygen could crash when producing a warning that included
a %s sequence.
- id 311191: Default values for parameters weren't shown in the detailed
documentation.
- id 311198: If JAVADOC_AUTOBRIEF was set to YES, a \todo or \bug like
command always ended at the first dot.
- id 311207: The /* and */ inside a \code ... \endcode code fragment
were stipped.
- id 311577: Putting a documentated class name in the title of the main
page caused a LaTeX error if pdf hyperlinks were enabled.
- id 311665: Fixed compile issue for Solaris.
- id 312688: Typedefs of arrays were auto-linked to the base type
i.s.o the typedef.
- id 312678: Fixed excessive memory usage for @fn commands
due to a memory leak of the scanner buffer 256K of memory was leaked
for each command!
- id 312791: Undocumentated members did not result in warnings if
SOURCE_BROWSER was enable and the member's definition was part of
the INPUT.
- A C-comment inside a \code block could lead to parse problems in the
preprocessor, resulting in #defines that are not found.
- Fixed problem documenting Python code using docstrings where the module
documentation was not picked up. Also fixed several other Python
related issues. Also included Python examples in the documentation.
- id 312805: Using BUILTIN_STL_SUPPORT could result in dead links for
STL classes.
- id 312807: Added support for STL exceptions (when BUILTIN_STL_SUPPORT
is enabled).
- id 313011: Item after the closing of a nested group was ignored in
some cases.
- id 313103: Member groups within other nested groups did not work
anymore.
- id 313298: Code parser didn't handle function-try-blocks correctly.
- id 313572: Fixed lockup issue when generation code for Python files.
- id 313695: Fixed parsing issues for the constructs
"\f$n\f$" and "operator <CODE>".
- id 313805: '@' characters in a string literal were lost during
macro expansion.
- id 313906: added support for "import" and "from ... import" to the
Python parser so cross module inheritance works.
- id 313908: Fixed python parser problem: If there are two classes
defined in one module there needed to be a comment between them.
- id 314165: Python functions starting with _ are not marked as public,
whereas variables starting with _ are marked private.
- id 314194: Brief description containing 'i.e., ' ended after the
comma.
- id 314237: You can now also use \ref on directories documented with
\dir.
- id 314288: Using \ref with an ambiguous filename didn't work.
- id 315006: C++ comments at the start of a line and
inside a <pre>..</pre> block were stripped.
- id 316264: Fixed typo in the inline config file documentation.
- id 316266: Included update for the Japanese translation (thanks to
Katsuhiro Hermit Endo)
- id 316759: Fixed problem in the Makefile of doxywizard so that the
right version appears in the about box.
- id 316944: An inline formula (or other special command) did not get
executed if it was within an inline documentation block and
put after a parameter.
- id 317052: The alphabetical class index was not sorted properly if
multiple prefixes were specified using IGNORE_PREFIX.
- id 317105: Latex output expanded ß as "s instead of {\ss} which
only worked if german.sty was included. Thanks to Stefan Pawig for the
patch)
- id 317397: Copying of images from subdirectory within the IMAGE_PATH
didn't work properly since doxygen didn't remove the subdirectory
from the destination path.
- id 317446: Documenting an enum with \enum while there is also a function
with the same name in the same scope could make the enum documentation
appear at the wrong spot or the enum in the wrong member group.
- id 317490: A variable of a nested class, forward declared in a template
class, which in turn was in a namespace, caused the variable to end
up in the global scope.
Doxygen Release 1.4.4
(release date 21-7-2005)
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}.
Bug fixes
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
- 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.
Doxygen Release 1.4.1
(release date 11-1-2005)
Bug fixes
- id 163058,163401: Due to a memory corruption bug doxygen could crash under certain conditions
(the Windows binary was the most sensitive to this).
- id 163003,163495: Doxygen crashed when GROUP_GRAPH and UML_LOOK were enabled.
- Book icon in the treeview is now clickable and has the appropriate action (thanks to
Will Bateman).
- Entering the expert dialog in doxywizard now only requires saving the config file
if actual changes were made.
Doxygen Release 1.4.0
(release date 31-12-2004)
Changes
- In the HTML help output (.chm files) the index items with only one
subitem are now collapsed into one item (thanks to Antony Pranata for
the patch).
- Some minor tweaks to the style sheet.
- @relates can now not only be used for functions, but also for
other members (i.e. enums, types and variables).
- Static members do have have explicit "static" in the declaration
part of the documentation. This is useful for grouping where it
is otherwise not obvious that a member is static.
- typedefs and enumeration are no longer shown in the "referenced by"
list as these are types (based on patch by Antoine Tandin).
- Make configure script use solaris-g++ by default (Sun's own compiler
generates faulty code for doxygen).
New features
- Included language update for Serbian, German, and Korean.
- For directories dependency graphs are now generated (controlled
by the DIRECTORY_GRAPH switch). For a given directory, the graph will
show its parent directory and the sub directories as nested boxes.
For the directory and its sub directories it will show the relations
with other directories. Relations are based on #include relations of
the files contained in the directories. Each dependency arrow has an
associated number. This number indicates the number of
different #include relations. Clicking on the number will show a page
with the exact #include relations (the latter is for the HTML output
only).
- Added \cond and \endcond commands, which can be used to
(conditionally) exclude a part of a file. See the manual for an
example.
- Added "-d ExtCmd" debug option, which when used shows what doxygen
will execute when invoking an external command (such as dot).
- New option WARN_NO_PARAMDOC that warns about the absence of function
parameter or return type documentation.
- Nested classes are now listed in their containing class.
- Extended the \f command to support different environments, i.e.
\f{eqnarray*} for equation arrays. The end command is \f}. The
documentation has an example.
- Added support for group dependency graphs
(thanks to a patch by Antoine Tandin): New option: GROUP_GRAPHS
- New option DOT_TRANSPARENT to enable dot graph with a transparent
background. Thanks to Maik Hinrichs for the patch.
- New option FILE_VERSION_FILTER which allows an external tool to
provide version information per file, which is then used in the
file documentation. Thanks to Maik Hinrichs for the patch.
- id 162295: New option DOT_MULTI_TARGETS which when set to YES,
will run dot with multiple output files if possible. This was added
to support older version of dot (<=1.8.10) which do not support multiple
output targets. If you use a recent version of dot, you probably want
to enable this (default is NO).
Bug fixes
- id 119868: Removed warning when </li> ended a @c or similar command.
- id 120367: \~lang didn't work correctly around brief descriptions
and certain commands. It is now implemented as an early filter
operation like \cond.
- id 135311: Recursive ALIAS definitions now work again.
- id 151012: <td> tag in HTML function documentation missed 'class="md"'
- id 154689: Wrong link to members of namespaces imported from tag
files when CASE_SENSE_NAMES is set to NO.
- id 154700: anchors in pages imported via tag files could not be
linked to.
- id 154755: Files were missing from Doxygen.dsp project file.
(thanks to Gerik Rhoden).
- id 154758: Fixed typedef resolution bug that could crash doxygen
(thanks to Gerik Rhoden for the analysis and fix).
- id 154862: Fixed problem matching array parameters that include
template parameters as the array size.
- id 154863: Fixed parsing problem in the preprocessor when an
expression contained the division operator.
- id 154469: Referring to Objective-C messages was broken if the full
scope was used.
- id 155086: Typedef for member-function pointers of template classes
not recognized
- id 155272: Image filenames in RTF output were not quoted causing problem
with custom images whose name contained spaces.
- id 155322: Fixed parse problem for php code containing '#'.
- id 155224: Java interfaces did't resolve across packages w/o FQN.
- id 156411: Return type of a function was not hyperlinked in some cases
(typical with nested namespaces or Java packages).
- id 156445: function seen first in header and doc'ed in
source broke autolinking depending on the order of the input.
- id 157085: Autolinks for const/volatile operators didn't work.
- id 157229: Upper case letters in \page "" breaks title on page.
- id 157433: Multi-variable declarations were not parsed properly.
- id 157485: @todo's inside the body of a function were not handled
properly.
- id 158961: Set EXTRACT_ALL to NO resulted in no directory information
unless the directory and files were documented. This is now controlled
by SHOW_DIRECTORIES.
- id 158481: I did some memory usage analysis with valgrind's massif tool,
which indicated that a lot of memory was used by QCString objects.
This made me decide to reimplement the class and optimize it for
memory usage. The resulting class saves a "new" operation of 12 bytes
per string object, which seems to reduce the overall amount of
memory used by doxygen by a factor 2 to 3! The implementation seemed
more expense to use (as it always copies the content instead of sharing
it), but the performance has improved nevertheless (probably because
"new" is much more expensive operation than copying small strings).
- id 158637: Links to classes in brief description in index pages were
wrong when CREATE_SUBDIRS was set to YES.
- id 158884: "typedef [something] enum" in IDL was not handled properly.
- id 159487: @ref's to Objective-C class categories were not possible.
- id 159973: @todo item in anonymous enum resulted in broken link.
- id 160642: Fixed problem parsing multi-dimensional C arrays.
- id 160673: Borland's __property keyword was not handled correctly.
- id 160824: UML Collab diagram did't show fields in user defined groups.
- id 160931: Made configure script use /bin/bash as it apparently didn't
work with /bin/sh anyway.
- id 161048: Latex output for directories could contain unescaped
underscores when SHOW_DIRECTORIES was set to YES.
- id 161167: /// \file was not parsed properly.
- id 161247: If CALL_GRAPH was enabled references were shown even if
REFERENCES_RELATION was set to NO.
- id 161320: An incorrect line number was given for inherited comments
which have an error.
- id 161321: Fixed problem parsing '"' in PHP code.
- id 161394: Fixed problem with inheritance tree showing the same
undocumented base class multiple times.
- id 161556: Fixed two parse bugs related to member specializations.
- id 162149: URLs with commas were not handled properly.
- id 162271: Doxygen was confused by read-only Qt properties.
- id 162434: void function gave rise to warnings when WARN_NO_PARAMDOC
was set to YES.
- id 162446: Fixed parse problem in code.l, causing it to get off track.
- id 162517: A @ref command was not parsed properly if the argument
between quotes was found on the next line.
- Dot would not run if doxygen was installed in a path which contained
spaces (Mac OS X).
- Functions inside inline methods were not always cross-referenced anymore.
- Latex output was broken in some cases where anonymous structs were used.
- Fixed bug in doxywizard: if the wizard was used some settings
were not remembered.
- Using \n inside an ALIAS definition caused line numbers for
source browsing to become misaligned.
- For included-by graphs files with the same name all had the same
node label.
- The following typedef was not parsed properly:
typedef function<void (int,int)> ptr_t;
- Fixed problems with the WARN_NO_PARAMDOC command.
- Struct members of the form "enum a b;" where not properly parsed.
- Fixed a couple of memory leaks.
- Fixed crash problem on Windows related to the new string implementation.
- Fixed problem with Visual Studio project files (in wintools).
- Included patch by Antoine Tandin to fix problem with GROUP_GRAPHS
in combination with CREATE_SUBDIRS = YES.
- Included patch by Mikhail Glushenkov to make HTML look prettier.
- Parsing operator[]s was broken.
- Referencing constants via #CONST did not work anymore.
- Fixed problem handing multiline ALIASES containing @defgroup and
@ingroup.
- Fixed problem handling \n in ALIASES.
- @section's in non-page documentation blocks did not work.
- Referencing a group label in a @see section, now shows the group's
title i.s.o. the label name (this was already done for @ref).
Go back to the main page.
|
|