413 lines
28 KiB
HTML
413 lines
28 KiB
HTML
|
||
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<meta name="color-scheme" content="light dark">
|
||
<title>PEP 581 – Using GitHub Issues for CPython | peps.python.org</title>
|
||
<link rel="shortcut icon" href="../_static/py.png">
|
||
<link rel="canonical" href="https://peps.python.org/pep-0581/">
|
||
<link rel="stylesheet" href="../_static/style.css" type="text/css">
|
||
<link rel="stylesheet" href="../_static/mq.css" type="text/css">
|
||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" media="(prefers-color-scheme: light)" id="pyg-light">
|
||
<link rel="stylesheet" href="../_static/pygments_dark.css" type="text/css" media="(prefers-color-scheme: dark)" id="pyg-dark">
|
||
<link rel="alternate" type="application/rss+xml" title="Latest PEPs" href="https://peps.python.org/peps.rss">
|
||
<meta property="og:title" content='PEP 581 – Using GitHub Issues for CPython | peps.python.org'>
|
||
<meta property="og:description" content="This PEP outlines the rationale for migration from Python’s issue tracker on Roundup to GitHub issues. See PEP 588 for the detailed migration plan.">
|
||
<meta property="og:type" content="website">
|
||
<meta property="og:url" content="https://peps.python.org/pep-0581/">
|
||
<meta property="og:site_name" content="Python Enhancement Proposals (PEPs)">
|
||
<meta property="og:image" content="https://peps.python.org/_static/og-image.png">
|
||
<meta property="og:image:alt" content="Python PEPs">
|
||
<meta property="og:image:width" content="200">
|
||
<meta property="og:image:height" content="200">
|
||
<meta name="description" content="This PEP outlines the rationale for migration from Python’s issue tracker on Roundup to GitHub issues. See PEP 588 for the detailed migration plan.">
|
||
<meta name="theme-color" content="#3776ab">
|
||
</head>
|
||
<body>
|
||
|
||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
|
||
<symbol id="svg-sun-half" viewBox="0 0 24 24" pointer-events="all">
|
||
<title>Following system colour scheme</title>
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"
|
||
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<circle cx="12" cy="12" r="9"></circle>
|
||
<path d="M12 3v18m0-12l4.65-4.65M12 14.3l7.37-7.37M12 19.6l8.85-8.85"></path>
|
||
</svg>
|
||
</symbol>
|
||
<symbol id="svg-moon" viewBox="0 0 24 24" pointer-events="all">
|
||
<title>Selected dark colour scheme</title>
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"
|
||
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||
<path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z"></path>
|
||
</svg>
|
||
</symbol>
|
||
<symbol id="svg-sun" viewBox="0 0 24 24" pointer-events="all">
|
||
<title>Selected light colour scheme</title>
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"
|
||
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<circle cx="12" cy="12" r="5"></circle>
|
||
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||
</svg>
|
||
</symbol>
|
||
</svg>
|
||
<script>
|
||
|
||
document.documentElement.dataset.colour_scheme = localStorage.getItem("colour_scheme") || "auto"
|
||
</script>
|
||
<section id="pep-page-section">
|
||
<header>
|
||
<h1>Python Enhancement Proposals</h1>
|
||
<ul class="breadcrumbs">
|
||
<li><a href="https://www.python.org/" title="The Python Programming Language">Python</a> » </li>
|
||
<li><a href="../pep-0000/">PEP Index</a> » </li>
|
||
<li>PEP 581</li>
|
||
</ul>
|
||
<button id="colour-scheme-cycler" onClick="setColourScheme(nextColourScheme())">
|
||
<svg aria-hidden="true" class="colour-scheme-icon-when-auto"><use href="#svg-sun-half"></use></svg>
|
||
<svg aria-hidden="true" class="colour-scheme-icon-when-dark"><use href="#svg-moon"></use></svg>
|
||
<svg aria-hidden="true" class="colour-scheme-icon-when-light"><use href="#svg-sun"></use></svg>
|
||
<span class="visually-hidden">Toggle light / dark / auto colour theme</span>
|
||
</button>
|
||
</header>
|
||
<article>
|
||
<section id="pep-content">
|
||
<h1 class="page-title">PEP 581 – Using GitHub Issues for CPython</h1>
|
||
<dl class="rfc2822 field-list simple">
|
||
<dt class="field-odd">Author<span class="colon">:</span></dt>
|
||
<dd class="field-odd">Mariatta <mariatta at python.org></dd>
|
||
<dt class="field-even">BDFL-Delegate<span class="colon">:</span></dt>
|
||
<dd class="field-even">Barry Warsaw <barry at python.org></dd>
|
||
<dt class="field-odd">Discussions-To<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><a class="reference external" href="https://discuss.python.org/t/535">Discourse thread</a></dd>
|
||
<dt class="field-even">Status<span class="colon">:</span></dt>
|
||
<dd class="field-even"><abbr title="Accepted and implementation complete, or no longer active">Final</abbr></dd>
|
||
<dt class="field-odd">Type<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><abbr title="Normative PEP describing or proposing a change to a Python community process, workflow or governance">Process</abbr></dd>
|
||
<dt class="field-even">Created<span class="colon">:</span></dt>
|
||
<dd class="field-even">20-Jun-2018</dd>
|
||
<dt class="field-odd">Post-History<span class="colon">:</span></dt>
|
||
<dd class="field-odd">07-Mar-2019</dd>
|
||
<dt class="field-even">Resolution<span class="colon">:</span></dt>
|
||
<dd class="field-even"><a class="reference external" href="https://mail.python.org/pipermail/python-dev/2019-May/157399.html">Python-Dev message</a></dd>
|
||
</dl>
|
||
<hr class="docutils" />
|
||
<section id="contents">
|
||
<details><summary>Table of Contents</summary><ul class="simple">
|
||
<li><a class="reference internal" href="#abstract">Abstract</a></li>
|
||
<li><a class="reference internal" href="#rationale">Rationale</a><ul>
|
||
<li><a class="reference internal" href="#why-github">Why GitHub?</a></li>
|
||
<li><a class="reference internal" href="#issues-with-roundup-bpo">Issues with Roundup / bpo</a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#why-not-gitlab">Why not GitLab?</a></li>
|
||
<li><a class="reference internal" href="#why-not-another-issue-tracker">Why not another issue tracker?</a></li>
|
||
<li><a class="reference internal" href="#why-not-focus-on-improving-roundup-bpo">Why not focus on improving Roundup / bpo?</a></li>
|
||
<li><a class="reference internal" href="#downsides-of-github">Downsides of GitHub</a></li>
|
||
<li><a class="reference internal" href="#further-questions-and-discussions">Further questions and discussions</a></li>
|
||
<li><a class="reference internal" href="#acknowledgements">Acknowledgements</a></li>
|
||
<li><a class="reference internal" href="#references">References</a></li>
|
||
<li><a class="reference internal" href="#copyright">Copyright</a></li>
|
||
</ul>
|
||
</details></section>
|
||
<section id="abstract">
|
||
<h2><a class="toc-backref" href="#abstract" role="doc-backlink">Abstract</a></h2>
|
||
<p>This PEP outlines the rationale for migration from Python’s issue
|
||
tracker on Roundup to GitHub issues. See <a class="pep reference internal" href="../pep-0588/" title="PEP 588 – GitHub Issues Migration Plan">PEP 588</a> for the detailed
|
||
migration plan.</p>
|
||
</section>
|
||
<section id="rationale">
|
||
<h2><a class="toc-backref" href="#rationale" role="doc-backlink">Rationale</a></h2>
|
||
<p>CPython’s development moved to GitHub in February 2017. All other
|
||
projects within the PSF’s organization are hosted on GitHub and are
|
||
using GitHub issues. CPython is still using Roundup as the issue
|
||
tracker on bugs.python.org (bpo) <a class="footnote-reference brackets" href="#id20" id="id1">[1]</a>.</p>
|
||
<section id="why-github">
|
||
<h3><a class="toc-backref" href="#why-github" role="doc-backlink">Why GitHub?</a></h3>
|
||
<p>GitHub has a lot of nice features, readily available out of the box. Some of
|
||
these aren’t readily available on Roundup / bpo.</p>
|
||
<ul class="simple">
|
||
<li>APIs that can be used to build integrations and automations. There are various
|
||
existing integrations and applications available from GitHub Marketplace to
|
||
help with the workflow. New applications are easily installed and enabled.
|
||
In addition, we’ve had great success with building our own GitHub bots, like
|
||
miss-islington <a class="footnote-reference brackets" href="#id21" id="id2">[2]</a>, bedevere <a class="footnote-reference brackets" href="#id22" id="id3">[3]</a>, and the-knights-who-say-ni <a class="footnote-reference brackets" href="#id23" id="id4">[4]</a>.</li>
|
||
<li>Ability to embed/drag and drop screenshots and debug log files into GitHub
|
||
pull requests and issues.</li>
|
||
<li>Administrators and core developers can edit issues, comments, and pull requests.</li>
|
||
<li>Ability to reply to issue and pull request conversations via email.</li>
|
||
<li>Support for two factor authentication.</li>
|
||
<li>Support for markdown and emoji.</li>
|
||
<li>Preview tab, showing how a comment will be rendered, prior to
|
||
actually posting.</li>
|
||
<li>Support for voting via reactions.</li>
|
||
<li>Support for permalinks <a class="footnote-reference brackets" href="#id24" id="id5">[5]</a>, allowing easy quoting and copying & pasting of
|
||
source code. It is possible to automatically embed code snippet on GitHub
|
||
by pasting a permalink.</li>
|
||
<li>Core developers, volunteers, and the PSF don’t have to maintain the
|
||
issue infrastructure/site, giving us more time and resources to focus on the
|
||
development of Python.</li>
|
||
<li>Ability to automatically close issues when a PR has been merged <a class="footnote-reference brackets" href="#id25" id="id6">[6]</a>.<ul>
|
||
<li>Note that this feature exists in bpo too.</li>
|
||
</ul>
|
||
</li>
|
||
<li>Lower barrier to contribution. With more than 28 million users, an open
|
||
source contributor is more likely to already have an account and be familiar
|
||
with GitHub’s interface, making it easier to start contributing.</li>
|
||
<li>Email notifications containing metadata <a class="footnote-reference brackets" href="#id26" id="id7">[7]</a>, integrated with Gmail, allowing
|
||
systematic filtering of emails. While Roundup emails contain some metadata,
|
||
they’re not as extensive.</li>
|
||
<li>Additional privacy, such as offering the user a choice to hide an
|
||
email address, while still allowing communication with the user
|
||
through @-mentions.</li>
|
||
</ul>
|
||
</section>
|
||
<section id="issues-with-roundup-bpo">
|
||
<h3><a class="toc-backref" href="#issues-with-roundup-bpo" role="doc-backlink">Issues with Roundup / bpo</a></h3>
|
||
<ul>
|
||
<li>Less than five people maintain bpo. Some of them are core developers.</li>
|
||
<li>The upstream Roundup code is in Mercurial. Without any CI available,
|
||
it puts heavy burden on the few existing maintainers in terms of
|
||
reviewing, testing, and applying patches. While there is an unofficial mirror
|
||
of Roundup on GitHub <a class="footnote-reference brackets" href="#id27" id="id8">[8]</a>, Mercurial patches are still the main way to contribute
|
||
to it.<p>There is an open discussion about moving the source code of bpo to
|
||
GitHub <a class="footnote-reference brackets" href="#id28" id="id9">[9]</a>. If the source code of bpo does move to GitHub, it will
|
||
become difficult to update patches from upstream. But as long as it
|
||
is in Mercurial, it is difficult to maintain and onboard new
|
||
contributors.</p>
|
||
</li>
|
||
<li>In its current state, the project is not equipped to accept lots of
|
||
contributions from people who aren’t already familiar with the code
|
||
base.</li>
|
||
<li>The user interface needs an update and redesign. It will require UX/UI research
|
||
to keep it up to date with current web standards, including accessibility.</li>
|
||
<li>Users email addresses were exposed.<ul class="simple">
|
||
<li>Note: Exposing email address to registered and logged in users was a decision
|
||
taken when bpo instance was setup. This behavior has been recently modified
|
||
after <a class="pep reference internal" href="../pep-0581/" title="PEP 581 – Using GitHub Issues for CPython">PEP 581</a>’s acceptance.</li>
|
||
</ul>
|
||
</li>
|
||
<li>REST API is not currently available in bpo. There was an open issue in Roundup
|
||
for adding REST API <a class="footnote-reference brackets" href="#id29" id="id10">[10]</a>. At the time <a class="pep reference internal" href="../pep-0581/" title="PEP 581 – Using GitHub Issues for CPython">PEP 581</a> was proposed, the ticket received
|
||
no activity since 2016. REST API has been integrated in Roundup in February 2019,
|
||
however it is not yet integrated to bpo.</li>
|
||
<li>It sends a number of unnecessary emails and notifications. An example is the nosy email,
|
||
where email notifications are sent whenever someone adds themselves as “nosy”.
|
||
An issue has been filed in upstream Roundup about this since 2012 with
|
||
little traction <a class="footnote-reference brackets" href="#id30" id="id11">[11]</a>. While it can be configured, the request to configure it
|
||
was not addressed/ignored.</li>
|
||
<li>Creating an account has been a hassle. There have been reports of people
|
||
having trouble creating accounts or logging in. Some examples of open tickets:
|
||
“Commas in username causes error in nosy list” <a class="footnote-reference brackets" href="#id31" id="id12">[12]</a>, “An error has occurred ..” <a class="footnote-reference brackets" href="#id32" id="id13">[13]</a>,
|
||
“It is not sending me the confirmation email …” <a class="footnote-reference brackets" href="#id33" id="id14">[14]</a>.</li>
|
||
</ul>
|
||
</section>
|
||
</section>
|
||
<section id="why-not-gitlab">
|
||
<h2><a class="toc-backref" href="#why-not-gitlab" role="doc-backlink">Why not GitLab?</a></h2>
|
||
<p>Had we migrated to GitLab instead of GitHub in 2017, this PEP would have been
|
||
titled “Using GitLab Issues for CPython”.</p>
|
||
</section>
|
||
<section id="why-not-another-issue-tracker">
|
||
<h2><a class="toc-backref" href="#why-not-another-issue-tracker" role="doc-backlink">Why not another issue tracker?</a></h2>
|
||
<p>Using another issue tracker will require yet another learning curve, for having
|
||
to learn and get used to a different interface. We’ll also need to learn and
|
||
figure out how to build the integrations with GitHub.</p>
|
||
<p>By using GitHub issues, where the CPython source code is currently
|
||
hosted and where pull requests are taking place, we’ll be providing
|
||
consistent experience to contributors and maintainers, while not
|
||
having to jump from one interface to another.</p>
|
||
</section>
|
||
<section id="why-not-focus-on-improving-roundup-bpo">
|
||
<h2><a class="toc-backref" href="#why-not-focus-on-improving-roundup-bpo" role="doc-backlink">Why not focus on improving Roundup / bpo?</a></h2>
|
||
<p>GitHub has many features we like that are already available. We still need to
|
||
build out additional integrations and update our bots, but this is something
|
||
we already know how to do.</p>
|
||
<p>In order to really improve Roundup / bpo, it needs to first migrate to GitHub
|
||
and add CI and bots. As I understand it, there is hesitation because upstream
|
||
Roundup is still in Mercurial. Someone more familiar with Roundup / bpo needs
|
||
to champion this effort. (I’m not volunteering, I’m sorry).</p>
|
||
<p>I believe the effort of creating and maintaining GitHub integrations and bots
|
||
is much less than the effort needed to get Roundup up to speed and then to
|
||
continue maintaining it.</p>
|
||
</section>
|
||
<section id="downsides-of-github">
|
||
<h2><a class="toc-backref" href="#downsides-of-github" role="doc-backlink">Downsides of GitHub</a></h2>
|
||
<p>GitHub is not the perfect issue tracker. Several issues we need to be aware of:</p>
|
||
<ul class="simple">
|
||
<li>Fear of uncertainty and vendor lock in. GitHub is proprietary and there is
|
||
risk of vendor lock-in. However, this is an existing problem since CPython’s
|
||
codebase is already on GitHub. This is also not a unique problem to CPython.
|
||
As a precautionary step, CPython’s repository on GitHub has
|
||
been backed up on daily basis since June 2018. <a class="footnote-reference brackets" href="#id34" id="id15">[15]</a></li>
|
||
<li>Bots maintenance costs money, and also takes up volunteer time. We would
|
||
be shifting maintenance burden from Roundup to the bots. At the very least,
|
||
so far we’ve been able to address any bugs/issues related to the bots/GitHub
|
||
APIs rather quickly, in a matter of days, instead of months or years. GitHub
|
||
APIs are extensive, and used not only by CPython’s bots but also by the wider
|
||
Python community. It makes GitHub APIs more approachable compared to
|
||
the maintenance of Roundup/bpo.</li>
|
||
<li>Using GitHub could possibly increase the triaging effort. This was first raised
|
||
as a Zulip topic <a class="footnote-reference brackets" href="#id35" id="id16">[16]</a>, and also brought up during Core Python sprint in
|
||
September 2018 <a class="footnote-reference brackets" href="#id36" id="id17">[17]</a>. A few solutions have been proposed and considered, such as
|
||
creating a special triage team <a class="footnote-reference brackets" href="#id37" id="id18">[18]</a>. After <a class="pep reference internal" href="../pep-0581/" title="PEP 581 – Using GitHub Issues for CPython">PEP 581</a>’s acceptance, GitHub released a
|
||
new triaging role, currently in beta. The PSF has been in touch with GitHub
|
||
to have this enabled for Python organization. This is pending GitHub’s review <a class="footnote-reference brackets" href="#id38" id="id19">[19]</a>.</li>
|
||
<li>Using GitHub could make it easier for people to post disruptive or spammy comments.
|
||
It is true that there has been incidents where core developers have to moderate
|
||
and lock disruptive discussions on GitHub. Thankfully, GitHub interface makes
|
||
it easy for core developers to moderate discussions. In addition, incidents
|
||
can be escalated to GitHub.</li>
|
||
<li>Manually editing issue templates can be cumbersome and error-prone. However,
|
||
for most people, creating issues on GitHub will be a much better experience
|
||
than creating issue on bpo. The numerous fields and textbox to choose from
|
||
can be confusing and intimidating to a newcomer, and it is not possible
|
||
to “edit” a message. On GitHub, issue creator can preview their submission,
|
||
and edit their mistake after posting.</li>
|
||
<li>bpo uses a number of fields to specify several metadata, and these might not
|
||
be easily transferable to GitHub. The intended way to handle custom metadata
|
||
on GitHub is by using labels. The details of which labels to create will be
|
||
further discussed in <a class="pep reference internal" href="../pep-0588/" title="PEP 588 – GitHub Issues Migration Plan">PEP 588</a>.</li>
|
||
</ul>
|
||
</section>
|
||
<section id="further-questions-and-discussions">
|
||
<h2><a class="toc-backref" href="#further-questions-and-discussions" role="doc-backlink">Further questions and discussions</a></h2>
|
||
<p>You can post questions on Discourse under the
|
||
<a class="reference external" href="https://discuss.python.org/c/core-workflow">Core-Workflow</a> category.</p>
|
||
</section>
|
||
<section id="acknowledgements">
|
||
<h2><a class="toc-backref" href="#acknowledgements" role="doc-backlink">Acknowledgements</a></h2>
|
||
<p>Thanks to Guido van Rossum, Brett Cannon, and Alyssa Coghlan, who were consulted
|
||
in the early stage and research of this PEP. Their feedback, concerns, input,
|
||
and ideas have been valuable.</p>
|
||
</section>
|
||
<section id="references">
|
||
<h2><a class="toc-backref" href="#references" role="doc-backlink">References</a></h2>
|
||
<aside class="footnote-list brackets">
|
||
<aside class="footnote brackets" id="id20" role="doc-footnote">
|
||
<dt class="label" id="id20">[<a href="#id1">1</a>]</dt>
|
||
<dd>bugs.python.org
|
||
(<a class="reference external" href="https://bugs.python.org/">https://bugs.python.org/</a>)</aside>
|
||
<aside class="footnote brackets" id="id21" role="doc-footnote">
|
||
<dt class="label" id="id21">[<a href="#id2">2</a>]</dt>
|
||
<dd>miss-islington
|
||
(<a class="reference external" href="https://github.com/python/miss-islington">https://github.com/python/miss-islington</a>)</aside>
|
||
<aside class="footnote brackets" id="id22" role="doc-footnote">
|
||
<dt class="label" id="id22">[<a href="#id3">3</a>]</dt>
|
||
<dd>bedevere
|
||
(<a class="reference external" href="https://github.com/python/bedevere">https://github.com/python/bedevere</a>)</aside>
|
||
<aside class="footnote brackets" id="id23" role="doc-footnote">
|
||
<dt class="label" id="id23">[<a href="#id4">4</a>]</dt>
|
||
<dd>the-knights-who-say-ni
|
||
(<a class="reference external" href="https://github.com/python/the-knights-who-say-ni">https://github.com/python/the-knights-who-say-ni</a>)</aside>
|
||
<aside class="footnote brackets" id="id24" role="doc-footnote">
|
||
<dt class="label" id="id24">[<a href="#id5">5</a>]</dt>
|
||
<dd>Getting permanent links to files
|
||
(<a class="reference external" href="https://help.github.com/articles/getting-permanent-links-to-files/">https://help.github.com/articles/getting-permanent-links-to-files/</a>)</aside>
|
||
<aside class="footnote brackets" id="id25" role="doc-footnote">
|
||
<dt class="label" id="id25">[<a href="#id6">6</a>]</dt>
|
||
<dd>Closing issues using keywords
|
||
(<a class="reference external" href="https://help.github.com/articles/closing-issues-using-keywords/">https://help.github.com/articles/closing-issues-using-keywords/</a>)</aside>
|
||
<aside class="footnote brackets" id="id26" role="doc-footnote">
|
||
<dt class="label" id="id26">[<a href="#id7">7</a>]</dt>
|
||
<dd>About GitHub email notifications
|
||
(<a class="reference external" href="https://help.github.com/articles/about-email-notifications/">https://help.github.com/articles/about-email-notifications/</a>)</aside>
|
||
<aside class="footnote brackets" id="id27" role="doc-footnote">
|
||
<dt class="label" id="id27">[<a href="#id8">8</a>]</dt>
|
||
<dd>Unofficial GitHub mirror of Roundup
|
||
(<a class="reference external" href="https://github.com/roundup-tracker/roundup">https://github.com/roundup-tracker/roundup</a>)</aside>
|
||
<aside class="footnote brackets" id="id28" role="doc-footnote">
|
||
<dt class="label" id="id28">[<a href="#id9">9</a>]</dt>
|
||
<dd>Consider whether or not to migrate bugs.python.org source code
|
||
to GitHub repo
|
||
(<a class="reference external" href="https://github.com/python/bugs.python.org/issues/2">https://github.com/python/bugs.python.org/issues/2</a>)</aside>
|
||
<aside class="footnote brackets" id="id29" role="doc-footnote">
|
||
<dt class="label" id="id29">[<a href="#id10">10</a>]</dt>
|
||
<dd>Roundup issue 2550734: Expose roundup via a RESTful interface
|
||
(<a class="reference external" href="http://issues.roundup-tracker.org/issue2550734">http://issues.roundup-tracker.org/issue2550734</a>)</aside>
|
||
<aside class="footnote brackets" id="id30" role="doc-footnote">
|
||
<dt class="label" id="id30">[<a href="#id11">11</a>]</dt>
|
||
<dd>Roundup issue 2550742: Do not send email by default when adding
|
||
or removing oneself from the Nosy list
|
||
(<a class="reference external" href="http://issues.roundup-tracker.org/issue2550742">http://issues.roundup-tracker.org/issue2550742</a>)</aside>
|
||
<aside class="footnote brackets" id="id31" role="doc-footnote">
|
||
<dt class="label" id="id31">[<a href="#id12">12</a>]</dt>
|
||
<dd>Commas in username causes error
|
||
(<a class="reference external" href="https://github.com/python/bugs.python.org/issues/26">https://github.com/python/bugs.python.org/issues/26</a>)</aside>
|
||
<aside class="footnote brackets" id="id32" role="doc-footnote">
|
||
<dt class="label" id="id32">[<a href="#id13">13</a>]</dt>
|
||
<dd>It is not sending me the confirmation email
|
||
(<a class="reference external" href="https://github.com/python/bugs.python.org/issues/27">https://github.com/python/bugs.python.org/issues/27</a>)</aside>
|
||
<aside class="footnote brackets" id="id33" role="doc-footnote">
|
||
<dt class="label" id="id33">[<a href="#id14">14</a>]</dt>
|
||
<dd>An error has occurred
|
||
(<a class="reference external" href="https://github.com/python/bugs.python.org/issues/26">https://github.com/python/bugs.python.org/issues/26</a>)</aside>
|
||
<aside class="footnote brackets" id="id34" role="doc-footnote">
|
||
<dt class="label" id="id34">[<a href="#id15">15</a>]</dt>
|
||
<dd>Backup GitHub information
|
||
(<a class="reference external" href="https://github.com/python/core-workflow/issues/20#issuecomment-396709762">https://github.com/python/core-workflow/issues/20#issuecomment-396709762</a>)</aside>
|
||
<aside class="footnote brackets" id="id35" role="doc-footnote">
|
||
<dt class="label" id="id35">[<a href="#id16">16</a>]</dt>
|
||
<dd>s/n ratio – Python – Zulip
|
||
(<a class="reference external" href="https://python.zulipchat.com/#narrow/stream/130206-pep581/topic/s.2Fn.20ratio">https://python.zulipchat.com/#narrow/stream/130206-pep581/topic/s.2Fn.20ratio</a>)</aside>
|
||
<aside class="footnote brackets" id="id36" role="doc-footnote">
|
||
<dt class="label" id="id36">[<a href="#id17">17</a>]</dt>
|
||
<dd>PEP 581 discussion at Python Core Sprint 2018
|
||
(<a class="reference external" href="https://mariatta.ca/core-sprint-2018-part-2.html">https://mariatta.ca/core-sprint-2018-part-2.html</a>)</aside>
|
||
<aside class="footnote brackets" id="id37" role="doc-footnote">
|
||
<dt class="label" id="id37">[<a href="#id18">18</a>]</dt>
|
||
<dd>Proposal: Create Bug Triage team on GitHub
|
||
(<a class="reference external" href="https://discuss.python.org/t/proposal-create-bug-triage-team-on-github/992">https://discuss.python.org/t/proposal-create-bug-triage-team-on-github/992</a>)</aside>
|
||
<aside class="footnote brackets" id="id38" role="doc-footnote">
|
||
<dt class="label" id="id38">[<a href="#id19">19</a>]</dt>
|
||
<dd>Request to enable triage role on GitHub
|
||
(<a class="reference external" href="https://discuss.python.org/t/proposal-create-bug-triage-team-on-github/992/16">https://discuss.python.org/t/proposal-create-bug-triage-team-on-github/992/16</a>)</aside>
|
||
</aside>
|
||
</section>
|
||
<section id="copyright">
|
||
<h2><a class="toc-backref" href="#copyright" role="doc-backlink">Copyright</a></h2>
|
||
<p>This document has been placed in the public domain.</p>
|
||
</section>
|
||
</section>
|
||
<hr class="docutils" />
|
||
<p>Source: <a class="reference external" href="https://github.com/python/peps/blob/main/peps/pep-0581.rst">https://github.com/python/peps/blob/main/peps/pep-0581.rst</a></p>
|
||
<p>Last modified: <a class="reference external" href="https://github.com/python/peps/commits/main/peps/pep-0581.rst">2024-06-02 04:57:49 GMT</a></p>
|
||
|
||
</article>
|
||
<nav id="pep-sidebar">
|
||
<h2>Contents</h2>
|
||
<ul>
|
||
<li><a class="reference internal" href="#abstract">Abstract</a></li>
|
||
<li><a class="reference internal" href="#rationale">Rationale</a><ul>
|
||
<li><a class="reference internal" href="#why-github">Why GitHub?</a></li>
|
||
<li><a class="reference internal" href="#issues-with-roundup-bpo">Issues with Roundup / bpo</a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#why-not-gitlab">Why not GitLab?</a></li>
|
||
<li><a class="reference internal" href="#why-not-another-issue-tracker">Why not another issue tracker?</a></li>
|
||
<li><a class="reference internal" href="#why-not-focus-on-improving-roundup-bpo">Why not focus on improving Roundup / bpo?</a></li>
|
||
<li><a class="reference internal" href="#downsides-of-github">Downsides of GitHub</a></li>
|
||
<li><a class="reference internal" href="#further-questions-and-discussions">Further questions and discussions</a></li>
|
||
<li><a class="reference internal" href="#acknowledgements">Acknowledgements</a></li>
|
||
<li><a class="reference internal" href="#references">References</a></li>
|
||
<li><a class="reference internal" href="#copyright">Copyright</a></li>
|
||
</ul>
|
||
|
||
<br>
|
||
<a id="source" href="https://github.com/python/peps/blob/main/peps/pep-0581.rst">Page Source (GitHub)</a>
|
||
</nav>
|
||
</section>
|
||
<script src="../_static/colour_scheme.js"></script>
|
||
<script src="../_static/wrap_tables.js"></script>
|
||
<script src="../_static/sticky_banner.js"></script>
|
||
</body>
|
||
</html> |