summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2023-06-04 08:49:15 +0200
committerMichał Górny <mgorny@gentoo.org>2023-06-04 08:49:15 +0200
commita53c51cab58aa3337607f559607eddc9d927575c (patch)
tree2fb5a8feec23b1c0cdcab46b8c0754ebccf83396
parentUpdate release feeds (diff)
downloadpython-a53c51cab58aa3337607f559607eddc9d927575c.tar.gz
python-a53c51cab58aa3337607f559607eddc9d927575c.tar.bz2
python-a53c51cab58aa3337607f559607eddc9d927575c.zip
Update Guide to 4c11901
Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--guide/_sources/distutils.rst.txt18
-rw-r--r--guide/distutils.html66
-rw-r--r--guide/genindex.html48
-rw-r--r--guide/index.html2
-rw-r--r--guide/searchindex.js2
5 files changed, 81 insertions, 55 deletions
diff --git a/guide/_sources/distutils.rst.txt b/guide/_sources/distutils.rst.txt
index e415192..39932d8 100644
--- a/guide/_sources/distutils.rst.txt
+++ b/guide/_sources/distutils.rst.txt
@@ -117,7 +117,8 @@ files. This has some implications, notably:
1. If the package uses setuptools_scm or a similar package, the version
string needs to be provided explicitly,
- cf. `setuptools_scm (flit_scm, hatch-vcs) and snapshots`_.
+ cf. `setuptools_scm (flit_scm, hatch-vcs, pdm-backend)
+ and snapshots`_.
2. If the package uses Cython, the C files need to be generated
and an explicit ``BDEPEND`` on ``dev-python/cython`` needs to
@@ -261,6 +262,7 @@ meson-python dev-python/meson-python mesonpy
no (none) (none, see below)
pbr dev-python/pbr pbr
pdm dev-python/pdm-pep517 pdm.pep517.api
+pdm-backend dev-python/pdm-backend pdm.backend
poetry dev-python/poetry-core poetry.core.masonry.api
setuptools dev-python/setuptools setuptools.build_meta
setuptools.__legacy__.build_meta
@@ -283,12 +285,13 @@ for them.
.. index:: SETUPTOOLS_SCM_PRETEND_VERSION
+.. index:: PDM_BUILD_SCM_VERSION
.. index:: flit_scm
.. index:: hatch-vcs
.. index:: setuptools_scm
-setuptools_scm (flit_scm, hatch-vcs) and snapshots
-==================================================
+setuptools_scm (flit_scm, hatch-vcs, pdm-backend) and snapshots
+===============================================================
setuptools_scm_ is a package providing additional features for running
inside a VCS checkout, in particular the ability to determine version
from VCS tags. However, this works correctly only when the package
@@ -336,9 +339,18 @@ of setuptools_scm. The same approach applies to both of them.
data files. Please take special care to verify that all files are
installed.
+The pdm-backend_ package reinvents its own SCM version support,
+and unlike setuptools_scm, it uses ``0.0.0`` rather than throwing
+an error when the version cannot be determined. The override for this
+backend can be set using a similarly purposed environment variable::
+
+ export PDM_BUILD_SCM_VERSION=${PV}
+
+
.. _setuptools_scm: https://pypi.org/project/setuptools-scm/
.. _flit_scm: https://pypi.org/project/flit_scm/
.. _hatch-vcs: https://pypi.org/project/hatch-vcs/
+.. _pdm-backend: https://pypi.org/project/pdm-backend/
.. index:: DISTUTILS_EXT
diff --git a/guide/distutils.html b/guide/distutils.html
index e097cbc..ee6cade 100644
--- a/guide/distutils.html
+++ b/guide/distutils.html
@@ -126,7 +126,8 @@ files. This has some implications, notably:</p>
<ol class="arabic simple">
<li><p>If the package uses setuptools_scm or a similar package, the version
string needs to be provided explicitly,
-cf. <a class="reference internal" href="#setuptools-scm-flit-scm-hatch-vcs-and-snapshots">setuptools_scm (flit_scm, hatch-vcs) and snapshots</a>.</p></li>
+cf. <a class="reference internal" href="#setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots">setuptools_scm (flit_scm, hatch-vcs, pdm-backend)
+and snapshots</a>.</p></li>
<li><p>If the package uses Cython, the C files need to be generated
and an explicit <code class="docutils literal notranslate"><span class="pre">BDEPEND</span></code> on <code class="docutils literal notranslate"><span class="pre">dev-python/cython</span></code> needs to
be added. However, regenerating them is recommended anyway,
@@ -280,20 +281,24 @@ The eclass maintains a mapping of backend paths to the respective
<td><p>dev-python/pdm-pep517</p></td>
<td><p>pdm.pep517.api</p></td>
</tr>
-<tr class="row-odd"><td><p>poetry</p></td>
+<tr class="row-odd"><td><p>pdm-backend</p></td>
+<td><p>dev-python/pdm-backend</p></td>
+<td><p>pdm.backend</p></td>
+</tr>
+<tr class="row-even"><td><p>poetry</p></td>
<td><p>dev-python/poetry-core</p></td>
<td><p>poetry.core.masonry.api</p></td>
</tr>
-<tr class="row-even"><td><p>setuptools</p></td>
+<tr class="row-odd"><td><p>setuptools</p></td>
<td><p>dev-python/setuptools</p></td>
<td><p>setuptools.build_meta
setuptools.__legacy__.build_meta</p></td>
</tr>
-<tr class="row-odd"><td><p>sip</p></td>
+<tr class="row-even"><td><p>sip</p></td>
<td><p>dev-python/sip</p></td>
<td><p>sipbuild.api</p></td>
</tr>
-<tr class="row-even"><td><p>standalone</p></td>
+<tr class="row-odd"><td><p>standalone</p></td>
<td><p>(none)</p></td>
<td><p>(various, see below)</p></td>
</tr>
@@ -309,9 +314,9 @@ backend.</p>
the <code class="docutils literal notranslate"><span class="pre">setuptools</span></code> backend (this applies to pure distutils packages
as well). The eclass automatically uses the legacy setuptools backend
for them.</p>
-<span class="target" id="index-2"></span><span class="target" id="index-3"></span><span class="target" id="index-4"></span></section>
-<section id="setuptools-scm-flit-scm-hatch-vcs-and-snapshots">
-<span id="index-5"></span><h2>setuptools_scm (flit_scm, hatch-vcs) and snapshots<a class="headerlink" href="#setuptools-scm-flit-scm-hatch-vcs-and-snapshots" title="Permalink to this heading">¶</a></h2>
+<span class="target" id="index-2"></span><span class="target" id="index-3"></span><span class="target" id="index-4"></span><span class="target" id="index-5"></span></section>
+<section id="setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots">
+<span id="index-6"></span><h2>setuptools_scm (flit_scm, hatch-vcs, pdm-backend) and snapshots<a class="headerlink" href="#setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots" title="Permalink to this heading">¶</a></h2>
<p><a class="reference external" href="https://pypi.org/project/setuptools-scm/">setuptools_scm</a> is a package providing additional features for running
inside a VCS checkout, in particular the ability to determine version
from VCS tags. However, this works correctly only when the package
@@ -358,9 +363,16 @@ the package build, setuptools may install incomplete set of package
data files. Please take special care to verify that all files are
installed.</p>
</div>
+<p>The <a class="reference external" href="https://pypi.org/project/pdm-backend/">pdm-backend</a> package reinvents its own SCM version support,
+and unlike setuptools_scm, it uses <code class="docutils literal notranslate"><span class="pre">0.0.0</span></code> rather than throwing
+an error when the version cannot be determined. The override for this
+backend can be set using a similarly purposed environment variable:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">export</span><span class="w"> </span><span class="nv">PDM_BUILD_SCM_VERSION</span><span class="o">=</span><span class="si">${</span><span class="nv">PV</span><span class="si">}</span>
+</pre></div>
+</div>
</section>
<section id="packages-installing-extensions-c-rust">
-<span id="index-6"></span><h2>Packages installing extensions (C, Rust…)<a class="headerlink" href="#packages-installing-extensions-c-rust" title="Permalink to this heading">¶</a></h2>
+<span id="index-7"></span><h2>Packages installing extensions (C, Rust…)<a class="headerlink" href="#packages-installing-extensions-c-rust" title="Permalink to this heading">¶</a></h2>
<p>Python extensions are compiled (C, Cython, Rust…) loadable modules.
They can generally be recognized by the presence of <code class="docutils literal notranslate"><span class="pre">.so</span></code> files
in site-packages directory.</p>
@@ -403,7 +415,7 @@ is missing:</p>
</div>
</section>
<section id="packages-using-cython">
-<span id="index-7"></span><h2>Packages using Cython<a class="headerlink" href="#packages-using-cython" title="Permalink to this heading">¶</a></h2>
+<span id="index-8"></span><h2>Packages using Cython<a class="headerlink" href="#packages-using-cython" title="Permalink to this heading">¶</a></h2>
<p><a class="reference external" href="https://cython.org/">Cython</a> is a static compiler that permits writing Python extensions
in a hybrid of C and Python. Cython files are compiled into C code
that is compatible with multiple Python interpreters. This makes it
@@ -502,8 +514,8 @@ run in the following order:</p>
defining <code class="docutils literal notranslate"><span class="pre">${BUILD_DIR}</span></code> to a dedicated build directory for each
implementation. However, if in-source builds are enabled, all phases
are run in these build directories.</p>
-<span class="target" id="index-8"></span><section id="python-prepare">
-<span id="index-9"></span><h3>python_prepare<a class="headerlink" href="#python-prepare" title="Permalink to this heading">¶</a></h3>
+<span class="target" id="index-9"></span><section id="python-prepare">
+<span id="index-10"></span><h3>python_prepare<a class="headerlink" href="#python-prepare" title="Permalink to this heading">¶</a></h3>
<p><code class="docutils literal notranslate"><span class="pre">python_prepare_all</span></code> is responsible for applying changes
to the package sources that are common to all Python implementations.
The default implementation performs the tasks of <code class="docutils literal notranslate"><span class="pre">default_src_prepare</span></code>
@@ -545,9 +557,9 @@ enables in-source builds.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-10"></span></section>
+<span class="target" id="index-11"></span></section>
<section id="python-configure">
-<span id="index-11"></span><h3>python_configure<a class="headerlink" href="#python-configure" title="Permalink to this heading">¶</a></h3>
+<span id="index-12"></span><h3>python_configure<a class="headerlink" href="#python-configure" title="Permalink to this heading">¶</a></h3>
<p><code class="docutils literal notranslate"><span class="pre">python_configure</span></code> and <code class="docutils literal notranslate"><span class="pre">python_configure_all</span></code> have no default
functionality. The former is convenient for running additional
configuration steps if needed by the package, the latter for defining
@@ -565,9 +577,9 @@ global environment variables.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-12"></span></section>
+<span class="target" id="index-13"></span></section>
<section id="python-compile">
-<span id="index-13"></span><h3>python_compile<a class="headerlink" href="#python-compile" title="Permalink to this heading">¶</a></h3>
+<span id="index-14"></span><h3>python_compile<a class="headerlink" href="#python-compile" title="Permalink to this heading">¶</a></h3>
<p><code class="docutils literal notranslate"><span class="pre">python_compile</span></code> normally builds the package. It is sometimes used
to pass additional arguments to the build step. For example, it can
be used to disable parallel extension builds in packages that are broken
@@ -586,9 +598,9 @@ the documentation (see <code class="docutils literal notranslate"><span class="p
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-14"></span></section>
+<span class="target" id="index-15"></span></section>
<section id="python-test">
-<span id="index-15"></span><h3>python_test<a class="headerlink" href="#python-test" title="Permalink to this heading">¶</a></h3>
+<span id="index-16"></span><h3>python_test<a class="headerlink" href="#python-test" title="Permalink to this heading">¶</a></h3>
<p><code class="docutils literal notranslate"><span class="pre">python_test</span></code> is responsible for running tests. It has no default
implementation but you are strongly encouraged to provide one (either
directly or via <code class="docutils literal notranslate"><span class="pre">distutils_enable_tests</span></code>). <code class="docutils literal notranslate"><span class="pre">python_test_all</span></code>
@@ -599,9 +611,9 @@ to Python.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-16"></span></section>
+<span class="target" id="index-17"></span></section>
<section id="python-install">
-<span id="index-17"></span><h3>python_install<a class="headerlink" href="#python-install" title="Permalink to this heading">¶</a></h3>
+<span id="index-18"></span><h3>python_install<a class="headerlink" href="#python-install" title="Permalink to this heading">¶</a></h3>
<p><code class="docutils literal notranslate"><span class="pre">python_install</span></code> installs the package’s Python part. It is usually
redefined in order to pass additional <code class="docutils literal notranslate"><span class="pre">setup.py</span></code> arguments
or to install additional Python modules.</p>
@@ -630,7 +642,7 @@ such as bash completions or examples.</p>
</section>
</section>
<section id="passing-arguments-to-setup-py">
-<span id="index-18"></span><h2>Passing arguments to setup.py<a class="headerlink" href="#passing-arguments-to-setup-py" title="Permalink to this heading">¶</a></h2>
+<span id="index-19"></span><h2>Passing arguments to setup.py<a class="headerlink" href="#passing-arguments-to-setup-py" title="Permalink to this heading">¶</a></h2>
<p>There are two main methods of accepting additional command-line options
in <code class="docutils literal notranslate"><span class="pre">setup.py</span></code> scripts: using global options and via command options.</p>
<p>Global options are usually implemented through manipulating <code class="docutils literal notranslate"><span class="pre">sys.path</span></code>
@@ -669,7 +681,7 @@ take boolean arguments. In this case, the ebuild can use:</p>
</div>
</section>
<section id="calling-custom-setup-py-commands">
-<span id="index-19"></span><h2>Calling custom setup.py commands<a class="headerlink" href="#calling-custom-setup-py-commands" title="Permalink to this heading">¶</a></h2>
+<span id="index-20"></span><h2>Calling custom setup.py commands<a class="headerlink" href="#calling-custom-setup-py-commands" title="Permalink to this heading">¶</a></h2>
<p>When working on packages using setuptools or modified distutils, you
sometimes need to manually invoke <code class="docutils literal notranslate"><span class="pre">setup.py</span></code>. The eclass provides
a <code class="docutils literal notranslate"><span class="pre">esetup.py</span></code> helper that wraps it with additional checks, error
@@ -687,7 +699,7 @@ beforehand (much like <code class="docutils literal notranslate"><span class="pr
<p>The support for test suites is now covered in the <a class="reference internal" href="test.html"><span class="doc">Tests in Python packages</span></a> chapter.</p>
</section>
<section id="building-documentation-via-sphinx">
-<span id="index-20"></span><h2>Building documentation via Sphinx<a class="headerlink" href="#building-documentation-via-sphinx" title="Permalink to this heading">¶</a></h2>
+<span id="index-21"></span><h2>Building documentation via Sphinx<a class="headerlink" href="#building-documentation-via-sphinx" title="Permalink to this heading">¶</a></h2>
<p><code class="docutils literal notranslate"><span class="pre">dev-python/sphinx</span></code> is commonly used to document Python packages.
It comes with a number of plugins and themes that make it convenient
to write and combine large text documents (such as this Guide!),
@@ -803,10 +815,10 @@ If additional packages need to be installed, the previous variant
must be used instead.</p>
<p>The eclass tries to automatically determine whether <code class="docutils literal notranslate"><span class="pre">--no-autodoc</span></code>
should be used, and issue a warning if it’s missing or incorrect.</p>
-<span class="target" id="index-21"></span></section>
+<span class="target" id="index-22"></span></section>
</section>
<section id="packages-with-optional-python-build-system-usage">
-<span id="index-22"></span><h2>Packages with optional Python build system usage<a class="headerlink" href="#packages-with-optional-python-build-system-usage" title="Permalink to this heading">¶</a></h2>
+<span id="index-23"></span><h2>Packages with optional Python build system usage<a class="headerlink" href="#packages-with-optional-python-build-system-usage" title="Permalink to this heading">¶</a></h2>
<p>The eclass has been written with the assumption that the vast majority
of its consumers will be using the Python build systems unconditionally.
For this reason, it sets the ebuild metadata variables (dependencies,
@@ -915,7 +927,7 @@ follows:</p>
</div>
</section>
<section id="packages-with-rust-extensions-using-cargo">
-<span id="index-23"></span><h2>Packages with Rust extensions (using Cargo)<a class="headerlink" href="#packages-with-rust-extensions-using-cargo" title="Permalink to this heading">¶</a></h2>
+<span id="index-24"></span><h2>Packages with Rust extensions (using Cargo)<a class="headerlink" href="#packages-with-rust-extensions-using-cargo" title="Permalink to this heading">¶</a></h2>
<p>Some Python build systems include support for writing extensions
in the Rust programming language. Two examples of these are setuptools
using <code class="docutils literal notranslate"><span class="pre">dev-python/setuptools_rust</span></code> plugin and Maturin. Normally,
@@ -1160,7 +1172,7 @@ python_install<span class="o">()</span><span class="w"> </span><span class="o">{
<li class="toctree-l2"><a class="reference internal" href="#dependencies">Dependencies</a></li>
<li class="toctree-l2"><a class="reference internal" href="#python-single-r1-variant">python-single-r1 variant</a></li>
<li class="toctree-l2"><a class="reference internal" href="#pep-517-build-systems">PEP 517 build systems</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#setuptools-scm-flit-scm-hatch-vcs-and-snapshots">setuptools_scm (flit_scm, hatch-vcs) and snapshots</a></li>
+<li class="toctree-l2"><a class="reference internal" href="#setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots">setuptools_scm (flit_scm, hatch-vcs, pdm-backend) and snapshots</a></li>
<li class="toctree-l2"><a class="reference internal" href="#packages-installing-extensions-c-rust">Packages installing extensions (C, Rust…)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#packages-using-cython">Packages using Cython</a></li>
<li class="toctree-l2"><a class="reference internal" href="#parallel-build-race-conditions">Parallel build race conditions</a></li>
diff --git a/guide/genindex.html b/guide/genindex.html
index 1bbda4f..2e41b28 100644
--- a/guide/genindex.html
+++ b/guide/genindex.html
@@ -61,7 +61,7 @@
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-7">Cython</a>
+ <li><a href="distutils.html#index-8">Cython</a>
</li>
</ul></td>
</tr></table>
@@ -73,23 +73,23 @@
</li>
<li><a href="expert-multi.html#index-2">DISTUTILS_ALL_SUBPHASE_IMPLS</a>
</li>
- <li><a href="distutils.html#index-18">DISTUTILS_ARGS</a>
+ <li><a href="distutils.html#index-19">DISTUTILS_ARGS</a>
</li>
- <li><a href="distutils.html#index-21">DISTUTILS_DEPS</a>
+ <li><a href="distutils.html#index-22">DISTUTILS_DEPS</a>
</li>
- <li><a href="distutils.html#index-20">distutils_enable_sphinx</a>
+ <li><a href="distutils.html#index-21">distutils_enable_sphinx</a>
</li>
<li><a href="test.html#index-0">distutils_enable_tests</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-6">DISTUTILS_EXT</a>
+ <li><a href="distutils.html#index-7">DISTUTILS_EXT</a>
</li>
<li><a href="distutils-legacy.html#index-1">DISTUTILS_IN_SOURCE_BUILD</a>
</li>
<li><a href="distutils-legacy.html#index-2">distutils_install_for_testing</a>
</li>
- <li><a href="distutils.html#index-22">DISTUTILS_OPTIONAL</a>
+ <li><a href="distutils.html#index-23">DISTUTILS_OPTIONAL</a>
</li>
<li><a href="distutils.html#index-0">DISTUTILS_SINGLE_IMPL</a>
</li>
@@ -111,7 +111,7 @@
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="basic.html#index-3">EPYTHON</a>
</li>
- <li><a href="distutils.html#index-19">esetup.py</a>
+ <li><a href="distutils.html#index-20">esetup.py</a>
</li>
</ul></td>
</tr></table>
@@ -119,7 +119,7 @@
<h2 id="F">F</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-3">flit_scm</a>
+ <li><a href="distutils.html#index-4">flit_scm</a>
</li>
</ul></td>
</tr></table>
@@ -135,7 +135,7 @@
<h2 id="H">H</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-4">hatch-vcs</a>
+ <li><a href="distutils.html#index-5">hatch-vcs</a>
</li>
</ul></td>
</tr></table>
@@ -143,6 +143,8 @@
<h2 id="P">P</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="distutils.html#index-3">PDM_BUILD_SCM_VERSION</a>
+</li>
<li><a href="basic.html#index-4">PYTHON</a>
</li>
<li>
@@ -156,13 +158,13 @@
</ul></li>
<li><a href="basic.html#index-0">PYTHON_COMPAT</a>
</li>
- <li><a href="distutils.html#index-12">python_compile</a>
+ <li><a href="distutils.html#index-13">python_compile</a>
</li>
- <li><a href="distutils.html#index-13">python_compile_all</a>
+ <li><a href="distutils.html#index-14">python_compile_all</a>
</li>
- <li><a href="distutils.html#index-10">python_configure</a>
+ <li><a href="distutils.html#index-11">python_configure</a>
</li>
- <li><a href="distutils.html#index-11">python_configure_all</a>
+ <li><a href="distutils.html#index-12">python_configure_all</a>
</li>
<li><a href="basic.html#index-1">PYTHON_DEPS</a>
</li>
@@ -204,10 +206,10 @@
</li>
<li><a href="helper.html#index-11">python_get_includedir</a>
</li>
- <li><a href="helper.html#index-13">python_get_library_path</a>
-</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="helper.html#index-13">python_get_library_path</a>
+</li>
<li><a href="helper.html#index-15">python_get_LIBS</a>
</li>
<li><a href="helper.html#index-16">python_get_PYTHON_CONFIG</a>
@@ -218,9 +220,9 @@
</li>
<li><a href="any.html#index-3">python_has_version</a>
</li>
- <li><a href="distutils.html#index-16">python_install</a>
+ <li><a href="distutils.html#index-17">python_install</a>
</li>
- <li><a href="distutils.html#index-17">python_install_all</a>
+ <li><a href="distutils.html#index-18">python_install_all</a>
</li>
<li><a href="helper.html#index-7">python_moduleinto</a>
</li>
@@ -232,9 +234,9 @@
</li>
<li><a href="helper.html#index-9">python_optimize</a>
</li>
- <li><a href="distutils.html#index-8">python_prepare</a>
+ <li><a href="distutils.html#index-9">python_prepare</a>
</li>
- <li><a href="distutils.html#index-9">python_prepare_all</a>
+ <li><a href="distutils.html#index-10">python_prepare_all</a>
</li>
<li><a href="depend.html#index-0">PYTHON_REQ_USE</a>
</li>
@@ -253,9 +255,9 @@
</ul></li>
<li><a href="single.html#index-0">PYTHON_SINGLE_USEDEP</a>
</li>
- <li><a href="distutils.html#index-14">python_test</a>
+ <li><a href="distutils.html#index-15">python_test</a>
</li>
- <li><a href="distutils.html#index-15">python_test_all</a>
+ <li><a href="distutils.html#index-16">python_test_all</a>
</li>
<li>
PYTHON_USEDEP
@@ -280,7 +282,7 @@
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="multi.html#index-2">run_in_build_dir</a>
</li>
- <li><a href="distutils.html#index-23">Rust</a>
+ <li><a href="distutils.html#index-24">Rust</a>
</li>
</ul></td>
</tr></table>
@@ -288,7 +290,7 @@
<h2 id="S">S</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-5">setuptools_scm</a>
+ <li><a href="distutils.html#index-6">setuptools_scm</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
diff --git a/guide/index.html b/guide/index.html
index 06bacab..c6a6bc2 100644
--- a/guide/index.html
+++ b/guide/index.html
@@ -99,7 +99,7 @@
<li class="toctree-l2"><a class="reference internal" href="distutils.html#dependencies">Dependencies</a></li>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#python-single-r1-variant">python-single-r1 variant</a></li>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#pep-517-build-systems">PEP 517 build systems</a></li>
-<li class="toctree-l2"><a class="reference internal" href="distutils.html#setuptools-scm-flit-scm-hatch-vcs-and-snapshots">setuptools_scm (flit_scm, hatch-vcs) and snapshots</a></li>
+<li class="toctree-l2"><a class="reference internal" href="distutils.html#setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots">setuptools_scm (flit_scm, hatch-vcs, pdm-backend) and snapshots</a></li>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#packages-installing-extensions-c-rust">Packages installing extensions (C, Rust…)</a></li>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#packages-using-cython">Packages using Cython</a></li>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#parallel-build-race-conditions">Parallel build race conditions</a></li>
diff --git a/guide/searchindex.js b/guide/searchindex.js
index 73a92ad..42717d8 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", "pypi", "pytest", "qawarn", "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", "pypi.rst", "pytest.rst", "qawarn.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", "pypi \u2014 helper eclass for PyPI archives", "pytest recipes", "QA checks and warnings", "python-single-r1 \u2014 single-impl packages", "Tests in Python packages"], "terms": {"The": [0, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "eclass": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 13, 14, 17, 19, 21, 22], "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21], "enabl": [0, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 19, 20, 22], "support": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13, 14, 16, 17, 18, 19, 20, 21, 22], "packag": [0, 8, 9, 10, 11, 13, 17, 19], "need": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "pure": [0, 5, 6, 7, 8, 10, 11, 15, 18], "refer": [0, 1, 5, 9, 11, 13, 14, 17, 18, 20, 21], "5": [0, 2, 5, 7, 8, 9, 11, 14, 15, 16, 18, 19, 21, 22], "defin": [0, 1, 5, 6, 11, 21, 22], "featur": [0, 4, 5, 6, 7, 8, 11, 12, 13, 20, 21, 22], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], "pkg_setup": [0, 1, 2, 8, 21], "phase": [0, 1, 3, 6, 7, 8, 9, 10, 13, 14, 15, 20, 21], "It": [0, 1, 3, 4, 5, 6, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "normal": [0, 3, 5, 8, 9, 14, 15, 16, 18, 20, 21, 22], "call": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 13, 14, 16, 18, 19, 20, 21, 22], "python_setup": [0, 1, 2, 10, 13, 14, 21], "function": [0, 1, 4, 6, 7, 8, 10, 11, 13, 14, 16, 18, 20, 21, 22], "order": [0, 1, 2, 4, 5, 7, 9, 12, 13, 14, 15, 21, 22], "find": [0, 2, 3, 4, 6, 14, 15, 19, 20, 22], "suitabl": [0, 7, 9, 14, 17, 18], "interpret": [0, 1, 2, 5, 6, 7, 9, 10, 13, 14, 15, 16, 19, 20, 21], "global": [0, 1, 5, 8, 13, 14, 19, 21, 22], "environ": [0, 5, 6, 10, 11, 13, 14, 16, 19, 21], "appropri": [0, 2, 4, 5, 6, 7, 9, 11, 12, 15, 18, 21, 22], "mean": [0, 1, 2, 5, 7, 8, 11, 15, 16, 18, 19, 21, 22], "most": [0, 3, 5, 6, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22], "trivial": [0, 5, 12, 16, 21], "an": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22], "autotool": [0, 5, 6, 10, 16, 21], "compat": [0, 1, 2, 4, 5, 6, 7, 9, 11, 13, 16, 18, 21], "system": [0, 3, 7, 8, 9, 10, 13, 14, 15, 17, 18, 20, 21, 22], "could": [0, 2, 3, 5, 6, 8, 9, 15, 16, 18, 20, 21], "look": [0, 1, 6, 8, 16, 19, 20, 21, 22], "like": [0, 2, 4, 5, 6, 8, 11, 15, 16, 20, 21, 22], "follow": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22], "copyright": [0, 2, 4, 5, 6, 8, 14, 21, 22], "1999": [0, 2, 4, 5, 6, 8, 14, 21, 22], "2020": [0, 2, 4, 5, 6, 8, 13, 14, 16, 21, 22], "gentoo": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22], "author": [0, 2, 4, 5, 6, 8, 9, 10, 12, 14, 20, 21, 22], "distribut": [0, 2, 4, 5, 6, 8, 14, 15, 16, 17, 20, 21, 22], "under": [0, 1, 2, 3, 4, 5, 6, 8, 14, 21, 22], "term": [0, 2, 4, 5, 6, 8, 14, 21, 22], "gnu": [0, 2, 4, 5, 6, 8, 14, 21, 22], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 19, 20, 21, 22], "public": [0, 2, 4, 5, 6, 8, 11, 14, 21, 22], "licens": [0, 2, 4, 5, 6, 8, 10, 14, 20, 21, 22], "v2": [0, 2, 4, 5, 6, 8, 14, 21, 22], "eapi": [0, 2, 4, 5, 6, 8, 10, 14, 21, 22], "7": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "python_compat": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 21, 22], "python3_": [0, 1, 2, 4, 5, 6, 8, 12, 21, 22], "6": [0, 1, 2, 4, 5, 6, 8, 11, 12, 14, 15, 16, 19, 21, 22], "8": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 15, 20, 21, 22], "inherit": [0, 1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 21, 22], "descript": [0, 2, 4, 5, 6, 8, 14, 21, 22], "A": [0, 1, 2, 4, 6, 7, 8, 10, 11, 15, 19, 20], "repositori": [0, 5, 6, 12, 15, 20], "data": [0, 2, 5, 6, 9, 16, 21, 22], "file": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 21], "describ": [0, 5, 6, 8, 9, 15, 18, 20], "media": [0, 2, 8], "player": [0, 4], "capabl": 0, "homepag": [0, 2, 4, 5, 6, 8, 14, 15, 21, 22], "http": [0, 2, 4, 5, 6, 8, 9, 12, 14, 16, 18, 20, 21, 22], "cgit": 0, "freedesktop": 0, "org": [0, 2, 4, 5, 6, 8, 9, 12, 14, 18, 20, 21, 22], "info": [0, 5, 6, 19], "src_uri": [0, 2, 4, 5, 6, 8, 14, 15, 18, 21, 22], "www": [0, 2, 8, 14, 21], "softwar": [0, 1, 4, 8, 14, 15, 16, 22], "pn": [0, 2, 4, 5, 6, 8, 9, 14, 18, 21, 22], "p": [0, 2, 4, 5, 6, 8, 14, 18, 19, 21, 22], "tar": [0, 2, 4, 5, 6, 8, 12, 14, 18, 21, 22], "gz": [0, 2, 4, 5, 6, 8, 14, 18, 21, 22], "bsd": [0, 2, 5, 6, 8, 14, 21], "slot": [0, 2, 4, 5, 6, 8, 11, 14, 21, 22], "0": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 19, 20, 21, 22], "keyword": [0, 2, 4, 5, 6, 8, 10, 14, 16, 21, 22], "alpha": [0, 2, 4, 5, 6, 8, 11, 12, 14, 21, 22], "amd64": [0, 2, 4, 5, 6, 8, 12, 14, 21, 22], "arm": [0, 2, 4, 5, 6, 8, 21, 22], "arm64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "hppa": [0, 2, 4, 5, 6, 8, 14, 21, 22], "ia64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "mip": [0, 2, 4, 5, 6, 8, 21, 22], "ppc": [0, 2, 4, 5, 6, 8, 14, 21, 22], "ppc64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "sh": [0, 2, 4, 5, 6, 8, 12, 21, 22], "sparc": [0, 2, 4, 5, 6, 8, 14, 21, 22], "x86": [0, 2, 4, 5, 6, 8, 12, 14, 21, 22], "ius": [0, 2, 4, 5, 8, 14, 21, 22], "rdepend": [0, 1, 2, 4, 5, 6, 8, 13, 14, 21, 22], "virtual": [0, 2, 8, 14], "udev": 0, "208": 0, "bdepend": [0, 1, 2, 4, 5, 6, 8, 12, 14, 19, 21, 22], "python_dep": [0, 2, 4, 5, 8, 10, 14, 21], "pkgconfig": [0, 2, 8, 14], "ebuild": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22], "demonstr": [0, 5, 21], "absolut": [0, 1, 9, 15, 21, 22], "minimum": [0, 15, 21], "work": [0, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 21, 22], "code": [0, 1, 3, 5, 6, 7, 8, 9, 11, 13, 14, 16, 19, 20, 21, 22], "onli": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "three": [0, 1, 3, 9, 13, 16, 20], "highlight": [0, 16, 21], "line": [0, 3, 5, 13, 15, 16, 21, 22], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22], "specif": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22], "plu": [0, 21], "implicitli": [0, 3, 5, 8, 12, 20, 21, 22], "export": [0, 1, 2, 5, 21], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22], "other": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22], "declar": [0, 1, 2, 5, 6, 8, 9, 11, 14, 19, 21, 22], "ensur": [0, 1, 4, 5, 6, 9, 12, 14, 20, 21], "would": [0, 2, 4, 5, 7, 11, 12, 14, 15, 16, 18, 21, 22], "built": [0, 1, 3, 5, 6, 7, 8, 11, 12, 14, 16, 17, 18, 21, 22], "against": [0, 4, 7, 9, 11, 12, 14, 15, 21, 22], "implement": [0, 1, 3, 4, 5, 6, 7, 10, 14, 16, 17, 19, 20, 21, 22], "specifi": [0, 1, 2, 5, 6, 7, 8, 14, 15, 18, 19, 20, 21, 22], "get": [0, 5, 6, 12, 13, 18, 19, 22], "replac": [0, 5, 6, 10, 11, 13, 15, 18], "python_gen_any_dep": [0, 2, 8], "match": [0, 2, 4, 5, 6, 8, 9, 10, 11, 12, 15, 20, 21], "python_check_dep": [0, 2, 8], "accept": [0, 1, 4, 5, 6, 9, 12, 15, 16, 18, 19, 20], "templat": [0, 2, 4, 5, 15, 20, 21], "where": [0, 3, 5, 6, 9, 11, 12, 14, 16, 18, 21, 22], "liter": [0, 4, 21], "python_usedep": [0, 2, 4, 5, 8, 10, 12, 14, 15, 19, 21, 22], "substitut": [0, 4, 21], "requir": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21], "all": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "same": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "least": [0, 5, 8, 15, 20, 22], "one": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 16, 17, 19, 20, 21, 22], "test": [0, 1, 2, 3, 7, 8, 10, 11, 12, 13, 16, 17, 18, 21], "whether": [0, 1, 4, 5, 6, 7, 15, 19, 21, 22], "question": [0, 1, 5, 7, 14, 18, 19, 22], "In": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "particular": [0, 1, 4, 5, 6, 11, 15, 18, 22], "verifi": [0, 1, 5, 6, 8, 13, 20, 22], "branch": [0, 11, 16, 22], "wa": [0, 4, 5, 11, 12, 13, 16, 18, 19, 20, 22], "satisfi": [0, 1, 8, 12], "were": [0, 2, 3, 8, 11, 12, 13, 16, 18, 20], "instal": [0, 1, 3, 4, 7, 8, 10, 11, 12, 13, 16, 19], "current": [0, 5, 6, 11, 12, 13, 15, 19, 22], "For": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "purpos": [0, 6, 9, 12, 14, 16, 18, 21, 22], "variabl": [0, 1, 5, 6, 8, 13, 14, 16, 18, 19, 21, 22], "string": [0, 1, 4, 5, 8, 14, 16, 21], "best": [0, 7, 12, 16, 17, 18, 19], "explain": [0, 1, 6, 20], "exampl": [0, 4, 5, 6, 7, 8, 9, 11, 12, 15, 16, 17, 18, 19, 21, 22], "meson": [0, 4, 5, 7, 10, 15], "manag": [0, 4, 6, 8, 9, 18, 20, 22], "cinnamon": 0, "fork": [0, 11, 12, 15, 22], "from": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "nautilu": 0, "develop": [0, 1, 7, 11, 15, 17, 19, 22], "linuxmint": 0, "com": [0, 2, 4, 5, 6, 8, 12, 14, 16, 18, 22], "project": [0, 1, 5, 8, 9, 10, 14, 17, 18, 19, 20, 22], "html": [0, 5, 8, 20, 22], "github": [0, 2, 4, 5, 6, 8, 12, 14, 17, 18, 21, 22], "nemo": 0, "archiv": [0, 2, 4, 10, 21, 22], "pv": [0, 2, 4, 5, 8, 14, 18, 21, 22], "gpl": [0, 2, 4, 8, 14, 21], "2": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22], "lgpl": [0, 2, 14, 21, 22], "fdl": [0, 21], "1": [0, 2, 3, 4, 5, 6, 8, 9, 15, 18, 19, 20, 21, 22], "dev": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22], "polib": 0, "pygobject": [0, 14], "3": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22], "python_has_vers": [0, 2, 8], "provid": [0, 1, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22], "its": [0, 1, 2, 5, 6, 7, 8, 11, 12, 15, 16, 18, 19, 22], "both": [0, 1, 3, 4, 5, 6, 7, 8, 12, 13, 16, 17, 18, 19, 20, 21, 22], "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "dep": [0, 5, 13, 19], "true": [0, 1, 2, 5, 6, 8, 12, 13, 16, 22], "them": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 15, 16, 18, 19, 20, 21, 22], "while": [0, 2, 3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 19, 20, 21, 22], "which": [0, 6, 9, 10, 11, 14, 22], "wrapper": [0, 1, 6, 9, 13, 14, 22], "help": [0, 15, 17, 22], "take": [0, 1, 2, 4, 5, 6, 7, 8, 9, 15, 16, 19, 22], "singl": [0, 1, 4, 6, 9, 10, 14, 15, 16, 18, 19, 20, 22], "option": [0, 1, 3, 6, 8, 10, 13, 15, 18, 19, 20, 21, 22], "class": [0, 1, 5, 16, 19], "flag": [0, 1, 5, 7, 8, 9, 10, 11, 12, 14, 15, 21, 22], "more": [0, 1, 3, 4, 5, 7, 9, 11, 12, 13, 15, 16, 18, 19, 20, 21], "similarli": [0, 1, 5, 15, 18], "has_vers": [0, 4, 12], "root": [0, 5, 6, 13, 21, 22], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22], "b": [0, 18], "d": [0, 2, 3, 8, 9, 14, 18, 19], "r": [0, 2, 5, 9, 16, 22], "idepend": 0, "pdepend": [0, 2, 8, 12], "pass": [0, 6, 8, 9, 10, 12, 13, 16, 18, 19, 22], "assum": [0, 1, 4, 5, 6, 9, 13, 15, 21], "verbos": [0, 15, 20, 22], "print": [0, 5, 8, 14, 19, 22], "check": [0, 5, 6, 9, 10, 12, 13, 16, 17, 22], "perform": [0, 2, 5, 6, 11, 12, 14, 18, 20, 21, 22], "result": [0, 5, 6, 8, 9, 12, 15, 16, 17, 18, 19, 20, 22], "return": [0, 2, 8, 16, 20, 22], "success": 0, "found": [0, 1, 3, 5, 6, 9, 10, 11, 12, 15, 18, 20, 22], "fals": [0, 2, 5, 8, 12, 15, 16], "otherwis": [0, 6, 7, 8, 9], "note": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22], "invoc": [0, 5, 19, 20], "chain": 0, "abov": [0, 1, 6, 8, 12, 13, 15, 20, 21, 22], "also": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "written": [0, 1, 5, 7, 10, 11, 16, 19], "import": [0, 1, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 18, 19], "understand": 0, "correctli": [0, 1, 5, 6, 7, 9, 11, 12, 13, 15, 16, 22], "exactli": [0, 7, 18], "furthermor": [0, 2, 5], "combin": [0, 2, 3, 5, 10, 11, 12, 13, 16, 17, 18, 19, 21, 22], "must": [0, 1, 2, 3, 5, 6, 7, 8, 11, 15, 16, 19, 21, 22], "onc": [0, 5, 8, 11, 12, 20], "invalid": [0, 16], "split": [0, 5, 13, 16], "some": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "necessari": [0, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22], "particularli": [0, 5, 6, 7, 11, 13, 15, 19, 22], "common": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22], "suit": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 19, 22], "case": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21], "wrap": [0, 5, 6, 9, 13, 22], "programm": [0, 15], "complet": [0, 5, 16, 17, 20, 22], "bash": [0, 5, 7, 8, 9, 21, 22], "scop": 0, "releas": [0, 2, 8, 11, 12, 14, 16, 20], "download": [0, 2, 5, 8, 14], "xz": [0, 4, 12, 14, 21], "s390": [0, 2, 4, 5, 6, 8, 21, 22], "linux": [0, 2, 4, 5, 6, 8, 9, 14, 16, 21, 22], "maco": [0, 4, 6, 8, 21, 22], "x64": [0, 4, 6, 8, 21, 22], "m68k": [0, 4, 5, 6, 8, 21, 22], "mint": 0, "solari": [0, 6, 21, 22], "sparc64": [0, 6], "restrict": [0, 2, 4, 5, 10, 19, 20, 21, 22], "app": [0, 2, 4, 5, 8, 12, 14, 15, 18, 20, 22], "shell": [0, 8, 14, 22], "4": [0, 3, 5, 8, 9, 10, 11, 12, 14, 15, 22], "3_p30": 0, "pexpect": [0, 22], "pytest": [0, 4, 5, 8, 10, 12, 15, 18], "r1_pkg_setup": [0, 2, 21], "anoth": [0, 8, 9, 14, 15, 16, 18, 19, 20, 22], "possibl": [0, 2, 4, 5, 8, 9, 12, 14, 16, 17, 19, 22], "uncondition": [0, 1, 2, 4, 5, 6, 8, 11, 20, 21, 22], "condition": [0, 1, 2, 4, 5, 11, 12, 14, 15, 19, 21], "simplest": [0, 2, 5, 7, 14, 19, 22], "wai": [0, 5, 6, 9, 12, 13, 15, 19, 22], "achiev": [0, 8, 11, 16], "block": [0, 8, 13, 22], "express": [0, 8, 13, 21], "similar": [0, 2, 5, 14, 15, 20, 21, 22], "cmake": [0, 5, 6, 21], "qt": 0, "bind": [0, 2, 5, 8, 14, 21], "telepathi": 0, "bu": 0, "protocol": [0, 2, 21], "dbu": [0, 2], "hardest": 0, "differ": [0, 1, 3, 5, 9, 10, 11, 15, 16, 19, 22], "do": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22], "error": [0, 2, 5, 9, 12, 13, 16, 19, 20, 22], "prone": 0, "move": [0, 4, 5, 12], "insid": [0, 1, 3, 5, 6, 9, 14, 18, 19, 21, 22], "python3_6": [0, 2, 4, 8, 14], "gnome2": [0, 4, 14], "gobject": 0, "librari": [0, 1, 2, 3, 4, 8, 9, 11, 14, 21, 22], "access": [0, 10, 11, 19], "secret": 0, "servic": [0, 15, 22], "api": [0, 2, 5, 9, 10, 11, 13, 14, 16], "wiki": [0, 4, 8, 9, 12, 14, 17], "gnome": [0, 4, 14], "libsecret": 0, "apach": [0, 2, 4, 5, 8, 22], "introspect": 0, "fail": [0, 1, 2, 5, 8, 9, 11, 12, 16, 19, 22], "bug": [0, 5, 6, 12, 20, 22], "655482": 0, "required_us": [0, 1, 2, 4, 5, 7, 8, 13, 14, 21], "mock": [0, 4, 8, 11, 12, 19, 22], "fi": [0, 2, 4, 5, 8, 12, 14, 21], "host": 0, "variou": [1, 5, 6, 9, 13, 16], "r1": [1, 4, 9, 10, 12, 15, 18, 20, 22], "try": [1, 6, 8, 9, 11, 16, 22], "design": [1, 21], "you": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "probabl": [1, 6, 8, 13, 21], "us": [1, 9, 10, 11, 12, 13, 15, 16, 18, 20], "than": [1, 2, 3, 6, 7, 8, 11, 12, 15, 16, 17, 18, 19, 20, 22], "so": [1, 4, 5, 6, 11, 12, 15, 18, 19, 21, 22], "worthwhil": [1, 22], "shortli": 1, "bit": [1, 12, 17], "well": [1, 5, 7, 8, 11, 13, 15, 18, 20], "non": [1, 6, 7, 9, 12, 14, 16, 18, 19, 22], "obviou": [1, 22], "between": [1, 3, 5, 8, 10, 11, 13, 16, 18], "befor": [1, 4, 5, 8, 9, 10, 12, 14, 16], "thei": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "valid": [1, 5, 8, 15, 16, 20, 22], "valu": [1, 5, 6, 9, 13, 18, 19, 22], "pythonx_i": 1, "cpython": [1, 4, 5, 9, 11, 13, 18, 20], "x": [1, 5, 11, 16, 19, 22], "y": [1, 2, 11, 16], "pypy3": [1, 4, 5, 6, 8, 11, 12, 13, 15, 19, 20, 22], "typic": [1, 14], "ani": [1, 2, 3, 5, 6, 7, 10, 14, 16, 18, 19, 20, 22], "respons": [1, 5], "explicitli": [1, 5, 7, 8, 10, 13, 18, 20, 22], "put": [1, 8], "correct": [1, 5, 6, 7, 9, 10, 15, 18, 19, 20, 21], "meant": [1, 13, 20], "consist": [1, 6, 9, 12, 13, 14, 15], "cover": [1, 5, 6, 13, 22], "time": [1, 3, 4, 5, 6, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 22], "runtim": [1, 2, 3, 5, 8, 10, 13, 14, 15], "form": [1, 4, 12, 17, 18], "doe": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 22], "appli": [1, 4, 5, 6, 7, 12, 15, 19, 20, 21, 22], "distutil": [1, 3, 4, 9, 10, 13, 14, 18, 19, 20, 21, 22], "assign": 1, "default": [1, 2, 5, 6, 7, 8, 9, 11, 13, 14, 15, 18, 19, 20, 21, 22], "commonli": [1, 2, 3, 5, 6, 9, 11, 18], "concept": [1, 5, 10], "state": 1, "enforc": [1, 4, 5, 7, 8, 11, 19, 22], "whenev": [1, 4, 9, 11, 14, 15, 19, 21, 22], "run": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 20], "two": [1, 5, 6, 8, 9, 11, 13, 16, 19, 20, 21], "being": [1, 3, 5, 6, 8, 9, 11, 12, 15, 16, 18, 19, 22], "epython": [1, 2, 5, 8, 9, 12, 13, 19, 22], "contain": [1, 3, 4, 5, 6, 7, 12, 13, 15, 20], "": [1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 22], "basenam": 1, "identifi": 1, "e": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "g": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "python3": [1, 3, 5, 9, 11, 13, 15, 16, 19, 20, 22], "10": [1, 4, 5, 8, 10, 11, 12, 15, 20], "final": [1, 2, 4, 5, 9, 11, 13, 16, 21, 22], "path": [1, 3, 5, 6, 9, 10, 12, 13, 16, 18, 20, 22], "usr": [1, 2, 3, 5, 7, 8, 9, 19, 20, 22], "bin": [1, 2, 5, 7, 8, 9, 12, 21, 22], "full": [1, 2, 4, 5, 13, 22], "should": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], "embed": [1, 2, 9, 11], "program": [1, 2, 5, 6, 11, 16, 19, 22], "shebang": [1, 10, 11, 22], "spawn": 1, "dure": [1, 5, 6, 7, 12, 13, 19, 20], "prefer": [1, 4, 5, 7, 8, 11, 12, 14, 15, 19, 22], "rather": [1, 6, 8, 12, 15, 16, 17, 19, 20, 22], "bypass": 1, "virtualenv": [1, 6, 12, 22], "creat": [1, 3, 4, 5, 6, 12, 13, 15, 16, 20, 22], "pep": [1, 3, 6, 7, 10, 12, 15, 16, 18], "517": [1, 3, 6, 7, 10, 12], "mode": [1, 6, 7, 10, 13, 16, 20], "mai": [1, 3, 4, 5, 6, 8, 11, 12, 13, 15, 16, 18, 19, 22], "caus": [1, 4, 5, 8, 9, 13, 15, 18, 19, 20, 22], "failur": [1, 5, 10, 11, 12, 19], "modul": [1, 3, 4, 5, 6, 7, 8, 10, 11, 14, 15, 16, 19, 22], "previou": [1, 5, 12, 13, 16], "version": [1, 2, 3, 5, 6, 7, 8, 10, 12, 13, 16, 17, 19, 22], "just": [1, 6, 11, 13, 22], "resolv": [1, 5, 6, 16, 19, 22], "problem": [1, 3, 4, 5, 6, 8, 12, 15, 16, 17, 19, 20, 22], "pythonn": 1, "tool": [1, 2, 5, 8, 14, 15, 16, 20, 22], "etc": 1, "via": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 21, 22], "exec": [1, 8, 9, 11, 12, 22], "hardcod": [1, 12, 19], "either": [1, 2, 5, 8, 9, 11, 13, 19, 20, 22], "establish": [1, 13, 22], "local": [1, 2, 3, 4, 5, 8, 9, 12, 13, 14, 19, 20, 21, 22], "scope": [1, 4, 5, 8, 13, 19, 22], "multi": [1, 5, 10, 13, 21], "impl": [1, 5, 10, 13], "python_foreach_impl": [1, 2, 8, 14], "sub": [1, 3, 7, 8, 10, 22], "setup": [1, 3, 6, 7, 10, 13, 15, 19, 20, 22], "done": [1, 3, 5, 6, 8, 9, 14, 15, 19, 22], "directli": [1, 5, 6, 7, 9, 11, 13, 16, 19, 22], "section": [1, 5, 6, 7, 12, 15, 16, 18, 20, 22], "focu": [1, 7, 12, 14], "often": [1, 5, 12, 22], "extern": [1, 2, 5, 6, 7, 11, 12, 22], "languag": [1, 2, 5, 11, 15], "usual": [1, 3, 4, 5, 7, 11, 13, 15, 16, 19, 20, 22], "rule": [1, 2, 6, 7, 8, 13, 14, 15, 18], "classifi": [1, 6], "categori": [1, 15], "present": [1, 5, 6, 15, 20], "script": [1, 2, 5, 6, 7, 8, 10, 11, 12, 14, 16, 21], "usabl": [1, 11], "whose": [1, 5, 18], "therefor": [1, 2, 5, 6, 7, 8, 11, 12, 15, 19, 20], "howev": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22], "modern": [1, 4, 5, 6, 11, 12, 19, 22], "base": [1, 4, 5, 7, 8, 10, 12, 14, 15, 21, 22], "entri": [1, 5, 12, 19, 20], "point": [1, 5, 11, 13, 15, 19, 22], "refus": [1, 4, 11], "place": [1, 6, 11, 12, 18, 20], "special": [1, 3, 4, 5, 6, 16, 22], "subclass": 1, "extra": [1, 5, 6, 10], "still": [1, 5, 6, 8, 11, 13, 16, 18, 20, 22], "meaningfulli": 1, "handl": [1, 4, 5, 6, 8, 13, 14, 15, 22], "gracefulli": [1, 4, 8], "subset": [1, 4, 5, 7, 8, 11, 12, 14, 15, 20, 22], "without": [1, 4, 10, 11, 13, 14, 15, 18, 19, 22], "There": [1, 3, 5, 8, 9, 15, 16, 19, 20, 22], "multipl": [1, 3, 4, 5, 7, 10, 14, 15, 17, 19, 20, 22], "approach": [1, 5, 7, 8, 12, 16], "ad": [1, 5, 7, 10, 11, 13, 14, 19], "consid": [1, 2, 3, 5, 6, 7, 8, 11, 12, 14, 15, 16, 20], "light": 1, "enough": [1, 11, 22], "inform": [1, 3, 6, 10, 13, 16, 18, 20, 22], "messag": [1, 5, 22], "pkg_postinst": [1, 5], "util": [1, 2, 4, 5, 7, 8, 9, 12, 15, 19, 20, 21, 22], "optfeatur": 1, "cheap": 1, "rebuild": [1, 6, 11], "includ": [1, 2, 3, 4, 5, 6, 7, 9, 11, 12, 15, 16, 17, 18, 19, 20, 21, 22], "__init__": [1, 3, 5, 9, 19, 20, 22], "py": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 19, 20, 22], "As": [1, 3, 5, 6, 7, 8, 11, 12, 13, 15, 16, 19, 21, 22], "thumb": [1, 6, 7, 13, 15], "belong": [1, 22], "care": [1, 2, 5, 7, 9, 15, 22], "addit": [1, 2, 4, 6, 8, 9, 10, 11, 12, 13, 15, 18, 19, 22], "plugin": [1, 3, 5, 6, 8, 10, 22], "setuptools_scm": [1, 10, 22], "document": [1, 2, 7, 8, 10, 11, 14, 17, 22], "former": [1, 5, 7, 8, 13, 16, 22], "runner": [1, 5, 7, 10], "sinc": [1, 2, 3, 5, 6, 7, 11, 12, 13, 15, 16, 19, 22], "sometim": [1, 4, 5, 6, 7, 9, 11, 19, 22], "These": [1, 5, 6, 7, 11, 12, 13, 15, 19, 22], "go": [1, 2, 8, 17, 18, 19], "doc": [1, 2, 5, 8, 21], "respect": [1, 4, 5, 12, 14, 15, 19, 20], "maximum": [1, 5], "coverag": [1, 5, 15, 19, 22], "further": [1, 19], "guid": [1, 3, 5, 16, 17, 20], "linter": 1, "report": [1, 6, 9, 10, 12, 15, 22], "actual": [1, 5, 6, 8, 9, 11, 12, 15, 18, 19, 22], "undesir": [1, 5, 10, 19], "again": [1, 2, 15, 22], "conveni": [1, 4, 5, 6, 7, 19, 20, 22], "add": [1, 2, 5, 6, 8, 12, 15, 18, 20, 21, 22], "sphinx": [1, 3, 6, 7, 8, 10, 12, 15], "copi": [1, 3, 5, 6, 9, 11, 15, 20, 21, 22], "c": [1, 2, 6, 8, 9, 10, 11, 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, 21, 22], "metadata": [1, 5, 6, 14, 15, 21], "pyproject": [1, 5, 7, 12, 20], "toml": [1, 5, 7, 10, 12, 20], "setuptool": [1, 3, 4, 5, 7, 8, 12, 13, 15, 18, 19, 22], "cfg": [1, 3, 5, 6, 15, 19, 20], "custom": [1, 2, 3, 6, 10, 13, 15, 16, 19, 20], "read": [1, 5, 16, 18, 22], "name": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 16, 22], "uncondit": [1, 2, 5, 10, 13, 14, 15], "upstream": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 15, 16, 18, 19, 20, 22], "spuriou": 1, "strip": [1, 3, 5, 11, 15, 19, 22], "ommit": 1, "kei": [1, 5, 16, 19, 20, 21], "kind": [1, 3, 7, 9, 11, 22], "621": 1, "older": [1, 11, 15, 18], "flit": [1, 5, 6, 12, 13], "poetri": [1, 5, 6, 13], "indic": [1, 5, 6, 11, 12, 13, 15, 18, 19, 20, 22], "install_requir": [1, 3, 5, 6], "group": [1, 2, 6, 13, 15, 19], "extras_requir": [1, 5], "setup_requir": [1, 5, 19], "deprec": [1, 3, 5, 10, 11, 13, 22], "tests_requir": [1, 5], "tox": [1, 5, 22], "ini": [1, 5, 19, 22], "noxfil": 1, "python_requir": 1, "besid": [2, 6, 11, 14, 19, 20], "few": [2, 4, 6, 12, 19, 22], "make": [2, 3, 4, 5, 6, 7, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22], "proper": [2, 8], "fairli": [2, 15, 21], "recent": [2, 3, 5, 15, 22], "agnost": 2, "henc": [2, 5, 14], "treat": [2, 19], "arbitrari": [2, 13, 18], "ha": [2, 3, 5, 6, 7, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "gain": [2, 19], "quit": [2, 4, 6, 11, 12], "At": [2, 5, 11, 15, 17, 20], "mani": [2, 5, 8, 12, 14, 15, 16, 20, 22], "old": [2, 4, 5, 6, 8, 10, 11, 12, 16, 22], "reason": [2, 4, 5, 6, 11, 18, 19, 22], "suffici": [2, 5, 6, 7, 11, 14, 18], "prior": [2, 3, 5, 6, 8, 11, 12, 13, 16, 20, 22], "happen": [2, 3, 4, 6, 7, 8, 11, 21, 22], "natur": [2, 3, 5, 8, 15], "sort": 2, "latter": [2, 5, 7, 8, 13, 15, 16, 19, 22], "set": [2, 4, 5, 6, 7, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "much": [2, 5, 20, 22], "compon": [2, 3, 8, 11, 14, 16], "account": [2, 8, 11, 15, 22], "detail": [2, 7, 9, 11, 13, 16, 20, 22], "choic": [2, 6, 7, 13, 18, 22], "chapter": [2, 5, 8, 9], "along": [2, 5, 6, 7, 11, 12, 13, 20, 21, 22], "toolchain": [2, 4, 8], "func": [2, 8], "commit": [2, 12, 18, 22], "6e5e8a57628095d8d0c8bbb38187afb0f3a42112": 2, "userspac": 2, "xbox": 2, "360": 2, "control": [2, 4, 5, 19], "driver": 2, "xboxdrv": 2, "gitlab": [2, 8], "io": [2, 4, 5, 8, 14, 21], "chewi": 2, "workdir": [2, 5, 18], "lib": [2, 3, 5, 7, 9, 16, 19, 20, 22], "boost": [2, 7], "glib": 2, "sy": [2, 5, 8, 11, 14, 15, 16, 22], "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, 21], "dobin": [2, 9], "doman": 2, "dodoc": [2, 5], "new": [2, 5, 6, 9, 10, 11, 13, 16, 19, 22], "readm": [2, 12, 20], "md": [2, 20], "todo": [2, 9, 12], "yourself": [2, 4, 22], "becaus": [2, 6, 11, 12, 15, 19, 20, 22], "cannot": [2, 3, 4, 5, 9, 11, 22], "my_p": 2, "src": [2, 5, 9, 22], "_rc": [2, 18], "rc": [2, 11, 18], "high": [2, 4, 11, 12, 15, 21], "open": [2, 16], "sourc": [2, 3, 10, 12, 14, 17, 20, 22], "schema": [2, 15], "free": [2, 15, 22], "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, 19, 21, 22], "arch": [2, 5, 8, 11, 12, 18], "snappi": 2, "cpp": 2, "yaml": [2, 3], "70": 2, "thread": [2, 8, 19, 21, 22], "libpcr": 2, "42": 2, "zstd": 2, "snowbal": 2, "stemmer": 2, "net": [2, 8, 11, 14, 15, 21], "libpcap": 2, "zlib": 2, "11": [2, 5, 10, 12, 15, 22], "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, 21], "scons_opt": 2, "cc": [2, 9], "getcc": [2, 9], "disabl": [2, 5, 8, 10, 11, 12, 14, 18, 21, 22], "warn": [2, 5, 10, 16], "pcre": 2, "core": [2, 5, 20, 22], "src_test": [2, 5, 6, 14, 22], "buildscript": 2, "resmok": 2, "dbpathprefix": 2, "job": [2, 5, 19], "makeopts_job": [2, 19], "die": [2, 3, 5, 8, 9, 14, 19, 22], "nostrip": [2, 8], "prefix": [2, 8, 9, 15, 16, 22], "ed": [2, 9, 15], "everyth": [2, 13, 20], "your": [2, 4, 5, 6, 7, 8, 11, 12, 15, 16, 18, 19, 20, 22], "python2_7": [2, 5, 6, 8, 13, 14, 21, 22], "eutil": 2, "molecular": 2, "dynam": 2, "nmr": 2, "analysi": [2, 21], "relax": [2, 19], "gna": 2, "bz2": [2, 8, 21], "python_required_us": [2, 4, 5, 8, 10, 14, 21], "python_gen_cond_dep": [2, 4, 5, 8, 12, 13, 21, 22], "numdifftool": 2, "matplotlib": [2, 5, 21], "python2": [2, 8, 9, 13, 21], "wxpython": [2, 21], "wx_gtk_ver": [2, 21], "sci": [2, 5, 21], "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, 21], "make_wrapp": [2, 9], "python_get_sitedir": [2, 3, 8, 9], "part": [2, 3, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 22], "That": [2, 16, 22], "fortran_need": 2, "fortran": 2, "fortran_standard": 2, "90": [2, 14], "object": [2, 11, 16, 21], "chemic": 2, "kinet": 2, "thermodynam": 2, "transport": 2, "cantera": 2, "v": [2, 4, 5, 10, 13, 14, 22], "pch": 2, "sundial": 2, "eigen": 2, "libfmt": 2, "cython": [2, 10, 14, 21], "2_pkg_setup": 2, "scons_var": 2, "cc_flag": 2, "cxx_flag": 2, "std": [2, 3], "debug": [2, 5], "getfc": 2, "fortranflag": 2, "optimize_flag": 2, "wno": 2, "inlin": [2, 7, 14, 18], "renamed_shared_librari": 2, "use_pch": 2, "usex": [2, 5, 21], "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, 16, 19], "python2_packag": 2, "none": [2, 5, 6, 16, 18], "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, 20], "deal": [2, 7, 8, 10, 15], "sens": 2, "plain": [2, 5, 6, 13], "loop": [2, 5, 19], "autom": 2, "pipelin": [2, 22], "poisson": 2, "boltzmann": 2, "electrostat": 2, "calcul": 2, "poissonboltzmann": 2, "apb": 2, "opal": 2, "openbabel": 2, "zsi": 2, "lang": [2, 8, 11, 12, 21], "swig": [2, 21], "src_prepar": [2, 3, 5, 8, 9, 14, 16, 19, 20], "f": [2, 9, 16], "pyc": [2, 9, 20], "o": [2, 5, 20], "pyo": [2, 9, 20], "delet": [2, 14], "eappli": 2, "patch": [2, 4, 5, 6, 8, 11, 12, 18, 20, 22], "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, 22], "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, 14], "cd": [2, 5, 9, 12, 22], "let": [2, 4, 8, 16, 21], "independ": [2, 4, 5, 6, 7, 14, 21], "separ": [2, 5, 6, 7, 8, 11, 14, 15, 16, 19, 22], "presum": 2, "manual": [2, 3, 6, 10, 11, 12, 18, 20], "wider": 2, "target": [2, 8, 9, 11, 12, 15, 21, 22], "rang": [2, 5, 12], "recommend": [2, 5, 7, 12, 13, 14, 15, 16, 18, 19, 21, 22], "gp": [2, 8], "daemon": [2, 8], "usb": [2, 8], "serial": [2, 5, 8, 15], "devic": [2, 8], "map": [2, 5, 6, 8, 15, 19], "client": [2, 8, 9, 11, 14], "gpsd": [2, 8], "mirror": [2, 4, 5, 6, 8, 14, 21, 22], "nongnu": [2, 8], "24": [2, 8, 19, 22], "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, 18, 22], "construct": [2, 4, 8, 21], "pkg_config": 2, "shlinkflag": 2, "destdir": [2, 8, 9, 20], "bundl": [2, 5, 12], "simpl": [2, 5, 7, 13, 14, 17], "impli": [2, 9, 11], "python_req_us": [2, 4, 5, 6, 8, 14, 21], "individu": [2, 5, 11, 19], "applic": [2, 9, 11], "had": 2, "instead": [2, 3, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 20, 21, 22], "no_waf_libdir": 2, "ye": 2, "unit": 2, "framework": [2, 3, 5, 11, 17], "mrzechonek": 2, "tut": 2, "roughli": [2, 9, 11, 13, 18], "ldap": 2, "ldb": 2, "samba": [2, 21], "ftp": [2, 21], "pub": 2, "elibc_freebsd": 2, "libbsd": 2, "popt": 2, "talloc": [2, 21], "tevent": 2, "9": [2, 5, 10, 12, 15, 18, 20, 22], "31": [2, 15], "tdb": 2, "12": [2, 8, 15, 16, 19, 20], "nd": 2, "openldap": 2, "libxslt": 2, "waf_binari": [2, 21], "buildtool": [2, 21], "filesdir": 2, "27": [2, 8], "optional_packag": 2, "myconf": [2, 8], "rpath": 2, "modulesdir": 2, "builtin": 2, "utils_src_configur": [2, 21], "tradition": 3, "python": [3, 6, 17, 18, 19, 20], "organ": 3, "subpackag": [3, 20], "locat": [3, 5, 20], "parent": [3, 9], "directori": [3, 5, 6, 9, 11, 12, 13, 14, 16, 18, 19, 20, 22], "submodul": 3, "repres": [3, 5, 22], "attribut": [3, 10, 16], "session": [3, 22], "addnod": 3, "site": [3, 5, 6, 9, 10, 11, 16, 19, 22], "fine": [3, 12, 16], "start": [3, 4, 5, 6, 11, 12, 15, 16, 18, 22], "problemat": [3, 6, 10, 19], "top": [3, 5, 9, 10, 18, 19], "level": [3, 9, 10, 11, 22], "layout": [3, 6, 13], "wish": [3, 6, 22], "zope": [3, 15], "share": [3, 5], "interfac": [3, 6, 11, 15, 16], "event": [3, 11, 19], "depend": [3, 6, 7, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20], "far": [3, 12, 21], "concern": 3, "entir": [3, 5, 9, 10, 12, 13, 14, 18, 22], "doabl": 3, "real": [3, 19, 20, 22], "we": [3, 4, 6, 8, 11, 12, 14, 15, 17, 20], "freshli": 3, "build": [3, 9, 10, 11, 15, 16, 18, 20, 22], "abl": [3, 15], "tmp": [3, 5, 9, 19, 20, 22], "portag": [3, 5, 8, 10, 12, 14, 15, 19, 22], "python3_8": 3, "traceback": [3, 5, 22], "last": [3, 5, 16], "stdin": 3, "modulenotfounderror": 3, "No": [3, 22], "now": [3, 5, 6, 8, 13, 14, 22], "around": [3, 5, 6, 11, 12, 22], "back": [3, 6, 16], "better": [3, 6, 11, 12, 13, 14, 20], "solut": [3, 15, 16, 20, 22], "unlik": [3, 5, 6, 11, 15], "tradit": 3, "act": 3, "proxi": [3, 14], "strictli": [3, 5, 6, 15, 22], "bound": [3, 11, 16], "permit": [3, 4, 5, 6, 11, 15, 22], "load": [3, 7, 9, 16, 19, 20, 22], "search": [3, 10, 15, 22], "method": [3, 5, 11, 13, 16, 19, 20, 22], "420": 3, "newer": [3, 4, 5, 6, 11, 12, 15, 16, 20], "pkgutil": 3, "standard": [3, 4, 6, 7, 9, 10, 11, 14, 16, 22], "discourag": [3, 6], "earlier": [3, 13], "ignor": [3, 4, 5, 8, 15, 19, 22], "did": [3, 13, 16, 22], "within": [3, 5, 6, 12, 15, 17, 22], "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, 18, 22], "pth": 3, "automat": [3, 4, 5, 6, 10, 12, 15, 18, 20, 22], "inject": [3, 21, 22], "portabl": 3, "topic": [3, 17], "exact": [3, 5, 11, 21], "detect": [3, 5, 9, 15, 22], "recogn": [3, 5, 15, 16], "lack": [3, 9, 22], "action": [3, 15, 22], "distinguish": [3, 5, 13], "veri": [3, 4, 5, 6, 9, 11, 15, 17, 18, 20, 22], "through": [3, 4, 5, 6, 8, 11, 16, 19, 22], "suspici": 3, "less": [3, 15, 22], "ruamel": 3, "miss": [3, 4, 5, 6, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20], "learn": 3, "about": [3, 5, 6, 13, 15], "collis": [5, 15, 22], "namespace_packag": 3, "per": [3, 20], "remov": [3, 4, 5, 6, 10, 11, 13, 14, 15, 19, 20, 22], "tree": [5, 12, 13, 20, 22], "after": [3, 6, 9, 11, 12, 13, 15, 16, 18, 20, 22], "python_compil": 3, "r1_python_compil": [3, 5], "jaraco": [3, 5, 12, 19], "equival": [6, 8, 9, 13, 18], "r1_python_instal": [3, 5], "python_install_al": 5, "r1_python_install_al": 5, "explicit": [3, 4, 5, 6, 18, 21, 22], "rdep": 3, "sed": [3, 5, 8, 14, 15, 19, 22], "r1_src_prepar": [3, 5, 19], "histor": [3, 6, 11, 13, 16, 18, 20], "process": [3, 5, 7, 12, 16, 20, 21], "retir": 3, "major": [4, 5, 6, 11, 15, 22], "avail": [4, 5, 6, 8, 11, 13, 15, 16, 17], "sqlite3": 4, "sqlite": [4, 8], "xdg": 4, "music": 4, "lollypop": 4, "adishatz": 4, "syntax": [4, 10, 11, 15, 20], "lightweight": [4, 20], "password": 4, "backend": [4, 10, 12, 13], "pwman3": 4, "mysql": [4, 14], "postgr": 4, "fulli": [4, 5, 7, 11], "solv": [4, 17], "python_gen_impl_dep": 4, "helper": [4, 5, 7, 10, 14, 21, 22], "2_7": [4, 22], "3_": 4, "travel": 4, "spulec": 4, "freezegun": [4, 19, 22], "pypi": [4, 5, 6, 8, 10, 11, 13], "dateutil": 4, "six": [4, 8, 22], "nose": [4, 22], "distutils_enable_test": [4, 5, 10, 13, 19], "ll": [4, 14], "backport": [4, 6, 10, 12], "zero": [4, 15], "argument": [4, 6, 10, 13, 16, 22], "output": [4, 5, 6, 9, 16, 20, 22], "everi": [4, 5, 6, 8, 11, 14, 15, 16, 18, 20, 22], "escap": [4, 13, 21], "quot": [4, 21], "partial": [4, 5, 9, 10, 13], "python_single_usedep": [4, 5, 13, 21], "cli": [4, 5], "black": 4, "click": 4, "fnmatch": 4, "style": [3, 4, 5, 13, 16, 17, 19, 22], "wildcard": 4, "stdlib": [4, 13, 16], "rememb": [4, 12, 18], "pattern": [4, 12, 13, 21], "prevent": [4, 5, 11, 21, 22], "filenam": [4, 5], "expans": 4, "expand": 4, "zoneinfo": 4, "advantag": [4, 5, 7, 19, 22], "adjust": [4, 9, 11, 16], "switch": [4, 7, 9, 11, 12, 13, 15, 22], "list": [4, 5, 8, 12, 13, 19, 20, 22], "longer": [4, 6, 11, 13, 18, 22], "silent": 4, "updat": [4, 6, 9, 11, 12, 16, 18], "immedi": [4, 5, 12, 21], "becam": [4, 11], "empti": [4, 5, 15, 18], "importlib_metadata": [4, 6, 15, 22], "python3_7": [4, 8], "facilit": [5, 9, 18], "deriv": [5, 6], "notabl": [5, 15, 16, 18], "effici": [5, 15], "oper": [5, 11, 17, 18], "backward": [5, 11, 16], "incompat": [5, 6, 11, 16, 19, 22], "greater": [5, 7], "number": [5, 7, 12, 15, 18, 19, 20, 22], "cost": [5, 11], "flexibl": [5, 7], "wheel": [5, 10, 11, 12, 15, 19, 20], "zip": [5, 6, 18], "stage": [5, 11, 20, 22], "compil": [5, 6, 10, 11, 22], "mere": [5, 7], "imag": [5, 9, 20], "compliant": [5, 7, 18], "invok": [5, 19, 22], "popul": [5, 15], "addition": [5, 9, 11, 14], "pyproject2setuppi": [5, 6, 13], "hack": [5, 6, 7, 13], "reli": [5, 6, 11, 22], "distutils_use_pep517": [5, 13], "legal": 5, "unset": [5, 6], "By": [5, 6, 11], "2022": [5, 13, 19], "xml": [5, 6], "feel": [5, 15], "json": 5, "martinblech": 5, "xmltodict": 5, "mit": [5, 6, 22], "vast": 5, "index": [5, 10], "sdist": [5, 15, 18, 20, 22], "binari": [5, 9, 12, 16], "mechan": [5, 7, 11], "over": [5, 7, 11, 12, 19, 21, 22], "offici": [], "instanc": [13, 16, 18], "nonfunct": [], "append": [5, 14, 15, 18, 22], "uniqu": [5, 14], "suffix": [5, 15, 18, 20], "gh": [5, 22], "request": [5, 8, 10, 12, 15], "distfil": [5, 16, 18, 21], "clearli": [5, 20, 22], "tarbal": [5, 12, 22], "textual": 5, "rich": 5, "implic": 5, "cf": [5, 12], "regener": [5, 12], "anywai": [5, 16], "nevertheless": [], "even": [5, 8, 9, 11, 19, 22], "pregener": 5, "internet": [5, 10, 19], "nodej": 5, "underli": [5, 6, 7], "txt": [5, 6, 12, 19], "ci": [5, 22], "travi": 5, "yml": 5, "grep": 5, "statement": [5, 20], "indirect": 5, "relev": [5, 6, 13, 17, 19, 22], "unnecessarili": 5, "logic": [5, 6, 12, 22], "long": [5, 11, 12], "quickli": 5, "widest": 5, "avoid": [5, 6, 8, 10, 15, 16, 17, 22], "unpredict": 5, "who": [5, 17, 22], "especi": [5, 7, 18, 19, 20, 22], "distutils_single_impl": [5, 7], "aim": [5, 11, 15, 17, 20], "exist": [5, 10, 11, 12, 16, 20], "rewritten": [5, 21, 22], "layer": [5, 14], "pyroot": 5, "rootpi": 5, "physic": [5, 21], "root_numpi": 5, "pytabl": 5, "termcolor": 5, "determin": [5, 6, 7, 11, 21, 22], "flit_cor": [5, 12, 20], "maintain": [5, 10, 11, 12, 16, 19], "suggest": [5, 8, 13, 15, 17, 19, 20, 22], "tabl": [5, 12, 13, 15, 16, 19], "summar": [5, 16], "use_pep517": 5, "hatchl": 5, "jupyt": 5, "jupyter_packag": 5, "build_api": 5, "maturin": 5, "mesonpi": 5, "see": [5, 9, 16, 19, 20, 22], "below": [5, 8], "pbr": [5, 6], "pdm": [5, 13], "pep517": [5, 20], "sip": [5, 8, 15], "sipbuild": 5, "standalon": [5, 12], "itself": [5, 6, 8, 9, 12, 15, 19], "own": [5, 22], "Their": [6, 9, 20], "fix": [5, 6, 10, 11, 12, 15, 16, 19, 20, 22], "produc": [12, 15, 20], "ident": 20, "artifact": 20, "reduc": 20, "footprint": 20, "isol": 20, "faster": 20, "poetry_cor": 20, "smaller": 20, "40": [12, 20], "incorrect": [5, 6, 20], "intend": [16, 20, 22], "implicit": [14, 20, 22], "fallback": [6, 20], "regular": [3, 7, 20, 22], "pleas": [5, 6, 8, 9, 12, 15, 16, 18, 19, 20, 21, 22], "alwai": [5, 6, 8, 11, 13, 16, 17, 18, 20], "unfortun": [13, 15, 16, 19, 20, 22], "due": [10, 12, 14, 18, 19, 20], "prolong": 20, "larg": [5, 12, 15, 19, 20], "tend": 20, "mistak": [15, 20], "checkout": [5, 12, 22], "abil": [5, 6], "tag": [5, 12, 18, 22], "execut": [5, 6, 7, 9, 11, 12, 13, 14, 22], "143": 5, "_install_setup_requir": 5, "attr": [5, 12, 22], "131": 5, "dist": 5, "dict": [5, 21], "425": 5, "_distribut": 5, "self": [5, 16, 19, 22], "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, 16], "lookuperror": 5, "scm": 5, "unabl": [5, 15, 22], "sure": [5, 15, 19, 22], "re": [5, 8, 15, 22], "intact": 5, "git": [5, 12, 22], "folder": 5, "don": [5, 13], "t": [5, 7, 8, 11, 13, 22], "pip": [5, 12, 22], "proj": 5, "master": [5, 22], "egg": [5, 6, 19], "setuptools_scm_pretend_vers": 5, "static": [5, 8], "write": [5, 6, 7, 12, 16, 17, 20], "hybrid": [5, 10], "expos": [5, 6, 22], "guarante": [5, 6, 10, 18], "taken": [5, 16, 22], "ship": [5, 20], "issu": [5, 6, 13, 15, 16, 19, 22], "forc": [4, 5, 6, 8, 9, 12, 13, 19, 22], "frobnic": 5, "makefil": [5, 14], "jq": 5, "pyx": 5, "unresolv": 5, "regard": 5, "simultan": [5, 11, 17, 22], "link": [5, 7, 9, 16], "editor": 5, "broken": [5, 6, 19, 22], "cryptic": 5, "revers": [5, 7, 12, 15], "miscompil": 5, "panda": 5, "breakag": [5, 22], "dask": [5, 19], "29": 5, "_lib": 5, "hashtabl": 5, "_hashtabl": 5, "tslib": 5, "_tslib": 5, "13": [5, 15, 18, 19, 22], "interv": 5, "init": 5, "30": [5, 11], "convers": [5, 6], "outofboundstimedelta": 5, "localize_pydatetim": 5, "importerror": [5, 6, 10, 11, 16], "38": [5, 20], "x86_64": 5, "undefin": 5, "symbol": 5, "pandas_datetime_to_datetimestruct": 5, "easiest": [5, 15, 21], "workaround": [5, 20], "j1": 5, "origin": [5, 9, 11, 12, 16], "overrid": [5, 9, 14, 18, 22], "extend": [5, 11], "introduc": [5, 11], "src_": 5, "python_": [5, 8], "_all": [5, 8], "compris": 5, "behav": [5, 8], "r1_": 5, "correspond": [5, 11, 12, 15], "python_prepare_al": [5, 19], "each": [5, 6, 7, 11, 14], "foreach": [], "python_configure_al": 5, "python_compile_al": [5, 8], "python_test_al": 5, "dedic": [5, 6, 12, 14], "chang": [5, 6, 8, 9, 10, 11, 13, 14, 15, 18, 20, 22], "task": [5, 8, 12], "default_src_prepar": 5, "ez_setup": 5, "bootstrap": [5, 6, 10], "end": [5, 6, 7, 9, 11, 14, 19, 22], "dir": [5, 14], "extran": 5, "fixm": 5, "test_pytest_plugin": 5, "test_testcase_no_app": 5, "_": [5, 12, 15, 18, 22], "test_test_util": 5, "pointless": 5, "cov": [5, 19, 22], "addopt": 5, "aiohttp": [5, 19], "r1_python_prepare_al": [5, 19], "duplic": [5, 14, 22], "moment": [5, 11, 13, 15], "modif": 5, "keep": [5, 15, 17], "why": [5, 6, 10], "console_script": [5, 6], "configur": [5, 6, 8, 13, 14, 20, 22], "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, 19], "too": [5, 11, 22], "collada": 5, "einstalldoc": [5, 8, 14], "docinto": 5, "sample_cod": 5, "docompress": 5, "pf": 5, "main": [5, 9], "manipul": [5, 22], "arrai": 5, "futur": [5, 15, 18], "pillow": 5, "build_ext": [5, 6, 22], "tiff": 5, "webp": 5, "dash": 5, "underscor": [5, 15, 18, 22], "boolean": 5, "disable_tiff": 5, "enable_tiff": 5, "disable_webp": 5, "enable_webp": 5, "modifi": [5, 6, 11, 15, 20, 22], "beforehand": 5, "econf": [5, 21], "paremet": 5, "find_packag": 20, "wrongli": [16, 20, 22], "grab": [13, 20], "attempt": [16, 20, 22], "forbidden": [], "exclud": 20, "paramet": [8, 16, 20, 22], "properli": [6, 13], "intermedi": [], "minim": [11, 15, 16, 22], "precis": [8, 9, 22], "catch": [20, 22], "earli": [7, 8, 12, 22], "anywher": [], "first": [6, 10, 11, 12, 15, 16, 19, 20, 22], "easi": [16, 20, 22], "whitelist": 22, "sanit": [11, 16, 22], "mozilla": 22, "bleach": 22, "webencod": 22, "unittest": [5, 11, 22], "discoveri": [19, 20, 22], "univers": 22, "encod": [16, 22], "detector": 22, "chardet": [8, 22], "cygwin": [6, 22], "hypothesi": 22, "bottom": 22, "venv": [5, 6, 13, 22], "temporari": [5, 6, 22], "frequent": [18, 19, 22], "littl": [6, 19, 22], "skip": [4, 8, 10, 12, 16, 20], "those": [5, 6, 8, 9, 19, 22], "how": 22, "statist": 22, "want": [6, 8, 22], "across": [5, 11, 22], "irrelev": 22, "pep8": 22, "pycodestyl": 22, "flake8": [19, 22], "thin": [6, 22], "alreadi": [9, 12, 14, 15, 16, 20, 22], "close": 22, "pre": 22, "post": [6, 13, 15, 18, 22], "easili": [5, 14, 19, 22], "r1_src_test": [5, 22], "cmd": 22, "cmd2": 22, "colorama": 22, "pyperclip": 22, "wcwidth": 22, "text": [5, 8, 16, 22], "column": 22, "80": 22, "fact": 22, "simpli": [15, 16, 17, 22], "3_6": [14, 22], "3_7": [14, 22], "3_8": 22, "tab": [15, 22], "argpars": 22, "argcomplet": 22, "fish": 22, "tcsh": 22, "rel": [19, 20, 22], "epytest": [4, 5, 6, 8, 12, 19, 22], "network": [6, 19, 22], "marker": [10, 22], "m": [15, 19, 20, 22], "displai": 22, "appeas": 22, "usng": 22, "xvfb": 22, "server": 22, "virtx": 22, "nonfat": 22, "termin": 22, "context": [21, 22], "come": [5, 13, 19], "theme": [5, 6, 8], "hard": [5, 8, 12], "To": [5, 6, 8, 9, 12, 15, 16, 19, 20, 21], "conf": [5, 6, 20], "ext": 5, "distutils_use_setuptool": [5, 13], "color": 5, "stream": 5, "handler": 5, "log": [5, 20], "coloredlog": 5, "xolox": 5, "readthedoc": 5, "en": 5, "latest": [5, 15], "humanfriendli": 5, "expert": [5, 10, 14, 22], "uncommon": [5, 15], "third": [5, 7, 13, 20], "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": [3, 5, 6, 8, 11, 12, 13, 14, 16, 19, 20], "assumpt": 5, "consum": [5, 6, 22], "distutils_opt": 5, "alter": [5, 19], "distutils_dep": 5, "dependneci": 5, "r1_src_compil": 5, "r1_src_instal": 5, "primari": [5, 19], "alongsid": [5, 6], "libfoo": 5, "r1_src_configur": [], "setuptools_rust": 5, "ecosystem": [5, 15, 17], "bump": [5, 12, 15, 18], "lock": 5, "Then": 12, "crate": 5, "cargo_opt": 5, "url": [5, 10, 11, 15, 16], "cargo_crate_uri": 5, "qa_flags_ignor": 5, "posit": [5, 15], "cflag": [5, 9, 22], "cargo_src_unpack": 5, "inflector": 5, "alias": [5, 16], "asn1": 5, "asn1_der": 5, "_rust": 5, "src_unpack": 5, "benefit": [5, 7], "yet": [3, 5, 8, 11, 21], "cyclic": 5, "suppos": [5, 16], "overlap": 5, "machineri": 5, "op": 5, "unless": [5, 6, 8, 15, 18], "merg": [4, 5], "toward": 5, "effect": [5, 8, 11, 20], "pick": [5, 12], "up": [5, 6, 9, 11, 13, 14, 15, 17, 19, 20, 22], "hukkin": 5, "tomli": [5, 12, 15], "pythonhost": [5, 18], "py3": [5, 18, 19], "whl": [5, 18], "unzip": [5, 18], "deliber": 5, "unpack": [5, 18], "gpep517": [5, 18, 20], "python_newscript": [5, 9], "__main__": [5, 22], "exit": [5, 16, 20, 22], "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, 21], "direct": [6, 14], "convert": [6, 8, 13], "facil": 6, "right": [6, 7], "fit": [6, 22], "profil": [4, 6, 15], "pyproject2toml": 6, "misbehav": 6, "subsequ": [6, 18, 20], "qa": [5, 6, 9, 10, 12, 17], "expect": [6, 11, 16, 19, 20, 22], "sidebar": 6, "bitprophet": 6, "possibli": [6, 22], "snippet": [6, 16, 20], "except": [6, 7, 9, 11, 12, 16], "pm": 6, "cleanli": [6, 12], "condit": [6, 10, 12, 19, 22], "leav": 6, "never": [6, 11, 13, 16], "clean": [6, 11, 13], "requier": 6, "With": [6, 22], "themselv": [6, 19, 20, 22], "entry_point": [6, 19], "dictionari": [6, 21], "our": [6, 19, 22], "interest": [6, 8, 22], "gui_script": 6, "meaning": 6, "importlib": [6, 11, 22], "fall": [6, 16], "remind": 6, "distutils_strict_entry_point": 6, "trigger": [6, 12, 19, 20, 22], "wrong": [6, 13, 15], "leftov": 6, "resourc": [6, 11, 12, 20], "submit": [6, 20], "suppli": 6, "heavi": 6, "speak": [6, 11], "known": [6, 16, 22], "limit": [6, 12, 15, 17], "address": [6, 11, 16], "definit": 6, "subdirectori": [6, 9], "interspers": [6, 20], "closest": 6, "inplac": 6, "shift": [6, 11], "throughout": 6, "2to3": 6, "distutils_in_source_build": 6, "collect": [6, 19, 22], "pypa": 6, "riscv": [6, 8, 21], "pythonpath": [6, 22], "distutils_install_for_test": [6, 13, 19, 22], "alik": [6, 7, 11, 13], "preserv": [6, 11, 15, 16], "extrem": [3, 5, 6], "home": [6, 12, 13], "went": 6, "awai": [6, 7, 18], "python_test": [4, 6, 8, 9, 12, 19, 22], "total": 7, "rare": [7, 9, 19, 22], "simpler": 7, "complex": [5, 7, 16, 18, 21], "primarili": [7, 11], "involv": [7, 8, 13], "graph": [7, 11, 12], "meet": 7, "potenti": [7, 11, 15, 16, 19], "basi": 7, "occur": [7, 11, 19], "libpython": [7, 11, 16], "aforement": [7, 13, 16, 18], "foo": [7, 16], "wise": 7, "abstract": [7, 14, 18], "scon": [7, 8, 10, 20], "second": [7, 13, 20], "easier": [7, 18, 20], "select": [7, 8, 19, 21], "allow": [7, 22], "repeat": [7, 14, 15, 20], "model": 7, "libboost_python": 7, "python_single_target": [7, 11, 12], "Its": [7, 12, 18], "legaci": [7, 10, 13, 16, 20, 22], "power": 8, "harder": [8, 15], "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, 22], "httpbin": [8, 19], "hang": 8, "continu": [8, 12, 22], "python_gen_useflag": 8, "out": [8, 9, 10, 11, 12, 13, 14, 15, 16], "toolkit": 8, "translat": [8, 18], "format": [8, 12, 15, 16, 18, 20], "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, 21], "bison": 8, "flex": 8, "prepar": [8, 9, 20, 21], "bindir": 8, "incdir": 8, "python_get_includedir": [8, 9, 13], "echo": [8, 20], "distutils_all_subphase_impl": 8, "python3_5": 8, "bzip2": 8, "epydoc": 8, "eselect": 8, "elibc_glibc": 8, "sandbox": [8, 20, 22], "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, 11], "resembl": [8, 19], "presenc": [5, 8, 19], "activ": [8, 17], "behavior": [8, 11, 16, 18], "goal": [8, 12, 22], "side": [8, 11], "someth": [8, 9, 22], "accord": [8, 18], "integr": [8, 9, 10, 11], "won": 8, "reject": [8, 15, 16], "unsupport": [8, 11], "python_is_python3": [8, 13], "basic": [9, 10], "reus": [9, 15], "four": [9, 13, 21], "python_doex": 9, "python_newex": 9, "python_doscript": [9, 14, 21], "recurs": [9, 15, 19], "python_dohead": 9, "python_scriptinto": 9, "affect": [9, 11, 14, 18], "symlink": 9, "onto": 9, "improv": [9, 10, 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], "_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, 21], "dpython_dest": 9, "dpython_execut": 9, "dpython_include_dir": 9, "dpython_librari": 9, "cmake_src_configur": [9, 21], "pyinc": 9, "pylib": 9, "micha\u0142": 10, "g\u00f3rny": 10, "creativ": 10, "intern": 10, "prefac": 10, "life": 10, "cycl": [10, 12], "stabil": 10, "choos": [10, 11, 14], "overview": 10, "variant": [10, 11, 16, 19], "flit_scm": 10, "hatch": 10, "vc": [10, 22], "snapshot": [10, 22], "parallel": 10, "race": 10, "command": [10, 14, 15, 19, 20, 22], "usag": [10, 18], "rust": 10, "cargo": 10, "variat": 10, "byte": [10, 16], "queri": [10, 16], "advanc": 10, "cffi": 10, "greenlet": [10, 19], "checklist": 10, "abort": 10, "assert": [5, 10, 20], "recip": 10, "xdist": [10, 12, 22], "autoload": 10, "typeerror": 10, "_make_test_flaki": 10, "got": [10, 13], "unexpect": [10, 20], "rerun": 10, "importpathmismatcherror": 10, "fixtur": [10, 12], "namespac": [10, 19], "disjoint": 10, "waf": [10, 21], "tip": [10, 22], "retroact": 10, "migrat": [10, 18], "bytecod": 10, "relat": [5, 10, 12, 13, 15, 22], "mainten": 10, "co": [10, 22], "monitor": [10, 20], "routin": [10, 14], "page": [10, 16, 17], "increment": 11, "minor": [11, 22], "plan": 11, "On": 11, "hand": [11, 13], "platform": [11, 16, 18, 22], "linux_distribut": 11, "window": 11, "understood": 11, "initi": [11, 22], "enter": 11, "stabl": [11, 12, 15], "prematur": [11, 15], "mask": [4, 11, 12, 15], "beta": [11, 12], "made": [11, 13, 14, 16, 21], "regress": 11, "readi": [11, 12, 15], "dai": 11, "inconsist": [11, 15, 22], "mark": [11, 15, 19, 22], "architectur": [4, 11], "clear": [11, 15], "depenend": 11, "repeatedli": 11, "ask": [11, 15], "push": [11, 12, 15], "forward": 11, "eventu": [11, 12], "becom": [11, 16], "slowli": [11, 15], "discontinu": 11, "next": [11, 12, 15, 19], "june": 11, "juli": 11, "year": 11, "predict": [11, 21], "nears": 11, "great": 11, "obsolet": [11, 13], "feasibl": [4, 11, 15], "vulner": 11, "break": [11, 15, 16], "revert": 11, "enum": 11, "urlsplit": 11, "secur": [11, 12], "abi": [11, 18], "bugfix": 11, "occasion": 11, "remain": [4, 11, 12, 13], "contrari": [11, 16], "hold": [11, 16], "subslot": 11, "fortun": 11, "late": 11, "hous": 11, "rpython": 11, "lot": [11, 15], "good": [3, 11, 15, 17, 19, 22], "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, 20], "ideal": [11, 15, 22], "funcsig": 11, "signatur": [11, 16], "afterward": [11, 14, 15], "later": 11, "lzma": 11, "compet": 11, "amount": [11, 12, 22], "ipaddress": 11, "drop": [11, 16], "box": [11, 13], "hexvers": [11, 22], "0x03030000": 11, "trolliu": 11, "asyncio": [11, 19, 22], "nativ": 11, "workflow": 12, "clone": 12, "remot": [12, 15, 22], "fetch": [5, 10, 12], "rebas": 12, "v3": 12, "cherri": 12, "upload": 12, "mkdir": 12, "scp": 12, "precompil": [12, 20], "unusu": 12, "structur": [12, 22], "ex": 12, "technic": [12, 18], "docker": 12, "binpkg": 12, "diff": 12, "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": [3, 12], "20": [12, 18], "pwd": 12, "round": 12, "signific": [4, 12, 19], "remaind": 12, "pydant": 12, "epytest_deselect": [4, 12, 19], "test_comparison": 12, "test_close_to_now_": 12, "lenient": 12, "deselect": [4, 12, 19, 22], "unblock": 12, "100": 12, "emerg": [12, 20], "previous": 12, "reinstal": 12, "batch": [12, 20], "focus": 12, "reenabl": [12, 19], "face": [12, 22], "goe": [12, 22], "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, 22], "given": 13, "repoman": 13, "pkgcheck": [13, 15], "tell": 13, "chose": 13, "reorder": 13, "desir": [13, 16, 20, 22], "scan": [13, 15], "unmatch": 13, "trial": 13, "stuff": 13, "thing": [13, 17, 19], "privat": 13, "python_export": 13, "python_wrapper_setup": 13, "python_gen_usedep": 13, "mydistutilsarg": 13, "renam": [13, 15, 16, 18, 20], "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, 18], "realli": [13, 15, 19, 22], "ugli": 13, "sole": 13, "uppercas": [13, 15, 16, 18], "fourth": 13, "cruft": 13, "short": [13, 19], "evalu": 13, "januari": 13, "safe": 13, "streamlin": 13, "inde": 13, "foundat": 14, "fionet": 14, "psql": 14, "cach": 14, "sourceforg": [14, 21], "replic": 14, "tgz": 14, "libcangji": 14, "cangjian": 14, "i18n": 14, "eautoreconf": [14, 16], "econf_sourc": 14, "la": 14, "multibuild": 14, "unnecessari": [14, 15, 21, 22], "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, 21], "qemu": 14, "kernel": 14, "machin": [14, 20], "userland": 14, "kvm": 14, "qemu_python_instal": 14, "vmxcap": 14, "qmp": 14, "ga": 14, "reach": 15, "eol": [15, 16], "proactiv": 15, "anticip": 15, "soon": 15, "wide": [15, 22], "revis": [12, 15], "newli": 15, "risk": 15, "team": 15, "manpow": 15, "member": 15, "u": 15, "gemato": 15, "carri": 15, "histori": 15, "rss": 15, "comprehens": 15, "opml": 15, "followup": 15, "track": [12, 15], "mail": [12, 15], "suscept": 15, "confus": [15, 19], "sync": [15, 19], "conflict": 15, "cx": 15, "freez": 15, "patchelf": 15, "openapi": 15, "spec": [15, 16], "60": 15, "59": 15, "62": 15, "pin": 15, "httpcore": 15, "15": 15, "httpx": 15, "23": [15, 22], "sphobjinv": 15, "28": 15, "date": [15, 17, 20, 22], "pend": 15, "pip3": 15, "dirti": 15, "equal": [15, 22], "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, "sign": [12, 15], "tag_build": 15, "compar": [15, 16], "tempest": 15, "oslo": 15, "stestr": 15, "versioningit": 15, "wstool": 15, "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, 22], "unpars": 16, "django": [16, 22], "pr": 16, "14349": 16, "impact": [16, 20], "urlpars": 16, "nurl": 16, "parseresult": 16, "scheme": 16, "netloc": 16, "param": [16, 19], "badurl": 16, "what": 16, "attributeerror": 16, "492": 16, "decor": [16, 22], "async": [16, 19], "def": [16, 19, 22], "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, "int": 16, "str": 16, "float": 16, "k6": 16, "k7": 16, "k8": 16, "One": [16, 22], "prototyp": 16, "bar": 16, "pretti": 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, "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": [5, 17], "beyond": 17, "reliabl": [17, 22], "deep": 17, "beginn": 17, "peopl": 17, "suboptim": 17, "improp": 17, "fill": 17, "gap": 17, "welcom": 17, "whole": [4, 19, 22], "parametr": 19, "epytest_ignor": 19, "test_client": 19, "test_gener": 19, "test_filenam": 19, "test_transport": 19, "test_transport_work": 19, "eventlet": 19, "test_contextvar": 19, "test_leak": 19, "might": 19, "intent": 19, "Not": 19, "collid": [3, 19, 22], "instabl": 19, "unstabl": 19, "discret": 19, "decid": 19, "justifi": 19, "semi": 19, "random": 19, "multiprocess": 19, "finish": 19, "01": 19, "chanc": 19, "experienc": 19, "insuffici": 19, "nest": 19, "envvar": 19, "pytest_disable_plugin_autoload": 19, "pytest_plugin": 19, "comma": 19, "looponfail": 19, "pytest_fork": 19, "flaki": [19, 22], "rerunfailur": 19, "supposedli": 19, "twice": 19, "_pytest": [19, 22], "pathlib": [19, 22], "posixpath": 19, "signifi": 19, "event_loop": 19, "freezer": 19, "mocker": 19, "captur": [19, 22], "summari": 19, "asgiref": 19, "135": 19, "test_loc": 19, "test_sync": 19, "test_sync_contextvar": 19, "deprecationwarn": 19, "main_event_loop": 19, "get_event_loop": 19, "filterwarn": 19, "fatal": [19, 22], "_____________________": 19, "______________________": 19, "577": 19, "asgitest": 19, "testcas": 19, "583": 19, "test_wrapped_case_is_collect": 19, "interrupt": 19, "world": 19, "elog": 20, "portage_elog_class": 20, "optim": 20, "size": 20, "oo": 20, "docstr": 20, "store": 20, "disk": [20, 22], "permiss": 20, "uninstal": 20, "violat": 20, "auxiliari": 20, "readabl": [20, 22], "trimesh": 20, "__pycache__": 20, "blender_boolean": 20, "310": 20, "opt": 20, "notic": 20, "blueman": 20, "constant": 20, "deviceclass": 20, "sdp": 20, "tmpl": 20, "pair": 20, "docbook": 20, "35": 20, "36": 20, "plot": 21, "voacap": 21, "propag": 21, "qsl": 21, "hz1jw": 21, "pythonprop": 21, "basemap": 21, "gtk2": 21, "doubl": 21, "energi": 21, "yoda": 21, "hepforg": 21, "use_en": 21, "pyext": 21, "extra_opt": 21, "give": 21, "sound": 21, "signal": [21, 22], "composit": 21, "csound": 21, "fordfrog": 21, "dbuild_python_interfac": 21, "dbuild_python_opcod": 21, "superset": 21, "arab": 21, "arabey": 21, "duali": 21, "pyduali": 21, "dict2db": 21, "trans2arab": 21, "arabic2tran": 21, "domain": 22, "firstli": 22, "idea": [15, 22], "nosetest": 22, "secondli": 22, "strict": 22, "thirdli": 22, "wholli": 22, "spew": 22, "seem": 22, "ceas": 22, "downstream": 22, "convinc": [4, 22], "preced": 22, "area": 22, "____________________": 22, "systemd": 22, "test_login": 22, "234": 22, "hint": [12, 22], "578": 22, "_importtestmodul": 22, "mod": 22, "import_path": 22, "fspath": 22, "importmod": 22, "524": 22, "import_modul": 22, "module_nam": 22, "127": 22, "_bootstrap": 22, "_gcd_import": 22, "frozen": 22, "1014": 22, "991": 22, "_find_and_load": 22, "975": 22, "_find_and_load_unlock": 22, "671": 22, "_load_unlock": 22, "rewrit": 22, "170": 22, "exec_modul": 22, "__dict__": 22, "login": 22, "r2": 22, "discov": 22, "pyarg": 22, "guess": 22, "quick": 22, "mayb": 22, "eunittest": 22, "aris": 22, "confirm": 22, "whom": 22, "myself": 22, "subtl": 22, "lead": 22, "But": 22, "bewar": 22, "unexpectedli": 22, "test_start_params_bug": 22, "xfail": 22, "statsmodel": 22, "tsa": 22, "test_arima": 22, "horrend": 22, "space": 22, "mayhem": 22, "5a": 22, "test_null_byt": 22, "skipif": 22, "0x03000000": 22, "unconditioanlli": 22, "test_babel_with_language_": 22, "test_build_latex": 22, "test_polyglossia_with_language_": 22, "altogeth": 22, "replai": 22, "devmanu": 22, "explan": 22, "connect": 22, "pygit2": 22, "no_network": 22, "properti": 22, "test_network": 22, "allow_test": 22, "unclear": 22, "backtrac": 22, "pluggi": 22, "cachedir": 22, "pytest_cach": 22, "rootdir": 22, "var": 22, "sabyenc": 22, "configfil": 22, "item": 22, "test_decod": 22, "test_crc_pickl": 22, "54": 22, "test_empty_size_pickl": 22, "0x00007f748bc47740": 22, "testsupport": 22, "74": 22, "sabyenc3_wrapp": 22, "119": 22, "180": 22, "pytest_pyfunc_cal": 22, "caller": 22, "187": 22, "_multical": 22, "temp": 22, "2934": 22, "66": 22, "dump": [16, 22], "vv": 22, "34": 22, "timeout": 22, "25": 22, "sabyenc3": 22, "596": 22, "decode_usenet_chunk": 22, "pybytearray_check": 22, "pylist_getitem": 22, "py_input_list": 22, "lp": 22, "0x00007fb5db746740": 22, "73": 22, "117": 22, "87": 22, "lambda": 22, "runpi": 22, "85": 22, "_run_cod": 22, "193": 22, "_run_module_as_main": 22, "reproduc": 22, "ubuntu": 22, "dndebug": 22, "leak": 22, "o0": 22, "isort": 22, "distutils_pep517_instal": 22, "destin": 22, "cp": 22, "pushd": 22, "null": 22, "popd": 22, "novemb": 16, "tomllib": [], "w": 18, "tomlkit": 16, "edit": 16, "wherea": [16, 18], "input": 16, "tomldecodeerror": 16, "d1": 16, "in1": 16, "in2": 16, "d2": 16, "d3": 16, "rb": 16, "insist": 16, "incompatibilit": 16, "consider": 16, "tomli_w": 16, "wb": 16, "trustm": 4, "test_request": 4, "testrequest": 4, "test_https_warn": 4, "outer": 4, "tl": 4, "pull": 4, "python_vers": 16, "pycargoebuild": 5, "obsolesc": 12, "announc": 12, "proce": 12, "progress": 12, "show": 12, "effort": 12, "rite": [], "_python_historical_impl": 12, "statu": 12, "dead": 12, "polici": 10, "live": [], "2023": 5, "conform": [15, 18], "publish": 15, "hyphen": 15, "dot": [15, 18], "crucial": 15, "bugzilla": 15, "illustr": 15, "flask": [15, 18], "babel": 15, "github3": 15, "sphinx_pytest": 15, "redirect": 15, "mismatch": [], "charact": [15, 18], "canon": [15, 18], "id": 15, "unnot": [], "bear": 15, "mind": 15, "doubt": 15, "reserv": 15, "503": 15, "insensit": 15, "letter": [15, 18], "turn": 15, "lowercas": [15, 18], "titl": [15, 18], "423": 15, "incomplet": 5, "strai": 10, "changelog": 20, "wait": 20, "qawarn": 20, "box_logo": [], "png": [], "test_": [], "ref": [], "buildapi": 5, "masonri": 5, "build_meta": 5, "__legacy__": 5, "small": 18, "adapt": 18, "overwritten": 18, "execnet": 18, "c0459b92bc4a42b08281e69b8802d24c5d3415d4": 18, "pypi_sdist_url": 18, "markup": 18, "prebuilt": 18, "pypi_wheel_url": 18, "aid": 18, "ensurepip": 18, "pypi_wheel_filenam": 18, "synopsi": 18, "hash": 18, "2e": 18, "36e46173a288c1c40853ffdb712c67e0e022df0e1ce50b7b1b50066b74d4": 18, "inconveni": 18, "settl": 18, "pytag": 18, "625": 18, "440": 18, "transform": 18, "contigu": 18, "babelex": 18, "flask_babelex": 18, "predat": 18, "minu": 18, "abitag": 18, "platformtag": 18, "cp39": 18, "427": 18, "alphanumer": 18, "left": 18, "_alpha": 18, "_beta": 18, "_p": 18, "pypi_no_norm": 18, "overriden": 18, "r1_run_phas": 3, "pypi_pn": 18, "loadabl": 5, "distutils_ext": 5, "cross": 5, "isn": 5, "worth": 5, "worri": 5, "depgraph": 12}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"python": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21, 22], "ani": [0, 8], "r1": [0, 2, 5, 6, 7, 8, 13, 14, 21], "build": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 21], "time": [0, 2, 7, 8, 14, 21], "depend": [0, 1, 2, 4, 5, 8, 14, 19, 21, 22], "basic": [0, 1, 5, 21, 22], "us": [0, 2, 3, 4, 5, 6, 7, 8, 14, 19, 21, 22], "uncondit": [0, 21], "condit": [0, 2, 4, 5, 14, 21], "addit": [0, 5, 14], "multipl": [0, 11, 21], "set": [0, 8], "common": [1, 9], "python_compat": 1, "python_dep": 1, "python_required_us": 1, "environ": [1, 22], "packag": [1, 2, 3, 4, 5, 6, 7, 12, 14, 15, 16, 18, 20, 21, 22], "The": [1, 5], "most": 1, "type": 1, "find": 1, "list": [1, 15, 16], "from": [1, 13], "system": [1, 2, 5, 6, 12], "integr": [2, 5], "written": 2, "meson": 2, "scon": 2, "extra": [2, 22], "singl": [2, 5, 7, 13, 21], "impl": [2, 7, 14, 21], "instal": [2, 5, 6, 9, 14, 15, 20, 21, 22], "pure": [2, 14], "multi": [2, 7, 14], "hybrid": [2, 21], "waf": 2, "advanc": [3, 4], "concept": [3, 6], "namespac": 3, "hierarch": 3, "structur": 3, "determin": 3, "whether": 3, "ar": [3, 20], "ad": [3, 12, 15, 22], "new": [3, 12, 15], "gentoo": [3, 10], "legaci": [3, 5, 6, 18], "request": 4, "flag": 4, "interpret": [4, 8, 11, 12], "version": [4, 11, 15, 18], "cffi": 4, "greenlet": 4, "distutil": [5, 6, 7, 8, 16], "standard": 5, "pep": [5, 13, 20, 22], "517": [5, 13, 20, 22], "mode": [5, 22], "sourc": [5, 6, 18], "archiv": [5, 18], "variant": 5, "deprec": [16, 20], "backend": [5, 20], "flit": 20, "buildapi": 20, "poetri": 20, "masonri": 20, "api": [8, 20], "setuptool": [6, 20], "build_meta": 20, "__legacy__": 20, "setuptools_scm": 5, "flit_scm": 5, "hatch": 5, "vc": 5, "snapshot": 5, "cython": 5, "parallel": [5, 19], "race": 5, "sub": 5, "phase": [5, 22], "function": [5, 9], "python_prepar": 5, "python_configur": 5, "python_compil": 5, "python_test": 5, "python_instal": 5, "pass": 5, "argument": [5, 19], "setup": 5, "py": 5, "call": 5, "custom": [5, 18, 22], "command": 5, "prevent": [], "test": [4, 5, 6, 15, 19, 20, 22], "directori": [], "being": [], "enabl": 5, "distutils_enable_test": 22, "more": 22, "befor": [6, 22], "run": [19, 22], "undesir": 22, "pytest": [19, 22], "virtualx": 22, "document": [5, 20], "via": [5, 15], "sphinx": 5, "autodoc": 5, "extens": [5, 22], "without": [5, 16], "option": [4, 5], "usag": [5, 8], "rust": [4, 5], "cargo": 5, "manual": [5, 14, 21], "build_dir": 5, "d": 5, "non": 5, "differ": [6, 8, 18], "variat": 6, "distutils_use_setuptool": 6, "entri": 6, "point": 6, "other": [6, 19], "runtim": [6, 7, 21], "pyproject": 6, "toml": [6, 16], "base": [6, 16, 19], "project": [6, 15], "In": 6, "v": [6, 7], "out": 6, "choos": [7, 22], "between": 7, "eclass": [7, 12, 18], "overview": 7, "first": 7, "expert": [8, 19], "partial": 8, "restrict": 8, "implement": [8, 9, 11, 12, 15], "python_setup": 8, "disjoint": 8, "regular": 8, "combin": 8, "helper": [9, 18], "fix": 9, "shebang": 9, "script": 9, "byte": [9, 20], "compil": [9, 20], "modul": [9, 20], "queri": 9, "inform": 9, "guid": [10, 13], "content": 10, "indic": 10, "tabl": 10, "life": 11, "cycl": 11, "stabil": 11, "guarante": 11, "altern": 11, "support": [11, 15], "backport": 11, "mainten": [12, 15], "note": 12, "specif": 12, "cpython": 12, "patchset": 12, "pypi": [12, 15, 18, 22], "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, "monitor": 15, "releas": 15, "feed": 15, "check": [15, 20], "pip": 15, "repologi": 15, "routin": 15, "outdat": 15, "gpy": 15, "verifi": 15, "dep": 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, 18], "coroutin": 16, "remov": [12, 16], "asyncio": 16, "inspect": 16, "getargspec": 16, "formatargspec": 16, "10": 16, "configur": 16, "No": 16, "1": 16, "found": [16, 19], "sysconfig": 16, "9": 16, "base64": 16, "encodestr": 16, "decodestr": 16, "config": 16, "pkg": 16, "longer": 16, "librari": 16, "default": 16, "prefac": 17, "recip": 19, "skip": [19, 22], "marker": 19, "path": 19, "name": [15, 18, 19], "avoid": 19, "runner": [19, 22], "xdist": 19, "plugin": 19, "explicitli": 19, "disabl": 19, "automat": 19, "autoload": 19, "entir": 19, "typeerror": 19, "_make_test_flaki": 19, "got": 19, "an": 19, "unexpect": 19, "keyword": 19, "rerun": 19, "importpathmismatcherror": 19, "fixtur": 19, "warn": [19, 20], "qa": 20, "improv": 20, "report": 20, "portag": 20, "bytecod": 20, "relat": 20, "strai": 20, "A": 21, "resolv": [], "suit": 4, "problem": [], "correct": 22, "miss": 22, "file": [20, 22], "importerror": 22, "c": [5, 22], "checklist": 22, "deal": 22, "failur": 22, "problemat": 22, "requir": 22, "internet": 22, "access": 22, "abort": 22, "due": 22, "assert": 22, "awai": [], "introduct": [], "tomllib": 16, "tomli": 16, "fallback": 16, "w": 16, "replac": 16, "prepar": 12, "polici": 15, "top": 20, "level": 20, "site": 20, "exampl": 20, "why": 22, "i": 22, "import": 22, "case": 22, "match": 18, "url": 18, "fetch": 18, "wheel": 18, "modern": 18, "distribut": 18, "filenam": 18, "binari": 18}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "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": 57}, "alltitles": {"python-any-r1 \u2014 build-time dependency": [[0, "python-any-r1-build-time-dependency"]], "Basic use for unconditional Python": [[0, "basic-use-for-unconditional-python"], [21, "basic-use-for-unconditional-python"]], "Dependencies": [[0, "dependencies"], [5, "dependencies"], [14, "dependencies"], [21, "dependencies"]], "Conditional Python use": [[0, "conditional-python-use"], [14, "conditional-python-use"], [21, "conditional-python-use"]], "Additional conditional dependencies": [[0, "additional-conditional-dependencies"]], "Multiple sets of conditional dependencies": [[0, "multiple-sets-of-conditional-dependencies"]], "Common basics": [[1, "common-basics"]], "PYTHON_COMPAT": [[1, "python-compat"]], "PYTHON_DEPS and PYTHON_REQUIRED_USE": [[1, "python-deps-and-python-required-use"]], "Python environment": [[1, "python-environment"]], "Dependencies in Python packages": [[1, "dependencies-in-python-packages"]], "The most common dependency types": [[1, "the-most-common-dependency-types"]], "Finding dependency lists from build systems": [[1, "finding-dependency-lists-from-build-systems"]], "Integration with build systems written in Python": [[2, "integration-with-build-systems-written-in-python"]], "Meson": [[2, "meson"]], "SCons": [[2, "scons"]], "Build-time use with no extra dependencies": [[2, "build-time-use-with-no-extra-dependencies"]], "Build-time use with extra dependencies": [[2, "build-time-use-with-extra-dependencies"]], "Single-impl package": [[2, "single-impl-package"], [2, "id1"]], "Single-impl package with conditional Python install": [[2, "single-impl-package-with-conditional-python-install"]], "Pure Python multi-impl package": [[2, "pure-python-multi-impl-package"]], "Hybrid python-r1 + SCons package": [[2, "hybrid-python-r1-scons-package"]], "waf": [[2, "waf"]], "Build-time use": [[2, "build-time-use"]], "Advanced concepts": [[3, "advanced-concepts"]], "Namespace packages": [[3, "namespace-packages"]], "Hierarchical package structure": [[3, "hierarchical-package-structure"]], "Namespace package structure": [[3, "namespace-package-structure"]], "Determining whether namespaces are used": [[3, "determining-whether-namespaces-are-used"]], "Adding new namespace packages to Gentoo": [[3, "adding-new-namespace-packages-to-gentoo"]], "Legacy namespace packages in Gentoo": [[3, "legacy-namespace-packages-in-gentoo"]], "Advanced dependencies": [[4, "advanced-dependencies"]], "Requesting USE flags on the Python interpreter": [[4, "requesting-use-flags-on-the-python-interpreter"]], "Dependencies conditional to Python version": [[4, "dependencies-conditional-to-python-version"]], "Dependencies on CFFI and greenlet": [[4, "dependencies-on-cffi-and-greenlet"]], "Optional test suite dependencies on Rust packages": [[4, "optional-test-suite-dependencies-on-rust-packages"]], "distutils-r1 \u2014 standard Python build systems": [[5, "distutils-r1-standard-python-build-systems"]], "The PEP 517 and legacy modes": [[5, "the-pep-517-and-legacy-modes"]], "Basic use (PEP 517 mode)": [[5, "basic-use-pep-517-mode"]], "Source archives": [[5, "source-archives"]], "python-single-r1 variant": [[5, "python-single-r1-variant"]], "PEP 517 build systems": [[5, "pep-517-build-systems"]], "setuptools_scm (flit_scm, hatch-vcs) and snapshots": [[5, "setuptools-scm-flit-scm-hatch-vcs-and-snapshots"]], "Packages installing extensions (C, Rust\u2026)": [[5, "packages-installing-extensions-c-rust"]], "Packages using Cython": [[5, "packages-using-cython"]], "Parallel build race conditions": [[5, "parallel-build-race-conditions"]], "Sub-phase functions": [[5, "sub-phase-functions"]], "python_prepare": [[5, "python-prepare"]], "python_configure": [[5, "python-configure"]], "python_compile": [[5, "python-compile"]], "python_test": [[5, "python-test"]], "python_install": [[5, "python-install"]], "Passing arguments to setup.py": [[5, "passing-arguments-to-setup-py"]], "Calling custom setup.py commands": [[5, "calling-custom-setup-py-commands"]], "Enabling tests": [[5, "enabling-tests"]], "Building documentation via Sphinx": [[5, "building-documentation-via-sphinx"]], "Basic documentation with autodoc": [[5, "basic-documentation-with-autodoc"]], "Additional Sphinx extensions": [[5, "additional-sphinx-extensions"]], "Sphinx without autodoc or extensions": [[5, "sphinx-without-autodoc-or-extensions"]], "Packages with optional Python build system usage": [[5, "packages-with-optional-python-build-system-usage"]], "Packages with Rust extensions (using Cargo)": [[5, "packages-with-rust-extensions-using-cargo"]], "Installing packages without a PEP 517 build backend": [[5, "installing-packages-without-a-pep-517-build-backend"]], "Installing packages manually into BUILD_DIR": [[5, "installing-packages-manually-into-build-dir"]], "Installing packages manually into D": [[5, "installing-packages-manually-into-d"]], "Integrating with a non-PEP 517 build system": [[5, "integrating-with-a-non-pep-517-build-system"]], "distutils-r1 legacy concepts": [[6, "distutils-r1-legacy-concepts"]], "Different build system variations": [[6, "different-build-system-variations"]], "DISTUTILS_USE_SETUPTOOLS": [[6, "distutils-use-setuptools"]], "distutils and setuptools build systems": [[6, "distutils-and-setuptools-build-systems"]], "Setuptools\u2019 entry points": [[6, "setuptools-entry-points"]], "Other runtime uses of setuptools": [[6, "other-runtime-uses-of-setuptools"]], "pyproject.toml-based projects": [[6, "pyproject-toml-based-projects"]], "In-source vs out-of-source builds": [[6, "in-source-vs-out-of-source-builds"]], "Installing the package before testing": [[6, "installing-the-package-before-testing"]], "Choosing between Python eclasses": [[7, "choosing-between-python-eclasses"]], "Overview": [[7, "overview"]], "Build time vs runtime use": [[7, "build-time-vs-runtime-use"]], "Single-impl vs multi-impl": [[7, "single-impl-vs-multi-impl"]], "Python-first packages (distutils-r1 eclass)": [[7, "python-first-packages-distutils-r1-eclass"]], "Expert python-r1 usage": [[8, "expert-python-r1-usage"]], "Partially restricting Python implementation": [[8, "partially-restricting-python-implementation"]], "Restricting interpreters for python_setup": [[8, "restricting-interpreters-for-python-setup"]], "Disjoint build dependencies (any-r1 API)": [[8, "disjoint-build-dependencies-any-r1-api"]], "Using regular python-r1 API": [[8, "using-regular-python-r1-api"]], "Using any-r1 API with python-r1": [[8, "using-any-r1-api-with-python-r1"]], "Different sets of build-time dependencies": [[8, "different-sets-of-build-time-dependencies"]], "Using any-r1 API with distutils-r1": [[8, "using-any-r1-api-with-distutils-r1"]], "Combining any-r1 API with implementation restrictions": [[8, "combining-any-r1-api-with-implementation-restrictions"]], "Common helper functions": [[9, "common-helper-functions"]], "Install helpers": [[9, "install-helpers"]], "Fixing shebangs on installed scripts": [[9, "fixing-shebangs-on-installed-scripts"]], "Byte-compiling Python modules": [[9, "byte-compiling-python-modules"]], "Querying the implementation information": [[9, "querying-the-implementation-information"]], "Gentoo Python Guide": [[10, "gentoo-python-guide"]], "Contents:": [[10, null]], "Indices and tables": [[10, "indices-and-tables"]], "Python interpreters": [[11, "python-interpreters"]], "Versions of Python": [[11, "versions-of-python"]], "Life cycle of a Python implementation": [[11, "life-cycle-of-a-python-implementation"]], "Stability guarantees of Python implementations": [[11, "stability-guarantees-of-python-implementations"]], "Alternative Python implementations": [[11, "alternative-python-implementations"]], "Support for multiple implementations": [[11, "support-for-multiple-implementations"]], "Backports": [[11, "backports"]], "Migration guides": [[13, "migration-guides"]], "Migrating from old PYTHON_USEDEP syntax in python-single-r1": [[13, "migrating-from-old-python-usedep-syntax-in-python-single-r1"]], "Migrating from EAPI 7 to EAPI 8": [[13, "migrating-from-eapi-7-to-eapi-8"]], "Migrating to PEP 517 builds": [[13, "migrating-to-pep-517-builds"]], "python-r1 \u2014 multi-impl packages": [[14, "python-r1-multi-impl-packages"]], "Manual install": [[14, "manual-install"], [21, "manual-install"]], "Pure Python autotools package": [[14, "pure-python-autotools-package"]], "Additional build-time Python use": [[14, "additional-build-time-python-use"]], "Python package maintenance": [[15, "python-package-maintenance"]], "Package name policy": [[15, "package-name-policy"]], "Support for Python 2": [[15, "support-for-python-2"]], "Which implementations to test new packages for?": [[15, "which-implementations-to-test-new-packages-for"]], "Adding new Python implementations to existing packages": [[15, "adding-new-python-implementations-to-existing-packages"]], "Which packages can be (co-)maintained by the Python project?": [[15, "which-packages-can-be-co-maintained-by-the-python-project"]], "Porting packages to a new EAPI": [[15, "porting-packages-to-a-new-eapi"]], "Monitoring new package versions": [[15, "monitoring-new-package-versions"]], "PyPI release feeds": [[15, "pypi-release-feeds"]], "Checking via pip": [[15, "checking-via-pip"]], "Repology": [[15, "repology"]], "Routine checks on installed Python packages": [[15, "routine-checks-on-installed-python-packages"]], "pip check": [[15, "pip-check"]], "pip list --outdated": [[15, "pip-list-outdated"]], "gpy-verify-deps": [[15, "gpy-verify-deps"]], "Porting tips": [[16, "porting-tips"]], "Retroactive changes": [[16, "retroactive-changes"]], "bpo43882: urlsplit now strips LF, CR and HT characters": [[16, "bpo43882-urlsplit-now-strips-lf-cr-and-ht-characters"]], "Python 3.11": [[16, "python-3-11"]], "Generator-based coroutine removal (asyncio.coroutine)": [[16, "generator-based-coroutine-removal-asyncio-coroutine"]], "inspect.getargspec() and inspect.formatargspec() removal": [[16, "inspect-getargspec-and-inspect-formatargspec-removal"]], "Python 3.10": [[16, "python-3-10"]], "configure: No package \u2018python-3.1\u2019 found": [[16, "configure-no-package-python-3-1-found"]], "distutils.sysconfig deprecation": [[16, "distutils-sysconfig-deprecation"]], "Python 3.9": [[16, "python-3-9"]], "base64.encodestring / base64.decodestring removal": [[16, "base64-encodestring-base64-decodestring-removal"]], "Python 3.8": [[16, "python-3-8"]], "python-config and pkg-config no longer list Python library by default": [[16, "python-config-and-pkg-config-no-longer-list-python-library-by-default"]], "Replacing the toml package": [[16, "replacing-the-toml-package"]], "Porting to tomllib/tomli without toml fallback": [[16, "porting-to-tomllib-tomli-without-toml-fallback"]], "Porting to tomllib/tomli with toml fallback": [[16, "porting-to-tomllib-tomli-with-toml-fallback"]], "Porting to tomli-w": [[16, "porting-to-tomli-w"]], "Preface": [[17, "preface"]], "pypi \u2014 helper eclass for PyPI archives": [[18, "pypi-helper-eclass-for-pypi-archives"]], "PyPI URLs": [[18, "pypi-urls"]], "Modern and legacy URLs": [[18, "modern-and-legacy-urls"]], "Source distribution filenames": [[18, "source-distribution-filenames"]], "Binary distribution filenames": [[18, "binary-distribution-filenames"]], "Packages with matching name and version": [[18, "packages-with-matching-name-and-version"]], "Package with a different name": [[18, "package-with-a-different-name"]], "Customizing the generated URL": [[18, "customizing-the-generated-url"]], "Fetching wheels": [[18, "fetching-wheels"]], "pytest recipes": [[19, "pytest-recipes"]], "Skipping tests based on markers": [[19, "skipping-tests-based-on-markers"]], "Skipping tests based on paths/names": [[19, "skipping-tests-based-on-paths-names"]], "Avoiding the dependency on pytest-runner": [[19, "avoiding-the-dependency-on-pytest-runner"]], "Using pytest-xdist to run tests in parallel": [[19, "using-pytest-xdist-to-run-tests-in-parallel"]], "Avoiding dependencies on other pytest plugins": [[19, "avoiding-dependencies-on-other-pytest-plugins"]], "Explicitly disabling automatic pytest plugins": [[19, "explicitly-disabling-automatic-pytest-plugins"]], "Expert: disabling plugin autoloading entirely": [[19, "expert-disabling-plugin-autoloading-entirely"]], "TypeError: _make_test_flaky() got an unexpected keyword argument \u2018reruns\u2019": [[19, "typeerror-make-test-flaky-got-an-unexpected-keyword-argument-reruns"]], "ImportPathMismatchError": [[19, "importpathmismatcherror"]], "fixture \u2018\u2026\u2019 not found": [[19, "fixture-not-found"]], "Warnings": [[19, "warnings"]], "QA checks and warnings": [[20, "qa-checks-and-warnings"]], "Improved QA warning reporting in Portage": [[20, "improved-qa-warning-reporting-in-portage"]], "Compiled bytecode-related warnings": [[20, "compiled-bytecode-related-warnings"]], "Modules are not byte-compiled": [[20, "modules-are-not-byte-compiled"]], "Stray compiled bytecode": [[20, "stray-compiled-bytecode"]], "Stray top-level files in site-packages": [[20, "stray-top-level-files-in-site-packages"]], "Example or test packages installed by setuptools": [[20, "example-or-test-packages-installed-by-setuptools"]], "Documentation files installed by Poetry": [[20, "documentation-files-installed-by-poetry"]], "Deprecated PEP 517 backends": [[20, "deprecated-pep-517-backends"]], "flit.buildapi": [[20, "flit-buildapi"]], "poetry.masonry.api": [[20, "poetry-masonry-api"]], "setuptools.build_meta:__legacy__": [[20, "setuptools-build-meta-legacy"]], "python-single-r1 \u2014 single-impl packages": [[21, "python-single-r1-single-impl-packages"]], "A hybrid: build-time + conditional runtime": [[21, "a-hybrid-build-time-conditional-runtime"]], "Multiple USE conditions": [[21, "multiple-use-conditions"]], "Tests in Python packages": [[22, "tests-in-python-packages"]], "Why is running tests important?": [[22, "why-is-running-tests-important"]], "Using distutils_enable_tests": [[22, "using-distutils-enable-tests"]], "Basic use case": [[22, "basic-use-case"]], "Adding more test dependencies": [[22, "adding-more-test-dependencies"]], "Installing the package before running tests": [[22, "installing-the-package-before-running-tests"]], "Customizing the test phase": [[22, "customizing-the-test-phase"]], "Customizing the test phase for pytest": [[22, "customizing-the-test-phase-for-pytest"]], "Running tests with virtualx": [[22, "running-tests-with-virtualx"]], "Choosing the correct test runner": [[22, "choosing-the-correct-test-runner"]], "Undesirable test dependencies": [[22, "undesirable-test-dependencies"]], "Missing test files in PyPI packages": [[22, "missing-test-files-in-pypi-packages"]], "ImportErrors for C extensions": [[22, "importerrors-for-c-extensions"]], "Checklist for dealing with test failures": [[22, "checklist-for-dealing-with-test-failures"]], "Skipping problematic tests": [[22, "skipping-problematic-tests"]], "Tests requiring Internet access": [[22, "tests-requiring-internet-access"]], "Tests aborting (due to assertions)": [[22, "tests-aborting-due-to-assertions"]], "Installing extra dependencies in test environment (PEP 517 mode)": [[22, "installing-extra-dependencies-in-test-environment-pep-517-mode"]], "Maintenance of Python implementations": [[12, "maintenance-of-python-implementations"]], "Notes specific to Python interpreters": [[12, "notes-specific-to-python-interpreters"]], "CPython patchsets": [[12, "cpython-patchsets"]], "PyPy": [[12, "pypy"]], "Adding a new Python implementation": [[12, "adding-a-new-python-implementation"]], "Eclass and profile changes": [[12, "eclass-and-profile-changes"], [12, "id1"]], "Porting initial packages": [[12, "porting-initial-packages"]], "Removing a Python implementation": [[12, "removing-a-python-implementation"]], "Preparation": [[12, "preparation"]], "Python build system bootstrap": [[12, "python-build-system-bootstrap"]]}, "indexentries": {}}) \ 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", "pypi", "pytest", "qawarn", "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", "pypi.rst", "pytest.rst", "qawarn.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", "pypi \u2014 helper eclass for PyPI archives", "pytest recipes", "QA checks and warnings", "python-single-r1 \u2014 single-impl packages", "Tests in Python packages"], "terms": {"The": [0, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "eclass": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 13, 14, 17, 19, 21, 22], "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21], "enabl": [0, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 19, 20, 22], "support": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13, 14, 16, 17, 18, 19, 20, 21, 22], "packag": [0, 8, 9, 10, 11, 13, 17, 19], "need": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "pure": [0, 5, 6, 7, 8, 10, 11, 15, 18], "refer": [0, 1, 5, 9, 11, 13, 14, 17, 18, 20, 21], "5": [0, 2, 5, 7, 8, 9, 11, 14, 15, 16, 18, 19, 21, 22], "defin": [0, 1, 5, 6, 11, 21, 22], "featur": [0, 4, 5, 6, 7, 8, 11, 12, 13, 20, 21, 22], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], "pkg_setup": [0, 1, 2, 8, 21], "phase": [0, 1, 3, 6, 7, 8, 9, 10, 13, 14, 15, 20, 21], "It": [0, 1, 3, 4, 5, 6, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "normal": [0, 3, 5, 8, 9, 14, 15, 16, 18, 20, 21, 22], "call": [0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 13, 14, 16, 18, 19, 20, 21, 22], "python_setup": [0, 1, 2, 10, 13, 14, 21], "function": [0, 1, 4, 6, 7, 8, 10, 11, 13, 14, 16, 18, 20, 21, 22], "order": [0, 1, 2, 4, 5, 7, 9, 12, 13, 14, 15, 21, 22], "find": [0, 2, 3, 4, 6, 14, 15, 19, 20, 22], "suitabl": [0, 7, 9, 14, 17, 18], "interpret": [0, 1, 2, 5, 6, 7, 9, 10, 13, 14, 15, 16, 19, 20, 21], "global": [0, 1, 5, 8, 13, 14, 19, 21, 22], "environ": [0, 5, 6, 10, 11, 13, 14, 16, 19, 21], "appropri": [0, 2, 4, 5, 6, 7, 9, 11, 12, 15, 18, 21, 22], "mean": [0, 1, 2, 5, 7, 8, 11, 15, 16, 18, 19, 21, 22], "most": [0, 3, 5, 6, 9, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22], "trivial": [0, 5, 12, 16, 21], "an": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 20, 21, 22], "autotool": [0, 5, 6, 10, 16, 21], "compat": [0, 1, 2, 4, 5, 6, 7, 9, 11, 13, 16, 18, 21], "system": [0, 3, 7, 8, 9, 10, 13, 14, 15, 17, 18, 20, 21, 22], "could": [0, 2, 3, 5, 6, 8, 9, 15, 16, 18, 20, 21], "look": [0, 1, 6, 8, 16, 19, 20, 21, 22], "like": [0, 2, 4, 5, 6, 8, 11, 15, 16, 20, 21, 22], "follow": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22], "copyright": [0, 2, 4, 5, 6, 8, 14, 21, 22], "1999": [0, 2, 4, 5, 6, 8, 14, 21, 22], "2020": [0, 2, 4, 5, 6, 8, 13, 14, 16, 21, 22], "gentoo": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22], "author": [0, 2, 4, 5, 6, 8, 9, 10, 12, 14, 20, 21, 22], "distribut": [0, 2, 4, 5, 6, 8, 14, 15, 16, 17, 20, 21, 22], "under": [0, 1, 2, 3, 4, 5, 6, 8, 14, 21, 22], "term": [0, 2, 4, 5, 6, 8, 14, 21, 22], "gnu": [0, 2, 4, 5, 6, 8, 14, 21, 22], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 19, 20, 21, 22], "public": [0, 2, 4, 5, 6, 8, 11, 14, 21, 22], "licens": [0, 2, 4, 5, 6, 8, 10, 14, 20, 21, 22], "v2": [0, 2, 4, 5, 6, 8, 14, 21, 22], "eapi": [0, 2, 4, 5, 6, 8, 10, 14, 21, 22], "7": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "python_compat": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 21, 22], "python3_": [0, 1, 2, 4, 5, 6, 8, 12, 21, 22], "6": [0, 1, 2, 4, 5, 6, 8, 11, 12, 14, 15, 16, 19, 21, 22], "8": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 15, 20, 21, 22], "inherit": [0, 1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 21, 22], "descript": [0, 2, 4, 5, 6, 8, 14, 21, 22], "A": [0, 1, 2, 4, 6, 7, 8, 10, 11, 15, 19, 20], "repositori": [0, 5, 6, 12, 15, 20], "data": [0, 2, 5, 6, 9, 16, 21, 22], "file": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 21], "describ": [0, 5, 6, 8, 9, 15, 18, 20], "media": [0, 2, 8], "player": [0, 4], "capabl": 0, "homepag": [0, 2, 4, 5, 6, 8, 14, 15, 21, 22], "http": [0, 2, 4, 5, 6, 8, 9, 12, 14, 16, 18, 20, 21, 22], "cgit": 0, "freedesktop": 0, "org": [0, 2, 4, 5, 6, 8, 9, 12, 14, 18, 20, 21, 22], "info": [0, 5, 6, 19], "src_uri": [0, 2, 4, 5, 6, 8, 14, 15, 18, 21, 22], "www": [0, 2, 8, 14, 21], "softwar": [0, 1, 4, 8, 14, 15, 16, 22], "pn": [0, 2, 4, 5, 6, 8, 9, 14, 18, 21, 22], "p": [0, 2, 4, 5, 6, 8, 14, 18, 19, 21, 22], "tar": [0, 2, 4, 5, 6, 8, 12, 14, 18, 21, 22], "gz": [0, 2, 4, 5, 6, 8, 14, 18, 21, 22], "bsd": [0, 2, 5, 6, 8, 14, 21], "slot": [0, 2, 4, 5, 6, 8, 11, 14, 21, 22], "0": [0, 2, 4, 5, 6, 8, 10, 11, 12, 14, 15, 16, 19, 20, 21, 22], "keyword": [0, 2, 4, 5, 6, 8, 10, 14, 16, 21, 22], "alpha": [0, 2, 4, 5, 6, 8, 11, 12, 14, 21, 22], "amd64": [0, 2, 4, 5, 6, 8, 12, 14, 21, 22], "arm": [0, 2, 4, 5, 6, 8, 21, 22], "arm64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "hppa": [0, 2, 4, 5, 6, 8, 14, 21, 22], "ia64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "mip": [0, 2, 4, 5, 6, 8, 21, 22], "ppc": [0, 2, 4, 5, 6, 8, 14, 21, 22], "ppc64": [0, 2, 4, 5, 6, 8, 14, 21, 22], "sh": [0, 2, 4, 5, 6, 8, 12, 21, 22], "sparc": [0, 2, 4, 5, 6, 8, 14, 21, 22], "x86": [0, 2, 4, 5, 6, 8, 12, 14, 21, 22], "ius": [0, 2, 4, 5, 8, 14, 21, 22], "rdepend": [0, 1, 2, 4, 5, 6, 8, 13, 14, 21, 22], "virtual": [0, 2, 8, 14], "udev": 0, "208": 0, "bdepend": [0, 1, 2, 4, 5, 6, 8, 12, 14, 19, 21, 22], "python_dep": [0, 2, 4, 5, 8, 10, 14, 21], "pkgconfig": [0, 2, 8, 14], "ebuild": [0, 1, 4, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22], "demonstr": [0, 5, 21], "absolut": [0, 1, 9, 15, 21, 22], "minimum": [0, 15, 21], "work": [0, 3, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 21, 22], "code": [0, 1, 3, 5, 6, 7, 8, 9, 11, 13, 14, 16, 19, 20, 21, 22], "onli": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "three": [0, 1, 3, 9, 13, 16, 20], "highlight": [0, 16, 21], "line": [0, 3, 5, 13, 15, 16, 21, 22], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22], "specif": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22], "plu": [0, 21], "implicitli": [0, 3, 5, 8, 12, 20, 21, 22], "export": [0, 1, 2, 5, 21], "when": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22], "other": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22], "declar": [0, 1, 2, 5, 6, 8, 9, 11, 14, 19, 21, 22], "ensur": [0, 1, 4, 5, 6, 9, 12, 14, 20, 21], "would": [0, 2, 4, 5, 7, 11, 12, 14, 15, 16, 18, 21, 22], "built": [0, 1, 3, 5, 6, 7, 8, 11, 12, 14, 16, 17, 18, 21, 22], "against": [0, 4, 7, 9, 11, 12, 14, 15, 21, 22], "implement": [0, 1, 3, 4, 5, 6, 7, 10, 14, 16, 17, 19, 20, 21, 22], "specifi": [0, 1, 2, 5, 6, 7, 8, 14, 15, 18, 19, 20, 21, 22], "get": [0, 5, 6, 12, 13, 18, 19, 22], "replac": [0, 5, 6, 10, 11, 13, 15, 18], "python_gen_any_dep": [0, 2, 8], "match": [0, 2, 4, 5, 6, 8, 9, 10, 11, 12, 15, 20, 21], "python_check_dep": [0, 2, 8], "accept": [0, 1, 4, 5, 6, 9, 12, 15, 16, 18, 19, 20], "templat": [0, 2, 4, 5, 15, 20, 21], "where": [0, 3, 5, 6, 9, 11, 12, 14, 16, 18, 21, 22], "liter": [0, 4, 21], "python_usedep": [0, 2, 4, 5, 8, 10, 12, 14, 15, 19, 21, 22], "substitut": [0, 4, 21], "requir": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21], "all": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "same": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "least": [0, 5, 8, 15, 20, 22], "one": [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 16, 17, 19, 20, 21, 22], "test": [0, 1, 2, 3, 7, 8, 10, 11, 12, 13, 16, 17, 18, 21], "whether": [0, 1, 4, 5, 6, 7, 15, 19, 21, 22], "question": [0, 1, 5, 7, 14, 18, 19, 22], "In": [0, 1, 2, 3, 4, 5, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "particular": [0, 1, 4, 5, 6, 11, 15, 18, 22], "verifi": [0, 1, 5, 6, 8, 13, 20, 22], "branch": [0, 11, 16, 22], "wa": [0, 4, 5, 11, 12, 13, 16, 18, 19, 20, 22], "satisfi": [0, 1, 8, 12], "were": [0, 2, 3, 8, 11, 12, 13, 16, 18, 20], "instal": [0, 1, 3, 4, 7, 8, 10, 11, 12, 13, 16, 19], "current": [0, 5, 6, 11, 12, 13, 15, 19, 22], "For": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "purpos": [0, 5, 6, 9, 12, 14, 16, 18, 21, 22], "variabl": [0, 1, 5, 6, 8, 13, 14, 16, 18, 19, 21, 22], "string": [0, 1, 4, 5, 8, 14, 16, 21], "best": [0, 7, 12, 16, 17, 18, 19], "explain": [0, 1, 6, 20], "exampl": [0, 4, 5, 6, 7, 8, 9, 11, 12, 15, 16, 17, 18, 19, 21, 22], "meson": [0, 4, 5, 7, 10, 15], "manag": [0, 4, 6, 8, 9, 18, 20, 22], "cinnamon": 0, "fork": [0, 11, 12, 15, 22], "from": [0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "nautilu": 0, "develop": [0, 1, 7, 11, 15, 17, 19, 22], "linuxmint": 0, "com": [0, 2, 4, 5, 6, 8, 12, 14, 16, 18, 22], "project": [0, 1, 5, 8, 9, 10, 14, 17, 18, 19, 20, 22], "html": [0, 5, 8, 20, 22], "github": [0, 2, 4, 5, 6, 8, 12, 14, 17, 18, 21, 22], "nemo": 0, "archiv": [0, 2, 4, 10, 21, 22], "pv": [0, 2, 4, 5, 8, 14, 18, 21, 22], "gpl": [0, 2, 4, 8, 14, 21], "2": [0, 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22], "lgpl": [0, 2, 14, 21, 22], "fdl": [0, 21], "1": [0, 2, 3, 4, 5, 6, 8, 9, 15, 18, 19, 20, 21, 22], "dev": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22], "polib": 0, "pygobject": [0, 14], "3": [0, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22], "python_has_vers": [0, 2, 8], "provid": [0, 1, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22], "its": [0, 1, 2, 5, 6, 7, 8, 11, 12, 15, 16, 18, 19, 22], "both": [0, 1, 3, 4, 5, 6, 7, 8, 12, 13, 16, 17, 18, 19, 20, 21, 22], "have": [0, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "dep": [0, 5, 13, 19], "true": [0, 1, 2, 5, 6, 8, 12, 13, 16, 22], "them": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 15, 16, 18, 19, 20, 21, 22], "while": [0, 2, 3, 4, 5, 6, 7, 8, 11, 12, 14, 15, 16, 17, 19, 20, 21, 22], "which": [0, 6, 9, 10, 11, 14, 22], "wrapper": [0, 1, 6, 9, 13, 14, 22], "help": [0, 15, 17, 22], "take": [0, 1, 2, 4, 5, 6, 7, 8, 9, 15, 16, 19, 22], "singl": [0, 1, 4, 6, 9, 10, 14, 15, 16, 18, 19, 20, 22], "option": [0, 1, 3, 6, 8, 10, 13, 15, 18, 19, 20, 21, 22], "class": [0, 1, 5, 16, 19], "flag": [0, 1, 5, 7, 8, 9, 10, 11, 12, 14, 15, 21, 22], "more": [0, 1, 3, 4, 5, 7, 9, 11, 12, 13, 15, 16, 18, 19, 20, 21], "similarli": [0, 1, 5, 15, 18], "has_vers": [0, 4, 12], "root": [0, 5, 6, 13, 21, 22], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22], "b": [0, 18], "d": [0, 2, 3, 8, 9, 14, 18, 19], "r": [0, 2, 5, 9, 16, 22], "idepend": 0, "pdepend": [0, 2, 8, 12], "pass": [0, 6, 8, 9, 10, 12, 13, 16, 18, 19, 22], "assum": [0, 1, 4, 5, 6, 9, 13, 15, 21], "verbos": [0, 15, 20, 22], "print": [0, 5, 8, 14, 19, 22], "check": [0, 5, 6, 9, 10, 12, 13, 16, 17, 22], "perform": [0, 2, 5, 6, 11, 12, 14, 18, 20, 21, 22], "result": [0, 5, 6, 8, 9, 12, 15, 16, 17, 18, 19, 20, 22], "return": [0, 2, 8, 16, 20, 22], "success": 0, "found": [0, 1, 3, 5, 6, 9, 10, 11, 12, 15, 18, 20, 22], "fals": [0, 2, 5, 8, 12, 15, 16], "otherwis": [0, 6, 7, 8, 9], "note": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22], "invoc": [0, 5, 19, 20], "chain": 0, "abov": [0, 1, 6, 8, 12, 13, 15, 20, 21, 22], "also": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "written": [0, 1, 5, 7, 10, 11, 16, 19], "import": [0, 1, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 18, 19], "understand": 0, "correctli": [0, 1, 5, 6, 7, 9, 11, 12, 13, 15, 16, 22], "exactli": [0, 7, 18], "furthermor": [0, 2, 5], "combin": [0, 2, 3, 5, 10, 11, 12, 13, 16, 17, 18, 19, 21, 22], "must": [0, 1, 2, 3, 5, 6, 7, 8, 11, 15, 16, 19, 21, 22], "onc": [0, 5, 8, 11, 12, 20], "invalid": [0, 16], "split": [0, 5, 13, 16], "some": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "necessari": [0, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22], "particularli": [0, 5, 6, 7, 11, 13, 15, 19, 22], "common": [0, 3, 5, 6, 7, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22], "suit": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 19, 22], "case": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21], "wrap": [0, 5, 6, 9, 13, 22], "programm": [0, 15], "complet": [0, 5, 16, 17, 20, 22], "bash": [0, 5, 7, 8, 9, 21, 22], "scop": 0, "releas": [0, 2, 8, 11, 12, 14, 16, 20], "download": [0, 2, 5, 8, 14], "xz": [0, 4, 12, 14, 21], "s390": [0, 2, 4, 5, 6, 8, 21, 22], "linux": [0, 2, 4, 5, 6, 8, 9, 14, 16, 21, 22], "maco": [0, 4, 6, 8, 21, 22], "x64": [0, 4, 6, 8, 21, 22], "m68k": [0, 4, 5, 6, 8, 21, 22], "mint": 0, "solari": [0, 6, 21, 22], "sparc64": [0, 6], "restrict": [0, 2, 4, 5, 10, 19, 20, 21, 22], "app": [0, 2, 4, 5, 8, 12, 14, 15, 18, 20, 22], "shell": [0, 8, 14, 22], "4": [0, 3, 5, 8, 9, 10, 11, 12, 14, 15, 22], "3_p30": 0, "pexpect": [0, 22], "pytest": [0, 4, 5, 8, 10, 12, 15, 18], "r1_pkg_setup": [0, 2, 21], "anoth": [0, 8, 9, 14, 15, 16, 18, 19, 20, 22], "possibl": [0, 2, 4, 5, 8, 9, 12, 14, 16, 17, 19, 22], "uncondition": [0, 1, 2, 4, 5, 6, 8, 11, 20, 21, 22], "condition": [0, 1, 2, 4, 5, 11, 12, 14, 15, 19, 21], "simplest": [0, 2, 5, 7, 14, 19, 22], "wai": [0, 5, 6, 9, 12, 13, 15, 19, 22], "achiev": [0, 8, 11, 16], "block": [0, 8, 13, 22], "express": [0, 8, 13, 21], "similar": [0, 2, 5, 14, 15, 20, 21, 22], "cmake": [0, 5, 6, 21], "qt": 0, "bind": [0, 2, 5, 8, 14, 21], "telepathi": 0, "bu": 0, "protocol": [0, 2, 21], "dbu": [0, 2], "hardest": 0, "differ": [0, 1, 3, 5, 9, 10, 11, 15, 16, 19, 22], "do": [0, 1, 3, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22], "error": [0, 2, 5, 9, 12, 13, 16, 19, 20, 22], "prone": 0, "move": [0, 4, 5, 12], "insid": [0, 1, 3, 5, 6, 9, 14, 18, 19, 21, 22], "python3_6": [0, 2, 4, 8, 14], "gnome2": [0, 4, 14], "gobject": 0, "librari": [0, 1, 2, 3, 4, 8, 9, 11, 14, 21, 22], "access": [0, 10, 11, 19], "secret": 0, "servic": [0, 15, 22], "api": [0, 2, 5, 9, 10, 11, 13, 14, 16], "wiki": [0, 4, 8, 9, 12, 14, 17], "gnome": [0, 4, 14], "libsecret": 0, "apach": [0, 2, 4, 5, 8, 22], "introspect": 0, "fail": [0, 1, 2, 5, 8, 9, 11, 12, 16, 19, 22], "bug": [0, 5, 6, 12, 20, 22], "655482": 0, "required_us": [0, 1, 2, 4, 5, 7, 8, 13, 14, 21], "mock": [0, 4, 8, 11, 12, 19, 22], "fi": [0, 2, 4, 5, 8, 12, 14, 21], "host": 0, "variou": [1, 5, 6, 9, 13, 16], "r1": [1, 4, 9, 10, 12, 15, 18, 20, 22], "try": [1, 6, 8, 9, 11, 16, 22], "design": [1, 21], "you": [1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "probabl": [1, 6, 8, 13, 21], "us": [1, 9, 10, 11, 12, 13, 15, 16, 18, 20], "than": [1, 2, 3, 5, 6, 7, 8, 11, 12, 15, 16, 17, 18, 19, 20, 22], "so": [1, 4, 5, 6, 11, 12, 15, 18, 19, 21, 22], "worthwhil": [1, 22], "shortli": 1, "bit": [1, 12, 17], "well": [1, 5, 7, 8, 11, 13, 15, 18, 20], "non": [1, 6, 7, 9, 12, 14, 16, 18, 19, 22], "obviou": [1, 22], "between": [1, 3, 5, 8, 10, 11, 13, 16, 18], "befor": [1, 4, 5, 8, 9, 10, 12, 14, 16], "thei": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22], "valid": [1, 5, 8, 15, 16, 20, 22], "valu": [1, 5, 6, 9, 13, 18, 19, 22], "pythonx_i": 1, "cpython": [1, 4, 5, 9, 11, 13, 18, 20], "x": [1, 5, 11, 16, 19, 22], "y": [1, 2, 11, 16], "pypy3": [1, 4, 5, 6, 8, 11, 12, 13, 15, 19, 20, 22], "typic": [1, 14], "ani": [1, 2, 3, 5, 6, 7, 10, 14, 16, 18, 19, 20, 22], "respons": [1, 5], "explicitli": [1, 5, 7, 8, 10, 13, 18, 20, 22], "put": [1, 8], "correct": [1, 5, 6, 7, 9, 10, 15, 18, 19, 20, 21], "meant": [1, 13, 20], "consist": [1, 6, 9, 12, 13, 14, 15], "cover": [1, 5, 6, 13, 22], "time": [1, 3, 4, 5, 6, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 22], "runtim": [1, 2, 3, 5, 8, 10, 13, 14, 15], "form": [1, 4, 12, 17, 18], "doe": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 18, 19, 20, 22], "appli": [1, 4, 5, 6, 7, 12, 15, 19, 20, 21, 22], "distutil": [1, 3, 4, 9, 10, 13, 14, 18, 19, 20, 21, 22], "assign": 1, "default": [1, 2, 5, 6, 7, 8, 9, 11, 13, 14, 15, 18, 19, 20, 21, 22], "commonli": [1, 2, 3, 5, 6, 9, 11, 18], "concept": [1, 5, 10], "state": 1, "enforc": [1, 4, 5, 7, 8, 11, 19, 22], "whenev": [1, 4, 9, 11, 14, 15, 19, 21, 22], "run": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 20], "two": [1, 5, 6, 8, 9, 11, 13, 16, 19, 20, 21], "being": [1, 3, 5, 6, 8, 9, 11, 12, 15, 16, 18, 19, 22], "epython": [1, 2, 5, 8, 9, 12, 13, 19, 22], "contain": [1, 3, 4, 5, 6, 7, 12, 13, 15, 20], "": [1, 2, 4, 5, 6, 7, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 22], "basenam": 1, "identifi": 1, "e": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "g": [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], "python3": [1, 3, 5, 9, 11, 13, 15, 16, 19, 20, 22], "10": [1, 4, 5, 8, 10, 11, 12, 15, 20], "final": [1, 2, 4, 5, 9, 11, 13, 16, 21, 22], "path": [1, 3, 5, 6, 9, 10, 12, 13, 16, 18, 20, 22], "usr": [1, 2, 3, 5, 7, 8, 9, 19, 20, 22], "bin": [1, 2, 5, 7, 8, 9, 12, 21, 22], "full": [1, 2, 4, 5, 13, 22], "should": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], "embed": [1, 2, 9, 11], "program": [1, 2, 5, 6, 11, 16, 19, 22], "shebang": [1, 10, 11, 22], "spawn": 1, "dure": [1, 5, 6, 7, 12, 13, 19, 20], "prefer": [1, 4, 5, 7, 8, 11, 12, 14, 15, 19, 22], "rather": [1, 5, 6, 8, 12, 15, 16, 17, 19, 20, 22], "bypass": 1, "virtualenv": [1, 6, 12, 22], "creat": [1, 3, 4, 5, 6, 12, 13, 15, 16, 20, 22], "pep": [1, 3, 6, 7, 10, 12, 15, 16, 18], "517": [1, 3, 6, 7, 10, 12], "mode": [1, 6, 7, 10, 13, 16, 20], "mai": [1, 3, 4, 5, 6, 8, 11, 12, 13, 15, 16, 18, 19, 22], "caus": [1, 4, 5, 8, 9, 13, 15, 18, 19, 20, 22], "failur": [1, 5, 10, 11, 12, 19], "modul": [1, 3, 4, 5, 6, 7, 8, 10, 11, 14, 15, 16, 19, 22], "previou": [1, 5, 12, 13, 16], "version": [1, 2, 3, 5, 6, 7, 8, 10, 12, 13, 16, 17, 19, 22], "just": [1, 6, 11, 13, 22], "resolv": [1, 5, 6, 16, 19, 22], "problem": [1, 3, 4, 5, 6, 8, 12, 15, 16, 17, 19, 20, 22], "pythonn": 1, "tool": [1, 2, 5, 8, 14, 15, 16, 20, 22], "etc": 1, "via": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 21, 22], "exec": [1, 8, 9, 11, 12, 22], "hardcod": [1, 12, 19], "either": [1, 2, 5, 8, 9, 11, 13, 19, 20, 22], "establish": [1, 13, 22], "local": [1, 2, 3, 4, 5, 8, 9, 12, 13, 14, 19, 20, 21, 22], "scope": [1, 4, 5, 8, 13, 19, 22], "multi": [1, 5, 10, 13, 21], "impl": [1, 5, 10, 13], "python_foreach_impl": [1, 2, 8, 14], "sub": [1, 3, 7, 8, 10, 22], "setup": [1, 3, 6, 7, 10, 13, 15, 19, 20, 22], "done": [1, 3, 5, 6, 8, 9, 14, 15, 19, 22], "directli": [1, 5, 6, 7, 9, 11, 13, 16, 19, 22], "section": [1, 5, 6, 7, 12, 15, 16, 18, 20, 22], "focu": [1, 7, 12, 14], "often": [1, 5, 12, 22], "extern": [1, 2, 5, 6, 7, 11, 12, 22], "languag": [1, 2, 5, 11, 15], "usual": [1, 3, 4, 5, 7, 11, 13, 15, 16, 19, 20, 22], "rule": [1, 2, 6, 7, 8, 13, 14, 15, 18], "classifi": [1, 6], "categori": [1, 15], "present": [1, 5, 6, 15, 20], "script": [1, 2, 5, 6, 7, 8, 10, 11, 12, 14, 16, 21], "usabl": [1, 11], "whose": [1, 5, 18], "therefor": [1, 2, 5, 6, 7, 8, 11, 12, 15, 19, 20], "howev": [1, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22], "modern": [1, 4, 5, 6, 11, 12, 19, 22], "base": [1, 4, 5, 7, 8, 10, 12, 14, 15, 21, 22], "entri": [1, 5, 12, 19, 20], "point": [1, 5, 11, 13, 15, 19, 22], "refus": [1, 4, 11], "place": [1, 6, 11, 12, 18, 20], "special": [1, 3, 4, 5, 6, 16, 22], "subclass": 1, "extra": [1, 5, 6, 10], "still": [1, 5, 6, 8, 11, 13, 16, 18, 20, 22], "meaningfulli": 1, "handl": [1, 4, 5, 6, 8, 13, 14, 15, 22], "gracefulli": [1, 4, 8], "subset": [1, 4, 5, 7, 8, 11, 12, 14, 15, 20, 22], "without": [1, 4, 10, 11, 13, 14, 15, 18, 19, 22], "There": [1, 3, 5, 8, 9, 15, 16, 19, 20, 22], "multipl": [1, 3, 4, 5, 7, 10, 14, 15, 17, 19, 20, 22], "approach": [1, 5, 7, 8, 12, 16], "ad": [1, 5, 7, 10, 11, 13, 14, 19], "consid": [1, 2, 3, 5, 6, 7, 8, 11, 12, 14, 15, 16, 20], "light": 1, "enough": [1, 11, 22], "inform": [1, 3, 6, 10, 13, 16, 18, 20, 22], "messag": [1, 5, 22], "pkg_postinst": [1, 5], "util": [1, 2, 4, 5, 7, 8, 9, 12, 15, 19, 20, 21, 22], "optfeatur": 1, "cheap": 1, "rebuild": [1, 6, 11], "includ": [1, 2, 3, 4, 5, 6, 7, 9, 11, 12, 15, 16, 17, 18, 19, 20, 21, 22], "__init__": [1, 3, 5, 9, 19, 20, 22], "py": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 19, 20, 22], "As": [1, 3, 5, 6, 7, 8, 11, 12, 13, 15, 16, 19, 21, 22], "thumb": [1, 6, 7, 13, 15], "belong": [1, 22], "care": [1, 2, 5, 7, 9, 15, 22], "addit": [1, 2, 4, 6, 8, 9, 10, 11, 12, 13, 15, 18, 19, 22], "plugin": [1, 3, 5, 6, 8, 10, 22], "setuptools_scm": [1, 10, 22], "document": [1, 2, 7, 8, 10, 11, 14, 17, 22], "former": [1, 5, 7, 8, 13, 16, 22], "runner": [1, 5, 7, 10], "sinc": [1, 2, 3, 5, 6, 7, 11, 12, 13, 15, 16, 19, 22], "sometim": [1, 4, 5, 6, 7, 9, 11, 19, 22], "These": [1, 5, 6, 7, 11, 12, 13, 15, 19, 22], "go": [1, 2, 8, 17, 18, 19], "doc": [1, 2, 5, 8, 21], "respect": [1, 4, 5, 12, 14, 15, 19, 20], "maximum": [1, 5], "coverag": [1, 5, 15, 19, 22], "further": [1, 19], "guid": [1, 3, 5, 16, 17, 20], "linter": 1, "report": [1, 6, 9, 10, 12, 15, 22], "actual": [1, 5, 6, 8, 9, 11, 12, 15, 18, 19, 22], "undesir": [1, 5, 10, 19], "again": [1, 2, 15, 22], "conveni": [1, 4, 5, 6, 7, 19, 20, 22], "add": [1, 2, 5, 6, 8, 12, 15, 18, 20, 21, 22], "sphinx": [1, 3, 6, 7, 8, 10, 12, 15], "copi": [1, 3, 5, 6, 9, 11, 15, 20, 21, 22], "c": [1, 2, 6, 8, 9, 10, 11, 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, 21, 22], "metadata": [1, 5, 6, 14, 15, 21], "pyproject": [1, 5, 7, 12, 20], "toml": [1, 5, 7, 10, 12, 20], "setuptool": [1, 3, 4, 5, 7, 8, 12, 13, 15, 18, 19, 22], "cfg": [1, 3, 5, 6, 15, 19, 20], "custom": [1, 2, 3, 6, 10, 13, 15, 16, 19, 20], "read": [1, 5, 16, 18, 22], "name": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 16, 22], "uncondit": [1, 2, 5, 10, 13, 14, 15], "upstream": [1, 3, 4, 5, 6, 7, 9, 11, 12, 14, 15, 16, 18, 19, 20, 22], "spuriou": 1, "strip": [1, 3, 5, 11, 15, 19, 22], "ommit": 1, "kei": [1, 5, 16, 19, 20, 21], "kind": [1, 3, 7, 9, 11, 22], "621": 1, "older": [1, 11, 15, 18], "flit": [1, 5, 6, 12, 13], "poetri": [1, 5, 6, 13], "indic": [1, 5, 6, 11, 12, 13, 15, 18, 19, 20, 22], "install_requir": [1, 3, 5, 6], "group": [1, 2, 6, 13, 15, 19], "extras_requir": [1, 5], "setup_requir": [1, 5, 19], "deprec": [1, 3, 5, 10, 11, 13, 22], "tests_requir": [1, 5], "tox": [1, 5, 22], "ini": [1, 5, 19, 22], "noxfil": 1, "python_requir": 1, "besid": [2, 6, 11, 14, 19, 20], "few": [2, 4, 6, 12, 19, 22], "make": [2, 3, 4, 5, 6, 7, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22], "proper": [2, 8], "fairli": [2, 15, 21], "recent": [2, 3, 5, 15, 22], "agnost": 2, "henc": [2, 5, 14], "treat": [2, 19], "arbitrari": [2, 13, 18], "ha": [2, 3, 5, 6, 7, 11, 12, 13, 14, 15, 16, 18, 19, 20, 22], "gain": [2, 19], "quit": [2, 4, 6, 11, 12], "At": [2, 5, 11, 15, 17, 20], "mani": [2, 5, 8, 12, 14, 15, 16, 20, 22], "old": [2, 4, 5, 6, 8, 10, 11, 12, 16, 22], "reason": [2, 4, 5, 6, 11, 18, 19, 22], "suffici": [2, 5, 6, 7, 11, 14, 18], "prior": [2, 3, 5, 6, 8, 11, 12, 13, 16, 20, 22], "happen": [2, 3, 4, 6, 7, 8, 11, 21, 22], "natur": [2, 3, 5, 8, 15], "sort": 2, "latter": [2, 5, 7, 8, 13, 15, 16, 19, 22], "set": [2, 4, 5, 6, 7, 10, 11, 12, 14, 15, 16, 18, 19, 20, 21, 22], "much": [2, 5, 20, 22], "compon": [2, 3, 8, 11, 14, 16], "account": [2, 8, 11, 15, 22], "detail": [2, 7, 9, 11, 13, 16, 20, 22], "choic": [2, 6, 7, 13, 18, 22], "chapter": [2, 5, 8, 9], "along": [2, 5, 6, 7, 11, 12, 13, 20, 21, 22], "toolchain": [2, 4, 8], "func": [2, 8], "commit": [2, 12, 18, 22], "6e5e8a57628095d8d0c8bbb38187afb0f3a42112": 2, "userspac": 2, "xbox": 2, "360": 2, "control": [2, 4, 5, 19], "driver": 2, "xboxdrv": 2, "gitlab": [2, 8], "io": [2, 4, 5, 8, 14, 21], "chewi": 2, "workdir": [2, 5, 18], "lib": [2, 3, 5, 7, 9, 16, 19, 20, 22], "boost": [2, 7], "glib": 2, "sy": [2, 5, 8, 11, 14, 15, 16, 22], "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, 21], "dobin": [2, 9], "doman": 2, "dodoc": [2, 5], "new": [2, 5, 6, 9, 10, 11, 13, 16, 19, 22], "readm": [2, 12, 20], "md": [2, 20], "todo": [2, 9, 12], "yourself": [2, 4, 22], "becaus": [2, 6, 11, 12, 15, 19, 20, 22], "cannot": [2, 3, 4, 5, 9, 11, 22], "my_p": 2, "src": [2, 5, 9, 22], "_rc": [2, 18], "rc": [2, 11, 18], "high": [2, 4, 11, 12, 15, 21], "open": [2, 16], "sourc": [2, 3, 10, 12, 14, 17, 20, 22], "schema": [2, 15], "free": [2, 15, 22], "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, 19, 21, 22], "arch": [2, 5, 8, 11, 12, 18], "snappi": 2, "cpp": 2, "yaml": [2, 3], "70": 2, "thread": [2, 8, 19, 21, 22], "libpcr": 2, "42": 2, "zstd": 2, "snowbal": 2, "stemmer": 2, "net": [2, 8, 11, 14, 15, 21], "libpcap": 2, "zlib": 2, "11": [2, 5, 10, 12, 15, 22], "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, 21], "scons_opt": 2, "cc": [2, 9], "getcc": [2, 9], "disabl": [2, 5, 8, 10, 11, 12, 14, 18, 21, 22], "warn": [2, 5, 10, 16], "pcre": 2, "core": [2, 5, 20, 22], "src_test": [2, 5, 6, 14, 22], "buildscript": 2, "resmok": 2, "dbpathprefix": 2, "job": [2, 5, 19], "makeopts_job": [2, 19], "die": [2, 3, 5, 8, 9, 14, 19, 22], "nostrip": [2, 8], "prefix": [2, 8, 9, 15, 16, 22], "ed": [2, 9, 15], "everyth": [2, 13, 20], "your": [2, 4, 5, 6, 7, 8, 11, 12, 15, 16, 18, 19, 20, 22], "python2_7": [2, 5, 6, 8, 13, 14, 21, 22], "eutil": 2, "molecular": 2, "dynam": 2, "nmr": 2, "analysi": [2, 21], "relax": [2, 19], "gna": 2, "bz2": [2, 8, 21], "python_required_us": [2, 4, 5, 8, 10, 14, 21], "python_gen_cond_dep": [2, 4, 5, 8, 12, 13, 21, 22], "numdifftool": 2, "matplotlib": [2, 5, 21], "python2": [2, 8, 9, 13, 21], "wxpython": [2, 21], "wx_gtk_ver": [2, 21], "sci": [2, 5, 21], "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, 21], "make_wrapp": [2, 9], "python_get_sitedir": [2, 3, 8, 9], "part": [2, 3, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 22], "That": [2, 16, 22], "fortran_need": 2, "fortran": 2, "fortran_standard": 2, "90": [2, 14], "object": [2, 11, 16, 21], "chemic": 2, "kinet": 2, "thermodynam": 2, "transport": 2, "cantera": 2, "v": [2, 4, 5, 10, 13, 14, 22], "pch": 2, "sundial": 2, "eigen": 2, "libfmt": 2, "cython": [2, 10, 14, 21], "2_pkg_setup": 2, "scons_var": 2, "cc_flag": 2, "cxx_flag": 2, "std": [2, 3], "debug": [2, 5], "getfc": 2, "fortranflag": 2, "optimize_flag": 2, "wno": 2, "inlin": [2, 7, 14, 18], "renamed_shared_librari": 2, "use_pch": 2, "usex": [2, 5, 21], "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, 16, 19], "python2_packag": 2, "none": [2, 5, 6, 16, 18], "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, 20], "deal": [2, 7, 8, 10, 15], "sens": 2, "plain": [2, 5, 6, 13], "loop": [2, 5, 19], "autom": 2, "pipelin": [2, 22], "poisson": 2, "boltzmann": 2, "electrostat": 2, "calcul": 2, "poissonboltzmann": 2, "apb": 2, "opal": 2, "openbabel": 2, "zsi": 2, "lang": [2, 8, 11, 12, 21], "swig": [2, 21], "src_prepar": [2, 3, 5, 8, 9, 14, 16, 19, 20], "f": [2, 9, 16], "pyc": [2, 9, 20], "o": [2, 5, 20], "pyo": [2, 9, 20], "delet": [2, 14], "eappli": 2, "patch": [2, 4, 5, 6, 8, 11, 12, 18, 20, 22], "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, 22], "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, 14], "cd": [2, 5, 9, 12, 22], "let": [2, 4, 8, 16, 21], "independ": [2, 4, 5, 6, 7, 14, 21], "separ": [2, 5, 6, 7, 8, 11, 14, 15, 16, 19, 22], "presum": 2, "manual": [2, 3, 6, 10, 11, 12, 18, 20], "wider": 2, "target": [2, 8, 9, 11, 12, 15, 21, 22], "rang": [2, 5, 12], "recommend": [2, 5, 7, 12, 13, 14, 15, 16, 18, 19, 21, 22], "gp": [2, 8], "daemon": [2, 8], "usb": [2, 8], "serial": [2, 5, 8, 15], "devic": [2, 8], "map": [2, 5, 6, 8, 15, 19], "client": [2, 8, 9, 11, 14], "gpsd": [2, 8], "mirror": [2, 4, 5, 6, 8, 14, 21, 22], "nongnu": [2, 8], "24": [2, 8, 19, 22], "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, 18, 22], "construct": [2, 4, 8, 21], "pkg_config": 2, "shlinkflag": 2, "destdir": [2, 8, 9, 20], "bundl": [2, 5, 12], "simpl": [2, 5, 7, 13, 14, 17], "impli": [2, 9, 11], "python_req_us": [2, 4, 5, 6, 8, 14, 21], "individu": [2, 5, 11, 19], "applic": [2, 9, 11], "had": 2, "instead": [2, 3, 5, 6, 7, 8, 9, 13, 14, 16, 18, 19, 20, 21, 22], "no_waf_libdir": 2, "ye": 2, "unit": 2, "framework": [2, 3, 5, 11, 17], "mrzechonek": 2, "tut": 2, "roughli": [2, 9, 11, 13, 18], "ldap": 2, "ldb": 2, "samba": [2, 21], "ftp": [2, 21], "pub": 2, "elibc_freebsd": 2, "libbsd": 2, "popt": 2, "talloc": [2, 21], "tevent": 2, "9": [2, 5, 10, 12, 15, 18, 20, 22], "31": [2, 15], "tdb": 2, "12": [2, 8, 15, 16, 19, 20], "nd": 2, "openldap": 2, "libxslt": 2, "waf_binari": [2, 21], "buildtool": [2, 21], "filesdir": 2, "27": [2, 8], "optional_packag": 2, "myconf": [2, 8], "rpath": 2, "modulesdir": 2, "builtin": 2, "utils_src_configur": [2, 21], "tradition": 3, "python": [3, 6, 17, 18, 19, 20], "organ": 3, "subpackag": [3, 20], "locat": [3, 5, 20], "parent": [3, 9], "directori": [3, 5, 6, 9, 11, 12, 13, 14, 16, 18, 19, 20, 22], "submodul": 3, "repres": [3, 5, 22], "attribut": [3, 10, 16], "session": [3, 22], "addnod": 3, "site": [3, 5, 6, 9, 10, 11, 16, 19, 22], "fine": [3, 12, 16], "start": [3, 4, 5, 6, 11, 12, 15, 16, 18, 22], "problemat": [3, 6, 10, 19], "top": [3, 5, 9, 10, 18, 19], "level": [3, 9, 10, 11, 22], "layout": [3, 6, 13], "wish": [3, 6, 22], "zope": [3, 15], "share": [3, 5], "interfac": [3, 6, 11, 15, 16], "event": [3, 11, 19], "depend": [3, 6, 7, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20], "far": [3, 12, 21], "concern": 3, "entir": [3, 5, 9, 10, 12, 13, 14, 18, 22], "doabl": 3, "real": [3, 19, 20, 22], "we": [3, 4, 6, 8, 11, 12, 14, 15, 17, 20], "freshli": 3, "build": [3, 9, 10, 11, 15, 16, 18, 20, 22], "abl": [3, 15], "tmp": [3, 5, 9, 19, 20, 22], "portag": [3, 5, 8, 10, 12, 14, 15, 19, 22], "python3_8": 3, "traceback": [3, 5, 22], "last": [3, 5, 16], "stdin": 3, "modulenotfounderror": 3, "No": [3, 22], "now": [3, 5, 6, 8, 13, 14, 22], "around": [3, 5, 6, 11, 12, 22], "back": [3, 6, 16], "better": [3, 6, 11, 12, 13, 14, 20], "solut": [3, 15, 16, 20, 22], "unlik": [3, 5, 6, 11, 15], "tradit": 3, "act": 3, "proxi": [3, 14], "strictli": [3, 5, 6, 15, 22], "bound": [3, 11, 16], "permit": [3, 4, 5, 6, 11, 15, 22], "load": [3, 7, 9, 16, 19, 20, 22], "search": [3, 10, 15, 22], "method": [3, 5, 11, 13, 16, 19, 20, 22], "420": 3, "newer": [3, 4, 5, 6, 11, 12, 15, 16, 20], "pkgutil": 3, "standard": [3, 4, 6, 7, 9, 10, 11, 14, 16, 22], "discourag": [3, 6], "earlier": [3, 13], "ignor": [3, 4, 5, 8, 15, 19, 22], "did": [3, 13, 16, 22], "within": [3, 5, 6, 12, 15, 17, 22], "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, 18, 22], "pth": 3, "automat": [3, 4, 5, 6, 10, 12, 15, 18, 20, 22], "inject": [3, 21, 22], "portabl": 3, "topic": [3, 17], "exact": [3, 5, 11, 21], "detect": [3, 5, 9, 15, 22], "recogn": [3, 5, 15, 16], "lack": [3, 9, 22], "action": [3, 15, 22], "distinguish": [3, 5, 13], "veri": [3, 4, 5, 6, 9, 11, 15, 17, 18, 20, 22], "through": [3, 4, 5, 6, 8, 11, 16, 19, 22], "suspici": 3, "less": [3, 15, 22], "ruamel": 3, "miss": [3, 4, 5, 6, 9, 10, 11, 12, 13, 15, 17, 18, 19, 20], "learn": 3, "about": [3, 5, 6, 13, 15], "collis": [5, 15, 22], "namespace_packag": 3, "per": [3, 20], "remov": [3, 4, 5, 6, 10, 11, 13, 14, 15, 19, 20, 22], "tree": [5, 12, 13, 20, 22], "after": [3, 6, 9, 11, 12, 13, 15, 16, 18, 20, 22], "python_compil": 3, "r1_python_compil": [3, 5], "jaraco": [3, 5, 12, 19], "equival": [6, 8, 9, 13, 18], "r1_python_instal": [3, 5], "python_install_al": 5, "r1_python_install_al": 5, "explicit": [3, 4, 5, 6, 18, 21, 22], "rdep": 3, "sed": [3, 5, 8, 14, 15, 19, 22], "r1_src_prepar": [3, 5, 19], "histor": [3, 6, 11, 13, 16, 18, 20], "process": [3, 5, 7, 12, 16, 20, 21], "retir": 3, "major": [4, 5, 6, 11, 15, 22], "avail": [4, 5, 6, 8, 11, 13, 15, 16, 17], "sqlite3": 4, "sqlite": [4, 8], "xdg": 4, "music": 4, "lollypop": 4, "adishatz": 4, "syntax": [4, 10, 11, 15, 20], "lightweight": [4, 20], "password": 4, "backend": [4, 10, 12, 13], "pwman3": 4, "mysql": [4, 14], "postgr": 4, "fulli": [4, 5, 7, 11], "solv": [4, 17], "python_gen_impl_dep": 4, "helper": [4, 5, 7, 10, 14, 21, 22], "2_7": [4, 22], "3_": 4, "travel": 4, "spulec": 4, "freezegun": [4, 19, 22], "pypi": [4, 5, 6, 8, 10, 11, 13], "dateutil": 4, "six": [4, 8, 22], "nose": [4, 22], "distutils_enable_test": [4, 5, 10, 13, 19], "ll": [4, 14], "backport": [4, 6, 10, 12], "zero": [4, 15], "argument": [4, 6, 10, 13, 16, 22], "output": [4, 5, 6, 9, 16, 20, 22], "everi": [4, 5, 6, 8, 11, 14, 15, 16, 18, 20, 22], "escap": [4, 13, 21], "quot": [4, 21], "partial": [4, 5, 9, 10, 13], "python_single_usedep": [4, 5, 13, 21], "cli": [4, 5], "black": 4, "click": 4, "fnmatch": 4, "style": [3, 4, 5, 13, 16, 17, 19, 22], "wildcard": 4, "stdlib": [4, 13, 16], "rememb": [4, 12, 18], "pattern": [4, 12, 13, 21], "prevent": [4, 5, 11, 21, 22], "filenam": [4, 5], "expans": 4, "expand": 4, "zoneinfo": 4, "advantag": [4, 5, 7, 19, 22], "adjust": [4, 9, 11, 16], "switch": [4, 7, 9, 11, 12, 13, 15, 22], "list": [4, 5, 8, 12, 13, 19, 20, 22], "longer": [4, 6, 11, 13, 18, 22], "silent": 4, "updat": [4, 6, 9, 11, 12, 16, 18], "immedi": [4, 5, 12, 21], "becam": [4, 11], "empti": [4, 5, 15, 18], "importlib_metadata": [4, 6, 15, 22], "python3_7": [4, 8], "facilit": [5, 9, 18], "deriv": [5, 6], "notabl": [5, 15, 16, 18], "effici": [5, 15], "oper": [5, 11, 17, 18], "backward": [5, 11, 16], "incompat": [5, 6, 11, 16, 19, 22], "greater": [5, 7], "number": [5, 7, 12, 15, 18, 19, 20, 22], "cost": [5, 11], "flexibl": [5, 7], "wheel": [5, 10, 11, 12, 15, 19, 20], "zip": [5, 6, 18], "stage": [5, 11, 20, 22], "compil": [5, 6, 10, 11, 22], "mere": [5, 7], "imag": [5, 9, 20], "compliant": [5, 7, 18], "invok": [5, 19, 22], "popul": [5, 15], "addition": [5, 9, 11, 14], "pyproject2setuppi": [5, 6, 13], "hack": [5, 6, 7, 13], "reli": [5, 6, 11, 22], "distutils_use_pep517": [5, 13], "legal": 5, "unset": [5, 6], "By": [5, 6, 11], "2022": [5, 13, 19], "xml": [5, 6], "feel": [5, 15], "json": 5, "martinblech": 5, "xmltodict": 5, "mit": [5, 6, 22], "vast": 5, "index": [5, 10], "sdist": [5, 15, 18, 20, 22], "binari": [5, 9, 12, 16], "mechan": [5, 7, 11], "over": [5, 7, 11, 12, 19, 21, 22], "offici": [], "instanc": [13, 16, 18], "nonfunct": [], "append": [5, 14, 15, 18, 22], "uniqu": [5, 14], "suffix": [5, 15, 18, 20], "gh": [5, 22], "request": [5, 8, 10, 12, 15], "distfil": [5, 16, 18, 21], "clearli": [5, 20, 22], "tarbal": [5, 12, 22], "textual": 5, "rich": 5, "implic": 5, "cf": [5, 12], "regener": [5, 12], "anywai": [5, 16], "nevertheless": [], "even": [5, 8, 9, 11, 19, 22], "pregener": 5, "internet": [5, 10, 19], "nodej": 5, "underli": [5, 6, 7], "txt": [5, 6, 12, 19], "ci": [5, 22], "travi": 5, "yml": 5, "grep": 5, "statement": [5, 20], "indirect": 5, "relev": [5, 6, 13, 17, 19, 22], "unnecessarili": 5, "logic": [5, 6, 12, 22], "long": [5, 11, 12], "quickli": 5, "widest": 5, "avoid": [5, 6, 8, 10, 15, 16, 17, 22], "unpredict": 5, "who": [5, 17, 22], "especi": [5, 7, 18, 19, 20, 22], "distutils_single_impl": [5, 7], "aim": [5, 11, 15, 17, 20], "exist": [5, 10, 11, 12, 16, 20], "rewritten": [5, 21, 22], "layer": [5, 14], "pyroot": 5, "rootpi": 5, "physic": [5, 21], "root_numpi": 5, "pytabl": 5, "termcolor": 5, "determin": [5, 6, 7, 11, 21, 22], "flit_cor": [5, 12, 20], "maintain": [5, 10, 11, 12, 16, 19], "suggest": [5, 8, 13, 15, 17, 19, 20, 22], "tabl": [5, 12, 13, 15, 16, 19], "summar": [5, 16], "use_pep517": 5, "hatchl": 5, "jupyt": 5, "jupyter_packag": 5, "build_api": 5, "maturin": 5, "mesonpi": 5, "see": [5, 9, 16, 19, 20, 22], "below": [5, 8], "pbr": [5, 6], "pdm": [10, 13], "pep517": [5, 20], "sip": [5, 8, 15], "sipbuild": 5, "standalon": [5, 12], "itself": [5, 6, 8, 9, 12, 15, 19], "own": [5, 22], "Their": [6, 9, 20], "fix": [5, 6, 10, 11, 12, 15, 16, 19, 20, 22], "produc": [12, 15, 20], "ident": 20, "artifact": 20, "reduc": 20, "footprint": 20, "isol": 20, "faster": 20, "poetry_cor": 20, "smaller": 20, "40": [12, 20], "incorrect": [5, 6, 20], "intend": [16, 20, 22], "implicit": [14, 20, 22], "fallback": [6, 20], "regular": [3, 7, 20, 22], "pleas": [5, 6, 8, 9, 12, 15, 16, 18, 19, 20, 21, 22], "alwai": [5, 6, 8, 11, 13, 16, 17, 18, 20], "unfortun": [13, 15, 16, 19, 20, 22], "due": [10, 12, 14, 18, 19, 20], "prolong": 20, "larg": [5, 12, 15, 19, 20], "tend": 20, "mistak": [15, 20], "checkout": [5, 12, 22], "abil": [5, 6], "tag": [5, 12, 18, 22], "execut": [5, 6, 7, 9, 11, 12, 13, 14, 22], "143": 5, "_install_setup_requir": 5, "attr": [5, 12, 22], "131": 5, "dist": 5, "dict": [5, 21], "425": 5, "_distribut": 5, "self": [5, 16, 19, 22], "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, 16], "lookuperror": 5, "scm": 5, "unabl": [5, 15, 22], "sure": [5, 15, 19, 22], "re": [5, 8, 15, 22], "intact": 5, "git": [5, 12, 22], "folder": 5, "don": [5, 13], "t": [5, 7, 8, 11, 13, 22], "pip": [5, 12, 22], "proj": 5, "master": [5, 22], "egg": [5, 6, 19], "setuptools_scm_pretend_vers": 5, "static": [5, 8], "write": [5, 6, 7, 12, 16, 17, 20], "hybrid": [5, 10], "expos": [5, 6, 22], "guarante": [5, 6, 10, 18], "taken": [5, 16, 22], "ship": [5, 20], "issu": [5, 6, 13, 15, 16, 19, 22], "forc": [4, 5, 6, 8, 9, 12, 13, 19, 22], "frobnic": 5, "makefil": [5, 14], "jq": 5, "pyx": 5, "unresolv": 5, "regard": 5, "simultan": [5, 11, 17, 22], "link": [5, 7, 9, 16], "editor": 5, "broken": [5, 6, 19, 22], "cryptic": 5, "revers": [5, 7, 12, 15], "miscompil": 5, "panda": 5, "breakag": [5, 22], "dask": [5, 19], "29": 5, "_lib": 5, "hashtabl": 5, "_hashtabl": 5, "tslib": 5, "_tslib": 5, "13": [5, 15, 18, 19, 22], "interv": 5, "init": 5, "30": [5, 11], "convers": [5, 6], "outofboundstimedelta": 5, "localize_pydatetim": 5, "importerror": [5, 6, 10, 11, 16], "38": [5, 20], "x86_64": 5, "undefin": 5, "symbol": 5, "pandas_datetime_to_datetimestruct": 5, "easiest": [5, 15, 21], "workaround": [5, 20], "j1": 5, "origin": [5, 9, 11, 12, 16], "overrid": [5, 9, 14, 18, 22], "extend": [5, 11], "introduc": [5, 11], "src_": 5, "python_": [5, 8], "_all": [5, 8], "compris": 5, "behav": [5, 8], "r1_": 5, "correspond": [5, 11, 12, 15], "python_prepare_al": [5, 19], "each": [5, 6, 7, 11, 14], "foreach": [], "python_configure_al": 5, "python_compile_al": [5, 8], "python_test_al": 5, "dedic": [5, 6, 12, 14], "chang": [5, 6, 8, 9, 10, 11, 13, 14, 15, 18, 20, 22], "task": [5, 8, 12], "default_src_prepar": 5, "ez_setup": 5, "bootstrap": [5, 6, 10], "end": [5, 6, 7, 9, 11, 14, 19, 22], "dir": [5, 14], "extran": 5, "fixm": 5, "test_pytest_plugin": 5, "test_testcase_no_app": 5, "_": [5, 12, 15, 18, 22], "test_test_util": 5, "pointless": 5, "cov": [5, 19, 22], "addopt": 5, "aiohttp": [5, 19], "r1_python_prepare_al": [5, 19], "duplic": [5, 14, 22], "moment": [5, 11, 13, 15], "modif": 5, "keep": [5, 15, 17], "why": [5, 6, 10], "console_script": [5, 6], "configur": [5, 6, 8, 13, 14, 20, 22], "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, 19], "too": [5, 11, 22], "collada": 5, "einstalldoc": [5, 8, 14], "docinto": 5, "sample_cod": 5, "docompress": 5, "pf": 5, "main": [5, 9], "manipul": [5, 22], "arrai": 5, "futur": [5, 15, 18], "pillow": 5, "build_ext": [5, 6, 22], "tiff": 5, "webp": 5, "dash": 5, "underscor": [5, 15, 18, 22], "boolean": 5, "disable_tiff": 5, "enable_tiff": 5, "disable_webp": 5, "enable_webp": 5, "modifi": [5, 6, 11, 15, 20, 22], "beforehand": 5, "econf": [5, 21], "paremet": 5, "find_packag": 20, "wrongli": [16, 20, 22], "grab": [13, 20], "attempt": [16, 20, 22], "forbidden": [], "exclud": 20, "paramet": [8, 16, 20, 22], "properli": [6, 13], "intermedi": [], "minim": [11, 15, 16, 22], "precis": [8, 9, 22], "catch": [20, 22], "earli": [7, 8, 12, 22], "anywher": [], "first": [6, 10, 11, 12, 15, 16, 19, 20, 22], "easi": [16, 20, 22], "whitelist": 22, "sanit": [11, 16, 22], "mozilla": 22, "bleach": 22, "webencod": 22, "unittest": [5, 11, 22], "discoveri": [19, 20, 22], "univers": 22, "encod": [16, 22], "detector": 22, "chardet": [8, 22], "cygwin": [6, 22], "hypothesi": 22, "bottom": 22, "venv": [5, 6, 13, 22], "temporari": [5, 6, 22], "frequent": [18, 19, 22], "littl": [6, 19, 22], "skip": [4, 8, 10, 12, 16, 20], "those": [5, 6, 8, 9, 19, 22], "how": 22, "statist": 22, "want": [6, 8, 22], "across": [5, 11, 22], "irrelev": 22, "pep8": 22, "pycodestyl": 22, "flake8": [19, 22], "thin": [6, 22], "alreadi": [9, 12, 14, 15, 16, 20, 22], "close": 22, "pre": 22, "post": [6, 13, 15, 18, 22], "easili": [5, 14, 19, 22], "r1_src_test": [5, 22], "cmd": 22, "cmd2": 22, "colorama": 22, "pyperclip": 22, "wcwidth": 22, "text": [5, 8, 16, 22], "column": 22, "80": 22, "fact": 22, "simpli": [15, 16, 17, 22], "3_6": [14, 22], "3_7": [14, 22], "3_8": 22, "tab": [15, 22], "argpars": 22, "argcomplet": 22, "fish": 22, "tcsh": 22, "rel": [19, 20, 22], "epytest": [4, 5, 6, 8, 12, 19, 22], "network": [6, 19, 22], "marker": [10, 22], "m": [15, 19, 20, 22], "displai": 22, "appeas": 22, "usng": 22, "xvfb": 22, "server": 22, "virtx": 22, "nonfat": 22, "termin": 22, "context": [21, 22], "come": [5, 13, 19], "theme": [5, 6, 8], "hard": [5, 8, 12], "To": [5, 6, 8, 9, 12, 15, 16, 19, 20, 21], "conf": [5, 6, 20], "ext": 5, "distutils_use_setuptool": [5, 13], "color": 5, "stream": 5, "handler": 5, "log": [5, 20], "coloredlog": 5, "xolox": 5, "readthedoc": 5, "en": 5, "latest": [5, 15], "humanfriendli": 5, "expert": [5, 10, 14, 22], "uncommon": [5, 15], "third": [5, 7, 13, 20], "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": [3, 5, 6, 8, 11, 12, 13, 14, 16, 19, 20], "assumpt": 5, "consum": [5, 6, 22], "distutils_opt": 5, "alter": [5, 19], "distutils_dep": 5, "dependneci": 5, "r1_src_compil": 5, "r1_src_instal": 5, "primari": [5, 19], "alongsid": [5, 6], "libfoo": 5, "r1_src_configur": [], "setuptools_rust": 5, "ecosystem": [5, 15, 17], "bump": [5, 12, 15, 18], "lock": 5, "Then": 12, "crate": 5, "cargo_opt": 5, "url": [5, 10, 11, 15, 16], "cargo_crate_uri": 5, "qa_flags_ignor": 5, "posit": [5, 15], "cflag": [5, 9, 22], "cargo_src_unpack": 5, "inflector": 5, "alias": [5, 16], "asn1": 5, "asn1_der": 5, "_rust": 5, "src_unpack": 5, "benefit": [5, 7], "yet": [3, 5, 8, 11, 21], "cyclic": 5, "suppos": [5, 16], "overlap": 5, "machineri": 5, "op": 5, "unless": [5, 6, 8, 15, 18], "merg": [4, 5], "toward": 5, "effect": [5, 8, 11, 20], "pick": [5, 12], "up": [5, 6, 9, 11, 13, 14, 15, 17, 19, 20, 22], "hukkin": 5, "tomli": [5, 12, 15], "pythonhost": [5, 18], "py3": [5, 18, 19], "whl": [5, 18], "unzip": [5, 18], "deliber": 5, "unpack": [5, 18], "gpep517": [5, 18, 20], "python_newscript": [5, 9], "__main__": [5, 22], "exit": [5, 16, 20, 22], "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, 21], "direct": [6, 14], "convert": [6, 8, 13], "facil": 6, "right": [6, 7], "fit": [6, 22], "profil": [4, 6, 15], "pyproject2toml": 6, "misbehav": 6, "subsequ": [6, 18, 20], "qa": [5, 6, 9, 10, 12, 17], "expect": [6, 11, 16, 19, 20, 22], "sidebar": 6, "bitprophet": 6, "possibli": [6, 22], "snippet": [6, 16, 20], "except": [6, 7, 9, 11, 12, 16], "pm": 6, "cleanli": [6, 12], "condit": [6, 10, 12, 19, 22], "leav": 6, "never": [6, 11, 13, 16], "clean": [6, 11, 13], "requier": 6, "With": [6, 22], "themselv": [6, 19, 20, 22], "entry_point": [6, 19], "dictionari": [6, 21], "our": [6, 19, 22], "interest": [6, 8, 22], "gui_script": 6, "meaning": 6, "importlib": [6, 11, 22], "fall": [6, 16], "remind": 6, "distutils_strict_entry_point": 6, "trigger": [6, 12, 19, 20, 22], "wrong": [6, 13, 15], "leftov": 6, "resourc": [6, 11, 12, 20], "submit": [6, 20], "suppli": 6, "heavi": 6, "speak": [6, 11], "known": [6, 16, 22], "limit": [6, 12, 15, 17], "address": [6, 11, 16], "definit": 6, "subdirectori": [6, 9], "interspers": [6, 20], "closest": 6, "inplac": 6, "shift": [6, 11], "throughout": 6, "2to3": 6, "distutils_in_source_build": 6, "collect": [6, 19, 22], "pypa": 6, "riscv": [6, 8, 21], "pythonpath": [6, 22], "distutils_install_for_test": [6, 13, 19, 22], "alik": [6, 7, 11, 13], "preserv": [6, 11, 15, 16], "extrem": [3, 5, 6], "home": [6, 12, 13], "went": 6, "awai": [6, 7, 18], "python_test": [4, 6, 8, 9, 12, 19, 22], "total": 7, "rare": [7, 9, 19, 22], "simpler": 7, "complex": [5, 7, 16, 18, 21], "primarili": [7, 11], "involv": [7, 8, 13], "graph": [7, 11, 12], "meet": 7, "potenti": [7, 11, 15, 16, 19], "basi": 7, "occur": [7, 11, 19], "libpython": [7, 11, 16], "aforement": [7, 13, 16, 18], "foo": [7, 16], "wise": 7, "abstract": [7, 14, 18], "scon": [7, 8, 10, 20], "second": [7, 13, 20], "easier": [7, 18, 20], "select": [7, 8, 19, 21], "allow": [7, 22], "repeat": [7, 14, 15, 20], "model": 7, "libboost_python": 7, "python_single_target": [7, 11, 12], "Its": [7, 12, 18], "legaci": [7, 10, 13, 16, 20, 22], "power": 8, "harder": [8, 15], "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, 22], "httpbin": [8, 19], "hang": 8, "continu": [8, 12, 22], "python_gen_useflag": 8, "out": [8, 9, 10, 11, 12, 13, 14, 15, 16], "toolkit": 8, "translat": [8, 18], "format": [8, 12, 15, 16, 18, 20], "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, 21], "bison": 8, "flex": 8, "prepar": [8, 9, 20, 21], "bindir": 8, "incdir": 8, "python_get_includedir": [8, 9, 13], "echo": [8, 20], "distutils_all_subphase_impl": 8, "python3_5": 8, "bzip2": 8, "epydoc": 8, "eselect": 8, "elibc_glibc": 8, "sandbox": [8, 20, 22], "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, 11], "resembl": [8, 19], "presenc": [5, 8, 19], "activ": [8, 17], "behavior": [8, 11, 16, 18], "goal": [8, 12, 22], "side": [8, 11], "someth": [8, 9, 22], "accord": [8, 18], "integr": [8, 9, 10, 11], "won": 8, "reject": [8, 15, 16], "unsupport": [8, 11], "python_is_python3": [8, 13], "basic": [9, 10], "reus": [9, 15], "four": [9, 13, 21], "python_doex": 9, "python_newex": 9, "python_doscript": [9, 14, 21], "recurs": [9, 15, 19], "python_dohead": 9, "python_scriptinto": 9, "affect": [9, 11, 14, 18], "symlink": 9, "onto": 9, "improv": [9, 10, 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], "_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, 21], "dpython_dest": 9, "dpython_execut": 9, "dpython_include_dir": 9, "dpython_librari": 9, "cmake_src_configur": [9, 21], "pyinc": 9, "pylib": 9, "micha\u0142": 10, "g\u00f3rny": 10, "creativ": 10, "intern": 10, "prefac": 10, "life": 10, "cycl": [10, 12], "stabil": 10, "choos": [10, 11, 14], "overview": 10, "variant": [10, 11, 16, 19], "flit_scm": 10, "hatch": 10, "vc": [10, 22], "snapshot": [10, 22], "parallel": 10, "race": 10, "command": [10, 14, 15, 19, 20, 22], "usag": [10, 18], "rust": 10, "cargo": 10, "variat": 10, "byte": [10, 16], "queri": [10, 16], "advanc": 10, "cffi": 10, "greenlet": [10, 19], "checklist": 10, "abort": 10, "assert": [5, 10, 20], "recip": 10, "xdist": [10, 12, 22], "autoload": 10, "typeerror": 10, "_make_test_flaki": 10, "got": [10, 13], "unexpect": [10, 20], "rerun": 10, "importpathmismatcherror": 10, "fixtur": [10, 12], "namespac": [10, 19], "disjoint": 10, "waf": [10, 21], "tip": [10, 22], "retroact": 10, "migrat": [10, 18], "bytecod": 10, "relat": [5, 10, 12, 13, 15, 22], "mainten": 10, "co": [10, 22], "monitor": [10, 20], "routin": [10, 14], "page": [10, 16, 17], "increment": 11, "minor": [11, 22], "plan": 11, "On": 11, "hand": [11, 13], "platform": [11, 16, 18, 22], "linux_distribut": 11, "window": 11, "understood": 11, "initi": [11, 22], "enter": 11, "stabl": [11, 12, 15], "prematur": [11, 15], "mask": [4, 11, 12, 15], "beta": [11, 12], "made": [11, 13, 14, 16, 21], "regress": 11, "readi": [11, 12, 15], "dai": 11, "inconsist": [11, 15, 22], "mark": [11, 15, 19, 22], "architectur": [4, 11], "clear": [11, 15], "depenend": 11, "repeatedli": 11, "ask": [11, 15], "push": [11, 12, 15], "forward": 11, "eventu": [11, 12], "becom": [11, 16], "slowli": [11, 15], "discontinu": 11, "next": [11, 12, 15, 19], "june": 11, "juli": 11, "year": 11, "predict": [11, 21], "nears": 11, "great": 11, "obsolet": [11, 13], "feasibl": [4, 11, 15], "vulner": 11, "break": [11, 15, 16], "revert": 11, "enum": 11, "urlsplit": 11, "secur": [11, 12], "abi": [11, 18], "bugfix": 11, "occasion": 11, "remain": [4, 11, 12, 13], "contrari": [11, 16], "hold": [11, 16], "subslot": 11, "fortun": 11, "late": 11, "hous": 11, "rpython": 11, "lot": [11, 15], "good": [3, 11, 15, 17, 19, 22], "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, 20], "ideal": [11, 15, 22], "funcsig": 11, "signatur": [11, 16], "afterward": [11, 14, 15], "later": 11, "lzma": 11, "compet": 11, "amount": [11, 12, 22], "ipaddress": 11, "drop": [11, 16], "box": [11, 13], "hexvers": [11, 22], "0x03030000": 11, "trolliu": 11, "asyncio": [11, 19, 22], "nativ": 11, "workflow": 12, "clone": 12, "remot": [12, 15, 22], "fetch": [5, 10, 12], "rebas": 12, "v3": 12, "cherri": 12, "upload": 12, "mkdir": 12, "scp": 12, "precompil": [12, 20], "unusu": 12, "structur": [12, 22], "ex": 12, "technic": [12, 18], "docker": 12, "binpkg": 12, "diff": 12, "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": [3, 12], "20": [12, 18], "pwd": 12, "round": 12, "signific": [4, 12, 19], "remaind": 12, "pydant": 12, "epytest_deselect": [4, 12, 19], "test_comparison": 12, "test_close_to_now_": 12, "lenient": 12, "deselect": [4, 12, 19, 22], "unblock": 12, "100": 12, "emerg": [12, 20], "previous": 12, "reinstal": 12, "batch": [12, 20], "focus": 12, "reenabl": [12, 19], "face": [12, 22], "goe": [12, 22], "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, 22], "given": 13, "repoman": 13, "pkgcheck": [13, 15], "tell": 13, "chose": 13, "reorder": 13, "desir": [13, 16, 20, 22], "scan": [13, 15], "unmatch": 13, "trial": 13, "stuff": 13, "thing": [13, 17, 19], "privat": 13, "python_export": 13, "python_wrapper_setup": 13, "python_gen_usedep": 13, "mydistutilsarg": 13, "renam": [13, 15, 16, 18, 20], "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, 18], "realli": [13, 15, 19, 22], "ugli": 13, "sole": 13, "uppercas": [13, 15, 16, 18], "fourth": 13, "cruft": 13, "short": [13, 19], "evalu": 13, "januari": 13, "safe": 13, "streamlin": 13, "inde": 13, "foundat": 14, "fionet": 14, "psql": 14, "cach": 14, "sourceforg": [14, 21], "replic": 14, "tgz": 14, "libcangji": 14, "cangjian": 14, "i18n": 14, "eautoreconf": [14, 16], "econf_sourc": 14, "la": 14, "multibuild": 14, "unnecessari": [14, 15, 21, 22], "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, 21], "qemu": 14, "kernel": 14, "machin": [14, 20], "userland": 14, "kvm": 14, "qemu_python_instal": 14, "vmxcap": 14, "qmp": 14, "ga": 14, "reach": 15, "eol": [15, 16], "proactiv": 15, "anticip": 15, "soon": 15, "wide": [15, 22], "revis": [12, 15], "newli": 15, "risk": 15, "team": 15, "manpow": 15, "member": 15, "u": 15, "gemato": 15, "carri": 15, "histori": 15, "rss": 15, "comprehens": 15, "opml": 15, "followup": 15, "track": [12, 15], "mail": [12, 15], "suscept": 15, "confus": [15, 19], "sync": [15, 19], "conflict": 15, "cx": 15, "freez": 15, "patchelf": 15, "openapi": 15, "spec": [15, 16], "60": 15, "59": 15, "62": 15, "pin": 15, "httpcore": 15, "15": 15, "httpx": 15, "23": [15, 22], "sphobjinv": 15, "28": 15, "date": [15, 17, 20, 22], "pend": 15, "pip3": 15, "dirti": 15, "equal": [15, 22], "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, "sign": [12, 15], "tag_build": 15, "compar": [15, 16], "tempest": 15, "oslo": 15, "stestr": 15, "versioningit": 15, "wstool": 15, "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, 22], "unpars": 16, "django": [16, 22], "pr": 16, "14349": 16, "impact": [16, 20], "urlpars": 16, "nurl": 16, "parseresult": 16, "scheme": 16, "netloc": 16, "param": [16, 19], "badurl": 16, "what": 16, "attributeerror": 16, "492": 16, "decor": [16, 22], "async": [16, 19], "def": [16, 19, 22], "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, "int": 16, "str": 16, "float": 16, "k6": 16, "k7": 16, "k8": 16, "One": [16, 22], "prototyp": 16, "bar": 16, "pretti": 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": [5, 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, "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": [5, 17], "beyond": 17, "reliabl": [17, 22], "deep": 17, "beginn": 17, "peopl": 17, "suboptim": 17, "improp": 17, "fill": 17, "gap": 17, "welcom": 17, "whole": [4, 19, 22], "parametr": 19, "epytest_ignor": 19, "test_client": 19, "test_gener": 19, "test_filenam": 19, "test_transport": 19, "test_transport_work": 19, "eventlet": 19, "test_contextvar": 19, "test_leak": 19, "might": 19, "intent": 19, "Not": 19, "collid": [3, 19, 22], "instabl": 19, "unstabl": 19, "discret": 19, "decid": 19, "justifi": 19, "semi": 19, "random": 19, "multiprocess": 19, "finish": 19, "01": 19, "chanc": 19, "experienc": 19, "insuffici": 19, "nest": 19, "envvar": 19, "pytest_disable_plugin_autoload": 19, "pytest_plugin": 19, "comma": 19, "looponfail": 19, "pytest_fork": 19, "flaki": [19, 22], "rerunfailur": 19, "supposedli": 19, "twice": 19, "_pytest": [19, 22], "pathlib": [19, 22], "posixpath": 19, "signifi": 19, "event_loop": 19, "freezer": 19, "mocker": 19, "captur": [19, 22], "summari": 19, "asgiref": 19, "135": 19, "test_loc": 19, "test_sync": 19, "test_sync_contextvar": 19, "deprecationwarn": 19, "main_event_loop": 19, "get_event_loop": 19, "filterwarn": 19, "fatal": [19, 22], "_____________________": 19, "______________________": 19, "577": 19, "asgitest": 19, "testcas": 19, "583": 19, "test_wrapped_case_is_collect": 19, "interrupt": 19, "world": 19, "elog": 20, "portage_elog_class": 20, "optim": 20, "size": 20, "oo": 20, "docstr": 20, "store": 20, "disk": [20, 22], "permiss": 20, "uninstal": 20, "violat": 20, "auxiliari": 20, "readabl": [20, 22], "trimesh": 20, "__pycache__": 20, "blender_boolean": 20, "310": 20, "opt": 20, "notic": 20, "blueman": 20, "constant": 20, "deviceclass": 20, "sdp": 20, "tmpl": 20, "pair": 20, "docbook": 20, "35": 20, "36": 20, "plot": 21, "voacap": 21, "propag": 21, "qsl": 21, "hz1jw": 21, "pythonprop": 21, "basemap": 21, "gtk2": 21, "doubl": 21, "energi": 21, "yoda": 21, "hepforg": 21, "use_en": 21, "pyext": 21, "extra_opt": 21, "give": 21, "sound": 21, "signal": [21, 22], "composit": 21, "csound": 21, "fordfrog": 21, "dbuild_python_interfac": 21, "dbuild_python_opcod": 21, "superset": 21, "arab": 21, "arabey": 21, "duali": 21, "pyduali": 21, "dict2db": 21, "trans2arab": 21, "arabic2tran": 21, "domain": 22, "firstli": 22, "idea": [15, 22], "nosetest": 22, "secondli": 22, "strict": 22, "thirdli": 22, "wholli": 22, "spew": 22, "seem": 22, "ceas": 22, "downstream": 22, "convinc": [4, 22], "preced": 22, "area": 22, "____________________": 22, "systemd": 22, "test_login": 22, "234": 22, "hint": [12, 22], "578": 22, "_importtestmodul": 22, "mod": 22, "import_path": 22, "fspath": 22, "importmod": 22, "524": 22, "import_modul": 22, "module_nam": 22, "127": 22, "_bootstrap": 22, "_gcd_import": 22, "frozen": 22, "1014": 22, "991": 22, "_find_and_load": 22, "975": 22, "_find_and_load_unlock": 22, "671": 22, "_load_unlock": 22, "rewrit": 22, "170": 22, "exec_modul": 22, "__dict__": 22, "login": 22, "r2": 22, "discov": 22, "pyarg": 22, "guess": 22, "quick": 22, "mayb": 22, "eunittest": 22, "aris": 22, "confirm": 22, "whom": 22, "myself": 22, "subtl": 22, "lead": 22, "But": 22, "bewar": 22, "unexpectedli": 22, "test_start_params_bug": 22, "xfail": 22, "statsmodel": 22, "tsa": 22, "test_arima": 22, "horrend": 22, "space": 22, "mayhem": 22, "5a": 22, "test_null_byt": 22, "skipif": 22, "0x03000000": 22, "unconditioanlli": 22, "test_babel_with_language_": 22, "test_build_latex": 22, "test_polyglossia_with_language_": 22, "altogeth": 22, "replai": 22, "devmanu": 22, "explan": 22, "connect": 22, "pygit2": 22, "no_network": 22, "properti": 22, "test_network": 22, "allow_test": 22, "unclear": 22, "backtrac": 22, "pluggi": 22, "cachedir": 22, "pytest_cach": 22, "rootdir": 22, "var": 22, "sabyenc": 22, "configfil": 22, "item": 22, "test_decod": 22, "test_crc_pickl": 22, "54": 22, "test_empty_size_pickl": 22, "0x00007f748bc47740": 22, "testsupport": 22, "74": 22, "sabyenc3_wrapp": 22, "119": 22, "180": 22, "pytest_pyfunc_cal": 22, "caller": 22, "187": 22, "_multical": 22, "temp": 22, "2934": 22, "66": 22, "dump": [16, 22], "vv": 22, "34": 22, "timeout": 22, "25": 22, "sabyenc3": 22, "596": 22, "decode_usenet_chunk": 22, "pybytearray_check": 22, "pylist_getitem": 22, "py_input_list": 22, "lp": 22, "0x00007fb5db746740": 22, "73": 22, "117": 22, "87": 22, "lambda": 22, "runpi": 22, "85": 22, "_run_cod": 22, "193": 22, "_run_module_as_main": 22, "reproduc": 22, "ubuntu": 22, "dndebug": 22, "leak": 22, "o0": 22, "isort": 22, "distutils_pep517_instal": 22, "destin": 22, "cp": 22, "pushd": 22, "null": 22, "popd": 22, "novemb": 16, "tomllib": [], "w": 18, "tomlkit": 16, "edit": 16, "wherea": [16, 18], "input": 16, "tomldecodeerror": 16, "d1": 16, "in1": 16, "in2": 16, "d2": 16, "d3": 16, "rb": 16, "insist": 16, "incompatibilit": 16, "consider": 16, "tomli_w": 16, "wb": 16, "trustm": 4, "test_request": 4, "testrequest": 4, "test_https_warn": 4, "outer": 4, "tl": 4, "pull": 4, "python_vers": 16, "pycargoebuild": 5, "obsolesc": 12, "announc": 12, "proce": 12, "progress": 12, "show": 12, "effort": 12, "rite": [], "_python_historical_impl": 12, "statu": 12, "dead": 12, "polici": 10, "live": [], "2023": 5, "conform": [15, 18], "publish": 15, "hyphen": 15, "dot": [15, 18], "crucial": 15, "bugzilla": 15, "illustr": 15, "flask": [15, 18], "babel": 15, "github3": 15, "sphinx_pytest": 15, "redirect": 15, "mismatch": [], "charact": [15, 18], "canon": [15, 18], "id": 15, "unnot": [], "bear": 15, "mind": 15, "doubt": 15, "reserv": 15, "503": 15, "insensit": 15, "letter": [15, 18], "turn": 15, "lowercas": [15, 18], "titl": [15, 18], "423": 15, "incomplet": 5, "strai": 10, "changelog": 20, "wait": 20, "qawarn": 20, "box_logo": [], "png": [], "test_": [], "ref": [], "buildapi": 5, "masonri": 5, "build_meta": 5, "__legacy__": 5, "small": 18, "adapt": 18, "overwritten": 18, "execnet": 18, "c0459b92bc4a42b08281e69b8802d24c5d3415d4": 18, "pypi_sdist_url": 18, "markup": 18, "prebuilt": 18, "pypi_wheel_url": 18, "aid": 18, "ensurepip": 18, "pypi_wheel_filenam": 18, "synopsi": 18, "hash": 18, "2e": 18, "36e46173a288c1c40853ffdb712c67e0e022df0e1ce50b7b1b50066b74d4": 18, "inconveni": 18, "settl": 18, "pytag": 18, "625": 18, "440": 18, "transform": 18, "contigu": 18, "babelex": 18, "flask_babelex": 18, "predat": 18, "minu": 18, "abitag": 18, "platformtag": 18, "cp39": 18, "427": 18, "alphanumer": 18, "left": 18, "_alpha": 18, "_beta": 18, "_p": 18, "pypi_no_norm": 18, "overriden": 18, "r1_run_phas": 3, "pypi_pn": 18, "loadabl": 5, "distutils_ext": 5, "cross": 5, "isn": 5, "worth": 5, "worri": 5, "depgraph": 12, "reinvent": 5, "pdm_build_scm_vers": 5}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"python": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21, 22], "ani": [0, 8], "r1": [0, 2, 5, 6, 7, 8, 13, 14, 21], "build": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 21], "time": [0, 2, 7, 8, 14, 21], "depend": [0, 1, 2, 4, 5, 8, 14, 19, 21, 22], "basic": [0, 1, 5, 21, 22], "us": [0, 2, 3, 4, 5, 6, 7, 8, 14, 19, 21, 22], "uncondit": [0, 21], "condit": [0, 2, 4, 5, 14, 21], "addit": [0, 5, 14], "multipl": [0, 11, 21], "set": [0, 8], "common": [1, 9], "python_compat": 1, "python_dep": 1, "python_required_us": 1, "environ": [1, 22], "packag": [1, 2, 3, 4, 5, 6, 7, 12, 14, 15, 16, 18, 20, 21, 22], "The": [1, 5], "most": 1, "type": 1, "find": 1, "list": [1, 15, 16], "from": [1, 13], "system": [1, 2, 5, 6, 12], "integr": [2, 5], "written": 2, "meson": 2, "scon": 2, "extra": [2, 22], "singl": [2, 5, 7, 13, 21], "impl": [2, 7, 14, 21], "instal": [2, 5, 6, 9, 14, 15, 20, 21, 22], "pure": [2, 14], "multi": [2, 7, 14], "hybrid": [2, 21], "waf": 2, "advanc": [3, 4], "concept": [3, 6], "namespac": 3, "hierarch": 3, "structur": 3, "determin": 3, "whether": 3, "ar": [3, 20], "ad": [3, 12, 15, 22], "new": [3, 12, 15], "gentoo": [3, 10], "legaci": [3, 5, 6, 18], "request": 4, "flag": 4, "interpret": [4, 8, 11, 12], "version": [4, 11, 15, 18], "cffi": 4, "greenlet": 4, "distutil": [5, 6, 7, 8, 16], "standard": 5, "pep": [5, 13, 20, 22], "517": [5, 13, 20, 22], "mode": [5, 22], "sourc": [5, 6, 18], "archiv": [5, 18], "variant": 5, "deprec": [16, 20], "backend": [5, 20], "flit": 20, "buildapi": 20, "poetri": 20, "masonri": 20, "api": [8, 20], "setuptool": [6, 20], "build_meta": 20, "__legacy__": 20, "setuptools_scm": 5, "flit_scm": 5, "hatch": 5, "vc": 5, "snapshot": 5, "cython": 5, "parallel": [5, 19], "race": 5, "sub": 5, "phase": [5, 22], "function": [5, 9], "python_prepar": 5, "python_configur": 5, "python_compil": 5, "python_test": 5, "python_instal": 5, "pass": 5, "argument": [5, 19], "setup": 5, "py": 5, "call": 5, "custom": [5, 18, 22], "command": 5, "prevent": [], "test": [4, 5, 6, 15, 19, 20, 22], "directori": [], "being": [], "enabl": 5, "distutils_enable_test": 22, "more": 22, "befor": [6, 22], "run": [19, 22], "undesir": 22, "pytest": [19, 22], "virtualx": 22, "document": [5, 20], "via": [5, 15], "sphinx": 5, "autodoc": 5, "extens": [5, 22], "without": [5, 16], "option": [4, 5], "usag": [5, 8], "rust": [4, 5], "cargo": 5, "manual": [5, 14, 21], "build_dir": 5, "d": 5, "non": 5, "differ": [6, 8, 18], "variat": 6, "distutils_use_setuptool": 6, "entri": 6, "point": 6, "other": [6, 19], "runtim": [6, 7, 21], "pyproject": 6, "toml": [6, 16], "base": [6, 16, 19], "project": [6, 15], "In": 6, "v": [6, 7], "out": 6, "choos": [7, 22], "between": 7, "eclass": [7, 12, 18], "overview": 7, "first": 7, "expert": [8, 19], "partial": 8, "restrict": 8, "implement": [8, 9, 11, 12, 15], "python_setup": 8, "disjoint": 8, "regular": 8, "combin": 8, "helper": [9, 18], "fix": 9, "shebang": 9, "script": 9, "byte": [9, 20], "compil": [9, 20], "modul": [9, 20], "queri": 9, "inform": 9, "guid": [10, 13], "content": 10, "indic": 10, "tabl": 10, "life": 11, "cycl": 11, "stabil": 11, "guarante": 11, "altern": 11, "support": [11, 15], "backport": 11, "mainten": [12, 15], "note": 12, "specif": 12, "cpython": 12, "patchset": 12, "pypi": [12, 15, 18, 22], "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, "monitor": 15, "releas": 15, "feed": 15, "check": [15, 20], "pip": 15, "repologi": 15, "routin": 15, "outdat": 15, "gpy": 15, "verifi": 15, "dep": 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, 18], "coroutin": 16, "remov": [12, 16], "asyncio": 16, "inspect": 16, "getargspec": 16, "formatargspec": 16, "10": 16, "configur": 16, "No": 16, "1": 16, "found": [16, 19], "sysconfig": 16, "9": 16, "base64": 16, "encodestr": 16, "decodestr": 16, "config": 16, "pkg": 16, "longer": 16, "librari": 16, "default": 16, "prefac": 17, "recip": 19, "skip": [19, 22], "marker": 19, "path": 19, "name": [15, 18, 19], "avoid": 19, "runner": [19, 22], "xdist": 19, "plugin": 19, "explicitli": 19, "disabl": 19, "automat": 19, "autoload": 19, "entir": 19, "typeerror": 19, "_make_test_flaki": 19, "got": 19, "an": 19, "unexpect": 19, "keyword": 19, "rerun": 19, "importpathmismatcherror": 19, "fixtur": 19, "warn": [19, 20], "qa": 20, "improv": 20, "report": 20, "portag": 20, "bytecod": 20, "relat": 20, "strai": 20, "A": 21, "resolv": [], "suit": 4, "problem": [], "correct": 22, "miss": 22, "file": [20, 22], "importerror": 22, "c": [5, 22], "checklist": 22, "deal": 22, "failur": 22, "problemat": 22, "requir": 22, "internet": 22, "access": 22, "abort": 22, "due": 22, "assert": 22, "awai": [], "introduct": [], "tomllib": 16, "tomli": 16, "fallback": 16, "w": 16, "replac": 16, "prepar": 12, "polici": 15, "top": 20, "level": 20, "site": 20, "exampl": 20, "why": 22, "i": 22, "import": 22, "case": 22, "match": 18, "url": 18, "fetch": 18, "wheel": 18, "modern": 18, "distribut": 18, "filenam": 18, "binari": 18, "pdm": 5}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "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": 57}, "alltitles": {"python-any-r1 \u2014 build-time dependency": [[0, "python-any-r1-build-time-dependency"]], "Basic use for unconditional Python": [[0, "basic-use-for-unconditional-python"], [21, "basic-use-for-unconditional-python"]], "Dependencies": [[0, "dependencies"], [14, "dependencies"], [21, "dependencies"], [5, "dependencies"]], "Conditional Python use": [[0, "conditional-python-use"], [14, "conditional-python-use"], [21, "conditional-python-use"]], "Additional conditional dependencies": [[0, "additional-conditional-dependencies"]], "Multiple sets of conditional dependencies": [[0, "multiple-sets-of-conditional-dependencies"]], "Common basics": [[1, "common-basics"]], "PYTHON_COMPAT": [[1, "python-compat"]], "PYTHON_DEPS and PYTHON_REQUIRED_USE": [[1, "python-deps-and-python-required-use"]], "Python environment": [[1, "python-environment"]], "Dependencies in Python packages": [[1, "dependencies-in-python-packages"]], "The most common dependency types": [[1, "the-most-common-dependency-types"]], "Finding dependency lists from build systems": [[1, "finding-dependency-lists-from-build-systems"]], "Integration with build systems written in Python": [[2, "integration-with-build-systems-written-in-python"]], "Meson": [[2, "meson"]], "SCons": [[2, "scons"]], "Build-time use with no extra dependencies": [[2, "build-time-use-with-no-extra-dependencies"]], "Build-time use with extra dependencies": [[2, "build-time-use-with-extra-dependencies"]], "Single-impl package": [[2, "single-impl-package"], [2, "id1"]], "Single-impl package with conditional Python install": [[2, "single-impl-package-with-conditional-python-install"]], "Pure Python multi-impl package": [[2, "pure-python-multi-impl-package"]], "Hybrid python-r1 + SCons package": [[2, "hybrid-python-r1-scons-package"]], "waf": [[2, "waf"]], "Build-time use": [[2, "build-time-use"]], "Advanced concepts": [[3, "advanced-concepts"]], "Namespace packages": [[3, "namespace-packages"]], "Hierarchical package structure": [[3, "hierarchical-package-structure"]], "Namespace package structure": [[3, "namespace-package-structure"]], "Determining whether namespaces are used": [[3, "determining-whether-namespaces-are-used"]], "Adding new namespace packages to Gentoo": [[3, "adding-new-namespace-packages-to-gentoo"]], "Legacy namespace packages in Gentoo": [[3, "legacy-namespace-packages-in-gentoo"]], "Advanced dependencies": [[4, "advanced-dependencies"]], "Requesting USE flags on the Python interpreter": [[4, "requesting-use-flags-on-the-python-interpreter"]], "Dependencies conditional to Python version": [[4, "dependencies-conditional-to-python-version"]], "Dependencies on CFFI and greenlet": [[4, "dependencies-on-cffi-and-greenlet"]], "Optional test suite dependencies on Rust packages": [[4, "optional-test-suite-dependencies-on-rust-packages"]], "distutils-r1 legacy concepts": [[6, "distutils-r1-legacy-concepts"]], "Different build system variations": [[6, "different-build-system-variations"]], "DISTUTILS_USE_SETUPTOOLS": [[6, "distutils-use-setuptools"]], "distutils and setuptools build systems": [[6, "distutils-and-setuptools-build-systems"]], "Setuptools\u2019 entry points": [[6, "setuptools-entry-points"]], "Other runtime uses of setuptools": [[6, "other-runtime-uses-of-setuptools"]], "pyproject.toml-based projects": [[6, "pyproject-toml-based-projects"]], "In-source vs out-of-source builds": [[6, "in-source-vs-out-of-source-builds"]], "Installing the package before testing": [[6, "installing-the-package-before-testing"]], "Choosing between Python eclasses": [[7, "choosing-between-python-eclasses"]], "Overview": [[7, "overview"]], "Build time vs runtime use": [[7, "build-time-vs-runtime-use"]], "Single-impl vs multi-impl": [[7, "single-impl-vs-multi-impl"]], "Python-first packages (distutils-r1 eclass)": [[7, "python-first-packages-distutils-r1-eclass"]], "Expert python-r1 usage": [[8, "expert-python-r1-usage"]], "Partially restricting Python implementation": [[8, "partially-restricting-python-implementation"]], "Restricting interpreters for python_setup": [[8, "restricting-interpreters-for-python-setup"]], "Disjoint build dependencies (any-r1 API)": [[8, "disjoint-build-dependencies-any-r1-api"]], "Using regular python-r1 API": [[8, "using-regular-python-r1-api"]], "Using any-r1 API with python-r1": [[8, "using-any-r1-api-with-python-r1"]], "Different sets of build-time dependencies": [[8, "different-sets-of-build-time-dependencies"]], "Using any-r1 API with distutils-r1": [[8, "using-any-r1-api-with-distutils-r1"]], "Combining any-r1 API with implementation restrictions": [[8, "combining-any-r1-api-with-implementation-restrictions"]], "Common helper functions": [[9, "common-helper-functions"]], "Install helpers": [[9, "install-helpers"]], "Fixing shebangs on installed scripts": [[9, "fixing-shebangs-on-installed-scripts"]], "Byte-compiling Python modules": [[9, "byte-compiling-python-modules"]], "Querying the implementation information": [[9, "querying-the-implementation-information"]], "Gentoo Python Guide": [[10, "gentoo-python-guide"]], "Contents:": [[10, null]], "Indices and tables": [[10, "indices-and-tables"]], "Python interpreters": [[11, "python-interpreters"]], "Versions of Python": [[11, "versions-of-python"]], "Life cycle of a Python implementation": [[11, "life-cycle-of-a-python-implementation"]], "Stability guarantees of Python implementations": [[11, "stability-guarantees-of-python-implementations"]], "Alternative Python implementations": [[11, "alternative-python-implementations"]], "Support for multiple implementations": [[11, "support-for-multiple-implementations"]], "Backports": [[11, "backports"]], "Migration guides": [[13, "migration-guides"]], "Migrating from old PYTHON_USEDEP syntax in python-single-r1": [[13, "migrating-from-old-python-usedep-syntax-in-python-single-r1"]], "Migrating from EAPI 7 to EAPI 8": [[13, "migrating-from-eapi-7-to-eapi-8"]], "Migrating to PEP 517 builds": [[13, "migrating-to-pep-517-builds"]], "python-r1 \u2014 multi-impl packages": [[14, "python-r1-multi-impl-packages"]], "Manual install": [[14, "manual-install"], [21, "manual-install"]], "Pure Python autotools package": [[14, "pure-python-autotools-package"]], "Additional build-time Python use": [[14, "additional-build-time-python-use"]], "Python package maintenance": [[15, "python-package-maintenance"]], "Package name policy": [[15, "package-name-policy"]], "Support for Python 2": [[15, "support-for-python-2"]], "Which implementations to test new packages for?": [[15, "which-implementations-to-test-new-packages-for"]], "Adding new Python implementations to existing packages": [[15, "adding-new-python-implementations-to-existing-packages"]], "Which packages can be (co-)maintained by the Python project?": [[15, "which-packages-can-be-co-maintained-by-the-python-project"]], "Porting packages to a new EAPI": [[15, "porting-packages-to-a-new-eapi"]], "Monitoring new package versions": [[15, "monitoring-new-package-versions"]], "PyPI release feeds": [[15, "pypi-release-feeds"]], "Checking via pip": [[15, "checking-via-pip"]], "Repology": [[15, "repology"]], "Routine checks on installed Python packages": [[15, "routine-checks-on-installed-python-packages"]], "pip check": [[15, "pip-check"]], "pip list --outdated": [[15, "pip-list-outdated"]], "gpy-verify-deps": [[15, "gpy-verify-deps"]], "Porting tips": [[16, "porting-tips"]], "Retroactive changes": [[16, "retroactive-changes"]], "bpo43882: urlsplit now strips LF, CR and HT characters": [[16, "bpo43882-urlsplit-now-strips-lf-cr-and-ht-characters"]], "Python 3.11": [[16, "python-3-11"]], "Generator-based coroutine removal (asyncio.coroutine)": [[16, "generator-based-coroutine-removal-asyncio-coroutine"]], "inspect.getargspec() and inspect.formatargspec() removal": [[16, "inspect-getargspec-and-inspect-formatargspec-removal"]], "Python 3.10": [[16, "python-3-10"]], "configure: No package \u2018python-3.1\u2019 found": [[16, "configure-no-package-python-3-1-found"]], "distutils.sysconfig deprecation": [[16, "distutils-sysconfig-deprecation"]], "Python 3.9": [[16, "python-3-9"]], "base64.encodestring / base64.decodestring removal": [[16, "base64-encodestring-base64-decodestring-removal"]], "Python 3.8": [[16, "python-3-8"]], "python-config and pkg-config no longer list Python library by default": [[16, "python-config-and-pkg-config-no-longer-list-python-library-by-default"]], "Replacing the toml package": [[16, "replacing-the-toml-package"]], "Porting to tomllib/tomli without toml fallback": [[16, "porting-to-tomllib-tomli-without-toml-fallback"]], "Porting to tomllib/tomli with toml fallback": [[16, "porting-to-tomllib-tomli-with-toml-fallback"]], "Porting to tomli-w": [[16, "porting-to-tomli-w"]], "Preface": [[17, "preface"]], "pypi \u2014 helper eclass for PyPI archives": [[18, "pypi-helper-eclass-for-pypi-archives"]], "PyPI URLs": [[18, "pypi-urls"]], "Modern and legacy URLs": [[18, "modern-and-legacy-urls"]], "Source distribution filenames": [[18, "source-distribution-filenames"]], "Binary distribution filenames": [[18, "binary-distribution-filenames"]], "Packages with matching name and version": [[18, "packages-with-matching-name-and-version"]], "Package with a different name": [[18, "package-with-a-different-name"]], "Customizing the generated URL": [[18, "customizing-the-generated-url"]], "Fetching wheels": [[18, "fetching-wheels"]], "pytest recipes": [[19, "pytest-recipes"]], "Skipping tests based on markers": [[19, "skipping-tests-based-on-markers"]], "Skipping tests based on paths/names": [[19, "skipping-tests-based-on-paths-names"]], "Avoiding the dependency on pytest-runner": [[19, "avoiding-the-dependency-on-pytest-runner"]], "Using pytest-xdist to run tests in parallel": [[19, "using-pytest-xdist-to-run-tests-in-parallel"]], "Avoiding dependencies on other pytest plugins": [[19, "avoiding-dependencies-on-other-pytest-plugins"]], "Explicitly disabling automatic pytest plugins": [[19, "explicitly-disabling-automatic-pytest-plugins"]], "Expert: disabling plugin autoloading entirely": [[19, "expert-disabling-plugin-autoloading-entirely"]], "TypeError: _make_test_flaky() got an unexpected keyword argument \u2018reruns\u2019": [[19, "typeerror-make-test-flaky-got-an-unexpected-keyword-argument-reruns"]], "ImportPathMismatchError": [[19, "importpathmismatcherror"]], "fixture \u2018\u2026\u2019 not found": [[19, "fixture-not-found"]], "Warnings": [[19, "warnings"]], "QA checks and warnings": [[20, "qa-checks-and-warnings"]], "Improved QA warning reporting in Portage": [[20, "improved-qa-warning-reporting-in-portage"]], "Compiled bytecode-related warnings": [[20, "compiled-bytecode-related-warnings"]], "Modules are not byte-compiled": [[20, "modules-are-not-byte-compiled"]], "Stray compiled bytecode": [[20, "stray-compiled-bytecode"]], "Stray top-level files in site-packages": [[20, "stray-top-level-files-in-site-packages"]], "Example or test packages installed by setuptools": [[20, "example-or-test-packages-installed-by-setuptools"]], "Documentation files installed by Poetry": [[20, "documentation-files-installed-by-poetry"]], "Deprecated PEP 517 backends": [[20, "deprecated-pep-517-backends"]], "flit.buildapi": [[20, "flit-buildapi"]], "poetry.masonry.api": [[20, "poetry-masonry-api"]], "setuptools.build_meta:__legacy__": [[20, "setuptools-build-meta-legacy"]], "python-single-r1 \u2014 single-impl packages": [[21, "python-single-r1-single-impl-packages"]], "A hybrid: build-time + conditional runtime": [[21, "a-hybrid-build-time-conditional-runtime"]], "Multiple USE conditions": [[21, "multiple-use-conditions"]], "Tests in Python packages": [[22, "tests-in-python-packages"]], "Why is running tests important?": [[22, "why-is-running-tests-important"]], "Using distutils_enable_tests": [[22, "using-distutils-enable-tests"]], "Basic use case": [[22, "basic-use-case"]], "Adding more test dependencies": [[22, "adding-more-test-dependencies"]], "Installing the package before running tests": [[22, "installing-the-package-before-running-tests"]], "Customizing the test phase": [[22, "customizing-the-test-phase"]], "Customizing the test phase for pytest": [[22, "customizing-the-test-phase-for-pytest"]], "Running tests with virtualx": [[22, "running-tests-with-virtualx"]], "Choosing the correct test runner": [[22, "choosing-the-correct-test-runner"]], "Undesirable test dependencies": [[22, "undesirable-test-dependencies"]], "Missing test files in PyPI packages": [[22, "missing-test-files-in-pypi-packages"]], "ImportErrors for C extensions": [[22, "importerrors-for-c-extensions"]], "Checklist for dealing with test failures": [[22, "checklist-for-dealing-with-test-failures"]], "Skipping problematic tests": [[22, "skipping-problematic-tests"]], "Tests requiring Internet access": [[22, "tests-requiring-internet-access"]], "Tests aborting (due to assertions)": [[22, "tests-aborting-due-to-assertions"]], "Installing extra dependencies in test environment (PEP 517 mode)": [[22, "installing-extra-dependencies-in-test-environment-pep-517-mode"]], "Maintenance of Python implementations": [[12, "maintenance-of-python-implementations"]], "Notes specific to Python interpreters": [[12, "notes-specific-to-python-interpreters"]], "CPython patchsets": [[12, "cpython-patchsets"]], "PyPy": [[12, "pypy"]], "Adding a new Python implementation": [[12, "adding-a-new-python-implementation"]], "Eclass and profile changes": [[12, "eclass-and-profile-changes"], [12, "id1"]], "Porting initial packages": [[12, "porting-initial-packages"]], "Removing a Python implementation": [[12, "removing-a-python-implementation"]], "Preparation": [[12, "preparation"]], "Python build system bootstrap": [[12, "python-build-system-bootstrap"]], "distutils-r1 \u2014 standard Python build systems": [[5, "distutils-r1-standard-python-build-systems"]], "The PEP 517 and legacy modes": [[5, "the-pep-517-and-legacy-modes"]], "Basic use (PEP 517 mode)": [[5, "basic-use-pep-517-mode"]], "Source archives": [[5, "source-archives"]], "python-single-r1 variant": [[5, "python-single-r1-variant"]], "PEP 517 build systems": [[5, "pep-517-build-systems"]], "setuptools_scm (flit_scm, hatch-vcs, pdm-backend) and snapshots": [[5, "setuptools-scm-flit-scm-hatch-vcs-pdm-backend-and-snapshots"]], "Packages installing extensions (C, Rust\u2026)": [[5, "packages-installing-extensions-c-rust"]], "Packages using Cython": [[5, "packages-using-cython"]], "Parallel build race conditions": [[5, "parallel-build-race-conditions"]], "Sub-phase functions": [[5, "sub-phase-functions"]], "python_prepare": [[5, "python-prepare"]], "python_configure": [[5, "python-configure"]], "python_compile": [[5, "python-compile"]], "python_test": [[5, "python-test"]], "python_install": [[5, "python-install"]], "Passing arguments to setup.py": [[5, "passing-arguments-to-setup-py"]], "Calling custom setup.py commands": [[5, "calling-custom-setup-py-commands"]], "Enabling tests": [[5, "enabling-tests"]], "Building documentation via Sphinx": [[5, "building-documentation-via-sphinx"]], "Basic documentation with autodoc": [[5, "basic-documentation-with-autodoc"]], "Additional Sphinx extensions": [[5, "additional-sphinx-extensions"]], "Sphinx without autodoc or extensions": [[5, "sphinx-without-autodoc-or-extensions"]], "Packages with optional Python build system usage": [[5, "packages-with-optional-python-build-system-usage"]], "Packages with Rust extensions (using Cargo)": [[5, "packages-with-rust-extensions-using-cargo"]], "Installing packages without a PEP 517 build backend": [[5, "installing-packages-without-a-pep-517-build-backend"]], "Installing packages manually into BUILD_DIR": [[5, "installing-packages-manually-into-build-dir"]], "Installing packages manually into D": [[5, "installing-packages-manually-into-d"]], "Integrating with a non-PEP 517 build system": [[5, "integrating-with-a-non-pep-517-build-system"]]}, "indexentries": {"cython": [[5, "index-8"]], "distutils_args": [[5, "index-19"]], "distutils_deps": [[5, "index-22"]], "distutils_ext": [[5, "index-7"]], "distutils_optional": [[5, "index-23"]], "distutils_single_impl": [[5, "index-0"]], "distutils_use_pep517": [[5, "index-1"]], "pdm_build_scm_version": [[5, "index-3"]], "rust": [[5, "index-24"]], "setuptools_scm_pretend_version": [[5, "index-2"]], "distutils_enable_sphinx": [[5, "index-21"]], "esetup.py": [[5, "index-20"]], "flit_scm": [[5, "index-4"]], "hatch-vcs": [[5, "index-5"]], "python_compile": [[5, "index-13"]], "python_compile_all": [[5, "index-14"]], "python_configure": [[5, "index-11"]], "python_configure_all": [[5, "index-12"]], "python_install": [[5, "index-17"]], "python_install_all": [[5, "index-18"]], "python_prepare": [[5, "index-9"]], "python_prepare_all": [[5, "index-10"]], "python_test": [[5, "index-15"]], "python_test_all": [[5, "index-16"]], "setuptools_scm": [[5, "index-6"]]}}) \ No newline at end of file