Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions source/guides/multi-version-installs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,3 @@ time, but that approach does mean that standard command line invocations of
the affected tools can't be used - it's necessary to write a custom
wrapper script or use ``python3 -c '<command>'`` to invoke the application's
main entry point directly.

Refer to the `pkg_resources documentation
<https://setuptools.readthedocs.io/en/latest/pkg_resources.html#workingset-objects>`__
for more details.
26 changes: 12 additions & 14 deletions source/guides/packaging-namespace-packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,7 @@ Legacy namespace packages

These two methods, that were used to create namespace packages prior to :pep:`420`,
are now considered to be obsolete and should not be used unless you need compatibility
with packages already using this method. Also, :doc:`pkg_resources <setuptools:pkg_resources>`
has been deprecated.
with packages already using one of these methods.

To migrate an existing package, all packages sharing the namespace must be migrated simultaneously.

Expand All @@ -176,7 +175,7 @@ pkgutil-style namespace packages
Python 2.3 introduced the :doc:`pkgutil <python:library/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.
was the recommended approach for the highest level of compatibility.

To create a pkgutil-style namespace package, you need to provide an
:file:`__init__.py` file for the namespace package:
Expand Down Expand Up @@ -216,10 +215,17 @@ in the `pkgutil namespace example project`_.
pkg_resources-style namespace packages
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

:doc:`Setuptools <setuptools:index>` provides the `pkg_resources.declare_namespace`_ function and
.. warning::

The information in this section is obsolete and is no longer functional
(as of Setuptools 82.0.0). It is only retained for historical reference.

``pkg_resources`` has been deprecated and was fully removed in Setuptools 82.0.0.

:doc:`Setuptools <setuptools:index>` previously provided the ``pkg_resources.declare_namespace`` function and
the ``namespace_packages`` argument to :func:`~setuptools.setup`. Together
these can be used to declare namespace packages. While this approach is no
longer recommended, it is widely present in most existing namespace packages.
these could be used to declare namespace packages. While this approach is no
supported, it may still be encountered in environments using older ``setuptools`` versions.
If you are creating a new distribution within an existing namespace package that
uses this method then it's recommended to continue using this as the different
methods are not cross-compatible and it's not advisable to try to migrate an
Expand Down Expand Up @@ -281,11 +287,3 @@ to :func:`~setuptools.setup` in :file:`setup.py`. For example:
packages=find_packages()
namespace_packages=['mynamespace']
)

A complete working example of two pkg_resources-style namespace packages can be found
in the `pkg_resources namespace example project`_.

.. _pkg_resources.declare_namespace:
https://setuptools.readthedocs.io/en/latest/pkg_resources.html#namespace-package-support
.. _pkg_resources namespace example project:
https://github.com/pypa/sample-namespace-packages/tree/master/pkg_resources