Doxygen Changelog

New in version 1.8.6

December 27th, 2013
  • Bug 154880 - if "using namespace" used, call of a static member function in C++ is not recognized or recognized wrong
  • Bug 647517 - make install prepends a slash to the installation path Removed superfluous /
  • Bug 668424 - HTML links in RTF output are broken
  • Bug 683897 - class list not sorted?
  • Bug 692004 - show includes for free functions
  • Bug 693537 - Create possibility to keep user comments in Doxyfile
  • Bug 701949 - Latex: Hyperlinks for \secreflist / \refitem
  • Bug 702265 - Generated Doxyfile differs from result of doxygen -u (partial fix)
  • Bug 705910 - Indexing and searching cannot treat non ASCII identifiers
  • Bug 706520 - Fortran: in body documentation lands on wrong place In some cases, in propriety code, with in body Fortran documentation doxygen crashed. I REOPENED Bug_706520 for this
  • Bug 706804 - Fortran: Doxygen mixes up function-attributes with the return type test string should not be equal to "function" but should contain "function"
  • Bug 706813 - RPM build via spec file fails
  • Bug 706874 - Doxygen crash if missing new-line in a snippet
  • Bug 706916 - C++ exception specifications are no longer parsed correctly
  • Bug 707102 - update the Japanese translation
  • Bug 707353 - Accept IDs using unicode(non ASCII) characters in python codes
  • Bug 707389 - GENERATE_TREEVIEW=YES disables touch scrolling with Android 3.x
  • Bug 707431 - Cannot @ref or @link C++ operator overloads
  • Bug 707483 - Wrong page number and header in pdf output
  • Bug 707554 - When I use @INCLUDE DoxyWizard is closed Current directory was not changed at the right time so the include files could not be found in the "current" directory (i.e. the directory where the Doxyfile resides too, as this directory is shown as the current directory in the doxywizard). This is also important when the doxywizard is started from a shortcut.
  • Bug 707567 - Asterisks in comment wrongly displayed for @code
  • Bug 707641 - `FILTER_SOURCE_FILES=YES` required to build CALL_GRAPHS https://bugzilla.gnome.org/show_bug.cgi?id=707641
  • Bug 707685 - Fortran: error message when missing last EOL In case the original buffer in either fixed or free format code does not contain an EOL as last character, add it.
  • Bug 707713 - Add support for dia diagrams
  • Bug 707825 - Const treatment
  • Bug 707925 - False warning for Java "warning: missing ( in exception list on member"
  • Bug 707985 - Strange output when : appended to an parameter description
  • Bug 707995 - @copydoc not working for const member overloads
  • Bug 708446 - Deprecated list breaks HTML tree with xhtml extension
  • Bug 708455 - Enabling INLINE_SIMPLE_STRUCTS messes up Data Structures in tree
  • Bug 708806 - Wrong path to graph_legend figure in graph_legend.html when CREATE_SUBDIRS = YES
  • Bug 709052 - Templated and non-templated method mixup documentation
  • Bug 709226 - Struct member fields not documented with INLINE_SIMPLE_STRUCTS
  • Bug 709526 - C++ parsing problem with operators inside templates
  • Bug 709706 - Terminating C comments within markdown files breaks aliases
  • Bug 709780 - Copying of files via \image tag can get confused by symlinks at the destination
  • Bug 709803 - Generated hhc file contains an error for a section of a mainpage
  • Bug 709845 - Fortran: problem with types with name starting with is
  • Bug 709870 - Broken links on members HTML page when using BUILTIN_STL_SUPPORT
  • Bug 709921 - position of linebreak in template argument list affects inheritance relation
  • Bug 710917 - Segfault while parsing a C file
  • Bug 710998 - latex_count=5 is not enough
  • Bug 711004 - Vertical bars cannot be sent straight to makeindex
  • Bug 711097 - Compiler warnings because char is unsigned on ARM/PPC: "comparison is always false"
  • Bug 711378 - Nested Aliases fail when the nested alias has two or more arguments.
  • Bug 711639 - [PATCH] #include does not work with absolute paths
  • Bug 711723 - Comment /**/ confuses doxygen
  • Bug 711787 - Long initialization line in C stops doxygen An extra "breakpoint" in the input string has been created in the form of a , (comma), so for initialization lines the line will be shorter and the , (comma) will be copied later on.
  • Bug 712795 - segmentation fault in memberdef.cpp
  • Bug 712819 - Some external namespaces appear in list despite having ALLEXTERNALS = NO
  • Bug 715172 - Consistently document Fortran's equivalent function bodies
  • Bug 719389 - HTML escaping incorrectly applied in source tooltips
  • Bug 719422 - private java class is mentioned in inherited by list of super class
  • Bug 719463 - Invalid null key and segmentation fault
  • Bug 719489 - Label "abstract" instead of "pure virtual" for Java language
  • Bug 719525 - Can't build because the definitions of ***YY_flex_debug are missing.
  • Bug 719591 - expand_as_defined macro does not properly work
  • Bug 719639 - @xrefitem with empty heading string
  • Bug 720046 - Document inline objective-C blocks
  • Bug 720092 - USE_MDFILE_AS_MAINPAGE doesn't work if full path is specified.
  • Bug 720580 - inline source browser shows wrong code with muilti-line c++11's raw strings
  • Add support for honoring svg image format preference in msc
  • Added @parblock and @endparblock commands
  • Added compile support for Mavericks
  • Added fix to avoid errors with older compilers.
  • Added generated files to gitignore
  • Added missing docs tag
  • Added missing pthread lib to doxyapp
  • Added missing space after @parblock
  • Added rudimentary support for Django like template system for output creation.
  • Added the possibility to specify the -d option in the Visual studio GUI on windows for the lex rules
  • Adjust internationalization part to current situation
  • Alignment of @code and @verbatim section When having a code and a verbatim section the boxes are not alligned, this patch fixes this. Example code, aa.c; standard Doxyfile: /** \file
  • Allow @ref to unlabeled markdown page by name, i.e. @ref mypage.md
  • Allow links to other markdown pages of the form [link text](page.md)
  • Avoid accessing uninitialized memory in fileToString
  • Build problem with unistd.h and Cygwin The standard g++ compiler under windows (win32-g++) has unistd.gh file; Microsoft windows does not have it, therfore it is better to use the winbuild directory in case of windows adn no dependency otherwise
  • Consistency in language part of the documentation Made documentation more inline with other parts of the documentation (regarding the way e.g. filenames are presented) Corrected some spelling errors Corrected the warning in the language.doc by placing ta reference to the files from which language.doc is generated Corrected the color for the languages that are still v1.4.6 (language name now also red in stead of a pink background, was confusing with languages that were 1.5 / 1.6 compatible)
  • Corrected some inconsistencies in the comments
  • Debug output for lexical analyzer
  • Deleted generated files from source repository
  • Doxygen didn't allow @ref to parameters of type reference to an array.
  • Doxysearch under Cygwin should not have extension cgi.exe but just .cgi
  • Esperanto not supported by htmlhelp compiler reverting for esperanto to default language (US English)
  • Fixed a number of compiler warnings reported by newer clang compiler
  • Fixed compilation issues in doxyapp
  • Fixed compile warning
  • Fixed compiler warning related to implicit size_t to int conversion
  • Fixed constness warning
  • Fixed invalid if statement found by cppcheck
  • Fixed issue with Romanian translator preventing treeview from working
  • Fixed regression autolinking C# template such as MyGenericClass.g()
  • Fixed regression in argument matching for the template example
  • Fortran added keyword IMPURE
  • French translator up-to-date.
  • Internal documentation for debug possibilities Documentation regarding usage of -d option with [f]lex Initial documentation regarding the -d options with doxygen
  • LaTeX: Fix ToC entries of index/bibliography
  • Made lexer rule explicit
  • Make Python detection in configure work with version older than 2.7
  • Minor layout tweaks and extra guard
  • More fixes for the Windows build
  • Patch regarding generating the rules file for the windows build regarding languages, some inconsistencies in the (windows) build system, corrections to some spelling.
  • Regenerated language.doc
  • Removed japanese characters in maintainers.txt as they break the build
  • Removed redundant backslashes in regexp pattern
  • Report details about fork() failure in logs.
  • Russian translator updated, new Russian maintainer added.
  • Small spelling correction to generate an rtf extensions file -> to generate a rtf extensions file
  • Some texts can be independent of \htmlonly / \latexonly
  • Space missing in error message. the word 'in' and the vale of filesOption were concatenated
  • This patch contains changes regarding the build system so that the *nix and Windows systems use the same information (consistency). Some use names routine names have been changed (from .l files with -P option) to reflect the file name that generated the routines, this makes it easier to create a general procedure. A number of include / header files are files are generated from different file types (html, xml, js), due some limitations of the windows build system the generated file names had to be changed (the extension in the windows build system is only available including the '.' so e.g. the file jquery_fx.js generates now jquery_fx.js.h instead of jquery_fx_js.h) In the windows version the creation of .cpp files from .l files has been adjusted to correct for the YY_BUF_SIZE problems. Furthermore on windows (and also used on *nix) some commends have been replaced with python scripts so that on windows only python is need (besides flex and and bison). On *nix also perl is required for the generation using tmake.
  • Updated Visual Studio project files to include new source files
  • Usage of the -d opion corrected Giving an error when a wrong -d option is given. Made some error mesages more consistent. Corrected usage of the exit call, in case of an error: exit(1) otherwise exit(0). A closer look should be made on exitDoxygen as it does not contain any exit statements and it is unclear (to me) when it is used.
  • VHDL-2008 and arrays on unconstrained elements
  • consider currentFile when searching for global symbols
  • doc/language.doc generated from the updated sources (bgcolored)
  • doc/language.tpl -- UTF-8 reflected in the langhowto template
  • doc/language.tpl -- trailing spaces removed
  • doc/translator.py -- coloured status in HTML
  • doxygen /** style creates spurious code blocks with markdown enabled
  • doxygen version 1.8.5 throws many "Internal Inconsistency" errors when parsing .idl files
  • doxygen.sty.h was not ignored and not included/generated properly
  • testing dir was missing from 'make archive'
  • usage: make -d print dev doxygen options

New in version 1.8.4 (May 20th, 2013)

  • Changes:
  • id 686384: When INLINE_SIMPLE_STRUCTS is enabled, also structs with simple typedefs will be inlined.
  • Doxywizard: scrolling with mouse wheel no longer affects the values in the expert view.
  • id 681733: More consistent warnings and errors.
  • New features:
  • Added support for "clang assisted parsing", which allows the code to also be parsed via libclang (C/C++ frontend of LLVM) and can improve the quality of the syntax highting, cross-references, and call graphs, especially for template heavy C++ code. To enable this feature you have to configure doxygen with the --with-libclang option. Then you get two new configuration options: CLANG_ASSISTED_PARSING to enable or disable parsing via clang and CLANG_OPTIONS to pass additional compiler options needed to compile the files. Note that enabling this feature has a significant performance penality.
  • Included patch donated by Intel which adds Docbook support. This can be enabled via GENERATE_DOCBOOK and the output location can be controlled using DOCBOOK_OUTPUT. Docbook specific sections can be added using \docbookonly ... \enddocbookonly
  • Added support for UNO IDL (interace language used in Open/Libre Office), thanks to Michael Stahl for the patch.
  • Included patch by Adrian Negreanu which stores data gathered by doxygen in a sqlite3 database. Currently still work in progress and can only be enabled using --with-sqlite3 during ./configure.
  • For interactive SVG graphs, edges are now highlighted when hovered by the mouse.
  • Include patch by Adrian Negreanu to show duration statistics after a run. You can enable this by running doxygen with the "-d Time" option.
  • Included patch by Markus Geimer which adds a new option LATEX_EXTRA_FILES which works similarily to HTML_EXTRA_FILES in that it copied specified files to the LaTeX output directory.
  • id 698223: Added support for C++11 keyword alignas
  • id 693178: Added support for processing DocSets with Dash (thanks to Bogdan Popescu for the patch
  • id 684782: Added option EXTERNAL_PAGES which can be used to determine whether or not pages importated via tags will appear under related pages (similar to EXTERNAL_GROUPS).
  • id 692227: Added new MathJax command MATHJAX_CODEFILE which supports including a file with MathJax related scripting to be inserted before the MathJax script is loaded. Thanks to Albert for the patch.
  • id 693537: Comments in the config file starting with ## will now be kept when upgrading the file with doxygen -u (and doxygen -s -u). Thanks to Albert for the patch.
  • id 693422: Adds support for Latvian (thanks to a patch by Lauris).
  • Included language updates for Ukrainian, Romanian, and Korean
  • Bug fixes (ids refer to the bugzilla database):
  • id 145294: Fixed parse issue when using less than inside a template argument.
  • id 325266 man page output was missing a linebreak before .SH when definition a group with a section.
  • id 338205: @anchor were wrong when CREATE_SUBDIRS was enabled.
  • id 427012: Putting a @todo in front of an anonoymous namespace caused bogus entry in the todo list.
  • id 564462: Fixed alignment issue with tabs and multibyte characters.
  • id 567542: Character entities in titles were not rendered correctly in the HTML navigation tree.
  • id 571561: No space between * and tag (e.g. \endcode) made parser misbehave
  • id 583233: Included patch to limit generated Doxyfile comments to 80 columns
  • id 592626: Fixed off-by-one with MAX_DOT_GRAPH_DEPTH.
  • id 619790: Improved linking to template specializations. Thanks to David Haney for the patch.
  • id 627712: Doxygen Header in C Files makes empty Lines in HTML Source Code when starts in Line 1
  • id 639954: Fortran: array constructors with brackets were not correctly recognized.
  • id 646428: The generated man pages had a .PP just before the subject description
  • id 646431: On generated manpages the return section is incorrectly indented
  • id 650004: use \page now generates a man page were the . is not replaced by _8.
  • id 657704: Fixed issue with PROJECT_LOGO when using backslashes in the path.
  • id 666008: Fortran: Using @var at module levele didn't work. expect a file/path name.
  • id 673218: Replaced "echo -n" with "printf" in the configure script.
  • id 674856: Removed warning when using \endinternal
  • id 675607: Added &, @, and # as allowed characters for commands that
  • id 679626: Included patch by Abert to correctly link pages in the manual
  • id 681874: Added support for single column Markdown tables.
  • id 682369: Incomplete documentation on doxygen -w latex
  • id 683516: Doxygen crashed when structural commands (like \var) appeared in .md files.
  • id 686259: Fixed character encoding problem when multibytes characters were used in anchors.
  • id 691071: Documentation before an anonymous member did not appear.
  • id 692162: Fixed Markdown related indentation problem.
  • id 692320: Regression: Text after @copydoc was not visible anymore.
  • id 692537: Linked to external pages was done using the page label rather than the file name.
  • id 693331: build using ./configure ; make did not work if the path contained a space.
  • id 693406: Tag files are now identfied by the full path instead of only the name of the tag file.
  • id 694376: In some cases members were missing from the tag file.
  • id 694027: Fortran: derive intent from documentation in case no intent is specified
  • id 694610: Warning was not reported at the correct line in two cases.
  • id 694631, 694632: @cond..@endcond did not work properly for removing macro definitions.
  • id 694685: Fixed crash when adding two different functions with the same name to the same group.
  • id 694726: VHDL: fixed issue generating LaTeX output.
  • id 695277: Fortran: improved handling of protected statement
  • id 695974: Fortran: Fixed issue resulting in "Stack buffers nested too deeply" error.
  • id 696708: @cond was not handled properly by the preprocessor.
  • id 697233: @copyright command did not end a brief description.
  • id 697249: Markdown tables caused errors reported at wrong line number.
  • id 697494: Removed double entry from the messages produced by doxygen.
  • id 698818: Fixed problem handling @cond for #define's
  • id 698007: Fixed potential crash when searching files.
  • id 696925: #include's inside namespace could result in duplicate entries.
  • id 696954: Doxywizard: Labels of items are now also grayed out when an item is disabled (thanks to Albert for the patch).
  • id 699195: Changed Markdown page label to support multiple .md files with the same name.
  • id 699218: Fixed issue with margin computation in resize.js.
  • id 699381: Lonely h4,h5,h6 end tag caused assert.
  • id 699437: Trailing comments were not always rendered properly if MARKDOWN_SUPPORT was enabled.
  • id 699460: Updated doxygen man page (thanks to Manuel for the patch).
  • id 699464: Added reference to \xmlonly and \docbookonly in \htmlonly
  • id 699731: LaTeX: switch to using the xtabular package instead of longtable to prevent overfull vbox errors.
  • id 699732: Template parameters and Exceptions were rendered differently than Parameters and Return Values in the LaTeX output.
  • id 700153: Tcl: Fixed crash when parsing certain Tcl code.
  • id 700345: Comment blocking ending with ///// made slashes appear in the output.
  • id 700456: Added support for separating auto list items with an empty paragraph.
  • Included a couple of VHDL fixes (thanks to Martin Kreis for the patch)
  • \include and \includelineno both showed line numbers.
  • Putting '// @endverbatim' inside a C comment block was not handled properly by the preprocessor.
  • Fixed various typo's in the manual and improved cross referencing (thanks to Albert and Guillem Jover for their help)
  • Added a couple of missing configuration dependencies.

New in version 1.8.3.1 (January 21st, 2013)

  • Changes:
  • Changed to way the search results for multiple projects can be linked together. A project is now no longer identified by the tag files name but via new option EXTERNAL_SEARCH_ID giving a bit more flexibility.
  • Disabled the disk cache for member data. Allows removing quite some complexity in doxygen and is not really needed now that 64bit systems with >4GB RAM are becoming more common. Let me know if you think you benefit from this caching.
  • id 691607: Using $relpath$ in a custom footer could lead to ambiguities when followed by a name that could also be a marker, like 'search'. Now $relpath^ should be used instead. $relpath$ is still supported for backward compatibility.
  • New features:
  • You can now use EXTENSION_MAPPING on files without any extension using no_extension as placeholder (thanks to Jason Majors for the patch).
  • To make navindex section inside a layout file that links to a specific URL you can use usergroup with the url attribute.
  • To make navindex section without any link inside a layout file you can use usergroup with special title [none].
  • Bug fixes (ids refer to the bugzilla database):
  • id 644350: Fortran: Included patch to improve parsing line continuation characters.
  • id 645423: Fortran: added support for protected attribute
  • id 682550,691315: When using @copydoc, paragraphs breaks did not appear in the copied documentation.
  • id 686581: Fortran: handle single quotes in normal Fortran comment.
  • id 686689, 691335: Scope of forwardly declared template class was lost in the output.
  • id 689713: Tcl: Inline source code was not rendered correctly.
  • id 690787: Fixed case were a cyclic inheritance relation could crash doxygen.
  • id 690831: Using @subpage in a -# style list was not handled properly.
  • id 691000: For a mainpage without title the project name is now shown as the title in the XML output.
  • id 691277: The generated list of citations is now no longer included in the tag file.
  • id 691073: Documenting strongly typed enum values outside of the enum did not work.
  • id 691310: Python: = was missing in the output for variable assignment.
  • id 691323: Doxygen could crash when creating inline msc graphs.
  • id 691340: Members didn't have a More.. link to jump to detailed docs.
  • id 691602: Doxygen did not probably distinguish between two template
  • id 691798: regression: C++ style comments that started with a line of slashes did not get processed correctly anymore.
  • id 692031: Fixed parse error when left shift operator occurred as a default parameter. members or functions that only differ in the return type.
  • Setting SEARCH_INCLUDES to NO resulted in no include graphs and no include files being listed in the output.
  • Improved support for MinGW (thanks to a patch by Brecht Sanders).
  • Removed the Graphviz/dot dependency when building the doxygen documentation.
  • Anchors to sub pages were wrong in the XML output.
  • Included VHDL patch by Martin Kreis that improves the flow chart generation.
  • corrected several code pages and fontsets for proper RTF output for a number of languages such as Greek.

New in version 1.8.3 (December 28th, 2012)

  • Changes:
  • Expanding the tree in an index page of the HTML output, will now expand only one level instead of the whole sub-tree (thanks to Pez Cuckow for the patch).
  • A blockquote in Markdown does no longer require a whitespace after the last '>' if the '>' is followed by a newline.
  • id 682718: Included patch to add version info to all generated template files (headers, footers, stylesheets, layout files, etc).
  • New features:
  • Added support for using external tools to index and search through the HTML documentation. An example index tool is provided (doxyindexer) and an example search engine (doxysearch.cgi). To configure the external search engine the following new options are added to the configuration file: EXTERNAL_SEARCH (to enable the feature), SEARCHENGINE_URL (to specify the URL of the search engine), SEARCHDATA_FILE (to specify the name of the raw search data to index), EXTRA_SEARCH_MAPPINGS (for search through multiple projects). See the manual for details.
  • Added USE_MDFILE_AS_MAINPAGE config option to select a markdown page to be used as the main page.
  • id 630645: This patch (contributed by Albert) adds support for simple logic expressions for \cond, \if, and friends, i.e. you can do \if (SOME_SECTION_NAME && (!THIS_ALTERNATIVE || THAT_ALTERNATIVE))
  • id 684152: Patch (contributed by Albert) adds a new configuration option MATHJAX_FORMAT to select the MathJax output format. Options are HTML-CSS, NativeMML, or SVG.
  • Bug fixes (ids refer to the bugzilla database):
  • id 670853: Fixed compile issues with 0 to QCString cast for old compilers.
  • id 678139: A class A deriving from another class B inside a namespace not known to doxygen, caused class B to appear in the global scope.
  • id 681209: Fixed problem processing .bib files when they were located in a path containing spaces.
  • id 681830: Using \addindex in a page will now produce a link to the word, instead of the start of the page.
  • id 681831: The TREEVIEW_WIDTH option did not have any effect.
  • id 681898: Jumping from a level 3 section to a level 1 section did not appear correctly in the page TOC.
  • id 681976: C++11: Improved handling of noexcept expressions, e.g.: Test() noexcept ( noexcept(T::T()) ) = default;
  • id 682048: Improved SIGINT handling when running multiple dot instances.
  • id 682602: Fixed problem processing .bib files when using a non default output directory.
  • id 682713: Comment for IDL_PROPERTY_SUPPORT in the config file template did not have line wrapping.
  • id 682728: Setting SHOW_FILES to NO prevented call graphs from being generated.
  • id 682740: Fortran: In initialization statement the "=" was missing
  • id 683284: Fortran: ALIASes where not replaced in !! and !< comments.
  • id 683976: Added meta tag "generator" to HTML output (thanks to Albert for the patch).
  • id 684781: Sections of the main page did not appear in the navigation tree until the main page had sub pages. Also fixed bug in treeview that caused mainpage with title and sections to appear at the same level as the sections.
  • id 685125: Doxygen could select the wrong overloaded method when the only difference in parameter types was the template type of a typedef.
  • id 685181: Inheriting member documentation did not work in combination with Java interfaces.
  • id 685623: Enum values did not appear in the detailed documentation when using C++11 style enums.
  • id 685879: Even though HIDE_UNDOC_MEMBERS was enabled, the navigation still showed undocumented members.
  • id 685940: Fixed back button behaviour when using the navigation tree.
  • id 686284: Added anchors to refs in the index.qhp TOC.
  • id 686826: Added XML declaration to index.qhp TOC.
  • id 686956: When a class and its base class has the same nested class, the collaboration diagram could point to the wrong class.
  • id 686983: Comments inside a function macro parameter appeared before the expanded macro, instead of being treated as part of the parameter.
  • id 687301: Allow minus in the name of a HTML attribute.
  • id 687572: Code fragments were wrapped too early in the latex output.
  • id 688226: Fixed Qt version number in ./configure --help text.
  • id 688463: Included patch to prevent processing identifiers starting with _ or __ as markdown.
  • id 688531: Horizontal ruler inside paragraph caused missing
  • id 688542: Using "usergroup" in the layout.xml caused missing
  • id 688739: Fixed problem with user defined entries in the eclipse help index (thanks to Rene Papenhoven for the fix).
  • id 688647: Fixed problem parsing initializer list with C++11 style uniform types.
  • id 689341: \if around list item preceded by whitespace caused wrong list in the output.
  • id 689461: Correct link in documentation of SIP_SUPPORT option.
  • id 689720: Fixed bug that could prevent refman.tex from being generated.
  • id 689833: Fixed missing space in Chinese translation.
  • id 690093: Files added via HTML_EXTRA_STYLESHEET did not correct refer to files that where placed in a subdirectory.
  • id 690190: Searching for multibyte characters did not work with the server based search engine.
  • id 690250: Fixed case where line numbers got out of sync with the code.
  • id 690341: First member of an anonymous C++11 style enum was not shown properly.
  • id 690385: Fixed case where _'s where falsely converted to Markdown emphasis.
  • id 690403: Title not used when \ref'ing to a \section imported via a tag file.
  • id 690418: Behavior of @cond was accidentally reversed by new expression parser.
  • id 690602: Fixed problems handling @cond inside /// comments.
  • id 690629: Fixed case where doxygen would during preprocessing.
  • id 690685: A file specified using HTML_EXTRA_STYLEHSHEET did not end up in the Qt Help index.
  • Improved the way enum's are rendered in the HTML output.
  • When inlining structs (INLINE_SIMPLE_STRUCTS=YES) a was missing for members with a detailed description, causing invalid XHTML.
  • Fixed problem loading the navigation tree when using .xhtml as the file extension.
  • The navigation tree was not always correctly positioned upon initial load when using Chrome.
  • HTML Navigation tree showed static members even when EXTRACT_STATIC was set to NO.
  • Same word could appear multiple times in the match list for an entry in the search results when using server based search.

New in version 1.8.0 (February 26th, 2012)

  • Changes:
  • Auto list items can now consist of multiple paragraphs. The indentation of the (first line) of a new paragraph detemines to which list item the paragraph belongs or if it marks the end of the list.
  • When UML_LOOK is enabled, relations shown on the edge of a graph are not shown as attributes (conform to the UML notation)
  • Updated the manual and improved the look.
  • Made the contents in the navigation tree more consistent for groups, pages with subpages, and grouped subpages.
  • id 669079: Latex: made the margins of latex page layout smaller using the geometry package.
  • The tool doxytag has been declared obsolete and is removed (it wasn't working properly anyway). Same goes for the installdox script.
  • Updated the copyright in source code and doxywizard "about" to 2012.
  • id 668008: HTML version of the manual now has the treeview enabled for easier navigation.
  • New features:
  • Added support for Markdown formatting. This is enabled by default, but can be disabled by setting MARKDOWN_SUPPORT to NO. When enabled the following is processed differently:
  • tabs are converted to spaces according to TAB_SIZE.
  • blockquotes are created for lines that start with one or more >'s (amount of >'s detemine the indentation level).
  • emphasis using *emphasize this* or _emphasis this_ or strong emphasis using **emphasis this**. Unlike classic Markdown 'some_great_indentifier' is not touched.
  • code spans can be created using back-ticks, i.e. `here's an example`
  • Using three or more -'s or *'s alone on a line with only spaces will produce a horizontal ruler.
  • A header can be created by putting a ===== (for h1) or ----- (for h2) on the next line or by using 1 to 6 #'s at the start of a line for h1-h6.
  • auto lists item can also start with + or * instead of only -
  • ordered lists can be made using 1. 2. ... labels.
  • verbatim blocks can be produced by indenting 4 additional spaces. Note that doxygen uses a relative indent of 4 spaces, not an absolute indent like Markdown does.
  • Markdown style hyperlinks and hyperlink references.
  • Simple tables can be created using the Markdown Extra format.
  • Fenced code blocks are also supported, include language selection.
  • files with extension .md or .markdown are converted to related pages.
  • See the section about Markdown support in the manual for details.
  • It is now possible to add user defined tabs or groups of tabs to the navigation menu using the layout file (see the section of the manual about customizing the output for details).
  • Added new command \tableofcontents (or [TOC] if you prefer Markdown) which can be used in a related page with sections to produce a table of contents at the top of the HTML page (for other formats the command has no effect).
  • When using SVG images and INTERACTIVE_SVG is enabled, a print icon will be visible along with the navigation controls to facilitate printing of the part of the graph that is visible on screen.
  • Added obfuscation of email addresses for the HTML output to make email harvesting more difficult.
  • Added build targets for 64 bit Windows (thanks to Vladimir Simonov). The installer script is also updated to install a 64 bit version of doxygen on 64 bit systems and the 32 bit version on 32 bit systems.
  • Added support for using the HTML tag in comments.
  • Included patch by Gauthier Haderer that fixes some issues with the dbus XML parser.
  • Added support for Markdown style fenced code blocks.
  • Added option to @code command to force parsing and syntax highlighting according to a particular language.
  • Section of pages are now added to the navigation index.
  • Added support for cell alignment and table header shading in LaTeX and RTF output.
  • Added -d filteroutput option to show the output of an input filter (thanks to Albert for the patch).
  • id 668010: Latex: for Windows doxygen new generates a makepdf.bat file in the latex output dir to create the latex documentation.
  • Bug fixes (ids refer to the bugzilla database):
  • id 498703: Fixed encoding issue in CHM index file for group titles.
  • id 510975: FORTRAN: Keywords like .GT. recognized as symbols for cross ref.
  • id 511906, 581303, 622749: \copydoc did copy the brief description into the detailed section, causing a difference between the original and the copy.
  • id 555327: Using @ref for an example file, caused it to appear as file::ext.
  • id 567494: Fortran: Included patch for blockdata sub-programs.
  • id 628417: Fortran: doxygen filter, preparsing fixed form of null
  • id 662286: TCL: Inlcuded patch to fixed UTF-8 support.
  • id 662289: TCL: Included patch to prevent ##### from appearing in the output.
  • id 646319: Using a file name with path for HTML_STYLESHEET caused the path to appear in the HTML output.
  • id 664826: Fixed one more problem with include guard detection.
  • id 665629: Fixed parse problem when a #define appeared inside an enum.
  • id 665855: Fixed problem parsing C++ template specialization of the form A such as used in boost::signal2 types.
  • id 666047: A followed by an \htmlonly..\endhtmlonly section caused invalid XHTML output.
  • id 666085: Fixed include handling in case the include guard was documented.
  • id 666124: Fixed problem loading the navigation tree in IE8 when serving pages via a web server.
  • id 666337: Included patch to avoid hypenation hints in front of the first captial in a word.
  • id 666568: When SHOW_FILES was NO, a grouped function did not appear in the javascript based search index.
  • id 666909: \copybrief introduced extra spacing in the HTML output.
  • id 666986: Fixed case where search engine specific code appeared twice in the HTML output.
  • id 666993: Fixed bug in the generated makefile causing index not to be generated when using pdflatex.
  • id 667020: HTML output for example pages was not well-formed.
  • id 667192: Include statements in latex output where placed all on one line in the LaTeX output.
  • id 667835: PHP: Fixed problem handling heredoc blocks
  • id 667844: For aliases with a single argument it is no longer required to escape commas that appear inside the argument text.
  • id 668037: Latex: tables can now span multiple pages by using the xtab package.
  • id 668218: Doxygen will ignore the common prefix shared by all directories when computing a names for the directory's output files. This will make the names of the output more stable.
  • id 668519: Added missing newline in man page output.
  • id 669071, 669072: Fixed parse problem for Q_PROPERTY when a template with a namespaced type was used.
  • id 669078: Included patch which changes MATHJAX_RELPATH to use the content delivery network by default.
  • id 669138: Fortran: Fixed problem handling multiple definition statements on one line.
  • id 669406: Using -d Preprocessor now also works when QUIET is YES.
  • id 669434: Latex: citations where only generated properly if the bib files specified via CITE_BIB_FILES did not have a path.
  • id 669758: Tcl: Same function in multiple Tcl namespaces not added.
  • id 670289: Fixed case where doxygen would not correctly detect >> as a termination of a nested template.
  • id 670571: subpages generate empty pages in latex/rtf output and broken links when SHORT_NAME was set to YES.
  • Included VHDL fixes provided by Martin Kreis.
  • The word "dummy" wrongly appeared before the first parameter type in the LaTeX output for an Objective-C method.
  • Fixed several small glitches in the tree view javascript code.
  • Included a patch by Vladimir Simonov to make it possible to compile doxygen with Visual Studio 2005.
  • Fixed some typos in the manual (thanks Albert).

New in version 1.7.6.1 (December 12th, 2011)

  • Changes:
  • Doxygen now reports its cache usage (for the symbol and the lookup cache) at the end of a run (if QUIET=NO), and recommends settings for SYMBOL_CACHE_SIZE and LOOKUP_CACHE_SIZE for your project if either cache is too small.
  • New features:
  • Added new option LOOKUP_CACHE_SIZE to control the internal cache doxygen uses to find symbols given their name and a context.
  • Python: added support for @staticmethod
  • Bug fixes (ids refer to the bugzilla database):
  • Python: scopes are now shown with . instead of ::
  • id 665313: Space before @if was not preserved, causing problems with inline @if .. @endif constructs.
  • id 665583: Fixed XHTML validity problem when using mscgen graphs.
  • id 665641: Fixed XHTML validity problem when GENERATE_TREEVIEW was disabled.
  • id 665720: Included patch to fix hang issue when non-empty INCLUDE_PATH was used.
  • id 665778: Fixed parse issue when a comma appeared as part of an enum's value.

New in version 1.7.6 (December 4th, 2011)

  • Changes:
  • To improve the performance of loading the navigation tree, the data is now split into multiple javascript files which are loaded dynamically.
  • The selected member is now briefly highlighted in the HTML output (when GENERATE_TREEVIEW is enabled).
  • The navigation tree (GENERATE_TREEVIEW) now shows the same information as the index.
  • The navindex section of layout now also controls what is shown in the navigation tree.
  • Improved HTML output support for IE9.
  • Included redesigned VHDL parser (thanks to Martin Kreis for the patch)
  • When a class/structs has many (>15) members of the same type, only the first 10 are shown in the UML diagram.
  • Made the output of the javascript based search engine more compact.
  • New features:
  • Update of the French translation.
  • id 607305: Added support for PHP heredoc and nowdoc constructs.
  • Added support for cross-referencing in case of operator-> overloading. This includes support for std::auto_ptr,std::smart_ptr,std::unique_ptr and std::weak_ptr when BUILTIN_STL_SUPPORT is enabled.
  • Bug fixes (ids refer to the bugzilla database):
  • Regression: some information was no longer available for a class, due to accidental deletion of a code block.
  • Regression: fixed matching problem in the code parser.
  • Included fixes for TCL to support commands with \ and command definitions preceded by whitespace (thanks to Rene Zaumseil)
  • When using "static int a,b" variable "b" incorrectly appeared in the output even though EXTRACT_STATIC was set to NO.
  • id 521717: .spec file was only updated after running ./configure
  • id 656642: Fixed potential crash when using doxygen for large projects.
  • id 656878: Fixed problem running bibtex with \cite command on Windows.
  • id 657152: Fixed constant expression evaluation error in the preprocessor.
  • id 652277: Removed bogus ' from the man page output.
  • id 659244: Quotes in the brief description could appear unescaped in the tooltip.
  • id 641336: #includes with ../ were not always processed correctly.
  • Fixed potential crash when INLINE_GROUPED_CLASSES and INLINE_SIMPLE_STRUCTS are set to YES.
  • id 658896: Fixed preprocessor problem handling #defines whose value was a constant string containing ///.
  • id 660332: Using a \ at the end of a comment line could cause parsing problems for C# as the \ was treated as a line continuation.
  • id 658033: Fixed parser problem when using multiple member groups inside a macro definition.
  • id 503239: Fixed several issues related to \cite handling.
  • id 658587: Improved the way macro definitions are collected.
  • id 660501: Fixed LaTeX error when using \name with a description.
  • id 661292: The documentation for \mainpage incorrectly mentioned that one has to use \ref main in case GENERATE_TREEVIEW was set to YES, which is no longer the case.
  • id 659096: Nested aliases definitions where not always expanded properly (regression w.r.t version 1.7.4)
  • id 658038: Fixed preprocessor problem where the @ character inside a macro definition could appear as @@.
  • id 658646: Fixed problem running mscgen for LaTeX and RTF output.
  • id 661723: Using ClassName%'s did not work anymore, and also ClassName's wasn't autolinked.
  • id 662044: Fixed potential printing of null pointer when using a version filter that returned blanks.
  • id 625518: Fortran: first problem where subroutine using results variable appeared as a function.
  • id 654153: If an URL appeared at the end of a sentence, the period was included in the URL.
  • id 656560: Fortran: Added support for the Double Complex type.
  • id 663640: Included workaround for Solaris CC issue in index.cpp
  • id 662190: Included patch to fix some TCL issues and add the TCL_SUBST configuration option.
  • id 661672: Fortran: Added support for ALIAS expansion in comment blocks.
  • id 663101: Fixed case where a macro was not corrected found in the header file when it could only be found via INCLUDE_PATH.
  • id 664718: using multiple 's inside a block caused text to be joined without spacing.
  • id 656556: Java enums are now parsed as classes.
  • id 664826: Fixed problem in the preprocessor regarding the handling of include guards.
  • id 664893: Fixed typo in the docs for EXCLUDE_SYMLINKS.
  • id 665466: Using a relative URL with did not work when CREATE_SUBDIRS was enabled.
  • id 665464: Using an absolute URL with did not work when CREATE_SUBDIRS was enabled.

New in version 1.7.1 (June 25th, 2010)

  • Changes:
  • id 621695: Made warning and error messages appear with lower case "warning:" and "error:" prefix to make it easier to use the messages from Visual Studio.
  • New features:
  • id 621908: Added new config option FORMULA_TRANSPARENT which allows selecting between transparent (YES) or non-transparent (NO) PNGs for formulas in the HTML output.
  • Update for Turkish translation.
  • Bug fixes (ids refer to the bugzilla database):
  • id 533821: Inheritance relation for a C# class deriving from a generic class was not handled correctly.
  • id 554638: Changing DOT_IMAGE_FORMAT did not cause the graphs to be regenerated.
  • id 576533: A field of the form "enum E *p" was ignore.
  • id 597016: Hide scope name was not working properly for todo items inside class members, where the class was inside a namespace.
  • id 617761: In dot graphs now also @ref worked (previously only \ref was supported).
  • id 621653: Fixed error when compiling doxygen for Solaris 8.
  • id 621733: Removed bogus warning about undocument return type for define when WARN_NO_PARAMDOC was enabled.
  • id 621780: Fixed parsing support for a function that returns a struct definition.
  • id 621785: Doxygen could hang when using \copydoc in a function with \param.
  • id 621805: Using //!< after a #define no longer worked.
  • id 621854,622219,622593: html help compiler (and also the Qt help compiler) was called before all dot images were generated.
  • id 621984: Using a auto-list in combination with \subpage cause the items to be inlined.
  • id 622018: Fixed problem parsing a @param command where the text part started with a formula.
  • id 622019: Added some instructions how to document Fortran code.
  • id 622041: Using \var multiple times in a comment block did not work properly.
  • id 622413: Tooltips could get wrongly truncated when multi-byte UTF-8 characters were used.
  • id 622471: Argument matching failed for typedef in another namespace.
  • Fixed crash situation while handling commands inside a @ref section.
  • Treeview icons were missing in the HTML output when setting GENERATE_TREEVIEW to NO and USE_INLINE_TREES to YES.

New in version 1.7.0 (June 15th, 2010)

  • Changes:
  • Changed the look of the HTML output.
  • Made several internal changes that should have a positive effect on the overall performance.
  • New features:
  • The color of the HTML output can now easily be adjusted using three new options: HTML_COLORSTYLE_HUE, HTML_COLORSTYLE_SAT, and HTML_COLORSTYLE_GAMMA, which control respectively the hue, saturation, and gamma of all elements in the HTML output.
  • Moved dot invocations to the end of a doxygen run. Doxygen will now run multiple instances of dot in parallel (for better CPU utilisation on multi-core systems). The new config option DOT_NUM_THREADS determines the number of threads used (were 0 is auto-detect).
  • Added option EXT_LINKS_IN_WINDOW which controls whether or not links to symbols imported via tag files will be opened in a new window.
  • Included various language updates (thanks to Petr for coordinating).
  • Included patch by Stefan Oberhumer that allows customizing the way parameter lists are shown in the LaTeX output.
  • Bug fixes (ids refer to the bugzilla database):
  • id 306076: source browser could miss links for used namespaces.
  • id 361476,620924: \if and \endif did not work properly inside auto lists.
  • id 557164: No warning for missing return type documentation even though WARN_NO_PARAMDOC was set to YES.
  • id 577005: Handling of nesting \defgroup's was not always working properly.
  • id 578739: ΓΈ was not translated correctly in the LaTeX output.
  • id 583526: Use relative paths for mscgen diagrams to avoid errors in the LaTeX output.
  • id 592991: The "Use current settings at startup" feature of Doxywizard was broken.
  • id 593679: Links in the search results were broken if they pointed to symbols imported via tag files using an absolute path or URL.
  • id 593760,615682: Fixed man page output problem when using @par.
  • id 594021: A C comment before a #endif caused the preprocessor statement to be ignored.
  • id 597013: When HIDE_SCOPE_NAMES was enabled also the scope for nested classes was stripped. Now only the namespace scope will be stripped as before.
  • id 600829: Autolinks to namespace members did not work if an explicit # or :: was used.
  • id 602732: Slashes inside strings in java annotations were not handled properly.
  • id 606335: Fixed the "show html output" button in doxywizard for Windows when IE was set as the default browser.
  • id 608292: Formatting was lost for section copied with \copydoc.
  • id 608359: Fixed C++ parse issue for "class : public base {} var;" construct.
  • id 611056: Generated HTML footer file did not have UTF-8 encoding and the relative path marker needed when using CREATE_SUBDIRS = YES.
  • id 611193: Fixed parsing problem with try-functions having multiple catch handlers.
  • id 611642: Specialized private template member function appeared as public.
  • id 611888: Include dependency graphs were sometimes wrong.
  • id 612170: Some lines in the generated Doxyfile where too long.
  • id 612275: Fixed auto-link problem for certain URLs.
  • id 612292: Improved handling of ellipsis inside brief description when JAVADOC_AUTOBRIEF is enabled.
  • id 612364: Accessibility of macros was not handled properly in all cases.
  • id 612310: Enabling REFERENCED_BY_RELATION without SOURCE_BROWSER could result in broken links.
  • id 612458: Fixed problem handling @copydoc for function operators.
  • id 612609: A raw C# string constant could end up in the next string.
  • id 612969: subpages were not part of the XML output.
  • id 613024: First list item in the paragraph after a @todo item was not parsed properly.
  • id 614204: Generated man page links were having a heading underscore.
  • id 614443: Made include guard detect a bit more strict to avoid false positives.
  • id 614447: The labels of CVS tags were missing a colon.
  • id 614438: Fixed problem parsing Q_PROPERTY with template type and spaces.
  • id 615165: Made the date string in the HTML footer translatable, along with some other sentences on the directory pages.
  • id 612858: Inline attribute was shown also for non-inline template members.
  • id 615583: Fixed problem handling @copy for operators with const qualifier.
  • id 615755: Fixed problem handling '"' inside comments.
  • id 615957: Made the LaTeX output a bit less spatious using \input.
  • id 615695: Fixed preprocessor issue where a macro that was redefined was not resolved.
  • Fixed character encoding issue on the search results page.
  • id 615670: C# namespaces are now extracted also without comment block (the language spec does not allow XML documentation).
  • id 616209: included patch that fixes some typos in the code.
  • id 616344,610604: Pages with an underscore in the label generated a file name containing two underscores.
  • id 616387: text of the form something.symbol got autolinked when symbol had a global scope.
  • id 616761: Call graph could be wrong when local variable has the same name as a global function.
  • id 616947: Added documentation patch on how to create URL links with custom text.
  • id 616988: Doxywizard now removes non-existant files from the recent list and has an option to clear the list completely.
  • id 617051: A macro defined via PREDEFINED did not always overrule a macro definition in the code.
  • id 617278: Enabling call graphs produced invalid XHTML output.
  • id 617871: Non ascii characters in file or directory names caused problems on Windows.
  • id 618079: An ALIAS with parameters spanning multiple lines caused problems with /// style comments.
  • id 618632: Included patch to prevent image overflowing the page in the LaTeX output.
  • id 619728: Fixed problem using EXTENSION_MAPPING for C# (thanks to Vsevolod Kukol for the patch).
  • id 619978: Links to external files could be wrong when CREATE_SUBDIR was enabled.
  • id 620229: /* characters in a print broke parsing within an conditional section.
  • id 620926: \if and \endif did not work properly inside HTML tables.
  • Using @include in combination with LATEX_SOURCE_CODE caused wrong output.
  • Included a patch by Guido Tack which adds two new options for docsets (DOCSET_PUBLISHER_ID and DOCSET_PUBLISHER_NAME) and fixes an issue with linking to docset members.
  • Included patch by Stefan Oberhumer to support escaped {}'s in alias definition and parameters.