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

[DOC] Improve Python developer documentation #599

Closed
harrism opened this issue Jul 20, 2022 · 2 comments · Fixed by #666
Closed

[DOC] Improve Python developer documentation #599

harrism opened this issue Jul 20, 2022 · 2 comments · Fixed by #666
Assignees
Labels
doc Documentation Python Related to Python code

Comments

@harrism
Copy link
Member

harrism commented Jul 20, 2022

We would like to improve cuSpatial's developer documentation to make it easier to contribute to cuSpatial.

I think we should follow the lead of cuDF, which has a relatively comprehensive set of documentation for developers. cuDF provides a library_design.md which provides an overview of the core classes and their relationships. It also provides documentation.md which documents how developers should write docstrings for cuSpatial Python APIs.

cuDF is in the process of further improving its Python developer guides, which will provide even better examples for cuSpatial. For example, there are PRs for creating the main Python developer guide, adding developer docs for writing tests,, and adding developer docs for benchmarking. (All by @vyasr)

In addition to developer docs, cuDF also provides a comprehensive user guide. This is helpful to developers as well as to users. We should consider this for cuSpatial as well.

@harrism harrism added doc Documentation Python Related to Python code labels Jul 20, 2022
@harrism harrism added this to the Developer Documentation milestone Jul 20, 2022
@harrism harrism moved this to In Progress in cuSpatial Aug 1, 2022
This was referenced Aug 2, 2022
rapids-bot bot pushed a commit that referenced this issue Aug 3, 2022
This PR Adds `Myst_parser` extension to sphinx docs. This allows developers to write markdown pages for guides and references. In general, this is the more popular choice over reStructuredText. This PR also converts several text heavy documents into markdowns and fixes some build warnings.

Note that rST is still supported and that the api reference folder remains in rST format. In general, markdown favors text heavy documentation such as guides and technical walk-through, while rST is suitable for creating reference trees. 

This PR builds up the file organization proposed by #599 and generally follows the layouts of cudf.

Authors:
  - Michael Wang (https://github.com/isVoid)

Approvers:
  - Mark Harris (https://github.com/harrism)
  - H. Thomson Comer (https://github.com/thomcom)
  - Ray Douglass (https://github.com/raydouglass)

URL: #621
rapids-bot bot pushed a commit that referenced this issue Aug 22, 2022
…mplementation in internal `_column` package (#657)

This PR moves geoseries and geodataframe into `core` package and moves `geocolumn`, `geometa` into internal `_column` package as they are considered non-public interface. `pygeoarrow` is moved to `io` package as it's obviously about interoperability.

Minor changes includes removing `geoutils` module and moves the helper function into geodataframe since it's only used in one module.

Contributes to #644 #599 #525

Authors:
  - Michael Wang (https://github.com/isVoid)

Approvers:
  - H. Thomson Comer (https://github.com/thomcom)

URL: #657
rapids-bot bot pushed a commit that referenced this issue Aug 23, 2022
This PR contributes to #644, creates a `spatial` package for spatial related functions. Divided into six sub categories: `measure`, `bound`, `index`, `join`, `project`, `filter`.

Also contributes to #525, #599

Authors:
  - Michael Wang (https://github.com/isVoid)

Approvers:
  - H. Thomson Comer (https://github.com/thomcom)
  - Mark Harris (https://github.com/harrism)

URL: #656
@github-actions
Copy link

This issue has been labeled inactive-30d due to no recent activity in the past 30 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed. This issue will be labeled inactive-90d if there is no activity in the next 60 days.

@thomcom thomcom moved this from In Progress to Review in cuSpatial Sep 26, 2022
@thomcom
Copy link
Contributor

thomcom commented Sep 26, 2022

The python User Guide is ready for review in and should close or contribute greatly to this issue. #666

@rapids-bot rapids-bot bot closed this as completed in #666 Sep 30, 2022
rapids-bot bot pushed a commit that referenced this issue Sep 30, 2022
This PR adds `docs/source/user_guide/index.ipynb`, a comprehensive description of the APIs available in cuspatial python and example code for each.

The APIs are separated in a table of contents by the logical structure we've settled on for their location in the API. The demonstrate uses the `cuspatial.` version of every API, none are accessed using their full python package address.

At the bottom I'm working on some examples of performing `contains` and `within`, DE-9IM operations that can be performed easily with `point-in-polygon`. Otherwise the document is complete.

Depends on #685 and #680

This contributes to or closes #599 by providing an example use case of all python APIs.

Authors:
  - H. Thomson Comer (https://github.com/thomcom)

Approvers:
  - Mark Harris (https://github.com/harrism)
  - Michael Wang (https://github.com/isVoid)

URL: #666
Repository owner moved this from Review to Done in cuSpatial Sep 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc Documentation Python Related to Python code
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants