From ac087f723dd2eec6bf70edefebda8eb23504d15f Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Sat, 27 Oct 2018 22:14:40 +0200 Subject: [PATCH] Hide deprecated rcParams from rcParams.__iter__. This avoids triggering a DeprecationWarning just from iterating over rcParams. --- lib/matplotlib/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py index 8990602577bd..e46396aba92a 100644 --- a/lib/matplotlib/__init__.py +++ b/lib/matplotlib/__init__.py @@ -885,7 +885,9 @@ def __str__(self): def __iter__(self): """Yield sorted list of keys.""" - yield from sorted(dict.__iter__(self)) + return (k for k in sorted(dict.__iter__(self)) + if k not in [*_deprecated_map, *_deprecated_ignore_map, + 'examples.directory']) def __len__(self): return dict.__len__(self) @@ -907,8 +909,7 @@ def find_all(self, pattern): if pattern_re.search(key)) def copy(self): - return {k: dict.__getitem__(self, k) - for k in self} + return {k: dict.__getitem__(self, k) for k in self} def rc_params(fail_on_error=False):