GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — Move the "quick reference" to a dedicated page by sirosen · Pull Request #1838 · python/devguide Conversation
Contributor
A new page at The content is left almost entirely untouched, but the introductory text Intentionally, as described in #1837, the page is placed in Getting closes #1837
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsA new page at `Getting Started > Quick Reference` is added to contain the (moved) content which was in the Quick Reference section of the index document for the site. The content is left almost entirely untouched, but the introductory text is slightly altered to de-emphasize use of the doc for new contributors. Intentionally, as described in python#1837, the page is placed in Getting Started but after the setup guide.
|
There was an error while loading. Please reload this page.
Documentation build overview
7 files changed ·
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
|
||
| PCbuild\build.bat -e -d | ||
|
|
||
| See also :ref:`more detailed instructions <compiling>`, |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
All of the above steps should have been completed by the time they reach this page, so we don't quite need them.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I think all the "see also" items could go later in this document. Perhaps in a "Dive deeper" section.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
|
||
| .\python.bat -m test -j3 | ||
|
|
||
| 5. Create a new branch where your work for the issue will go, for example:: |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This section is duplicated by our other "Quick guide".
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Steps 5-7 could be their own section or their own page. Keep 1-4 as build from source and run tests.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
@sirosen Thanks for following up on the issue that you filed. I think you have some good points. The devguide has evolved quite a bit over the past decade and simplifying the index page makes good sense.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
|
||
| PCbuild\build.bat -e -d | ||
|
|
||
| See also :ref:`more detailed instructions <compiling>`, |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I think all the "see also" items could go later in this document. Perhaps in a "Dive deeper" section.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
|
||
| .\python.bat -m test -j3 | ||
|
|
||
| 5. Create a new branch where your work for the issue will go, for example:: |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Steps 5-7 could be their own section or their own page. Keep 1-4 as build from source and run tests.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Hugo van Kemenade <[email protected]>
The idea of making this section not be first is somewhat at odds with the fact that it needs to link to the first page under Getting Started. It would work to move it to the end, or to the beginning. The beginning seems to be the "least surprise" choice for doc readers and contributors.
Rather than trying to flatten the quick reference into a list (which is too compact!), reflow the doc with each list entry as a section or subsection. The steps are kept very similar to their prior content, but each now ends with a link to more detailed documentation, presented in a slightly more formulaic manner. Links out to GitHub are called out especially to ensure it's clear that they are not parts of the devguide.
Instead of a duplicate guide, we can now link to the canonical quick reference doc.
In the index, ensure that anyone going to the old quick-reference documentation will find a short explanatory note and a link to the new, rehomed quick-reference.
|
I've just pushed a few changes that attempt to address all of the outstanding review comments.
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| git clone https://github.com/<your_username>/cpython | ||
| cd cpython | ||
|
|
||
| We recommend also setting up ``pre-commit``:: |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
@encukou, are you happy to do this now that we've hash-pinned all the third party hooks?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
What's the policy on updating those hash-pins?
(FWIW, you don't need to make me happy. Just Seth ;)
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
None yet.
I'd like to automate with either:
https://pre-commit.ci to auto-update them weekly, monthly or quarterly (my pick is quarterly). This can also autofix formatting in PRs, often a tedious thing to ask contributors to do (we can also configure to disable that, my preference is to leave enabled).
Dependabot: we're already using this for bumping GitHub Actions and pip dependencies. Interval can be daily, weekly, monthly, quarterly, semiannually, yearly, or a custom cron. It won't autofix PRs. We can also configure cooldowns.
And we can manually update when we need a new feature or bugfix.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I take it that there was some discussion about ensuring these are pinned for safety. 😁
I use pre-commit.ci for this in most of my projects, and the autofixing is quite nice.
If the autofixing isn't desirable, I'd tend towards Dependabot, since the infrastructure is provided by GitHub. (I think this is nicer in having fewer providers and putting less load on a smaller platform.)
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
@encukou, are you happy to do this now
No, this doesn't spark joy here. It don't want to recommend this setup. But I won't block it, if it's not mandatory.
From pre-commit.ci problem statement:
Developers spend a fair chunk of time during their development flow on fixing relatively trivial problems in their code.
I see this differently. Developers spend a fair chunk of time looking at code while their fingers are engaged.
Auto-fixing style issues often gives code the superficial appearance of quality -- it looks like someone spent time polishing it, but without the deeper benefits.
If we want to avoid the tedium, let us simply tolerate the occasional lack of trailing comma or over-long line.
That said, I agree that there are automatic checks that are useful -- unused import, ReST single-backquotes, or security scans, but they seem to be in the minority -- and I don't think they're worth installing locally before you first build CPython.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I have similar feelings as @encukou about autofix (though I do have it enabled on CI in other projects. In general, I would have CI run the pre-commit run. Locally, I think it should be optional, not recommended (a subtle difference).
Folks, I think this is the only item that needs a decision after cleanup of a few commands where there is consensus. Let's try to converge so that we can merge. Thanks!
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Perhaps I've missed something, but it seems that the original page didn't mention pre-commit, and this is an addition. Since the goal of this PR is to move content, and this point is becoming difficult, shouldn't we let the status quo win and not add pre-commit now?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Yes, this was something I added, in the course of walking through the original and cross-checking it against the full guide.
I hadn't expected it to be contentious, as it's documented as "recommended" in the more complete docs. I would be okay with changing that to "optional" here.
That said, I prefer dropping it. Doing so makes the guide shorter, and this is meant to be a "quick reference". I'll plan to do that when I come back to apply (final? 🤞 ) changes, probably in a few hours time.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Let's drop it. We can always add it in a future PR.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
| `repository <https://github.com/python/blurb>`__. | ||
|
|
||
| For more information on writing news entries, | ||
| see :ref:`"Updating NEWS and What's New in Python" <news-entry>`. |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This should be higher, we don't want unnecessary news entries (it explains when you should(n't) add one).
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Perhaps move this to line 124. Then, start a new paragraph for blurb-it.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I'd like to keep a link to the detailed reference at the end of this subsection if we can manage it. Keeping the ordering of the content consistent section to section makes the doc more navigable.
(If we can't maintain this ordering, that's okay, but I want to try.)
I can definitely edit the perhaps-too-pithy "many changes deserve a NEWS entry" up above.
Here's what's written in the linked doc:
Most changes made to the codebase deserve an entry in Misc/NEWS.d, except for the following:
- documentation changes
- test changes
- strictly internal changes with no user-visible effects
- changes that already have a NEWS entry
- reverts that have not yet been included in any formal release (including alpha and beta releases)
If I reproduce this whole list, the quick-reference begins to wander into being a not-so-quick-reference.
Would this update be satisfactory?
-Many changes deserve a NEWS entry which documents what changed. +Most user-visible changes, other than documentation changes, +deserve a NEWS entry which documents what changed.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Concurrent comments!
I'm considering that Carol's suggestion maybe works for what I want, in that we maintain "Short Version, Deep Link, Short Version, Deep Link, ..." alternating structure.
So the possibility with that approach is something like...
Many changes deserve a NEWS entry which documents what changed.
For more information on how and when to write news entries,
see :ref:"Updating NEWS and What's New in Python" <news-entry>.To add a NEWS entry, add a new file in the
Misc/NEWS.d/directory.
The news entry can be created by using
blurb-it <https://blurb-it.herokuapp.com/>__,
or the :pypi:blurbtool and itsblurb addcommand... tip::
You can read more about
blurbin its
repository <https://github.com/python/blurb>__.For more information about how to create news entries, see
:ref:"How to add a NEWS entry" <crossref-I-need-to-add>.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I like this suggestion @sirosen. Thoughts @StanFromIreland?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
That seems good, but we can drop the tip (and move it to the other section if it's not already there), "quick references" should ideally be succinct :-)
Additionally, I'd reword the second paragraph a little, like so:
A news entry can be created locally with the :pypi:`blurb` tool and its ``blurb add`` command or online after a pull request has been opened with blurb-it <https://blurb-it.herokuapp.com/>__.
We've generally discouraged manual creation as it complicates things for new contributors. Users who want to do so can see the instructions in the How to add a news entry section.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Hugo van Kemenade <[email protected]>
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Thanks @sirosen. I appreciate the effort.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
| `repository <https://github.com/python/blurb>`__. | ||
|
|
||
| For more information on writing news entries, | ||
| see :ref:`"Updating NEWS and What's New in Python" <news-entry>`. |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Perhaps move this to line 124. Then, start a new paragraph for blurb-it.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
| `repository <https://github.com/python/blurb>`__. | ||
|
|
||
| For more information on writing news entries, | ||
| see :ref:`"Updating NEWS and What's New in Python" <news-entry>`. |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
That seems good, but we can drop the tip (and move it to the other section if it's not already there), "quick references" should ideally be succinct :-)
Additionally, I'd reword the second paragraph a little, like so:
A news entry can be created locally with the :pypi:`blurb` tool and its ``blurb add`` command or online after a pull request has been opened with blurb-it <https://blurb-it.herokuapp.com/>__.
We've generally discouraged manual creation as it complicates things for new contributors. Users who want to do so can see the instructions in the How to add a news entry section.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Stan Ulbrych <[email protected]>
Co-authored-by: Stan Ulbrych <[email protected]> Co-authored-by: Carol Willing <[email protected]>
83bd17d to
1931332
Compare
|
I've just made what I think are the final necessary changes for this scope of work. There's been a lot of feedback! As a result, it's possible I've missed something somewhere. Just let me know if there's more to do! I intentionally skipped the suggestion to remove the macOS note admonition about |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Shall we also add "Quick reference" to the table at https://devguide.python.org ?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Hugo van Kemenade <[email protected]>
Are you okay with us circling back on that after this PR? I think that table needs some more adjustment beyond this addition. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Shall we also add "Quick reference" to the table at devguide.python.org ?
Are you okay with us circling back on that after this PR? I think that table needs some more adjustment beyond this addition.
Yes, absolutely. Thanks for this PR!
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Hugo van Kemenade <[email protected]>
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Last few comments, in general looking good.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Stan Ulbrych <[email protected]>
This is a copy of the same documentation that now features in the quick reference as well.
|
OK, it looks as if all the outstanding items have been addressed. Any additional items can be handled in follow-up PRs. Thank you @sirosen for this helpful improvement. ☀️ Thanks to all of the reviewers for your constructive feedback and time. I going to merge this now. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
Feature: move the "quick reference" from the devguide root to a dedicated page under Getting Started
There was an error while loading. Please reload this page.