Skip to content

Commit ec7a731

Browse files
committed
Deprecate the TTFPATH & AFMPATH environment variables.
These undocumented environment variables allow one to selectively add paths to the font cache... but only if the font cache doesn't exist yet (they don't force cache regen). The font-cache regen API (_rebuild()) is also private (even though one can trigger it "publically" e.g. by calling `findfont` with a nonexisting font...). Instead, we now expose `addfont()` which is a documented API for registering fonts with the font manager.
1 parent af49c1b commit ec7a731

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

doc/api/next_api_changes/deprecations.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,3 +163,9 @@ This ticker is deprecated.
163163
*required*, *forbidden* and *allowed* parameters of `.cbook.normalize_kwargs`
164164
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
165165
These parameters are deprecated.
166+
167+
The ``TTFPATH`` and ``AFMPATH`` environment variables
168+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
169+
Support for the (undocumented) ``TTFPATH`` and ``AFMPATH`` environment
170+
variables is deprecated. Additional fonts may be registered using
171+
``matplotlib.font_manager.fontManager.addfont()``.

lib/matplotlib/font_manager.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -971,6 +971,9 @@ def __init__(self, size=None, weight='normal'):
971971
paths.extend(ttfpath.split(':'))
972972
else:
973973
paths.append(ttfpath)
974+
cbook.warn_deprecated(
975+
"3.3", name=pathname, obj_type="environment variable",
976+
alternative="FontManager.addfont()")
974977
_log.debug('font search path %s', str(paths))
975978
# Load TrueType fonts and create font dictionary.
976979

0 commit comments

Comments
 (0)