-
-
Notifications
You must be signed in to change notification settings - Fork 237
DOC: Docs Overview #395
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
DOC: Docs Overview #395
Conversation
REL: v1.0.0a1
Gui-FernandesBR
left a comment
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.
Amazing work here, @MateusStano , many thanks for your contribution!!
To summarize my comments:
- You said you removed the
__author__entry from every file. Is there any other place where we could reference the authors names? - Dark mode for MATLAB tutorial isn't working so well. Is that a problem related with the matlab file conversion?
- The "README", "First simulation" and "Getting started notebook" look a bit repetitive, don't you think? Maybe we should keep only the first simulation and the README descriptions, what do you think?
- the favicon needs to be updated
- For the future, we have a great challenge of removing all the notebooks and start using only .rst files for documentation. No more binary files in our repo, finally!
- Please void to rename a file. this makes git to understand that you deleted a file and created other, thus missing the track of changes. Instead you can use
git renamecommand to do the same thing. - Readthedocs is building your documentation pretty well now, it seems like a complete job for me. Approved. https://docs.rocketpy.org/en/doc-docs-overview/index.html
I believe the head branch is correct here. We should keep readthedocs was fixed too. The only problem that I'm seeing here is the merge conflict in the Flight class. Could you solve it @MateusStano ? |
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.
Excellent work on the documentation. Some small corrections I noticed during the PR that I cannot comment separately, since these lines were not changed:
- On the
Rocketclass, all theadd_surfaceinternal references are broken. Perhaps it should beadd_surfaces; - The last
add_finmethod in the documentation of theRocketclass appears to be incomplete and does not follow standard documentation; - In general, many equations of the documentation would benefit from some inline LaTeX (e.g.
ParachuteCds docstring); -
Parachuteclass:-
noise_signal(and similar attributes) type should belistoftuplefollowed by a description of the tuple content; -
noise_signal_function,noisy_pressure_signalFunction,clean_pressure_signalFunctionnames/docstring have camelCase naming.
-
-
Flightclass:- Documentation has an issue with the
Mechanics Fluidsubtitle, so that there is an incorrect link to theFluidclass; - In
__init__docstring ofRocketandEnvironment, there is no need to repeat the "rocketpy" in their description, since their types are specified right before; -
Flightattributes, such asx,y,zwould benefit a lot from a functional internal link to theFunctionclass in their description (this happens in other classes also, but here is more important); -
post_processmethod has an issue with the bullet point listing; -
export_dataandexport_kmlhave an issue that the character'*'is interpreted as an internal link to the same page. They should be escaped.
- Documentation has an issue with the
-
EnvironmentAnalysismethodconverted_pressure_level_datahas a typo that should be "therefore".
Something I noticed is that there are numerous internal references to code classes in the docstring description (not the types) that the parser considers as regular text.
Nonetheless these are small errors and the overall work in this PR was amazing. This list represents the issues that I caught while reading the docs and many are easy to fix, I will put a checkbox on them so everybody can coordinate the work.
DOC: update motor docstrings regarding coordinate systems
Seems to be something to do with including MATLAB live scripts in the documentation. I couldn't find a fix for it though
I think it is a good ideia. I removed the getting started notebook page from the docs, however I think having the getting_started notebook is still pretty useful, so I left links to it and its colab version in the First Simulation page. |
|
Hey! Think I changed everything that was requested here. The tests are passing locally, but there seems to be a problem with Environment in the actions. It is unrelated to this PR though |
I reccommed not merging before solving the testing issue.
|
|
Amazing work here! Congratulations specially to @MateusStano for pushing it hard. Tests are passing, readthedocs is building all the pages correctly. Time to move on! |
Pull request type
Pull request checklist
black rocketpy) has passed locally and any fixes were madepytest --runslow) have passed locallyDoes this introduce a breaking change?
Info
Since we started working on v1.0 the documentation was never revised. There were a lot of inconsistency in the documentation due to the several different changes in parameters names, and the way positions related arguments are inputted.
Another important addition was the use of Jupyter Sphinx Extension. This allows us to run jupyter notebooks cell directly in the .rst files. Essentially, this means that we do not need to have notebooks for every little thing we want to document. Using notebooks for documentation is very limiting because using hyperlinks in between documentation is complicated, using admonitions is impossible, and they are pretty hard to maintain.
Jupyter Sphinx runs whenever the documentation is built, meaning we do not have to keep notebooks that have all outputs displayed and, if the Jupyter Sphinx fails to build, an error will be raised, so we do not have to manually guarantee that all notebooks are running correctly.
Ideally, we would abandon notebooks for documentation and only leave
getting_started.ipynbas an example for users. However, in this PR I have only removed the motor notebooks (and converted them into .rst), since their documentation was very lacking, and I wanted to improve on it.The Environment related notebooks are pretty well written, so I left them as documentation because this PR was already taking enough time to finish.
What was done
And a lot of other minor things, and probably some more that I can't remember
Reviewing Tips
There are a lot of changed files, but the vast majority of them are just small docs changes or notebook changes.
I recommend just building the docs to review this PR.
To see the documentation completely, go into your cloned rocketpy folder and run on terminal
Essentially, everything under
User GuideandCode Referenceneeds a very good review.Notes
Some issues that arose while working on this PR
@funcify_method_decoratorhas no documentationEnvironment methods with
@requireis_netCDF4are not appearing in the Code Reference documentation. Seems to have to do with this issue, that might offer the solution: Doc in decorated function not generated sphinx-doc/sphinx#3783__author__and__license__lines that were in the beggining of every *.py file were removedClass
FlightPhasesand ClassTimeNodesdont have docstringsThe
qualityparameter from theFluidsclass has been removed since it was not used anywhere (and it will probably not be used in the future)Missing info and all_info methods in tank classes
The only notebooks that I did not fix are the two Dispersion related ones, these are very outdated and would take some extra time to fix