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

Document using Github issues as the issue tracker #814

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Conversation

ambv
Copy link
Contributor

@ambv ambv commented Feb 18, 2022

This change should be landed once issues are migrated from BPO to Github issues. Some information here is based on psf/gh-migration#13 and PEP 588.

The bulk is in tracker.rst and triaging.rst. Since they must make sense in their entirety, I temporarily deleted the old versions of those files and created new ones so that they can be reviewed without confusing diffs.

Used for PRs that haven't been reviewed by anyone yet.

awaiting core review
Used for PRs that have at least one core developer listed in the
Copy link
Member

@JelleZijlstra JelleZijlstra Feb 18, 2022

Choose a reason for hiding this comment

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

Not sure this is right. I see this label being autoapplied either when:

  • A non-core dev has reviewed the PR (even if they requested changes)
  • Or when the PR is authored by a core dev

Copy link
Member

@Mariatta Mariatta Feb 18, 2022

Choose a reason for hiding this comment

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

I see this label being autoapplied either when:

A non-core dev has reviewed the PR (even if they requested changes)
Or when the PR is authored by a core dev

I confirm that this is how bedevere automatically applies the awaiting core review label.

The PR author made requested changes, and they are waiting for review.

awaiting merge
A triager or core developer issued an approving review. The PR
Copy link
Member

@JelleZijlstra JelleZijlstra Feb 18, 2022

Choose a reason for hiding this comment

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

Triager review doesn't trigger this label

Copy link
Member

@JelleZijlstra JelleZijlstra Feb 18, 2022

Choose a reason for hiding this comment

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

Suggested change
A triager or core developer issued an approving review. The PR
A core developer issued an approving review. The PR

Copy link
Member

@Mariatta Mariatta Feb 18, 2022

Choose a reason for hiding this comment

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

The sentence sounds weird. Perhaps it can just say:
"The PR has been approved by a core developer and is ready to merge"

Copy link
Contributor Author

@ambv ambv Feb 18, 2022

Choose a reason for hiding this comment

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

I tried to avoid passive voice. All in vain!

@@ -304,8 +304,8 @@ Full Table of Contents
documenting
silencewarnings
fixingissues
tracker
triaging
tracker2
Copy link
Member

@Mariatta Mariatta Feb 18, 2022

Choose a reason for hiding this comment

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

Just curious of the renaming from tracker to tracker2. Is this because we're keeping a backup of the old tracker document? Does 2 means like version 2 or something?

Copy link
Member

@JelleZijlstra JelleZijlstra Feb 18, 2022

Choose a reason for hiding this comment

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

I think @ambv did that so it's easier to review the new document as a whole, because it's nearly a full rewrite. Unfortunately, GitHub in the review pane shows a diff between tracker and tracker2 anyway.

Copy link
Contributor Author

@ambv ambv Feb 18, 2022

Choose a reason for hiding this comment

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

Yes, @JelleZijlstra is right. Git itself is trying to be too smart here but fortunately I foresaw this and the deletion is a separate commit. So if you only look at 699f8f1, it reads easier.



.. _devrole:

Gaining the "Developer" Role on the Issue Tracker
=================================================
Gaining the "Triager" Role on the Issue Tracker
Copy link
Member

@Mariatta Mariatta Feb 18, 2022

Choose a reason for hiding this comment

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

I think we can remove this whole section completely. I believe this was specific to the role on b.p.o.

For becoming a member of the Python Triage team on GitHub, it was already covered in a different page: https://devguide.python.org/triaging/#becoming-a-member-of-the-python-triage-team

Copy link
Member

@ezio-melotti ezio-melotti left a comment

I left a few comments but haven't fully reviewed the triaging2 page, since it shows up as a whole new file and it's hard to tell what changed from the original page. It might be better to just edit the original pages instead of creating new files.

I think it would be better to divide the FAQ/docs in 2-3 sections:

  • the migration (what has been transferred, how bpo things map to GitHub, etc.)
  • GitHub issues in general (general guidelines and tips about using GitHub issues)
  • CPython-specific guidelines (labels, templates, workflows, actions, etc.)

Currently the FAQs are a mix of the first two, but it would be better to separate them. For example, the "Where is the 'nosy list'?" explains how to subscribe to issues. This is useful for bpo users, but also for new users, except that they wouldn't know what the "nosy list" is and might have a hard time finding out that answer.

