summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2023-04-22 09:31:21 +0200
committerMichał Górny <mgorny@gentoo.org>2023-04-22 09:31:21 +0200
commit0d5506d4a762b2920f2ab995af61dfa639b97f38 (patch)
tree092987fd07e1086fd76c450f9fc472dbc88c12c0
parentRegenerate with newer packages (diff)
downloadpython-0d5506d4a762b2920f2ab995af61dfa639b97f38.tar.gz
python-0d5506d4a762b2920f2ab995af61dfa639b97f38.tar.bz2
python-0d5506d4a762b2920f2ab995af61dfa639b97f38.zip
Update Guide to 1cc53e9
Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--guide/_sources/distutils.rst.txt54
-rw-r--r--guide/distutils.html78
-rw-r--r--guide/genindex.html36
-rw-r--r--guide/index.html1
-rw-r--r--guide/searchindex.js2
5 files changed, 136 insertions, 35 deletions
diff --git a/guide/_sources/distutils.rst.txt b/guide/_sources/distutils.rst.txt
index 71cc08b..e415192 100644
--- a/guide/_sources/distutils.rst.txt
+++ b/guide/_sources/distutils.rst.txt
@@ -341,6 +341,60 @@ of setuptools_scm. The same approach applies to both of them.
.. _hatch-vcs: https://pypi.org/project/hatch-vcs/
+.. index:: DISTUTILS_EXT
+
+Packages installing extensions (C, Rust…)
+=========================================
+Python extensions are compiled (C, Cython, Rust…) loadable modules.
+They can generally be recognized by the presence of ``.so`` files
+in site-packages directory.
+
+The eclass provides a ``DISTUTILS_EXT`` control variable to enable
+additional features related to extensions. These are:
+
+- ``DEPEND`` class dependency on the Python implementation — needed
+ for cross-compilation (unless ``DISTUTILS_OPTIONAL`` is used,
+ then the ``DEPEND`` needs to be added manually).
+
+- ``IUSE=debug`` flag that is used to control whether the extensions
+ are compiled with assertions enabled (among others, used to verify
+ whether the Python API is used correctly).
+
+- calling ``esetup.py build_ext`` to compile C files using parallel
+ jobs.
+
+The variable needs to be set prior to inheriting the eclass, e.g.:
+
+.. code-block:: bash
+ :emphasize-lines: 6
+
+ # Copyright 2023 Gentoo Authors
+ # Distributed under the terms of the GNU General Public License v2
+
+ EAPI=8
+
+ DISTUTILS_EXT=1
+ DISTUTILS_USE_PEP517=setuptools
+ PYTHON_COMPAT=( python3_{10..11} pypy3 )
+
+ inherit distutils-r1
+
+Note that it should be enabled even if the extensions are only built
+conditionally to USE flags. Most of the additions need to be done
+in global scope anyway, and making the ``DEPEND`` conditional isn't
+considered worth the added complexity.
+
+In general, you don't need to worry about adding the variable.
+The eclass should automatically print a QA warning if ``DISTUTILS_EXT``
+is missing:
+
+.. code-block:: console
+
+ * Python extension modules (*.so) found installed. Please set:
+ * DISTUTILS_EXT=1
+ * in the ebuild.
+
+
.. index:: Cython
Packages using Cython
diff --git a/guide/distutils.html b/guide/distutils.html
index 34e55a8..9f464d5 100644
--- a/guide/distutils.html
+++ b/guide/distutils.html
@@ -360,8 +360,51 @@ data files. Please take special care to verify that all files are
installed.</p>
</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>
+<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>
+<p>The eclass provides a <code class="docutils literal notranslate"><span class="pre">DISTUTILS_EXT</span></code> control variable to enable
+additional features related to extensions. These are:</p>
+<ul class="simple">
+<li><p><code class="docutils literal notranslate"><span class="pre">DEPEND</span></code> class dependency on the Python implementation — needed
+for cross-compilation (unless <code class="docutils literal notranslate"><span class="pre">DISTUTILS_OPTIONAL</span></code> is used,
+then the <code class="docutils literal notranslate"><span class="pre">DEPEND</span></code> needs to be added manually).</p></li>
+<li><p><code class="docutils literal notranslate"><span class="pre">IUSE=debug</span></code> flag that is used to control whether the extensions
+are compiled with assertions enabled (among others, used to verify
+whether the Python API is used correctly).</p></li>
+<li><p>calling <code class="docutils literal notranslate"><span class="pre">esetup.py</span> <span class="pre">build_ext</span></code> to compile C files using parallel
+jobs.</p></li>
+</ul>
+<p>The variable needs to be set prior to inheriting the eclass, e.g.:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="c1"># Copyright 2023 Gentoo Authors</span>
+<span class="w"> </span><span class="c1"># Distributed under the terms of the GNU General Public License v2</span>
+
+<span class="w"> </span><span class="nv">EAPI</span><span class="o">=</span><span class="m">8</span>
+
+<span class="hll"><span class="w"> </span><span class="nv">DISTUTILS_EXT</span><span class="o">=</span><span class="m">1</span>
+</span><span class="w"> </span><span class="nv">DISTUTILS_USE_PEP517</span><span class="o">=</span>setuptools
+<span class="w"> </span><span class="nv">PYTHON_COMPAT</span><span class="o">=(</span><span class="w"> </span>python3_<span class="o">{</span><span class="m">10</span>..11<span class="o">}</span><span class="w"> </span>pypy3<span class="w"> </span><span class="o">)</span>
+
+<span class="w"> </span>inherit<span class="w"> </span>distutils-r1
+</pre></div>
+</div>
+<p>Note that it should be enabled even if the extensions are only built
+conditionally to USE flags. Most of the additions need to be done
+in global scope anyway, and making the <code class="docutils literal notranslate"><span class="pre">DEPEND</span></code> conditional isn’t
+considered worth the added complexity.</p>
+<p>In general, you don’t need to worry about adding the variable.
+The eclass should automatically print a QA warning if <code class="docutils literal notranslate"><span class="pre">DISTUTILS_EXT</span></code>
+is missing:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">* Python extension modules (*.so) found installed. Please set:</span>
+<span class="go">* DISTUTILS_EXT=1</span>
+<span class="go">* in the ebuild.</span>
+</pre></div>
+</div>
+</section>
<section id="packages-using-cython">
-<span id="index-6"></span><h2>Packages using Cython<a class="headerlink" href="#packages-using-cython" title="Permalink to this heading">¶</a></h2>
+<span id="index-7"></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
@@ -460,8 +503,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-7"></span><section id="python-prepare">
-<span id="index-8"></span><h3>python_prepare<a class="headerlink" href="#python-prepare" title="Permalink to this heading">¶</a></h3>
+<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>
<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>
@@ -503,9 +546,9 @@ enables in-source builds.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-9"></span></section>
+<span class="target" id="index-10"></span></section>
<section id="python-configure">
-<span id="index-10"></span><h3>python_configure<a class="headerlink" href="#python-configure" title="Permalink to this heading">¶</a></h3>
+<span id="index-11"></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
@@ -523,9 +566,9 @@ global environment variables.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-11"></span></section>
+<span class="target" id="index-12"></span></section>
<section id="python-compile">
-<span id="index-12"></span><h3>python_compile<a class="headerlink" href="#python-compile" title="Permalink to this heading">¶</a></h3>
+<span id="index-13"></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
@@ -544,9 +587,9 @@ the documentation (see <code class="docutils literal notranslate"><span class="p
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-13"></span></section>
+<span class="target" id="index-14"></span></section>
<section id="python-test">
-<span id="index-14"></span><h3>python_test<a class="headerlink" href="#python-test" title="Permalink to this heading">¶</a></h3>
+<span id="index-15"></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>
@@ -557,9 +600,9 @@ to Python.</p>
<span class="o">}</span>
</pre></div>
</div>
-<span class="target" id="index-15"></span></section>
+<span class="target" id="index-16"></span></section>
<section id="python-install">
-<span id="index-16"></span><h3>python_install<a class="headerlink" href="#python-install" title="Permalink to this heading">¶</a></h3>
+<span id="index-17"></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>
@@ -588,7 +631,7 @@ such as bash completions or examples.</p>
</section>
</section>
<section id="passing-arguments-to-setup-py">
-<span id="index-17"></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-18"></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>
@@ -627,7 +670,7 @@ take boolean arguments. In this case, the ebuild can use:</p>
</div>
</section>
<section id="calling-custom-setup-py-commands">
-<span id="index-18"></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-19"></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
@@ -645,7 +688,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-19"></span><h2>Building documentation via Sphinx<a class="headerlink" href="#building-documentation-via-sphinx" title="Permalink to this heading">¶</a></h2>
+<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>
<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!),
@@ -761,10 +804,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-20"></span></section>
+<span class="target" id="index-21"></span></section>
</section>
<section id="packages-with-optional-python-build-system-usage">
-<span id="index-21"></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-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>
<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,
@@ -873,7 +916,7 @@ follows:</p>
</div>
</section>
<section id="packages-with-rust-extensions-using-cargo">
-<span id="index-22"></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-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>
<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,
@@ -1119,6 +1162,7 @@ python_install<span class="o">()</span><span class="w"> </span><span class="o">{
<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="#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>
<li class="toctree-l2"><a class="reference internal" href="#sub-phase-functions">Sub-phase functions</a></li>
diff --git a/guide/genindex.html b/guide/genindex.html
index 6c908a3..e63374b 100644
--- a/guide/genindex.html
+++ b/guide/genindex.html
@@ -62,7 +62,7 @@
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="distutils.html#index-6">Cython</a>
+ <li><a href="distutils.html#index-7">Cython</a>
</li>
</ul></td>
</tr></table>
@@ -74,21 +74,23 @@
</li>
<li><a href="expert-multi.html#index-2">DISTUTILS_ALL_SUBPHASE_IMPLS</a>
</li>
- <li><a href="distutils.html#index-17">DISTUTILS_ARGS</a>
+ <li><a href="distutils.html#index-18">DISTUTILS_ARGS</a>
</li>
- <li><a href="distutils.html#index-20">DISTUTILS_DEPS</a>
+ <li><a href="distutils.html#index-21">DISTUTILS_DEPS</a>
</li>
- <li><a href="distutils.html#index-19">distutils_enable_sphinx</a>
+ <li><a href="distutils.html#index-20">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>
<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-21">DISTUTILS_OPTIONAL</a>
+ <li><a href="distutils.html#index-22">DISTUTILS_OPTIONAL</a>
</li>
<li><a href="distutils.html#index-0">DISTUTILS_SINGLE_IMPL</a>
</li>
@@ -110,7 +112,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-18">esetup.py</a>
+ <li><a href="distutils.html#index-19">esetup.py</a>
</li>
</ul></td>
</tr></table>
@@ -155,13 +157,13 @@
</ul></li>
<li><a href="basic.html#index-0">PYTHON_COMPAT</a>
</li>
- <li><a href="distutils.html#index-11">python_compile</a>
+ <li><a href="distutils.html#index-12">python_compile</a>
</li>
- <li><a href="distutils.html#index-12">python_compile_all</a>
+ <li><a href="distutils.html#index-13">python_compile_all</a>
</li>
- <li><a href="distutils.html#index-9">python_configure</a>
+ <li><a href="distutils.html#index-10">python_configure</a>
</li>
- <li><a href="distutils.html#index-10">python_configure_all</a>
+ <li><a href="distutils.html#index-11">python_configure_all</a>
</li>
<li><a href="basic.html#index-1">PYTHON_DEPS</a>
</li>
@@ -217,9 +219,9 @@
</li>
<li><a href="any.html#index-3">python_has_version</a>
</li>
- <li><a href="distutils.html#index-15">python_install</a>
+ <li><a href="distutils.html#index-16">python_install</a>
</li>
- <li><a href="distutils.html#index-16">python_install_all</a>
+ <li><a href="distutils.html#index-17">python_install_all</a>
</li>
<li><a href="helper.html#index-7">python_moduleinto</a>
</li>
@@ -231,9 +233,9 @@
</li>
<li><a href="helper.html#index-9">python_optimize</a>
</li>
- <li><a href="distutils.html#index-7">python_prepare</a>
+ <li><a href="distutils.html#index-8">python_prepare</a>
</li>
- <li><a href="distutils.html#index-8">python_prepare_all</a>
+ <li><a href="distutils.html#index-9">python_prepare_all</a>
</li>
<li><a href="depend.html#index-0">PYTHON_REQ_USE</a>
</li>
@@ -252,9 +254,9 @@
</ul></li>
<li><a href="single.html#index-0">PYTHON_SINGLE_USEDEP</a>
</li>
- <li><a href="distutils.html#index-13">python_test</a>
+ <li><a href="distutils.html#index-14">python_test</a>
</li>
- <li><a href="distutils.html#index-14">python_test_all</a>
+ <li><a href="distutils.html#index-15">python_test_all</a>
</li>
<li>
PYTHON_USEDEP
@@ -279,7 +281,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-22">Rust</a>
+ <li><a href="distutils.html#index-23">Rust</a>
</li>
</ul></td>
</tr></table>
diff --git a/guide/index.html b/guide/index.html
index 1ef9858..a223c28 100644
--- a/guide/index.html
+++ b/guide/index.html
@@ -101,6 +101,7 @@
<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#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>
<li class="toctree-l2"><a class="reference internal" href="distutils.html#sub-phase-functions">Sub-phase functions</a></li>
diff --git a/guide/searchindex.js b/guide/searchindex.js
index 073005d..27315a0 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, 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, 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, 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, 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, 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, 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, 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, 5, 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, 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, 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, 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, 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, "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, 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": [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": [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": [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": [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": [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": [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, "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": 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": [], "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}, "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": 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 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"]], "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"]], "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"]]}, "indexentries": {"python_usedep": [[0, "index-2"], [14, "index-1"], [21, "index-1"]], "python-any-r1": [[0, "index-0"], [0, "index-1"], [0, "index-2"]], "python_check_deps": [[0, "index-1"], [8, "index-4"]], "python_gen_any_dep": [[0, "index-0"], [8, "index-3"]], "python_has_version": [[0, "index-3"]], "bdepend": [[1, "index-5"]], "depend": [[1, "index-6"]], "epython": [[1, "index-3"]], "python": [[1, "index-4"]], "python_compat": [[1, "index-0"]], "python_deps": [[1, "index-1"]], "python_required_use": [[1, "index-2"]], "rdepend": [[1, "index-7"]], "python_req_use": [[4, "index-0"]], "cffi": [[4, "index-3"]], "for conditional deps": [[4, "index-2"]], "greenlet": [[4, "index-3"]], "python_gen_cond_dep": [[4, "index-2"], [21, "index-2"]], "python_gen_impl_dep": [[4, "index-1"]], "test-rust": [[4, "index-4"]], "cython": [[5, "index-6"]], "distutils_args": [[5, "index-17"]], "distutils_deps": [[5, "index-20"]], "distutils_optional": [[5, "index-21"]], "distutils_single_impl": [[5, "index-0"]], "distutils_use_pep517": [[5, "index-1"]], "rust": [[5, "index-22"]], "setuptools_scm_pretend_version": [[5, "index-2"]], "distutils_enable_sphinx": [[5, "index-19"]], "esetup.py": [[5, "index-18"]], "flit_scm": [[5, "index-3"]], "hatch-vcs": [[5, "index-4"]], "python_compile": [[5, "index-11"]], "python_compile_all": [[5, "index-12"]], "python_configure": [[5, "index-9"]], "python_configure_all": [[5, "index-10"]], "python_install": [[5, "index-15"]], "python_install_all": [[5, "index-16"]], "python_prepare": [[5, "index-7"]], "python_prepare_all": [[5, "index-8"]], "python_test": [[5, "index-13"]], "python_test_all": [[5, "index-14"]], "setuptools_scm": [[5, "index-5"]], "distutils_in_source_build": [[6, "index-1"]], "distutils_use_setuptools": [[6, "index-0"]], "distutils_install_for_testing": [[6, "index-2"]], "distutils_all_subphase_impls": [[8, "index-2"]], "python-r1": [[8, "index-3"], [8, "index-4"], [14, "index-1"]], "python_gen_useflags": [[8, "index-0"]], "python_setup": [[8, "index-1"], [14, "index-3"]], "with implementation parameter": [[8, "index-1"]], "python_doexe": [[9, "index-0"]], "python_doheaders": [[9, "index-5"]], "python_domodule": [[9, "index-4"]], "python_doscript": [[9, "index-2"]], "python_fix_shebang": [[9, "index-8"]], "python_get_cflags": [[9, "index-14"]], "python_get_libs": [[9, "index-15"]], "python_get_python_config": [[9, "index-16"]], "python_get_includedir": [[9, "index-11"]], "python_get_library_path": [[9, "index-13"]], "python_get_scriptdir": [[9, "index-12"]], "python_get_sitedir": [[9, "index-10"]], "python_moduleinto": [[9, "index-7"]], "python_newexe": [[9, "index-1"]], "python_newscript": [[9, "index-3"]], "python_optimize": [[9, "index-9"]], "python_scriptinto": [[9, "index-6"]], "eapi 8": [[13, "index-1"]], "python_multi_usedep": [[13, "index-0"]], "for python-r1": [[14, "index-3"]], "python_foreach_impl": [[14, "index-0"]], "run_in_build_dir": [[14, "index-2"]], "python_single_usedep": [[21, "index-0"]], "for python-single-r1": [[21, "index-2"]], "python-single-r1": [[21, "index-1"]], "distutils_enable_tests": [[22, "index-0"]], "epytest": [[22, "index-1"]], "virtx": [[22, "index-2"]]}}) \ 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, 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, 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, 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, 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, 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, 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, "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}, "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"], [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"]], "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"]], "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"]], "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"]]}, "indexentries": {"cython": [[5, "index-7"]], "distutils_args": [[5, "index-18"]], "distutils_deps": [[5, "index-21"]], "distutils_ext": [[5, "index-6"]], "distutils_optional": [[5, "index-22"]], "distutils_single_impl": [[5, "index-0"]], "distutils_use_pep517": [[5, "index-1"]], "rust": [[5, "index-23"]], "setuptools_scm_pretend_version": [[5, "index-2"]], "distutils_enable_sphinx": [[5, "index-20"]], "esetup.py": [[5, "index-19"]], "flit_scm": [[5, "index-3"]], "hatch-vcs": [[5, "index-4"]], "python_compile": [[5, "index-12"]], "python_compile_all": [[5, "index-13"]], "python_configure": [[5, "index-10"]], "python_configure_all": [[5, "index-11"]], "python_install": [[5, "index-16"]], "python_install_all": [[5, "index-17"]], "python_prepare": [[5, "index-8"]], "python_prepare_all": [[5, "index-9"]], "python_test": [[5, "index-14"]], "python_test_all": [[5, "index-15"]], "setuptools_scm": [[5, "index-5"]]}}) \ No newline at end of file