-
Notifications
You must be signed in to change notification settings - Fork 1
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
Migrate code, write tests, write docstrings #19
Comments
Currently have done terrible job at creating sensible modules, propose to migrate code into these modules:
|
While @dalonsoa and @cheginit try and get a big picture, I will work on |
For modules and structuring the codes, I recommend making them a bit more categorical. For example, something like the following:
A thematic structure like this makes it easier to navigate the codebase. |
For managing config files, there are two main options: in-house reader or existing config management libraries. If the config file is simple, we can develop a reader module with suitable validator functionalities. If there are many input files, I recommend using existing Python libraries. A popular choice is MogaConf. A more general solution is pydantic that provides powerful schema generation and validators. So, it boils down to the complexity of the config files. |
OK I'm easy on naming conventions.
If we're happy with this I will first make a PR to rename modules. Implicit within this for me is the idea that there will be a set of registered graph functions in Then, perhaps do we need to finalise discussion of config file (#10 ) before commencing on I would probably work on Also @dalonsoa you mentioned for the graph functions (i.e., a function that takes a graph and gives a graph), I can register it, |
The purpose is similar, but the implementation is not. In that case I used |
Using I have a self-imposed limit that when a module becomes larger than 1000 LOC, I tend to break it into more modules. So, if |
Closed by #83 |
Need to do..
The text was updated successfully, but these errors were encountered: