Skip to content

Commit ee26217

Browse files
authored
Merge pull request #15210 from anntzer/unusedimports
Explicitly list allowed "unused" imports, remove the rest.
2 parents 2c1d1c9 + a7ccc22 commit ee26217

36 files changed

+48
-73
lines changed

.flake8

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ ignore =
77
E265, E266,
88
E305, E306,
99
E722, E741,
10-
F401, F403, F811, F841,
10+
F811, F841,
1111
# Some new flake8 ignores:
1212
N801, N802, N803, N806, N812,
1313
# pydocstyle
@@ -31,20 +31,49 @@ exclude =
3131
per-file-ignores =
3232
setup.py: E402
3333
setupext.py: E501
34+
tests.py: F401
3435

3536
tools/subset.py: E221, E251, E261, E302, E501
3637

38+
lib/matplotlib/__init__.py: F401
3739
lib/matplotlib/_cm.py: E202, E203, E302
3840
lib/matplotlib/_mathtext_data.py: E203, E261
41+
lib/matplotlib/animation.py: F401
42+
lib/matplotlib/axes/__init__.py: F401, F403
43+
lib/matplotlib/axes/_axes.py: F401
44+
lib/matplotlib/backends/backend_*.py: F401
45+
lib/matplotlib/backends/qt_editor/formlayout.py: F401, F403
46+
lib/matplotlib/cbook/__init__.py: F401
47+
lib/matplotlib/figure.py: F401
3948
lib/matplotlib/font_manager.py: E221, E251, E501
49+
lib/matplotlib/image.py: F401, F403
50+
lib/matplotlib/lines.py: F401
4051
lib/matplotlib/mathtext.py: E221, E251
52+
lib/matplotlib/pylab.py: F401, F403
53+
lib/matplotlib/pyplot.py: F401
4154
lib/matplotlib/rcsetup.py: E501
55+
lib/matplotlib/style/__init__.py: F401
56+
lib/matplotlib/testing/conftest.py: F401
57+
lib/matplotlib/testing/compare.py: F401
58+
lib/matplotlib/testing/decorators.py: F401
59+
lib/matplotlib/tests/conftest.py: F401
60+
lib/matplotlib/tests/test_backend_qt.py: F401
4261
lib/matplotlib/tests/test_mathtext.py: E501
62+
lib/matplotlib/text.py: F401
4363
lib/matplotlib/transforms.py: E201, E202, E203
64+
lib/matplotlib/tri/__init__.py: F401, F403
4465
lib/matplotlib/tri/triinterpolate.py: E201, E221
45-
66+
lib/mpl_toolkits/axes_grid/*: F401, F403
67+
lib/mpl_toolkits/axes_grid1/__init__.py: F401
4668
lib/mpl_toolkits/axes_grid1/axes_size.py: E272
69+
lib/mpl_toolkits/axisartist/__init__.py: F401
4770
lib/mpl_toolkits/axisartist/angle_helper.py: E221
71+
lib/mpl_toolkits/axisartist/axes_divider.py: F401
72+
lib/mpl_toolkits/axisartist/axes_rgb.py: F401
73+
lib/mpl_toolkits/axisartist/axislines.py: F401
74+
lib/mpl_toolkits/mplot3d/__init__.py: F401
75+
lib/mpl_toolkits/tests/conftest.py: F401
76+
lib/pylab.py: F401, F403
4877

4978
doc/conf.py: E402, E501
5079
tutorials/advanced/path_tutorial.py: E402, E501

doc/sphinxext/missing_references.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from collections import defaultdict
1919
import json
2020
import logging
21-
from pathlib import Path, PosixPath
21+
from pathlib import Path
2222

2323
from docutils.utils import get_source_line
2424
from docutils import nodes

examples/lines_bars_and_markers/bar_stacked.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
bars.
1010
"""
1111

12-
import numpy as np
1312
import matplotlib.pyplot as plt
1413

1514

examples/lines_bars_and_markers/markevery_demo.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,10 @@
1717
1818
A slice or list/array can also be used with ``markevery`` to specify the
1919
markers to show.
20-
2120
"""
2221

2322
import numpy as np
2423
import matplotlib.pyplot as plt
25-
import matplotlib.gridspec as gridspec
2624

2725
# define a list of markevery cases to plot
2826
cases = [None,

examples/misc/load_converter.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"""
99

1010
import dateutil.parser
11-
from matplotlib import cbook, dates
11+
from matplotlib import cbook
1212
import matplotlib.pyplot as plt
1313
import numpy as np
1414

examples/misc/logos2.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@
77
"""
88

99
import numpy as np
10-
import matplotlib as mpl
1110
import matplotlib.pyplot as plt
1211
import matplotlib.cm as cm
1312
import matplotlib.font_manager
14-
from matplotlib.patches import Circle, Rectangle, PathPatch
13+
from matplotlib.patches import Rectangle, PathPatch
1514
from matplotlib.textpath import TextPath
1615
import matplotlib.transforms as mtrans
1716

examples/mplot3d/polys3d.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
from matplotlib.collections import PolyCollection
1212
import matplotlib.pyplot as plt
13-
from matplotlib import colors as mcolors
1413
import numpy as np
1514

1615
# Fixing random state for reproducibility

examples/subplots_axes_and_figures/secondary_axis.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,7 @@
1515
import numpy as np
1616
import datetime
1717
import matplotlib.dates as mdates
18-
from matplotlib.transforms import Transform
19-
from matplotlib.ticker import (
20-
AutoLocator, AutoMinorLocator)
18+
from matplotlib.ticker import AutoMinorLocator
2119

2220
fig, ax = plt.subplots(constrained_layout=True)
2321
x = np.arange(0, 360, 1)

lib/matplotlib/afm.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939

4040

4141
from ._mathtext_data import uni2type1
42-
from matplotlib.cbook import deprecated
4342

4443

4544
_log = logging.getLogger(__name__)

lib/matplotlib/backend_bases.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@
4545

4646
import numpy as np
4747

48-
import matplotlib as mpl
4948
from matplotlib import (
5049
backend_tools as tools, cbook, colors, textpath, tight_bbox, transforms,
5150
widgets, get_backend, is_interactive, rcParams)

lib/matplotlib/backends/__init__.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
import importlib
21
import logging
32
import os
43
import sys
54

6-
import matplotlib
7-
from matplotlib import cbook
8-
from matplotlib.backend_bases import _Backend
9-
105
_log = logging.getLogger(__name__)
116

127

lib/matplotlib/backends/backend_nbagg.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@
1919

2020
from matplotlib import cbook, is_interactive
2121
from matplotlib._pylab_helpers import Gcf
22-
from matplotlib.backend_bases import (
23-
_Backend, FigureCanvasBase, NavigationToolbar2)
22+
from matplotlib.backend_bases import _Backend, NavigationToolbar2
2423
from matplotlib.backends.backend_webagg_core import (
2524
FigureCanvasWebAggCore, FigureManagerWebAgg, NavigationToolbar2WebAgg,
2625
TimerTornado)

lib/matplotlib/backends/backend_wxcairo.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
import wx
1+
import wx.lib.wxcairo as wxcairo
22

33
from .backend_cairo import cairo, FigureCanvasCairo, RendererCairo
44
from .backend_wx import (
55
_BackendWx, _FigureCanvasWxBase, FigureFrameWx,
66
NavigationToolbar2Wx as NavigationToolbar2WxCairo)
7-
import wx.lib.wxcairo as wxcairo
87

98

109
class FigureFrameWxCairo(FigureFrameWx):

lib/matplotlib/backends/qt_editor/figureoptions.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33
# see the Matplotlib licenses directory for a copy of the license
44

55

6-
"""Module that provides a GUI-based editor for matplotlib's figure options."""
6+
"""Module that provides a GUI-based editor for Matplotlib's figure options."""
77

88
import re
99

10-
import matplotlib
1110
from matplotlib import cbook, cm, colors as mcolors, markers, image as mimage
1211
from matplotlib.backends.qt_compat import QtGui
1312
from matplotlib.backends.qt_editor import _formlayout

lib/matplotlib/cbook/__init__.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,16 @@
22
A collection of utility functions and classes. Originally, many
33
(but not all) were from the Python Cookbook -- hence the name cbook.
44
5-
This module is safe to import from anywhere within matplotlib;
6-
it imports matplotlib only at runtime.
5+
This module is safe to import from anywhere within Matplotlib;
6+
it imports Matplotlib only at runtime.
77
"""
88

99
import collections
1010
import collections.abc
1111
import contextlib
1212
import functools
13-
import glob
1413
import gzip
1514
import itertools
16-
import locale
17-
import numbers
1815
import operator
1916
import os
2017
from pathlib import Path

lib/matplotlib/dates.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,6 @@
138138
import math
139139
import re
140140
import time
141-
import warnings
142141

143142
from dateutil.rrule import (rrule, MO, TU, WE, TH, FR, SA, SU, YEARLY,
144143
MONTHLY, WEEKLY, DAILY, HOURLY, MINUTELY,

lib/matplotlib/markers.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,6 @@
145145
"""
146146

147147
from collections.abc import Sized
148-
from numbers import Number
149148

150149
import numpy as np
151150

@@ -372,7 +371,6 @@ def _set_mathtext_path(self):
372371
Submitted by tcb
373372
"""
374373
from matplotlib.text import TextPath
375-
from matplotlib.font_manager import FontProperties
376374

377375
# again, the properties could be initialised just once outside
378376
# this function

lib/matplotlib/pyplot.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,11 @@
6161
from matplotlib.patches import Polygon, Rectangle, Circle, Arrow
6262
from matplotlib.widgets import SubplotTool, Button, Slider, Widget
6363

64-
from .ticker import TickHelper, Formatter, FixedFormatter, NullFormatter,\
65-
FuncFormatter, FormatStrFormatter, ScalarFormatter,\
66-
LogFormatter, LogFormatterExponent, LogFormatterMathtext,\
67-
Locator, IndexLocator, FixedLocator, NullLocator,\
68-
LinearLocator, LogLocator, AutoLocator, MultipleLocator,\
69-
MaxNLocator
64+
from .ticker import (
65+
TickHelper, Formatter, FixedFormatter, NullFormatter, FuncFormatter,
66+
FormatStrFormatter, ScalarFormatter, LogFormatter, LogFormatterExponent,
67+
LogFormatterMathtext, Locator, IndexLocator, FixedLocator, NullLocator,
68+
LinearLocator, LogLocator, AutoLocator, MultipleLocator, MaxNLocator)
7069
from matplotlib.backends import _get_running_interactive_framework
7170

7271
_log = logging.getLogger(__name__)
@@ -220,7 +219,7 @@ def switch_backend(newbackend):
220219

221220
backend_mod = importlib.import_module(backend_name)
222221
Backend = type(
223-
"Backend", (matplotlib.backends._Backend,), vars(backend_mod))
222+
"Backend", (matplotlib.backend_bases._Backend,), vars(backend_mod))
224223
_log.debug("Loaded backend %s version %s.",
225224
newbackend, Backend.backend_version)
226225

lib/matplotlib/testing/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
"""
22
Helper functions for testing.
33
"""
4+
45
import locale
56
import logging
6-
import sys
7-
import warnings
87

98
import matplotlib as mpl
109
from matplotlib import cbook

lib/matplotlib/testing/compare.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import matplotlib as mpl
1919
from matplotlib.testing.exceptions import ImageComparisonFailure
20-
from matplotlib import cbook
2120

2221
__all__ = ['compare_images', 'comparable_formats']
2322

lib/matplotlib/testing/jpl_units/EpochConverter.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
"""EpochConverter module containing class EpochConverter."""
22

3-
import numpy as np
4-
53
from matplotlib import cbook
64
import matplotlib.units as units
75
import matplotlib.dates as date_ticker

lib/matplotlib/testing/jpl_units/UnitDblConverter.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,6 @@ def convert(value, unit, axis):
8181
= RETURN VALUE
8282
- Returns the value parameter converted to floats.
8383
"""
84-
# Delay-load due to circular dependencies.
85-
import matplotlib.testing.jpl_units as U
86-
8784
if not cbook.is_scalar_or_string(value):
8885
return [UnitDblConverter.convert(x, unit, axis) for x in value]
8986
# If the incoming value behaves like a number,

lib/matplotlib/tests/test_axes.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from collections import namedtuple
22
from itertools import product
3-
from distutils.version import LooseVersion
43
import io
54
import platform
65

lib/matplotlib/tests/test_backend_cairo.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,8 @@
11
import numpy as np
2-
from io import BytesIO
3-
import os
4-
import tempfile
5-
import warnings
62

73
import pytest
84

9-
import matplotlib.pyplot as plt
105
from matplotlib.testing.decorators import check_figures_equal
11-
import matplotlib
126
from matplotlib import (
137
collections as mcollections, patches as mpatches, path as mpath)
148

lib/matplotlib/tests/test_backend_ps.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import io
2-
import os
32
from pathlib import Path
4-
import re
53
import tempfile
64

75
import pytest

lib/matplotlib/tests/test_backend_qt.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,6 @@ def test_double_resize():
299299
def test_canvas_reinit():
300300
import matplotlib.pyplot as plt
301301
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg
302-
from functools import partial
303302

304303
called = False
305304

lib/matplotlib/tests/test_basic.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
import sys
55
import textwrap
66

7-
import matplotlib
8-
97

108
def test_simple():
119
assert 1 + 1 == 2

lib/matplotlib/tests/test_colorbar.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from matplotlib.colors import (BoundaryNorm, LogNorm, PowerNorm, Normalize,
1111
DivergingNorm)
1212
from matplotlib.colorbar import ColorbarBase, _ColorbarLogLocator
13-
from matplotlib.ticker import LogLocator, LogFormatter, FixedLocator
13+
from matplotlib.ticker import FixedLocator
1414

1515

1616
def _get_cmap_norms():

lib/matplotlib/tests/test_dates.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import pytest
1111

1212
from matplotlib import rc_context
13-
from matplotlib.cbook import MatplotlibDeprecationWarning
1413
import matplotlib.dates as mdates
1514
import matplotlib.pyplot as plt
1615
from matplotlib.testing.decorators import image_comparison

lib/matplotlib/tests/test_legend.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import matplotlib.collections as mcollections
1313
from matplotlib.legend_handler import HandlerTuple
1414
import matplotlib.legend as mlegend
15-
from matplotlib.cbook.deprecation import MatplotlibDeprecationWarning
1615
from matplotlib import rc_context
1716

1817

lib/matplotlib/tests/test_patches.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
from numpy.testing import assert_almost_equal, assert_array_equal
66
import pytest
77

8-
from matplotlib.cbook import MatplotlibDeprecationWarning
98
from matplotlib.patches import Polygon, Rectangle, FancyArrowPatch
109
from matplotlib.testing.decorators import image_comparison, check_figures_equal
1110
import matplotlib.pyplot as plt

lib/matplotlib/tests/test_patheffects.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import numpy as np
2-
import pytest
32

43
from matplotlib.testing.decorators import image_comparison
54
import matplotlib.pyplot as plt

lib/matplotlib/tests/test_scale.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import numpy as np
88
from numpy.testing import assert_allclose
99
import io
10-
import platform
1110
import pytest
1211

1312

0 commit comments

Comments
 (0)