Skip to content
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

Introducing Sphinx #863

Merged
merged 33 commits into from
Apr 15, 2021
Merged

Introducing Sphinx #863

merged 33 commits into from
Apr 15, 2021

Conversation

vringar
Copy link
Contributor

@vringar vringar commented Feb 23, 2021

We have long wanted HTML documentation for OpenWPM.
This is our first attempt at doing so.
This PR closes #834 and closes #820

vringar and others added 18 commits April 9, 2020 12:28
* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* Ported SaveScreenshotFullPage #763

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove custom function command and format code

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove duplicate append_command

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* generate new xpi

* Fixing tests

* Fixing tests

* Fixing up more tests

* Removed type annotations

* Fixing tests

* Fixing tests

* Removed command_executor

* Moved Commands to commands

* Fixing imports

* Fixed skipped test

* Removed duplicate append_command

* docs: update adding command in usingOpenWPM

* Forgot to save

* Removed datadir

* Cleaning up imports

* Implemented simple command

* Added documentation to simple_command.py

* Renamed to custom_command.py

* Moved docs around

* Referencing BaseCommand.execute

* Update docs/Using_OpenWPM.md

Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>

Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>
* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* Ported SaveScreenshotFullPage #763

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove custom function command and format code

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove duplicate append_command

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* generate new xpi

* Fixing tests

* Fixing tests

* Fixing up more tests

* Removed type annotations

* Fixing tests

* Fixing tests

* Removed command_executor

* Moved Commands to commands

* Fixing imports

* Fixed skipped test

* Removed duplicate append_command

* docs: update adding command in usingOpenWPM

* Forgot to save

* Removed datadir

* removed use of depricated methods

* Command refactoring (#750)

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* Ported SaveScreenshotFullPage #763

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove custom function command and format code

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove duplicate append_command

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* generate new xpi

* Fixing tests

* Fixing tests

* Fixing up more tests

* Removed type annotations

* Fixing tests

* Fixing tests

* Removed command_executor

* Moved Commands to commands

* Fixing imports

* Fixed skipped test

* Removed duplicate append_command

* docs: update adding command in usingOpenWPM

* Forgot to save

* Removed datadir

* Cleaning up imports

* Implemented simple command

* Added documentation to simple_command.py

* Renamed to custom_command.py

* Moved docs around

* Referencing BaseCommand.execute

* Update docs/Using_OpenWPM.md

Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>

Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>

Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: ankushduacodes <61025943+ankushduacodes@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>
* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* Ported SaveScreenshotFullPage #763

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove custom function command and format code

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove duplicate append_command

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* generate new xpi

* Fixing tests

* Fixing tests

* Fixing up more tests

* Removed type annotations

* Fixing tests

* Fixing tests

* Removed command_executor

* Moved Commands to commands

* Fixing imports

* Fixed skipped test

* Removed duplicate append_command

* manual test breaking post-#807

* replacing with standard json function for single string

* modifying test to see if stops running for over two hours:

* docs: update adding command in usingOpenWPM

* Forgot to save

* Removed datadir

* Reverting error, updating function to current name

* Attempted fix treats display as object

* changing display; pytest unchanged

* added a test case to ensure xvfb runs

* simplifying test

* manual test breaking post-#807

* replacing with standard json function for single string

* modifying test to see if stops running for over two hours:

* Deleted redundant files and references to default_browser_params.json and default_manager_params.json (#822)

* Deleted redundant files and references to -
default_browser_params.json and default_manager_params.json

* added validate_crawl_configs to docs

* updated the docs on how to instantiate TaskManager

* Updated Using_OpenWPM.md

* Updated Platform-Architecture.md

* Attempted fix treats display as object

* changing display; pytest unchanged

* added a test case to ensure xvfb runs

* simplifying test

* fixing requested issues

* runs; modified test to include exception

* fix import

* Queue not optional; removed

Co-authored-by: Stefan Zabka <zabkaste@informatik.hu-berlin.de>

* updated test to check for lockfile

* Update test/test_xvfb_browser.py

Co-authored-by: Stefan Zabka <zabkaste@informatik.hu-berlin.de>

* sticky key in the last commit, same change

* Command refactoring (#750)

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* Ported SaveScreenshotFullPage #763

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove custom function command and format code

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* remove duplicate append_command

* Refactored GetCommand, BrowseCommand to have execute method

* Fixed type name format issues in __issue_command

* Fixed everything I broke

* Changed import style so tests can run

* Added BrowseCommad to imports

* Added some more self

* Added logging to explain failing test

* Added one more self

* Ported SaveScreenshotCommand

It now uses the new command.execute(...) syntax

* Ported SaveScreenshotFullPage #763

* Ported DumpPageSource and RecursiveDumpPageSource (#767)

* Command refactoring (#770)

* attempt at refactoring save_screenshot

* fixed indentation, attempt at refactoring save_screenshot

* refactored SaveScreenshot command to have execute method

* reformatted code using black

* refactored savefullscreenshot command to follow command sequence

* formatted files with black

* removed extraneous commands

* refactored dump page source and formatted code with black

* reformatted recursive dump page source command and formatted code w black

* formatted files using isort

* formatted all files with isort

* refactor finalize command

* refactored initalize command and formatted with black and isort

* missed a conflict

* Ran isort

* Added append_command

* generate new xpi

* Fixing tests

* Fixing tests

* Fixing up more tests

* Removed type annotations

* Fixing tests

* Fixing tests

* Removed command_executor

* Moved Commands to commands

* Fixing imports

* Fixed skipped test

* Removed duplicate append_command

* docs: update adding command in usingOpenWPM

* Forgot to save

* Removed datadir

* Cleaning up imports

* Implemented simple command

* Added documentation to simple_command.py

* Renamed to custom_command.py

* Moved docs around

* Referencing BaseCommand.execute

* Update docs/Using_OpenWPM.md

Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>

Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>

* Changed finally condition

* Restoring manual_test.py

Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: Mollie Bakal <bakalm@umich.edu>
Co-authored-by: MollieBakal <molliebakal@gmail.com>
Co-authored-by: Ankush Dua <61025943+ankushduacodes@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>
@vringar
Copy link
Contributor Author

vringar commented Feb 23, 2021

@boolean5 Do you have any experience with sphinx?
I currently have none and can definitely use some assistance on this.

@vringar
Copy link
Contributor Author

vringar commented Feb 23, 2021

@birdsarah @englehardt Thoughts on keeping our documentation as markdown vs converting it to RST?
The main problem I encountered so far is that in the rendered HTML the relative links embedded in the Markdown are completely broken.
Also with RST we would be able to directly link to types and methods, making it harder for our documentation to reference things that no longer exist.

@codecov
Copy link

codecov bot commented Feb 23, 2021

Codecov Report

Merging #863 (8497889) into master (e72ed23) will decrease coverage by 0.17%.
The diff coverage is 0.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #863      +/-   ##
==========================================
- Coverage   50.41%   50.23%   -0.18%     
==========================================
  Files          34       34              
  Lines        3372     3372              
==========================================
- Hits         1700     1694       -6     
- Misses       1672     1678       +6     
Impacted Files Coverage Δ
openwpm/utilities/cookie.py 0.00% <0.00%> (ø)
openwpm/utilities/multiprocess_utils.py 50.00% <0.00%> (-4.77%) ⬇️
openwpm/browser_manager.py 67.70% <0.00%> (-1.14%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e72ed23...8497889. Read the comment docs.

@boolean5
Copy link
Contributor

@boolean5 Do you have any experience with sphinx?
I currently have none and can definitely use some assistance on this.

@vringar, I have some experience in maintaining Sphinx-based documentation but not in setting it up from scratch. I'm definitely willing to help though. Let me know if you have something specific in mind.

@birdsarah
Copy link
Contributor

@birdsarah @englehardt Thoughts on keeping our documentation as markdown vs converting it to RST?

I don't care either way. We just need to pick something for rendering the docs that we're willing to maintain to long term. Setting up, and therefore, changing docs frameworks is a pain. But once we're going on something it should be fine.

@boolean5 - " I have some experience in maintaining Sphinx-based documentation but not in setting it up from scratch." - that's the situation for most folks as there are far more developers than docs sites. Don't worry about it. It tends to be annoying and fiddly but it would be for any of us.

The good thing about using sphinx is that loads of folks do so there's plenty of guides out there.

@vringar
Copy link
Contributor Author

vringar commented Feb 24, 2021

We just need to pick something for rendering the docs that we're willing to maintain to long term.

Then I propose switching to RST. We are a python project, we want to generate docs from source and want to link to code from our documentation.
The generated docs will always be rst so we'll have to learn the syntax anyway.
(I'm mostly thinking of code snippets in the docstring and linking to related methods)

@vringar
Copy link
Contributor Author

vringar commented Feb 24, 2021

The only thing that is currently generating .md is the jsonschema2md which would need to be replaced by something generating rst.

@vringar
Copy link
Contributor Author

vringar commented Feb 24, 2021

@vringar, I have some experience in maintaining Sphinx-based documentation but not in setting it up from scratch. I'm definitely willing to help though. Let me know if you have something specific in mind.

I'm mostly looking for advice around how to structure the index.rst and how the docs folder should be structured.
Since we have two target audiences (consumers and OpenWPM developers) should we clearly split that content into two subfolders or is a flat organisation better.

@boolean5
Copy link
Contributor

boolean5 commented Mar 8, 2021

I'm mostly looking for advice around how to structure the index.rst and how the docs folder should be structured.
Since we have two target audiences (consumers and OpenWPM developers) should we clearly split that content into two subfolders or is a flat organisation better.

I think using a flat structure under docs is ok for now. It's enough to clearly separate user documentation from developer documentation in index.rst. The way this is done now, by using a different toctree for each section, works great.
If we later end up having many documentation files, we can rethink separating them in a user directory and a dev directory.

And another note: we should rename .readthedocs.yml to .readthedocs.yaml, as it is stated here that the .readthedocs.yml naming variant is deprecated.

docs/Schema-Documentation.md Show resolved Hide resolved
.readthedocs.yml Outdated Show resolved Hide resolved
.readthedocs.yml Outdated Show resolved Hide resolved
.gitignore Outdated
@@ -26,6 +26,9 @@ C:\\nppdf32Log\\debuglog.txt
*/idea
.Trash-0

#Docs
docs/source
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we going to need this when we will be autogenerating documentation from docstrings? Because Sphinx does not create a source directory right now when building the docs, right? Anyway, if we keep it, it would be best to group it along with docs/_build below the # Sphinx documentation comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it does as part of autodoc I might be wrong on this though.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that this depends on whether we chose to have "Separate source and build directories" when running sphinx-quickstart. If we chose not to, then we will only have a _build directory.

docs/Platform-Architecture.md Show resolved Hide resolved
docs/Platform-Architecture.md Show resolved Hide resolved
docs/conf.py Outdated Show resolved Hide resolved
docs/conf.py Outdated Show resolved Hide resolved
environment.yaml Outdated Show resolved Hide resolved
environment.yaml Outdated Show resolved Hide resolved
Stefan Zabka and others added 2 commits April 12, 2021 15:58
Co-authored-by: Georgia Kokkinou <geor5ko@gmail.com>
@vringar vringar marked this pull request as ready for review April 12, 2021 18:11
@vringar vringar requested a review from boolean5 April 12, 2021 18:11
docs/Configuration.md Outdated Show resolved Hide resolved
docs/Configuration.md Outdated Show resolved Hide resolved
docs/Configuration.md Outdated Show resolved Hide resolved
Copy link
Contributor

@boolean5 boolean5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apart from a minor note I left this is ready to merge. Great work! 🎉

docs/Configuration.md Outdated Show resolved Hide resolved
@vringar vringar merged commit 625d814 into master Apr 15, 2021
@vringar vringar deleted the sphinx branch April 15, 2021 10:04
Zaxeli pushed a commit to Zaxeli/OpenWPM that referenced this pull request Aug 10, 2021
We can now generate documentation to a variety of display formats including HTML by using sphinx.
With this new infrastructure we are now also able to generate documentation on readthedocs.io.

Co-authored-by: jhabarsingh <jhabarsinghbhati23@gmail.com>
Co-authored-by: Cyrus <cyruskarsan@gmail.com>
Co-authored-by: cyruskarsan <55566678+cyruskarsan@users.noreply.github.com>
Co-authored-by: Steven Englehardt <senglehardt@mozilla.com>
Co-authored-by: ankushduacodes <61025943+ankushduacodes@users.noreply.github.com>
Co-authored-by: Mollie Bakal <bakalm@umich.edu>
Co-authored-by: MollieBakal <molliebakal@gmail.com>
Co-authored-by: jhabarsingh <43932986+jhabarsingh@users.noreply.github.com>
Co-authored-by: Georgia Kokkinou <geor5ko@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Set up Sphinx
4 participants