-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Documentation to mention pyproject.toml and build requirements #9796
Conversation
cd14f13
to
3fc2112
Compare
I will be documenting how pip builds projects (which is where pyproject.toml comes into play) as part of #9475. @benjaoming Would it be fine if I close this out? I intend to rewrite this whole section of pip's documentation, as part of a WIP documentation change I have locally -- that's part of the broader #9475 effort. |
That's fine, good luck with the rewrite 👍 |
It does worry me why a simple PR like this isn't getting reviewed and merged. But I have no idea who to address that to. |
@@ -1225,3 +1215,6 @@ Examples | |||
|
|||
.. [1] This is true with the exception that pip v7.0 and v7.0.1 required quotes | |||
around specifiers containing environment markers in requirement files. | |||
|
|||
|
|||
.. _PEP_518: https://github.com/django-money/django-money/issues/595 |
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.
Some kind of copy-paste error here - should have been https://www.python.org/dev/peps/pep-0518/
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.
Duly noted! The original reference can be updated to be:
:pep:`518`
Which is much easier to maintain, and avoid errors like this. :)
Understandably so! I can elaborate on my line of reasoning here, in case that helps ease the worry. :) I did review the changes in this PR when I wrote that comment (albeit a long time after it was filed, and only because it has merge conflicts and I was cleaning up PRs-with-merge-conflicts). In this case, the conflicts have been caused by the documentation rewrite moving stuff around and rewriting some of these things. As it turns out, right now I have a decently big WIP change locally, that touches the same sections as this, with fairly similar changes that I've made independently -- it's consolidating https://pip.pypa.io/en/stable/cli/pip/#build-system-interface, https://pip.pypa.io/en/stable/cli/pip_wheel/#build-system-interface, https://pip.pypa.io/en/stable/cli/pip_install/#build-system-interface and https://pip.pypa.io/en/stable/cli/pip_install/#controlling-setup-requires into a single document/section about pip's build system. :) Now, I figured there are two options:
The latter is clearly less work for everyone involved IMO -- it skips two steps, including the one with uncertainty! -- to end up in a very similar situation. And given that I know that I'll have availability to pick this up, I figured it would be the right thing to do here. :) |
To further comment on this (as @pradyunsg noted, it had been mostly neglected since April) the reason is basically that there are very few pip maintainers (three who are relatively active at the moment, and I'm being generous by including myself in that as I do little more than reviews and design discussions at the moment), and we're all pretty busy with what I'd view as higher priority issues (like it or not, documentation is often neglected when there's work to do fixing bugs or dealing with changes in the wider ecosystem). I could offer some comments on the PR (for example, I'm not sure I think we should be linking to the "Awesome pyproject" site, I'm not at all sure I agree with the stance it takes and I don't think it's the place of pip's documentation to promote My personal workflow is to get notifications from the issue tracker, skim them and if they are actionable, do something. That does prioritise high-activity issues and trivial ones (that can just be dealt with immediately), and de-prioritises issues that need more effort but don't catch my interest on the initial notification. And while that's not necessarily an ideal result, it doesn't actually do a bad job of allowing me to manage the time I have. I don't think that necessarily helps address your concern that "simple PRs" aren't getting dealt with more quickly. But maybe it gives you some insight into why it happens. And please understand that even though this PR won't get merged as-is, we're still very grateful to you for the contribution. It focused attention on this particular point in the docs, gave us some good suggestions on how to re-word it, and fed into the larger documentation update work. So there's no doubt in my mind that pip's documentation will end up better as a result of your input, and that's the main point IMO. |
Thanks for elaborating - I hope that maintainers are not feeling overwhelmed and we can help each other out for benefit of project and community combined. I fully agree that changes to documentation now need to go into the extensive rewrite that @pradyunsg is working on. It seems from both your comments that the resource issues isn't necessarily about maintainership (since you keep up and look for actionable stuff) but more about reviewers that do work to ensure quality of PRs? There's one thing that still remains from this PR to be figured out though - @pfmoore wrote:
From the PR:
Zooming out again to a general level: This would of course be a great thing to discuss with core maintainers that have a heavy-weighing concern. But perhaps reviewers could help feed the discussions so they turn into actionable conclusions before core maintainers have spent time on reviewing and discussing them. |
I wasn't talking about the use of |
I'd like us to set aside the discussion on pyproject.toml and how folks feel about the use of it for tool configuration. A closed documentation PR related to build requirements isn't the best place to discuss something like that. :) |
Fixes #6345 (or at least gets into fixing some of the issue)
Has there been any documentation written about pip and
pyproject.toml
elsewhere? Poetry has a nice overview of how it uses it: https://python-poetry.org/docs/pyproject/