From 8954361b403e9b12e28226155c7edbec027f9ecc Mon Sep 17 00:00:00 2001
From: Wes Turner <50891+westurner@users.noreply.github.com>
Date: Sat, 19 Dec 2020 15:12:12 -0500
Subject: [PATCH 0001/1072] Update distributing-packages-using-setuptools.rst
---
.../distributing-packages-using-setuptools.rst | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index ff7a360a3..d2fac7512 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -659,24 +659,27 @@ For example::
Working in "development mode"
=============================
-Although not required, it's common to locally install your project in "editable"
-or "develop" mode while you're working on it. This allows your project to be
-both installed and editable in project form.
+You can install a project in "editable"
+or "develop" mode while you're working on it.
+When installed as editable, a project can be
+edited in-place without reinstallation:
+changes to Python source files in projects installed as editable will be reflected the next time an interpreter process is started.
-Assuming you're in the root of your project directory, then run:
+To install a Python package in "editable"/"development" mode
+Change directory to the root of the project directory and run ``pip install -e .``:
::
pip install -e .
-Although somewhat cryptic, ``-e`` is short for ``--editable``, and ``.`` refers
+The pip command-line flag ``-e`` is short for ``--editable``, and ``.`` refers
to the current working directory, so together, it means to install the current
directory (i.e. your project) in editable mode. This will also install any
dependencies declared with "install_requires" and any scripts declared with
"console_scripts". Dependencies will be installed in the usual, non-editable mode.
-It's fairly common to also want to install some of your dependencies in editable
+You may want to install some of your dependencies in editable
mode as well. For example, supposing your project requires "foo" and "bar", but
you want "bar" installed from VCS in editable mode, then you could construct a
requirements file like so::
From a714ff7788ba96889e992ee83ac33657e6f688d6 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 12 Jul 2021 19:38:37 +0800
Subject: [PATCH 0002/1072] Add some sections
---
.../deploying-python-applications.rst | 41 ++++++++++++++++++-
1 file changed, 40 insertions(+), 1 deletion(-)
diff --git a/source/discussions/deploying-python-applications.rst b/source/discussions/deploying-python-applications.rst
index 8734833f5..a013694c6 100644
--- a/source/discussions/deploying-python-applications.rst
+++ b/source/discussions/deploying-python-applications.rst
@@ -83,9 +83,48 @@ Application bundles
FIXME
- - py2exe/py2app/PEX
- wheels kinda/sorta
+Windows
+-------
+
+py2exe
+^^^^^^
+
+`py2exe `__ is a distutils extension which
+allows to build standalone Windows executable programs (32-bit and 64-bit)
+from Python scripts. Python versions included in the official development
+cycle are supported (from 3.6 to 3.9 included). py2exe can build console
+executables and windows (GUI) executables. Building windows services,
+and DLL/EXE COM servers might work but it is not actively supported.
+The distutils extension is released under the MIT-licence and Mozilla
+Public License 2.0.
+
+Mac OS
+------
+
+py2app
+^^^^^^
+
+`py2app `__ is a Python setuptools
+command which will allow you to make standalone Mac OS X application
+bundles and plugins from Python scripts. Note that py2app MUST be used
+on OSX to build applications, it cannot create Mac applications on other
+platforms. py2app is released under the MIT-license.
+
+Unix (including Linux and Mac OS X)
+-----------------------------------
+
+pex
+^^^
+
+`pex `__ is a library for generating .pex
+(Python EXecutable) files which are executable Python environments in the
+spirit of virtualenvs. pex is an expansion upon the ideas outlined in PEP 441
+and makes the deployment of Python applications as simple as cp. pex files may
+even include multiple platform-specific Python distributions, meaning that a
+single pex file can be portable across Linux and OS X. pex is released under the
+Apache License 2.0.
Configuration management
========================
From 21b6da8ff483be7208f26d5155c8825bc7f4114a Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 12 Jul 2021 23:32:01 +0800
Subject: [PATCH 0003/1072] Add reference to pep and status of Python branches
---
source/discussions/deploying-python-applications.rst | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/source/discussions/deploying-python-applications.rst b/source/discussions/deploying-python-applications.rst
index a013694c6..f2bb5f756 100644
--- a/source/discussions/deploying-python-applications.rst
+++ b/source/discussions/deploying-python-applications.rst
@@ -94,12 +94,14 @@ py2exe
`py2exe `__ is a distutils extension which
allows to build standalone Windows executable programs (32-bit and 64-bit)
from Python scripts. Python versions included in the official development
-cycle are supported (from 3.6 to 3.9 included). py2exe can build console
-executables and windows (GUI) executables. Building windows services,
-and DLL/EXE COM servers might work but it is not actively supported.
+cycle are supported (refers to `Status of Python branches`__). py2exe can
+build console executables and windows (GUI) executables. Building windows
+services, and DLL/EXE COM servers might work but it is not actively supported.
The distutils extension is released under the MIT-licence and Mozilla
Public License 2.0.
+.. __: https://devguide.python.org/#status-of-python-branches
+
Mac OS
------
@@ -120,7 +122,7 @@ pex
`pex `__ is a library for generating .pex
(Python EXecutable) files which are executable Python environments in the
-spirit of virtualenvs. pex is an expansion upon the ideas outlined in PEP 441
+spirit of virtualenvs. pex is an expansion upon the ideas outlined in :pep:`441`
and makes the deployment of Python applications as simple as cp. pex files may
even include multiple platform-specific Python distributions, meaning that a
single pex file can be portable across Linux and OS X. pex is released under the
From 8ac20c1968bc0e32825a77195f7d92c488eacee7 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 13:21:36 +0800
Subject: [PATCH 0004/1072] Add translation.yml
---
.github/workflows/translation.yml | 36 +++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 .github/workflows/translation.yml
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
new file mode 100644
index 000000000..ba648d60d
--- /dev/null
+++ b/.github/workflows/translation.yml
@@ -0,0 +1,36 @@
+name: Translation
+
+ on:
+ schedule:
+ - cron: '0 0 0 ? * WED,SUN *'
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: 3.9
+
+ - name: Install Dependencies
+ run: python -m pip install --upgrade nox virtualenv
+
+ - name: Create local changes
+ run: python -m nox -s translation
+
+ - name: Commit files
+ run: |
+ git config --local user.email "github-actions[bot]@users.noreply.github.com"
+ git config --local user.name "github-actions[bot]"
+ git_hash=$(git rev-parse --short "$GITHUB_SHA")
+ git commit -m "Update messages.pot ${git_hash}" locales/messages.pot
+ if: ${{job.status == 'failure'}}
+ run: echo "No Changes!"
+
+ - name: Push changes
+ run: |
+ git push --atomic main
\ No newline at end of file
From b5e4f1835f229fd82d407fc029b89952fa66edeb Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 13:23:19 +0800
Subject: [PATCH 0005/1072] Update translation.yml
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index ba648d60d..d3b3ba8b3 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -1,6 +1,6 @@
name: Translation
- on:
+on:
schedule:
- cron: '0 0 0 ? * WED,SUN *'
From b9abb50bb1e15ce593024e6d3ffe5f0d27bf3d8b Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 13:23:59 +0800
Subject: [PATCH 0006/1072] Update translation.yml
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index d3b3ba8b3..b8e8ea1be 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -2,7 +2,7 @@ name: Translation
on:
schedule:
- - cron: '0 0 0 ? * WED,SUN *'
+ - cron: '00 00,00 * * *'
jobs:
build:
From d7eaa57ab540a686d0606bcaa72f94c4a4f86af0 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 13:25:31 +0800
Subject: [PATCH 0007/1072] Update translation.yml
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index b8e8ea1be..c86b837a0 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -2,7 +2,7 @@ name: Translation
on:
schedule:
- - cron: '00 00,00 * * *'
+ - cron: '30 13 * * *'
jobs:
build:
From 39fabed254c10a67bf11ae8f6558f9b978a58936 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 14:08:04 +0800
Subject: [PATCH 0008/1072] Update translation.yml
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index c86b837a0..2cd188f29 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -2,7 +2,7 @@ name: Translation
on:
schedule:
- - cron: '30 13 * * *'
+ - cron: '10 14 * * *'
jobs:
build:
From 0e28251d2999effe7b0267d08920166ea77b4d02 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 14:18:22 +0800
Subject: [PATCH 0009/1072] Update cron spec
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 2cd188f29..e6f6ae1ce 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -2,7 +2,7 @@ name: Translation
on:
schedule:
- - cron: '10 14 * * *'
+ - cron: '00 00,00 * * sun'
jobs:
build:
From 4780502450042337a09f00858e4e15c6019c9d33 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 15:06:08 +0800
Subject: [PATCH 0010/1072] Update translation.yml
---
.github/workflows/translation.yml | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index e6f6ae1ce..e93ceaf14 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -28,9 +28,11 @@ jobs:
git config --local user.name "github-actions[bot]"
git_hash=$(git rev-parse --short "$GITHUB_SHA")
git commit -m "Update messages.pot ${git_hash}" locales/messages.pot
- if: ${{job.status == 'failure'}}
- run: echo "No Changes!"
+
+ - name: Check on failures
+ if: ${{job.status == 'failure'}}
+ run: echo "No Changes!"
- name: Push changes
run: |
- git push --atomic main
\ No newline at end of file
+ git push --atomic origin test1
\ No newline at end of file
From 552714ecc1f8a675440acba74d630097724189d1 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 15:06:55 +0800
Subject: [PATCH 0011/1072] Update translation.yml
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index e93ceaf14..f54b41333 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -35,4 +35,4 @@ jobs:
- name: Push changes
run: |
- git push --atomic origin test1
\ No newline at end of file
+ git push --atomic origin main
\ No newline at end of file
From 962f81e1176ccdcb57b4eaa8760d460fada64849 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 13 Jul 2021 19:12:33 +0800
Subject: [PATCH 0012/1072] Add a new line at the end of file
---
.github/workflows/translation.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index f54b41333..b4c1fd35b 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -35,4 +35,5 @@ jobs:
- name: Push changes
run: |
- git push --atomic origin main
\ No newline at end of file
+ git push --atomic origin main
+
From 7e067195728a1a95d5802182f7ebec580ae32104 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Wed, 14 Jul 2021 22:56:30 +0800
Subject: [PATCH 0013/1072] Add Translation Guide
---
source/contribute.rst | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/source/contribute.rst b/source/contribute.rst
index 3709d341f..1d356e06b 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -11,6 +11,7 @@ including:
* Reviewing new contributions
* Revising existing content
* Writing new content
+* Translate the guide
Most of the work on the |PyPUG| takes place on the
`project's GitHub repository`__. To get started, check out the list of
@@ -67,6 +68,32 @@ an agreed-upon interface for interoperability between packaging tools.
:doc:`example specification-style document `.
+Translations
+============
+
+We use `Weblate`__ to manage translations of this project.
+Please visit the `packaging.python.org`__ project on Weblate to contribute.
+
+If you are experiencing issues while you are working on translations,
+please open an issue on `Github `.
+please open an issue on `Github`__.
+
+.. __: https://weblate.org/
+.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
+.. __: https://github.com/pypa/packaging.python.org/issues
+
+Adding a language
+-----------------
+
+If your language is not listed on `Weblate`__, click the button
+"Start new translation" at the bottom of the languages list and add
+the language you want to translate.
+
+.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
+
+.. Note:: Any translations of this project should follow `RST syntax`__.
+
+.. __: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
Building the guide locally
From 57e8e767c722e9964c6f4d280d9bca6fda034861 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Wed, 14 Jul 2021 23:04:06 +0800
Subject: [PATCH 0014/1072] Update Translation Guideline
---
source/contribute.rst | 1 -
1 file changed, 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 1d356e06b..a2ed330bb 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -75,7 +75,6 @@ We use `Weblate`__ to manage translations of this project.
Please visit the `packaging.python.org`__ project on Weblate to contribute.
If you are experiencing issues while you are working on translations,
-please open an issue on `Github `.
please open an issue on `Github`__.
.. __: https://weblate.org/
From d281ad460107810c8d97625a0c1d4037fbb6c777 Mon Sep 17 00:00:00 2001
From: Rafael Fontenelle
Date: Fri, 16 Jul 2021 16:24:09 -0300
Subject: [PATCH 0015/1072] fix: easy_install URL now includes /deprecated/
---
source/discussions/pip-vs-easy-install.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/discussions/pip-vs-easy-install.rst b/source/discussions/pip-vs-easy-install.rst
index 5f2d18737..4fa590cf3 100644
--- a/source/discussions/pip-vs-easy-install.rst
+++ b/source/discussions/pip-vs-easy-install.rst
@@ -65,7 +65,7 @@ Here's a breakdown of the important differences between pip and the deprecated e
.. _deprecated: https://setuptools.readthedocs.io/en/latest/history.html#v42-0-0
-.. [1] https://setuptools.readthedocs.io/en/latest/easy_install.html#natural-script-launcher
+.. [1] https://setuptools.readthedocs.io/en/latest/deprecated/easy_install.html#natural-script-launcher
.. _pylauncher support: https://bitbucket.org/vinay.sajip/pylauncher
From 0bde60b2006888f4d54ef89c8970d0dfa816a2ca Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Sat, 17 Jul 2021 18:09:27 +0800
Subject: [PATCH 0016/1072] Normalize command lines in code blocks (#949)
* Remove prompts
* Use `code-block:: console` instead of `::`
* Use `code-block:: console` instead of `::` & remove prompts
* Use code-block:: bash
Co-authored-by: Brian Rutledge
---
.../analyzing-pypi-package-downloads.rst | 4 ++--
source/guides/index-mirrors-and-caches.rst | 4 ++--
...talling-stand-alone-command-line-tools.rst | 24 +++++++++----------
source/guides/using-testpypi.rst | 4 ++--
4 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/source/guides/analyzing-pypi-package-downloads.rst b/source/guides/analyzing-pypi-package-downloads.rst
index 3847f14d9..abb3cc48b 100644
--- a/source/guides/analyzing-pypi-package-downloads.rst
+++ b/source/guides/analyzing-pypi-package-downloads.rst
@@ -272,13 +272,13 @@ number of download for a package with the command ``pypinfo package_name``.
Install `pypinfo`_ using pip.
-::
+.. code-block:: bash
python -m pip install pypinfo
Usage:
-::
+.. code-block:: console
$ pypinfo requests
Served from cache: False
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index b4e8ac293..e5cd45e8f 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -37,8 +37,8 @@ cached copies of :term:`packages `:
the requirements using `python -m pip wheel
`_::
- $ python -m pip wheel --wheel-dir=/tmp/wheelhouse SomeProject
- $ python -m pip install --no-index --find-links=/tmp/wheelhouse SomeProject
+ python -m pip wheel --wheel-dir=/tmp/wheelhouse SomeProject
+ python -m pip install --no-index --find-links=/tmp/wheelhouse SomeProject
Caching with devpi
diff --git a/source/guides/installing-stand-alone-command-line-tools.rst b/source/guides/installing-stand-alone-command-line-tools.rst
index e2e6b7d36..3108d0671 100644
--- a/source/guides/installing-stand-alone-command-line-tools.rst
+++ b/source/guides/installing-stand-alone-command-line-tools.rst
@@ -42,14 +42,14 @@ packages, and allows you to safely run the program from anywhere.
Now you can install packages with ``pipx install`` and access the package's entry point(s) from anywhere.
-::
+.. code-block:: console
$ pipx install PACKAGE
$ ENTRYPOINT_OF_PACKAGE [ARGS]
For example
-::
+.. code-block:: console
$ pipx install cowsay
installed package cowsay 2.0, Python 3.6.2+
@@ -69,7 +69,7 @@ For example
To see a list of packages installed with pipx and which CLI applications are available, use ``pipx list``.
-::
+.. code-block:: console
$ pipx list
venvs are in /Users/user/.local/pipx/venvs
@@ -89,10 +89,10 @@ To see a list of packages installed with pipx and which CLI applications are ava
To upgrade or uninstall the package
-::
+.. code-block:: bash
- $ pipx upgrade PACKAGE
- $ pipx uninstall PACKAGE
+ pipx upgrade PACKAGE
+ pipx uninstall PACKAGE
``pipx`` can be upgraded or uninstalled with pip
@@ -113,21 +113,21 @@ To upgrade or uninstall the package
``pipx`` also allows you to install and run the latest version of a cli tool
in a temporary, ephemeral environment.
-::
+.. code-block:: bash
- $ pipx run PACKAGE [ARGS]
+ pipx run PACKAGE [ARGS]
For example
-::
+.. code-block:: bash
- $ pipx run cowsay moooo
+ pipx run cowsay moooo
To see the full list of commands ``pipx`` offers, run
-::
+.. code-block:: bash
- $ pipx --help
+ pipx --help
You can learn more about ``pipx`` at its homepage,
https://github.com/pypa/pipx.
diff --git a/source/guides/using-testpypi.rst b/source/guides/using-testpypi.rst
index e8676fc25..f4f05d719 100644
--- a/source/guides/using-testpypi.rst
+++ b/source/guides/using-testpypi.rst
@@ -26,9 +26,9 @@ Using TestPyPI with Twine
You can upload your distributions to TestPyPI using :ref:`twine` by specifying
the ``--repository`` flag
-.. code::
+.. code-block:: bash
- $ twine upload --repository testpypi dist/*
+ twine upload --repository testpypi dist/*
You can see if your package has successfully uploaded by navigating to the URL
``https://test.pypi.org/project/`` where ``sampleproject`` is
From 63e3145fb650057087962164f679dcc7c300f7dc Mon Sep 17 00:00:00 2001
From: Brian Rutledge
Date: Sat, 17 Jul 2021 06:06:37 -0400
Subject: [PATCH 0017/1072] Replace :: with shell code-block::
---
source/contribute.rst | 16 +++++++++++-----
.../distributing-packages-using-setuptools.rst | 14 +++++++++-----
source/guides/dropping-older-python-versions.rst | 4 +++-
source/guides/index-mirrors-and-caches.rst | 8 +++++---
source/guides/making-a-pypi-friendly-readme.rst | 6 ++++--
source/guides/using-manifest-in.rst | 4 +++-
source/tutorials/installing-packages.rst | 10 +++++-----
7 files changed, 40 insertions(+), 22 deletions(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 3709d341f..5811a1d1c 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -77,7 +77,9 @@ in order to test your changes. In order to build this guide locally, you'll
need:
1. `Nox `_. You can install or upgrade
- nox using ``pip``::
+ nox using ``pip``:
+
+ .. code-block:: bash
python -m pip install --user nox
@@ -88,9 +90,11 @@ need:
.. _Hitchhiker's Guide to Python installation instructions:
http://docs.python-guide.org/en/latest/starting/installation/
-To build the guide, run the following bash command in the source folder::
+To build the guide, run the following bash command in the source folder:
+
+.. code-block:: bash
- nox -s build
+ nox -s build
After the process has completed you can find the HTML output in the
``./build/html`` directory. You can open the ``index.html`` file to view the
@@ -98,9 +102,11 @@ guide in web browser, but it's recommended to serve the guide using an HTTP
server.
You can build the guide and serve it via an HTTP server using the following
-command::
+command:
+
+.. code-block:: bash
- nox -s preview
+ nox -s preview
The guide will be browsable via http://localhost:8000.
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index c6e7ebf41..7121bd6e3 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -666,9 +666,9 @@ both installed and editable in project form.
Assuming you're in the root of your project directory, then run:
-::
+.. code-block:: bash
- python -m pip install -e .
+ python -m pip install -e .
Although somewhat cryptic, ``-e`` is short for ``--editable``, and ``.`` refers
@@ -698,7 +698,9 @@ Otherwise, the dependency will be fulfilled from PyPI, due to the installation o
` section in the pip docs. For more on VCS installs,
see the :ref:`VCS Support ` section of the pip docs.
-Lastly, if you don't want to install any dependencies at all, you can run::
+Lastly, if you don't want to install any dependencies at all, you can run:
+
+.. code-block:: bash
python -m pip install -e . --no-deps
@@ -880,9 +882,11 @@ distribution file(s) to upload.
directive). **Before** trying to upload your distribution, you should check
to see if your brief / long descriptions provided in :file:`setup.py` are
valid. You can do this by running :std:doc:`twine check ` on
- your package files::
+ your package files:
+
+ .. code-block:: bash
- twine check dist/*
+ twine check dist/*
Create an account
-----------------
diff --git a/source/guides/dropping-older-python-versions.rst b/source/guides/dropping-older-python-versions.rst
index fea3068c0..080f7282b 100644
--- a/source/guides/dropping-older-python-versions.rst
+++ b/source/guides/dropping-older-python-versions.rst
@@ -105,7 +105,9 @@ Within a Python source package (the zip or the tar-gz file you download) is a te
This file is generated by Distutils or :ref:`setuptools` when it generates the source package.
The file contains a set of keys and values, the list of keys is part of the PyPa standard metadata format.
-You can see the contents of the generated file like this::
+You can see the contents of the generated file like this:
+
+.. code-block:: bash
tar xfO dist/my-package-1.0.0.tar.gz my-package-1.0.0/PKG-INFO
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index e5cd45e8f..284665eb0 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -35,10 +35,12 @@ cached copies of :term:`packages `:
those downloaded files instead of going to PyPI.
2. A variation on the above which pre-builds the installation files for
the requirements using `python -m pip wheel
- `_::
+ `_:
- python -m pip wheel --wheel-dir=/tmp/wheelhouse SomeProject
- python -m pip install --no-index --find-links=/tmp/wheelhouse SomeProject
+ .. code-block:: bash
+
+ python -m pip wheel --wheel-dir=/tmp/wheelhouse SomeProject
+ python -m pip install --no-index --find-links=/tmp/wheelhouse SomeProject
Caching with devpi
diff --git a/source/guides/making-a-pypi-friendly-readme.rst b/source/guides/making-a-pypi-friendly-readme.rst
index 32e8f2f09..eea221b4a 100644
--- a/source/guides/making-a-pypi-friendly-readme.rst
+++ b/source/guides/making-a-pypi-friendly-readme.rst
@@ -122,9 +122,11 @@ You can check your README for markup errors before uploading as follows:
2. Build the sdist and wheel for your project as described under
:ref:`Packaging Your Project`.
-3. Run ``twine check`` on the sdist and wheel::
+3. Run ``twine check`` on the sdist and wheel:
- twine check dist/*
+ .. code-block:: bash
+
+ twine check dist/*
This command will report any problems rendering your README. If your markup
renders fine, the command will output ``Checking distribution FILENAME:
diff --git a/source/guides/using-manifest-in.rst b/source/guides/using-manifest-in.rst
index 51e779315..c8bfa8802 100644
--- a/source/guides/using-manifest-in.rst
+++ b/source/guides/using-manifest-in.rst
@@ -93,7 +93,9 @@ setuptools will automatically convert the slashes to the local platform's
appropriate directory separator.
Commands are processed in the order they appear in the :file:`MANIFEST.in`
-file. For example, given the commands::
+file. For example, given the commands:
+
+.. code-block:: bash
graft tests
global-exclude *.py[cod]
diff --git a/source/tutorials/installing-packages.rst b/source/tutorials/installing-packages.rst
index 296a17973..f2d522612 100644
--- a/source/tutorials/installing-packages.rst
+++ b/source/tutorials/installing-packages.rst
@@ -281,9 +281,9 @@ In both of the above cases, Windows users should _not_ use the
:command:`source` command, but should rather run the :command:`activate`
script directly from the command shell like so:
-::
+.. code-block:: bat
- \Scripts\activate
+ \Scripts\activate
@@ -618,10 +618,10 @@ create a helper application that presents the data in a :pep:`503` compliant
index format, and use the ``--extra-index-url`` flag to direct pip to use
that index.
-::
+.. code-block:: bash
- ./s3helper --port=7777
- python -m pip install --extra-index-url http://localhost:7777 SomeProject
+ ./s3helper --port=7777
+ python -m pip install --extra-index-url http://localhost:7777 SomeProject
Installing Prereleases
From 948840f7017753d8e5af2da2486f1144f442c083 Mon Sep 17 00:00:00 2001
From: Brian Rutledge
Date: Sat, 17 Jul 2021 06:44:03 -0400
Subject: [PATCH 0018/1072] Copy-edit pipx guide
---
...talling-stand-alone-command-line-tools.rst | 64 +++++++++----------
1 file changed, 30 insertions(+), 34 deletions(-)
diff --git a/source/guides/installing-stand-alone-command-line-tools.rst b/source/guides/installing-stand-alone-command-line-tools.rst
index 3108d0671..958699d42 100644
--- a/source/guides/installing-stand-alone-command-line-tools.rst
+++ b/source/guides/installing-stand-alone-command-line-tools.rst
@@ -1,53 +1,55 @@
Installing stand alone command line tools
=========================================
-Many packages have command line entry points. Examples of this type of application are
+Many packages provide command line applications. Examples of such packages are
`mypy `_,
`flake8 `_,
-:ref:`pipenv`,and
-`black `_.
+`black `_, and
+:ref:`pipenv`.
-Usually you want to be able to access these from anywhere,
-but installing packages and their dependencies to the same global environment
-can cause version conflicts and break dependencies the operating system has
-on Python packages.
+Usually you want to be able to access these applications from anywhere on your
+system, but installing packages and their dependencies to the same global
+environment can cause version conflicts and break dependencies the operating
+system has on Python packages.
-:ref:`pipx` solves this by creating a virtual
-environment for each package, while also ensuring that package's applications
-are accessible through a directory that is on your ``$PATH``. This allows each
-package to be upgraded or uninstalled without causing conflicts with other
-packages, and allows you to safely run the program from anywhere.
+:ref:`pipx` solves this by creating a virtual environment for each package,
+while also ensuring that its applications are accessible through a directory
+that is on your ``$PATH``. This allows each package to be upgraded or
+uninstalled without causing conflicts with other packages, and allows you to
+safely run the applications from anywhere.
.. note:: pipx only works with Python 3.6+.
-``pipx`` is installed with ``pip``:
+pipx is installed with pip:
.. tab:: Unix/macOS
.. code-block:: bash
python3 -m pip install --user pipx
-
- python3 -m pipx ensurepath # ensures the path of the CLI application directory is on your $PATH
+ python3 -m pipx ensurepath
.. tab:: Windows
.. code-block:: bat
py -m pip install --user pipx
-
py -m pipx ensurepath
-.. Note:: You may need to restart your terminal for the path updates to take effect.
+.. note::
+
+ ``ensurepath`` ensures that the application directory is on your ``$PATH``.
+ You may need to restart your terminal for this update to take effect.
-Now you can install packages with ``pipx install`` and access the package's entry point(s) from anywhere.
+Now you can install packages with ``pipx install`` and run the package's
+applications(s) from anywhere.
.. code-block:: console
$ pipx install PACKAGE
- $ ENTRYPOINT_OF_PACKAGE [ARGS]
+ $ PACKAGE_APPLICATION [ARGS]
-For example
+For example:
.. code-block:: console
@@ -67,7 +69,8 @@ For example
(__)\ )\/ ||----w |
|| ||
-To see a list of packages installed with pipx and which CLI applications are available, use ``pipx list``.
+To see a list of packages installed with pipx and which applications are
+available, use ``pipx list``:
.. code-block:: console
@@ -87,14 +90,14 @@ To see a list of packages installed with pipx and which CLI applications are ava
- nox
- tox-to-nox
-To upgrade or uninstall the package
+To upgrade or uninstall a package:
.. code-block:: bash
pipx upgrade PACKAGE
pipx uninstall PACKAGE
-``pipx`` can be upgraded or uninstalled with pip
+pipx can be upgraded or uninstalled with pip:
.. tab:: Unix/macOS
@@ -109,25 +112,18 @@ To upgrade or uninstall the package
py -m pip install -U pipx
py -m pip uninstall pipx
-
-``pipx`` also allows you to install and run the latest version of a cli tool
-in a temporary, ephemeral environment.
-
-.. code-block:: bash
-
- pipx run PACKAGE [ARGS]
-For example
+pipx also allows you to install and run the latest version of an application
+in a temporary, ephemeral environment. For example:
.. code-block:: bash
pipx run cowsay moooo
-To see the full list of commands ``pipx`` offers, run
+To see the full list of commands pipx offers, run:
.. code-block:: bash
pipx --help
-You can learn more about ``pipx`` at its homepage,
-https://github.com/pypa/pipx.
+You can learn more about pipx at https://pypa.github.io/pipx/.
From 0810b46f4c53d83f2144b606fcdddf23b54a5645 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Sat, 17 Jul 2021 19:55:32 +0800
Subject: [PATCH 0019/1072] Update Translation Guide
---
source/contribute.rst | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index a2ed330bb..6adde7265 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -77,9 +77,12 @@ Please visit the `packaging.python.org`__ project on Weblate to contribute.
If you are experiencing issues while you are working on translations,
please open an issue on `Github`__.
+.. Note:: Any translations of this project should follow `reStructuredText syntax`__.
+
.. __: https://weblate.org/
.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
.. __: https://github.com/pypa/packaging.python.org/issues
+.. __: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
Adding a language
-----------------
@@ -90,10 +93,24 @@ the language you want to translate.
.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
-.. Note:: Any translations of this project should follow `RST syntax`__.
+Following reStructuredText syntax
+--------------------
-.. __: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
+If you are not familiar with reStructuredText (RST) syntax, please read `this guide`__
+before translating on Weblate.
+
+Example:
+
+Wrong: Translate the following text directly::
+
+ `some ref`_ -> `TRANSLATED TEXT HERE`_
+
+Right: Translate the following text with your own language and add reference to the
+original language::
+
+ `some ref`_ -> `TRANSLATED TEXT HERE `_
+.. __: https://docutils.sourceforge.io/docs/user/rst/quickref.html
Building the guide locally
==========================
From 9e8c75120a5263b68c6e6de0864378f4b23475c1 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Sat, 17 Jul 2021 20:29:31 +0800
Subject: [PATCH 0020/1072] Update Translation Guide
---
source/contribute.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 6adde7265..3ab8df835 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -94,7 +94,7 @@ the language you want to translate.
.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
Following reStructuredText syntax
---------------------
+---------------------------------
If you are not familiar with reStructuredText (RST) syntax, please read `this guide`__
before translating on Weblate.
From f43561baeaa55ce65729f0f00db9c3839a76da1d Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Sun, 18 Jul 2021 00:44:55 +0800
Subject: [PATCH 0021/1072] Update `installing-using-linux-tools`
---
.../guides/installing-using-linux-tools.rst | 102 +++++++++++-------
1 file changed, 66 insertions(+), 36 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index 2082cc72f..637baac97 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -4,9 +4,8 @@
Installing pip/setuptools/wheel with Linux Package Managers
===========================================================
-:Page Status: Incomplete
-:Last Reviewed: 2015-09-17
-
+.. contents:: Contents
+ :local:
This section covers how to install :ref:`pip`, :ref:`setuptools`, and
:ref:`wheel` using Linux package managers.
@@ -31,32 +30,31 @@ versions. When this is known, we will make note of it below.
Fedora
~~~~~~
-* Fedora 21:
+* Fedora 33 & 34:
- * Python 2::
+ * Python 3:
- sudo yum upgrade python-setuptools
- sudo yum install python-pip python-wheel
+ .. code-block:: bash
- * Python 3: ``sudo yum install python3 python3-wheel``
+ sudo dnf install python3 python3-wheel
-* Fedora 22:
+ * Python 2:
- * Python 2::
+ .. code-block:: bash
sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel
- * Python 3: ``sudo dnf install python3 python3-wheel``
-
To get newer versions of pip, setuptools, and wheel for Python 2, you can enable
the `PyPA Copr Repo `_ using
the `Copr Repo instructions
-`__, and then run::
+`__, and then run:
- sudo yum|dnf upgrade python-setuptools
- sudo yum|dnf install python-pip python-wheel
+.. code-block:: bash
+
+ sudo dnf upgrade python-setuptools
+ sudo dnf install python-pip python-wheel
CentOS/RHEL
@@ -70,26 +68,42 @@ To install pip and wheel for the system Python, there are two options:
1. Enable the `EPEL repository `_ using
`these instructions
`__. On
- EPEL 6 and EPEL7, you can install pip like so::
+ EPEL 6 and EPEL7, you can install pip like so:
+
+ * Python3:
+
+ .. code-block:: bash
+
+ sudo yum install python3-pip
+
+ * Python2:
+
+ .. code-block:: bash
- sudo yum install python-pip
+ sudo yum install python-pip
- On EPEL 7 (but not EPEL 6), you can install wheel like so::
+ On EPEL 7 (but not EPEL 6), you can install wheel like so:
- sudo yum install python-wheel
+ .. code-block:: bash
- Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
- setuptools, since it's in the core repository.
+ sudo yum install python-wheel
+
+ Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
+ setuptools, since it's in the core repository.
2. Enable the `PyPA Copr Repo
`_ using `these instructions
`__ [1]_. You can install
- pip and wheel like so::
+ pip and wheel like so:
+
+ .. code-block:: bash
sudo yum install python-pip python-wheel
- To additionally upgrade setuptools, run::
+ To additionally upgrade setuptools, run:
+
+ .. code-block:: bash
sudo yum upgrade python-setuptools
@@ -113,7 +127,9 @@ To install pip, wheel, and setuptools, in a parallel, non-system environment
Pythons, along with pip, setuptools, and wheel, which are kept fairly up to
date.
- For example, for Python 3.4 on CentOS7/RHEL7::
+ For example, for Python 3.4 on CentOS7/RHEL7:
+
+ .. code-block:: bash
sudo yum install python34u python34u-wheel
@@ -121,29 +137,39 @@ To install pip, wheel, and setuptools, in a parallel, non-system environment
openSUSE
~~~~~~~~
-* Python 2::
-
- sudo zypper install python-pip python-setuptools python-wheel
-
+* Python 3:
-* Python 3::
+ .. code-block:: bash
sudo zypper install python3-pip python3-setuptools python3-wheel
+* Python 2:
+
+ .. code-block:: bash
+
+ sudo zypper install python-pip python-setuptools python-wheel
Debian/Ubuntu
~~~~~~~~~~~~~
+Firstly, update and refresh repository lists by running this command:
-* Python 2::
+.. code-block:: bash
- sudo apt install python-pip
+ sudo apt update
+* Python 3:
-* Python 3::
+ .. code-block:: bash
sudo apt install python3-venv python3-pip
+* Python 2:
+
+ .. code-block:: bash
+
+ sudo apt install python-pip
+
.. warning::
@@ -155,14 +181,18 @@ Debian/Ubuntu
Arch Linux
~~~~~~~~~~
-* Python 2::
-
- sudo pacman -S python2-pip
+* Python 3:
-* Python 3::
+ .. code-block:: bash
sudo pacman -S python-pip
+* Python 2:
+
+ .. code-block:: bash
+
+ sudo pacman -S python2-pip
+
----
.. [1] Currently, there is no "copr" yum plugin available for CentOS/RHEL, so
From c94bfe3727830bc6db045235dc25c053c97706e7 Mon Sep 17 00:00:00 2001
From: Brett Cannon
Date: Wed, 21 Jul 2021 08:47:43 -0700
Subject: [PATCH 0022/1072] Define what a source tree is
---
source/specifications/source-distribution-format.rst | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/source/specifications/source-distribution-format.rst b/source/specifications/source-distribution-format.rst
index 9a5d5dfdd..52bb856fc 100644
--- a/source/specifications/source-distribution-format.rst
+++ b/source/specifications/source-distribution-format.rst
@@ -20,6 +20,16 @@ specification.
Source distributions are also known as *sdists* for short.
+Source trees
+============
+
+A *source tree* is a collection of files and directories -- like a version
+control system checkout -- which contains a :file:`pyproject.toml` file that
+can be use to build a source distribution from the contained files and
+directories. :pep:`517` and :pep:`518` specify what is required to meet the
+definition of what :file:`pyproject.toml` must contain for something to be
+deemed a source tree.
+
Source distribution file name
=============================
From bf3dbfcbfaafd690a59de4d1fd77f542882989af Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 12:23:06 +0800
Subject: [PATCH 0023/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 3ab8df835..9b4a76c17 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -77,7 +77,9 @@ Please visit the `packaging.python.org`__ project on Weblate to contribute.
If you are experiencing issues while you are working on translations,
please open an issue on `Github`__.
-.. Note:: Any translations of this project should follow `reStructuredText syntax`__.
+.. note::
+
+ Any translations of this project should follow `reStructuredText syntax`__.
.. __: https://weblate.org/
.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
From 69403ff96800bdc6aca236c13b919eb4db2b116e Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Sat, 24 Jul 2021 13:45:59 +0800
Subject: [PATCH 0024/1072] Add translation guideline
---
source/contribute.rst | 42 +++++++++++++++++++++++-------------------
1 file changed, 23 insertions(+), 19 deletions(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 9b4a76c17..afb337432 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -71,48 +71,52 @@ an agreed-upon interface for interoperability between packaging tools.
Translations
============
-We use `Weblate`__ to manage translations of this project.
-Please visit the `packaging.python.org`__ project on Weblate to contribute.
+We use `Weblate`_ to manage translations of this project.
+Please visit the `packaging.python.org`_ project on Weblate to contribute.
If you are experiencing issues while you are working on translations,
-please open an issue on `Github`__.
+please open an issue on `Github`_.
.. note::
- Any translations of this project should follow `reStructuredText syntax`__.
+ Any translations of this project should follow `reStructuredText syntax`_.
-.. __: https://weblate.org/
-.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
-.. __: https://github.com/pypa/packaging.python.org/issues
-.. __: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
+.. _Weblate: https://weblate.org/
+.. _packaging.python.org: https://hosted.weblate.org/projects/pypa/packaging-python-org/
+.. _Github: https://github.com/pypa/packaging.python.org/issues
+.. _reStructuredText syntax: https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html
Adding a language
-----------------
-If your language is not listed on `Weblate`__, click the button
+If your language is not listed on `packaging.python.org`_, click the button
"Start new translation" at the bottom of the languages list and add
the language you want to translate.
-.. __: https://hosted.weblate.org/projects/pypa/packaging-python-org/
-
Following reStructuredText syntax
---------------------------------
-If you are not familiar with reStructuredText (RST) syntax, please read `this guide`__
+If you are not familiar with reStructuredText (RST) syntax, please read `this guide`_
before translating on Weblate.
-Example:
+**Do not translate the text in reference directly**
+
+ When translating the text in reference, please do not translate them directly.
+
+ | Wrong: Translate the following text directly:
+
+ .. code-block::
-Wrong: Translate the following text directly::
+ `some ref`_ -> `TRANSLATED TEXT HERE`_
- `some ref`_ -> `TRANSLATED TEXT HERE`_
+ | Right: Translate the following text with your own language and add reference to the
+ original language:
-Right: Translate the following text with your own language and add reference to the
-original language::
+ .. code-block::
- `some ref`_ -> `TRANSLATED TEXT HERE `_
+ `some ref`_ -> `TRANSLATED TEXT HERE `_
-.. __: https://docutils.sourceforge.io/docs/user/rst/quickref.html
+.. _this guide: https://docutils.sourceforge.io/docs/user/rst/quickref.html
Building the guide locally
==========================
From 91a5274e38c90c79d369fa080dc570d65a34a68b Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 15:17:29 +0800
Subject: [PATCH 0025/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 31761ac40..b456cb0be 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -109,8 +109,7 @@ before translating on Weblate.
`some ref`_ -> `TRANSLATED TEXT HERE`_
- | Right: Translate the following text with your own language and add reference to the
- original language:
+ | Right: Translate the following text with your own language and add the original reference:
.. code-block::
From fa19a9f37f5e08280a2aa4d0c7c1b79234b22977 Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 15:22:46 +0800
Subject: [PATCH 0026/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index b456cb0be..920d83fec 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -90,7 +90,7 @@ Adding a language
-----------------
If your language is not listed on `packaging.python.org`_, click the button
-"Start new translation" at the bottom of the languages list and add
+:guilabel:`Start new translation` at the bottom of the language list and add
the language you want to translate.
Following reStructuredText syntax
From d3bba7c692baec3a35b5cc027da3f7c9027fd0f1 Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 15:28:19 +0800
Subject: [PATCH 0027/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 920d83fec..6abd32ee0 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -77,7 +77,7 @@ Please visit the `packaging.python.org`_ project on Weblate to contribute.
If you are experiencing issues while you are working on translations,
please open an issue on `Github`_.
-.. note::
+.. tip::
Any translations of this project should follow `reStructuredText syntax`_.
From 82dc3e69b7c8c85a083639b3f0f3ecc72da18462 Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 15:28:58 +0800
Subject: [PATCH 0028/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 6abd32ee0..248973529 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -105,7 +105,7 @@ before translating on Weblate.
| Wrong: Translate the following text directly:
- .. code-block::
+ .. code-block:: rst
`some ref`_ -> `TRANSLATED TEXT HERE`_
From f0a55c9a7a10e0be86fc156a86b5945a78123179 Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 24 Jul 2021 15:29:04 +0800
Subject: [PATCH 0029/1072] Update source/contribute.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/contribute.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/contribute.rst b/source/contribute.rst
index 248973529..e51fab8e2 100644
--- a/source/contribute.rst
+++ b/source/contribute.rst
@@ -111,7 +111,7 @@ before translating on Weblate.
| Right: Translate the following text with your own language and add the original reference:
- .. code-block::
+ .. code-block:: rst
`some ref`_ -> `TRANSLATED TEXT HERE `_
From 235e362e7cbecd42eba321681f2a000c3ed710c4 Mon Sep 17 00:00:00 2001
From: Brian Rutledge
Date: Sat, 24 Jul 2021 06:46:09 -0400
Subject: [PATCH 0030/1072] Apply suggestions from code review
Co-authored-by: Sviatoslav Sydorenko
---
.../guides/installing-stand-alone-command-line-tools.rst | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/guides/installing-stand-alone-command-line-tools.rst b/source/guides/installing-stand-alone-command-line-tools.rst
index 958699d42..c4aeb9858 100644
--- a/source/guides/installing-stand-alone-command-line-tools.rst
+++ b/source/guides/installing-stand-alone-command-line-tools.rst
@@ -14,7 +14,7 @@ system has on Python packages.
:ref:`pipx` solves this by creating a virtual environment for each package,
while also ensuring that its applications are accessible through a directory
-that is on your ``$PATH``. This allows each package to be upgraded or
+that is on your :envvar:`PATH`. This allows each package to be upgraded or
uninstalled without causing conflicts with other packages, and allows you to
safely run the applications from anywhere.
@@ -38,10 +38,10 @@ pipx is installed with pip:
.. note::
- ``ensurepath`` ensures that the application directory is on your ``$PATH``.
+ :command:`ensurepath` ensures that the application directory is on your :envvar:`PATH`.
You may need to restart your terminal for this update to take effect.
-Now you can install packages with ``pipx install`` and run the package's
+Now you can install packages with :command:`pipx install` and run the package's
applications(s) from anywhere.
.. code-block:: console
@@ -70,7 +70,7 @@ For example:
|| ||
To see a list of packages installed with pipx and which applications are
-available, use ``pipx list``:
+available, use :command:`pipx list`:
.. code-block:: console
From 25179048adb5fe8ce5f2dac67dea569ab9d7cd01 Mon Sep 17 00:00:00 2001
From: Brian Rutledge
Date: Sun, 25 Jul 2021 06:01:14 -0400
Subject: [PATCH 0031/1072] Revert less-helpful roles
---
.../guides/installing-stand-alone-command-line-tools.rst | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/guides/installing-stand-alone-command-line-tools.rst b/source/guides/installing-stand-alone-command-line-tools.rst
index c4aeb9858..958699d42 100644
--- a/source/guides/installing-stand-alone-command-line-tools.rst
+++ b/source/guides/installing-stand-alone-command-line-tools.rst
@@ -14,7 +14,7 @@ system has on Python packages.
:ref:`pipx` solves this by creating a virtual environment for each package,
while also ensuring that its applications are accessible through a directory
-that is on your :envvar:`PATH`. This allows each package to be upgraded or
+that is on your ``$PATH``. This allows each package to be upgraded or
uninstalled without causing conflicts with other packages, and allows you to
safely run the applications from anywhere.
@@ -38,10 +38,10 @@ pipx is installed with pip:
.. note::
- :command:`ensurepath` ensures that the application directory is on your :envvar:`PATH`.
+ ``ensurepath`` ensures that the application directory is on your ``$PATH``.
You may need to restart your terminal for this update to take effect.
-Now you can install packages with :command:`pipx install` and run the package's
+Now you can install packages with ``pipx install`` and run the package's
applications(s) from anywhere.
.. code-block:: console
@@ -70,7 +70,7 @@ For example:
|| ||
To see a list of packages installed with pipx and which applications are
-available, use :command:`pipx list`:
+available, use ``pipx list``:
.. code-block:: console
From f0bc57e57bd1becba26bb3bac89aba3ae2427308 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 26 Jul 2021 14:28:03 +0800
Subject: [PATCH 0032/1072] Remove Python 2 instructions
---
.../guides/installing-using-linux-tools.rst | 48 +------------------
1 file changed, 1 insertion(+), 47 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index 637baac97..bd1eb4e15 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -32,20 +32,10 @@ Fedora
* Fedora 33 & 34:
- * Python 3:
-
.. code-block:: bash
sudo dnf install python3 python3-wheel
- * Python 2:
-
- .. code-block:: bash
-
- sudo dnf upgrade python-setuptools
- sudo dnf install python-pip python-wheel
-
-
To get newer versions of pip, setuptools, and wheel for Python 2, you can enable
the `PyPA Copr Repo `_ using
the `Copr Repo instructions
@@ -56,7 +46,6 @@ the `Copr Repo instructions
sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel
-
CentOS/RHEL
~~~~~~~~~~~
@@ -70,17 +59,10 @@ To install pip and wheel for the system Python, there are two options:
`__. On
EPEL 6 and EPEL7, you can install pip like so:
- * Python3:
-
.. code-block:: bash
sudo yum install python3-pip
- * Python2:
-
- .. code-block:: bash
-
- sudo yum install python-pip
On EPEL 7 (but not EPEL 6), you can install wheel like so:
@@ -137,18 +119,10 @@ To install pip, wheel, and setuptools, in a parallel, non-system environment
openSUSE
~~~~~~~~
-* Python 3:
-
.. code-block:: bash
sudo zypper install python3-pip python3-setuptools python3-wheel
-* Python 2:
-
- .. code-block:: bash
-
- sudo zypper install python-pip python-setuptools python-wheel
-
Debian/Ubuntu
~~~~~~~~~~~~~
@@ -157,19 +131,7 @@ Firstly, update and refresh repository lists by running this command:
.. code-block:: bash
sudo apt update
-
-* Python 3:
-
- .. code-block:: bash
-
- sudo apt install python3-venv python3-pip
-
-* Python 2:
-
- .. code-block:: bash
-
- sudo apt install python-pip
-
+ sudo apt install python3-venv python3-pip
.. warning::
@@ -181,18 +143,10 @@ Firstly, update and refresh repository lists by running this command:
Arch Linux
~~~~~~~~~~
-* Python 3:
-
.. code-block:: bash
sudo pacman -S python-pip
-* Python 2:
-
- .. code-block:: bash
-
- sudo pacman -S python2-pip
-
----
.. [1] Currently, there is no "copr" yum plugin available for CentOS/RHEL, so
From b89e635a96978401f19cf8ec277347906a554d1e Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 26 Jul 2021 14:51:07 +0800
Subject: [PATCH 0033/1072] Update some commands
---
.../guides/installing-using-linux-tools.rst | 23 ++++++-------------
1 file changed, 7 insertions(+), 16 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index bd1eb4e15..cc2cfd8be 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -4,6 +4,9 @@
Installing pip/setuptools/wheel with Linux Package Managers
===========================================================
+:Page Status: Incomplete
+:Last Reviewed: 2021-07-26
+
.. contents:: Contents
:local:
@@ -30,21 +33,9 @@ versions. When this is known, we will make note of it below.
Fedora
~~~~~~
-* Fedora 33 & 34:
-
- .. code-block:: bash
-
- sudo dnf install python3 python3-wheel
-
-To get newer versions of pip, setuptools, and wheel for Python 2, you can enable
-the `PyPA Copr Repo `_ using
-the `Copr Repo instructions
-`__, and then run:
-
.. code-block:: bash
- sudo dnf upgrade python-setuptools
- sudo dnf install python-pip python-wheel
+ sudo dnf install python3 python3-wheel
CentOS/RHEL
~~~~~~~~~~~
@@ -68,7 +59,7 @@ To install pip and wheel for the system Python, there are two options:
.. code-block:: bash
- sudo yum install python-wheel
+ sudo yum install python3-wheel
Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
setuptools, since it's in the core repository.
@@ -81,13 +72,13 @@ To install pip and wheel for the system Python, there are two options:
.. code-block:: bash
- sudo yum install python-pip python-wheel
+ sudo yum install python3-pip python3-wheel
To additionally upgrade setuptools, run:
.. code-block:: bash
- sudo yum upgrade python-setuptools
+ sudo yum upgrade python3-setuptools
To install pip, wheel, and setuptools, in a parallel, non-system environment
From 14fc8538349773852fe61c99fae6be3abb70bde1 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 26 Jul 2021 14:59:51 +0800
Subject: [PATCH 0034/1072] Link the official Fedora docs
---
source/guides/installing-using-linux-tools.rst | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index cc2cfd8be..28d3f6aa2 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -37,6 +37,13 @@ Fedora
sudo dnf install python3 python3-wheel
+To learn more about Python in Fedora, please visit `official Fedora docs`_,
+`Python Classroom`_ or `Fedora Loves Python`_.
+
+.. _official Fedora docs: https://developer.fedoraproject.org/tech/languages/python/python-installation.html
+.. _Python Classroom: https://labs.fedoraproject.org/en/python-classroom/
+.. _Fedora Loves Python: https://fedoralovespython.org
+
CentOS/RHEL
~~~~~~~~~~~
From 4198f14348e01e55ba9e1ecde30e19fb62d30d6c Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Tue, 27 Jul 2021 11:46:00 +0800
Subject: [PATCH 0035/1072] Update
source/guides/installing-using-linux-tools.rst
Co-authored-by: Sviatoslav Sydorenko
---
source/guides/installing-using-linux-tools.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index 28d3f6aa2..4f2ef9113 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -37,7 +37,7 @@ Fedora
sudo dnf install python3 python3-wheel
-To learn more about Python in Fedora, please visit `official Fedora docs`_,
+To learn more about Python in Fedora, please visit the `official Fedora docs`_,
`Python Classroom`_ or `Fedora Loves Python`_.
.. _official Fedora docs: https://developer.fedoraproject.org/tech/languages/python/python-installation.html
From 6150b9d6bc3ae7a605391cb3e27ed61929097b5d Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 27 Jul 2021 12:27:54 +0800
Subject: [PATCH 0036/1072] make the whitespace consistent
---
source/guides/installing-using-linux-tools.rst | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index 4f2ef9113..ef85e0229 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -54,12 +54,12 @@ To install pip and wheel for the system Python, there are two options:
1. Enable the `EPEL repository `_ using
`these instructions
- `__. On
- EPEL 6 and EPEL7, you can install pip like so:
+ `__.
+ On EPEL 6 and EPEL 7, you can install pip like so:
- .. code-block:: bash
+ .. code-block:: bash
- sudo yum install python3-pip
+ sudo yum install python3-pip
On EPEL 7 (but not EPEL 6), you can install wheel like so:
From e4ea4a1a5fbe901c71564f3fc3af6b56d51ee381 Mon Sep 17 00:00:00 2001
From: Henry Schreiner
Date: Tue, 27 Jul 2021 02:57:05 -0700
Subject: [PATCH 0037/1072] Use packaging-problems templates (#956)
* Use packaging-problems templates
* Rename generic to general_issue
Co-authored-by: Brian Rutledge
---
source/support.rst | 2 +-
source/tutorials/packaging-projects.rst | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/source/support.rst b/source/support.rst
index bf0ba7daf..7dc945eef 100644
--- a/source/support.rst
+++ b/source/support.rst
@@ -6,6 +6,6 @@ For support related to a specific project, see the links on the :doc:`Projects
` page.
For something more general, or when you're just not sure, please
-`open an issue `_ on
+`open an issue `_ on
the `packaging-problems `_
repository on GitHub.
diff --git a/source/tutorials/packaging-projects.rst b/source/tutorials/packaging-projects.rst
index bfc094436..15245a16d 100644
--- a/source/tutorials/packaging-projects.rst
+++ b/source/tutorials/packaging-projects.rst
@@ -11,7 +11,7 @@ to build the package, and how to upload it to the Python Package Index.
and its output, then `open an issue`_ on the `packaging-problems`_ repository on
GitHub. We'll do our best to help you!
-.. _open an issue: https://github.com/pypa/packaging-problems/issues/new?title=Trouble+with+packaging+tutorial
+.. _open an issue: https://github.com/pypa/packaging-problems/issues/new?template=packaging_tutorial.yml&title=Trouble+with+the+packaging+tutorial&guide=https://packaging.python.org/tutorials/packaging-projects
.. _packaging-problems: https://github.com/pypa/packaging-problems
From 68d5dcbb2025cb6f9ee6215df234d9925992a824 Mon Sep 17 00:00:00 2001
From: Rafael Fontenelle
Date: Sat, 14 Aug 2021 21:38:33 -0300
Subject: [PATCH 0038/1072] Make args names literal in distributing-packages
---
...distributing-packages-using-setuptools.rst | 81 ++++++++++---------
1 file changed, 41 insertions(+), 40 deletions(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index 7121bd6e3..bd129037d 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -160,8 +160,8 @@ taken from the `setup.py
.. _`setup() name`:
-name
-~~~~
+``name``
+~~~~~~~~
::
@@ -186,8 +186,8 @@ declare a dependency on it using any of the following spellings::
CoOl__-.-__sTuFF
-version
-~~~~~~~
+``version``
+~~~~~~~~~~~
::
@@ -210,8 +210,8 @@ rather not duplicate the value, there are a few ways to manage this. See the
.. _`description`:
-description
-~~~~~~~~~~~
+``description``
+~~~~~~~~~~~~~~~
::
@@ -241,8 +241,8 @@ to no formatting, `reStructuredText (reST)
and the Github-flavored Markdown dialect of `Markdown
`_ respectively.
-url
-~~~
+``url``
+~~~~~~~
::
@@ -252,8 +252,8 @@ url
Give a homepage URL for your project.
-author
-~~~~~~
+``author``
+~~~~~~~~~~
::
@@ -263,8 +263,8 @@ author
Provide details about the author.
-license
-~~~~~~~
+``license``
+~~~~~~~~~~~
::
@@ -276,15 +276,15 @@ so if you want. If you're using a standard, well-known license, then
your main indication can and should be via the ``classifiers``
argument. Classifiers exist for all major open-source licenses.
-The "license" argument is more typically used to indicate differences
+The ``license`` argument is more typically used to indicate differences
from well-known licenses, or to include your own, unique license. As a
general rule, it's a good idea to use a standard, well-known license,
both to avoid confusion and because some organizations avoid software
whose license is unapproved.
-classifiers
-~~~~~~~~~~~
+``classifiers``
+~~~~~~~~~~~~~~~
::
@@ -323,8 +323,8 @@ Python versions a project can be installed on, use the :ref:`python_requires`
argument.
-keywords
-~~~~~~~~
+``keywords``
+~~~~~~~~~~~~
::
@@ -333,8 +333,8 @@ keywords
List keywords that describe your project.
-project_urls
-~~~~~~~~~~~~
+``project_urls``
+~~~~~~~~~~~~~~~~
::
@@ -351,8 +351,8 @@ bug trackers, source repositories, or where to support package development.
The string of the key is the exact text that will be displayed on PyPI.
-packages
-~~~~~~~~
+``packages``
+~~~~~~~~~~~~
::
@@ -366,8 +366,8 @@ packages. Use the ``exclude`` keyword argument to omit packages that are not
intended to be released and installed.
-py_modules
-~~~~~~~~~~
+``py_modules``
+~~~~~~~~~~~~~~
::
@@ -378,8 +378,8 @@ package, set ``py_modules`` to a list of the names of the modules (minus the
``.py`` extension) in order to make :ref:`setuptools` aware of them.
-install_requires
-~~~~~~~~~~~~~~~~
+``install_requires``
+~~~~~~~~~~~~~~~~~~~~
::
@@ -394,8 +394,8 @@ For more on using "install_requires" see :ref:`install_requires vs Requirements
.. _python_requires:
-python_requires
-~~~~~~~~~~~~~~~
+``python_requires``
+~~~~~~~~~~~~~~~~~~~
If your project only runs on certain Python versions, setting the
``python_requires`` argument to the appropriate :pep:`440` version specifier
@@ -427,8 +427,8 @@ And so on.
.. _`Package Data`:
-package_data
-~~~~~~~~~~~~
+``package_data``
+~~~~~~~~~~~~~~~~
::
@@ -453,8 +453,8 @@ For more information, see :std:doc:`Including Data Files
.. _`Data Files`:
-data_files
-~~~~~~~~~~
+``data_files``
+~~~~~~~~~~~~~~
::
@@ -487,8 +487,8 @@ For more information see the distutils section on `Installing Additional Files
then you need to pass the ``--old-and-unmanageable`` option.
-scripts
-~~~~~~~
+``scripts``
+~~~~~~~~~~~
Although ``setup()`` supports a `scripts
`_
@@ -496,8 +496,8 @@ keyword for pointing to pre-made scripts to install, the recommended approach to
achieve cross-platform compatibility is to use :ref:`console_scripts` entry
points (see below).
-entry_points
-~~~~~~~~~~~~
+``entry_points``
+~~~~~~~~~~~~~~~~
::
@@ -517,8 +517,8 @@ The most commonly used entry point is "console_scripts" (see below).
.. _`console_scripts`:
-console_scripts
-***************
+``console_scripts``
+*******************
::
@@ -528,7 +528,7 @@ console_scripts
],
},
-Use "console_script" `entry points
+Use ``console_script`` `entry points
`_
to register your script interfaces. You can then let the toolchain handle the
work of turning these interfaces into actual scripts [2]_. The scripts will be
@@ -674,8 +674,9 @@ Assuming you're in the root of your project directory, then run:
Although somewhat cryptic, ``-e`` is short for ``--editable``, and ``.`` refers
to the current working directory, so together, it means to install the current
directory (i.e. your project) in editable mode. This will also install any
-dependencies declared with "install_requires" and any scripts declared with
-"console_scripts". Dependencies will be installed in the usual, non-editable mode.
+dependencies declared with ``install_requires`` and any scripts declared with
+``console_scripts``. Dependencies will be installed in the usual, non-editable
+mode.
It's fairly common to also want to install some of your dependencies in editable
mode as well. For example, supposing your project requires "foo" and "bar", but
From 4d05c0c9a37c71633538b941fb353b25c5e5e8b8 Mon Sep 17 00:00:00 2001
From: Rafael Fontenelle
Date: Sat, 14 Aug 2021 21:41:13 -0300
Subject: [PATCH 0039/1072] Minor adjustment in paragraph
---
source/guides/distributing-packages-using-setuptools.rst | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index bd129037d..771469770 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -466,14 +466,14 @@ cases you may need to place data files *outside* of your :term:`packages
It is mostly useful if you need to install files which are used by other
programs, which may be unaware of Python packages.
-Each ``(directory, files)`` pair in the sequence specifies the installation
-directory and the files to install there. The ``directory`` must be a relative
+Each "(directory, files)" pair in the sequence specifies the installation
+directory and the files to install there. The "directory" must be a relative
path (although this may change in the future, see
-`wheel Issue #92 `_).
+`wheel Issue #92 `_),
and it is interpreted relative to the installation prefix
(Python’s ``sys.prefix`` for a default installation;
``site.USER_BASE`` for a user installation).
-Each file name in ``files`` is interpreted relative to the :file:`setup.py`
+Each file name in "files" is interpreted relative to the :file:`setup.py`
script at the top of the project source distribution.
For more information see the distutils section on `Installing Additional Files
From bdeebc99262e965e0ff9d7371b393dc8b7bc2db1 Mon Sep 17 00:00:00 2001
From: Rafael Fontenelle
Date: Sun, 15 Aug 2021 07:28:09 -0300
Subject: [PATCH 0040/1072] Undo inline code syntax removal
---
source/guides/distributing-packages-using-setuptools.rst | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index 771469770..e2272dd4a 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -466,14 +466,14 @@ cases you may need to place data files *outside* of your :term:`packages
It is mostly useful if you need to install files which are used by other
programs, which may be unaware of Python packages.
-Each "(directory, files)" pair in the sequence specifies the installation
-directory and the files to install there. The "directory" must be a relative
+Each ``(directory, files)`` pair in the sequence specifies the installation
+directory and the files to install there. The ``directory`` must be a relative
path (although this may change in the future, see
`wheel Issue #92 `_),
and it is interpreted relative to the installation prefix
(Python’s ``sys.prefix`` for a default installation;
``site.USER_BASE`` for a user installation).
-Each file name in "files" is interpreted relative to the :file:`setup.py`
+Each file name in ``files`` is interpreted relative to the :file:`setup.py`
script at the top of the project source distribution.
For more information see the distutils section on `Installing Additional Files
From 0f0d5e19a35e51ccd4844174083ac07a8c078e9d Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Mon, 16 Aug 2021 17:11:21 +0800
Subject: [PATCH 0041/1072] Fix invalid command
---
source/tutorials/installing-packages.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/source/tutorials/installing-packages.rst b/source/tutorials/installing-packages.rst
index f2d522612..ccda474f0 100644
--- a/source/tutorials/installing-packages.rst
+++ b/source/tutorials/installing-packages.rst
@@ -653,7 +653,7 @@ Install `setuptools extras`_.
python3 -m pip install SomePackage[PDF]
python3 -m pip install SomePackage[PDF]==3.0
- python3 -m pip install -e .[PDF]==3.0 # editable project in current directory
+ python3 -m pip install -e .[PDF] # editable project in current directory
.. tab:: Windows
@@ -661,7 +661,7 @@ Install `setuptools extras`_.
py -m pip install SomePackage[PDF]
py -m pip install SomePackage[PDF]==3.0
- py -m pip install -e .[PDF]==3.0 # editable project in current directory
+ py -m pip install -e .[PDF] # editable project in current directory
----
From 1eabb0c6cfdd2d64cd8c9d393ee49617693444e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20G=C3=BCttler?=
Date: Thu, 19 Aug 2021 21:58:59 +0200
Subject: [PATCH 0042/1072] bento has seen to update since 2014.
No update since 7 years. I think "less is more", and removed it from the list.
---
source/key_projects.rst | 15 ---------------
1 file changed, 15 deletions(-)
diff --git a/source/key_projects.rst b/source/key_projects.rst
index 91db7c462..d6b8b4c9c 100644
--- a/source/key_projects.rst
+++ b/source/key_projects.rst
@@ -323,21 +323,6 @@ libraries in a package.
Non-PyPA Projects
#################
-.. _bento:
-
-bento
-=====
-
-`Docs `__ |
-`Issues `__ |
-`GitHub `__ |
-`PyPI `__
-
-Bento is a packaging tool solution for Python software, targeted as an
-alternative to :ref:`distutils`, :ref:`setuptools`, etc.... Bento's
-philosophy is reproducibility, extensibility and simplicity (in that
-order).
-
.. _buildout:
buildout
From 7e8f97bba574e89f5cf576970ed1c75e655f09ab Mon Sep 17 00:00:00 2001
From: Brian Rutledge
Date: Sun, 22 Aug 2021 06:04:27 -0400
Subject: [PATCH 0043/1072] Copy-edit TestPyPI guide
---
source/guides/using-testpypi.rst | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/source/guides/using-testpypi.rst b/source/guides/using-testpypi.rst
index f4f05d719..1d466e4ea 100644
--- a/source/guides/using-testpypi.rst
+++ b/source/guides/using-testpypi.rst
@@ -13,10 +13,10 @@ Registering your account
------------------------
Because TestPyPI has a separate database from the live PyPI, you'll need a
-separate user account for specifically for TestPyPI. Go to
+separate user account specifically for TestPyPI. Go to
https://test.pypi.org/account/register/ to register your account.
-.. Note:: The database for TestPyPI may be periodically pruned, so it is not
+.. note:: The database for TestPyPI may be periodically pruned, so it is not
unusual for user accounts to be deleted.
@@ -24,7 +24,7 @@ Using TestPyPI with Twine
-------------------------
You can upload your distributions to TestPyPI using :ref:`twine` by specifying
-the ``--repository`` flag
+the ``--repository`` flag:
.. code-block:: bash
@@ -38,8 +38,8 @@ your project to appear on the site.
Using TestPyPI with pip
-----------------------
-You can tell pip to download packages from TestPyPI instead of PyPI by
-specifying the ``--index-url`` flag
+You can tell :ref:`pip` to download packages from TestPyPI instead of PyPI by
+specifying the ``--index-url`` flag:
.. tab:: Unix/macOS
@@ -53,7 +53,7 @@ specifying the ``--index-url`` flag
py -m pip install --index-url https://test.pypi.org/simple/ your-package
-If you want to allow pip to also pull other packages from PyPI you can
+If you want to allow pip to also download packages from PyPI, you can
specify ``--extra-index-url`` to point to PyPI. This is useful when the package
you're testing has dependencies:
@@ -61,13 +61,13 @@ you're testing has dependencies:
.. code-block:: bash
- python3 -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple your-package
+ python3 -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ your-package
.. tab:: Windows
.. code-block:: bat
- py -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple your-package
+ py -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ your-package
Setting up TestPyPI in :file:`.pypirc`
--------------------------------------
From 519f3ef48cd7fe82d69445525ed3a58db0c6573b Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Sun, 22 Aug 2021 18:34:04 +0800
Subject: [PATCH 0044/1072] Use dnf instead of yum
---
.../guides/installing-using-linux-tools.rst | 19 ++++++-------------
1 file changed, 6 insertions(+), 13 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index ef85e0229..fc0e50311 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -35,7 +35,7 @@ Fedora
.. code-block:: bash
- sudo dnf install python3 python3-wheel
+ sudo dnf install python3-pip python3-wheel
To learn more about Python in Fedora, please visit the `official Fedora docs`_,
`Python Classroom`_ or `Fedora Loves Python`_.
@@ -55,19 +55,12 @@ To install pip and wheel for the system Python, there are two options:
1. Enable the `EPEL repository `_ using
`these instructions
`__.
- On EPEL 6 and EPEL 7, you can install pip like so:
+ On EPEL 7, you can install pip and wheel like so:
.. code-block:: bash
- sudo yum install python3-pip
-
-
- On EPEL 7 (but not EPEL 6), you can install wheel like so:
-
- .. code-block:: bash
-
- sudo yum install python3-wheel
-
+ sudo dnf install python3-pip python3-wheel
+
Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
setuptools, since it's in the core repository.
@@ -79,13 +72,13 @@ To install pip and wheel for the system Python, there are two options:
.. code-block:: bash
- sudo yum install python3-pip python3-wheel
+ sudo dnf install python3-pip python3-wheel
To additionally upgrade setuptools, run:
.. code-block:: bash
- sudo yum upgrade python3-setuptools
+ sudo dnf upgrade python3-setuptools
To install pip, wheel, and setuptools, in a parallel, non-system environment
From 1c2e0bedb1f84a21c4da8abd4c0e48889f7f3d7e Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Sun, 22 Aug 2021 18:43:10 +0800
Subject: [PATCH 0045/1072] Make the whitespace consistent
---
source/guides/installing-using-linux-tools.rst | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index fc0e50311..d1c2ee732 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -60,9 +60,9 @@ To install pip and wheel for the system Python, there are two options:
.. code-block:: bash
sudo dnf install python3-pip python3-wheel
-
- Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
- setuptools, since it's in the core repository.
+
+ Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
+ setuptools, since it's in the core repository.
2. Enable the `PyPA Copr Repo
From 2c238a3e9e7f86eb24560ce54c294f0d6c7d75f1 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Sun, 22 Aug 2021 18:47:20 +0800
Subject: [PATCH 0046/1072] Make the whitespace consistent
---
source/guides/installing-using-linux-tools.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/guides/installing-using-linux-tools.rst b/source/guides/installing-using-linux-tools.rst
index d1c2ee732..8f12a4dfe 100644
--- a/source/guides/installing-using-linux-tools.rst
+++ b/source/guides/installing-using-linux-tools.rst
@@ -59,7 +59,7 @@ To install pip and wheel for the system Python, there are two options:
.. code-block:: bash
- sudo dnf install python3-pip python3-wheel
+ sudo dnf install python3-pip python3-wheel
Since EPEL only offers extra, non-conflicting packages, EPEL does not offer
setuptools, since it's in the core repository.
From 40b7cb9b866d063413ce9c7ce617bc028663fd15 Mon Sep 17 00:00:00 2001
From: Yifei Xu
Date: Mon, 23 Aug 2021 17:25:19 -0400
Subject: [PATCH 0047/1072] Fix typo ("tutoral" -> "tutorial") (#962)
Pretty minor change but nice to fix typos I guess
---
source/tutorials/packaging-projects.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/tutorials/packaging-projects.rst b/source/tutorials/packaging-projects.rst
index 15245a16d..acc854032 100644
--- a/source/tutorials/packaging-projects.rst
+++ b/source/tutorials/packaging-projects.rst
@@ -7,7 +7,7 @@ to build the package, and how to upload it to the Python Package Index.
.. tip::
- If you have trouble running the commands in this tutoral, please copy the command
+ If you have trouble running the commands in this tutorial, please copy the command
and its output, then `open an issue`_ on the `packaging-problems`_ repository on
GitHub. We'll do our best to help you!
From fc8ffc9c8a82971f5217b88f66e285bf3940ad97 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Tue, 24 Aug 2021 16:21:14 +0800
Subject: [PATCH 0048/1072] Fix a broken link
---
source/guides/index-mirrors-and-caches.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index 284665eb0..9a1c5d41c 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -35,7 +35,7 @@ cached copies of :term:`packages `:
those downloaded files instead of going to PyPI.
2. A variation on the above which pre-builds the installation files for
the requirements using `python -m pip wheel
- `_:
+ `_:
.. code-block:: bash
From cf22b4523589185ee3de96624e95dd67d185291b Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Tue, 24 Aug 2021 17:15:09 +0800
Subject: [PATCH 0049/1072] `Mac OS X/OS X` -> `macOS`
---
source/discussions/deploying-python-applications.rst | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/source/discussions/deploying-python-applications.rst b/source/discussions/deploying-python-applications.rst
index f2bb5f756..989ca2e89 100644
--- a/source/discussions/deploying-python-applications.rst
+++ b/source/discussions/deploying-python-applications.rst
@@ -102,19 +102,19 @@ Public License 2.0.
.. __: https://devguide.python.org/#status-of-python-branches
-Mac OS
-------
+macOS
+-----
py2app
^^^^^^
`py2app `__ is a Python setuptools
-command which will allow you to make standalone Mac OS X application
+command which will allow you to make standalone macOS application
bundles and plugins from Python scripts. Note that py2app MUST be used
-on OSX to build applications, it cannot create Mac applications on other
+on macOS to build applications, it cannot create Mac applications on other
platforms. py2app is released under the MIT-license.
-Unix (including Linux and Mac OS X)
+Unix (including Linux and macOS)
-----------------------------------
pex
@@ -125,7 +125,7 @@ pex
spirit of virtualenvs. pex is an expansion upon the ideas outlined in :pep:`441`
and makes the deployment of Python applications as simple as cp. pex files may
even include multiple platform-specific Python distributions, meaning that a
-single pex file can be portable across Linux and OS X. pex is released under the
+single pex file can be portable across Linux and macOS. pex is released under the
Apache License 2.0.
Configuration management
From 0b1ee1390b8b9e8506d438c89a20092b9b4ebefa Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Tue, 24 Aug 2021 17:16:03 +0800
Subject: [PATCH 0050/1072] Update reviewed date
---
source/discussions/deploying-python-applications.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/discussions/deploying-python-applications.rst b/source/discussions/deploying-python-applications.rst
index 989ca2e89..d1bd91c05 100644
--- a/source/discussions/deploying-python-applications.rst
+++ b/source/discussions/deploying-python-applications.rst
@@ -4,7 +4,7 @@ Deploying Python applications
=============================
:Page Status: Incomplete
-:Last Reviewed: 2014-11-11
+:Last Reviewed: 2021-8-24
.. contents:: Contents
:local:
From cfa58cd016cd8a1e935bf2db144a8189151bc60a Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 24 Aug 2021 17:47:06 +0800
Subject: [PATCH 0051/1072] Use intersphinx references
---
source/guides/index-mirrors-and-caches.rst | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index 9a1c5d41c..fdfece50a 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -34,8 +34,7 @@ cached copies of :term:`packages `:
by downloading all the requirements for a project and then pointing pip at
those downloaded files instead of going to PyPI.
2. A variation on the above which pre-builds the installation files for
- the requirements using `python -m pip wheel
- `_:
+ the requirements using :ref:`python -m pip wheel `:
.. code-block:: bash
From 9c1f339af1480c6affda784ec1dd5b59446cd336 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Tue, 24 Aug 2021 18:26:43 +0800
Subject: [PATCH 0052/1072] Add a comment for cron
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index b4c1fd35b..a0001e765 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -2,7 +2,7 @@ name: Translation
on:
schedule:
- - cron: '00 00,00 * * sun'
+ - cron: '00 00,00 * * sun' # Runs at 00:00 UTC on Sunday
jobs:
build:
From 622d8265dbc8a093ce13d17f3af0e6fe555fca00 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 24 Aug 2021 20:01:08 +0800
Subject: [PATCH 0053/1072] FIx a broken link
---
source/tutorials/installing-packages.rst | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/source/tutorials/installing-packages.rst b/source/tutorials/installing-packages.rst
index ccda474f0..201980283 100644
--- a/source/tutorials/installing-packages.rst
+++ b/source/tutorials/installing-packages.rst
@@ -298,8 +298,7 @@ Use pip for Installing
:ref:`pip` is the recommended installer. Below, we'll cover the most common
usage scenarios. For more detail, see the `pip docs `_,
-which includes a complete `Reference Guide
-`_.
+which includes a complete :std:doc:`Reference Guide `.
Installing from PyPI
From 33dbcf5a5661b28348793d65c7a23b129b64f1e3 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Tue, 24 Aug 2021 20:07:57 +0800
Subject: [PATCH 0054/1072] Use intersphinx references
---
source/guides/index-mirrors-and-caches.rst | 2 +-
source/tutorials/installing-packages.rst | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index fdfece50a..e765a5d07 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -34,7 +34,7 @@ cached copies of :term:`packages `:
by downloading all the requirements for a project and then pointing pip at
those downloaded files instead of going to PyPI.
2. A variation on the above which pre-builds the installation files for
- the requirements using :ref:`python -m pip wheel `:
+ the requirements using :ref:`python -m pip wheel `:
.. code-block:: bash
diff --git a/source/tutorials/installing-packages.rst b/source/tutorials/installing-packages.rst
index 201980283..ab5156fb5 100644
--- a/source/tutorials/installing-packages.rst
+++ b/source/tutorials/installing-packages.rst
@@ -298,7 +298,7 @@ Use pip for Installing
:ref:`pip` is the recommended installer. Below, we'll cover the most common
usage scenarios. For more detail, see the `pip docs `_,
-which includes a complete :std:doc:`Reference Guide `.
+which includes a complete :doc:`Reference Guide `.
Installing from PyPI
From b24d52d370699a5854d1d2578b6586681406fb6c Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:12:57 +0800
Subject: [PATCH 0055/1072] Use `failure()`
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index a0001e765..025af8a66 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -30,7 +30,7 @@ jobs:
git commit -m "Update messages.pot ${git_hash}" locales/messages.pot
- name: Check on failures
- if: ${{job.status == 'failure'}}
+ if: failure()
run: echo "No Changes!"
- name: Push changes
From b7d3cdb603c97910773c6c5ad2602949ba415656 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:19:19 +0800
Subject: [PATCH 0056/1072] Update comment
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 025af8a66..1703ca48a 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -19,7 +19,7 @@ jobs:
- name: Install Dependencies
run: python -m pip install --upgrade nox virtualenv
- - name: Create local changes
+ - name: Generate a fresh POT file out of RST documents
run: python -m nox -s translation
- name: Commit files
From 88645afa6f8441fe06f593a53506f63e26e8bcaa Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:19:41 +0800
Subject: [PATCH 0057/1072] Update .github/workflows/translation.yml
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 1 -
1 file changed, 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 1703ca48a..c7e7d2f59 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -36,4 +36,3 @@ jobs:
- name: Push changes
run: |
git push --atomic origin main
-
From 6d488423b1382a425ee5ab5b4597b9fe86a8e2dd Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:19:50 +0800
Subject: [PATCH 0058/1072] Update .github/workflows/translation.yml
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 1 -
1 file changed, 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index c7e7d2f59..de29d3fed 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -28,7 +28,6 @@ jobs:
git config --local user.name "github-actions[bot]"
git_hash=$(git rev-parse --short "$GITHUB_SHA")
git commit -m "Update messages.pot ${git_hash}" locales/messages.pot
-
- name: Check on failures
if: failure()
run: echo "No Changes!"
From 13b6460d29e0bcf4c0c660f65d83eb29ccf4a2ba Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:20:02 +0800
Subject: [PATCH 0059/1072] Update name
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index de29d3fed..4aa9b8043 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -22,7 +22,7 @@ jobs:
- name: Generate a fresh POT file out of RST documents
run: python -m nox -s translation
- - name: Commit files
+ - name: Commit the POT file to Git
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
From 5b8faa975efff21299d7104168a0fe6dde19b44e Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:20:21 +0800
Subject: [PATCH 0060/1072] Update commit message
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 4aa9b8043..c752afa2d 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -27,7 +27,7 @@ jobs:
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git_hash=$(git rev-parse --short "$GITHUB_SHA")
- git commit -m "Update messages.pot ${git_hash}" locales/messages.pot
+ git commit -m "Update messages.pot as of version ${git_hash}" locales/messages.pot
- name: Check on failures
if: failure()
run: echo "No Changes!"
From 238397a96aa25da36e83c4f28e7b9b418fa83fb5 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:22:00 +0800
Subject: [PATCH 0061/1072] Update the message
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index c752afa2d..b7279a118 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -30,7 +30,7 @@ jobs:
git commit -m "Update messages.pot as of version ${git_hash}" locales/messages.pot
- name: Check on failures
if: failure()
- run: echo "No Changes!"
+ run: echo "There are no changes to the RST sources since the last update. Nothing to do."
- name: Push changes
run: |
From 8b2e3a4c9c90e70504f85e89d6a07b737e0ebc0c Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:22:14 +0800
Subject: [PATCH 0062/1072] Update name
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index b7279a118..29d22b936 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -28,7 +28,7 @@ jobs:
git config --local user.name "github-actions[bot]"
git_hash=$(git rev-parse --short "$GITHUB_SHA")
git commit -m "Update messages.pot as of version ${git_hash}" locales/messages.pot
- - name: Check on failures
+ - name: Check if any sources have changed since the last update
if: failure()
run: echo "There are no changes to the RST sources since the last update. Nothing to do."
From 28d37351386a397adfe2e26a7ba650e9de54d3da Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:22:26 +0800
Subject: [PATCH 0063/1072] Update name
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 29d22b936..9b28c150f 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -16,7 +16,7 @@ jobs:
with:
python-version: 3.9
- - name: Install Dependencies
+ - name: Install Python tooling
run: python -m pip install --upgrade nox virtualenv
- name: Generate a fresh POT file out of RST documents
From 8f3530ee4b00988b959d6093fb76d16d87b23229 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:22:56 +0800
Subject: [PATCH 0064/1072] Update .github/workflows/translation.yml
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 9b28c150f..23e4b0277 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -26,7 +26,7 @@ jobs:
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
- git_hash=$(git rev-parse --short "$GITHUB_SHA")
+ git_hash=$(git rev-parse --short "${GITHUB_SHA}")
git commit -m "Update messages.pot as of version ${git_hash}" locales/messages.pot
- name: Check if any sources have changed since the last update
if: failure()
From 9da5275b121e3ffe23637da7e8e9dfac0bfbae82 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:24:20 +0800
Subject: [PATCH 0065/1072] Update name
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 23e4b0277..194f9005f 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -32,6 +32,6 @@ jobs:
if: failure()
run: echo "There are no changes to the RST sources since the last update. Nothing to do."
- - name: Push changes
+ - name: Push the updated POT file back to ${{ github.repository }} on GitHub
run: |
git push --atomic origin main
From b1109a348beba9cfe1c5ed0aacc87f003ba2fefc Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:25:05 +0800
Subject: [PATCH 0066/1072] Update .github/workflows/translation.yml
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 194f9005f..10240a11c 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -34,4 +34,4 @@ jobs:
- name: Push the updated POT file back to ${{ github.repository }} on GitHub
run: |
- git push --atomic origin main
+ git push --atomic origin HEAD:${{ github.event.repository.default_branch }}
From b7e9720b2e056cce6a839431746ed6efdf81d476 Mon Sep 17 00:00:00 2001
From: Sviatoslav Sydorenko
Date: Tue, 24 Aug 2021 18:25:43 +0200
Subject: [PATCH 0067/1072] Make the push step name more specific
---
.github/workflows/translation.yml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 10240a11c..5038e462a 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -32,6 +32,9 @@ jobs:
if: failure()
run: echo "There are no changes to the RST sources since the last update. Nothing to do."
- - name: Push the updated POT file back to ${{ github.repository }} on GitHub
+ - name: >-
+ Push the updated POT file back to
+ ${{ github.repository }}@${{ github.event.repository.default_branch }}
+ on GitHub
run: |
git push --atomic origin HEAD:${{ github.event.repository.default_branch }}
From 897d10adb2b1a0e72758e158d96a75f732bcc289 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:27:31 +0800
Subject: [PATCH 0068/1072] Add name
Co-authored-by: Sviatoslav Sydorenko
---
.github/workflows/translation.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 5038e462a..4d28ed393 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -9,7 +9,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v2
+ - name: Grab the repo src
+ uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
From d5a9b5de233c65f7c766126401e0b75e6425a7a8 Mon Sep 17 00:00:00 2001
From: Sviatoslav Sydorenko
Date: Tue, 24 Aug 2021 18:36:42 +0200
Subject: [PATCH 0069/1072] Trigger the translation workflow on the test
completion
---
.github/workflows/translation.yml | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 4d28ed393..2237b44e0 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -1,6 +1,13 @@
name: Translation
on:
+ workflow_run:
+ workflows:
+ - Test
+ branches:
+ - main
+ types:
+ - completed
schedule:
- cron: '00 00,00 * * sun' # Runs at 00:00 UTC on Sunday
From f1a0b0be5d3bebbb459e1e1222d5c089c6afab7d Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:38:15 +0800
Subject: [PATCH 0070/1072] Remove cron time
---
.github/workflows/translation.yml | 2 --
1 file changed, 2 deletions(-)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 2237b44e0..2513c0715 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -8,8 +8,6 @@ on:
- main
types:
- completed
- schedule:
- - cron: '00 00,00 * * sun' # Runs at 00:00 UTC on Sunday
jobs:
build:
From 4010107771c2d3cfc96aa19539d22e9db7f4eb96 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Wed, 25 Aug 2021 00:39:33 +0800
Subject: [PATCH 0071/1072] Add a space
---
.github/workflows/translation.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/translation.yml b/.github/workflows/translation.yml
index 2513c0715..4638e5c4e 100644
--- a/.github/workflows/translation.yml
+++ b/.github/workflows/translation.yml
@@ -34,6 +34,7 @@ jobs:
git config --local user.name "github-actions[bot]"
git_hash=$(git rev-parse --short "${GITHUB_SHA}")
git commit -m "Update messages.pot as of version ${git_hash}" locales/messages.pot
+
- name: Check if any sources have changed since the last update
if: failure()
run: echo "There are no changes to the RST sources since the last update. Nothing to do."
From f54c752e49b56e28bfddd31e40b9c9bc4006b9c8 Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Thu, 26 Aug 2021 00:04:26 +0800
Subject: [PATCH 0072/1072] Use intersphinx references
---
source/glossary.rst | 5 ++---
.../distributing-packages-using-setuptools.rst | 16 ++++++++--------
source/guides/index-mirrors-and-caches.rst | 3 +--
...alling-using-pip-and-virtual-environments.rst | 6 ++----
source/guides/packaging-binary-extensions.rst | 4 ++--
source/guides/packaging-namespace-packages.rst | 5 ++---
source/guides/tool-recommendations.rst | 5 ++---
source/overview.rst | 10 +++++-----
source/tutorials/installing-packages.rst | 16 ++++++++--------
source/tutorials/managing-dependencies.rst | 4 ++--
10 files changed, 34 insertions(+), 40 deletions(-)
diff --git a/source/glossary.rst b/source/glossary.rst
index 55041cbd7..c4ac86c7a 100644
--- a/source/glossary.rst
+++ b/source/glossary.rst
@@ -42,9 +42,8 @@ Glossary
Egg
A :term:`Built Distribution` format introduced by :ref:`setuptools`,
- which is being replaced by :term:`Wheel`. For details, see `The
- Internal Structure of Python Eggs
- `_ and
+ which is being replaced by :term:`Wheel`. For details, see `
+ :doc:`The Internal Structure of Python Eggs ` and
`Python Eggs `_
Extension Module
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index e2272dd4a..fecffddbd 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -509,8 +509,8 @@ points (see below).
Use this keyword to specify any plugins that your project provides for any named
entry points that may be defined by your project or others that you depend on.
-For more information, see the section on `Advertising Behavior
-`_
+For more information, see the section on
+:ref:`Advertising Behavior `
from the :ref:`setuptools` docs.
The most commonly used entry point is "console_scripts" (see below).
@@ -528,8 +528,8 @@ The most commonly used entry point is "console_scripts" (see below).
],
},
-Use ``console_script`` `entry points
-`_
+Use ``console_script``
+:ref:`entry points `
to register your script interfaces. You can then let the toolchain handle the
work of turning these interfaces into actual scripts [2]_. The scripts will be
generated during the install of your :term:`distribution `.
For more information, see `Automatic Script Creation
`_
-from the `setuptools docs `_.
+from the :doc:`setuptools docs `.
.. _`Choosing a versioning scheme`:
@@ -706,9 +706,9 @@ Lastly, if you don't want to install any dependencies at all, you can run:
python -m pip install -e . --no-deps
-For more information, see the `Development Mode
-`_ section
-of the `setuptools docs `_.
+For more information, see the
+:doc:`` section
+of the :doc:`setuptools docs `.
.. _`Packaging your project`:
diff --git a/source/guides/index-mirrors-and-caches.rst b/source/guides/index-mirrors-and-caches.rst
index e765a5d07..d960e7bee 100644
--- a/source/guides/index-mirrors-and-caches.rst
+++ b/source/guides/index-mirrors-and-caches.rst
@@ -29,8 +29,7 @@ Caching with pip
pip provides a number of facilities for speeding up installation by using local
cached copies of :term:`packages `:
-1. `Fast & local installs
- `_
+1. :ref:`Fast & local installs `
by downloading all the requirements for a project and then pointing pip at
those downloaded files instead of going to PyPI.
2. A variation on the above which pre-builds the installation files for
diff --git a/source/guides/installing-using-pip-and-virtual-environments.rst b/source/guides/installing-using-pip-and-virtual-environments.rst
index 1a369763b..16b7a2cfb 100644
--- a/source/guides/installing-using-pip-and-virtual-environments.rst
+++ b/source/guides/installing-using-pip-and-virtual-environments.rst
@@ -323,7 +323,8 @@ pip can install a package directly from source, for example:
cd google-auth
py -m pip install .
-Additionally, pip can install packages from source in `development mode`_,
+Additionally, pip can install packages from source in
+:doc:`development mode `,
meaning that changes to the source directory will immediately affect the
installed package without needing to re-install:
@@ -339,9 +340,6 @@ installed package without needing to re-install:
py -m pip install --editable .
-.. _development mode:
- https://setuptools.readthedocs.io/en/latest/setuptools.html#development-mode
-
Installing from version control systems
---------------------------------------
diff --git a/source/guides/packaging-binary-extensions.rst b/source/guides/packaging-binary-extensions.rst
index f3d42fb82..001787b97 100644
--- a/source/guides/packaging-binary-extensions.rst
+++ b/source/guides/packaging-binary-extensions.rst
@@ -221,9 +221,9 @@ above to make the interface available as an importable Python module.
Implementing binary extensions
==============================
-The CPython `Extending and Embedding `_
+The CPython :doc:`Extending and Embedding `
guide includes an introduction to writing a
-`custom extension module in C `_.
+:doc:`custom extension module in C `.
::
diff --git a/source/guides/packaging-namespace-packages.rst b/source/guides/packaging-namespace-packages.rst
index aac7c2652..dd3c0f4b7 100644
--- a/source/guides/packaging-namespace-packages.rst
+++ b/source/guides/packaging-namespace-packages.rst
@@ -128,8 +128,8 @@ the `native namespace package example project`_.
pkgutil-style namespace packages
--------------------------------
-Python 2.3 introduced the `pkgutil`_ module and the
-`extend_path`_ function. This can be used to declare namespace
+Python 2.3 introduced the :doc:`pkgutil ` module and the
+:py:func:`python:pkgutil.extend_path` function. This can be used to declare namespace
packages that need to be compatible with both Python 2.3+ and Python 3. This
is the recommended approach for the highest level of compatibility.
@@ -160,7 +160,6 @@ additional code in :file:`__init__.py` will be inaccessible.
A complete working example of two pkgutil-style namespace packages can be found
in the `pkgutil namespace example project`_.
-.. _pkgutil: https://docs.python.org/3/library/pkgutil.html
.. _extend_path:
https://docs.python.org/3/library/pkgutil.html#pkgutil.extend_path
.. _pkgutil namespace example project:
diff --git a/source/guides/tool-recommendations.rst b/source/guides/tool-recommendations.rst
index cd7996b00..54acc1e33 100644
--- a/source/guides/tool-recommendations.rst
+++ b/source/guides/tool-recommendations.rst
@@ -31,8 +31,8 @@ Installation tool recommendations
is installed, you may need to also install :ref:`wheel` to get the benefit
of wheel caching. [3]_
-* Use :ref:`virtualenv`, or `venv`_ to isolate application specific
- dependencies from a shared Python installation. [4]_
+* Use :ref:`virtualenv`, or :doc:`venv ` to isolate application
+ specific dependencies from a shared Python installation. [4]_
* If you're looking for management of fully integrated cross-platform software
stacks, consider:
@@ -111,4 +111,3 @@ migration, and what settings to change in your clients.
choice for packaging.
.. _distribute: https://pypi.org/project/distribute
-.. _venv: https://docs.python.org/3/library/venv.html
diff --git a/source/overview.rst b/source/overview.rst
index 3ed4f2141..c4fdaaf18 100644
--- a/source/overview.rst
+++ b/source/overview.rst
@@ -94,8 +94,8 @@ you can use Python's native packaging tools to create a *source*
Python's *sdists* are compressed archives (``.tar.gz`` files)
containing one or more packages or modules. If your code is
-pure-Python, and you only depend on other Python packages, you can `go
-here to learn more `_.
+pure-Python, and you only depend on other Python packages, you can
+:doc:`go here to learn more `.
If you rely on any non-Python code, or non-Python packages (such as
`libxml2 `_ in the case of
@@ -166,8 +166,8 @@ audience.
Python's native packaging is mostly built for distributing reusable
code, called libraries, between developers. You can piggyback
**tools**, or basic applications for developers, on top of Python's
-library packaging, using technologies like `setuptools entry_points
-`_.
+library packaging, using technologies like
+:doc:`setuptools entry_points `.
Libraries are building blocks, not complete applications. For
distributing applications, there's a whole new world of technologies
@@ -249,7 +249,7 @@ machines of developers and data scientists.
Technologies which support this model:
* `PEX `_ (Python EXecutable)
-* `zipapp `_ (does not help manage dependencies, requires Python 3.5+)
+* :doc:`zipapp ` (does not help manage dependencies, requires Python 3.5+)
* `shiv `_ (requires Python 3)
.. note:: Of all the approaches here, depending on a pre-installed
diff --git a/source/tutorials/installing-packages.rst b/source/tutorials/installing-packages.rst
index ab5156fb5..f6bb02b79 100644
--- a/source/tutorials/installing-packages.rst
+++ b/source/tutorials/installing-packages.rst
@@ -178,7 +178,7 @@ Optionally, create a virtual environment
----------------------------------------
See :ref:`section below ` for details,
-but here's the basic `venv`_ [3]_ command to use on a typical Linux system:
+but here's the basic :doc:`venv ` [3]_ command to use on a typical Linux system:
.. tab:: Unix/macOS
@@ -228,7 +228,7 @@ environments.
Currently, there are two common tools for creating Python virtual environments:
-* `venv`_ is available by default in Python 3.3 and later, and installs
+* :doc:`venv ` is available by default in Python 3.3 and later, and installs
:ref:`pip` and :ref:`setuptools` into created virtual environments in
Python 3.4 and later.
* :ref:`virtualenv` needs to be installed separately, but supports Python 2.7+
@@ -238,7 +238,7 @@ Currently, there are two common tools for creating Python virtual environments:
The basic usage is like so:
-Using `venv`_:
+Using :doc:`venv `:
.. tab:: Unix/macOS
@@ -270,7 +270,8 @@ Using :ref:`virtualenv`:
virtualenv \Scripts\activate
-For more information, see the `venv`_ docs or the `virtualenv `_ docs.
+For more information, see the :doc:`venv ` docs or
+the `virtualenv `_ docs.
The use of :command:`source` under Unix shells ensures
that the virtual environment's variables are set within the current
@@ -297,7 +298,7 @@ Use pip for Installing
======================
:ref:`pip` is the recommended installer. Below, we'll cover the most common
-usage scenarios. For more detail, see the `pip docs `_,
+usage scenarios. For more detail, see the :doc:`pip docs `,
which includes a complete :doc:`Reference Guide `.
@@ -542,8 +543,8 @@ Installing from a local src tree
================================
-Installing from local src in `Development Mode
-`_,
+Installing from local src in
+:doc:`Development Mode `,
i.e. in such a way that the project appears to be installed, but yet is
still editable from the src tree.
@@ -682,5 +683,4 @@ Install `setuptools extras`_.
and support was released in :ref:`setuptools` v8.0 and
:ref:`pip` v6.0
-.. _venv: https://docs.python.org/3/library/venv.html
.. _setuptools extras: https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies
diff --git a/source/tutorials/managing-dependencies.rst b/source/tutorials/managing-dependencies.rst
index 99b889ca1..6eb94b1b6 100644
--- a/source/tutorials/managing-dependencies.rst
+++ b/source/tutorials/managing-dependencies.rst
@@ -53,12 +53,12 @@ Use ``pip`` to install Pipenv:
.. Note:: This does a `user installation`_ to prevent breaking any system-wide
packages. If ``pipenv`` isn't available in your shell after installation,
- you'll need to add the `user base`_'s binary directory to your ``PATH``.
+ you'll need to add the :py:data:`user base `'s
+ binary directory to your ``PATH``.
See :ref:`Installing to the User Site` for more information.
.. _npm: https://www.npmjs.com/
.. _bundler: http://bundler.io/
-.. _user base: https://docs.python.org/3/library/site.html#site.USER_BASE
.. _user installation: https://pip.pypa.io/en/stable/user_guide/#user-installs
Installing packages for your project
From 2e80e845a6e4e380f4809212eb7fca370d0089dc Mon Sep 17 00:00:00 2001
From: meowmeowcat <68463158+meowmeowmeowcat@users.noreply.github.com>
Date: Thu, 26 Aug 2021 21:32:05 +0800
Subject: [PATCH 0073/1072] Use Python 3.9 for the workflow
---
.../github-actions-ci-cd-sample/publish-to-test-pypi.yml | 4 ++--
...ribution-releases-using-github-actions-ci-cd-workflows.rst | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/guides/github-actions-ci-cd-sample/publish-to-test-pypi.yml b/source/guides/github-actions-ci-cd-sample/publish-to-test-pypi.yml
index 361203b49..c24d08091 100644
--- a/source/guides/github-actions-ci-cd-sample/publish-to-test-pypi.yml
+++ b/source/guides/github-actions-ci-cd-sample/publish-to-test-pypi.yml
@@ -9,10 +9,10 @@ jobs:
steps:
- uses: actions/checkout@master
- - name: Set up Python 3.7
+ - name: Set up Python 3.9
uses: actions/setup-python@v1
with:
- python-version: 3.7
+ python-version: 3.9
- name: Install pypa/build
run: >-
python -m
diff --git a/source/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows.rst b/source/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows.rst
index 4dd1969b6..bd8ea42eb 100644
--- a/source/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows.rst
+++ b/source/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows.rst
@@ -90,7 +90,7 @@ Then, add the following under the ``build-n-publish`` section:
:end-before: Install pypa/build
This will download your repository into the CI runner and then
-install and activate Python 3.7.
+install and activate Python 3.9.
And now we can build dists from source. In this example, we'll
use ``build`` package, assuming that your project has a
@@ -107,7 +107,7 @@ So add this to the steps list:
.. literalinclude:: github-actions-ci-cd-sample/publish-to-test-pypi.yml
:language: yaml
- :start-after: version: 3.7
+ :start-after: version: 3.9
:end-before: Actually publish to PyPI/TestPyPI
From dcb3add9cd8c0237b0b4e32fadb26332e0a99c71 Mon Sep 17 00:00:00 2001
From: Wes Turner <50891+westurner@users.noreply.github.com>
Date: Fri, 27 Aug 2021 07:49:42 -0400
Subject: [PATCH 0074/1072] DOC:
source/guides/distributing-packages-using-setuptools.rst: remove extra pip
install -e
Co-authored-by: meowmeowcat
---
source/guides/distributing-packages-using-setuptools.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index c6171ab70..3a27a4b90 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -665,7 +665,7 @@ edited in-place without reinstallation:
changes to Python source files in projects installed as editable will be reflected the next time an interpreter process is started.
To install a Python package in "editable"/"development" mode
-Change directory to the root of the project directory and run ``pip install -e .``:
+Change directory to the root of the project directory and run:
::
From 9c8996b5cc81d9ff35944131be8bc020b990dda9 Mon Sep 17 00:00:00 2001
From: meowmeowcat
Date: Sat, 28 Aug 2021 17:38:19 +0800
Subject: [PATCH 0075/1072] Fix a typo (#970)
---
source/guides/distributing-packages-using-setuptools.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/guides/distributing-packages-using-setuptools.rst b/source/guides/distributing-packages-using-setuptools.rst
index b16dc8f1c..a179ea130 100644
--- a/source/guides/distributing-packages-using-setuptools.rst
+++ b/source/guides/distributing-packages-using-setuptools.rst
@@ -710,7 +710,7 @@ Lastly, if you don't want to install any dependencies at all, you can run:
For more information, see the
-:doc:`` section
+:doc:`Development Mode ` section
of the :doc:`setuptools docs `.
.. _`Packaging your project`:
From 750346bb32d6ed5f7bec1353267055301b6ce3b6 Mon Sep 17 00:00:00 2001
From: Tim Hopper
Date: Sat, 28 Aug 2021 05:58:17 -0400
Subject: [PATCH 0076/1072] Switch example reading Markdown to use pathlib
(#969)
Co-authored-by: Zachary Blackwood
Co-authored-by: Zachary Blackwood
Co-authored-by: Brian Rutledge
---
source/guides/making-a-pypi-friendly-readme.rst | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/source/guides/making-a-pypi-friendly-readme.rst b/source/guides/making-a-pypi-friendly-readme.rst
index eea221b4a..0cba44c2c 100644
--- a/source/guides/making-a-pypi-friendly-readme.rst
+++ b/source/guides/making-a-pypi-friendly-readme.rst
@@ -78,10 +78,9 @@ and identifies the markup as GitHub-flavored Markdown:
from setuptools import setup
# read the contents of your README file
- from os import path
- this_directory = path.abspath(path.dirname(__file__))
- with open(path.join(this_directory, 'README.md'), encoding='utf-8') as f:
- long_description = f.read()
+ from pathlib import Path
+ this_directory = Path(__file__).parent
+ long_description = (this_directory / "README.md").read_text()
setup(
name='an_example_package',
From f45cb58daee330c9c3f088f49ebd0a205ef00983 Mon Sep 17 00:00:00 2001
From: meowmeowmeowcat
Date: Sun, 29 Aug 2021 18:15:29 +0200
Subject: [PATCH 0077/1072] Translated using Weblate (Chinese (Simplified))
Currently translated at 8.6% (196 of 2271 strings)
Translated using Weblate (Chinese (Simplified))
Currently translated at 1.3% (31 of 2271 strings)
Translated using Weblate (Chinese (Traditional))
Currently translated at 1.1% (25 of 2271 strings)
Added translation using Weblate (Chinese (Simplified))
Added translation using Weblate (Chinese (Traditional))
Co-authored-by: meowmeowmeowcat
Translate-URL: https://hosted.weblate.org/projects/pypa/packaging-python-org/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/pypa/packaging-python-org/zh_Hant/
Translation: pypa/packaging.python.org
---
locales/zh_Hans/LC_MESSAGES/messages.po | 9324 +++++++++++++++++++++++
locales/zh_Hant/LC_MESSAGES/messages.po | 9260 ++++++++++++++++++++++
2 files changed, 18584 insertions(+)
create mode 100644 locales/zh_Hans/LC_MESSAGES/messages.po
create mode 100644 locales/zh_Hant/LC_MESSAGES/messages.po
diff --git a/locales/zh_Hans/LC_MESSAGES/messages.po b/locales/zh_Hans/LC_MESSAGES/messages.po
new file mode 100644
index 000000000..84341c490
--- /dev/null
+++ b/locales/zh_Hans/LC_MESSAGES/messages.po
@@ -0,0 +1,9324 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) 2013–2020, PyPA
+# This file is distributed under the same license as the Python Packaging User Guide package.
+# meowmeowmeowcat , 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: Python Packaging User Guide\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2021-07-06 19:32+0800\n"
+"PO-Revision-Date: 2021-07-16 11:12+0000\n"
+"Last-Translator: meowmeowmeowcat \n"
+"Language-Team: Chinese (Simplified) \n"
+"Language: zh_Hans\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 4.7.2-dev\n"
+
+#: ../source/contribute.rst:5
+msgid "Contribute to this guide"
+msgstr "为本指南做出贡献"
+
+#: ../source/contribute.rst:7
+msgid "The |PyPUG| welcomes contributors! There are lots of ways to help out, including:"
+msgstr "|PyPUG| 欢迎贡献者!有很多方法可以帮助我们,包括:"
+
+#: ../source/contribute.rst:10
+msgid "Reading the guide and giving feedback"
+msgstr "阅读指南并提供反馈"
+
+#: ../source/contribute.rst:11
+msgid "Reviewing new contributions"
+msgstr "审查新的贡献"
+
+#: ../source/contribute.rst:12
+msgid "Revising existing content"
+msgstr "修改现有内容"
+
+#: ../source/contribute.rst:13
+msgid "Writing new content"
+msgstr "撰写新内容"
+
+#: ../source/contribute.rst:15
+msgid "Most of the work on the |PyPUG| takes place on the `project's GitHub repository`__. To get started, check out the list of `open issues`__ and `pull requests`__. If you're planning to write or edit the guide, please read the :ref:`style guide `."
+msgstr ""
+"大部分关于 |PyPUG| 的工作都是在 `本项目的GitHub仓库`__ 进行的。要开始工作,请查看`open issues`__ 和`pull "
+"requests`__ 的列表。如果你打算编写或编辑指南,请阅读 :ref:`style guide "
+"`。"
+
+#: ../source/contribute.rst:24
+msgid "By contributing to the |PyPUG|, you're expected to follow the PSF's `Code of Conduct`__."
+msgstr "如果您想为 |PyPUG| 作出贡献,您应该遵守 PSF 的 `行为准则 (Code of Conduct)`__ 。"
+
+#: ../source/contribute.rst:31
+msgid "Documentation types"
+msgstr "文档类型"
+
+#: ../source/contribute.rst:33
+msgid "This project consists of four distinct documentation types with specific purposes. When proposing new additions to the project please pick the appropriate documentation type."
+msgstr "本项目由具有特定目的的四种不同的文档类型组成。当提议对项目进行新的补充时,请选择适当的文档类型。"
+
+#: ../source/contribute.rst:38
+#: ../source/tutorials/index.rst:2
+msgid "Tutorials"
+msgstr "教程"
+
+#: ../source/contribute.rst:40
+msgid "Tutorials are focused on teaching the reader new concepts by accomplishing a goal. They are opinionated step-by-step guides. They do not include extraneous warnings or information. `example tutorial-style document`_."
+msgstr "教程的重点是通过完成一个目标来教导读者新的概念。它们是有观点的分步指南。它们不包括不相干的警告或信息。`示例教程式文件`_ 。"
+
+#: ../source/contribute.rst:47
+#: ../source/guides/index.rst:2
+msgid "Guides"
+msgstr "指南"
+
+#: ../source/contribute.rst:49
+msgid "Guides are focused on accomplishing a specific task and can assume some level of pre-requisite knowledge. These are similar to tutorials, but have a narrow and clear focus and can provide lots of caveats and additional information as needed. They may also discuss multiple approaches to accomplishing the task. :doc:`example guide-style document `."
+msgstr ""
+"指南的重点是完成一项具体的任务,并可以假定有一定程度的前提知识。这类似于教程,但有一个狭窄和明确的重点,并可以根据需要提供大量的注意事项和附加信息。他们还"
+"可以讨论完成任务的多种方法。 :doc:`示例指南式文档`。"
+
+#: ../source/contribute.rst:56
+#: ../source/discussions/index.rst:2
+msgid "Discussions"
+msgstr "讨论"
+
+#: ../source/contribute.rst:58
+msgid "Discussions are focused on understanding and information. These explore a specific topic without a specific goal in mind. :doc:`example discussion-style document `."
+msgstr ""
+"讨论 (Discussions) 的重点是理解和信息。这些探索一个特定的主题,没有具体的目标。 :doc:`示例讨论式文件 `。"
+
+#: ../source/contribute.rst:63
+msgid "Specifications"
+msgstr "规格"
+
+#: ../source/contribute.rst:65
+msgid "Specifications are reference documention focused on comprehensively documenting an agreed-upon interface for interoperability between packaging tools. :doc:`example specification-style document `."
+msgstr ""
+"规范 (Specifications) 是一种参考文件,侧重于全面记录包装工具之间互操作性的一致接口。 :doc:`范例规范式文件 <"
+"specifications/core-metadata>`。"
+
+#: ../source/contribute.rst:73
+msgid "Building the guide locally"
+msgstr "在本地构建指南"
+
+#: ../source/contribute.rst:75
+msgid "Though not required to contribute, it may be useful to build this guide locally in order to test your changes. In order to build this guide locally, you'll need:"
+msgstr "虽然这不需要做出贡献,但为了测试您的改动,在本地建立本指南可能是有用的。为了在本地构建本指南,你需要:"
+
+#: ../source/contribute.rst:79
+msgid "`Nox `_. You can install or upgrade nox using ``pip``::"
+msgstr ""
+"`Nox `_ 。你可以用 ``pip`` 来安装或升级nox::"
+
+#: ../source/contribute.rst:84
+msgid "Python 3.6. Our build scripts are designed to work with Python 3.6 only. See the `Hitchhiker's Guide to Python installation instructions`_ to install Python 3.6 on your operating system."
+msgstr ""
+"Python 3.6。我们的构建脚本只为 Python 3.6 而设计。请参阅 `Hitchhiker's Guide to Python "
+"installation instructions`_ 以在你的操作系统上安装Python 3.6。"
+
+#: ../source/contribute.rst:91
+msgid "To build the guide, run the following bash command in the source folder::"
+msgstr "要构建指南,在 source 文件夹中运行以下 bash 命令::"
+
+#: ../source/contribute.rst:95
+msgid "After the process has completed you can find the HTML output in the ``./build/html`` directory. You can open the ``index.html`` file to view the guide in web browser, but it's recommended to serve the guide using an HTTP server."
+msgstr ""
+"在该过程完成后,您可以在 ``./build/html`` 目录中找到 HTML 输出。您可以打开 ``index.html`` "
+"文件,并在浏览器中查看指南,但我们建议使用 HTTP 服务器为指南服务。"
+
+#: ../source/contribute.rst:100
+msgid "You can build the guide and serve it via an HTTP server using the following command::"
+msgstr "您可以使用以下命令建立指南并通过 HTTP 服务器为其提供服务::"
+
+#: ../source/contribute.rst:105
+msgid "The guide will be browsable via http://localhost:8000."
+msgstr "该指南将可通过 http://localhost:8000 进行浏览。"
+
+#: ../source/contribute.rst:109
+msgid "Where the guide is deployed"
+msgstr "指南的部署地点"
+
+#: ../source/contribute.rst:111
+msgid "The guide is deployed via ReadTheDocs and the configuration lives at https://readthedocs.org/projects/python-packaging-user-guide/. It's served from a custom domain and fronted by Fast.ly."
+msgstr ""
+"该指南是通过ReadTheDocs部署的,配置位于 https://readthedocs.org/projects/"
+"python-packaging-user-guide/ 。它由一个自定义域名提供服务,并由 Fast.ly 提供支持。"
+
+#: ../source/contribute.rst:117
+msgid "Style guide"
+msgstr "风格指南"
+
+#: ../source/contribute.rst:119
+msgid "This style guide has recommendations for how you should write the |PyPUG|. Before you start writing, please review it. By following the style guide, your contributions will help add to a cohesive whole and make it easier for your contributions to be accepted into the project."
+msgstr ""
+"本风格指南提供了关于如何编写 |PyPUG| "
+"的建议。在开始写作之前,请先查看它。通过遵循样式指南,您的贡献将有助于增加一个有凝聚力的整体,并使您的贡献更容易被项目接受。"
+
+#: ../source/contribute.rst:126
+msgid "Purpose"
+msgstr "目的"
+
+#: ../source/contribute.rst:128
+msgid "The purpose of the |PyPUG| is to be the authoritative resource on how to package, publish, and install Python projects using current tools."
+msgstr "|PyPUG| 的目的是成为关于如何使用当前工具打包、发布和安装 Python 项目的权威性资源。"
+
+#: ../source/contribute.rst:133
+msgid "Scope"
+msgstr "范围"
+
+#: ../source/contribute.rst:135
+msgid "The guide is meant to answer questions and solve problems with accurate and focused recommendations."
+msgstr "该指南旨在通过准确和有针对性的建议来回答问题和解决问题。"
+
+#: ../source/contribute.rst:138
+msgid "The guide isn't meant to be comprehensive and it's not meant to replace individual projects' documentation. For example, pip has dozens of commands, options, and settings. The pip documentation describes each of them in detail, while this guide describes only the parts of pip that are needed to complete the specific tasks described in this guide."
+msgstr ""
+"本指南并不意味着是全面的,也不意味着可以取代单个项目的文档。例如,pip 有几十个命令、选项和设置。pip 文档详细描述了它们中的每一个,"
+"而本指南只描述了完成本指南中描述的特定任务所需的 pip 部分。"
+
+#: ../source/contribute.rst:146
+msgid "Audience"
+msgstr "读者"
+
+#: ../source/contribute.rst:148
+msgid "The audience of this guide is anyone who uses Python with packages."
+msgstr "本指南的受众是任何使用 Python 包的人。"
+
+#: ../source/contribute.rst:150
+msgid "Don't forget that the Python community is big and welcoming. Readers may not share your age, gender, education, culture, and more, but they deserve to learn about packaging just as much as you do."
+msgstr "不要忘记,Python 社区是很大,而且很受欢迎的。读者可能与您的年龄、性别、教育、文化等不尽相同,但他们和您一样值得学习包装知识。"
+
+#: ../source/contribute.rst:154
+msgid "In particular, keep in mind that not all people who use Python see themselves as programmers. The audience of this guide includes astronomers or painters or students as well as professional software developers."
+msgstr "特别是要记住,不是所有使用 Python 的人都把自己看作是程序员。本指南的受众包括天文学家,画家或学生以及专业的软件开发人员。"
+
+#: ../source/contribute.rst:160
+msgid "Voice and tone"
+msgstr "声音和语气"
+
+#: ../source/contribute.rst:162
+msgid "When writing this guide, strive to write with a voice that's approachable and humble, even if you have all the answers."
+msgstr "在撰写本指南时,即使您已经掌握了所有答案,也要努力以平易近人且谦逊的语气写作。"
+
+#: ../source/contribute.rst:165
+msgid "Imagine you're working on a Python project with someone you know to be smart and skilled. You like working with them and they like working with you. That person has asked you a question and you know the answer. How do you respond? *That* is how you should write this guide."
+msgstr ""
+"想象一下,您正在和一个您知道是聪明和熟练的人一起做 Python "
+"项目。您喜欢和他们一起工作,他们也喜欢和您一起工作。那个人问了您一个问题,你知道答案。你怎么回答?*这* 就是你应该如何写这个指南的方式。"
+
+#: ../source/contribute.rst:170
+msgid "Here's a quick check: try reading aloud to get a sense for your writing's voice and tone. Does it sound like something you would say or does it sound like you're acting out a part or giving a speech? Feel free to use contractions and don't worry about sticking to fussy grammar rules. You are hereby granted permission to end a sentence in a preposition, if that's what you want to end it with."
+msgstr ""
+"这里有一个快速检查:试着大声朗读以了解您写作的声音和语气。它听起来像您会说的话,还是听起来像您在演戏或发表演讲?随意使用缩略语,不要担心拘泥于繁琐的语法规"
+"则。您在此允许用介词来结束一个句子,如果这是您想结束它的话。"
+
+#: ../source/contribute.rst:177
+msgid "When writing the guide, adjust your tone for the seriousness and difficulty of the topic. If you're writing an introductory tutorial, it's OK to make a joke, but if you're covering a sensitive security recommendation, you might want to avoid jokes altogether."
+msgstr ""
+"在写指南时,根据主题的严肃性和难度调整你的语气。如果你写的是一个介绍性的教程,开个玩笑是可以的,但如果你涉及的是一个敏感的安全建议,你可能要完全避免玩笑。"
+
+#: ../source/contribute.rst:184
+msgid "Conventions and mechanics"
+msgstr "公约和机制"
+
+#: ../source/contribute.rst:192
+msgid "**Write to the reader**"
+msgstr "**写给读者**"
+
+#: ../source/contribute.rst:187
+msgid "When giving recommendations or steps to take, address the reader as *you* or use the imperative mood."
+msgstr "在提出建议或采取的步骤时,您应称呼读者为 *你* 或使用命令语气。"
+
+#: ../source/contribute.rst:0
+msgid "Wrong: To install it, the user runs…"
+msgstr "错误:要安装它,用户运行…"
+
+#: ../source/contribute.rst:0
+msgid "Right: You can install it by running…"
+msgstr "正确:您可以通过运行...来安装它"
+
+#: ../source/contribute.rst:0
+msgid "Right: To install it, run…"
+msgstr "正确:要安装它,请运行…"
+
+#: ../source/contribute.rst:198
+msgid "**State assumptions**"
+msgstr "**陈述假设**"
+
+#: ../source/contribute.rst:195
+msgid "Avoid making unstated assumptions. Reading on the web means that any page of the guide may be the first page of the guide that the reader ever sees. If you're going to make assumptions, then say what assumptions that you're going to make."
+msgstr "避免做出未说明的假设。在网上阅读意味着指南的任何一页都可能是读者所看到的指南的第一页。如果您要做假设,那就要说明您要做什么假设。"
+
+#: ../source/contribute.rst:203
+msgid "**Cross-reference generously**"
+msgstr "**慷慨地交叉参考**"
+
+#: ../source/contribute.rst:201
+msgid "The first time you mention a tool or practice, link to the part of the guide that covers it, or link to a relevant document elsewhere. Save the reader a search."
+msgstr "当你第一次提到一个工具或做法时,请链接到指南中涉及它的部分,或链接到其他地方的相关文件。这样可以为读者省去搜索的麻烦。"
+
+#: ../source/contribute.rst:213
+msgid "**Respect naming practices**"
+msgstr "**尊重命名的做法**"
+
+#: ../source/contribute.rst:206
+msgid "When naming tools, sites, people, and other proper nouns, use their preferred capitalization."
+msgstr "当给工具、网站、人和其他专有名词命名时,请使用它们的首选大写字母。"
+
+#: ../source/contribute.rst:0
+msgid "Wrong: Pip uses…"
+msgstr "错误:Pip 使用…"
+
+#: ../source/contribute.rst:0
+msgid "Right: pip uses…"
+msgstr "正确:pip 使用…"
+
+#: ../source/contribute.rst:0
+msgid "Wrong: …hosted on github."
+msgstr "错误:...托管在 github 上。"
+
+#: ../source/contribute.rst:0
+msgid "Right: …hosted on GitHub."
+msgstr "正确:……托管在 GitHub 上。"
+
+#: ../source/contribute.rst:222
+msgid "**Use a gender-neutral style**"
+msgstr "**使用中性风格**"
+
+#: ../source/contribute.rst:216
+msgid "Often, you'll address the reader directly with *you*, *your* and *yours*. Otherwise, use gender-neutral pronouns *they*, *their*, and *theirs* or avoid pronouns entirely."
+msgstr ""
+"通常,您会用 *you*、*your* 和 *yours* 来直接称呼读者。否则,请使用性别中立的代词 *they*、*their* 和 *theirs*"
+" ,或者完全避免使用代词。"
+
+#: ../source/contribute.rst:0
+msgid "Wrong: A maintainer uploads the file. Then he…"
+msgstr "错误:一个维护人员上传了文件。然后他…"
+
+#: ../source/contribute.rst:0
+msgid "Right: A maintainer uploads the file. Then they…"
+msgstr "正确:一个维护人员上传了文件。然后他们…"
+
+#: ../source/contribute.rst:0
+msgid "Right: A maintainer uploads the file. Then the maintainer…"
+msgstr "正确:A maintainer uploads the file. Then the maintainer…"
+
+#: ../source/contribute.rst:234
+msgid "**Headings**"
+msgstr "**标题**"
+
+#: ../source/contribute.rst:225
+msgid "Write headings that use words the reader is searching for. A good way to do this is to have your heading complete an implied question. For example, a reader might want to know *How do I install MyLibrary?* so a good heading might be *Install MyLibrary*."
+msgstr ""
+"写标题时要使用读者正在搜索的词。一个好方法是让你的标题完成一个隐含的问题。例如,读者可能想知道 *How do I install "
+"MyLibrary?*,所以一个好的标题可能是 *Install MyLibrary* 。"
+
+#: ../source/contribute.rst:230
+msgid "In section headings, use sentence case. In other words, write headings as you would write a typical sentence."
+msgstr "在章节标题中,使用句子大小写。换句话说,要像写一个典型的句子那样写标题。"
+
+#: ../source/contribute.rst:0
+msgid "Wrong: Things You Should Know About Python"
+msgstr "错误:Things You Should Know About Python"
+
+#: ../source/contribute.rst:0
+msgid "Right: Things you should know about Python"
+msgstr "正确:Things you should know about Python"
+
+#: ../source/contribute.rst:237
+msgid "**Numbers**"
+msgstr "**数字**"
+
+#: ../source/contribute.rst:237
+msgid "In body text, write numbers one through nine as words. For other numbers or numbers in tables, use numerals."
+msgstr "在正文中,将数字1到9写成单词。对于其他数字或表格中的数字,使用数字。"
+
+#: ../source/discussions/deploying-python-applications.rst:4
+msgid "Deploying Python applications"
+msgstr "部署 Python 应用程序"
+
+#: ../source/discussions/deploying-python-applications.rst:0
+#: ../source/guides/index-mirrors-and-caches.rst:0
+#: ../source/guides/installing-using-linux-tools.rst:0
+#: ../source/guides/packaging-binary-extensions.rst:0
+#: ../source/guides/supporting-multiple-python-versions.rst:0
+#: ../source/guides/supporting-windows-using-appveyor.rst:0
+msgid "Page Status"
+msgstr "页面状态"
+
+#: ../source/discussions/deploying-python-applications.rst:6
+#: ../source/guides/index-mirrors-and-caches.rst:7
+#: ../source/guides/installing-using-linux-tools.rst:7
+#: ../source/guides/packaging-binary-extensions.rst:7
+#: ../source/guides/supporting-multiple-python-versions.rst:7
+#: ../source/guides/supporting-windows-using-appveyor.rst:5
+msgid "Incomplete"
+msgstr "不完全的"
+
+#: ../source/discussions/deploying-python-applications.rst:0
+#: ../source/guides/index-mirrors-and-caches.rst:0
+#: ../source/guides/installing-using-linux-tools.rst:0
+#: ../source/guides/packaging-binary-extensions.rst:0
+#: ../source/guides/supporting-multiple-python-versions.rst:0
+#: ../source/guides/supporting-windows-using-appveyor.rst:0
+msgid "Last Reviewed"
+msgstr "最后审查"
+
+#: ../source/discussions/deploying-python-applications.rst:7
+msgid "2014-11-11"
+msgstr "2014-11-11"
+
+#: ../source/discussions/deploying-python-applications.rst:11
+#: ../source/discussions/install-requires-vs-requirements.rst:9
+#: ../source/guides/analyzing-pypi-package-downloads.rst:12
+#: ../source/guides/distributing-packages-using-setuptools.rst:22
+#: ../source/guides/index-mirrors-and-caches.rst:12
+#: ../source/guides/installing-scientific-packages.rst:9
+#: ../source/guides/packaging-binary-extensions.rst:17
+#: ../source/guides/supporting-multiple-python-versions.rst:12
+#: ../source/guides/supporting-windows-using-appveyor.rst:15
+#: ../source/overview.rst:23
+#: ../source/specifications/core-metadata.rst:38
+#: ../source/specifications/direct-url.rst:14
+#: ../source/tutorials/installing-packages.rst:23
+msgid "Contents"
+msgstr "内容"
+
+#: ../source/discussions/deploying-python-applications.rst:14
+msgid "Overview"
+msgstr "总览"
+
+#: ../source/discussions/deploying-python-applications.rst:18
+msgid "Supporting multiple hardware platforms"
+msgstr "支持多种硬件平台"
+
+#: ../source/discussions/deploying-python-applications.rst:40
+msgid "OS packaging & installers"
+msgstr "操作系统包装和安装程序"
+
+#: ../source/discussions/deploying-python-applications.rst:52
+msgid "Windows"
+msgstr "Windows系统"
+
+#: ../source/discussions/deploying-python-applications.rst:61
+msgid "Pynsist"
+msgstr "Pynsist"
+
+#: ../source/discussions/deploying-python-applications.rst:63
+msgid "`Pynsist `__ is a tool that bundles Python programs together with the Python-interpreter into a single installer based on NSIS. In most cases, packaging only requires the user to choose a version of the Python-interpreter and declare the dependencies of the program. The tool downloads the specified Python-interpreter for Windows and packages it with all the dependencies in a single Windows-executable installer."
+msgstr ""
+"`Pynsist `__ 是一个基于NSIS的单一安装程序,并将 Python "
+"程序与 Python 解释器捆绑在一起的工具。在大多数情况下,打包 (packaging) 只需要用户选择 Python 解释器的版本并声明程序的依赖性 "
+"(dependencies) 。该工具会下载用于 Windows 的 Python 解释器,并将其与所有依赖项打包成一个可在 Windows "
+"执行的安装程序。"
+
+#: ../source/discussions/deploying-python-applications.rst:70
+msgid "The installed program can be started from a shortcut that the installer adds to the start-menu. It uses a Python interpreter installed within its application directory, independent of any other Python installation on the computer."
+msgstr ""
+"安装的程序可以从安装程序添加到开始菜单的快捷方式启动。它使用一个安装在其应用程序目录中的Python解释器,与计算机上的任何其他 Python 安装无关。"
+
+#: ../source/discussions/deploying-python-applications.rst:74
+msgid "A big advantage of Pynsist is that the Windows packages can be built on Linux. There are several examples for different kinds of programs (console, GUI) in the `documentation `__. The tool is released under the MIT-licence."
+msgstr ""
+"Pynsist 的一大优势是可以在 Linux 上构建 Windows 软件包。在`文档 `__ 中,有几个不同类型程序(控制台、GUI)的例子。该工具是在 MIT 许可下发布的。"
+
+#: ../source/discussions/deploying-python-applications.rst:80
+msgid "Application bundles"
+msgstr "应用捆绑"
+
+#: ../source/discussions/deploying-python-applications.rst:91
+msgid "Configuration management"
+msgstr "配置管理"
+
+#: ../source/discussions/index.rst:4
+msgid "**Discussions** are focused on providing comprehensive information about a specific topic. If you're just trying to get stuff done, see :doc:`/guides/index`."
+msgstr ""
+"**讨论 (Discussions)** 的重点是提供关于特定主题的全面信息。如果您只是想把事情做好,请看 :doc:`/guides/index` 。"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:5
+msgid "install_requires vs requirements files"
+msgstr "install_requires 与 requirements files"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:12
+#: ../source/guides/distributing-packages-using-setuptools.rst:382
+msgid "install_requires"
+msgstr "install_requires"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:14
+msgid "``install_requires`` is a :ref:`setuptools` :file:`setup.py` keyword that should be used to specify what a project **minimally** needs to run correctly. When the project is installed by :ref:`pip`, this is the specification that is used to install its dependencies."
+msgstr ""
+"``install_requires`` 是一个 :ref:`setuptools` :file:`setup.py` 关键字,它应该用来指定一个项目 "
+"**最小** 需要正确运行的内容。当项目由 :ref:`pip` 安装时,这就是用来安装其依赖的规范。"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:19
+msgid "For example, if the project requires A and B, your ``install_requires`` would be like so:"
+msgstr "例如,如果项目需要 A 和 B ,您的 ``install_requires`` 会是这样的:"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:29
+msgid "Additionally, it's best practice to indicate any known lower or upper bounds."
+msgstr "此外,最好的做法是指出任何已知的下限或上限。"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:31
+msgid "For example, it may be known, that your project requires at least v1 of 'A', and v2 of 'B', so it would be like so:"
+msgstr "例如,您可能知道您的项目至少需要 'A' 的 v1 ,'B' 的 v2 ,所以它会是这样的:"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:41
+msgid "It may also be known that project A follows semantic versioning, and that v2 of 'A' will indicate a break in compatibility, so it makes sense to not allow v2:"
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:51
+msgid "It is not considered best practice to use ``install_requires`` to pin dependencies to specific versions, or to specify sub-dependencies (i.e. dependencies of your dependencies). This is overly-restrictive, and prevents the user from gaining the benefit of dependency upgrades."
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:56
+msgid "Lastly, it's important to understand that ``install_requires`` is a listing of \"Abstract\" requirements, i.e just names and version restrictions that don't determine where the dependencies will be fulfilled from (i.e. from what index or source). The where (i.e. how they are to be made \"Concrete\") is to be determined at install time using :ref:`pip` options. [1]_"
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:64
+#: ../source/tutorials/installing-packages.rst:460
+msgid "Requirements files"
+msgstr "Requirements files"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:66
+msgid ":ref:`Requirements Files ` described most simply, are just a list of :ref:`pip:pip install` arguments placed into a file."
+msgstr ""
+":ref:`Requirements Files ` 最简单的描述,只是放在文件中的 :ref:`pip:"
+"pip install` 参数列表。"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:69
+msgid "Whereas ``install_requires`` defines the dependencies for a single project, :ref:`Requirements Files ` are often used to define the requirements for a complete Python environment."
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:73
+msgid "Whereas ``install_requires`` requirements are minimal, requirements files often contain an exhaustive listing of pinned versions for the purpose of achieving :ref:`repeatable installations ` of a complete environment."
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:78
+msgid "Whereas ``install_requires`` requirements are \"Abstract\", i.e. not associated with any particular index, requirements files often contain pip options like ``--index-url`` or ``--find-links`` to make requirements \"Concrete\", i.e. associated with a particular index or directory of packages. [1]_"
+msgstr ""
+
+#: ../source/discussions/install-requires-vs-requirements.rst:84
+msgid "Whereas ``install_requires`` metadata is automatically analyzed by pip during an install, requirements files are not, and only are used when a user specifically installs them using ``python -m pip install -r``."
+msgstr ""
+"在安装过程中,``install_requires`` 元数据会被 pip 自动分析,而需求文件则不会,而它只有在用户使用 ``python -m "
+"pip install -r`` 专门安装时才会使用。"
+
+#: ../source/discussions/install-requires-vs-requirements.rst:90
+msgid "For more on \"Abstract\" vs \"Concrete\" requirements, see https://caremad.io/2013/07/setup-vs-requirement/."
+msgstr ""
+"关于 \"抽象 (Abstract) \"与 \"具体 (Concrete)\"要求的更多信息,请参阅 https://caremad.io/2013/"
+"07/setup-vs-requirement/ 。"
+
+#: ../source/discussions/pip-vs-easy-install.rst:6
+msgid "pip vs easy_install"
+msgstr "pip 与 easy_install"
+
+#: ../source/discussions/pip-vs-easy-install.rst:9
+msgid ":ref:`easy_install `, now `deprecated`_, was released in 2004 as part of :ref:`setuptools`. It was notable at the time for installing :term:`packages ` from :term:`PyPI ` using requirement specifiers, and automatically installing dependencies."
+msgstr ""
+
+#: ../source/discussions/pip-vs-easy-install.rst:14
+msgid ":ref:`pip` came later in 2008, as alternative to :ref:`easy_install `, although still largely built on top of :ref:`setuptools` components. It was notable at the time for *not* installing packages as :term:`Eggs ` or from :term:`Eggs ` (but rather simply as 'flat' packages from :term:`sdists `), and introducing the idea of :ref:`Requirements Files `, which gave users the power to easily replicate environments."
+msgstr ""
+
+#: ../source/discussions/pip-vs-easy-install.rst:22
+msgid "Here's a breakdown of the important differences between pip and the deprecated easy_install:"
+msgstr "下面是 pip 和被废弃的 easy_install 之间的重要区别的分类:"
+
+#: ../source/discussions/pip-vs-easy-install.rst:25
+msgid "**pip**"
+msgstr "**pip**"
+
+#: ../source/discussions/pip-vs-easy-install.rst:25
+msgid "**easy_install**"
+msgstr "**easy_install**"
+
+#: ../source/discussions/pip-vs-easy-install.rst:27
+msgid "Installs from :term:`Wheels `"
+msgstr "从 :term:`Wheels ` 安装"
+
+#: ../source/discussions/pip-vs-easy-install.rst:27
+#: ../source/discussions/pip-vs-easy-install.rst:38
+#: ../source/discussions/pip-vs-easy-install.rst:44
+#: ../source/discussions/pip-vs-easy-install.rst:48
+#: ../source/discussions/pip-vs-easy-install.rst:54
+#: ../source/discussions/pip-vs-easy-install.rst:57
+msgid "Yes"
+msgstr "有"
+
+#: ../source/discussions/pip-vs-easy-install.rst:27
+#: ../source/discussions/pip-vs-easy-install.rst:30
+#: ../source/discussions/pip-vs-easy-install.rst:32
+#: ../source/discussions/pip-vs-easy-install.rst:35
+#: ../source/discussions/pip-vs-easy-install.rst:38
+#: ../source/discussions/pip-vs-easy-install.rst:44
+#: ../source/discussions/pip-vs-easy-install.rst:48
+#: ../source/discussions/pip-vs-easy-install.rst:51
+#: ../source/discussions/pip-vs-easy-install.rst:54
+#: ../source/discussions/pip-vs-easy-install.rst:57
+msgid "No"
+msgstr "没有"
+
+#: ../source/discussions/pip-vs-easy-install.rst:30
+msgid "Uninstall Packages"
+msgstr "卸载软件包"
+
+#: ../source/discussions/pip-vs-easy-install.rst:30
+msgid "Yes (``python -m pip uninstall``)"
+msgstr "有(``python -m pip uninstall``)"
+
+#: ../source/discussions/pip-vs-easy-install.rst:32
+msgid "Dependency Overrides"
+msgstr "依赖性覆盖"
+
+#: ../source/discussions/pip-vs-easy-install.rst:32
+msgid "Yes (:ref:`Requirements Files `)"
+msgstr "有(:ref:`Requirements Files `)"
+
+#: ../source/discussions/pip-vs-easy-install.rst:35
+msgid "List Installed Packages"
+msgstr "列出已安装的软件包"
+
+#: ../source/discussions/pip-vs-easy-install.rst:35
+msgid "Yes (``python -m pip list`` and ``python -m pip freeze``)"
+msgstr "有(``python -m pip list`` and ``python -m pip freeze``)"
+
+#: ../source/discussions/pip-vs-easy-install.rst:38
+msgid ":pep:`438` Support"
+msgstr ":pep:`438` 支持"
+
+#: ../source/discussions/pip-vs-easy-install.rst:41
+msgid "Installation format"
+msgstr "安装格式"
+
+#: ../source/discussions/pip-vs-easy-install.rst:41
+msgid "'Flat' packages with :file:`egg-info` metadata."
+msgstr ""
+
+#: ../source/discussions/pip-vs-easy-install.rst:41
+msgid "Encapsulated Egg format"
+msgstr "封装的 Egg 格式"
+
+#: ../source/discussions/pip-vs-easy-install.rst:44
+msgid "sys.path modification"
+msgstr "sys.path 修改"
+
+#: ../source/discussions/pip-vs-easy-install.rst:48
+msgid "Installs from :term:`Eggs `"
+msgstr "从 :term:`Eggs ` 安装"
+
+#: ../source/discussions/pip-vs-easy-install.rst:51
+msgid "`pylauncher support`_"
+msgstr "`pylauncher 支持`_"
+
+#: ../source/discussions/pip-vs-easy-install.rst:51
+msgid "Yes [1]_"
+msgstr "有[1]_"
+
+#: ../source/discussions/pip-vs-easy-install.rst:54
+msgid ":ref:`Multi-version Installs`"
+msgstr ":ref:`Multi-version Installs`"
+
+#: ../source/discussions/pip-vs-easy-install.rst:57
+msgid "Exclude scripts during install"
+msgstr "安装时排除脚本"
+
+#: ../source/discussions/pip-vs-easy-install.rst:60
+msgid "per project index"
+msgstr "每个项目索引"
+
+#: ../source/discussions/pip-vs-easy-install.rst:60
+msgid "Only in virtualenv"
+msgstr "仅在 virtualenv 中"
+
+#: ../source/discussions/pip-vs-easy-install.rst:60
+msgid "Yes, via setup.cfg"
+msgstr "有,通过 setup.cfg"
+
+#: ../source/discussions/pip-vs-easy-install.rst:68
+msgid "https://setuptools.readthedocs.io/en/latest/easy_install.html#natural-script-launcher"
+msgstr ""
+"https://setuptools.readthedocs.io/en/latest/easy_install.html#natural-script-"
+"launcher"
+
+#: ../source/discussions/wheel-vs-egg.rst:5
+msgid "Wheel vs Egg"
+msgstr "Wheel 与 Egg"
+
+#: ../source/discussions/wheel-vs-egg.rst:7
+msgid ":term:`Wheel` and :term:`Egg` are both packaging formats that aim to support the use case of needing an install artifact that doesn't require building or compilation, which can be costly in testing and production workflows."
+msgstr ""
+":term:`Wheel` 和 :term:`Egg` 都是打包格式,旨在支持不需要构建或编译的安装工件的使用情况,这在测试和生产工作流程中可能是昂贵的。"
+
+#: ../source/discussions/wheel-vs-egg.rst:11
+msgid "The :term:`Egg` format was introduced by :ref:`setuptools` in 2004, whereas the :term:`Wheel` format was introduced by :pep:`427` in 2012."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:14
+msgid ":term:`Wheel` is currently considered the standard for :term:`built ` and :term:`binary ` packaging for Python."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:17
+msgid "Here's a breakdown of the important differences between :term:`Wheel` and :term:`Egg`."
+msgstr "下面是关于 :term: `Wheel` 和 :term: `Egg` 之间的重要区别。"
+
+#: ../source/discussions/wheel-vs-egg.rst:20
+msgid ":term:`Wheel` has an :pep:`official PEP <427>`. :term:`Egg` did not."
+msgstr ":term:`Wheel` 有一个 :pep:`official PEP <427>` 。 :term:`Egg` 没有。"
+
+#: ../source/discussions/wheel-vs-egg.rst:22
+msgid ":term:`Wheel` is a :term:`distribution ` format, i.e a packaging format. [1]_ :term:`Egg` was both a distribution format and a runtime installation format (if left zipped), and was designed to be importable."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:26
+msgid ":term:`Wheel` archives do not include .pyc files. Therefore, when the distribution only contains Python files (i.e. no compiled extensions), and is compatible with Python 2 and 3, it's possible for a wheel to be \"universal\", similar to an :term:`sdist `."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:31
+msgid ":term:`Wheel` uses :pep:`PEP376-compliant <376>` ``.dist-info`` directories. Egg used ``.egg-info``."
+msgstr ""
+":term:`Wheel` 使用 :pep:`PEP376-compliant <376>```.dist-info`` 目录。 Egg 使用 "
+"``.egg-info`` 。"
+
+#: ../source/discussions/wheel-vs-egg.rst:34
+msgid ":term:`Wheel` has a :pep:`richer file naming convention <425>`. A single wheel archive can indicate its compatibility with a number of Python language versions and implementations, ABIs, and system architectures."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:38
+msgid ":term:`Wheel` is versioned. Every wheel file contains the version of the wheel specification and the implementation that packaged it."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:41
+msgid ":term:`Wheel` is internally organized by `sysconfig path type `_, therefore making it easier to convert to other formats."
+msgstr ""
+
+#: ../source/discussions/wheel-vs-egg.rst:47
+msgid "Circumstantially, in some cases, wheels can be used as an importable runtime format, although :pep:`this is not officially supported at this time <427#is-it-possible-to-import-python-code-directly-from-a-wheel-file>`."
+msgstr ""
+
+#: ../source/glossary.rst:3
+msgid "Glossary"
+msgstr "词汇表"
+
+#: ../source/glossary.rst:8
+msgid "Binary Distribution"
+msgstr ""
+
+#: ../source/glossary.rst:11
+msgid "A specific kind of :term:`Built Distribution` that contains compiled extensions."
+msgstr ""
+
+#: ../source/glossary.rst:14
+msgid "Built Distribution"
+msgstr ""
+
+#: ../source/glossary.rst:17
+msgid "A :term:`Distribution ` format containing files and metadata that only need to be moved to the correct location on the target system, to be installed. :term:`Wheel` is such a format, whereas distutil's :term:`Source Distribution ` is not, in that it requires a build step before it can be installed. This format does not imply that Python files have to be precompiled (:term:`Wheel` intentionally does not include compiled Python files)."
+msgstr ""
+
+#: ../source/glossary.rst:26
+msgid "Distribution Package"
+msgstr "分发软件包"
+
+#: ../source/glossary.rst:29
+msgid "A versioned archive file that contains Python :term:`packages `, :term:`modules `, and other resource files that are used to distribute a :term:`Release`. The archive file is what an end-user will download from the internet and install."
+msgstr ""
+
+#: ../source/glossary.rst:34
+msgid "A distribution package is more commonly referred to with the single words \"package\" or \"distribution\", but this guide may use the expanded term when more clarity is needed to prevent confusion with an :term:`Import Package` (which is also commonly called a \"package\") or another kind of distribution (e.g. a Linux distribution or the Python language distribution), which are often referred to with the single term \"distribution\"."
+msgstr ""
+
+#: ../source/glossary.rst:41
+msgid "Egg"
+msgstr "Egg"
+
+#: ../source/glossary.rst:44
+msgid "A :term:`Built Distribution` format introduced by :ref:`setuptools`, which is being replaced by :term:`Wheel`. For details, see `The Internal Structure of Python Eggs `_ and `Python Eggs `_"
+msgstr ""
+
+#: ../source/glossary.rst:49
+msgid "Extension Module"
+msgstr "扩展模块"
+
+#: ../source/glossary.rst:52
+msgid "A :term:`Module` written in the low-level language of the Python implementation: C/C++ for Python, Java for Jython. Typically contained in a single dynamically loadable pre-compiled file, e.g. a shared object (.so) file for Python extensions on Unix, a DLL (given the .pyd extension) for Python extensions on Windows, or a Java class file for Jython extensions."
+msgstr ""
+
+#: ../source/glossary.rst:59
+msgid "Known Good Set (KGS)"
+msgstr ""
+
+#: ../source/glossary.rst:62
+msgid "A set of distributions at specified versions which are compatible with each other. Typically a test suite will be run which passes all tests before a specific set of packages is declared a known good set. This term is commonly used by frameworks and toolkits which are comprised of multiple individual distributions."
+msgstr ""
+
+#: ../source/glossary.rst:68
+msgid "Import Package"
+msgstr "导入包"
+
+#: ../source/glossary.rst:71
+msgid "A Python module which can contain other modules or recursively, other packages."
+msgstr ""
+
+#: ../source/glossary.rst:74
+msgid "An import package is more commonly referred to with the single word \"package\", but this guide will use the expanded term when more clarity is needed to prevent confusion with a :term:`Distribution Package` which is also commonly called a \"package\"."
+msgstr ""
+
+#: ../source/glossary.rst:78
+msgid "Module"
+msgstr "模块(Module)"
+
+#: ../source/glossary.rst:81
+msgid "The basic unit of code reusability in Python, existing in one of two types: :term:`Pure Module`, or :term:`Extension Module`."
+msgstr ""
+
+#: ../source/glossary.rst:84
+msgid "Package Index"
+msgstr "包索引 (Package Index)"
+
+#: ../source/glossary.rst:87
+msgid "A repository of distributions with a web interface to automate :term:`package ` discovery and consumption."
+msgstr ""
+
+#: ../source/glossary.rst:90
+msgid "Per Project Index"
+msgstr ""
+
+#: ../source/glossary.rst:93
+msgid "A private or other non-canonical :term:`Package Index` indicated by a specific :term:`Project` as the index preferred or required to resolve dependencies of that project."
+msgstr ""
+
+#: ../source/glossary.rst:97
+msgid "Project"
+msgstr "项目 (Project)"
+
+#: ../source/glossary.rst:100
+msgid "A library, framework, script, plugin, application, or collection of data or other resources, or some combination thereof that is intended to be packaged into a :term:`Distribution `."
+msgstr ""
+
+#: ../source/glossary.rst:104
+msgid "Since most projects create :term:`Distributions ` using either :pep:`518` ``build-system``, :ref:`distutils` or :ref:`setuptools`, another practical way to define projects currently is something that contains a :term:`pyproject.toml`, :term:`setup.py`, or :term:`setup.cfg` file at the root of the project source directory."
+msgstr ""
+
+#: ../source/glossary.rst:110
+msgid "Python projects must have unique names, which are registered on :term:`PyPI `. Each project will then contain one or more :term:`Releases `, and each release may comprise one or more :term:`distributions `."
+msgstr ""
+"Python 项目必须具有独特且唯一的名称,这些名字可以在 :term:`PyPI ` 上注册。"
+"然后每个项目将包含一个或多个 :term:`发布` ,每个版本可能包括一个或多个 :term:`套件 ` 。"
+
+#: ../source/glossary.rst:115
+msgid "Note that there is a strong convention to name a project after the name of the package that is imported to run that project. However, this doesn't have to hold true. It's possible to install a distribution from the project 'foo' and have it provide a package importable only as 'bar'."
+msgstr ""
+
+#: ../source/glossary.rst:121
+msgid "Pure Module"
+msgstr "纯模块 (Pure Module)"
+
+#: ../source/glossary.rst:124
+msgid "A :term:`Module` written in Python and contained in a single ``.py`` file (and possibly associated ``.pyc`` and/or ``.pyo`` files)."
+msgstr ""
+
+#: ../source/glossary.rst:127
+msgid "Python Packaging Authority (PyPA)"
+msgstr "Python 包装管理局 (PyPA)"
+
+#: ../source/glossary.rst:130
+msgid "PyPA is a working group that maintains many of the relevant projects in Python packaging. They maintain a site at https://www.pypa.io, host projects on `GitHub `_ and `Bitbucket `_, and discuss issues on the `distutils-sig mailing list `_ and `the Python Discourse forum `__."
+msgstr ""
+"PyPA 是一个工作小组,负责维护 Python 包装中的许多相关项目。他们在 https://www.pypa.io,`GitHub "
+"`_ 和`Bitbucket `_ 上托管项目,"
+"并在 `distutils-sig 邮件列表 `_ 和 `Python Discourse 论坛 `__ 上讨论问题。"
+
+#: ../source/glossary.rst:139
+msgid "Python Package Index (PyPI)"
+msgstr "Python 包索引 (PyPI)"
+
+#: ../source/glossary.rst:142
+msgid "`PyPI `_ is the default :term:`Package Index` for the Python community. It is open to all Python developers to consume and distribute their distributions."
+msgstr ""
+"`PyPI `_ 是 Python 社区的默认 :term:`包索引 (Package Index)` 。所有 "
+"Python 开发人员都可以使用和分发他们的发行版。"
+
+#: ../source/glossary.rst:145
+msgid "pypi.org"
+msgstr "pypi.org"
+
+#: ../source/glossary.rst:148
+msgid "`pypi.org `_ is the domain name for the :term:`Python Package Index (PyPI)`. It replaced the legacy index domain name, ``pypi.python.org``, in 2017. It is powered by :ref:`warehouse`."
+msgstr ""
+
+#: ../source/glossary.rst:152
+msgid "pyproject.toml"
+msgstr "pyproject.toml"
+
+#: ../source/glossary.rst:155
+msgid "The tool-agnostic :term:`Project` specification file. Defined in :pep:`518`."
+msgstr ""
+
+#: ../source/glossary.rst:157
+msgid "Release"
+msgstr ""
+
+#: ../source/glossary.rst:160
+msgid "A snapshot of a :term:`Project` at a particular point in time, denoted by a version identifier."
+msgstr ""
+
+#: ../source/glossary.rst:163
+msgid "Making a release may entail the publishing of multiple :term:`Distributions `. For example, if version 1.0 of a project was released, it could be available in both a source distribution format and a Windows installer distribution format."
+msgstr ""
+
+#: ../source/glossary.rst:168
+msgid "Requirement"
+msgstr ""
+
+#: ../source/glossary.rst:171
+msgid "A specification for a :term:`package ` to be installed. :ref:`pip`, the :term:`PYPA ` recommended installer, allows various forms of specification that can all be considered a \"requirement\". For more information, see the :ref:`pip:pip install` reference."
+msgstr ""
+
+#: ../source/glossary.rst:177
+msgid "Requirement Specifier"
+msgstr ""
+
+#: ../source/glossary.rst:180
+msgid "A format used by :ref:`pip` to install packages from a :term:`Package Index`. For an EBNF diagram of the format, see the `pkg_resources.Requirement `_ entry in the :ref:`setuptools` docs. For example, \"foo>=1.3\" is a requirement specifier, where \"foo\" is the project name, and the \">=1.3\" portion is the :term:`Version Specifier`"
+msgstr ""
+
+#: ../source/glossary.rst:187
+msgid "Requirements File"
+msgstr ""
+
+#: ../source/glossary.rst:190
+msgid "A file containing a list of :term:`Requirements ` that can be installed using :ref:`pip`. For more information, see the :ref:`pip` docs on :ref:`pip:Requirements Files`."
+msgstr ""
+
+#: ../source/glossary.rst:194
+#: ../source/guides/distributing-packages-using-setuptools.rst:56
+msgid "setup.py"
+msgstr "setup.py"
+
+#: ../source/glossary.rst:195
+#: ../source/guides/distributing-packages-using-setuptools.rst:77
+msgid "setup.cfg"
+msgstr "setup.cfg"
+
+#: ../source/glossary.rst:198
+msgid "The project specification files for :ref:`distutils` and :ref:`setuptools`. See also :term:`pyproject.toml`."
+msgstr ""
+
+#: ../source/glossary.rst:201
+msgid "Source Archive"
+msgstr ""
+
+#: ../source/glossary.rst:204
+msgid "An archive containing the raw source code for a :term:`Release`, prior to creation of a :term:`Source Distribution ` or :term:`Built Distribution`."
+msgstr ""
+
+#: ../source/glossary.rst:208
+msgid "Source Distribution (or \"sdist\")"
+msgstr "源代码分发(或“sdist”)"
+
+#: ../source/glossary.rst:211
+msgid "A :term:`distribution ` format (usually generated using ``python setup.py sdist``) that provides metadata and the essential source files needed for installing by a tool like :ref:`pip`, or for generating a :term:`Built Distribution`."
+msgstr ""
+
+#: ../source/glossary.rst:216
+msgid "System Package"
+msgstr "系统包 (System Package)"
+
+#: ../source/glossary.rst:219
+msgid "A package provided in a format native to the operating system, e.g. an rpm or dpkg file."
+msgstr ""
+
+#: ../source/glossary.rst:222
+msgid "Version Specifier"
+msgstr "版本说明符 (Version Specifier)"
+
+#: ../source/glossary.rst:225
+msgid "The version component of a :term:`Requirement Specifier`. For example, the \">=1.3\" portion of \"foo>=1.3\". :pep:`440` contains a :pep:`full specification <440#version-specifiers>` of the specifiers that Python packaging currently supports. Support for PEP440 was implemented in :ref:`setuptools` v8.0 and :ref:`pip` v6.0."
+msgstr ""
+
+#: ../source/glossary.rst:231
+msgid "Virtual Environment"
+msgstr "虚拟环境 (Virtual Environment)"
+
+#: ../source/glossary.rst:234
+msgid "An isolated Python environment that allows packages to be installed for use by a particular application, rather than being installed system wide. For more information, see the section on :ref:`Creating and using Virtual Environments`."
+msgstr ""
+
+#: ../source/glossary.rst:238
+msgid "Wheel"
+msgstr "Wheel"
+
+#: ../source/glossary.rst:241
+msgid "A :term:`Built Distribution` format introduced by :pep:`427`, which is intended to replace the :term:`Egg` format. Wheel is currently supported by :ref:`pip`."
+msgstr ""
+
+#: ../source/glossary.rst:244
+msgid "Working Set"
+msgstr "工作集 (Working Set)"
+
+#: ../source/glossary.rst:247
+msgid "A collection of :term:`distributions ` available for importing. These are the distributions that are on the `sys.path` variable. At most, one :term:`Distribution ` for a project is possible in a working set."
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:3
+msgid "Analyzing PyPI package downloads"
+msgstr "分析 PyPI 软件包的下载情况"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:5
+msgid "This section covers how to use the public PyPI download statistics dataset to learn more about downloads of a package (or packages) hosted on PyPI. For example, you can use it to discover the distribution of Python versions used to download a package."
+msgstr ""
+"本节介绍了如何使用公共的 PyPI 下载统计数据集来了解PyPI上托管的软件包 (packages) 的下载情况。例如,您可以用它来发现用于下载软件包的 "
+"Python 版本的分布。"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:15
+#: ../source/guides/supporting-windows-using-appveyor.rst:18
+msgid "Background"
+msgstr "背景"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:17
+msgid "PyPI does not display download statistics for a number of reasons: [#]_"
+msgstr "由于一些原因,PyPI 不显示下载统计数据。[#]_"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:19
+msgid "**Inefficient to make work with a Content Distribution Network (CDN):** Download statistics change constantly. Including them in project pages, which are heavily cached, would require invalidating the cache more often, and reduce the overall effectiveness of the cache."
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:24
+msgid "**Highly inaccurate:** A number of things prevent the download counts from being accurate, some of which include:"
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:27
+msgid "``pip``'s download cache (lowers download counts)"
+msgstr "``pip`` 的下载缓存(降低下载次数)"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:28
+msgid "Internal or unofficial mirrors (can both raise or lower download counts)"
+msgstr "内部或非官方的镜像(既可以提高也可以降低下载量)"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:29
+msgid "Packages not hosted on PyPI (for comparisons sake)"
+msgstr "未在 PyPI 上托管的软件包(为了比较)"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:30
+msgid "Unofficial scripts or attempts at download count inflation (raises download counts)"
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:32
+msgid "Known historical data quality issues (lowers download counts)"
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:34
+msgid "**Not particularly useful:** Just because a project has been downloaded a lot doesn't mean it's good; Similarly just because a project hasn't been downloaded a lot doesn't mean it's bad!"
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:38
+msgid "In short, because it's value is low for various reasons, and the tradeoffs required to make it work are high, it has been not an effective use of limited resources."
+msgstr ""
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:43
+msgid "Public dataset"
+msgstr "公共数据集"
+
+#: ../source/guides/analyzing-pypi-package-downloads.rst:45
+msgid "As an alternative, the `Linehaul project