-
-
Notifications
You must be signed in to change notification settings - Fork 7.7k
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: Update page to note installation for ninja library #29083
base: main
Are you sure you want to change the base?
Conversation
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.
Thank you for opening your first PR into Matplotlib!
If you have not heard from us in a week or so, please leave a new comment below and that should bring it to our attention. Most of our reviewers are volunteers and sometimes things fall through the cracks.
You can also join us on gitter for real-time discussion.
For details on testing, writing docs, and our review process, please see the developer guide
We strive to be a welcoming and open project. Please follow our Code of Conduct.
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.
The big thing I'm being nitpicky about is the order of bullets b/c ninja is mandatory and doc build dependencies not so much
doc/devel/development_setup.rst
Outdated
@@ -212,7 +212,7 @@ Additionally, the following non-Python dependencies must also be installed local | |||
|
|||
* :ref:`c++ compiler<compile-dependencies>` | |||
* :ref:`documentation build dependencies <doc-dependencies-external>` | |||
|
|||
* :ref:`ninja <ninja-dependencies>` |
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.
can you make this the first thing in the list since you need ninja before installing c++ -> basically mirroring the order in the dependencies file
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.
@story645 done!
I think my gut reaction is that Ninja is not special enough its own section here. I will acknowledge that it is in a bit of an odd place in that it is really an external (non-python) dependency, but they happen to package it on pypi, which is sometimes the most convenient place for Python users to get it. My current leaning would be to put it in the "Compilers" section (perhaps with a section rename to e.g. "Compilers and external build tools" or similar) as really that is what it is. |
@tacaswell suggested similar, only reason I suggested different section is b/c the compilers section is so rich w/ c++ compiler information. Which maybe:
But also if we're running that away with it, if @jimmyshah doesn't updated in a few days than I may just add a commit to this PR that makes those changes. |
Apologies for the delay here, just catching up on this now. I'm having a little bit of trouble following the conversation:
If @story645 wants to push this through, also totally fine by me. I can try seeing this through as well, whatever works! |
It's the one you linked to, those are the tools for building compiled extensions. And would much prefer that you do it if you're up for it! |
Co-authored-by: hannah <story645@gmail.com>
I implemented the feedback from the conversation above, let me know if I can do anything else. Thank you for guiding me through the PR @story645! |
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.
minor nits to take advantage of sphinx crosslinking, thanks for your patience with this
@@ -210,10 +210,10 @@ Additionally, the following non-Python dependencies must also be installed local | |||
|
|||
.. rst-class:: checklist | |||
|
|||
* :ref:`ninja <ninja-dependencies>` |
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.
* :ref:`ninja <ninja-dependencies>` |
Don't need this anymore since now it's in the compilers section that's linked out to below
@@ -210,10 +210,10 @@ Additionally, the following non-Python dependencies must also be installed local | |||
|
|||
.. rst-class:: checklist | |||
|
|||
* :ref:`ninja <ninja-dependencies>` | |||
* :ref:`c++ compiler<compile-dependencies>` |
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.
* :ref:`c++ compiler<compile-dependencies>` | |
* :ref:`compile-build-dependencies` |
you can just let the section title autofill
as a `pre-built binary <https://github.com/ninja-build/ninja/releases>`_ or from a `package manager <https://github.com/ninja-build/ninja/wiki/Pre-built-Ninja-packages>`_ or bundled with Meson. Ninja may also be installed via ``pip`` if | ||
otherwise not available. | ||
|
||
.. _compile-dependencies: |
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.
.. _compile-dependencies: | |
.. _compile-dependencies: | |
Compilers | |
^^^^^^ |
make it a subsection
Compilers and external build tools | ||
---------------------------------- | ||
|
||
.. _ninja-dependencies: |
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.
.. _ninja-dependencies: |
cross linking doesn't work without a heading
@@ -240,10 +237,17 @@ means that the dependencies must be explicitly installed, either by :ref:`creati | |||
- `NumPy <https://numpy.org>`_ (>= 1.22). Also a runtime dependency. | |||
|
|||
|
|||
.. _compile-dependencies: | |||
Compilers and external build tools |
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.
Compilers and external build tools | |
.. _compile-build-dependencies | |
Compilers and external build tools |
add the cross ref that can be picked up by the bullet
PR summary
At the sprints for PyData NYC, as I was setting up the repo for local development, I ran into an issue with installing
ninja
directly from the dev requirements file. After chatting with @story645, she suggested I update the documentation and make a separate section to make external dependency onninja
more clear.This PR changes the docs page to add a new section for the
ninja
external dependency, and removes it from the Python section. I also addedninja
to the list of external dependencies in the documentation.PR checklist