DoxyPress  1.2.11
Timeline

The following information details the development of DoxyPress and DoxyPressApp.

2014

November 2014:

  • Discovered Doxygen was not sufficient for accurate C++11 API documentation
  • Used QDoc on Qt 4.8.6 source code to generate html output
  • Merged Qt 5.x html pages with Qt 4.x html output
  • Developed a parser to convert html documentation to the Doxygen format

December 2014:

  • Fork of Doxygen 1.8.8
  • Renamed Doxygen to DoxyPress
  • Wrote new makefiles to build DoxyPress with GNU Autotools
  • Removed all Qt 2 classes and containers
  • DoxyPress links with CopperSpice library using C++11
  • Code reformatted and modified to use C++11 syntax where appropriate
  • Updated source code to use variadic templates and shared pointers
  • Renamed DoxyWizard to DoxyPressApp
  • Wrote new makefiles to build DoxyPressApp with GNU Autotools
  • Redesigned the user interface of DoxyPressApp

2015

January 2015:

  • Changed DoxyPress to use a JSON project file
  • Added a new parser to support documenting Makefiles. Uses the new command \code {.mk}
  • Changed erroneous 'div' tags to paragraph tags
  • Resolved issues with white space in tables. Blank rows are no longer displayed in the table output and do not cause layout issues
  • Changed DoxyPressApp to use a JSON project file
  • Added a feature to convert a Doxygen project file to a DoxyPress JSON project file
  • Tags with list values are now comma separated. Improved UI to use one consistent style of editor
  • Tags with list values can be modified inline or with the pop up editor

February 2015:

  • Updated help text for every field in the DoxyPressApp
  • Help text is activated by mousing over the corresponding data field
  • Created a new test project for functional testing
  • Added a tag for removing the timestamp for LaTex
  • Added a tag to specify the full file name for the GhostScript program
  • A new variable was added, $datetimeHHMM will be substituted with the current date and time during documentation generation. An example of this format is: "Tue Mar 31 2015 15:30"

March 2015:

  • Added a new command \sortid X, where X must be an integer. This command can be used to specify the sort order of pages in the treeview
  • Incorporated numerous changes from Doxygen 1.8.9 into DoxyPress 1.0.0
  • Updated the HTML style sheets and layout files
  • DoxyPress and DoxyPressApp released to Alpha

April 2015:

  • Added DoxyPress support Forum for end users, developers, and bug tracking
  • Added syntax highlighting in DoxyPressApp for several words like Reading, Processing, Error, and Warning
  • Fixed display issue with \secreflist layout
  • Added a second optional parameter to \anchor to specify the displayed anchor name
  • Fixed <dl> so it can contain multiple <dd> tags
  • Images no longer force a new paragraph
  • DoxyPress and DoxyPressApp released to Beta

May 2015:

  • Compiled clang 3.6.0 on Windows 32-bit and 64-bit
  • Review the process to use clang for C++ parsing
  • Add support for documenting CopperSpice macros
  • Enhanced support for Qt macros
  • Auto generated table has been added to property documentation to show associated methods
  • Changed the function pages (variables, typedefs, enums, etc) to show the underscore letter for the first page
  • For a function page containing multiple pages, a new redirect page from the base name to the correct first letter will automatically be generated

June 2015:

  • Clean up DoxyPress documentation
  • Backport several cherry picks
  • Added a warning when member source and member documented return types do not agree
  • Output was incorrect when an enum with the same name was in multiple namespaces
  • Enhanced C++ parsing support
  • Removed compound auto link to self
  • Added three new sections to the layout file for class docs
    • Typedefs which were in "Public Types" were moved to "Public Typedefs"
    • Typedefs which were in "Protected Types" were moved to "Protected Typedefs"
    • Typedefs which were in "Private Types" were moved to "Private Typedefs"

July 2015:

  • Redesigned the entire translation system to use the built in CopperSpice Translations
  • A DoxyPress project can switch between language translations without rebuilding
  • Extensive changes to use QString instead of eight bit strings
  • Modified all methods character processing to use Unicode
  • Fixed <div id = "nav-path">, conflict with the an id, new id is "breadcrumb"
  • Added markdown page to the Test Suite Project

