8000 Merge pull request #29673 from tacaswell/doc/namespace_incompatibility · fedora-python/matplotlib@cfe41d4 · GitHub
[go: up one dir, main page]

Skip to content

Commit cfe41d4

Browse files
authored
Merge pull request matplotlib#29673 from tacaswell/doc/namespace_incompatibility
DOC: document the issues with overlaying new mpl on old mpl
2 parents d7c4fb0 + 3f1b7f7 commit cfe41d4

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

doc/api/prev_api_changes/api_changes_3.8.0/behaviour.rst

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,3 +171,22 @@ saved.
171171

172172
Previously, *mincnt* was inclusive with no *C* provided but exclusive when *C* is provided.
173173
It is now inclusive of *mincnt* in both cases.
174+
175+
176+
``matplotlib.mpl_toolkits`` is now an implicit namespace package
177+
----------------------------------------------------------------
178+
179+
Following the deprecation of ``pkg_resources.declare_namespace`` in ``setuptools`` 67.3.0,
180+
``matplotlib.mpl_toolkits`` is now implemented as an implicit namespace, following
181+
`PEP 420 <https://peps.python.org/pep-0420/>`_.
182+
183+
As a consequence using ``pip`` to install a version of Matplotlib >= 3.8 on top
184+
of a version of Matplotlib < 3.8 (e.g. via ``pip install --local`` or
185+
``python -m venv --system-site-packages ...``) will fail because the old
186+
``matplotlib.mpl_toolkits`` files will be found whereas the newer files will be
187+
found for all other modules. This will result in errors due to the version
188+
mismatch.
189+
190+
To avoid this issue you need to avoid having multiple versions of Matplotlib
191+
in different entries of ``sys.path``. Either uninstall Matplotlib
192+
at the system level or use a more isolated virtual environment.

0 commit comments

Comments
 (0)
0