summaryrefslogtreecommitdiff
path: root/guide
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-06-24 14:04:57 +0200
committerMichał Górny <mgorny@gentoo.org>2022-06-24 14:04:57 +0200
commit570ba8ed5f65ce61ecba499ba85f57f9cec56140 (patch)
treeb168066c33341e9ae9c4e87d1b636cd72022956f /guide
parentRemove stray .orig file (diff)
downloadpython-570ba8ed5f65ce61ecba499ba85f57f9cec56140.tar.gz
python-570ba8ed5f65ce61ecba499ba85f57f9cec56140.tar.bz2
python-570ba8ed5f65ce61ecba499ba85f57f9cec56140.zip
Update Guide to 4eceed0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'guide')
-rw-r--r--guide/_sources/package-maintenance.rst.txt166
-rw-r--r--guide/_static/basic.css26
-rw-r--r--guide/any.html2
-rw-r--r--guide/basic.html2
-rw-r--r--guide/buildsys.html2
-rw-r--r--guide/concept.html2
-rw-r--r--guide/depend.html2
-rw-r--r--guide/distutils-legacy.html2
-rw-r--r--guide/distutils.html2
-rw-r--r--guide/eclass.html2
-rw-r--r--guide/expert-multi.html2
-rw-r--r--guide/genindex.html2
-rw-r--r--guide/helper.html2
-rw-r--r--guide/index.html4
-rw-r--r--guide/interpreter-maintenance.html2
-rw-r--r--guide/interpreter.html2
-rw-r--r--guide/migration.html2
-rw-r--r--guide/multi.html2
-rw-r--r--guide/package-maintenance.html141
-rw-r--r--guide/porting.html2
-rw-r--r--guide/preface.html2
-rw-r--r--guide/pytest.html2
-rw-r--r--guide/search.html2
-rw-r--r--guide/searchindex.js2
-rw-r--r--guide/single.html2
-rw-r--r--guide/test.html2
26 files changed, 343 insertions, 38 deletions
diff --git a/guide/_sources/package-maintenance.rst.txt b/guide/_sources/package-maintenance.rst.txt
index 512c477..4853fbe 100644
--- a/guide/_sources/package-maintenance.rst.txt
+++ b/guide/_sources/package-maintenance.rst.txt
@@ -79,3 +79,169 @@ e.g.::
This does not apply to test dependencies — they are not strictly
necessary to install a new Portage version.
+
+
+Monitoring new package versions
+===============================
+
+PyPI release feeds
+------------------
+The most efficient way to follow new Python package releases are
+the feeds found on PyPI_. These can be found in the package's
+"Release history" tab, as "RSS feed".
+
+The Gentoo Python project maintains a comprehensive `list of PyPI feeds
+for packages`_ in ``dev-python/`` category (as well as other important
+packages maintained by the Python team) in OPML format.
+
+
+Checking via pip
+----------------
+The `pip list -\-outdated`_ command described in a followup section
+can also be used to verify installed packages against their latest PyPI
+releases. However, this is naturally limited to packages installed
+on the particular system, and does not account for newer versions being
+already available in the Gentoo repository.
+
+
+Repology
+--------
+Repology_ provides a comprehensive service for tracking distribution
+package versions and upstream releases. The easiest ways to find Python
+packages present in the Gentoo repository is to search by their
+maintainer's e-mail or category (e.g. ``dev-python``). When searching
+by name, the majority of Python-specific package use ``python:`` prefix
+in their Repology names.
+
+Unfortunately, Repology is very susceptible to false positives.
+Examples of false positives include other distributions using custom
+version numbers, replacing packages with forks or simply Repology
+confusing different packages with the same name. If you find false
+positives, please use the 'Report' option to request a correction.
+
+Please also note that Repology is unable to handle the less common
+version numbers that do not have a clear mapping to Gentoo version
+syntax (e.g. ``.post`` releases).
+
+
+Routine checks on installed Python packages
+===========================================
+The following actions are recommended to be run periodically on systems
+used to test Python packages. They could be run e.g. via post-sync
+actions.
+
+
+pip check
+---------
+``pip check`` (provided by ``dev-python/pip``) can be used to check
+installed packages for missing dependencies and version conflicts:
+
+.. code-block:: text
+
+ $ python3.10 -m pip check
+ meson-python 0.6.0 requires ninja, which is not installed.
+ cx-freeze 6.11.1 requires patchelf, which is not installed.
+ openapi-spec-validator 0.4.0 has requirement openapi-schema-validator<0.3.0,>=0.2.0, but you have openapi-schema-validator 0.3.0.
+ cx-freeze 6.11.1 has requirement setuptools<=60.10.0,>=59.0.1, but you have setuptools 62.6.0.
+
+This tool checks the installed packages for a single Python
+implementation only, so you need to run it for every installed
+interpreter separately.
+
+In some cases the issues are caused by unnecessary version pins
+or upstream packages listing optional dependencies as obligatory.
+The preferred fix is to fix the package metadata rather than modifying
+the dependencies in ebuild.
+
+.. Warning::
+
+ pip does not support the ``Provides`` metadata, so it can
+ produce false positives about ``certifi`` dependency. Please ignore
+ these:
+
+ .. code-block:: text
+
+ httpcore 0.15.0 requires certifi, which is not installed.
+ httpx 0.23.0 requires certifi, which is not installed.
+ sphobjinv 2.2.2 requires certifi, which is not installed.
+ requests 2.28.0 requires certifi, which is not installed.
+
+
+pip list -\-outdated
+--------------------
+``pip list --outdated`` (provided by ``dev-python/pip``) can be used
+to check whether installed packages are up-to-date. This can help
+checking for pending version bumps, as well as to detect wrong versions
+in installed metadata:
+
+.. code-block:: text
+
+ $ pip3.11 list --outdated
+ Package Version Latest Type
+ ------------------------ ----------------- ------- -----
+ dirty-equals 0 0.4 wheel
+ filetype 1.0.10 1.0.13 wheel
+ mercurial 6.1.3 6.1.4 sdist
+ node-semver 0.8.0 0.8.1 wheel
+ PyQt-builder 1.12.2 1.13.0 wheel
+ PyQt5 5.15.6 5.15.7 wheel
+ PyQt5-sip 12.10.1 12.11.0 sdist
+ PyQtWebEngine 5.15.5 5.15.6 wheel
+ Routes 2.5.1.dev20220522 2.5.1 wheel
+ selenium 3.141.0 4.3.0 wheel
+ sip 6.6.1 6.6.2 wheel
+ sphinxcontrib-websupport 1.2.4.dev20220515 1.2.4 wheel
+ uri-template 0.0.0 1.2.0 wheel
+ watchfiles 0.0.0 0.15.0 wheel
+ watchgod 0.0.dev0 0.8.2 wheel
+
+Again, the action applies to a single Python implementation only
+and needs to be repeated for all of them.
+
+Particularly note the packages with versions containing only zeroes
+in the above list — this is usually a sign that the build system
+does not recognize the version correctly. In some cases, the only
+working solution would be to sed the correct version in.
+
+The additional ``dev`` suffix is usually appended via ``tag_build``
+option in ``setup.cfg``. This causes the version to be considered
+older than the actual release, and therefore the respective options need
+to be stripped.
+
+
+gpy-verify-deps
+---------------
+``gpy-verify-deps`` (provided by ``app-portage/gpyutils``) compares
+the ebuild dependencies of all installed Python packages against their
+metadata. It reports the dependencies that are potentially missing
+in ebuilds, as well as dependencies potentially missing
+``[${PYTHON_USEDEP}]``. For the latter, it assumes that all
+dependencies listed in package metadata are used as Python modules.
+
+.. code-block:: text
+
+ $ gpy-verify-deps
+ [...]
+ =dev-python/tempest-31.0.0: missing dependency: dev-python/oslo-serialization [*]
+ =dev-python/tempest-31.0.0: missing dependency: dev-python/cryptography [*]
+ =dev-python/tempest-31.0.0: missing dependency: dev-python/stestr [*]
+ =dev-python/versioningit-2.0.0: missing dependency: dev-python/tomli [*]
+ =dev-python/versioningit-2.0.0: missing dependency: dev-python/importlib_metadata [python3.8 python3.9]
+ =dev-python/wstools-0.4.10-r1: missing dependency: dev-python/setuptools [*]
+
+The check is done for all installed interpreters. The report indicates
+whether the dependency upstream is unconditional (``[*]``) or specific
+to a subset of Python implementations.
+
+Similarly to ``pip check`` results, every dependency needs to be
+verified. In many cases, upstream metadata lists optional or build-time
+dependencies as runtime dependencies, and it is preferable to strip them
+than to copy the mistakes into the ebuild.
+
+
+.. _PyPI: https://pypi.org/
+
+.. _list of PyPI feeds for packages:
+ https://projects.gentoo.org/python/release-feeds.opml
+
+.. _Repology: https://repology.org/
diff --git a/guide/_static/basic.css b/guide/_static/basic.css
index 9039e02..0889677 100644
--- a/guide/_static/basic.css
+++ b/guide/_static/basic.css
@@ -237,16 +237,6 @@ a.headerlink {
visibility: hidden;
}
-a.brackets:before,
-span.brackets > a:before{
- content: "[";
-}
-
-a.brackets:after,
-span.brackets > a:after {
- content: "]";
-}
-
h1:hover > a.headerlink,
h2:hover > a.headerlink,
h3:hover > a.headerlink,
@@ -334,14 +324,18 @@ aside.sidebar {
p.sidebar-title {
font-weight: bold;
}
+nav.contents,
+aside.topic,
-div.admonition, div.topic, aside.topic, blockquote {
+div.admonition, div.topic, blockquote {
clear: left;
}
/* -- topics ---------------------------------------------------------------- */
+nav.contents,
+aside.topic,
-div.topic, aside.topic {
+div.topic {
border: 1px solid #ccc;
padding: 7px;
margin: 10px 0 10px 0;
@@ -379,16 +373,20 @@ div.body p.centered {
div.sidebar > :last-child,
aside.sidebar > :last-child,
-div.topic > :last-child,
+nav.contents > :last-child,
aside.topic > :last-child,
+
+div.topic > :last-child,
div.admonition > :last-child {
margin-bottom: 0;
}
div.sidebar::after,
aside.sidebar::after,
-div.topic::after,
+nav.contents::after,
aside.topic::after,
+
+div.topic::after,
div.admonition::after,
blockquote::after {
display: block;
diff --git a/guide/any.html b/guide/any.html
index 1330ad6..99505e8 100644
--- a/guide/any.html
+++ b/guide/any.html
@@ -377,7 +377,7 @@ USE conditional blocks inside <code class="docutils literal notranslate"><span c
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/basic.html b/guide/basic.html
index bd31abd..781d0bb 100644
--- a/guide/basic.html
+++ b/guide/basic.html
@@ -339,7 +339,7 @@ or <code class="docutils literal notranslate"><span class="pre">noxfile.py</span
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/buildsys.html b/guide/buildsys.html
index ca0b5dd..416b001 100644
--- a/guide/buildsys.html
+++ b/guide/buildsys.html
@@ -731,7 +731,7 @@ build-time <code class="docutils literal notranslate"><span class="pre">${PYTHON
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/concept.html b/guide/concept.html
index 9e2c713..c824c59 100644
--- a/guide/concept.html
+++ b/guide/concept.html
@@ -286,7 +286,7 @@ of being retired.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/depend.html b/guide/depend.html
index b723e87..980ece5 100644
--- a/guide/depend.html
+++ b/guide/depend.html
@@ -298,7 +298,7 @@ dependencies conditional to CPython:</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/distutils-legacy.html b/guide/distutils-legacy.html
index ed2188c..3ffda4f 100644
--- a/guide/distutils-legacy.html
+++ b/guide/distutils-legacy.html
@@ -408,7 +408,7 @@ has broken it for most of the consumers.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/distutils.html b/guide/distutils.html
index 6850053..8086858 100644
--- a/guide/distutils.html
+++ b/guide/distutils.html
@@ -1539,7 +1539,7 @@ python_install<span class="o">()</span> <span class="o">{</span>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/eclass.html b/guide/eclass.html
index d304fd7..b0ef5d1 100644
--- a/guide/eclass.html
+++ b/guide/eclass.html
@@ -249,7 +249,7 @@ For single-impl packages, <code class="docutils literal notranslate"><span class
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/expert-multi.html b/guide/expert-multi.html
index 841f654..7b81717 100644
--- a/guide/expert-multi.html
+++ b/guide/expert-multi.html
@@ -628,7 +628,7 @@ to <code class="docutils literal notranslate"><span class="pre">python_gen_any_d
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/genindex.html b/guide/genindex.html
index b18110a..b4484b0 100644
--- a/guide/genindex.html
+++ b/guide/genindex.html
@@ -380,7 +380,7 @@
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
</div>
diff --git a/guide/helper.html b/guide/helper.html
index 806f915..f287391 100644
--- a/guide/helper.html
+++ b/guide/helper.html
@@ -342,7 +342,7 @@ helpers</a> instead.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/index.html b/guide/index.html
index 70b4205..fa8882f 100644
--- a/guide/index.html
+++ b/guide/index.html
@@ -196,6 +196,8 @@
<li class="toctree-l2"><a class="reference internal" href="package-maintenance.html#adding-new-python-implementations-to-existing-packages">Adding new Python implementations to existing packages</a></li>
<li class="toctree-l2"><a class="reference internal" href="package-maintenance.html#which-packages-can-be-co-maintained-by-the-python-project">Which packages can be (co-)maintained by the Python project?</a></li>
<li class="toctree-l2"><a class="reference internal" href="package-maintenance.html#porting-packages-to-a-new-eapi">Porting packages to a new EAPI</a></li>
+<li class="toctree-l2"><a class="reference internal" href="package-maintenance.html#monitoring-new-package-versions">Monitoring new package versions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="package-maintenance.html#routine-checks-on-installed-python-packages">Routine checks on installed Python packages</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="interpreter-maintenance.html">Maintenance of Python implementations</a><ul>
@@ -291,7 +293,7 @@
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/interpreter-maintenance.html b/guide/interpreter-maintenance.html
index 9407e9e..9b85d90 100644
--- a/guide/interpreter-maintenance.html
+++ b/guide/interpreter-maintenance.html
@@ -396,7 +396,7 @@ dependencies will be added or vendored into flit_core.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/interpreter.html b/guide/interpreter.html
index b2ce233..40fac04 100644
--- a/guide/interpreter.html
+++ b/guide/interpreter.html
@@ -271,7 +271,7 @@ syntax than native asyncio code.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/migration.html b/guide/migration.html
index 828a085..3385126 100644
--- a/guide/migration.html
+++ b/guide/migration.html
@@ -311,7 +311,7 @@ necessary and tests should work out of the box.</p></li>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/multi.html b/guide/multi.html
index 392e5bb..6ad853c 100644
--- a/guide/multi.html
+++ b/guide/multi.html
@@ -454,7 +454,7 @@ flag, while parts affecting build time (<code class="docutils literal notranslat
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/package-maintenance.html b/guide/package-maintenance.html
index 9fb1d4e..5faab67 100644
--- a/guide/package-maintenance.html
+++ b/guide/package-maintenance.html
@@ -102,6 +102,143 @@ e.g.:</p>
<p>This does not apply to test dependencies — they are not strictly
necessary to install a new Portage version.</p>
</section>
+<section id="monitoring-new-package-versions">
+<h2>Monitoring new package versions<a class="headerlink" href="#monitoring-new-package-versions" title="Permalink to this heading">¶</a></h2>
+<section id="pypi-release-feeds">
+<h3>PyPI release feeds<a class="headerlink" href="#pypi-release-feeds" title="Permalink to this heading">¶</a></h3>
+<p>The most efficient way to follow new Python package releases are
+the feeds found on <a class="reference external" href="https://pypi.org/">PyPI</a>. These can be found in the package’s
+“Release history” tab, as “RSS feed”.</p>
+<p>The Gentoo Python project maintains a comprehensive <a class="reference external" href="https://projects.gentoo.org/python/release-feeds.opml">list of PyPI feeds
+for packages</a> in <code class="docutils literal notranslate"><span class="pre">dev-python/</span></code> category (as well as other important
+packages maintained by the Python team) in OPML format.</p>
+</section>
+<section id="checking-via-pip">
+<h3>Checking via pip<a class="headerlink" href="#checking-via-pip" title="Permalink to this heading">¶</a></h3>
+<p>The <a class="reference internal" href="#pip-list-outdated">pip list --outdated</a> command described in a followup section
+can also be used to verify installed packages against their latest PyPI
+releases. However, this is naturally limited to packages installed
+on the particular system, and does not account for newer versions being
+already available in the Gentoo repository.</p>
+</section>
+<section id="repology">
+<h3>Repology<a class="headerlink" href="#repology" title="Permalink to this heading">¶</a></h3>
+<p><a class="reference external" href="https://repology.org/">Repology</a> provides a comprehensive service for tracking distribution
+package versions and upstream releases. The easiest ways to find Python
+packages present in the Gentoo repository is to search by their
+maintainer’s e-mail or category (e.g. <code class="docutils literal notranslate"><span class="pre">dev-python</span></code>). When searching
+by name, the majority of Python-specific package use <code class="docutils literal notranslate"><span class="pre">python:</span></code> prefix
+in their Repology names.</p>
+<p>Unfortunately, Repology is very susceptible to false positives.
+Examples of false positives include other distributions using custom
+version numbers, replacing packages with forks or simply Repology
+confusing different packages with the same name. If you find false
+positives, please use the ‘Report’ option to request a correction.</p>
+<p>Please also note that Repology is unable to handle the less common
+version numbers that do not have a clear mapping to Gentoo version
+syntax (e.g. <code class="docutils literal notranslate"><span class="pre">.post</span></code> releases).</p>
+</section>
+</section>
+<section id="routine-checks-on-installed-python-packages">
+<h2>Routine checks on installed Python packages<a class="headerlink" href="#routine-checks-on-installed-python-packages" title="Permalink to this heading">¶</a></h2>
+<p>The following actions are recommended to be run periodically on systems
+used to test Python packages. They could be run e.g. via post-sync
+actions.</p>
+<section id="pip-check">
+<h3>pip check<a class="headerlink" href="#pip-check" title="Permalink to this heading">¶</a></h3>
+<p><code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">check</span></code> (provided by <code class="docutils literal notranslate"><span class="pre">dev-python/pip</span></code>) can be used to check
+installed packages for missing dependencies and version conflicts:</p>
+<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>$ python3.10 -m pip check
+meson-python 0.6.0 requires ninja, which is not installed.
+cx-freeze 6.11.1 requires patchelf, which is not installed.
+openapi-spec-validator 0.4.0 has requirement openapi-schema-validator&lt;0.3.0,&gt;=0.2.0, but you have openapi-schema-validator 0.3.0.
+cx-freeze 6.11.1 has requirement setuptools&lt;=60.10.0,&gt;=59.0.1, but you have setuptools 62.6.0.
+</pre></div>
+</div>
+<p>This tool checks the installed packages for a single Python
+implementation only, so you need to run it for every installed
+interpreter separately.</p>
+<p>In some cases the issues are caused by unnecessary version pins
+or upstream packages listing optional dependencies as obligatory.
+The preferred fix is to fix the package metadata rather than modifying
+the dependencies in ebuild.</p>
+<div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>pip does not support the <code class="docutils literal notranslate"><span class="pre">Provides</span></code> metadata, so it can
+produce false positives about <code class="docutils literal notranslate"><span class="pre">certifi</span></code> dependency. Please ignore
+these:</p>
+<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>httpcore 0.15.0 requires certifi, which is not installed.
+httpx 0.23.0 requires certifi, which is not installed.
+sphobjinv 2.2.2 requires certifi, which is not installed.
+requests 2.28.0 requires certifi, which is not installed.
+</pre></div>
+</div>
+</div>
+</section>
+<section id="pip-list-outdated">
+<h3>pip list --outdated<a class="headerlink" href="#pip-list-outdated" title="Permalink to this heading">¶</a></h3>
+<p><code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">list</span> <span class="pre">--outdated</span></code> (provided by <code class="docutils literal notranslate"><span class="pre">dev-python/pip</span></code>) can be used
+to check whether installed packages are up-to-date. This can help
+checking for pending version bumps, as well as to detect wrong versions
+in installed metadata:</p>
+<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>$ pip3.11 list --outdated
+Package Version Latest Type
+------------------------ ----------------- ------- -----
+dirty-equals 0 0.4 wheel
+filetype 1.0.10 1.0.13 wheel
+mercurial 6.1.3 6.1.4 sdist
+node-semver 0.8.0 0.8.1 wheel
+PyQt-builder 1.12.2 1.13.0 wheel
+PyQt5 5.15.6 5.15.7 wheel
+PyQt5-sip 12.10.1 12.11.0 sdist
+PyQtWebEngine 5.15.5 5.15.6 wheel
+Routes 2.5.1.dev20220522 2.5.1 wheel
+selenium 3.141.0 4.3.0 wheel
+sip 6.6.1 6.6.2 wheel
+sphinxcontrib-websupport 1.2.4.dev20220515 1.2.4 wheel
+uri-template 0.0.0 1.2.0 wheel
+watchfiles 0.0.0 0.15.0 wheel
+watchgod 0.0.dev0 0.8.2 wheel
+</pre></div>
+</div>
+<p>Again, the action applies to a single Python implementation only
+and needs to be repeated for all of them.</p>
+<p>Particularly note the packages with versions containing only zeroes
+in the above list — this is usually a sign that the build system
+does not recognize the version correctly. In some cases, the only
+working solution would be to sed the correct version in.</p>
+<p>The additional <code class="docutils literal notranslate"><span class="pre">dev</span></code> suffix is usually appended via <code class="docutils literal notranslate"><span class="pre">tag_build</span></code>
+option in <code class="docutils literal notranslate"><span class="pre">setup.cfg</span></code>. This causes the version to be considered
+older than the actual release, and therefore the respective options need
+to be stripped.</p>
+</section>
+<section id="gpy-verify-deps">
+<h3>gpy-verify-deps<a class="headerlink" href="#gpy-verify-deps" title="Permalink to this heading">¶</a></h3>
+<p><code class="docutils literal notranslate"><span class="pre">gpy-verify-deps</span></code> (provided by <code class="docutils literal notranslate"><span class="pre">app-portage/gpyutils</span></code>) compares
+the ebuild dependencies of all installed Python packages against their
+metadata. It reports the dependencies that are potentially missing
+in ebuilds, as well as dependencies potentially missing
+<code class="docutils literal notranslate"><span class="pre">[${PYTHON_USEDEP}]</span></code>. For the latter, it assumes that all
+dependencies listed in package metadata are used as Python modules.</p>
+<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>$ gpy-verify-deps
+[...]
+=dev-python/tempest-31.0.0: missing dependency: dev-python/oslo-serialization [*]
+=dev-python/tempest-31.0.0: missing dependency: dev-python/cryptography [*]
+=dev-python/tempest-31.0.0: missing dependency: dev-python/stestr [*]
+=dev-python/versioningit-2.0.0: missing dependency: dev-python/tomli [*]
+=dev-python/versioningit-2.0.0: missing dependency: dev-python/importlib_metadata [python3.8 python3.9]
+=dev-python/wstools-0.4.10-r1: missing dependency: dev-python/setuptools [*]
+</pre></div>
+</div>
+<p>The check is done for all installed interpreters. The report indicates
+whether the dependency upstream is unconditional (<code class="docutils literal notranslate"><span class="pre">[*]</span></code>) or specific
+to a subset of Python implementations.</p>
+<p>Similarly to <code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">check</span></code> results, every dependency needs to be
+verified. In many cases, upstream metadata lists optional or build-time
+dependencies as runtime dependencies, and it is preferable to strip them
+than to copy the mistakes into the ebuild.</p>
+</section>
+</section>
</section>
@@ -147,6 +284,8 @@ necessary to install a new Portage version.</p>
<li class="toctree-l2"><a class="reference internal" href="#adding-new-python-implementations-to-existing-packages">Adding new Python implementations to existing packages</a></li>
<li class="toctree-l2"><a class="reference internal" href="#which-packages-can-be-co-maintained-by-the-python-project">Which packages can be (co-)maintained by the Python project?</a></li>
<li class="toctree-l2"><a class="reference internal" href="#porting-packages-to-a-new-eapi">Porting packages to a new EAPI</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#monitoring-new-package-versions">Monitoring new package versions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#routine-checks-on-installed-python-packages">Routine checks on installed Python packages</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="interpreter-maintenance.html">Maintenance of Python implementations</a></li>
@@ -187,7 +326,7 @@ necessary to install a new Portage version.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/porting.html b/guide/porting.html
index 3ff19a5..6ce6212 100644
--- a/guide/porting.html
+++ b/guide/porting.html
@@ -421,7 +421,7 @@ are provided for the purpose.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/preface.html b/guide/preface.html
index 18b3e1e..a8dfc2b 100644
--- a/guide/preface.html
+++ b/guide/preface.html
@@ -134,7 +134,7 @@ and improvements are welcome.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/pytest.html b/guide/pytest.html
index 6a29ca2..adfc5eb 100644
--- a/guide/pytest.html
+++ b/guide/pytest.html
@@ -433,7 +433,7 @@ setting ignores <code class="docutils literal notranslate"><span class="pre">Dep
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/search.html b/guide/search.html
index 56e63f2..fc71022 100644
--- a/guide/search.html
+++ b/guide/search.html
@@ -131,7 +131,7 @@
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
</div>
diff --git a/guide/searchindex.js b/guide/searchindex.js
index 36be364..37d971f 100644
--- a/guide/searchindex.js
+++ b/guide/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["any", "basic", "buildsys", "concept", "depend", "distutils", "distutils-legacy", "eclass", "expert-multi", "helper", "index", "interpreter", "interpreter-maintenance", "migration", "multi", "package-maintenance", "porting", "preface", "pytest", "single", "test"], "filenames": ["any.rst", "basic.rst", "buildsys.rst", "concept.rst", "depend.rst", "distutils.rst", "distutils-legacy.rst", "eclass.rst", "expert-multi.rst", "helper.rst", "index.rst", "interpreter.rst", "interpreter-maintenance.rst", "migration.rst", "multi.rst", "package-maintenance.rst", "porting.rst", "preface.rst", "pytest.rst", "single.rst", "test.rst"], "titles": ["python-any-r1 \u2014 build-time dependency", "Common basics", "Integration with build systems written in Python", "Advanced concepts", "Advanced dependencies", "distutils-r1 \u2014 standard Python build systems", "distutils-r1 legacy concepts", "Choosing between Python eclasses", "Expert python-r1 usage", "Common helper functions", "Gentoo Python Guide", "Python interpreters", "Maintenance of Python implementations", "Migration guides", "python-r1 \u2014 multi-impl packages", "Python package maintenance", "Porting tips", "Preface", "pytest recipes", "python-single-r1 \u2014 single-impl packages", "Resolving test suite problems"], "terms": {"The": [0, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20], "eclass": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 17, 18, 19, 20], "enabl": [0, 4, 6, 7, 8, 10, 11, 12, 14, 15, 18], "support": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17, 18, 19, 20], "packag": [0, 4, 8, 9, 10, 11, 13, 17, 18], "need": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "pure": [0, 5, 6, 7, 8, 10, 11, 15], "refer": [0, 1, 5, 9, 11, 13, 14, 17, 19], "5": [0, 2, 5, 7, 8, 9, 11, 12, 14, 16, 18, 19, 20], "defin": [0, 1, 5, 6, 11, 19], "featur": [0, 4, 5, 6, 7, 8, 11, 12, 13, 19, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "pkg_setup": [0, 1, 2, 8, 19], "phase": [0, 1, 3, 6, 7, 8, 9, 10, 13, 14, 15, 19, 20], "It": [0, 1, 3, 4, 5, 6, 9, 11, 12, 13, 14, 16, 18, 19, 20], "normal": [0, 3, 5, 8, 9, 14, 19], "call": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 13, 14, 16, 18, 19, 20], "python_setup": [0, 1, 2, 10, 13, 14, 19], "function": [0, 1, 4, 6, 7, 8, 10, 11, 13, 14, 16, 19, 20], "order": [0, 1, 2, 4, 5, 7, 9, 12, 13, 14, 15, 19], "find": [0, 2, 3, 4, 6, 14, 18, 20], "suitabl": [0, 7, 9, 14, 17], "interpret": [0, 1, 2, 5, 6, 7, 9, 10, 13, 14, 15, 16, 18, 19], "global": [0, 1, 5, 8, 13, 14, 18, 19], "environ": [0, 5, 6, 10, 11, 13, 14, 16, 18, 19], "appropri": [0, 2, 4, 5, 6, 7, 9, 11, 12, 15, 19], "mean": [0, 1, 2, 5, 7, 8, 11, 15, 16, 18, 19, 20], "most": [0, 3, 5, 6, 9, 11, 12, 13, 14, 17, 18, 19, 20], "trivial": [0, 5, 12, 16, 19], "an": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20], "autotool": [0, 5, 6, 10, 16, 19], "compat": [0, 1, 2, 4, 5, 6, 7, 9, 11, 12, 13, 16, 19], "system": [0, 3, 7, 8, 9, 10, 13, 14, 15, 17, 19, 20], "could": [0, 2, 3, 5, 6, 8, 9, 16, 19], "look": [0, 1, 6, 8, 18, 19, 20], "like": [0, 2, 4, 5, 6, 8, 11, 15, 16, 19, 20], "follow": [0, 1, 3, 4, 5, 6, 8, 9, 12, 13, 16, 17, 18, 19, 20], "copyright": [0, 2, 4, 5, 6, 8, 14, 19], "1999": [0, 2, 4, 5, 6, 8, 14, 19], "2020": [0, 2, 4, 5, 6, 8, 13, 14, 19], "gentoo": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20], "author": [0, 2, 4, 5, 6, 8, 9, 10, 12, 14, 19], "distribut": [0, 2, 4, 5, 6, 8, 14, 16, 17, 19, 20], "under": [0, 1, 2, 3, 4, 5, 6, 8, 14, 19], "term": [0, 2, 4, 5, 6, 8, 14, 19], "gnu": [0, 2, 4, 5, 6, 8, 14, 19], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "public": [0, 2, 4, 5, 6, 8, 14, 19], "licens": [0, 2, 4, 5, 6, 8, 10, 14, 19], "v2": [0, 2, 4, 5, 6, 8, 14, 19], "eapi": [0, 2, 4, 5, 6, 8, 10, 14, 19], "7": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 18, 19, 20], "python_compat": [0, 2, 4, 5, 6, 8, 10, 12, 14, 15, 19], "python3_": [0, 1, 2, 4, 5, 6, 8, 12, 19], "6": [0, 1, 2, 4, 5, 6, 8, 11, 12, 14, 16, 18, 19, 20], "8": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 19, 20], "inherit": [0, 1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19], "descript": [0, 2, 4, 5, 6, 8, 14, 19], "A": [0, 1, 2, 4, 5, 6, 7, 8, 10, 11, 15, 18], "repositori": [0, 5, 6, 12], "data": [0, 2, 5, 6, 9, 16, 19, 20], "file": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19], "describ": [0, 5, 6, 8, 9], "media": [0, 2, 8], "player": [0, 4], "capabl": 0, "homepag": [0, 2, 4, 5, 6, 8, 14, 19], "http": [0, 2, 4, 5, 6, 8, 9, 12, 14, 16, 19, 20], "cgit": 0, "freedesktop": 0, "org": [0, 2, 4, 5, 6, 8, 9, 12, 14, 19], "info": [0, 5, 6, 18], "src_uri": [0, 2, 4, 5, 6, 8, 14, 19, 20], "www": [0, 2, 8, 14, 19], "softwar": [0, 1, 4, 8, 12, 14, 15, 16, 20], "pn": [0, 2, 4, 5, 6, 8, 9, 14, 19, 20], "p": [0, 2, 4, 5, 6, 8, 14, 18, 19, 20], "tar": [0, 2, 4, 5, 6, 8, 12, 14, 19, 20], "gz": [0, 2, 4, 5, 6, 8, 14, 19, 20], "bsd": [0, 2, 5, 6, 8, 14, 19], "slot": [0, 2, 4, 5, 6, 8, 11, 14, 19], "0": [0, 2, 4, 5, 6, 8, 10, 12, 14, 16, 18, 19, 20], "keyword": [0, 2, 4, 5, 6, 8, 10, 14, 16, 19], "alpha": [0, 2, 4, 5, 6, 8, 12, 14, 19], "amd64": [0, 2, 4, 5, 6, 8, 12, 14, 19], "arm": [0, 2, 4, 5, 6, 8, 19], "arm64": [0, 2, 4, 5, 6, 8, 14, 19], "hppa": [0, 2, 4, 5, 6, 8, 14, 19], "ia64": [0, 2, 4, 5, 6, 8, 14, 19], "mip": [0, 2, 4, 5, 6, 8, 19], "ppc": [0, 2, 4, 5, 6, 8, 14, 19], "ppc64": [0, 2, 4, 5, 6, 8, 14, 19], "sh": [0, 2, 4, 5, 6, 8, 12, 19], "sparc": [0, 2, 4, 5, 6, 8, 14, 19], "x86": [0, 2, 4, 5, 6, 8, 12, 14, 19], "ius": [0, 2, 4, 5, 8, 14, 19], "rdepend": [0, 1, 2, 4, 5, 6, 8, 13, 14, 19], "virtual": [0, 2, 8, 14], "udev": 0, "208": 0, "bdepend": [0, 1, 2, 5, 6, 8, 12, 14, 18, 19], "python_dep": [0, 2, 4, 5, 8, 10, 14, 19], "pkgconfig": [0, 2, 8, 14], "ebuild": [0, 1, 4, 5, 6, 7, 9, 12, 13, 14, 15, 16, 17, 19, 20], "demonstr": [0, 5, 19], "absolut": [0, 1, 9, 15, 19, 20], "minimum": [0, 15, 19], "work": [0, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20], "code": [0, 1, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 18, 19, 20], "onli": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 16, 18, 19, 20], "three": [0, 1, 3, 9, 13, 16], "highlight": [0, 16, 19], "line": [0, 3, 5, 13, 15, 16, 19, 20], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "specif": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20], "plu": [0, 19], "implicitli": [0, 3, 5, 8, 12, 19], "export": [0, 1, 2, 5, 19], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "other": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 16, 17, 19, 20], "declar": [0, 1, 2, 5, 6, 8, 9, 12, 14, 18, 19], "ensur": [0, 1, 5, 6, 9, 14, 19], "would": [0, 2, 5, 7, 11, 12, 14, 15, 16, 19, 20], "built": [0, 1, 3, 5, 6, 7, 8, 11, 12, 14, 17, 19, 20], "against": [0, 4, 7, 9, 11, 12, 14, 19, 20], "implement": [0, 1, 3, 4, 5, 6, 7, 10, 14, 17, 18, 19, 20], "specifi": [0, 1, 2, 5, 6, 7, 8, 14, 18, 19, 20], "get": [0, 5, 6, 12, 13, 18, 20], "replac": [0, 5, 6, 11, 12, 13, 16], "python_gen_any_dep": [0, 2, 8], "match": [0, 2, 4, 5, 6, 8, 9, 11, 12, 15, 19], "python_check_dep": [0, 2, 8], "accept": [0, 1, 5, 6, 9, 12, 15, 16, 18], "templat": [0, 2, 4, 5, 19], "where": [0, 3, 5, 6, 9, 12, 14, 19, 20], "liter": [0, 4, 19], "python_usedep": [0, 2, 4, 5, 8, 10, 12, 14, 18, 19], "substitut": [0, 4, 19], "requir": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19], "all": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "same": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 20], "least": [0, 5, 8, 15, 20], "one": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 16, 17, 18, 19, 20], "test": [0, 1, 2, 3, 4, 7, 8, 10, 12, 13, 17, 19], "whether": [0, 1, 5, 6, 7, 15, 18, 19, 20], "question": [0, 1, 5, 7, 14, 18, 20], "In": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 14, 16, 18, 19, 20], "particular": [0, 1, 4, 5, 6, 11, 20], "verifi": [0, 1, 5, 6, 8, 13, 20], "branch": [0, 16, 20], "wa": [0, 4, 5, 11, 12, 13, 18, 20], "satisfi": [0, 1, 8, 12], "were": [0, 2, 3, 5, 8, 11, 12, 13, 16], "instal": [0, 1, 3, 4, 7, 8, 10, 11, 12, 13, 15, 16, 18], "current": [0, 5, 6, 11, 12, 13, 15, 18, 20], "For": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 18, 20], "purpos": [0, 6, 9, 12, 14, 16, 19, 20], "variabl": [0, 1, 5, 6, 8, 13, 14, 16, 18, 19], "string": [0, 1, 4, 5, 8, 14, 16, 19], "best": [0, 5, 7, 12, 16, 17, 18], "explain": [0, 1, 6], "exampl": [0, 4, 5, 6, 7, 8, 9, 11, 12, 16, 17, 18, 19, 20], "meson": [0, 4, 5, 7, 10], "manag": [0, 4, 5, 6, 8, 9, 20], "cinnamon": 0, "fork": [0, 11, 12, 20], "from": [0, 2, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20], "nautilu": 0, "develop": [0, 1, 7, 11, 12, 15, 17, 18, 20], "linuxmint": 0, "com": [0, 2, 4, 5, 6, 8, 12, 14, 16, 20], "project": [0, 1, 5, 8, 9, 10, 14, 17, 18], "html": [0, 5, 8], "github": [0, 2, 4, 5, 6, 8, 12, 14, 17, 19, 20], "nemo": 0, "archiv": [0, 2, 4, 10, 19, 20], "pv": [0, 2, 4, 5, 8, 14, 19, 20], "gpl": [0, 2, 4, 8, 14, 19], "2": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 20], "lgpl": [0, 2, 5, 14, 19], "fdl": [0, 19], "1": [0, 2, 3, 4, 5, 6, 8, 9, 12, 18, 19, 20], "dev": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20], "polib": 0, "pygobject": [0, 14], "3": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20], "python_has_vers": [0, 2, 8], "provid": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "its": [0, 1, 2, 3, 5, 6, 7, 8, 11, 12, 15, 16, 18, 20], "both": [0, 1, 3, 5, 6, 7, 8, 12, 13, 16, 17, 18, 19, 20], "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20], "dep": [0, 5, 13, 15, 18], "true": [0, 1, 2, 5, 6, 8, 12, 13, 16, 20], "them": [0, 1, 2, 3, 5, 6, 7, 8, 9, 12, 16, 18, 19, 20], "while": [0, 2, 3, 4, 5, 6, 7, 8, 11, 12, 14, 16, 17, 18, 19, 20], "which": [0, 5, 6, 9, 10, 11, 14, 20], "wrapper": [0, 1, 5, 6, 9, 13, 14, 20], "help": [0, 17, 20], "take": [0, 1, 2, 4, 5, 6, 7, 8, 9, 15, 18, 20], "singl": [0, 1, 4, 6, 9, 10, 14, 16, 18, 20], "option": [0, 1, 3, 4, 6, 8, 10, 13, 15, 18, 19, 20], "class": [0, 1, 5, 16, 18], "flag": [0, 1, 5, 7, 8, 9, 10, 11, 12, 14, 15, 19, 20], "more": [0, 1, 3, 4, 7, 9, 11, 12, 13, 16, 18, 19, 20], "similarli": [0, 1, 5], "has_vers": [0, 12], "root": [0, 5, 6, 13, 19, 20], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20], "b": 0, "d": [0, 2, 3, 8, 9, 14, 18], "r": [0, 2, 5, 9, 20], "idepend": 0, "pdepend": [0, 2, 8, 12], "pass": [0, 6, 8, 9, 10, 12, 13, 16, 18, 20], "assum": [0, 1, 5, 6, 9, 13, 19], "verbos": [0, 20], "print": [0, 3, 8, 14, 18, 20], "check": [0, 5, 6, 9, 12, 13, 16, 17, 20], "perform": [0, 2, 5, 6, 11, 12, 14, 19, 20], "result": [0, 5, 6, 8, 9, 12, 16, 17, 18, 20], "return": [0, 2, 5, 8, 16, 20], "success": 0, "found": [0, 1, 3, 5, 6, 9, 10, 15, 20], "fals": [0, 2, 5, 8, 12, 16], "otherwis": [0, 5, 6, 7, 8, 9], "note": [0, 1, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20], "invoc": [0, 5, 18], "chain": 0, "abov": [0, 1, 6, 8, 12, 13, 15, 19, 20], "also": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 18, 20], "written": [0, 1, 5, 7, 10, 11, 18], "import": [0, 1, 3, 4, 5, 6, 7, 11, 12, 13, 14, 16, 18, 20], "understand": 0, "correctli": [0, 1, 5, 6, 7, 9, 11, 12, 13, 16, 20], "exactli": [0, 7], "furthermor": [0, 2, 5], "combin": [0, 2, 5, 10, 11, 12, 13, 17, 18, 19, 20], "must": [0, 1, 2, 3, 5, 6, 7, 8, 11, 18, 19, 20], "onc": [0, 5, 8, 11, 12], "invalid": 0, "split": [0, 5, 13, 16], "some": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 16, 18, 19, 20], "necessari": [0, 2, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "particularli": [0, 5, 6, 7, 11, 13, 18, 20], "common": [0, 3, 5, 6, 7, 10, 11, 12, 13, 16, 17, 18, 19, 20], "suit": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 18], "case": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 18, 19, 20], "wrap": [0, 5, 6, 9, 13], "programm": [0, 15], "complet": [0, 5, 16, 17], "bash": [0, 5, 7, 8, 9, 19], "scop": 0, "releas": [0, 2, 5, 8, 11, 12, 14, 15, 16], "download": [0, 2, 5, 8, 14], "xz": [0, 4, 12, 14, 19], "s390": [0, 2, 4, 5, 6, 8, 19], "linux": [0, 2, 4, 5, 6, 8, 9, 14, 16, 19, 20], "maco": [0, 4, 5, 6, 8, 19], "x64": [0, 4, 5, 6, 8, 19], "m68k": [0, 4, 5, 6, 8, 19], "mint": 0, "solari": [0, 5, 6, 19], "sparc64": [0, 6], "restrict": [0, 2, 5, 10, 18, 19, 20], "app": [0, 2, 4, 5, 8, 12, 14, 15], "shell": [0, 5, 8, 14], "4": [0, 3, 5, 8, 9, 10, 11, 12, 14, 20], "3_p30": 0, "pexpect": [0, 5], "pytest": [0, 4, 8, 10, 12, 20], "r1_pkg_setup": [0, 2, 19], "anoth": [0, 8, 9, 14, 16, 18, 20], "possibl": [0, 2, 4, 5, 6, 8, 9, 12, 14, 17, 18, 20], "uncondition": [0, 1, 2, 4, 5, 6, 8, 11, 19, 20], "condition": [0, 1, 2, 5, 11, 12, 14, 15, 18, 19], "simplest": [0, 2, 5, 7, 14, 18, 20], "wai": [0, 5, 6, 9, 12, 13, 18, 20], "achiev": [0, 8, 11, 16], "block": [0, 8, 13, 20], "express": [0, 8, 13, 19], "similar": [0, 2, 5, 14, 19, 20], "cmake": [0, 5, 6, 19], "qt": 0, "bind": [0, 2, 5, 8, 14, 19], "telepathi": 0, "bu": 0, "protocol": [0, 2, 19], "dbu": [0, 2], "hardest": 0, "differ": [0, 1, 3, 5, 9, 10, 11, 16, 18, 20], "do": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 15, 17, 18, 19, 20], "error": [0, 2, 5, 9, 13, 16, 18, 20], "prone": 0, "move": [0, 5, 12], "insid": [0, 1, 3, 5, 6, 9, 12, 14, 18, 19], "python3_6": [0, 2, 4, 8, 14], "gnome2": [0, 4, 14], "gobject": 0, "librari": [0, 1, 2, 3, 4, 5, 8, 9, 11, 14, 19], "access": [0, 5, 10, 11, 18], "secret": 0, "servic": [0, 20], "api": [0, 2, 9, 10, 11, 13, 14, 16], "wiki": [0, 4, 8, 9, 14, 17], "gnome": [0, 4, 14], "libsecret": 0, "apach": [0, 2, 4, 5, 8], "introspect": 0, "fail": [0, 1, 2, 5, 8, 9, 11, 12, 16, 18, 20], "bug": [0, 5, 6, 12, 20], "655482": 0, "required_us": [0, 1, 2, 4, 5, 7, 8, 13, 14, 19], "mock": [0, 4, 8, 11, 12, 18, 20], "fi": [0, 2, 5, 8, 12, 14, 19], "host": 0, "variou": [1, 5, 6, 9, 13, 16], "r1": [1, 3, 4, 9, 10, 12, 20], "try": [1, 6, 8, 9, 11, 20], "design": [1, 19], "you": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "probabl": [1, 6, 8, 13, 19], "us": [1, 9, 10, 11, 12, 13, 15, 16, 20], "than": [1, 2, 3, 6, 7, 8, 11, 12, 16, 17, 18, 20], "so": [1, 4, 5, 6, 11, 12, 18, 19, 20], "worthwhil": [1, 20], "shortli": 1, "bit": [1, 12, 17], "well": [1, 5, 7, 8, 11, 13, 15], "non": [1, 6, 7, 9, 12, 14, 16, 18, 20], "obviou": [1, 20], "between": [1, 5, 8, 10, 11, 12, 13, 16], "befor": [1, 4, 8, 9, 10, 12, 14, 16, 20], "thei": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "valid": [1, 5, 8, 16, 20], "valu": [1, 5, 6, 9, 13, 18], "pythonx_i": 1, "cpython": [1, 4, 5, 9, 11, 13], "x": [1, 5, 16, 18, 20], "y": [1, 2, 16], "pypy3": [1, 4, 5, 6, 8, 11, 12, 13, 15, 18], "typic": [1, 14], "ani": [1, 2, 3, 5, 6, 7, 10, 14, 16, 18, 20], "respons": [1, 5], "explicitli": [1, 5, 7, 8, 10, 13, 20], "put": [1, 8], "correct": [1, 5, 6, 7, 9, 10, 18, 19], "meant": [1, 13], "consist": [1, 6, 9, 13, 14, 15], "cover": [1, 5, 6, 13], "time": [1, 3, 4, 5, 6, 9, 10, 11, 12, 13, 16, 17, 18, 20], "runtim": [1, 2, 3, 5, 8, 10, 13, 14], "form": [1, 4, 12, 17], "doe": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 20], "appli": [1, 4, 5, 6, 7, 12, 15, 18, 19, 20], "distutil": [1, 3, 4, 9, 10, 13, 14, 18, 19, 20], "assign": 1, "default": [1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 19, 20], "commonli": [1, 2, 3, 5, 6, 9, 11], "concept": [1, 5, 10], "state": 1, "enforc": [1, 4, 5, 7, 8, 11, 18], "whenev": [1, 5, 9, 14, 15, 18, 19], "run": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 20], "two": [1, 5, 6, 8, 9, 11, 13, 16, 18, 19], "being": [1, 3, 6, 8, 9, 10, 11, 12, 15, 16, 18, 20], "epython": [1, 2, 5, 8, 9, 12, 13, 18, 20], "contain": [1, 3, 4, 5, 6, 7, 12, 13], "s": [1, 2, 4, 5, 6, 7, 8, 9, 12, 13, 14, 16, 18, 19, 20], "basenam": 1, "identifi": 1, "e": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "g": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "python3": [1, 3, 5, 9, 11, 13, 16, 18, 20], "10": [1, 4, 5, 8, 10, 12], "final": [1, 2, 4, 5, 9, 12, 13, 16, 19, 20], "path": [1, 3, 5, 6, 9, 10, 12, 13, 16, 20], "usr": [1, 2, 3, 5, 7, 8, 9, 18, 20], "bin": [1, 2, 5, 7, 8, 9, 12, 19, 20], "full": [1, 2, 4, 5, 13, 20], "should": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "embed": [1, 2, 9, 11], "program": [1, 2, 5, 6, 11, 16, 18], "shebang": [1, 10, 11, 20], "spawn": 1, "dure": [1, 5, 6, 7, 12, 13, 18], "prefer": [1, 5, 7, 8, 11, 12, 14, 15, 18, 20], "rather": [1, 6, 8, 16, 17, 18, 20], "bypass": 1, "virtualenv": [1, 5, 6, 12, 20], "creat": [1, 3, 4, 5, 6, 12, 13, 16], "pep": [1, 3, 6, 7, 10, 12, 16], "517": [1, 3, 6, 7, 10, 12], "mode": [1, 3, 6, 7, 10, 13], "mai": [1, 3, 5, 6, 8, 12, 13, 15, 16, 18, 20], "caus": [1, 4, 5, 8, 9, 13, 18, 20], "failur": [1, 5, 10, 12, 18], "modul": [1, 3, 4, 5, 6, 7, 8, 10, 11, 14, 15, 16, 18, 20], "previou": [1, 5, 12, 13, 16], "version": [1, 2, 3, 5, 6, 7, 8, 10, 12, 13, 15, 16, 17, 18, 20], "just": [1, 5, 6, 11, 13, 20], "resolv": [1, 5, 6, 10, 16, 18], "problem": [1, 3, 4, 5, 6, 8, 10, 12, 16, 17, 18], "pythonn": 1, "tool": [1, 2, 5, 8, 14, 15, 16, 20], "etc": 1, "via": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 19, 20], "exec": [1, 8, 9, 11, 12, 20], "hardcod": [1, 12, 18], "either": [1, 2, 5, 8, 9, 11, 13, 18, 20], "establish": [1, 5, 13, 20], "local": [1, 2, 3, 5, 8, 9, 12, 13, 14, 18, 19, 20], "scope": [1, 5, 8, 13, 18], "multi": [1, 5, 10, 13, 19], "impl": [1, 5, 10, 13], "python_foreach_impl": [1, 2, 8, 14], "sub": [1, 3, 7, 8, 10, 20], "setup": [1, 3, 6, 7, 10, 13, 18, 20], "done": [1, 5, 6, 8, 9, 12, 14, 18, 20], "directli": [1, 5, 6, 7, 9, 11, 13, 16, 18, 20], "section": [1, 5, 6, 7, 12, 16, 20], "focu": [1, 7, 12, 14], "often": [1, 5, 12, 20], "extern": [1, 2, 5, 6, 7, 11, 12], "languag": [1, 2, 5, 11, 15], "usual": [1, 3, 4, 5, 7, 11, 13, 15, 16, 18, 20], "rule": [1, 2, 6, 7, 8, 13, 14, 15], "classifi": [1, 6], "categori": 1, "present": [1, 5, 6], "script": [1, 2, 5, 6, 7, 8, 10, 11, 12, 14, 16, 19], "usabl": [1, 11], "whose": [1, 5], "therefor": [1, 2, 5, 6, 7, 8, 11, 12, 15, 18], "howev": [1, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20], "modern": [1, 4, 5, 6, 12, 18, 20], "base": [1, 5, 7, 8, 10, 12, 14, 15, 19, 20], "entri": [1, 5, 18], "point": [1, 5, 11, 12, 13, 18, 20], "refus": [1, 11], "place": [1, 6, 11, 12], "special": [1, 3, 4, 5, 6, 16, 20], "subclass": 1, "extra": [1, 5, 6, 10], "still": [1, 5, 6, 8, 11, 12, 13, 16, 20], "meaningfulli": 1, "handl": [1, 4, 5, 6, 8, 13, 14], "gracefulli": [1, 4, 8], "subset": [1, 4, 5, 7, 8, 11, 12, 14, 20], "without": [1, 4, 10, 11, 13, 14, 15, 18], "There": [1, 3, 5, 8, 9, 16, 18, 20], "multipl": [1, 3, 4, 5, 7, 10, 14, 17, 18, 20], "approach": [1, 5, 7, 8], "ad": [1, 7, 10, 11, 13, 14, 18], "consid": [1, 2, 3, 6, 7, 8, 12, 14, 16], "light": 1, "enough": [1, 5], "inform": [1, 3, 5, 6, 10, 13, 16, 20], "messag": [1, 5, 20], "pkg_postinst": [1, 5], "util": [1, 2, 4, 5, 7, 8, 9, 12, 15, 18, 19, 20], "optfeatur": 1, "cheap": 1, "rebuild": [1, 6], "includ": [1, 2, 3, 4, 5, 6, 7, 9, 12, 15, 16, 17, 18, 19, 20], "__init__": [1, 3, 5, 9, 18, 20], "py": [1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 20], "As": [1, 3, 5, 6, 7, 8, 11, 13, 15, 16, 18, 19, 20], "thumb": [1, 6, 7, 13, 15], "belong": [1, 20], "care": [1, 2, 5, 7, 9, 15, 20], "addit": [1, 2, 4, 6, 8, 9, 10, 11, 12, 13, 18, 20], "plugin": [1, 3, 5, 6, 8, 10, 20], "setuptools_scm": [1, 10], "document": [1, 2, 7, 8, 10, 11, 14, 17, 20], "former": [1, 5, 7, 8, 13, 16, 20], "runner": [1, 5, 7, 10], "sinc": [1, 2, 3, 5, 6, 7, 11, 12, 13, 15, 16, 18, 20], "sometim": [1, 5, 6, 7, 9, 11, 18, 20], "These": [1, 6, 7, 12, 13, 18, 20], "go": [1, 2, 8, 12, 17, 18], "doc": [1, 2, 5, 8, 19], "respect": [1, 3, 5, 12, 14, 18], "maximum": [1, 5], "coverag": [1, 5, 15, 18], "further": [1, 18], "guid": [1, 3, 5, 16, 17], "linter": 1, "report": [1, 5, 6, 9, 20], "actual": [1, 5, 6, 8, 9, 11, 12, 18, 20], "undesir": [1, 18, 20], "again": [1, 2, 20], "conveni": [1, 4, 5, 6, 7, 18, 20], "add": [1, 2, 5, 6, 8, 12, 15, 19, 20], "sphinx": [1, 3, 6, 7, 8, 10, 12], "copi": [1, 3, 5, 6, 9, 11, 19], "c": [1, 2, 5, 6, 8, 9, 10, 14], "extens": [1, 6, 7, 8, 9, 10, 11, 14, 15, 16], "header": [1, 9], "numpi": [1, 2], "If": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "metadata": [1, 5, 6, 14, 19], "pyproject": [1, 5, 7, 12], "toml": [1, 5, 7, 12], "setuptool": [1, 3, 4, 7, 8, 12, 13, 15, 18], "cfg": [1, 3, 5, 6, 18], "custom": [1, 2, 6, 10, 13, 18], "read": [1, 5], "name": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 16, 20], "uncondit": [1, 2, 5, 10, 13, 14], "upstream": [1, 3, 5, 6, 7, 9, 11, 12, 14, 15, 16, 18, 20], "spuriou": 1, "strip": [1, 3, 5, 11, 18, 20], "ommit": 1, "kei": [1, 5, 16, 18, 19], "kind": [1, 3, 5, 7, 9, 11, 20], "621": 1, "older": [1, 11], "flit": [1, 6, 12, 13], "poetri": [1, 6, 13], "indic": [1, 5, 6, 11, 12, 13, 18, 20], "install_requir": [1, 3, 5, 6], "group": [1, 2, 6, 13, 18], "extras_requir": [1, 5], "setup_requir": [1, 5, 18], "deprec": [1, 3, 10, 11, 13], "tests_requir": [1, 5], "tox": [1, 5, 20], "ini": [1, 5, 18, 20], "noxfil": 1, "python_requir": 1, "besid": [2, 6, 11, 14, 18], "few": [2, 4, 6, 12, 18, 20], "make": [2, 3, 4, 5, 6, 7, 12, 13, 15, 16, 18, 19, 20], "proper": [2, 8], "fairli": [2, 15, 19], "recent": [2, 3, 5, 12, 20], "agnost": 2, "henc": [2, 5, 14], "treat": [2, 18], "arbitrari": [2, 13], "ha": [2, 3, 5, 6, 7, 11, 12, 13, 14, 15, 16, 18, 20], "gain": [2, 18], "quit": [2, 4, 6, 11, 12], "At": [2, 5, 12, 15, 17], "mani": [2, 5, 8, 12, 14, 15, 16, 20], "old": [2, 4, 5, 6, 8, 10, 12, 16, 20], "reason": [2, 4, 5, 6, 11, 18, 20], "suffici": [2, 5, 6, 7, 11, 14], "prior": [2, 3, 5, 6, 8, 13, 16, 20], "happen": [2, 3, 4, 6, 7, 8, 11, 12, 19, 20], "natur": [2, 5, 8], "sort": 2, "latter": [2, 5, 7, 8, 13, 16, 18, 20], "set": [2, 4, 5, 6, 7, 10, 12, 14, 15, 16, 18, 19, 20], "much": [2, 5, 20], "compon": [2, 3, 8, 11, 14, 16], "account": [2, 5, 8, 20], "detail": [2, 5, 7, 9, 11, 13, 16, 20], "choic": [2, 6, 7, 13, 20], "chapter": [2, 8, 9], "along": [2, 5, 6, 7, 11, 13, 19, 20], "toolchain": [2, 8], "func": [2, 8], "commit": [2, 20], "6e5e8a57628095d8d0c8bbb38187afb0f3a42112": 2, "userspac": 2, "xbox": 2, "360": 2, "control": [2, 4, 5, 18], "driver": 2, "xboxdrv": 2, "gitlab": [2, 8], "io": [2, 4, 5, 8, 14, 19], "chewi": 2, "workdir": [2, 5], "lib": [2, 3, 5, 7, 9, 16, 18, 20], "boost": [2, 7], "glib": 2, "sy": [2, 5, 8, 11, 14, 15, 16, 20], "libudev": 2, "libusb": 2, "x11": 2, "libx11": 2, "src_compil": [2, 5, 6, 8, 14], "escon": 2, "cxx": 2, "tc": [2, 9], "getcxx": 2, "getar": 2, "ranlib": 2, "getranlib": 2, "cxxflag": 2, "wall": 2, "linkflag": 2, "ldflag": [2, 5], "src_instal": [2, 5, 8, 9, 14, 19], "dobin": [2, 9], "doman": 2, "dodoc": [2, 5], "new": [2, 5, 6, 9, 10, 11, 13, 16, 18], "readm": [2, 12], "md": 2, "todo": [2, 9, 12], "yourself": [2, 4, 20], "becaus": [2, 5, 6, 15, 18, 20], "cannot": [2, 4, 5, 9, 11, 20], "my_p": 2, "src": [2, 5, 9, 20], "_rc": 2, "rc": 2, "high": [2, 12, 15, 19], "open": [2, 16], "sourc": [2, 3, 10, 12, 14, 17, 20], "schema": 2, "free": [2, 15, 20], "orient": [2, 16], "databas": [2, 4], "mongodb": [2, 4], "fastdl": 2, "sspl": 2, "acct": 2, "user": [2, 3, 5, 6, 7, 8, 11, 12, 15, 18, 19, 20], "arch": [2, 5, 8, 12], "snappi": 2, "cpp": 2, "yaml": [2, 3], "70": 2, "thread": [2, 8, 18, 19, 20], "libpcr": 2, "42": 2, "zstd": 2, "snowbal": 2, "stemmer": 2, "net": [2, 8, 11, 14, 19], "libpcap": 2, "zlib": 2, "11": [2, 5, 10, 12, 20], "pymongo": 2, "cheetah3": 2, "psutil": 2, "pyyaml": 2, "type": [2, 3, 6, 13, 16], "ncurs": [2, 14], "readlin": [2, 5, 8, 14], "admin": [2, 8], "mongo": 2, "src_configur": [2, 5, 8, 9, 13, 14, 19], "scons_opt": 2, "cc": [2, 9], "getcc": [2, 9], "disabl": [2, 5, 8, 10, 12, 14, 19, 20], "warn": [2, 3, 5, 10, 16], "pcre": 2, "core": [2, 5, 20], "src_test": [2, 5, 6, 14], "buildscript": 2, "resmok": 2, "dbpathprefix": 2, "job": [2, 18], "makeopts_job": [2, 18], "die": [2, 3, 5, 8, 9, 14, 18, 20], "nostrip": [2, 8], "prefix": [2, 8, 9, 16, 20], "ed": [2, 9, 15], "everyth": [2, 13], "your": [2, 4, 5, 6, 7, 8, 11, 12, 15, 16, 18, 20], "python2_7": [2, 5, 6, 8, 13, 14, 19], "eutil": 2, "molecular": 2, "dynam": 2, "nmr": 2, "analysi": [2, 19], "relax": [2, 18], "gna": 2, "bz2": [2, 8, 19], "python_required_us": [2, 4, 5, 8, 10, 14, 19], "python_gen_cond_dep": [2, 4, 5, 8, 12, 13, 19], "numdifftool": 2, "matplotlib": [2, 5, 19], "python2": [2, 8, 9, 13, 19], "wxpython": [2, 19], "wx_gtk_ver": [2, 19], "sci": [2, 5, 19], "chemistri": 2, "pymol": 2, "bmrblib": 2, "minfx": 2, "scipi": 2, "molmol": 2, "vmd": 2, "visual": 2, "grace": 2, "opendx": 2, "gfx": 2, "pngcrush": 2, "python_moduleinto": [2, 5, 9, 14], "python_domodul": [2, 5, 9, 12, 14, 19], "make_wrapp": [2, 9], "python_get_sitedir": [2, 3, 8, 9], "part": [2, 3, 4, 5, 8, 9, 12, 13, 14, 15, 18, 20], "That": [2, 16, 20], "fortran_need": 2, "fortran": 2, "fortran_standard": 2, "90": [2, 14], "object": [2, 11, 16, 19], "chemic": 2, "kinet": 2, "thermodynam": 2, "transport": 2, "cantera": 2, "v": [2, 4, 5, 14], "pch": 2, "sundial": 2, "eigen": 2, "libfmt": 2, "cython": [2, 10, 14, 19], "2_pkg_setup": 2, "scons_var": 2, "cc_flag": 2, "cxx_flag": 2, "std": 2, "debug": 2, "getfc": 2, "fortranflag": 2, "optimize_flag": 2, "wno": 2, "inlin": [2, 7, 14], "renamed_shared_librari": 2, "use_pch": 2, "usex": [2, 5, 19], "system_fmt": 2, "system_sundi": 2, "system_eigen": 2, "env_var": 2, "extra_inc_dir": 2, "eigen3": 2, "scons_target": 2, "f90_interfac": 2, "n": [2, 18], "python2_packag": 2, "none": [2, 5, 6, 16], "python3_packag": 2, "python3_cmd": 2, "els": [2, 8, 11, 16], "stage_dir": 2, "libdirnam": 2, "get_libdir": [2, 8], "python_optim": [2, 8, 9], "deal": [2, 7, 8, 10, 15], "sens": 2, "plain": [2, 5, 6, 13], "loop": [2, 5, 18], "autom": 2, "pipelin": [2, 20], "poisson": 2, "boltzmann": 2, "electrostat": 2, "calcul": 2, "poissonboltzmann": 2, "apb": 2, "opal": 2, "openbabel": 2, "zsi": 2, "lang": [2, 8, 11, 12, 19], "swig": [2, 19], "src_prepar": [2, 3, 5, 8, 9, 14, 16, 18], "f": [2, 9], "pyc": [2, 9], "o": [2, 5], "pyo": [2, 9], "delet": [2, 3, 14], "eappli": 2, "patch": [2, 5, 6, 8, 11, 12, 20], "eapply_us": 2, "rm": [2, 3, 5, 9], "rf": 2, "python_copy_sourc": [2, 14], "python_configur": 2, "cat": [2, 5], "build_dir": [2, 3, 9, 14, 20], "build_config": 2, "eof": [2, 5], "eprefix": [2, 5, 8, 9], "max_atom": 2, "10000": 2, "build_pdb2pka": 2, "rebuild_swig": 2, "run_in_build_dir": [2, 8, 14], "python_instal": [2, 3, 14], "cd": [2, 5, 9, 12, 20], "let": [2, 4, 8, 16, 19], "independ": [2, 5, 6, 7, 14, 19], "separ": [2, 5, 6, 7, 8, 11, 14, 18, 20], "presum": 2, "manual": [2, 6, 10, 12], "wider": 2, "target": [2, 5, 8, 9, 11, 12, 15, 19], "rang": [2, 5, 12], "recommend": [2, 5, 7, 12, 13, 14, 16, 18, 19, 20], "gp": [2, 8], "daemon": [2, 8], "usb": [2, 8], "serial": [2, 5, 8], "devic": [2, 8], "map": [2, 5, 6, 8, 18], "client": [2, 8, 9, 11, 14], "gpsd": [2, 8], "mirror": [2, 4, 5, 6, 8, 14, 19, 20], "nongnu": [2, 8], "24": [2, 8, 18, 20], "misc": [2, 8], "pp": [2, 8], "20120407": [2, 8], "myesconsarg": [2, 8], "libdir": [2, 8, 9], "udevdir": [2, 8], "get_udevdir": [2, 8], "chrpath": [2, 8], "gpsd_user": [2, 8], "gpsd_group": [2, 8], "uucp": [2, 8], "manbuild": [2, 8], "use_scon": [2, 8], "sconstruct": [2, 8], "py2": [2, 8, 20], "construct": [2, 4, 8, 19], "pkg_config": 2, "shlinkflag": 2, "destdir": [2, 8, 9], "bundl": [2, 5, 12], "simpl": [2, 5, 7, 13, 14, 17], "impli": [2, 9, 11], "python_req_us": [2, 4, 5, 6, 8, 14, 19], "individu": [2, 5, 11, 18], "applic": [2, 9, 12], "had": 2, "instead": [2, 3, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 20], "no_waf_libdir": 2, "ye": 2, "unit": 2, "framework": [2, 3, 5, 11, 17], "mrzechonek": 2, "tut": 2, "roughli": [2, 9, 12, 13], "ldap": 2, "ldb": 2, "samba": [2, 19], "ftp": [2, 19], "pub": 2, "elibc_freebsd": 2, "libbsd": 2, "popt": 2, "talloc": [2, 19], "tevent": 2, "9": [2, 5, 10, 12, 20], "31": 2, "tdb": 2, "12": [2, 5, 8, 16, 18], "nd": 2, "openldap": 2, "libxslt": 2, "waf_binari": [2, 19], "buildtool": [2, 19], "filesdir": 2, "27": [2, 8], "optional_packag": 2, "myconf": [2, 8], "rpath": 2, "modulesdir": 2, "builtin": 2, "utils_src_configur": [2, 19], "tradition": 3, "python": [3, 6, 17, 18, 20], "organ": 3, "subpackag": [3, 5], "locat": [3, 5], "parent": [3, 9], "directori": [3, 6, 9, 10, 11, 12, 13, 14, 16, 18, 20], "submodul": 3, "repres": [3, 5], "attribut": [3, 10, 16], "session": [3, 20], "addnod": 3, "site": [3, 5, 6, 9, 11, 16, 18, 20], "fine": [3, 5, 12, 16], "start": [3, 5, 6, 11, 12, 15, 16, 20], "problemat": [3, 5, 6, 10, 18], "top": [3, 5, 9, 18], "level": [3, 5, 9, 11, 20], "layout": [3, 6, 13], "wish": [3, 5, 6], "zope": 3, "share": [3, 5], "interfac": [3, 6, 11, 16], "event": [3, 18], "depend": [3, 6, 7, 9, 10, 11, 12, 13, 15, 17], "far": [3, 12, 19], "concern": 3, "entir": [3, 5, 9, 10, 12, 13, 14, 20], "doabl": 3, "real": [3, 18, 20], "we": [3, 4, 6, 8, 11, 12, 14, 15, 17], "freshli": 3, "build": [3, 9, 10, 11, 16, 20], "abl": [3, 15], "tmp": [3, 5, 9, 18, 20], "portag": [3, 8, 12, 14, 15, 18, 20], "python3_8": 3, "traceback": [3, 5, 20], "last": [3, 5], "stdin": 3, "modulenotfounderror": 3, "No": [3, 5], "now": [3, 5, 6, 8, 13, 14, 20], "around": [3, 5, 6, 12, 20], "back": [3, 6, 16], "better": [3, 6, 11, 12, 13, 14], "solut": [3, 5, 16, 20], "unlik": [3, 5, 6, 11, 15], "tradit": 3, "act": 3, "proxi": [3, 14], "strictli": [3, 5, 6, 15, 20], "bound": [3, 11, 16], "permit": [3, 4, 5, 6, 11, 15], "load": [3, 7, 9, 18, 20], "search": [3, 10, 20], "method": [3, 5, 11, 13, 16, 18, 20], "420": 3, "newer": [3, 4, 5, 6, 12, 16], "pkgutil": 3, "standard": [3, 4, 6, 7, 9, 10, 11, 14, 16, 20], "discourag": [3, 6], "earlier": [3, 13], "ignor": [3, 4, 5, 8, 18, 20], "did": [3, 13, 16, 20], "within": [3, 5, 6, 12, 17, 20], "content": [3, 5, 7], "__path__": 3, "__import__": 3, "extend_path": 3, "__name__": 3, "pkg_resourc": [3, 6], "declare_namespac": 3, "altern": [3, 5, 6, 8, 10, 16, 17, 20], "pth": 3, "automat": [3, 4, 5, 6, 10, 12], "inject": [3, 5, 19], "portabl": 3, "topic": [3, 17], "exact": [3, 5, 11, 19], "detect": [3, 5, 9, 20], "recogn": [3, 5, 16], "lack": [3, 9, 20], "action": [3, 5], "distinguish": [3, 5, 13], "veri": [3, 5, 6, 9, 11, 12, 17], "through": [3, 4, 5, 6, 8, 11, 16, 18, 20], "suspici": 3, "less": [3, 20], "ruamel": 3, "miss": [3, 5, 6, 9, 10, 11, 12, 13, 17, 18], "learn": 3, "about": [3, 6, 13], "collis": [3, 5, 20], "namespace_packag": 3, "per": [3, 5], "remov": [3, 4, 5, 6, 11, 12, 13, 14, 15, 18, 20], "tree": [3, 5, 13, 20], "after": [3, 5, 6, 9, 12, 13, 16], "python_compil": 3, "r1_python_compil": [3, 5], "jaraco": [3, 5, 12, 18], "equival": [3, 6, 8, 9, 13], "r1_python_instal": [3, 5], "python_install_al": [3, 5], "r1_python_install_al": [3, 5], "explicit": [3, 4, 5, 6, 19, 20], "rdep": 3, "sed": [3, 5, 8, 14, 18, 20], "i": [3, 5, 6, 7, 11, 12, 14, 16, 18, 20], "r1_src_prepar": [3, 5, 18], "histor": [3, 5, 6, 13, 16], "process": [3, 5, 7, 12, 16, 19], "retir": 3, "major": [4, 5, 6, 11, 12, 20], "avail": [4, 5, 6, 8, 12, 13, 16, 17], "sqlite3": 4, "sqlite": [4, 8], "xdg": 4, "music": 4, "lollypop": 4, "adishatz": 4, "syntax": [4, 10, 11], "lightweight": [4, 5], "password": 4, "backend": [4, 10, 12, 13], "pwman3": 4, "mysql": [4, 14], "postgr": 4, "fulli": [4, 5, 7], "solv": [4, 17], "python_gen_impl_dep": 4, "helper": [4, 5, 7, 10, 14, 19, 20], "2_7": [4, 5], "3_": 4, "travel": 4, "spulec": 4, "freezegun": [4, 18, 20], "pypi": [4, 5, 6, 8, 10, 11, 13], "dateutil": 4, "six": [4, 5, 8], "nose": [4, 5, 20], "distutils_enable_test": [4, 13, 18, 20], "ll": [4, 14], "backport": [4, 6, 10, 12], "zero": 4, "argument": [4, 6, 10, 13, 16, 20], "output": [4, 5, 6, 9, 16, 20], "everi": [4, 5, 6, 8, 12, 14, 16], "escap": [4, 13, 19], "quot": [4, 19], "partial": [4, 5, 9, 10, 13], "python_single_usedep": [4, 5, 13, 19], "cli": [4, 5], "black": 4, "click": 4, "fnmatch": 4, "style": [4, 5, 13, 17, 18, 20], "wildcard": 4, "stdlib": [4, 13, 16], "rememb": [4, 12], "pattern": [4, 12, 13, 19], "prevent": [4, 10, 11, 19, 20], "filenam": [4, 5], "expans": 4, "expand": 4, "zoneinfo": 4, "advantag": [4, 5, 7, 18, 20], "adjust": [4, 9, 11, 16], "switch": [4, 7, 9, 12, 13, 20], "list": [4, 5, 8, 12, 13, 18], "longer": [4, 5, 6, 13], "silent": 4, "updat": [4, 6, 9, 11, 12, 16], "immedi": [4, 5, 19], "becam": [4, 11], "empti": [4, 5], "importlib_metadata": [4, 5, 6], "python3_7": [4, 8], "facilit": [5, 9], "deriv": [5, 6], "notabl": [5, 16], "effici": 5, "oper": [5, 17], "backward": [5, 11, 12, 16], "incompat": [5, 6, 11, 16, 18, 20], "greater": [5, 7], "number": [5, 7, 12, 18], "cost": 5, "flexibl": [5, 7], "wheel": [5, 12, 18], "zip": [5, 6], "stage": [5, 12, 20], "compil": [5, 6, 10, 11, 20], "mere": [5, 7], "imag": [5, 9], "compliant": [5, 7], "invok": [5, 18, 20], "popul": [5, 15], "addition": [5, 9, 11, 14], "pyproject2setuppi": [5, 6, 13], "hack": [5, 6, 7, 13], "reli": [5, 6, 11, 20], "distutils_use_pep517": [5, 13], "legal": 5, "unset": [5, 6], "By": [5, 6, 11], "2022": [5, 13, 18], "xml": [5, 6], "feel": [5, 15], "json": 5, "martinblech": 5, "xmltodict": 5, "mit": [5, 6], "vast": [5, 12], "index": [5, 10], "sdist": [5, 20], "binari": [5, 9, 12], "vc": [10, 20], "mechan": [5, 7, 11], "over": [5, 7, 11, 12, 18, 19, 20], "offici": 5, "instanc": [5, 13], "nonfunct": 5, "append": [5, 14], "uniqu": [5, 14], "suffix": 5, "gh": [5, 20], "request": [5, 8, 10], "distfil": [5, 16, 19], "clearli": [5, 20], "tarbal": [5, 12, 20], "textual": 5, "rich": 5, "implic": 5, "cf": [5, 12], "regener": [5, 12], "anywai": [5, 16], "nevertheless": 5, "even": [5, 8, 9, 11, 18, 20], "pregener": 5, "internet": [5, 10, 18], "nodej": 5, "underli": [5, 6, 7], "txt": [5, 6, 12, 18], "ci": [5, 20], "travi": 5, "yml": 5, "grep": 5, "statement": 5, "indirect": 5, "relev": [5, 6, 13, 17, 18, 20], "unnecessarili": 5, "logic": [5, 6, 12], "long": [5, 11, 12], "quickli": 5, "widest": 5, "avoid": [5, 6, 8, 10, 15, 16, 17, 20], "unpredict": 5, "who": [5, 17], "especi": [5, 7, 18, 20], "distutils_single_impl": [5, 7], "aim": [5, 11, 15, 17], "exist": [5, 10, 11, 12], "rewritten": [5, 19], "layer": [5, 14], "pyroot": 5, "rootpi": 5, "physic": [5, 19], "root_numpi": 5, "pytabl": 5, "termcolor": 5, "determin": [5, 6, 7, 11, 19, 20], "flit_cor": [5, 12], "maintain": [5, 10, 11, 12, 18], "suggest": [5, 8, 13, 17, 18, 20], "tabl": [5, 13, 16, 18], "summar": [5, 16], "use_pep517": 5, "flit_scm": 10, "hatchl": 5, "jupyt": 5, "jupyter_packag": 5, "build_api": 5, "maturin": 5, "see": [5, 9, 16, 18, 20], "below": [5, 8], "pbr": [5, 6], "pdm": [5, 13], "pep517": 5, "sip": [5, 8], "sipbuild": 5, "standalon": [5, 12], "itself": [5, 6, 8, 9, 12, 18], "own": [5, 12, 20], "Their": [5, 6, 9], "fix": [5, 6, 10, 11, 12, 16, 18, 20], "produc": [5, 12], "ident": 5, "artifact": 5, "reduc": 5, "footprint": 5, "isol": 5, "faster": 5, "poetry_cor": 5, "smaller": 5, "40": [5, 12], "incorrect": [5, 6], "intend": [5, 16, 20], "implicit": [5, 14, 20], "fallback": [5, 6], "regular": [5, 7, 20], "pleas": [5, 6, 8, 9, 12, 15, 16, 18, 19, 20], "alwai": [5, 6, 8, 11, 13, 16, 17], "unfortun": [5, 13, 18, 20], "due": [5, 10, 12, 14, 18], "prolong": 5, "larg": [5, 12, 15, 18], "tend": 5, "mistak": 5, "checkout": [5, 12, 20], "abil": [5, 6], "tag": [5, 12, 20], "execut": [5, 6, 7, 9, 11, 12, 13, 14, 20], "143": 5, "_install_setup_requir": 5, "attr": [5, 12], "131": 5, "dist": 5, "dict": [5, 19], "425": 5, "_distribut": 5, "self": [5, 16, 18, 20], "292": 5, "finalize_opt": 5, "717": 5, "ep": 5, "48": 5, "infer_vers": 5, "_get_vers": 5, "config": [5, 9, 12], "148": 5, "parsed_vers": 5, "_do_pars": 5, "110": 5, "rais": 5, "lookuperror": 5, "scm": 5, "unabl": [5, 20], "sure": [5, 18, 20], "re": [5, 8, 15, 20], "intact": 5, "git": [5, 12, 20], "folder": 5, "don": [5, 13], "t": [5, 7, 8, 11, 13, 20], "pip": [5, 12, 20], "proj": 5, "master": [5, 20], "egg": [5, 6, 18], "setuptools_scm_pretend_vers": 5, "static": [5, 8], "write": [5, 6, 7, 12, 17], "hybrid": [5, 10], "expos": [5, 6], "guarante": [5, 6], "taken": [5, 20], "ship": 5, "issu": [5, 6, 13, 16, 18, 20], "forc": [5, 6, 8, 9, 12, 13, 18, 20], "frobnic": 5, "makefil": [5, 14], "jq": 5, "pyx": 5, "unresolv": 5, "regard": 5, "simultan": [5, 11, 17, 20], "link": [5, 7, 9, 16], "editor": 5, "broken": [5, 6, 18, 20], "cryptic": 5, "revers": [5, 7, 12, 15], "miscompil": 5, "panda": 5, "breakag": [5, 20], "dask": [5, 18], "29": 5, "_lib": 5, "hashtabl": 5, "_hashtabl": 5, "tslib": 5, "_tslib": 5, "13": [5, 18, 20], "interv": 5, "init": 5, "30": 5, "convers": [5, 6], "outofboundstimedelta": 5, "localize_pydatetim": 5, "importerror": [5, 6, 10, 11], "38": 5, "x86_64": 5, "undefin": 5, "symbol": 5, "pandas_datetime_to_datetimestruct": 5, "easiest": [5, 19], "workaround": 5, "j1": 5, "origin": [5, 9, 11, 12, 16], "overrid": [5, 9, 14, 20], "extend": [5, 11], "introduc": [5, 11], "src_": 5, "python_": [5, 8], "_all": [5, 8], "compris": 5, "behav": [5, 8], "r1_": 5, "correspond": [5, 12], "python_prepare_al": [5, 18], "each": [5, 6, 7, 11, 14], "foreach": 5, "python_configure_al": 5, "python_compile_al": [5, 8], "python_test_al": 5, "dedic": [5, 6, 14], "chang": [5, 6, 8, 9, 10, 11, 13, 14, 15, 20], "task": [5, 8, 12], "default_src_prepar": 5, "ez_setup": 5, "bootstrap": [5, 6, 10], "end": [5, 6, 7, 9, 12, 14, 18, 20], "dir": [5, 14], "extran": 5, "fixm": 5, "test_pytest_plugin": 5, "test_testcase_no_app": 5, "_": [5, 12, 20], "test_test_util": 5, "pointless": 5, "cov": [5, 18], "addopt": 5, "aiohttp": [5, 18], "r1_python_prepare_al": [5, 18], "duplic": [5, 14, 20], "moment": [5, 12, 13, 15], "modif": 5, "keep": [5, 15, 17], "why": [5, 6, 20], "console_script": [5, 6], "configur": [5, 6, 8, 13, 14, 20], "step": [5, 6, 7, 8, 14], "esetup": [5, 8], "mpi": 5, "distutils_arg": [5, 13], "resourcepath": 5, "compress": 5, "manpag": 5, "distutils_enable_sphinx": [5, 8], "emak": [5, 8, 9], "strongli": [5, 6, 15], "encourag": [5, 15], "testbitvector": 5, "redefin": [5, 18], "too": [5, 12, 20], "collada": 5, "einstalldoc": [5, 8, 14], "docinto": 5, "sample_cod": 5, "docompress": 5, "pf": 5, "main": [5, 9], "manipul": [5, 20], "arrai": 5, "futur": [5, 15], "pillow": 5, "build_ext": [5, 6, 20], "tiff": 5, "webp": 5, "dash": 5, "underscor": [5, 20], "boolean": 5, "disable_tiff": 5, "enable_tiff": 5, "disable_webp": 5, "enable_webp": 5, "modifi": [5, 6, 11, 20], "beforehand": 5, "econf": [5, 19], "paremet": 5, "find_packag": 5, "wrongli": [5, 16, 20], "grab": [5, 13], "attempt": [5, 16, 20], "forbidden": 5, "exclud": 5, "paramet": [5, 8, 16], "properli": [5, 6, 13], "intermedi": 5, "minim": [5, 11, 15], "precis": [5, 8, 9], "catch": 5, "earli": [5, 7, 8, 12], "anywher": 5, "first": [5, 6, 10, 11, 12, 15, 16, 18, 20], "easi": [5, 16, 20], "whitelist": 5, "sanit": [5, 16], "mozilla": 5, "bleach": 5, "webencod": 5, "unittest": [5, 11, 20], "discoveri": [5, 18, 20], "univers": 5, "encod": [5, 16], "detector": 5, "chardet": [5, 8], "cygwin": [5, 6], "hypothesi": [5, 20], "bottom": 5, "venv": [5, 6, 13], "temporari": [5, 6], "frequent": [5, 18], "littl": [5, 6, 18], "skip": [5, 8, 10, 12, 16], "those": [5, 6, 8, 9, 18, 20], "how": [5, 20], "statist": 5, "want": [5, 6, 8], "across": 5, "irrelev": [5, 20], "pep8": 5, "pycodestyl": 5, "flake8": [5, 18], "thin": [5, 6], "alreadi": [5, 9, 12, 14], "close": 5, "pre": 5, "post": [5, 6, 13], "easili": [5, 14, 18, 20], "r1_src_test": 5, "cmd": 5, "cmd2": 5, "colorama": 5, "pyperclip": 5, "wcwidth": 5, "text": [5, 8], "column": 5, "80": 5, "fact": [5, 20], "simpli": [5, 16, 17, 20], "3_6": [5, 14], "3_7": [5, 14], "3_8": 5, "tab": 5, "argpars": 5, "argcomplet": 5, "fish": 5, "tcsh": 5, "rel": [5, 18, 20], "epytest": [5, 6, 8, 12, 18, 20], "network": [5, 6, 18, 20], "marker": [5, 10], "m": [5, 18, 20], "displai": 5, "appeas": 5, "usng": 5, "xvfb": 5, "server": [5, 20], "virtx": 5, "nonfat": 5, "termin": [5, 20], "context": [5, 19], "come": [5, 13, 18], "theme": [5, 6, 8], "hard": [5, 8, 12], "To": [5, 6, 8, 9, 12, 16, 18, 19], "conf": [5, 6], "ext": 5, "distutils_use_setuptool": [5, 13], "color": 5, "stream": 5, "handler": 5, "log": 5, "coloredlog": 5, "xolox": 5, "readthedoc": 5, "en": 5, "latest": 5, "humanfriendli": 5, "expert": [5, 10, 14, 20], "uncommon": 5, "third": [5, 7, 13], "parti": 5, "inflect": 5, "word": 5, "jazzband": 5, "rst": 5, "linker": [5, 9], "alabast": [5, 6], "python_target": [5, 7, 8, 11, 12], "inspect": 5, "omit": [5, 15, 16], "port": [5, 8, 10], "pyseri": 5, "psf": 5, "tri": 5, "been": [5, 6, 8, 11, 12, 13, 14, 16, 18], "assumpt": 5, "consum": [5, 6, 20], "distutils_opt": 5, "alter": [5, 18], "distutils_dep": 5, "dependneci": 5, "r1_src_compil": 5, "r1_src_instal": 5, "primari": [5, 18], "alongsid": [5, 6], "libfoo": 5, "r1_src_configur": 5, "setuptools_rust": 5, "ecosystem": [5, 15, 17], "bump": [5, 12, 15], "lock": 5, "Then": [5, 12], "crate": 5, "cargo_opt": 5, "url": [5, 16], "cargo_crate_uri": 5, "qa_flags_ignor": 5, "posit": 5, "cflag": [5, 9, 20], "cargo_src_unpack": 5, "inflector": 5, "alias": [5, 16], "asn1": 5, "asn1_der": 5, "_rust": 5, "src_unpack": 5, "benefit": [5, 7], "yet": [5, 8, 12, 19], "cyclic": 5, "suppos": [5, 16], "overlap": 5, "machineri": 5, "op": 5, "unless": [5, 6, 8, 15], "merg": 5, "toward": 5, "effect": [5, 8, 11], "pick": [5, 12], "up": [5, 6, 9, 12, 13, 14, 17, 18, 20], "hukkin": 5, "tomli": [5, 12], "pythonhost": 5, "py3": [5, 18], "whl": 5, "unzip": 5, "deliber": 5, "unpack": 5, "gpep517": 5, "python_newscript": [5, 9], "__main__": [5, 20], "exit": [5, 16, 20], "fragment": [5, 16], "emesonarg": 5, "dlint": 5, "meson_src_configur": 5, "meson_src_compil": 5, "meson_src_test": 5, "meson_src_instal": 5, "here": [6, 8, 14, 19], "direct": [6, 14], "convert": [6, 8, 13], "facil": 6, "right": [6, 7], "fit": [6, 20], "profil": [6, 15], "pyproject2toml": 6, "misbehav": 6, "subsequ": 6, "qa": [6, 9, 17], "expect": [6, 18, 20], "sidebar": 6, "bitprophet": 6, "snippet": [6, 16], "except": [6, 7, 9, 11, 12, 16], "pm": 6, "cleanli": [6, 12], "condit": [6, 10, 12, 18, 20], "leav": 6, "never": [6, 11, 13], "clean": [6, 12, 13], "requier": 6, "With": [6, 20], "themselv": [6, 18, 20], "entry_point": [6, 18], "dictionari": [6, 19], "our": [6, 12, 18, 20], "interest": [6, 8, 20], "gui_script": 6, "meaning": 6, "importlib": [6, 11, 20], "fall": [6, 16], "remind": 6, "distutils_strict_entry_point": 6, "trigger": [6, 18, 20], "wrong": [6, 13], "leftov": 6, "resourc": [6, 11, 12], "submit": 6, "suppli": 6, "heavi": 6, "speak": [6, 11], "known": [6, 16, 20], "limit": [6, 12, 15, 17], "address": [6, 12, 16], "definit": 6, "subdirectori": [6, 9], "interspers": 6, "closest": 6, "inplac": 6, "shift": [6, 11], "throughout": 6, "2to3": 6, "distutils_in_source_build": 6, "collect": [6, 18, 20], "pypa": 6, "riscv": [6, 8, 19], "pythonpath": [6, 20], "distutils_install_for_test": [6, 13, 18, 20], "alik": [6, 7, 11, 13], "preserv": [6, 11], "extrem": 6, "home": [6, 12, 13], "went": 6, "awai": [6, 7], "python_test": [6, 8, 9, 12, 18, 20], "total": 7, "rare": [7, 9, 18, 20], "simpler": 7, "complex": [7, 19], "primarili": [7, 11], "involv": [7, 8, 13], "graph": [7, 12], "meet": 7, "potenti": [7, 12, 16, 18], "basi": 7, "occur": [7, 18], "libpython": [7, 16], "aforement": [7, 13, 16], "foo": [7, 16], "wise": 7, "abstract": [7, 14], "scon": [7, 8, 10], "second": [7, 13], "easier": 7, "select": [7, 8, 18, 19], "allow": [7, 20], "repeat": [7, 14], "model": 7, "libboost_python": 7, "python_single_target": [7, 11, 12], "Its": [7, 12], "legaci": [7, 10, 13, 16], "power": 8, "harder": 8, "ninja": 8, "train": 8, "opposit": [8, 11, 13], "investig": 8, "human": 8, "beings": 8, "socks5": 8, "ssl": 8, "certifi": 8, "2017": 8, "17": 8, "idna": 8, "urllib3": [8, 12], "26": 8, "pysock": 8, "cryptographi": 8, "pyopenssl": 8, "14": [8, 20], "httpbin": [8, 18], "hang": 8, "continu": [8, 12, 20], "python_gen_useflag": 8, "out": [8, 9, 10, 11, 12, 13, 14, 15], "toolkit": 8, "translat": 8, "format": [8, 12, 16], "subtitl": 8, "pydiff": 8, "iso": 8, "lxml": 8, "pycountri": 8, "18": 8, "levenshtein": 8, "devel": 8, "gettext": 8, "video": 8, "gaupol": 8, "riverbankcomput": 8, "intro": 8, "sip_api_major_nr": 8, "siplib": 8, "h": [8, 9, 19], "bison": 8, "flex": 8, "prepar": [8, 9, 19], "bindir": 8, "incdir": 8, "python_get_includedir": [8, 9, 13], "echo": 8, "distutils_all_subphase_impl": 8, "python3_5": 8, "bzip2": 8, "epydoc": 8, "eselect": 8, "elibc_glibc": 8, "sandbox": [8, 20], "kernel_linux": 8, "pax": 8, "rsync": 8, "userland_gnu": 8, "coreutil": 8, "sphinx_rtd_them": 8, "practic": [8, 11, 12], "big": 8, "imagin": 8, "anymor": [8, 11], "downgrad": 8, "though": [8, 12], "resembl": [8, 18], "presenc": [8, 18], "activ": [8, 17], "behavior": [8, 11, 16], "goal": [8, 12, 20], "side": [8, 11], "someth": [8, 9, 20], "accord": 8, "integr": [8, 9, 10, 11], "won": 8, "reject": [8, 15, 16], "unsupport": [8, 11], "python_is_python3": [8, 13], "basic": [9, 10, 20], "reus": 9, "four": [9, 13, 19], "python_doex": 9, "python_newex": 9, "python_doscript": [9, 14, 19], "recurs": [9, 15, 18], "python_dohead": 9, "python_scriptinto": 9, "affect": [9, 14], "symlink": 9, "onto": 9, "improv": [9, 11, 17], "cropgtk": 9, "sbin": 9, "pynslcd": 9, "anyth": 9, "land": 9, "my_pn": 9, "doin": 9, "libimag": 9, "env": [9, 12], "python_fix_shebang": 9, "sphinxtrain": 9, "openvpn": 9, "vulnkei": 9, "insinto": 9, "kitti": 9, "speed": 9, "nowadai": [9, 12, 13], "pypy2": [9, 11, 12], "_feedparser_sgmllib": 9, "lib64": 9, "byte_compil": 9, "cmake_src_instal": 9, "entropi": 9, "ocassion": 9, "bad": [9, 16], "seri": 9, "getter": [9, 13, 16], "python_get_scriptdir": 9, "python_get_library_path": [9, 13], "python_get_cflag": 9, "preprocessor": 9, "pkg": 9, "python_get_lib": 9, "python_get_python_config": 9, "offset": 9, "mycmakearg": [9, 13, 19], "dpython_dest": 9, "dpython_execut": 9, "dpython_include_dir": 9, "dpython_librari": 9, "cmake_src_configur": [9, 19], "pyinc": 9, "pylib": 9, "micha\u0142": 10, "g\u00f3rny": 10, "creativ": 10, "intern": 10, "prefac": 10, "choos": [10, 11, 14], "overview": 10, "variant": [10, 11, 16, 18], "snapshot": [10, 20], "parallel": 10, "race": 10, "command": [10, 14, 18], "usag": 10, "rust": 10, "cargo": 10, "variat": 10, "vs": [10, 13], "byte": [10, 16], "queri": [10, 16], "advanc": 10, "cffi": 10, "greenlet": [10, 18], "checklist": 10, "abort": 10, "assert": 10, "recip": 10, "xdist": [10, 12, 20], "autoload": 10, "typeerror": 10, "_make_test_flaki": 10, "got": [10, 13], "unexpect": 10, "rerun": 10, "importpathmismatcherror": 10, "fixtur": [10, 12], "namespac": [10, 18], "disjoint": 10, "waf": [10, 19], "tip": [10, 20], "retroact": 10, "migrat": 10, "mainten": 10, "co": [10, 20], "life": 10, "cycl": 10, "page": [10, 16, 17], "increment": 11, "minor": [11, 20], "plan": 11, "On": 11, "hand": [11, 13], "platform": [11, 16, 20], "linux_distribut": 11, "window": 11, "hous": 11, "rpython": 11, "lot": [11, 15], "good": [11, 17, 18, 20], "gc": 11, "jython": 11, "java": 11, "stand": 11, "alon": 11, "bidirect": 11, "interact": 11, "slow": 11, "pace": 11, "ironpython": 11, "brython": 11, "web": 11, "javascript": 11, "dom": 11, "micropython": 11, "microcontrol": 11, "down": 11, "hardwar": 11, "tauthon": 11, "accompani": 11, "nor": [11, 17], "ideal": [11, 15, 20], "funcsig": 11, "signatur": [11, 16], "afterward": [11, 14, 15], "becom": [11, 12, 16], "later": 11, "lzma": 11, "compet": 11, "amount": [11, 12, 20], "ipaddress": 11, "drop": [11, 16], "box": [11, 13], "hexvers": [11, 20], "0x03030000": 11, "remain": [11, 13], "trolliu": 11, "asyncio": [11, 18, 20], "nativ": 11, "understood": 12, "stabl": [12, 15], "mask": [12, 15], "readi": [12, 15], "stabil": 12, "inconsist": [12, 20], "repeatedli": 12, "ask": [12, 15], "push": 12, "forward": 12, "eventu": 12, "slowli": [12, 15], "discontinu": 12, "next": [12, 15, 18], "nears": 12, "obsolet": [12, 13], "live": 12, "team": [12, 15], "unmask": 12, "announc": 12, "date": [12, 17, 20], "thing": [12, 13, 17, 18], "progress": 12, "decid": [12, 18], "somewher": 12, "aggress": 12, "reach": [12, 15], "clear": 12, "pursu": 12, "kept": 12, "secur": 12, "workflow": 12, "clone": 12, "remot": [12, 20], "fetch": 12, "rebas": 12, "v3": 12, "cherri": 12, "upload": 12, "mkdir": 12, "scp": 12, "precompil": 12, "unusu": 12, "structur": [12, 20], "ex": 12, "technic": 12, "docker": 12, "binpkg": 12, "diff": 12, "relat": [12, 13, 20], "mgorni": 12, "desc": 12, "_python_all_impl": 12, "_python_verify_pattern": 12, "_python_set_impl": 12, "_python_impl_match": 12, "python_pkg_dep": 12, "gpyutil": 12, "circular": 12, "eas": [12, 15], "temporarili": [12, 13], "python3_11": 12, "20": 12, "pwd": 12, "round": 12, "signific": [12, 18], "remaind": 12, "pydant": 12, "epytest_deselect": [12, 18], "test_comparison": 12, "test_close_to_now_": 12, "lenient": 12, "deselect": [12, 18, 20], "unblock": 12, "100": 12, "emerg": 12, "previous": 12, "reinstal": 12, "batch": 12, "focus": 12, "reenabl": [12, 18], "face": [12, 20], "goe": [12, 20], "unbundl": 12, "obligatori": 12, "baselin": 12, "ones": 12, "chosen": 12, "fewest": 12, "vendor": [12, 13], "februari": 13, "gross": 13, "serv": 13, "placehold": 13, "transit": [13, 15], "period": 13, "ban": 13, "python_multi_usedep": 13, "know": [13, 16, 20], "given": 13, "repoman": 13, "pkgcheck": 13, "tell": 13, "chose": 13, "reorder": 13, "desir": [13, 16, 20], "scan": 13, "unmatch": 13, "trial": 13, "stuff": 13, "privat": 13, "python_export": 13, "python_wrapper_setup": 13, "python_gen_usedep": 13, "mydistutilsarg": 13, "renam": [13, 16], "cleanup": 13, "python_gen": 13, "march": 13, "python_get": 13, "python_includedir": 13, "python_libpath": 13, "dpython3_include_dir": 13, "dpython3_librari": 13, "sundri": 13, "stop": [13, 16], "realli": [13, 15, 18, 20], "ugli": 13, "sole": 13, "uppercas": 13, "fourth": 13, "cruft": 13, "short": [13, 18], "made": [13, 14, 16, 19], "evalu": 13, "januari": 13, "safe": 13, "streamlin": 13, "inde": 13, "foundat": 14, "fionet": 14, "psql": 14, "cach": 14, "sourceforg": [14, 19], "replic": 14, "tgz": 14, "libcangji": 14, "cangjian": 14, "i18n": 14, "eautoreconf": [14, 16], "econf_sourc": 14, "la": 14, "multibuild": 14, "unnecessari": [14, 19, 20], "libtool": 14, "buggi": 14, "canva": 14, "widget": 14, "gtk": 14, "cairo": 14, "2d": 14, "draw": 14, "goocanva": 14, "subdir": 14, "am": 14, "gnome2_src_prepar": 14, "gnome2_src_configur": 14, "gnome2_src_instal": 14, "sub_instal": 14, "gi": 14, "_overridesdir": 14, "outsid": [14, 19], "routin": 14, "qemu": 14, "kernel": 14, "machin": 14, "userland": 14, "kvm": 14, "qemu_python_instal": 14, "vmxcap": 14, "qmp": 14, "ga": 14, "eol": 15, "proactiv": 15, "anticip": 15, "soon": 15, "mark": [15, 18, 20], "wide": [15, 20], "revis": 15, "newli": 15, "risk": 15, "break": [15, 16], "feasibl": 15, "manpow": 15, "member": 15, "prematur": 15, "gemato": 15, "carri": 15, "compar": 16, "think": 16, "ve": 16, "hit": 16, "me": 16, "18_p9": 16, "13_p3": 16, "10_p3": 16, "9_p2": 16, "4_p1": 16, "urllib": 16, "pars": 16, "exploit": 16, "verbatim": 16, "worm": 16, "danger": 16, "worst": [16, 20], "unpars": 16, "django": [16, 20], "pr": 16, "14349": 16, "impact": 16, "urlpars": 16, "nurl": 16, "parseresult": 16, "scheme": 16, "netloc": 16, "param": [16, 18], "badurl": 16, "what": 16, "attributeerror": 16, "492": 16, "decor": [16, 20], "async": [16, 18], "def": [16, 18, 20], "yield": 16, "await": 16, "sleep": 16, "callabl": 16, "mostli": [16, 17], "getfullargspec": 16, "p1": 16, "p2": 16, "kp3": 16, "kp4": 16, "kp5": 16, "arg": 16, "kwarg": 16, "argspec": 16, "vararg": 16, "fullargspec": 16, "varkw": 16, "kwonlyarg": 16, "kwonlydefault": 16, "annot": 16, "tupl": 16, "hold": 16, "int": 16, "str": 16, "float": 16, "k6": 16, "k7": 16, "k8": 16, "One": [16, 20], "prototyp": 16, "bar": 16, "pretti": 16, "spec": 16, "stringif": 16, "automak": 16, "16": 16, "exec_prefix": 16, "met": 16, "pkg_config_path": 16, "python_cflag": 16, "python_lib": 16, "man": 16, "autoreconf": 16, "throw": 16, "get_python_inc": 16, "get_path": 16, "platinclud": 16, "get_python_lib": 16, "purelib": 16, "platlib": 16, "platstdlib": 16, "todai": 16, "encodebyt": 16, "decodebyt": 16, "contrari": 16, "ought": 16, "unicod": 16, "version_info": 16, "b64_encodebyt": 16, "b64encod": 16, "b64decod": 16, "insert": 16, "newlin": 16, "length": 16, "until": 16, "emb": 16, "lpython3": 16, "7m": 16, "among": 17, "beyond": 17, "reliabl": [17, 20], "deep": 17, "beginn": 17, "peopl": 17, "suboptim": 17, "improp": 17, "fill": 17, "gap": 17, "welcom": 17, "whole": [18, 20], "parametr": 18, "epytest_ignor": 18, "test_client": 18, "test_gener": 18, "test_filenam": 18, "test_transport": 18, "test_transport_work": 18, "eventlet": 18, "test_contextvar": 18, "test_leak": 18, "might": 18, "intent": 18, "Not": 18, "collid": [18, 20], "instabl": 18, "unstabl": 18, "discret": 18, "justifi": 18, "semi": 18, "random": 18, "multiprocess": 18, "finish": 18, "01": 18, "chanc": 18, "experienc": 18, "insuffici": 18, "nest": 18, "envvar": 18, "pytest_disable_plugin_autoload": 18, "pytest_plugin": 18, "comma": 18, "looponfail": 18, "pytest_fork": 18, "flaki": [18, 20], "rerunfailur": 18, "supposedli": 18, "twice": 18, "_pytest": [18, 20], "pathlib": [18, 20], "posixpath": 18, "confus": 18, "signifi": 18, "event_loop": 18, "freezer": 18, "mocker": 18, "captur": [18, 20], "summari": 18, "asgiref": 18, "sync": 18, "135": 18, "test_loc": 18, "test_sync": 18, "test_sync_contextvar": 18, "deprecationwarn": 18, "main_event_loop": 18, "get_event_loop": 18, "filterwarn": 18, "fatal": [18, 20], "_____________________": 18, "______________________": 18, "577": 18, "asgitest": 18, "testcas": 18, "583": 18, "test_wrapped_case_is_collect": 18, "interrupt": 18, "world": 18, "plot": 19, "voacap": 19, "propag": 19, "predict": 19, "qsl": 19, "hz1jw": 19, "pythonprop": 19, "basemap": 19, "gtk2": 19, "doubl": 19, "energi": 19, "yoda": 19, "hepforg": 19, "use_en": 19, "pyext": 19, "extra_opt": 19, "give": 19, "sound": 19, "signal": [19, 20], "composit": 19, "csound": 19, "fordfrog": 19, "dbuild_python_interfac": 19, "dbuild_python_opcod": 19, "superset": 19, "arab": 19, "arabey": 19, "duali": 19, "pyduali": 19, "dict2db": 19, "trans2arab": 19, "arabic2tran": 19, "domain": 20, "firstli": 20, "idea": 20, "nosetest": 20, "secondli": 20, "strict": 20, "thirdli": 20, "readabl": 20, "wholli": 20, "spew": 20, "seem": 20, "equal": 20, "ceas": 20, "downstream": 20, "convinc": 20, "preced": 20, "area": 20, "____________________": 20, "systemd": 20, "test_login": 20, "234": 20, "hint": 20, "578": 20, "_importtestmodul": 20, "mod": 20, "import_path": 20, "fspath": 20, "importmod": 20, "524": 20, "import_modul": 20, "module_nam": 20, "127": 20, "_bootstrap": 20, "_gcd_import": 20, "frozen": 20, "1014": 20, "991": 20, "_find_and_load": 20, "975": 20, "_find_and_load_unlock": 20, "671": 20, "_load_unlock": 20, "rewrit": 20, "170": 20, "exec_modul": 20, "__dict__": 20, "login": 20, "r2": 20, "discov": 20, "pyarg": 20, "guess": 20, "quick": 20, "mayb": 20, "eunittest": 20, "confirm": 20, "whom": 20, "myself": 20, "subtl": 20, "lead": 20, "But": 20, "bewar": 20, "unexpectedli": 20, "test_start_params_bug": 20, "xfail": 20, "statsmodel": 20, "tsa": 20, "test_arima": 20, "horrend": 20, "disk": 20, "space": 20, "mayhem": 20, "5a": 20, "test_null_byt": 20, "skipif": 20, "0x03000000": 20, "unconditioanlli": 20, "test_babel_with_language_": 20, "test_build_latex": 20, "test_polyglossia_with_language_": 20, "altogeth": 20, "replai": 20, "devmanu": 20, "explan": 20, "connect": 20, "pygit2": 20, "no_network": 20, "properti": 20, "test_network": 20, "allow_test": 20, "unclear": 20, "backtrac": 20, "pluggi": 20, "cachedir": 20, "pytest_cach": 20, "rootdir": 20, "var": 20, "sabyenc": 20, "configfil": 20, "item": 20, "test_decod": 20, "test_crc_pickl": 20, "54": 20, "test_empty_size_pickl": 20, "0x00007f748bc47740": 20, "testsupport": 20, "74": 20, "sabyenc3_wrapp": 20, "119": 20, "180": 20, "pytest_pyfunc_cal": 20, "caller": 20, "187": 20, "_multical": 20, "temp": 20, "2934": 20, "66": 20, "dump": 20, "vv": 20, "34": 20, "23": 20, "timeout": 20, "25": 20, "sabyenc3": 20, "596": 20, "decode_usenet_chunk": 20, "pybytearray_check": 20, "pylist_getitem": 20, "py_input_list": 20, "lp": 20, "0x00007fb5db746740": 20, "73": 20, "117": 20, "87": 20, "lambda": 20, "runpi": 20, "85": 20, "_run_cod": 20, "193": 20, "_run_module_as_main": 20, "initi": 20, "reproduc": 20, "ubuntu": 20, "dndebug": 20, "leak": 20, "o0": 20, "isort": 20, "distutils_pep517_instal": 20, "destin": 20, "cp": 20, "pushd": 20, "null": 20, "popd": 20, "hatch": 10, "aris": 20, "mesonpi": 5}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"python": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "ani": [0, 8], "r1": [0, 2, 5, 6, 7, 8, 13, 14, 19], "build": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 19], "time": [0, 2, 7, 8, 14, 19], "depend": [0, 1, 2, 4, 5, 8, 14, 18, 19, 20], "basic": [0, 1, 5, 19], "us": [0, 2, 3, 4, 5, 6, 7, 8, 14, 18, 19], "uncondit": [0, 19], "condit": [0, 2, 4, 5, 14, 19], "addit": [0, 5, 14], "multipl": [0, 11, 19], "set": [0, 8], "common": [1, 9], "python_compat": 1, "python_dep": 1, "python_required_us": 1, "environ": [1, 20], "packag": [1, 2, 3, 5, 6, 7, 12, 14, 15, 16, 19, 20], "The": [1, 5], "most": 1, "type": 1, "find": 1, "list": [1, 16], "from": [1, 5, 13], "system": [1, 2, 5, 6, 12], "integr": [2, 5], "written": 2, "meson": 2, "scon": 2, "extra": [2, 20], "singl": [2, 5, 7, 13, 19], "impl": [2, 7, 14, 19], "instal": [2, 5, 6, 9, 14, 19, 20], "pure": [2, 14], "multi": [2, 7, 14], "hybrid": [2, 19], "waf": 2, "advanc": [3, 4], "concept": [3, 6], "namespac": 3, "hierarch": 3, "structur": 3, "determin": 3, "whether": 3, "ar": 3, "ad": [3, 5, 12, 15], "new": [3, 12, 15], "gentoo": [3, 10], "legaci": [3, 5, 6], "request": 4, "flag": 4, "interpret": [4, 8, 11, 12], "version": [4, 11], "cffi": 4, "greenlet": 4, "distutil": [5, 6, 7, 8, 16], "standard": 5, "pep": [5, 13, 20], "517": [5, 13, 20], "mode": [5, 20], "sourc": [5, 6], "archiv": 5, "variant": 5, "deprec": [5, 16], "backend": 5, "flit": 5, "buildapi": 5, "poetri": 5, "masonri": 5, "api": [5, 8], "setuptool": [5, 6], "build_meta": 5, "__legacy__": 5, "setuptools_scm": 5, "snapshot": 5, "cython": 5, "parallel": [5, 18], "race": 5, "sub": 5, "phase": 5, "function": [5, 9], "python_prepar": 5, "python_configur": 5, "python_compil": 5, "python_test": 5, "python_instal": 5, "pass": 5, "argument": [5, 18], "setup": 5, "py": 5, "call": 5, "custom": 5, "command": 5, "prevent": 5, "test": [5, 6, 15, 18, 20], "directori": 5, "being": 5, "enabl": 5, "distutils_enable_test": 5, "more": 5, "befor": [5, 6], "run": [5, 18], "undesir": 5, "pytest": [5, 18], "virtualx": 5, "document": 5, "via": 5, "sphinx": 5, "autodoc": 5, "extens": [5, 20], "without": 5, "option": 5, "usag": [5, 8], "rust": 5, "cargo": 5, "manual": [5, 14, 19], "build_dir": 5, "d": 5, "non": 5, "differ": [6, 8], "variat": 6, "distutils_use_setuptool": 6, "entri": 6, "point": 6, "other": [6, 18], "runtim": [6, 7, 19], "pyproject": 6, "toml": 6, "base": [6, 16, 18], "project": [6, 15], "In": 6, "vs": [6, 7], "out": 6, "choos": [7, 20], "between": 7, "eclass": [7, 12], "overview": 7, "first": 7, "expert": [8, 18], "partial": 8, "restrict": 8, "implement": [8, 9, 11, 12, 15], "python_setup": 8, "disjoint": 8, "regular": 8, "combin": 8, "helper": 9, "fix": 9, "shebang": 9, "script": 9, "byte": 9, "compil": 9, "modul": 9, "queri": 9, "inform": 9, "guid": [10, 13], "content": 10, "indic": 10, "tabl": 10, "altern": 11, "support": [11, 15], "backport": 11, "mainten": [12, 15], "life": 12, "cycl": 12, "note": 12, "specif": 12, "cpython": 12, "patchset": 12, "pypi": [12, 20], "profil": 12, "chang": [12, 16], "port": [12, 15, 16], "initi": 12, "bootstrap": 12, "migrat": 13, "old": 13, "python_usedep": 13, "syntax": 13, "eapi": [13, 15], "7": 13, "8": [13, 16], "autotool": 14, "2": 15, "which": 15, "exist": 15, "can": 15, "co": 15, "maintain": 15, "tip": 16, "retroact": 16, "bpo43882": 16, "urlsplit": 16, "now": 16, "strip": 16, "lf": 16, "cr": 16, "ht": 16, "charact": 16, "3": 16, "11": 16, "gener": 16, "coroutin": 16, "remov": 16, "asyncio": 16, "inspect": 16, "getargspec": 16, "formatargspec": 16, "10": 16, "configur": 16, "No": 16, "1": 16, "found": [16, 18], "sysconfig": 16, "9": 16, "base64": 16, "encodestr": 16, "decodestr": 16, "config": 16, "pkg": 16, "longer": 16, "librari": 16, "default": 16, "prefac": 17, "recip": 18, "skip": [18, 20], "marker": 18, "path": 18, "name": 18, "avoid": 18, "runner": [18, 20], "xdist": 18, "plugin": 18, "explicitli": 18, "disabl": 18, "automat": 18, "autoload": 18, "entir": 18, "typeerror": 18, "_make_test_flaki": 18, "got": 18, "an": 18, "unexpect": 18, "keyword": 18, "rerun": 18, "importpathmismatcherror": 18, "fixtur": 18, "warn": 18, "A": 19, "resolv": 20, "suit": 20, "problem": 20, "correct": 20, "miss": 20, "file": 20, "importerror": 20, "c": 20, "checklist": 20, "deal": 20, "failur": 20, "problemat": 20, "requir": 20, "internet": 20, "access": 20, "abort": 20, "due": 20, "assert": 20, "flit_scm": 5, "hatch": 5, "vc": 5}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}}) \ No newline at end of file
+Search.setIndex({"docnames": ["any", "basic", "buildsys", "concept", "depend", "distutils", "distutils-legacy", "eclass", "expert-multi", "helper", "index", "interpreter", "interpreter-maintenance", "migration", "multi", "package-maintenance", "porting", "preface", "pytest", "single", "test"], "filenames": ["any.rst", "basic.rst", "buildsys.rst", "concept.rst", "depend.rst", "distutils.rst", "distutils-legacy.rst", "eclass.rst", "expert-multi.rst", "helper.rst", "index.rst", "interpreter.rst", "interpreter-maintenance.rst", "migration.rst", "multi.rst", "package-maintenance.rst", "porting.rst", "preface.rst", "pytest.rst", "single.rst", "test.rst"], "titles": ["python-any-r1 \u2014 build-time dependency", "Common basics", "Integration with build systems written in Python", "Advanced concepts", "Advanced dependencies", "distutils-r1 \u2014 standard Python build systems", "distutils-r1 legacy concepts", "Choosing between Python eclasses", "Expert python-r1 usage", "Common helper functions", "Gentoo Python Guide", "Python interpreters", "Maintenance of Python implementations", "Migration guides", "python-r1 \u2014 multi-impl packages", "Python package maintenance", "Porting tips", "Preface", "pytest recipes", "python-single-r1 \u2014 single-impl packages", "Resolving test suite problems"], "terms": {"The": [0, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20], "eclass": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 13, 14, 17, 18, 19, 20], "enabl": [0, 4, 6, 7, 8, 10, 11, 12, 14, 15, 18], "support": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 16, 17, 18, 19, 20], "packag": [0, 4, 8, 9, 10, 11, 13, 17, 18], "need": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "pure": [0, 5, 6, 7, 8, 10, 11, 15], "refer": [0, 1, 5, 9, 11, 13, 14, 17, 19], "5": [0, 2, 5, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20], "defin": [0, 1, 5, 6, 11, 19], "featur": [0, 4, 5, 6, 7, 8, 11, 12, 13, 19, 20], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "pkg_setup": [0, 1, 2, 8, 19], "phase": [0, 1, 3, 6, 7, 8, 9, 10, 13, 14, 15, 19, 20], "It": [0, 1, 3, 4, 5, 6, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "normal": [0, 3, 5, 8, 9, 14, 19], "call": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 13, 14, 16, 18, 19, 20], "python_setup": [0, 1, 2, 10, 13, 14, 19], "function": [0, 1, 4, 6, 7, 8, 10, 11, 13, 14, 16, 19, 20], "order": [0, 1, 2, 4, 5, 7, 9, 12, 13, 14, 15, 19], "find": [0, 2, 3, 4, 6, 14, 15, 18, 20], "suitabl": [0, 7, 9, 14, 17], "interpret": [0, 1, 2, 5, 6, 7, 9, 10, 13, 14, 15, 16, 18, 19], "global": [0, 1, 5, 8, 13, 14, 18, 19], "environ": [0, 5, 6, 10, 11, 13, 14, 16, 18, 19], "appropri": [0, 2, 4, 5, 6, 7, 9, 11, 12, 15, 19], "mean": [0, 1, 2, 5, 7, 8, 11, 15, 16, 18, 19, 20], "most": [0, 3, 5, 6, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20], "trivial": [0, 5, 12, 16, 19], "an": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20], "autotool": [0, 5, 6, 10, 16, 19], "compat": [0, 1, 2, 4, 5, 6, 7, 9, 11, 12, 13, 16, 19], "system": [0, 3, 7, 8, 9, 10, 13, 14, 15, 17, 19, 20], "could": [0, 2, 3, 5, 6, 8, 9, 15, 16, 19], "look": [0, 1, 6, 8, 18, 19, 20], "like": [0, 2, 4, 5, 6, 8, 11, 15, 16, 19, 20], "follow": [0, 1, 3, 4, 5, 6, 8, 9, 12, 13, 15, 16, 17, 18, 19, 20], "copyright": [0, 2, 4, 5, 6, 8, 14, 19], "1999": [0, 2, 4, 5, 6, 8, 14, 19], "2020": [0, 2, 4, 5, 6, 8, 13, 14, 19], "gentoo": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20], "author": [0, 2, 4, 5, 6, 8, 9, 10, 12, 14, 19], "distribut": [0, 2, 4, 5, 6, 8, 14, 15, 16, 17, 19, 20], "under": [0, 1, 2, 3, 4, 5, 6, 8, 14, 19], "term": [0, 2, 4, 5, 6, 8, 14, 19], "gnu": [0, 2, 4, 5, 6, 8, 14, 19], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "public": [0, 2, 4, 5, 6, 8, 14, 19], "licens": [0, 2, 4, 5, 6, 8, 10, 14, 19], "v2": [0, 2, 4, 5, 6, 8, 14, 19], "eapi": [0, 2, 4, 5, 6, 8, 10, 14, 19], "7": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 18, 19, 20], "python_compat": [0, 2, 4, 5, 6, 8, 10, 12, 14, 15, 19], "python3_": [0, 1, 2, 4, 5, 6, 8, 12, 19], "6": [0, 1, 2, 4, 5, 6, 8, 11, 12, 14, 15, 16, 18, 19, 20], "8": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 15, 19, 20], "inherit": [0, 1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19], "descript": [0, 2, 4, 5, 6, 8, 14, 19], "A": [0, 1, 2, 4, 5, 6, 7, 8, 10, 11, 15, 18], "repositori": [0, 5, 6, 12, 15], "data": [0, 2, 5, 6, 9, 16, 19, 20], "file": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19], "describ": [0, 5, 6, 8, 9, 15], "media": [0, 2, 8], "player": [0, 4], "capabl": 0, "homepag": [0, 2, 4, 5, 6, 8, 14, 19], "http": [0, 2, 4, 5, 6, 8, 9, 12, 14, 16, 19, 20], "cgit": 0, "freedesktop": 0, "org": [0, 2, 4, 5, 6, 8, 9, 12, 14, 19], "info": [0, 5, 6, 18], "src_uri": [0, 2, 4, 5, 6, 8, 14, 19, 20], "www": [0, 2, 8, 14, 19], "softwar": [0, 1, 4, 8, 12, 14, 15, 16, 20], "pn": [0, 2, 4, 5, 6, 8, 9, 14, 19, 20], "p": [0, 2, 4, 5, 6, 8, 14, 18, 19, 20], "tar": [0, 2, 4, 5, 6, 8, 12, 14, 19, 20], "gz": [0, 2, 4, 5, 6, 8, 14, 19, 20], "bsd": [0, 2, 5, 6, 8, 14, 19], "slot": [0, 2, 4, 5, 6, 8, 11, 14, 19], "0": [0, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16, 18, 19, 20], "keyword": [0, 2, 4, 5, 6, 8, 10, 14, 16, 19], "alpha": [0, 2, 4, 5, 6, 8, 12, 14, 19], "amd64": [0, 2, 4, 5, 6, 8, 12, 14, 19], "arm": [0, 2, 4, 5, 6, 8, 19], "arm64": [0, 2, 4, 5, 6, 8, 14, 19], "hppa": [0, 2, 4, 5, 6, 8, 14, 19], "ia64": [0, 2, 4, 5, 6, 8, 14, 19], "mip": [0, 2, 4, 5, 6, 8, 19], "ppc": [0, 2, 4, 5, 6, 8, 14, 19], "ppc64": [0, 2, 4, 5, 6, 8, 14, 19], "sh": [0, 2, 4, 5, 6, 8, 12, 19], "sparc": [0, 2, 4, 5, 6, 8, 14, 19], "x86": [0, 2, 4, 5, 6, 8, 12, 14, 19], "ius": [0, 2, 4, 5, 8, 14, 19], "rdepend": [0, 1, 2, 4, 5, 6, 8, 13, 14, 19], "virtual": [0, 2, 8, 14], "udev": 0, "208": 0, "bdepend": [0, 1, 2, 5, 6, 8, 12, 14, 18, 19], "python_dep": [0, 2, 4, 5, 8, 10, 14, 19], "pkgconfig": [0, 2, 8, 14], "ebuild": [0, 1, 4, 5, 6, 7, 9, 12, 13, 14, 15, 16, 17, 19, 20], "demonstr": [0, 5, 19], "absolut": [0, 1, 9, 15, 19, 20], "minimum": [0, 15, 19], "work": [0, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20], "code": [0, 1, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 18, 19, 20], "onli": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20], "three": [0, 1, 3, 9, 13, 16], "highlight": [0, 16, 19], "line": [0, 3, 5, 13, 15, 16, 19, 20], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "specif": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20], "plu": [0, 19], "implicitli": [0, 3, 5, 8, 12, 19], "export": [0, 1, 2, 5, 19], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "other": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20], "declar": [0, 1, 2, 5, 6, 8, 9, 12, 14, 18, 19], "ensur": [0, 1, 5, 6, 9, 14, 19], "would": [0, 2, 5, 7, 11, 12, 14, 15, 16, 19, 20], "built": [0, 1, 3, 5, 6, 7, 8, 11, 12, 14, 17, 19, 20], "against": [0, 4, 7, 9, 11, 12, 14, 15, 19, 20], "implement": [0, 1, 3, 4, 5, 6, 7, 10, 14, 17, 18, 19, 20], "specifi": [0, 1, 2, 5, 6, 7, 8, 14, 18, 19, 20], "get": [0, 5, 6, 12, 13, 18, 20], "replac": [0, 5, 6, 11, 12, 13, 15, 16], "python_gen_any_dep": [0, 2, 8], "match": [0, 2, 4, 5, 6, 8, 9, 11, 12, 15, 19], "python_check_dep": [0, 2, 8], "accept": [0, 1, 5, 6, 9, 12, 15, 16, 18], "templat": [0, 2, 4, 5, 15, 19], "where": [0, 3, 5, 6, 9, 12, 14, 19, 20], "liter": [0, 4, 19], "python_usedep": [0, 2, 4, 5, 8, 10, 12, 14, 15, 18, 19], "substitut": [0, 4, 19], "requir": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19], "all": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "same": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "least": [0, 5, 8, 15, 20], "one": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 16, 17, 18, 19, 20], "test": [0, 1, 2, 3, 4, 7, 8, 10, 12, 13, 17, 19], "whether": [0, 1, 5, 6, 7, 15, 18, 19, 20], "question": [0, 1, 5, 7, 14, 18, 20], "In": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20], "particular": [0, 1, 4, 5, 6, 11, 15, 20], "verifi": [0, 1, 5, 6, 8, 13, 20], "branch": [0, 16, 20], "wa": [0, 4, 5, 11, 12, 13, 18, 20], "satisfi": [0, 1, 8, 12], "were": [0, 2, 3, 5, 8, 11, 12, 13, 16], "instal": [0, 1, 3, 4, 7, 8, 10, 11, 12, 13, 16, 18], "current": [0, 5, 6, 11, 12, 13, 15, 18, 20], "For": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20], "purpos": [0, 6, 9, 12, 14, 16, 19, 20], "variabl": [0, 1, 5, 6, 8, 13, 14, 16, 18, 19], "string": [0, 1, 4, 5, 8, 14, 16, 19], "best": [0, 5, 7, 12, 16, 17, 18], "explain": [0, 1, 6], "exampl": [0, 4, 5, 6, 7, 8, 9, 11, 12, 15, 16, 17, 18, 19, 20], "meson": [0, 4, 5, 7, 10, 15], "manag": [0, 4, 5, 6, 8, 9, 20], "cinnamon": 0, "fork": [0, 11, 12, 15, 20], "from": [0, 2, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20], "nautilu": 0, "develop": [0, 1, 7, 11, 12, 15, 17, 18, 20], "linuxmint": 0, "com": [0, 2, 4, 5, 6, 8, 12, 14, 16, 20], "project": [0, 1, 5, 8, 9, 10, 14, 17, 18], "html": [0, 5, 8], "github": [0, 2, 4, 5, 6, 8, 12, 14, 17, 19, 20], "nemo": 0, "archiv": [0, 2, 4, 10, 19, 20], "pv": [0, 2, 4, 5, 8, 14, 19, 20], "gpl": [0, 2, 4, 8, 14, 19], "2": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 14, 16, 17, 19, 20], "lgpl": [0, 2, 5, 14, 19], "fdl": [0, 19], "1": [0, 2, 3, 4, 5, 6, 8, 9, 12, 15, 18, 19, 20], "dev": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20], "polib": 0, "pygobject": [0, 14], "3": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20], "python_has_vers": [0, 2, 8], "provid": [0, 1, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "its": [0, 1, 2, 3, 5, 6, 7, 8, 11, 12, 15, 16, 18, 20], "both": [0, 1, 3, 5, 6, 7, 8, 12, 13, 16, 17, 18, 19, 20], "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20], "dep": [0, 5, 13, 18], "true": [0, 1, 2, 5, 6, 8, 12, 13, 16, 20], "them": [0, 1, 2, 3, 5, 6, 7, 8, 9, 12, 15, 16, 18, 19, 20], "while": [0, 2, 3, 4, 5, 6, 7, 8, 11, 12, 14, 16, 17, 18, 19, 20], "which": [0, 5, 6, 9, 10, 11, 14, 20], "wrapper": [0, 1, 5, 6, 9, 13, 14, 20], "help": [0, 15, 17, 20], "take": [0, 1, 2, 4, 5, 6, 7, 8, 9, 15, 18, 20], "singl": [0, 1, 4, 6, 9, 10, 14, 15, 16, 18, 20], "option": [0, 1, 3, 4, 6, 8, 10, 13, 15, 18, 19, 20], "class": [0, 1, 5, 16, 18], "flag": [0, 1, 5, 7, 8, 9, 10, 11, 12, 14, 15, 19, 20], "more": [0, 1, 3, 4, 7, 9, 11, 12, 13, 16, 18, 19, 20], "similarli": [0, 1, 5, 15], "has_vers": [0, 12], "root": [0, 5, 6, 13, 19, 20], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20], "b": 0, "d": [0, 2, 3, 8, 9, 14, 18], "r": [0, 2, 5, 9, 20], "idepend": 0, "pdepend": [0, 2, 8, 12], "pass": [0, 6, 8, 9, 10, 12, 13, 16, 18, 20], "assum": [0, 1, 5, 6, 9, 13, 15, 19], "verbos": [0, 20], "print": [0, 3, 8, 14, 18, 20], "check": [0, 5, 6, 9, 10, 12, 13, 16, 17, 20], "perform": [0, 2, 5, 6, 11, 12, 14, 19, 20], "result": [0, 5, 6, 8, 9, 12, 15, 16, 17, 18, 20], "return": [0, 2, 5, 8, 16, 20], "success": 0, "found": [0, 1, 3, 5, 6, 9, 10, 15, 20], "fals": [0, 2, 5, 8, 12, 15, 16], "otherwis": [0, 5, 6, 7, 8, 9], "note": [0, 1, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20], "invoc": [0, 5, 18], "chain": 0, "abov": [0, 1, 6, 8, 12, 13, 15, 19, 20], "also": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 20], "written": [0, 1, 5, 7, 10, 11, 18], "import": [0, 1, 3, 4, 5, 6, 7, 11, 12, 13, 14, 15, 16, 18, 20], "understand": 0, "correctli": [0, 1, 5, 6, 7, 9, 11, 12, 13, 15, 16, 20], "exactli": [0, 7], "furthermor": [0, 2, 5], "combin": [0, 2, 5, 10, 11, 12, 13, 17, 18, 19, 20], "must": [0, 1, 2, 3, 5, 6, 7, 8, 11, 18, 19, 20], "onc": [0, 5, 8, 11, 12], "invalid": 0, "split": [0, 5, 13, 16], "some": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 19, 20], "necessari": [0, 2, 5, 6, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20], "particularli": [0, 5, 6, 7, 11, 13, 15, 18, 20], "common": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20], "suit": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 18], "case": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "wrap": [0, 5, 6, 9, 13], "programm": [0, 15], "complet": [0, 5, 16, 17], "bash": [0, 5, 7, 8, 9, 19], "scop": 0, "releas": [0, 2, 5, 8, 11, 12, 14, 16], "download": [0, 2, 5, 8, 14], "xz": [0, 4, 12, 14, 19], "s390": [0, 2, 4, 5, 6, 8, 19], "linux": [0, 2, 4, 5, 6, 8, 9, 14, 16, 19, 20], "maco": [0, 4, 5, 6, 8, 19], "x64": [0, 4, 5, 6, 8, 19], "m68k": [0, 4, 5, 6, 8, 19], "mint": 0, "solari": [0, 5, 6, 19], "sparc64": [0, 6], "restrict": [0, 2, 5, 10, 18, 19, 20], "app": [0, 2, 4, 5, 8, 12, 14, 15], "shell": [0, 5, 8, 14], "4": [0, 3, 5, 8, 9, 10, 11, 12, 14, 15, 20], "3_p30": 0, "pexpect": [0, 5], "pytest": [0, 4, 8, 10, 12, 20], "r1_pkg_setup": [0, 2, 19], "anoth": [0, 8, 9, 14, 16, 18, 20], "possibl": [0, 2, 4, 5, 6, 8, 9, 12, 14, 17, 18, 20], "uncondition": [0, 1, 2, 4, 5, 6, 8, 11, 19, 20], "condition": [0, 1, 2, 5, 11, 12, 14, 15, 18, 19], "simplest": [0, 2, 5, 7, 14, 18, 20], "wai": [0, 5, 6, 9, 12, 13, 15, 18, 20], "achiev": [0, 8, 11, 16], "block": [0, 8, 13, 20], "express": [0, 8, 13, 19], "similar": [0, 2, 5, 14, 19, 20], "cmake": [0, 5, 6, 19], "qt": 0, "bind": [0, 2, 5, 8, 14, 19], "telepathi": 0, "bu": 0, "protocol": [0, 2, 19], "dbu": [0, 2], "hardest": 0, "differ": [0, 1, 3, 5, 9, 10, 11, 15, 16, 18, 20], "do": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 15, 17, 18, 19, 20], "error": [0, 2, 5, 9, 13, 16, 18, 20], "prone": 0, "move": [0, 5, 12], "insid": [0, 1, 3, 5, 6, 9, 12, 14, 18, 19], "python3_6": [0, 2, 4, 8, 14], "gnome2": [0, 4, 14], "gobject": 0, "librari": [0, 1, 2, 3, 4, 5, 8, 9, 11, 14, 19], "access": [0, 5, 10, 11, 18], "secret": 0, "servic": [0, 15, 20], "api": [0, 2, 9, 10, 11, 13, 14, 16], "wiki": [0, 4, 8, 9, 14, 17], "gnome": [0, 4, 14], "libsecret": 0, "apach": [0, 2, 4, 5, 8], "introspect": 0, "fail": [0, 1, 2, 5, 8, 9, 11, 12, 16, 18, 20], "bug": [0, 5, 6, 12, 20], "655482": 0, "required_us": [0, 1, 2, 4, 5, 7, 8, 13, 14, 19], "mock": [0, 4, 8, 11, 12, 18, 20], "fi": [0, 2, 5, 8, 12, 14, 19], "host": 0, "variou": [1, 5, 6, 9, 13, 16], "r1": [1, 3, 4, 9, 10, 12, 15, 20], "try": [1, 6, 8, 9, 11, 20], "design": [1, 19], "you": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "probabl": [1, 6, 8, 13, 19], "us": [1, 9, 10, 11, 12, 13, 15, 16, 20], "than": [1, 2, 3, 6, 7, 8, 11, 12, 15, 16, 17, 18, 20], "so": [1, 4, 5, 6, 11, 12, 15, 18, 19, 20], "worthwhil": [1, 20], "shortli": 1, "bit": [1, 12, 17], "well": [1, 5, 7, 8, 11, 13, 15], "non": [1, 6, 7, 9, 12, 14, 16, 18, 20], "obviou": [1, 20], "between": [1, 5, 8, 10, 11, 12, 13, 16], "befor": [1, 4, 8, 9, 10, 12, 14, 16, 20], "thei": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20], "valid": [1, 5, 8, 15, 16, 20], "valu": [1, 5, 6, 9, 13, 18], "pythonx_i": 1, "cpython": [1, 4, 5, 9, 11, 13], "x": [1, 5, 16, 18, 20], "y": [1, 2, 16], "pypy3": [1, 4, 5, 6, 8, 11, 12, 13, 15, 18], "typic": [1, 14], "ani": [1, 2, 3, 5, 6, 7, 10, 14, 16, 18, 20], "respons": [1, 5], "explicitli": [1, 5, 7, 8, 10, 13, 20], "put": [1, 8], "correct": [1, 5, 6, 7, 9, 10, 15, 18, 19], "meant": [1, 13], "consist": [1, 6, 9, 13, 14, 15], "cover": [1, 5, 6, 13], "time": [1, 3, 4, 5, 6, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20], "runtim": [1, 2, 3, 5, 8, 10, 13, 14, 15], "form": [1, 4, 12, 17], "doe": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 20], "appli": [1, 4, 5, 6, 7, 12, 15, 18, 19, 20], "distutil": [1, 3, 4, 9, 10, 13, 14, 18, 19, 20], "assign": 1, "default": [1, 2, 5, 6, 7, 8, 9, 12, 13, 14, 15, 18, 19, 20], "commonli": [1, 2, 3, 5, 6, 9, 11], "concept": [1, 5, 10], "state": 1, "enforc": [1, 4, 5, 7, 8, 11, 18], "whenev": [1, 5, 9, 14, 15, 18, 19], "run": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 20], "two": [1, 5, 6, 8, 9, 11, 13, 16, 18, 19], "being": [1, 3, 6, 8, 9, 10, 11, 12, 15, 16, 18, 20], "epython": [1, 2, 5, 8, 9, 12, 13, 18, 20], "contain": [1, 3, 4, 5, 6, 7, 12, 13, 15], "s": [1, 2, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16, 18, 19, 20], "basenam": 1, "identifi": 1, "e": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "g": [1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "python3": [1, 3, 5, 9, 11, 13, 15, 16, 18, 20], "10": [1, 4, 5, 8, 10, 12, 15], "final": [1, 2, 4, 5, 9, 12, 13, 16, 19, 20], "path": [1, 3, 5, 6, 9, 10, 12, 13, 16, 20], "usr": [1, 2, 3, 5, 7, 8, 9, 18, 20], "bin": [1, 2, 5, 7, 8, 9, 12, 19, 20], "full": [1, 2, 4, 5, 13, 20], "should": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], "embed": [1, 2, 9, 11], "program": [1, 2, 5, 6, 11, 16, 18], "shebang": [1, 10, 11, 20], "spawn": 1, "dure": [1, 5, 6, 7, 12, 13, 18], "prefer": [1, 5, 7, 8, 11, 12, 14, 15, 18, 20], "rather": [1, 6, 8, 15, 16, 17, 18, 20], "bypass": 1, "virtualenv": [1, 5, 6, 12, 20], "creat": [1, 3, 4, 5, 6, 12, 13, 16], "pep": [1, 3, 6, 7, 10, 12, 16], "517": [1, 3, 6, 7, 10, 12], "mode": [1, 3, 6, 7, 10, 13], "mai": [1, 3, 5, 6, 8, 12, 13, 15, 16, 18, 20], "caus": [1, 4, 5, 8, 9, 13, 15, 18, 20], "failur": [1, 5, 10, 12, 18], "modul": [1, 3, 4, 5, 6, 7, 8, 10, 11, 14, 15, 16, 18, 20], "previou": [1, 5, 12, 13, 16], "version": [1, 2, 3, 5, 6, 7, 8, 10, 12, 13, 16, 17, 18, 20], "just": [1, 5, 6, 11, 13, 20], "resolv": [1, 5, 6, 10, 16, 18], "problem": [1, 3, 4, 5, 6, 8, 10, 12, 16, 17, 18], "pythonn": 1, "tool": [1, 2, 5, 8, 14, 15, 16, 20], "etc": 1, "via": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 19, 20], "exec": [1, 8, 9, 11, 12, 20], "hardcod": [1, 12, 18], "either": [1, 2, 5, 8, 9, 11, 13, 18, 20], "establish": [1, 5, 13, 20], "local": [1, 2, 3, 5, 8, 9, 12, 13, 14, 18, 19, 20], "scope": [1, 5, 8, 13, 18], "multi": [1, 5, 10, 13, 19], "impl": [1, 5, 10, 13], "python_foreach_impl": [1, 2, 8, 14], "sub": [1, 3, 7, 8, 10, 20], "setup": [1, 3, 6, 7, 10, 13, 15, 18, 20], "done": [1, 5, 6, 8, 9, 12, 14, 15, 18, 20], "directli": [1, 5, 6, 7, 9, 11, 13, 16, 18, 20], "section": [1, 5, 6, 7, 12, 15, 16, 20], "focu": [1, 7, 12, 14], "often": [1, 5, 12, 20], "extern": [1, 2, 5, 6, 7, 11, 12], "languag": [1, 2, 5, 11, 15], "usual": [1, 3, 4, 5, 7, 11, 13, 15, 16, 18, 20], "rule": [1, 2, 6, 7, 8, 13, 14, 15], "classifi": [1, 6], "categori": [1, 15], "present": [1, 5, 6, 15], "script": [1, 2, 5, 6, 7, 8, 10, 11, 12, 14, 16, 19], "usabl": [1, 11], "whose": [1, 5], "therefor": [1, 2, 5, 6, 7, 8, 11, 12, 15, 18], "howev": [1, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20], "modern": [1, 4, 5, 6, 12, 18, 20], "base": [1, 5, 7, 8, 10, 12, 14, 15, 19, 20], "entri": [1, 5, 18], "point": [1, 5, 11, 12, 13, 18, 20], "refus": [1, 11], "place": [1, 6, 11, 12], "special": [1, 3, 4, 5, 6, 16, 20], "subclass": 1, "extra": [1, 5, 6, 10], "still": [1, 5, 6, 8, 11, 12, 13, 16, 20], "meaningfulli": 1, "handl": [1, 4, 5, 6, 8, 13, 14, 15], "gracefulli": [1, 4, 8], "subset": [1, 4, 5, 7, 8, 11, 12, 14, 15, 20], "without": [1, 4, 10, 11, 13, 14, 15, 18], "There": [1, 3, 5, 8, 9, 16, 18, 20], "multipl": [1, 3, 4, 5, 7, 10, 14, 17, 18, 20], "approach": [1, 5, 7, 8], "ad": [1, 7, 10, 11, 13, 14, 18], "consid": [1, 2, 3, 6, 7, 8, 12, 14, 15, 16], "light": 1, "enough": [1, 5], "inform": [1, 3, 5, 6, 10, 13, 16, 20], "messag": [1, 5, 20], "pkg_postinst": [1, 5], "util": [1, 2, 4, 5, 7, 8, 9, 12, 15, 18, 19, 20], "optfeatur": 1, "cheap": 1, "rebuild": [1, 6], "includ": [1, 2, 3, 4, 5, 6, 7, 9, 12, 15, 16, 17, 18, 19, 20], "__init__": [1, 3, 5, 9, 18, 20], "py": [1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 20], "As": [1, 3, 5, 6, 7, 8, 11, 13, 15, 16, 18, 19, 20], "thumb": [1, 6, 7, 13, 15], "belong": [1, 20], "care": [1, 2, 5, 7, 9, 15, 20], "addit": [1, 2, 4, 6, 8, 9, 10, 11, 12, 13, 15, 18, 20], "plugin": [1, 3, 5, 6, 8, 10, 20], "setuptools_scm": [1, 10], "document": [1, 2, 7, 8, 10, 11, 14, 17, 20], "former": [1, 5, 7, 8, 13, 16, 20], "runner": [1, 5, 7, 10], "sinc": [1, 2, 3, 5, 6, 7, 11, 12, 13, 15, 16, 18, 20], "sometim": [1, 5, 6, 7, 9, 11, 18, 20], "These": [1, 6, 7, 12, 13, 15, 18, 20], "go": [1, 2, 8, 12, 17, 18], "doc": [1, 2, 5, 8, 19], "respect": [1, 3, 5, 12, 14, 15, 18], "maximum": [1, 5], "coverag": [1, 5, 15, 18], "further": [1, 18], "guid": [1, 3, 5, 16, 17], "linter": 1, "report": [1, 5, 6, 9, 15, 20], "actual": [1, 5, 6, 8, 9, 11, 12, 15, 18, 20], "undesir": [1, 18, 20], "again": [1, 2, 15, 20], "conveni": [1, 4, 5, 6, 7, 18, 20], "add": [1, 2, 5, 6, 8, 12, 15, 19, 20], "sphinx": [1, 3, 6, 7, 8, 10, 12], "copi": [1, 3, 5, 6, 9, 11, 15, 19], "c": [1, 2, 5, 6, 8, 9, 10, 14], "extens": [1, 6, 7, 8, 9, 10, 11, 14, 15, 16], "header": [1, 9], "numpi": [1, 2], "If": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20], "metadata": [1, 5, 6, 14, 15, 19], "pyproject": [1, 5, 7, 12], "toml": [1, 5, 7, 12], "setuptool": [1, 3, 4, 7, 8, 12, 13, 15, 18], "cfg": [1, 3, 5, 6, 15, 18], "custom": [1, 2, 6, 10, 13, 15, 18], "read": [1, 5], "name": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 16, 20], "uncondit": [1, 2, 5, 10, 13, 14, 15], "upstream": [1, 3, 5, 6, 7, 9, 11, 12, 14, 15, 16, 18, 20], "spuriou": 1, "strip": [1, 3, 5, 11, 15, 18, 20], "ommit": 1, "kei": [1, 5, 16, 18, 19], "kind": [1, 3, 5, 7, 9, 11, 20], "621": 1, "older": [1, 11, 15], "flit": [1, 6, 12, 13], "poetri": [1, 6, 13], "indic": [1, 5, 6, 11, 12, 13, 15, 18, 20], "install_requir": [1, 3, 5, 6], "group": [1, 2, 6, 13, 18], "extras_requir": [1, 5], "setup_requir": [1, 5, 18], "deprec": [1, 3, 10, 11, 13], "tests_requir": [1, 5], "tox": [1, 5, 20], "ini": [1, 5, 18, 20], "noxfil": 1, "python_requir": 1, "besid": [2, 6, 11, 14, 18], "few": [2, 4, 6, 12, 18, 20], "make": [2, 3, 4, 5, 6, 7, 12, 13, 15, 16, 18, 19, 20], "proper": [2, 8], "fairli": [2, 15, 19], "recent": [2, 3, 5, 12, 20], "agnost": 2, "henc": [2, 5, 14], "treat": [2, 18], "arbitrari": [2, 13], "ha": [2, 3, 5, 6, 7, 11, 12, 13, 14, 15, 16, 18, 20], "gain": [2, 18], "quit": [2, 4, 6, 11, 12], "At": [2, 5, 12, 15, 17], "mani": [2, 5, 8, 12, 14, 15, 16, 20], "old": [2, 4, 5, 6, 8, 10, 12, 16, 20], "reason": [2, 4, 5, 6, 11, 18, 20], "suffici": [2, 5, 6, 7, 11, 14], "prior": [2, 3, 5, 6, 8, 13, 16, 20], "happen": [2, 3, 4, 6, 7, 8, 11, 12, 19, 20], "natur": [2, 5, 8, 15], "sort": 2, "latter": [2, 5, 7, 8, 13, 15, 16, 18, 20], "set": [2, 4, 5, 6, 7, 10, 12, 14, 15, 16, 18, 19, 20], "much": [2, 5, 20], "compon": [2, 3, 8, 11, 14, 16], "account": [2, 5, 8, 15, 20], "detail": [2, 5, 7, 9, 11, 13, 16, 20], "choic": [2, 6, 7, 13, 20], "chapter": [2, 8, 9], "along": [2, 5, 6, 7, 11, 13, 19, 20], "toolchain": [2, 8], "func": [2, 8], "commit": [2, 20], "6e5e8a57628095d8d0c8bbb38187afb0f3a42112": 2, "userspac": 2, "xbox": 2, "360": 2, "control": [2, 4, 5, 18], "driver": 2, "xboxdrv": 2, "gitlab": [2, 8], "io": [2, 4, 5, 8, 14, 19], "chewi": 2, "workdir": [2, 5], "lib": [2, 3, 5, 7, 9, 16, 18, 20], "boost": [2, 7], "glib": 2, "sy": [2, 5, 8, 11, 14, 15, 16, 20], "libudev": 2, "libusb": 2, "x11": 2, "libx11": 2, "src_compil": [2, 5, 6, 8, 14], "escon": 2, "cxx": 2, "tc": [2, 9], "getcxx": 2, "getar": 2, "ranlib": 2, "getranlib": 2, "cxxflag": 2, "wall": 2, "linkflag": 2, "ldflag": [2, 5], "src_instal": [2, 5, 8, 9, 14, 19], "dobin": [2, 9], "doman": 2, "dodoc": [2, 5], "new": [2, 5, 6, 9, 10, 11, 13, 16, 18], "readm": [2, 12], "md": 2, "todo": [2, 9, 12], "yourself": [2, 4, 20], "becaus": [2, 5, 6, 15, 18, 20], "cannot": [2, 4, 5, 9, 11, 20], "my_p": 2, "src": [2, 5, 9, 20], "_rc": 2, "rc": 2, "high": [2, 12, 15, 19], "open": [2, 16], "sourc": [2, 3, 10, 12, 14, 17, 20], "schema": [2, 15], "free": [2, 15, 20], "orient": [2, 16], "databas": [2, 4], "mongodb": [2, 4], "fastdl": 2, "sspl": 2, "acct": 2, "user": [2, 3, 5, 6, 7, 8, 11, 12, 15, 18, 19, 20], "arch": [2, 5, 8, 12], "snappi": 2, "cpp": 2, "yaml": [2, 3], "70": 2, "thread": [2, 8, 18, 19, 20], "libpcr": 2, "42": 2, "zstd": 2, "snowbal": 2, "stemmer": 2, "net": [2, 8, 11, 14, 19], "libpcap": 2, "zlib": 2, "11": [2, 5, 10, 12, 15, 20], "pymongo": 2, "cheetah3": 2, "psutil": 2, "pyyaml": 2, "type": [2, 3, 6, 13, 15, 16], "ncurs": [2, 14], "readlin": [2, 5, 8, 14], "admin": [2, 8], "mongo": 2, "src_configur": [2, 5, 8, 9, 13, 14, 19], "scons_opt": 2, "cc": [2, 9], "getcc": [2, 9], "disabl": [2, 5, 8, 10, 12, 14, 19, 20], "warn": [2, 3, 5, 10, 16], "pcre": 2, "core": [2, 5, 20], "src_test": [2, 5, 6, 14], "buildscript": 2, "resmok": 2, "dbpathprefix": 2, "job": [2, 18], "makeopts_job": [2, 18], "die": [2, 3, 5, 8, 9, 14, 18, 20], "nostrip": [2, 8], "prefix": [2, 8, 9, 15, 16, 20], "ed": [2, 9, 15], "everyth": [2, 13], "your": [2, 4, 5, 6, 7, 8, 11, 12, 15, 16, 18, 20], "python2_7": [2, 5, 6, 8, 13, 14, 19], "eutil": 2, "molecular": 2, "dynam": 2, "nmr": 2, "analysi": [2, 19], "relax": [2, 18], "gna": 2, "bz2": [2, 8, 19], "python_required_us": [2, 4, 5, 8, 10, 14, 19], "python_gen_cond_dep": [2, 4, 5, 8, 12, 13, 19], "numdifftool": 2, "matplotlib": [2, 5, 19], "python2": [2, 8, 9, 13, 19], "wxpython": [2, 19], "wx_gtk_ver": [2, 19], "sci": [2, 5, 19], "chemistri": 2, "pymol": 2, "bmrblib": 2, "minfx": 2, "scipi": 2, "molmol": 2, "vmd": 2, "visual": 2, "grace": 2, "opendx": 2, "gfx": 2, "pngcrush": 2, "python_moduleinto": [2, 5, 9, 14], "python_domodul": [2, 5, 9, 12, 14, 19], "make_wrapp": [2, 9], "python_get_sitedir": [2, 3, 8, 9], "part": [2, 3, 4, 5, 8, 9, 12, 13, 14, 15, 18, 20], "That": [2, 16, 20], "fortran_need": 2, "fortran": 2, "fortran_standard": 2, "90": [2, 14], "object": [2, 11, 16, 19], "chemic": 2, "kinet": 2, "thermodynam": 2, "transport": 2, "cantera": 2, "v": [2, 4, 5, 14], "pch": 2, "sundial": 2, "eigen": 2, "libfmt": 2, "cython": [2, 10, 14, 19], "2_pkg_setup": 2, "scons_var": 2, "cc_flag": 2, "cxx_flag": 2, "std": 2, "debug": 2, "getfc": 2, "fortranflag": 2, "optimize_flag": 2, "wno": 2, "inlin": [2, 7, 14], "renamed_shared_librari": 2, "use_pch": 2, "usex": [2, 5, 19], "system_fmt": 2, "system_sundi": 2, "system_eigen": 2, "env_var": 2, "extra_inc_dir": 2, "eigen3": 2, "scons_target": 2, "f90_interfac": 2, "n": [2, 18], "python2_packag": 2, "none": [2, 5, 6, 16], "python3_packag": 2, "python3_cmd": 2, "els": [2, 8, 11, 16], "stage_dir": 2, "libdirnam": 2, "get_libdir": [2, 8], "python_optim": [2, 8, 9], "deal": [2, 7, 8, 10, 15], "sens": 2, "plain": [2, 5, 6, 13], "loop": [2, 5, 18], "autom": 2, "pipelin": [2, 20], "poisson": 2, "boltzmann": 2, "electrostat": 2, "calcul": 2, "poissonboltzmann": 2, "apb": 2, "opal": 2, "openbabel": 2, "zsi": 2, "lang": [2, 8, 11, 12, 19], "swig": [2, 19], "src_prepar": [2, 3, 5, 8, 9, 14, 16, 18], "f": [2, 9], "pyc": [2, 9], "o": [2, 5], "pyo": [2, 9], "delet": [2, 3, 14], "eappli": 2, "patch": [2, 5, 6, 8, 11, 12, 20], "eapply_us": 2, "rm": [2, 3, 5, 9], "rf": 2, "python_copy_sourc": [2, 14], "python_configur": 2, "cat": [2, 5], "build_dir": [2, 3, 9, 14, 20], "build_config": 2, "eof": [2, 5], "eprefix": [2, 5, 8, 9], "max_atom": 2, "10000": 2, "build_pdb2pka": 2, "rebuild_swig": 2, "run_in_build_dir": [2, 8, 14], "python_instal": [2, 3, 14], "cd": [2, 5, 9, 12, 20], "let": [2, 4, 8, 16, 19], "independ": [2, 5, 6, 7, 14, 19], "separ": [2, 5, 6, 7, 8, 11, 14, 15, 18, 20], "presum": 2, "manual": [2, 6, 10, 12], "wider": 2, "target": [2, 5, 8, 9, 11, 12, 15, 19], "rang": [2, 5, 12], "recommend": [2, 5, 7, 12, 13, 14, 15, 16, 18, 19, 20], "gp": [2, 8], "daemon": [2, 8], "usb": [2, 8], "serial": [2, 5, 8, 15], "devic": [2, 8], "map": [2, 5, 6, 8, 15, 18], "client": [2, 8, 9, 11, 14], "gpsd": [2, 8], "mirror": [2, 4, 5, 6, 8, 14, 19, 20], "nongnu": [2, 8], "24": [2, 8, 18, 20], "misc": [2, 8], "pp": [2, 8], "20120407": [2, 8], "myesconsarg": [2, 8], "libdir": [2, 8, 9], "udevdir": [2, 8], "get_udevdir": [2, 8], "chrpath": [2, 8], "gpsd_user": [2, 8], "gpsd_group": [2, 8], "uucp": [2, 8], "manbuild": [2, 8], "use_scon": [2, 8], "sconstruct": [2, 8], "py2": [2, 8, 20], "construct": [2, 4, 8, 19], "pkg_config": 2, "shlinkflag": 2, "destdir": [2, 8, 9], "bundl": [2, 5, 12], "simpl": [2, 5, 7, 13, 14, 17], "impli": [2, 9, 11], "python_req_us": [2, 4, 5, 6, 8, 14, 19], "individu": [2, 5, 11, 18], "applic": [2, 9, 12], "had": 2, "instead": [2, 3, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 20], "no_waf_libdir": 2, "ye": 2, "unit": 2, "framework": [2, 3, 5, 11, 17], "mrzechonek": 2, "tut": 2, "roughli": [2, 9, 12, 13], "ldap": 2, "ldb": 2, "samba": [2, 19], "ftp": [2, 19], "pub": 2, "elibc_freebsd": 2, "libbsd": 2, "popt": 2, "talloc": [2, 19], "tevent": 2, "9": [2, 5, 10, 12, 15, 20], "31": [2, 15], "tdb": 2, "12": [2, 5, 8, 15, 16, 18], "nd": 2, "openldap": 2, "libxslt": 2, "waf_binari": [2, 19], "buildtool": [2, 19], "filesdir": 2, "27": [2, 8], "optional_packag": 2, "myconf": [2, 8], "rpath": 2, "modulesdir": 2, "builtin": 2, "utils_src_configur": [2, 19], "tradition": 3, "python": [3, 6, 17, 18, 20], "organ": 3, "subpackag": [3, 5], "locat": [3, 5], "parent": [3, 9], "directori": [3, 6, 9, 10, 11, 12, 13, 14, 16, 18, 20], "submodul": 3, "repres": [3, 5], "attribut": [3, 10, 16], "session": [3, 20], "addnod": 3, "site": [3, 5, 6, 9, 11, 16, 18, 20], "fine": [3, 5, 12, 16], "start": [3, 5, 6, 11, 12, 15, 16, 20], "problemat": [3, 5, 6, 10, 18], "top": [3, 5, 9, 18], "level": [3, 5, 9, 11, 20], "layout": [3, 6, 13], "wish": [3, 5, 6], "zope": 3, "share": [3, 5], "interfac": [3, 6, 11, 16], "event": [3, 18], "depend": [3, 6, 7, 9, 10, 11, 12, 13, 15, 17], "far": [3, 12, 19], "concern": 3, "entir": [3, 5, 9, 10, 12, 13, 14, 20], "doabl": 3, "real": [3, 18, 20], "we": [3, 4, 6, 8, 11, 12, 14, 15, 17], "freshli": 3, "build": [3, 9, 10, 11, 15, 16, 20], "abl": [3, 15], "tmp": [3, 5, 9, 18, 20], "portag": [3, 8, 12, 14, 15, 18, 20], "python3_8": 3, "traceback": [3, 5, 20], "last": [3, 5], "stdin": 3, "modulenotfounderror": 3, "No": [3, 5], "now": [3, 5, 6, 8, 13, 14, 20], "around": [3, 5, 6, 12, 20], "back": [3, 6, 16], "better": [3, 6, 11, 12, 13, 14], "solut": [3, 5, 15, 16, 20], "unlik": [3, 5, 6, 11, 15], "tradit": 3, "act": 3, "proxi": [3, 14], "strictli": [3, 5, 6, 15, 20], "bound": [3, 11, 16], "permit": [3, 4, 5, 6, 11, 15], "load": [3, 7, 9, 18, 20], "search": [3, 10, 15, 20], "method": [3, 5, 11, 13, 16, 18, 20], "420": 3, "newer": [3, 4, 5, 6, 12, 15, 16], "pkgutil": 3, "standard": [3, 4, 6, 7, 9, 10, 11, 14, 16, 20], "discourag": [3, 6], "earlier": [3, 13], "ignor": [3, 4, 5, 8, 15, 18, 20], "did": [3, 13, 16, 20], "within": [3, 5, 6, 12, 17, 20], "content": [3, 5, 7], "__path__": 3, "__import__": 3, "extend_path": 3, "__name__": 3, "pkg_resourc": [3, 6], "declare_namespac": 3, "altern": [3, 5, 6, 8, 10, 16, 17, 20], "pth": 3, "automat": [3, 4, 5, 6, 10, 12], "inject": [3, 5, 19], "portabl": 3, "topic": [3, 17], "exact": [3, 5, 11, 19], "detect": [3, 5, 9, 15, 20], "recogn": [3, 5, 15, 16], "lack": [3, 9, 20], "action": [3, 5, 15], "distinguish": [3, 5, 13], "veri": [3, 5, 6, 9, 11, 12, 15, 17], "through": [3, 4, 5, 6, 8, 11, 16, 18, 20], "suspici": 3, "less": [3, 15, 20], "ruamel": 3, "miss": [3, 5, 6, 9, 10, 11, 12, 13, 15, 17, 18], "learn": 3, "about": [3, 6, 13, 15], "collis": [3, 5, 20], "namespace_packag": 3, "per": [3, 5], "remov": [3, 4, 5, 6, 11, 12, 13, 14, 15, 18, 20], "tree": [3, 5, 13, 20], "after": [3, 5, 6, 9, 12, 13, 16], "python_compil": 3, "r1_python_compil": [3, 5], "jaraco": [3, 5, 12, 18], "equival": [3, 6, 8, 9, 13], "r1_python_instal": [3, 5], "python_install_al": [3, 5], "r1_python_install_al": [3, 5], "explicit": [3, 4, 5, 6, 19, 20], "rdep": 3, "sed": [3, 5, 8, 14, 15, 18, 20], "i": [3, 5, 6, 7, 11, 12, 14, 16, 18, 20], "r1_src_prepar": [3, 5, 18], "histor": [3, 5, 6, 13, 16], "process": [3, 5, 7, 12, 16, 19], "retir": 3, "major": [4, 5, 6, 11, 12, 15, 20], "avail": [4, 5, 6, 8, 12, 13, 15, 16, 17], "sqlite3": 4, "sqlite": [4, 8], "xdg": 4, "music": 4, "lollypop": 4, "adishatz": 4, "syntax": [4, 10, 11, 15], "lightweight": [4, 5], "password": 4, "backend": [4, 10, 12, 13], "pwman3": 4, "mysql": [4, 14], "postgr": 4, "fulli": [4, 5, 7], "solv": [4, 17], "python_gen_impl_dep": 4, "helper": [4, 5, 7, 10, 14, 19, 20], "2_7": [4, 5], "3_": 4, "travel": 4, "spulec": 4, "freezegun": [4, 18, 20], "pypi": [4, 5, 6, 8, 10, 11, 13], "dateutil": 4, "six": [4, 5, 8], "nose": [4, 5, 20], "distutils_enable_test": [4, 13, 18, 20], "ll": [4, 14], "backport": [4, 6, 10, 12], "zero": [4, 15], "argument": [4, 6, 10, 13, 16, 20], "output": [4, 5, 6, 9, 16, 20], "everi": [4, 5, 6, 8, 12, 14, 15, 16], "escap": [4, 13, 19], "quot": [4, 19], "partial": [4, 5, 9, 10, 13], "python_single_usedep": [4, 5, 13, 19], "cli": [4, 5], "black": 4, "click": 4, "fnmatch": 4, "style": [4, 5, 13, 17, 18, 20], "wildcard": 4, "stdlib": [4, 13, 16], "rememb": [4, 12], "pattern": [4, 12, 13, 19], "prevent": [4, 10, 11, 19, 20], "filenam": [4, 5], "expans": 4, "expand": 4, "zoneinfo": 4, "advantag": [4, 5, 7, 18, 20], "adjust": [4, 9, 11, 16], "switch": [4, 7, 9, 12, 13, 20], "list": [4, 5, 8, 12, 13, 18], "longer": [4, 5, 6, 13], "silent": 4, "updat": [4, 6, 9, 11, 12, 16], "immedi": [4, 5, 19], "becam": [4, 11], "empti": [4, 5], "importlib_metadata": [4, 5, 6, 15], "python3_7": [4, 8], "facilit": [5, 9], "deriv": [5, 6], "notabl": [5, 16], "effici": [5, 15], "oper": [5, 17], "backward": [5, 11, 12, 16], "incompat": [5, 6, 11, 16, 18, 20], "greater": [5, 7], "number": [5, 7, 12, 15, 18], "cost": 5, "flexibl": [5, 7], "wheel": [5, 12, 15, 18], "zip": [5, 6], "stage": [5, 12, 20], "compil": [5, 6, 10, 11, 20], "mere": [5, 7], "imag": [5, 9], "compliant": [5, 7], "invok": [5, 18, 20], "popul": [5, 15], "addition": [5, 9, 11, 14], "pyproject2setuppi": [5, 6, 13], "hack": [5, 6, 7, 13], "reli": [5, 6, 11, 20], "distutils_use_pep517": [5, 13], "legal": 5, "unset": [5, 6], "By": [5, 6, 11], "2022": [5, 13, 18], "xml": [5, 6], "feel": [5, 15], "json": 5, "martinblech": 5, "xmltodict": 5, "mit": [5, 6], "vast": [5, 12], "index": [5, 10], "sdist": [5, 15, 20], "binari": [5, 9, 12], "vc": [10, 20], "mechan": [5, 7, 11], "over": [5, 7, 11, 12, 18, 19, 20], "offici": 5, "instanc": [5, 13], "nonfunct": 5, "append": [5, 14, 15], "uniqu": [5, 14], "suffix": [5, 15], "gh": [5, 20], "request": [5, 8, 10, 15], "distfil": [5, 16, 19], "clearli": [5, 20], "tarbal": [5, 12, 20], "textual": 5, "rich": 5, "implic": 5, "cf": [5, 12], "regener": [5, 12], "anywai": [5, 16], "nevertheless": 5, "even": [5, 8, 9, 11, 18, 20], "pregener": 5, "internet": [5, 10, 18], "nodej": 5, "underli": [5, 6, 7], "txt": [5, 6, 12, 18], "ci": [5, 20], "travi": 5, "yml": 5, "grep": 5, "statement": 5, "indirect": 5, "relev": [5, 6, 13, 17, 18, 20], "unnecessarili": 5, "logic": [5, 6, 12], "long": [5, 11, 12], "quickli": 5, "widest": 5, "avoid": [5, 6, 8, 10, 15, 16, 17, 20], "unpredict": 5, "who": [5, 17], "especi": [5, 7, 18, 20], "distutils_single_impl": [5, 7], "aim": [5, 11, 15, 17], "exist": [5, 10, 11, 12], "rewritten": [5, 19], "layer": [5, 14], "pyroot": 5, "rootpi": 5, "physic": [5, 19], "root_numpi": 5, "pytabl": 5, "termcolor": 5, "determin": [5, 6, 7, 11, 19, 20], "flit_cor": [5, 12], "maintain": [5, 10, 11, 12, 18], "suggest": [5, 8, 13, 17, 18, 20], "tabl": [5, 13, 16, 18], "summar": [5, 16], "use_pep517": 5, "flit_scm": 10, "hatchl": 5, "jupyt": 5, "jupyter_packag": 5, "build_api": 5, "maturin": 5, "see": [5, 9, 16, 18, 20], "below": [5, 8], "pbr": [5, 6], "pdm": [5, 13], "pep517": 5, "sip": [5, 8, 15], "sipbuild": 5, "standalon": [5, 12], "itself": [5, 6, 8, 9, 12, 18], "own": [5, 12, 20], "Their": [5, 6, 9], "fix": [5, 6, 10, 11, 12, 15, 16, 18, 20], "produc": [5, 12, 15], "ident": 5, "artifact": 5, "reduc": 5, "footprint": 5, "isol": 5, "faster": 5, "poetry_cor": 5, "smaller": 5, "40": [5, 12], "incorrect": [5, 6], "intend": [5, 16, 20], "implicit": [5, 14, 20], "fallback": [5, 6], "regular": [5, 7, 20], "pleas": [5, 6, 8, 9, 12, 15, 16, 18, 19, 20], "alwai": [5, 6, 8, 11, 13, 16, 17], "unfortun": [5, 13, 15, 18, 20], "due": [5, 10, 12, 14, 18], "prolong": 5, "larg": [5, 12, 15, 18], "tend": 5, "mistak": [5, 15], "checkout": [5, 12, 20], "abil": [5, 6], "tag": [5, 12, 20], "execut": [5, 6, 7, 9, 11, 12, 13, 14, 20], "143": 5, "_install_setup_requir": 5, "attr": [5, 12], "131": 5, "dist": 5, "dict": [5, 19], "425": 5, "_distribut": 5, "self": [5, 16, 18, 20], "292": 5, "finalize_opt": 5, "717": 5, "ep": 5, "48": 5, "infer_vers": 5, "_get_vers": 5, "config": [5, 9, 12], "148": 5, "parsed_vers": 5, "_do_pars": 5, "110": 5, "rais": 5, "lookuperror": 5, "scm": 5, "unabl": [5, 15, 20], "sure": [5, 18, 20], "re": [5, 8, 15, 20], "intact": 5, "git": [5, 12, 20], "folder": 5, "don": [5, 13], "t": [5, 7, 8, 11, 13, 20], "pip": [5, 12, 20], "proj": 5, "master": [5, 20], "egg": [5, 6, 18], "setuptools_scm_pretend_vers": 5, "static": [5, 8], "write": [5, 6, 7, 12, 17], "hybrid": [5, 10], "expos": [5, 6], "guarante": [5, 6], "taken": [5, 20], "ship": 5, "issu": [5, 6, 13, 15, 16, 18, 20], "forc": [5, 6, 8, 9, 12, 13, 18, 20], "frobnic": 5, "makefil": [5, 14], "jq": 5, "pyx": 5, "unresolv": 5, "regard": 5, "simultan": [5, 11, 17, 20], "link": [5, 7, 9, 16], "editor": 5, "broken": [5, 6, 18, 20], "cryptic": 5, "revers": [5, 7, 12, 15], "miscompil": 5, "panda": 5, "breakag": [5, 20], "dask": [5, 18], "29": 5, "_lib": 5, "hashtabl": 5, "_hashtabl": 5, "tslib": 5, "_tslib": 5, "13": [5, 15, 18, 20], "interv": 5, "init": 5, "30": 5, "convers": [5, 6], "outofboundstimedelta": 5, "localize_pydatetim": 5, "importerror": [5, 6, 10, 11], "38": 5, "x86_64": 5, "undefin": 5, "symbol": 5, "pandas_datetime_to_datetimestruct": 5, "easiest": [5, 15, 19], "workaround": 5, "j1": 5, "origin": [5, 9, 11, 12, 16], "overrid": [5, 9, 14, 20], "extend": [5, 11], "introduc": [5, 11], "src_": 5, "python_": [5, 8], "_all": [5, 8], "compris": 5, "behav": [5, 8], "r1_": 5, "correspond": [5, 12], "python_prepare_al": [5, 18], "each": [5, 6, 7, 11, 14], "foreach": 5, "python_configure_al": 5, "python_compile_al": [5, 8], "python_test_al": 5, "dedic": [5, 6, 14], "chang": [5, 6, 8, 9, 10, 11, 13, 14, 15, 20], "task": [5, 8, 12], "default_src_prepar": 5, "ez_setup": 5, "bootstrap": [5, 6, 10], "end": [5, 6, 7, 9, 12, 14, 18, 20], "dir": [5, 14], "extran": 5, "fixm": 5, "test_pytest_plugin": 5, "test_testcase_no_app": 5, "_": [5, 12, 20], "test_test_util": 5, "pointless": 5, "cov": [5, 18], "addopt": 5, "aiohttp": [5, 18], "r1_python_prepare_al": [5, 18], "duplic": [5, 14, 20], "moment": [5, 12, 13, 15], "modif": 5, "keep": [5, 15, 17], "why": [5, 6, 20], "console_script": [5, 6], "configur": [5, 6, 8, 13, 14, 20], "step": [5, 6, 7, 8, 14], "esetup": [5, 8], "mpi": 5, "distutils_arg": [5, 13], "resourcepath": 5, "compress": 5, "manpag": 5, "distutils_enable_sphinx": [5, 8], "emak": [5, 8, 9], "strongli": [5, 6, 15], "encourag": [5, 15], "testbitvector": 5, "redefin": [5, 18], "too": [5, 12, 20], "collada": 5, "einstalldoc": [5, 8, 14], "docinto": 5, "sample_cod": 5, "docompress": 5, "pf": 5, "main": [5, 9], "manipul": [5, 20], "arrai": 5, "futur": [5, 15], "pillow": 5, "build_ext": [5, 6, 20], "tiff": 5, "webp": 5, "dash": 5, "underscor": [5, 20], "boolean": 5, "disable_tiff": 5, "enable_tiff": 5, "disable_webp": 5, "enable_webp": 5, "modifi": [5, 6, 11, 15, 20], "beforehand": 5, "econf": [5, 19], "paremet": 5, "find_packag": 5, "wrongli": [5, 16, 20], "grab": [5, 13], "attempt": [5, 16, 20], "forbidden": 5, "exclud": 5, "paramet": [5, 8, 16], "properli": [5, 6, 13], "intermedi": 5, "minim": [5, 11, 15], "precis": [5, 8, 9], "catch": 5, "earli": [5, 7, 8, 12], "anywher": 5, "first": [5, 6, 10, 11, 12, 15, 16, 18, 20], "easi": [5, 16, 20], "whitelist": 5, "sanit": [5, 16], "mozilla": 5, "bleach": 5, "webencod": 5, "unittest": [5, 11, 20], "discoveri": [5, 18, 20], "univers": 5, "encod": [5, 16], "detector": 5, "chardet": [5, 8], "cygwin": [5, 6], "hypothesi": [5, 20], "bottom": 5, "venv": [5, 6, 13], "temporari": [5, 6], "frequent": [5, 18], "littl": [5, 6, 18], "skip": [5, 8, 10, 12, 16], "those": [5, 6, 8, 9, 18, 20], "how": [5, 20], "statist": 5, "want": [5, 6, 8], "across": 5, "irrelev": [5, 20], "pep8": 5, "pycodestyl": 5, "flake8": [5, 18], "thin": [5, 6], "alreadi": [5, 9, 12, 14, 15], "close": 5, "pre": 5, "post": [5, 6, 13, 15], "easili": [5, 14, 18, 20], "r1_src_test": 5, "cmd": 5, "cmd2": 5, "colorama": 5, "pyperclip": 5, "wcwidth": 5, "text": [5, 8], "column": 5, "80": 5, "fact": [5, 20], "simpli": [5, 15, 16, 17, 20], "3_6": [5, 14], "3_7": [5, 14], "3_8": 5, "tab": [5, 15], "argpars": 5, "argcomplet": 5, "fish": 5, "tcsh": 5, "rel": [5, 18, 20], "epytest": [5, 6, 8, 12, 18, 20], "network": [5, 6, 18, 20], "marker": [5, 10], "m": [5, 15, 18, 20], "displai": 5, "appeas": 5, "usng": 5, "xvfb": 5, "server": [5, 20], "virtx": 5, "nonfat": 5, "termin": [5, 20], "context": [5, 19], "come": [5, 13, 18], "theme": [5, 6, 8], "hard": [5, 8, 12], "To": [5, 6, 8, 9, 12, 16, 18, 19], "conf": [5, 6], "ext": 5, "distutils_use_setuptool": [5, 13], "color": 5, "stream": 5, "handler": 5, "log": 5, "coloredlog": 5, "xolox": 5, "readthedoc": 5, "en": 5, "latest": [5, 15], "humanfriendli": 5, "expert": [5, 10, 14, 20], "uncommon": 5, "third": [5, 7, 13], "parti": 5, "inflect": 5, "word": 5, "jazzband": 5, "rst": 5, "linker": [5, 9], "alabast": [5, 6], "python_target": [5, 7, 8, 11, 12], "inspect": 5, "omit": [5, 15, 16], "port": [5, 8, 10], "pyseri": 5, "psf": 5, "tri": 5, "been": [5, 6, 8, 11, 12, 13, 14, 16, 18], "assumpt": 5, "consum": [5, 6, 20], "distutils_opt": 5, "alter": [5, 18], "distutils_dep": 5, "dependneci": 5, "r1_src_compil": 5, "r1_src_instal": 5, "primari": [5, 18], "alongsid": [5, 6], "libfoo": 5, "r1_src_configur": 5, "setuptools_rust": 5, "ecosystem": [5, 15, 17], "bump": [5, 12, 15], "lock": 5, "Then": [5, 12], "crate": 5, "cargo_opt": 5, "url": [5, 16], "cargo_crate_uri": 5, "qa_flags_ignor": 5, "posit": [5, 15], "cflag": [5, 9, 20], "cargo_src_unpack": 5, "inflector": 5, "alias": [5, 16], "asn1": 5, "asn1_der": 5, "_rust": 5, "src_unpack": 5, "benefit": [5, 7], "yet": [5, 8, 12, 19], "cyclic": 5, "suppos": [5, 16], "overlap": 5, "machineri": 5, "op": 5, "unless": [5, 6, 8, 15], "merg": 5, "toward": 5, "effect": [5, 8, 11], "pick": [5, 12], "up": [5, 6, 9, 12, 13, 14, 15, 17, 18, 20], "hukkin": 5, "tomli": [5, 12, 15], "pythonhost": 5, "py3": [5, 18], "whl": 5, "unzip": 5, "deliber": 5, "unpack": 5, "gpep517": 5, "python_newscript": [5, 9], "__main__": [5, 20], "exit": [5, 16, 20], "fragment": [5, 16], "emesonarg": 5, "dlint": 5, "meson_src_configur": 5, "meson_src_compil": 5, "meson_src_test": 5, "meson_src_instal": 5, "here": [6, 8, 14, 19], "direct": [6, 14], "convert": [6, 8, 13], "facil": 6, "right": [6, 7], "fit": [6, 20], "profil": [6, 15], "pyproject2toml": 6, "misbehav": 6, "subsequ": 6, "qa": [6, 9, 17], "expect": [6, 18, 20], "sidebar": 6, "bitprophet": 6, "snippet": [6, 16], "except": [6, 7, 9, 11, 12, 16], "pm": 6, "cleanli": [6, 12], "condit": [6, 10, 12, 18, 20], "leav": 6, "never": [6, 11, 13], "clean": [6, 12, 13], "requier": 6, "With": [6, 20], "themselv": [6, 18, 20], "entry_point": [6, 18], "dictionari": [6, 19], "our": [6, 12, 18, 20], "interest": [6, 8, 20], "gui_script": 6, "meaning": 6, "importlib": [6, 11, 20], "fall": [6, 16], "remind": 6, "distutils_strict_entry_point": 6, "trigger": [6, 18, 20], "wrong": [6, 13, 15], "leftov": 6, "resourc": [6, 11, 12], "submit": 6, "suppli": 6, "heavi": 6, "speak": [6, 11], "known": [6, 16, 20], "limit": [6, 12, 15, 17], "address": [6, 12, 16], "definit": 6, "subdirectori": [6, 9], "interspers": 6, "closest": 6, "inplac": 6, "shift": [6, 11], "throughout": 6, "2to3": 6, "distutils_in_source_build": 6, "collect": [6, 18, 20], "pypa": 6, "riscv": [6, 8, 19], "pythonpath": [6, 20], "distutils_install_for_test": [6, 13, 18, 20], "alik": [6, 7, 11, 13], "preserv": [6, 11], "extrem": 6, "home": [6, 12, 13], "went": 6, "awai": [6, 7], "python_test": [6, 8, 9, 12, 18, 20], "total": 7, "rare": [7, 9, 18, 20], "simpler": 7, "complex": [7, 19], "primarili": [7, 11], "involv": [7, 8, 13], "graph": [7, 12], "meet": 7, "potenti": [7, 12, 15, 16, 18], "basi": 7, "occur": [7, 18], "libpython": [7, 16], "aforement": [7, 13, 16], "foo": [7, 16], "wise": 7, "abstract": [7, 14], "scon": [7, 8, 10], "second": [7, 13], "easier": 7, "select": [7, 8, 18, 19], "allow": [7, 20], "repeat": [7, 14, 15], "model": 7, "libboost_python": 7, "python_single_target": [7, 11, 12], "Its": [7, 12], "legaci": [7, 10, 13, 16], "power": 8, "harder": 8, "ninja": [8, 15], "train": 8, "opposit": [8, 11, 13], "investig": 8, "human": 8, "beings": 8, "socks5": 8, "ssl": 8, "certifi": [8, 15], "2017": 8, "17": 8, "idna": 8, "urllib3": [8, 12], "26": 8, "pysock": 8, "cryptographi": [8, 15], "pyopenssl": 8, "14": [8, 20], "httpbin": [8, 18], "hang": 8, "continu": [8, 12, 20], "python_gen_useflag": 8, "out": [8, 9, 10, 11, 12, 13, 14, 15], "toolkit": 8, "translat": 8, "format": [8, 12, 15, 16], "subtitl": 8, "pydiff": 8, "iso": 8, "lxml": 8, "pycountri": 8, "18": 8, "levenshtein": 8, "devel": 8, "gettext": 8, "video": 8, "gaupol": 8, "riverbankcomput": 8, "intro": 8, "sip_api_major_nr": 8, "siplib": 8, "h": [8, 9, 19], "bison": 8, "flex": 8, "prepar": [8, 9, 19], "bindir": 8, "incdir": 8, "python_get_includedir": [8, 9, 13], "echo": 8, "distutils_all_subphase_impl": 8, "python3_5": 8, "bzip2": 8, "epydoc": 8, "eselect": 8, "elibc_glibc": 8, "sandbox": [8, 20], "kernel_linux": 8, "pax": 8, "rsync": 8, "userland_gnu": 8, "coreutil": 8, "sphinx_rtd_them": 8, "practic": [8, 11, 12], "big": 8, "imagin": 8, "anymor": [8, 11], "downgrad": 8, "though": [8, 12], "resembl": [8, 18], "presenc": [8, 18], "activ": [8, 17], "behavior": [8, 11, 16], "goal": [8, 12, 20], "side": [8, 11], "someth": [8, 9, 20], "accord": 8, "integr": [8, 9, 10, 11], "won": 8, "reject": [8, 15, 16], "unsupport": [8, 11], "python_is_python3": [8, 13], "basic": [9, 10, 20], "reus": 9, "four": [9, 13, 19], "python_doex": 9, "python_newex": 9, "python_doscript": [9, 14, 19], "recurs": [9, 15, 18], "python_dohead": 9, "python_scriptinto": 9, "affect": [9, 14], "symlink": 9, "onto": 9, "improv": [9, 11, 17], "cropgtk": 9, "sbin": 9, "pynslcd": 9, "anyth": 9, "land": 9, "my_pn": 9, "doin": 9, "libimag": 9, "env": [9, 12], "python_fix_shebang": 9, "sphinxtrain": 9, "openvpn": 9, "vulnkei": 9, "insinto": 9, "kitti": 9, "speed": 9, "nowadai": [9, 12, 13], "pypy2": [9, 11, 12], "_feedparser_sgmllib": 9, "lib64": 9, "byte_compil": 9, "cmake_src_instal": 9, "entropi": 9, "ocassion": 9, "bad": [9, 16], "seri": 9, "getter": [9, 13, 16], "python_get_scriptdir": 9, "python_get_library_path": [9, 13], "python_get_cflag": 9, "preprocessor": 9, "pkg": 9, "python_get_lib": 9, "python_get_python_config": 9, "offset": 9, "mycmakearg": [9, 13, 19], "dpython_dest": 9, "dpython_execut": 9, "dpython_include_dir": 9, "dpython_librari": 9, "cmake_src_configur": [9, 19], "pyinc": 9, "pylib": 9, "micha\u0142": 10, "g\u00f3rny": 10, "creativ": 10, "intern": 10, "prefac": 10, "choos": [10, 11, 14], "overview": 10, "variant": [10, 11, 16, 18], "snapshot": [10, 20], "parallel": 10, "race": 10, "command": [10, 14, 15, 18], "usag": 10, "rust": 10, "cargo": 10, "variat": 10, "vs": [10, 13], "byte": [10, 16], "queri": [10, 16], "advanc": 10, "cffi": 10, "greenlet": [10, 18], "checklist": 10, "abort": 10, "assert": 10, "recip": 10, "xdist": [10, 12, 20], "autoload": 10, "typeerror": 10, "_make_test_flaki": 10, "got": [10, 13], "unexpect": 10, "rerun": 10, "importpathmismatcherror": 10, "fixtur": [10, 12], "namespac": [10, 18], "disjoint": 10, "waf": [10, 19], "tip": [10, 20], "retroact": 10, "migrat": 10, "mainten": 10, "co": [10, 20], "life": 10, "cycl": 10, "page": [10, 16, 17], "increment": 11, "minor": [11, 20], "plan": 11, "On": 11, "hand": [11, 13], "platform": [11, 16, 20], "linux_distribut": 11, "window": 11, "hous": 11, "rpython": 11, "lot": [11, 15], "good": [11, 17, 18, 20], "gc": 11, "jython": 11, "java": 11, "stand": 11, "alon": 11, "bidirect": 11, "interact": 11, "slow": 11, "pace": 11, "ironpython": 11, "brython": 11, "web": 11, "javascript": 11, "dom": 11, "micropython": 11, "microcontrol": 11, "down": 11, "hardwar": 11, "tauthon": 11, "accompani": 11, "nor": [11, 17], "ideal": [11, 15, 20], "funcsig": 11, "signatur": [11, 16], "afterward": [11, 14, 15], "becom": [11, 12, 16], "later": 11, "lzma": 11, "compet": 11, "amount": [11, 12, 20], "ipaddress": 11, "drop": [11, 16], "box": [11, 13], "hexvers": [11, 20], "0x03030000": 11, "remain": [11, 13], "trolliu": 11, "asyncio": [11, 18, 20], "nativ": 11, "understood": 12, "stabl": [12, 15], "mask": [12, 15], "readi": [12, 15], "stabil": 12, "inconsist": [12, 20], "repeatedli": 12, "ask": [12, 15], "push": 12, "forward": 12, "eventu": 12, "slowli": [12, 15], "discontinu": 12, "next": [12, 15, 18], "nears": 12, "obsolet": [12, 13], "live": 12, "team": [12, 15], "unmask": 12, "announc": 12, "date": [12, 15, 17, 20], "thing": [12, 13, 17, 18], "progress": 12, "decid": [12, 18], "somewher": 12, "aggress": 12, "reach": [12, 15], "clear": [12, 15], "pursu": 12, "kept": 12, "secur": 12, "workflow": 12, "clone": 12, "remot": [12, 20], "fetch": 12, "rebas": 12, "v3": 12, "cherri": 12, "upload": 12, "mkdir": 12, "scp": 12, "precompil": 12, "unusu": 12, "structur": [12, 20], "ex": 12, "technic": 12, "docker": 12, "binpkg": 12, "diff": 12, "relat": [12, 13, 20], "mgorni": 12, "desc": 12, "_python_all_impl": 12, "_python_verify_pattern": 12, "_python_set_impl": 12, "_python_impl_match": 12, "python_pkg_dep": 12, "gpyutil": [12, 15], "circular": 12, "eas": [12, 15], "temporarili": [12, 13], "python3_11": 12, "20": 12, "pwd": 12, "round": 12, "signific": [12, 18], "remaind": 12, "pydant": 12, "epytest_deselect": [12, 18], "test_comparison": 12, "test_close_to_now_": 12, "lenient": 12, "deselect": [12, 18, 20], "unblock": 12, "100": 12, "emerg": 12, "previous": 12, "reinstal": 12, "batch": 12, "focus": 12, "reenabl": [12, 18], "face": [12, 20], "goe": [12, 20], "unbundl": 12, "obligatori": [12, 15], "baselin": 12, "ones": 12, "chosen": 12, "fewest": 12, "vendor": [12, 13], "februari": 13, "gross": 13, "serv": 13, "placehold": 13, "transit": [13, 15], "period": [13, 15], "ban": 13, "python_multi_usedep": 13, "know": [13, 16, 20], "given": 13, "repoman": 13, "pkgcheck": 13, "tell": 13, "chose": 13, "reorder": 13, "desir": [13, 16, 20], "scan": 13, "unmatch": 13, "trial": 13, "stuff": 13, "privat": 13, "python_export": 13, "python_wrapper_setup": 13, "python_gen_usedep": 13, "mydistutilsarg": 13, "renam": [13, 16], "cleanup": 13, "python_gen": 13, "march": 13, "python_get": 13, "python_includedir": 13, "python_libpath": 13, "dpython3_include_dir": 13, "dpython3_librari": 13, "sundri": 13, "stop": [13, 16], "realli": [13, 15, 18, 20], "ugli": 13, "sole": 13, "uppercas": 13, "fourth": 13, "cruft": 13, "short": [13, 18], "made": [13, 14, 16, 19], "evalu": 13, "januari": 13, "safe": 13, "streamlin": 13, "inde": 13, "foundat": 14, "fionet": 14, "psql": 14, "cach": 14, "sourceforg": [14, 19], "replic": 14, "tgz": 14, "libcangji": 14, "cangjian": 14, "i18n": 14, "eautoreconf": [14, 16], "econf_sourc": 14, "la": 14, "multibuild": 14, "unnecessari": [14, 15, 19, 20], "libtool": 14, "buggi": 14, "canva": 14, "widget": 14, "gtk": 14, "cairo": 14, "2d": 14, "draw": 14, "goocanva": 14, "subdir": 14, "am": 14, "gnome2_src_prepar": 14, "gnome2_src_configur": 14, "gnome2_src_instal": 14, "sub_instal": 14, "gi": 14, "_overridesdir": 14, "outsid": [14, 19], "routin": [10, 14], "qemu": 14, "kernel": 14, "machin": 14, "userland": 14, "kvm": 14, "qemu_python_instal": 14, "vmxcap": 14, "qmp": 14, "ga": 14, "eol": 15, "proactiv": 15, "anticip": 15, "soon": 15, "mark": [15, 18, 20], "wide": [15, 20], "revis": 15, "newli": 15, "risk": 15, "break": [15, 16], "feasibl": 15, "manpow": 15, "member": 15, "prematur": 15, "gemato": 15, "carri": 15, "compar": [15, 16], "think": 16, "ve": 16, "hit": 16, "me": 16, "18_p9": 16, "13_p3": 16, "10_p3": 16, "9_p2": 16, "4_p1": 16, "urllib": 16, "pars": 16, "exploit": 16, "verbatim": 16, "worm": 16, "danger": 16, "worst": [16, 20], "unpars": 16, "django": [16, 20], "pr": 16, "14349": 16, "impact": 16, "urlpars": 16, "nurl": 16, "parseresult": 16, "scheme": 16, "netloc": 16, "param": [16, 18], "badurl": 16, "what": 16, "attributeerror": 16, "492": 16, "decor": [16, 20], "async": [16, 18], "def": [16, 18, 20], "yield": 16, "await": 16, "sleep": 16, "callabl": 16, "mostli": [16, 17], "getfullargspec": 16, "p1": 16, "p2": 16, "kp3": 16, "kp4": 16, "kp5": 16, "arg": 16, "kwarg": 16, "argspec": 16, "vararg": 16, "fullargspec": 16, "varkw": 16, "kwonlyarg": 16, "kwonlydefault": 16, "annot": 16, "tupl": 16, "hold": 16, "int": 16, "str": 16, "float": 16, "k6": 16, "k7": 16, "k8": 16, "One": [16, 20], "prototyp": 16, "bar": 16, "pretti": 16, "spec": [15, 16], "stringif": 16, "automak": 16, "16": 16, "exec_prefix": 16, "met": 16, "pkg_config_path": 16, "python_cflag": 16, "python_lib": 16, "man": 16, "autoreconf": 16, "throw": 16, "get_python_inc": 16, "get_path": 16, "platinclud": 16, "get_python_lib": 16, "purelib": 16, "platlib": 16, "platstdlib": 16, "todai": 16, "encodebyt": 16, "decodebyt": 16, "contrari": 16, "ought": 16, "unicod": 16, "version_info": 16, "b64_encodebyt": 16, "b64encod": 16, "b64decod": 16, "insert": 16, "newlin": 16, "length": 16, "until": 16, "emb": 16, "lpython3": 16, "7m": 16, "among": 17, "beyond": 17, "reliabl": [17, 20], "deep": 17, "beginn": 17, "peopl": 17, "suboptim": 17, "improp": 17, "fill": 17, "gap": 17, "welcom": 17, "whole": [18, 20], "parametr": 18, "epytest_ignor": 18, "test_client": 18, "test_gener": 18, "test_filenam": 18, "test_transport": 18, "test_transport_work": 18, "eventlet": 18, "test_contextvar": 18, "test_leak": 18, "might": 18, "intent": 18, "Not": 18, "collid": [18, 20], "instabl": 18, "unstabl": 18, "discret": 18, "justifi": 18, "semi": 18, "random": 18, "multiprocess": 18, "finish": 18, "01": 18, "chanc": 18, "experienc": 18, "insuffici": 18, "nest": 18, "envvar": 18, "pytest_disable_plugin_autoload": 18, "pytest_plugin": 18, "comma": 18, "looponfail": 18, "pytest_fork": 18, "flaki": [18, 20], "rerunfailur": 18, "supposedli": 18, "twice": 18, "_pytest": [18, 20], "pathlib": [18, 20], "posixpath": 18, "confus": [15, 18], "signifi": 18, "event_loop": 18, "freezer": 18, "mocker": 18, "captur": [18, 20], "summari": 18, "asgiref": 18, "sync": [15, 18], "135": 18, "test_loc": 18, "test_sync": 18, "test_sync_contextvar": 18, "deprecationwarn": 18, "main_event_loop": 18, "get_event_loop": 18, "filterwarn": 18, "fatal": [18, 20], "_____________________": 18, "______________________": 18, "577": 18, "asgitest": 18, "testcas": 18, "583": 18, "test_wrapped_case_is_collect": 18, "interrupt": 18, "world": 18, "plot": 19, "voacap": 19, "propag": 19, "predict": 19, "qsl": 19, "hz1jw": 19, "pythonprop": 19, "basemap": 19, "gtk2": 19, "doubl": 19, "energi": 19, "yoda": 19, "hepforg": 19, "use_en": 19, "pyext": 19, "extra_opt": 19, "give": 19, "sound": 19, "signal": [19, 20], "composit": 19, "csound": 19, "fordfrog": 19, "dbuild_python_interfac": 19, "dbuild_python_opcod": 19, "superset": 19, "arab": 19, "arabey": 19, "duali": 19, "pyduali": 19, "dict2db": 19, "trans2arab": 19, "arabic2tran": 19, "domain": 20, "firstli": 20, "idea": 20, "nosetest": 20, "secondli": 20, "strict": 20, "thirdli": 20, "readabl": 20, "wholli": 20, "spew": 20, "seem": 20, "equal": [15, 20], "ceas": 20, "downstream": 20, "convinc": 20, "preced": 20, "area": 20, "____________________": 20, "systemd": 20, "test_login": 20, "234": 20, "hint": 20, "578": 20, "_importtestmodul": 20, "mod": 20, "import_path": 20, "fspath": 20, "importmod": 20, "524": 20, "import_modul": 20, "module_nam": 20, "127": 20, "_bootstrap": 20, "_gcd_import": 20, "frozen": 20, "1014": 20, "991": 20, "_find_and_load": 20, "975": 20, "_find_and_load_unlock": 20, "671": 20, "_load_unlock": 20, "rewrit": 20, "170": 20, "exec_modul": 20, "__dict__": 20, "login": 20, "r2": 20, "discov": 20, "pyarg": 20, "guess": 20, "quick": 20, "mayb": 20, "eunittest": 20, "confirm": 20, "whom": 20, "myself": 20, "subtl": 20, "lead": 20, "But": 20, "bewar": 20, "unexpectedli": 20, "test_start_params_bug": 20, "xfail": 20, "statsmodel": 20, "tsa": 20, "test_arima": 20, "horrend": 20, "disk": 20, "space": 20, "mayhem": 20, "5a": 20, "test_null_byt": 20, "skipif": 20, "0x03000000": 20, "unconditioanlli": 20, "test_babel_with_language_": 20, "test_build_latex": 20, "test_polyglossia_with_language_": 20, "altogeth": 20, "replai": 20, "devmanu": 20, "explan": 20, "connect": 20, "pygit2": 20, "no_network": 20, "properti": 20, "test_network": 20, "allow_test": 20, "unclear": 20, "backtrac": 20, "pluggi": 20, "cachedir": 20, "pytest_cach": 20, "rootdir": 20, "var": 20, "sabyenc": 20, "configfil": 20, "item": 20, "test_decod": 20, "test_crc_pickl": 20, "54": 20, "test_empty_size_pickl": 20, "0x00007f748bc47740": 20, "testsupport": 20, "74": 20, "sabyenc3_wrapp": 20, "119": 20, "180": 20, "pytest_pyfunc_cal": 20, "caller": 20, "187": 20, "_multical": 20, "temp": 20, "2934": 20, "66": 20, "dump": 20, "vv": 20, "34": 20, "23": [15, 20], "timeout": 20, "25": 20, "sabyenc3": 20, "596": 20, "decode_usenet_chunk": 20, "pybytearray_check": 20, "pylist_getitem": 20, "py_input_list": 20, "lp": 20, "0x00007fb5db746740": 20, "73": 20, "117": 20, "87": 20, "lambda": 20, "runpi": 20, "85": 20, "_run_cod": 20, "193": 20, "_run_module_as_main": 20, "initi": 20, "reproduc": 20, "ubuntu": 20, "dndebug": 20, "leak": 20, "o0": 20, "isort": 20, "distutils_pep517_instal": 20, "destin": 20, "cp": 20, "pushd": 20, "null": 20, "popd": 20, "hatch": 10, "aris": 20, "mesonpi": 5, "conflict": 15, "httpcore": 15, "15": 15, "httpx": 15, "sphobjinv": 15, "28": 15, "openapi": 15, "cx": 15, "freez": 15, "patchelf": 15, "60": 15, "59": 15, "62": 15, "pin": 15, "pend": 15, "dirti": 15, "filetyp": 15, "mercuri": 15, "node": 15, "semver": 15, "pyqt": 15, "builder": 15, "pyqt5": 15, "pyqtwebengin": 15, "rout": 15, "dev20220522": 15, "selenium": 15, "141": 15, "sphinxcontrib": 15, "websupport": 15, "dev20220515": 15, "uri": 15, "watchfil": 15, "watchgod": 15, "dev0": 15, "pip3": 15, "sign": 15, "tag_build": 15, "tempest": 15, "oslo": 15, "stestr": 15, "versioningit": 15, "wstool": 15, "monitor": 10, "histori": 15, "rss": 15, "comprehens": 15, "opml": 15, "followup": 15, "track": 15, "mail": 15, "suscept": 15}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"python": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "ani": [0, 8], "r1": [0, 2, 5, 6, 7, 8, 13, 14, 19], "build": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 19], "time": [0, 2, 7, 8, 14, 19], "depend": [0, 1, 2, 4, 5, 8, 14, 18, 19, 20], "basic": [0, 1, 5, 19], "us": [0, 2, 3, 4, 5, 6, 7, 8, 14, 18, 19], "uncondit": [0, 19], "condit": [0, 2, 4, 5, 14, 19], "addit": [0, 5, 14], "multipl": [0, 11, 19], "set": [0, 8], "common": [1, 9], "python_compat": 1, "python_dep": 1, "python_required_us": 1, "environ": [1, 20], "packag": [1, 2, 3, 5, 6, 7, 12, 14, 15, 16, 19, 20], "The": [1, 5], "most": 1, "type": 1, "find": 1, "list": [1, 15, 16], "from": [1, 5, 13], "system": [1, 2, 5, 6, 12], "integr": [2, 5], "written": 2, "meson": 2, "scon": 2, "extra": [2, 20], "singl": [2, 5, 7, 13, 19], "impl": [2, 7, 14, 19], "instal": [2, 5, 6, 9, 14, 15, 19, 20], "pure": [2, 14], "multi": [2, 7, 14], "hybrid": [2, 19], "waf": 2, "advanc": [3, 4], "concept": [3, 6], "namespac": 3, "hierarch": 3, "structur": 3, "determin": 3, "whether": 3, "ar": 3, "ad": [3, 5, 12, 15], "new": [3, 12, 15], "gentoo": [3, 10], "legaci": [3, 5, 6], "request": 4, "flag": 4, "interpret": [4, 8, 11, 12], "version": [4, 11, 15], "cffi": 4, "greenlet": 4, "distutil": [5, 6, 7, 8, 16], "standard": 5, "pep": [5, 13, 20], "517": [5, 13, 20], "mode": [5, 20], "sourc": [5, 6], "archiv": 5, "variant": 5, "deprec": [5, 16], "backend": 5, "flit": 5, "buildapi": 5, "poetri": 5, "masonri": 5, "api": [5, 8], "setuptool": [5, 6], "build_meta": 5, "__legacy__": 5, "setuptools_scm": 5, "snapshot": 5, "cython": 5, "parallel": [5, 18], "race": 5, "sub": 5, "phase": 5, "function": [5, 9], "python_prepar": 5, "python_configur": 5, "python_compil": 5, "python_test": 5, "python_instal": 5, "pass": 5, "argument": [5, 18], "setup": 5, "py": 5, "call": 5, "custom": 5, "command": 5, "prevent": 5, "test": [5, 6, 15, 18, 20], "directori": 5, "being": 5, "enabl": 5, "distutils_enable_test": 5, "more": 5, "befor": [5, 6], "run": [5, 18], "undesir": 5, "pytest": [5, 18], "virtualx": 5, "document": 5, "via": [5, 15], "sphinx": 5, "autodoc": 5, "extens": [5, 20], "without": 5, "option": 5, "usag": [5, 8], "rust": 5, "cargo": 5, "manual": [5, 14, 19], "build_dir": 5, "d": 5, "non": 5, "differ": [6, 8], "variat": 6, "distutils_use_setuptool": 6, "entri": 6, "point": 6, "other": [6, 18], "runtim": [6, 7, 19], "pyproject": 6, "toml": 6, "base": [6, 16, 18], "project": [6, 15], "In": 6, "vs": [6, 7], "out": 6, "choos": [7, 20], "between": 7, "eclass": [7, 12], "overview": 7, "first": 7, "expert": [8, 18], "partial": 8, "restrict": 8, "implement": [8, 9, 11, 12, 15], "python_setup": 8, "disjoint": 8, "regular": 8, "combin": 8, "helper": 9, "fix": 9, "shebang": 9, "script": 9, "byte": 9, "compil": 9, "modul": 9, "queri": 9, "inform": 9, "guid": [10, 13], "content": 10, "indic": 10, "tabl": 10, "altern": 11, "support": [11, 15], "backport": 11, "mainten": [12, 15], "life": 12, "cycl": 12, "note": 12, "specif": 12, "cpython": 12, "patchset": 12, "pypi": [12, 15, 20], "profil": 12, "chang": [12, 16], "port": [12, 15, 16], "initi": 12, "bootstrap": 12, "migrat": 13, "old": 13, "python_usedep": 13, "syntax": 13, "eapi": [13, 15], "7": 13, "8": [13, 16], "autotool": 14, "2": 15, "which": 15, "exist": 15, "can": 15, "co": 15, "maintain": 15, "tip": 16, "retroact": 16, "bpo43882": 16, "urlsplit": 16, "now": 16, "strip": 16, "lf": 16, "cr": 16, "ht": 16, "charact": 16, "3": 16, "11": 16, "gener": 16, "coroutin": 16, "remov": 16, "asyncio": 16, "inspect": 16, "getargspec": 16, "formatargspec": 16, "10": 16, "configur": 16, "No": 16, "1": 16, "found": [16, 18], "sysconfig": 16, "9": 16, "base64": 16, "encodestr": 16, "decodestr": 16, "config": 16, "pkg": 16, "longer": 16, "librari": 16, "default": 16, "prefac": 17, "recip": 18, "skip": [18, 20], "marker": 18, "path": 18, "name": 18, "avoid": 18, "runner": [18, 20], "xdist": 18, "plugin": 18, "explicitli": 18, "disabl": 18, "automat": 18, "autoload": 18, "entir": 18, "typeerror": 18, "_make_test_flaki": 18, "got": 18, "an": 18, "unexpect": 18, "keyword": 18, "rerun": 18, "importpathmismatcherror": 18, "fixtur": 18, "warn": 18, "A": 19, "resolv": 20, "suit": 20, "problem": 20, "correct": 20, "miss": 20, "file": 20, "importerror": 20, "c": 20, "checklist": 20, "deal": 20, "failur": 20, "problemat": 20, "requir": 20, "internet": 20, "access": 20, "abort": 20, "due": 20, "assert": 20, "flit_scm": 5, "hatch": 5, "vc": 5, "routin": 15, "check": 15, "pip": 15, "outdat": 15, "gpy": 15, "verifi": 15, "dep": 15, "monitor": 15, "releas": 15, "feed": 15, "repolog": 15}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}}) \ No newline at end of file
diff --git a/guide/single.html b/guide/single.html
index ab369b3..43c0b77 100644
--- a/guide/single.html
+++ b/guide/single.html
@@ -392,7 +392,7 @@ can be installed via one of the installation helpers.</p>
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
diff --git a/guide/test.html b/guide/test.html
index d9127b5..c74ae2e 100644
--- a/guide/test.html
+++ b/guide/test.html
@@ -472,7 +472,7 @@ into it for the purpose of testing. Note that <code class="docutils literal not
&copy;2020, Michał Górny, license: CC BY 4.0.
|
- Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.1</a>
+ Powered by <a href="http://sphinx-doc.org/">Sphinx 5.0.2</a>
&amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|