August 2015:

  • Given a function with only a brief description, no detailed description, and Auto Brief is set "on". Documentation was not shown in the declaration section. Resolved in DoxyPress.
  • Built using CS 1.2.0
  • Official release of DoxyPress and DoxyPressApp

September 2015:

  • Attended CppCon in Seattle, Washington
  • Co-founders of CopperSpice and DoxyPress presented two sessions. One talk was about the CopperSpice library and the other presentation announced DoxyPress
  • Co-founders of CopperSpice presented a lightning talk about template magic

October 2015:

  • Reorganize DoxyPressApp Json project file to use a hierarchical structure
  • Fix input source path issues and recursion problem
  • Updated the DoxyPress test build

November 2015:

  • Added a project tag to specify the main index page name, this file name will not be included in the navigation treeview file listing if FILES is enabled
  • New tags were added in the project file to specify source extensions and header extensions
  • New header extension tags allow the user the ability to define which files will appear in the File List
  • Release RC-2

December 2015:

  • Added Latex Stylesheets to DoxyPress, updated DoxyPressApp with a new project tag
  • Updated the DoxyPress test build
  • Backport cherry picks
  • Converted numerous internal raw pointers to shared pointers
  • Removed unused source code
  • Release RC-3
  • Updated the copyright

2016

January 2016:

  • Uploaded source to GitHub (version 1.1.0)
  • Backport cherry picks
  • Added new project tag to omit the main index page from the navigation treeview
  • Added new project tag to specify a list of namespaces which should be renamed in the documentation with an alias name
  • Merged development branch with master
  • Uploaded source to GitHub (version 1.2.0)
  • Release version 1.2.0
  • Added the ability to pass the date/time to DoxyPress from the command line (Refer to Set Date/Time)
  • Added a feature in the DoxyPressApp program to pass the date/time to DoxyPress
  • Corrected several error messages for project file tags

February 2016:

  • Fixed legacy issue with auto links to templated classes
  • Resolved an issue with graphViz
  • Resolved an issue with file names for global functions
  • Enhanced the interface to use libclang for parsing C++
  • Move minimum GCC version to 4.8.1
  • Release version 1.2.1

March 2016:

  • Upgrade to clang 3.7.1
  • Enhance libClang integration for C++ parsing
  • Separated File Listing into Files List and File Source
  • Updated the default layout file, added a new tag for File Source
  • Added user requested changes and enhancements
  • Added a command line option in DoxyPressApp to convert a project file to the DoxyPress format

April 2016:

  • Enhanced the options DoxyPressApp can pass to Doxypress
  • Release version 1.2.2
  • Continue with development to use libClang for parsing C++ source

May 2016:

  • CppNow 2016 presentation on CopperSpice and our new CsSignal library
  • CppNow 2016 presentation on DoxyPress demonstrating how clang can be used to parse C++
  • CppNow 2016 presentation on LibGuarded
  • Switch to using clang libTooling 3.7.1 for parsing C++
  • Created a test suite for C++ parsing

June 2016:

  • Fix reported member grouping issue
  • Rework Python parsing file
  • Created a test suite for Python parsing
  • Adjust icons to indicate a P for packages instead of a namespace for Java and python
  • Add new tag to DoxyPressApp for Python optimization
  • Configured and launched Redmine for project tracking
  • Released DoxyPress 1.2.3-RC-1 source and Windows 64 binary files

July 2016:

  • CopperSpice team on temporary medical leave as Barbara recovers from a Total Knee Replacement
    Thank you to the community for their wonderful support and encouragement during this time

August 2016:

  • Fix reported user issues
  • Backport cherry picks
  • Added accelerators to DoxyPressApp
  • Update python test build files
  • Enhance how css files are copied into a project
  • Update DoxyPress documentation
  • Released DoxyPress 1.2.4-RC-1, Windows 64 binary files

September 2016:

  • Several improvements in markdown
  • Added documentation detailing how to build DoxyPress with libClang
  • Added documentation detailing how to build clang
  • Remove "-0" from Cs library file names
  • Released DoxyPress and DoxyPressApp 1.2.4

