Trac issueshttps://gitlab.torproject.org/legacy/trac/-/issues2020-06-13T15:46:36Zhttps://gitlab.torproject.org/legacy/trac/-/issues/32067Content revisions on doc/HACKING/design: describe important parts of lib.2020-06-13T15:46:36ZNick MathewsonContent revisions on doc/HACKING/design: describe important parts of lib.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32387Doxygen: enable source code browser2020-06-13T15:47:54ZNick MathewsonDoxygen: enable source code browserDoxygen has support for outputting an annotated cross-referenced version of our C source. We should enable this to make it more useful.Doxygen has support for outputting an annotated cross-referenced version of our C source. We should enable this to make it more useful.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32378Doxygen: fix \refdir output2020-06-13T15:47:51ZNick MathewsonDoxygen: fix \refdir outputI thought that I had a working `\refdir` command for doxygen that would generate correct links to directory documentation, even in out-of-tree builds. Unfortunately, it only worked for out-of-tree builds whose `@srcdir@` did not contain...I thought that I had a working `\refdir` command for doxygen that would generate correct links to directory documentation, even in out-of-tree builds. Unfortunately, it only worked for out-of-tree builds whose `@srcdir@` did not contain the string `../`.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32386Doxygen: Make output more C-like2020-06-13T15:47:53ZNick MathewsonDoxygen: Make output more C-likeThere are a couple of options we should set to make our doxygen output more C-like and less C++-like.
The TYPEDEF_HIDES_STRUCT option tells doxygen to handle `typedef struct foo_t foo_t` by making `foo_t` and `struct foo_t` synonymous. ...There are a couple of options we should set to make our doxygen output more C-like and less C++-like.
The TYPEDEF_HIDES_STRUCT option tells doxygen to handle `typedef struct foo_t foo_t` by making `foo_t` and `struct foo_t` synonymous. This lets doxygen find documentation that it would otherwise miss: otherwise, if it sees documentation for "int func(foo_t *)" and a prototype for "int func(struct foo_t)", it will think that the prototype is undocumented.
The HIDE_SCOPE_NAMES option tells doxygen to describe a member "member" of a struct "container" as "member", not "container::member".Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32385doxygen: respect --enable-fatal-warnings2020-06-13T15:47:53ZNick Mathewsondoxygen: respect --enable-fatal-warningsDoxygen has an option to fail with an error if any warning message occurs. We can enable it, if we disable missing documentation warnings. We should have another option to turn missing documentation warnings back on.Doxygen has an option to fail with an error if any warning message occurs. We can enable it, if we disable missing documentation warnings. We should have another option to turn missing documentation warnings back on.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32110Doxygen: update Doxyfile.in to latest version2020-06-13T15:46:46ZNick MathewsonDoxygen: update Doxyfile.in to latest versionOur Doxyfile.in is based on a template from 1.5.6 from back in 2011. Let's update to a more recent version.Our Doxyfile.in is based on a template from 1.5.6 from back in 2011. Let's update to a more recent version.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32366doxygen: use directory hierarchy, and start documenting directories2020-06-13T15:47:46ZNick Mathewsondoxygen: use directory hierarchy, and start documenting directoriesInitial work here in branch `doxygen_org`, PR at https://github.com/torproject/tor/pull/1492 .Initial work here in branch `doxygen_org`, PR at https://github.com/torproject/tor/pull/1492 .Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32101Generate and publish doxygen output automatically2020-12-11T15:36:49ZNick MathewsonGenerate and publish doxygen output automaticallyWe should have a cron job or a jenkins process or something that runs "doxygen" in our codebase and publishes it at some official location.We should have a cron job or a jenkins process or something that runs "doxygen" in our codebase and publishes it at some official location.Tor: 0.4.3.x-finalhttps://gitlab.torproject.org/legacy/trac/-/issues/31850Integrate tor-guts Makefile into tor's build process2020-06-13T15:45:59ZNick MathewsonIntegrate tor-guts Makefile into tor's build processTor: 0.4.3.x-finalhttps://gitlab.torproject.org/legacy/trac/-/issues/32113Make "make doxygen" work with out-of-tree builds2020-06-13T15:46:46ZNick MathewsonMake "make doxygen" work with out-of-tree buildsTor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32307Most every C file needs a doxygen @file declaration2020-06-13T15:47:33ZNick MathewsonMost every C file needs a doxygen @file declarationDoxygen does not generate any documentation for files that do not say @file or \file. We have dozens of those right now.Doxygen does not generate any documentation for files that do not say @file or \file. We have dozens of those right now.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/31853Move this_not_that.md into our coding standards document2020-06-13T15:46:02ZteorMove this_not_that.md into our coding standards documentThere seems to be some overlap between our coding standards and the advice in this_not_that.md.
We should merge that advice into the coding standards.There seems to be some overlap between our coding standards and the advice in this_not_that.md.
We should merge that advice into the coding standards.Tor: 0.4.3.x-finalhttps://gitlab.torproject.org/legacy/trac/-/issues/31849Move tor-guts.git into tor.git2020-06-13T15:45:59ZNick MathewsonMove tor-guts.git into tor.gitWe have some software architecture documentation in tor-guts.git. Let's move it into doc/hacking/design so we can start editing it.We have some software architecture documentation in tor-guts.git. Let's move it into doc/hacking/design so we can start editing it.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32510Rename .dox files to end with .md, and remove their /** magic **/2020-06-13T15:48:16ZNick MathewsonRename .dox files to end with .md, and remove their /** magic **/I thought that we had to have documentation-only doxygen files wrapped in /** and **/. But we don't: we can just tell doxygen that those files are markdown, and it will do the right thing.
We should make this change so that other tools...I thought that we had to have documentation-only doxygen files wrapped in /** and **/. But we don't: we can just tell doxygen that those files are markdown, and it will do the right thing.
We should make this change so that other tools (like github) that have special handling for markdown can pretty-print our markdown files, and so that we can eventually incorporate some/all of doc/HACKING into our doxygen.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/31852Rename doc/HACKING/design members to reflect current architectural division2020-06-13T15:46:01ZNick MathewsonRename doc/HACKING/design members to reflect current architectural divisionThe original tor-guts.git document pre-dated the source code re-organization when we divided things into src/lib/*, src/core/*, src/feature/*, and src/app/*.
We'll want to edit the documentation to correspond to reality. But before we d...The original tor-guts.git document pre-dated the source code re-organization when we divided things into src/lib/*, src/core/*, src/feature/*, and src/app/*.
We'll want to edit the documentation to correspond to reality. But before we do that, we'll want to rename and divide the modules so that they have the right names. (Git handles edits better if there are no edit/split/move conflicts.)Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32100Resolve all doxygen warnings2020-06-13T15:46:41ZNick MathewsonResolve all doxygen warningsRight now doxygen produces some warnings when we run it; we should fix all of those.Right now doxygen produces some warnings when we run it; we should fix all of those.Tor: 0.4.3.x-finalNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/legacy/trac/-/issues/32099Stop having "make doxygen" build latex/pdf/dvi outputs2020-06-13T15:46:40ZNick MathewsonStop having "make doxygen" build latex/pdf/dvi outputsRight now, doxygen is set up to build pdf and dvi outputs via latex. But doing this produces a huge 4000-page output that nobody wants. We should have it only build PDF.Right now, doxygen is set up to build pdf and dvi outputs via latex. But doing this produces a huge 4000-page output that nobody wants. We should have it only build PDF.Tor: 0.4.3.x-finalNick MathewsonNick Mathewson