-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sys: add modulenames for Doxygen #19314
base: master
Are you sure you want to change the base?
Conversation
The Department of Redundancy Department would approve, but I don't see how this makes anything better. |
I do not see a cononical place the module name is rendered to in our current documentation Initialization of USB Device Firmware < the title of that page not even contains a hint that it might be conneted to riotboot
for UDP benchmark is it |
It is indeed an issue that students regularly express. Specifically, they find some function in the doc but don't know which module to include to be able to use it. But IMO the KConfig files would be the place to generate a list of module names from, especially as they already have a brief description / help text already. Maybe that could be used to generate a It would be a huge pain to keep the KConfig module description, the |
Some auto generation would be nice but sadly the the current situation is realy bad the @defgroups are allover the place and are of very different quality, often the group names correlate with the module name but not always somtimes the title hints the module name, sometimes it just has the word reversed sometimes for good sometimes it seems the writer just did not want to write his chosen modulename and have some extra fun with words. "Helpers for pointer tagging" is what module? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A lot of those aren't actually modules - is this intentional?
* @ingroup sys | ||
* @brief Provides math libraries and utilities for RIOT | ||
*/ | ||
|
||
/** | ||
* @defgroup sys_memory_management Memory management | ||
* @defgroup sys_memory_management memory_management: Memory management |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
memory_management
is not a module
* @ingroup sys | ||
* @brief Provides memory management implementations and utilities | ||
*/ | ||
|
||
/** | ||
* @defgroup sys_serialization Serialization | ||
* @defgroup sys_serialization serialization: Serialization |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
serialization
is not a module
* @ingroup sys | ||
* @brief Utilities for data serialization | ||
*/ | ||
|
||
/** | ||
* @defgroup net_lorawan LoRaWAN | ||
* @defgroup net_lorawan lorawan: LoRaWAN |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lorawan
is not a module
@@ -7,7 +7,7 @@ | |||
*/ | |||
|
|||
/** | |||
* @defgroup sys_ecc ECC | |||
* @defgroup sys_ecc ecc: ECC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ecc
is not a module
@@ -7,8 +7,7 @@ | |||
*/ | |||
|
|||
/** | |||
* @defgroup sys_architecture Platform-independent access to architecture | |||
* details | |||
* @defgroup sys_architecture architecture: Platform-independent details |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
architecture is not a module
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This module provides architecture-independent access to architecture details.
There seems to be a bit of clarity missing when something is a module and when not. (Is a module that is not need to be used a module?)
I still like the proposal from the last VMA to add a usage section that includes information about which module to use (and which header to include). |
I also like that proposal, sadly that takes much longer to implement, since when doing that it would be a module by module effort and would for many module require a person that has some inside knowlege about that module. I think having the area of concern (like we do for our pr) in the title of the documentation is a huge step; standardized: lowercase like we write in pr , usemodule / usepackage. @benpicco: the area of concern is also the reason why some not modules got a generalized and standardized name. |
f8089d6
to
f67bb8c
Compare
Understood but as far as I understood your approach here also requires manual maintenance or am I mistaken? On the other hand, why not go step by step? Maybe we setup a bit tracking issue and try to introduce these usage sections one by one? |
Contribution description
Add modulenames for Doxygen
Testing procedure
read the murdoc doxygen prview
Issues/PRs references
#7094
#8479