8000 remove OrderedDict dependency · matplotlib/matplotlib@fccafe9 · GitHub
[go: up one dir, main page]

Skip to content

Commit fccafe9

Browse files
committed
remove OrderedDict dependency
1 parent a9e864f commit fccafe9

File tree

1 file changed

+59
-70
lines changed

1 file changed

+59
-70
lines changed

setup.py

Lines changed: 59 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"""
55

66
from __future__ import print_function, absolute_import
7-
from collections import OrderedDict, namedtuple
87

98
# This needs to be the very first thing to use distribute
109
from distribute_setup import use_setuptools
1110
use_setuptools()
1211

1312
import sys
13+
from collections import namedtuple
1414

1515
# distutils is breaking our sdists for files in symlinked dirs.
1616
# distutils will copy if os.link is not available, so this is a hack
@@ -59,74 +59,63 @@
5959

6060
Spacer = namedtuple('Spacer', ['text'])
6161

62-
mpl_packages = OrderedDict()
63-
64-
mpl_packages['building'] = Spacer('Building Matplotlib')
65-
mpl_packages['matplotlib'] = setupext.Matplotlib()
66-
mpl_packages['python'] = setupext.Python()
67-
mpl_packages['platform'] = setupext.Platform()
68-
69-
mpl_packages['required'] = Spacer('Required dependencies and extensions')
70-
mpl_packages['numpy'] = setupext.Numpy()
71-
mpl_packages['dateutil'] = setupext.Dateutil()
72-
mpl_packages['tornado'] = setupext.Tornado()
73-
mpl_packages['pyparsing'] = setupext.Pyparsing()
74-
mpl_packages['cxx'] = setupext.CXX()
75-
mpl_packages['libagg'] = setupext.LibAgg()
76-
mpl_packages['freetype'] = setupext.FreeType()
77-
mpl_packages['ft2font'] = setupext.FT2Font(mpl_packages['freetype'],
78-
mpl_packages['numpy'],
79-
mpl_packages['cxx'])
80-
mpl_packages['png'] = setupext.Png(mpl_packages['numpy'],
81-
mpl_packages['cxx'])
82-
mpl_packages['image'] = setupext.Image(mpl_packages['numpy'],
83-
mpl_packages['libagg'],
84-
mpl_packages['cxx'])
85-
mpl_packages['ttconv'] = setupext.TTConv(mpl_packages['numpy'],
86-
mpl_packages['cxx'])
87-
mpl_packages['path'] = setupext.Path(mpl_packages['numpy'],
88-
mpl_packages['libAgg'],
89-
mpl_packages['cxx'])
90-
mpl_packages['contour'] = setupext.Contour(mpl_packages['numpy'])
91-
mpl_packages['delaunay'] = setupext.Delaunay(mpl_packages['numpy'])
92-
mpl_packages['tri'] = setupext.Tri(mpl_packages['numpy'])
93-
94-
mpl_packages['optional'] = Spacer('Optional subpackages')
95-
mpl_packages['sample_data'] = setupext.SampleData()
96-
mpl_packages['toolkits'] = setupext.Toolkits()
97-
mpl_packages['tests'] = setupext.Tests()
98-
99-
mpl_packages['optional backends'] = Spacer('Optional backend extensions')
100-
101-
# These backends are listed in order of preference, the first
102-
# being the most preferred. The first one that looks like it will
103-
# work will be selected as the default backend.
104-
mpl_packages['macosx'] = setupext.BackendMacOSX(mpl_packages['numpy'],
105-
mpl_packages['libagg'],
106-
mpl_packages['cxx'])
107-
mpl_packages['qt4'] = setupext.BackendQt4()
108-
mpl_packages['gtk3agg'] = setupext.BackendGtk3Agg()
109-
mpl_packages['gtkcairo'] = setupext.BackendGtk3Cairo()
110-
mpl_packages['gtkagg'] = setupext.BackendGtkAgg(mpl_packages['libagg'],
111-
mpl_packages['cxx'],
112-
mpl_packages['numpy'])
113-
mpl_packages['tkagg'] = setupext.BackendTkAgg(mpl_packages['numpy'],
114-
mpl_packages['libagg'],
115-
mpl_packages['cxx'])
116-
mpl_packages['wxagg'] = setupext.BackendWxAgg()
117-
mpl_packages['gtkagg'] = setupext.BackendGtk(mpl_packages['numpy'])
118-
mpl_packages['agg'] = setupext.BackendAgg(mpl_packages['numpy'],
119-
mpl_packages['libagg'],
120-
mpl_packages['freetype'],
121-
mpl_packages['cxx'])
122-
mpl_packages['cairo'] = setupext.BackendCairo()
123-
mpl_packages['windowing'] = setupext.Windowing()
124-
125-
mpl_packages['latex'] = Spacer('Optional LaTeX dependencies')
126-
mpl_packages['dvipng'] = setupext.DviPng()
127-
mpl_packages['ghostscript'] = setupext.Ghostscript()
128-
mpl_packages['latex'] = setupext.LaTeX()
129-
mpl_packages['pdftops'] = setupext.PdfToPs()
62+
# these packages are dependencies for other packages
63+
# give them names so that we can reference them later
64+
numpy_ext = setupext.Numpy()
65+
cxx_ext = setupext.CXX()
66+
libagg_ext = setupext.LibAgg()
67+
freetype_ext = setupext.FreeType()
68+
69+
mpl_packages = [
70+
Spacer('Building Matplotlib'),
71+
setupext.Matplotlib(),
72+
setupext.Python(),
73+
setupext.Platform(),
74+
75+
Spacer('Required dependencies and extensions'),
76+
numpy_ext,
77+
setupext.Dateutil(),
78+
setupext.Tornado(),
79+
setupext.Pyparsing(),
80+
cxx_ext,
81+
libagg_ext,
82+
freetype_ext,
83+
setupext.FT2Font(freetype_ext, numpy_ext, cxx_ext),
84+
setupext.Png(numpy_ext, cxx_ext),
85+
setupext.Image(numpy_ext, libagg_ext, cxx_ext),
86+
setupext.TTConv(numpy_ext, cxx_ext),
87+
setupext.Path(numpy_ext, libagg_ext, cxx_ext),
88+
setupext.Contour(numpy_ext),
89+
setupext.Delaunay(numpy_ext),
90+
setupext.Tri(numpy_ext),
91+
92+
Spacer('Optional subpackages'),
93+
setupext.SampleData(),
94+
setupext.Toolkits(),
95+
setupext.Tests(),
96+
97+
Spacer('Optional backend extensions'),
98+
# These backends are listed in order of preference, the first
99+
# being the most preferred. The first one that looks like it will
100+
# work will be selected as the default backend.
101+
setupext.BackendMacOSX(numpy_ext, libagg_ext, cxx_ext),
102+
setupext.BackendQt4(),
103+
setupext.BackendGtk3Agg(),
104+
setupext.BackendGtk3Cairo(),
105+
setupext.BackendGtkAgg(libagg_ext, cxx_ext, numpy_ext),
106+
setupext.BackendTkAgg(numpy_ext, libagg_ext, cxx_ext),
107+
setupext.BackendWxAgg(),
108+
setupext.BackendGtk(numpy_ext),
109+
setupext.BackendAgg(numpy_ext, libagg_ext, freetype_ext, cxx_ext),
110+
setupext.BackendCairo(),
111+
setupext.Windowing(),
112+
113+
Spacer('Optional LaTeX dependencies'),
114+
setupext.DviPng(),
115+
setupext.Ghostscript(),
116+
setupext.LaTeX(),
117+
setupext.PdfToPs(),
118+
]
130119

131120

132121
classifiers = [
@@ -162,7 +151,7 @@
162151

163152
required_failed = []
164153
good_packages = []
165-
for package in mpl_packages.items():
154+
for package in mpl_packages:
166155
if isinstance(package, Spacer):
167156
print_raw('')
168157
print_raw(package.text.upper())

0 commit comments

Comments
 (0)
0