With two separate sections you could have "How do I subscribe/follow an issue?" FAQ in the "Using GitHub" section and then a "Where is the 'nosy list'?" FAQ in the "GitHub for BPO users" section that links to it.

Some CPython-specific guidelines are already covered in the triaging and tracker pages instead, so they don't necessarily have to be in the FAQ (even though there could be FAQs linking to the relevant sections, or some sections could be converted into FAQ).

@@ -62,8 +62,7 @@ If you see a documentation issue that you would like to tackle, you can:
By following the steps in the :ref:`Quick Guide to Pull Requests <pullrequest-quickguide>`,
you will learn the workflow for documentation pull requests.

.. _issue tracker: https://bugs.python.org
.. _documentation issues: https://bugs.python.org/issue?%40search_text=&ignore=file%3Acontent&title=&%40columns=title&id=&%40columns=id&stage=&creation=&creator=&activity=&%40columns=activity&%40sort=activity&actor=&nosy=&type=&components=4&versions=&dependencies=&assignee=&keywords=6&priority=&status=1&%40columns=status&resolution=&nosy_count=&message_count=&%40group=&%40pagesize=100&%40startwith=0&%40sortdir=on&%40queryname=&%40old-queryname=&%40action=search
.. _documentation issues: https://github.com/python/cpython/issues?q=is%3Aissue+is%3Aopen+label%3Adocumentation
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

The label is currently called docs, even though there is a type-documentation for PRs, so we might end up merging them at some point.

Suggested change
.. _documentation issues: https://github.com/python/cpython/issues?q=is%3Aissue+is%3Aopen+label%3Adocumentation
.. _documentation issues: https://github.com/python/cpython/issues?q=is%3Aissue+is%3Aopen+label%3Adocs

will link to the latest current version on the given branch.

You can get a permanent link to a given revision of a given file by
`pressing "y" <https://docs.github.com/en/repositories/working-with-files/using-files/getting-permanent-links-to-files>`_.
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

It might be worth mentioning how to link a section of a file. I personally do this much often than linking whole files.

This is the relevant doc: https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet

@@ -0,0 +1,100 @@
Github issues for BPO users
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

This (and all other occurrences should be spelled GitHub

Suggested change
Github issues for BPO users
GitHub issues for BPO users


Similarly, if you were tagged by somebody else but
decided this issue is not for you, you might click the *🔕 Unsubscribe*
button in the sidebar.
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

This could mention that the nosy list is lost during the migration, but a list of nosy list users is listed at the top of each imported issue.

@@ -0,0 +1,362 @@
.. _triaging:
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

The tracker2.rst page is seen as a rename of tracker.rst, but this is seen as a completely separate page and the diff is not very helpful. Is there any reason for renaming the pages and deleting the originals rather than just editing them?

Copy link
Member

@merwok merwok Feb 21, 2022

Choose a reason for hiding this comment

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

Sadly git does not track renames, but it tries to guess when computing diffs. See comment above by ambv, there’s a commit with only the new file added that’s easier to read.

to worry about those when reporting issues as a Python user.

You will automatically receive an update each time an action is taken on
the bug, unless you changed your Github notification settings.
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

Suggested change
the bug, unless you changed your Github notification settings.
the issue, unless you changed your Github notification settings.

* **Tests**: something is wrong with CPython's suite of regression tests;
* **Discuss**: you'd like to learn more about Python, discuss ideas for
possible changes to future Python versions, track core development
discussions, or join a specific special-interest group.
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

Are these already in place?


Choosing certain components, such as `Documentation`, may cause the issue to
be auto-assigned, i.e. the issue tracker may automatically fill in the
`Assignees`_ field after you add the label.
Copy link
Member

@ezio-melotti ezio-melotti Feb 19, 2022

Choose a reason for hiding this comment

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

GitHub doesn't do this, so we should either fix the issue or remove the paragraph.

The whole section still seems modeled after BPO and partially overlapping with the gh-labels page -- are you planning to make other changes?

stale
Used for PRs that include changes which are no longer relevant or when the
author hasn't responded to feedback in a long period of time. This label
helps core developers quickly identify PRs that are candidates for closure
or require a ping to the author.

Choose a reason for hiding this comment

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

I think stale is just simply no activity, not awaiting changes. No activity might include waiting for an initial review (or a wontfix, as the case may be).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

7 participants