October 2016:

  • Continue internal work on clang parsing for C++

November 2016:

  • Resolve several reported issues from current users
  • Backport cherry picks
  • Minor clean up in the DoxyPressApp UI
  • Extensive changes to Fortran parsing
  • Added test files for multiple languages to DoxyPress test build
  • Modify the global containers to access by value instead of raw pointers

December 2016

  • Add additional testing to the test build for DoxyPress commands
  • Cleaned up marshaling by removing raw pointers, increased stability
  • Corrected an issue with the source file index layout
  • Resolved C# user report parsing issue
  • Resolved tagfile generation issue
  • Enhanced file source navigation
  • Redesigned cite and bibliography to work on Windows
  • Add 'override' to inherited methods
  • Update documentation detailing how to build clang for Debian Jessie
  • Release DoxyPress and DoxyPressApp 1.2.5

2017

January 2017:

  • Update copyright
  • Resolved return type issue for overloaded methods
  • Fixed an issue when documenting a template overload
  • Enhance parsing when suppressing word links for templates
  • Clarified warning messages
  • Template parameter list did not match when < > spacing was not exact, compare adjusted
  • DoxyPressApp: Added Find and FindNext on the process tab
  • Release DoxyPress and DoxyPressApp 1.2.6

February 2017:

  • Optimize memory usage in preprocessor
  • Clean up inherited memory leaks as reported from Valgrind
  • Change several small QList containers to use QVector
  • Enhance clang parsing to handle template parameters
  • CMake build files under development, working on scripts to locate required libraries
  • Release DoxyPress and DoxyPressApp 1.2.7
  • Accepted as speakers for CppNow 2017

March 2017:

  • Redesign interface for handling templates in clang libTooling when parsing C++
  • Extensive testing of the clang parsing by documenting the actual clang source code

April 2017:

  • Fix Unicode problem with comments, multi byte characters are now displayed properly
  • Fix DoxyPressApp to display the DoxyPress output using UTF-8
  • Correct warning log for explicit methods
  • Continued improvements in clang libTooling when parsing C++

May 2017:

  • CppNow 2017 presentation on CsString, a Unicode aware string library
  • CppNow 2017 presentation on libGuarded, new RCU container classes
  • CopperSpice 1.4.1 release
  • CsSignal 1.1.0 release
  • libGuarded 1.1.0 release
  • CsString 1.0.0 release
  • DoxyPress 2.2.8 release
  • DoxyPress 2.2.9 release

June 2017:

  • Update CMake build system to locate CopperSpice libraries
  • Update CMake build system for packaging support with CPack
  • Fix issue with the brief on group pages, use abbreviated brief
  • Allow a group list to contain classes with the same name in different scopes
  • Optimize class lookup in map container, remove duplicate calls to find
  • For Latex output, modify so only one text stream is used
  • Fix format of Latex comments
  • Increase number of recent files open to 15 for DoxyPressApp

July 2017:

  • CMake successfully creates zip file packages for DoxyPress & DoxyPressApp for Windows
  • DoxyPress 1.2.10 release
  • DoxyPressApp 1.2.10 release
  • Recorded CppCast interview
  • Started CopperSpice YouTube channel
  • Accepted as speakers for CppCon 2017 presenting CsString, a Unicode aware string library
  • Accepted as speakers for CppCon 2017 presenting libGuarded, new RCU container classes
  • Clean up user issues reported on Github

August 2017:

  • Resolved issue with lex parsing C++ qualifiers
  • Fixed output when only RTF is selected
  • Minor DoxyPressApp gui updates
  • Updated to support clang 3.8.1 for clang parsing
  • Update minimum required clang version to 3.8.1 for building DoxyPress
  • Update minimum required GCC version to 5.4 for building DoxyPress
  • Migrate to C++14 on all platforms

September 2017:

  • Document how to build clang 3.8 for various platforms with RTTI enabled, required for clang parsing
  • Update documentation when parsing with clang
  • DoxyPress 1.2.11 release
  • DoxyPressApp 1.2.11 release