Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 543d235

Browse files
authored
Merge branch 'master' into cat
2 parents 34b8eb4 + 84008ea commit 543d235

File tree

637 files changed

+31533
-26897
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

637 files changed

+31533
-26897
lines changed

.appveyor.yml

Lines changed: 17 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -11,41 +11,26 @@ branches:
1111
environment:
1212

1313
global:
14-
# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
15-
# /E:ON and /V:ON options are not enabled in the batch script intepreter
16-
# See: http://stackoverflow.com/a/13751649/163740
17-
CMD_IN_ENV: cmd /E:ON /V:ON /C obvci_appveyor_python_build_env.cmd
18-
# Workaround for https://github.com/conda/conda-build/issues/636
1914
PYTHONIOENCODING: UTF-8
2015
PYTEST_ARGS: -rawR --numprocesses=auto --timeout=300 --durations=25
2116
--cov-report= --cov=lib -m "not network"
2217

2318
matrix:
24-
# for testing purpose: numpy 1.8 on py2.7, for the rest use 1.10/latest
2519
# theoretically the CONDA_INSTALL_LOCN could be only two: one for 32bit,
2620
# one for 64bit because we construct envs anyway. But using one for the
2721
# right python version is hopefully making it fast due to package caching.
28-
- TARGET_ARCH: "x64"
29-
CONDA_PY: "27"
30-
CONDA_NPY: "18"
31-
PYTHON_VERSION: "2.7"
32-
TEST_ALL: "no"
22+
- PYTHON_VERSION: "2.7"
3323
CONDA_INSTALL_LOCN: "C:\\Miniconda-x64"
34-
- TARGET_ARCH: "x64"
35-
CONDA_PY: "35"
36-
CONDA_NPY: "110"
37-
PYTHON_VERSION: "3.5"
24+
TEST_ALL: "no"
25+
- PYTHON_VERSION: "3.5"
3826
CONDA_INSTALL_LOCN: "C:\\Miniconda35-x64"
3927
TEST_ALL: "no"
40-
- TARGET_ARCH: "x64"
41-
CONDA_PY: "36"
42-
PYTHON_VERSION: "3.6"
43-
CONDA_NPY: "111"
28+
- PYTHON_VERSION: "3.6"
4429
CONDA_INSTALL_LOCN: "C:\\Miniconda36-x64"
4530
TEST_ALL: "no"
4631

4732
# We always use a 64-bit machine, but can build x86 distributions
48-
# with the PYTHON_ARCH variable (which is used by CMD_IN_ENV).
33+
# with the PYTHON_ARCH variable
4934
platform:
5035
- x64
5136

@@ -62,23 +47,14 @@ init:
6247
install:
6348
- set PATH=%CONDA_INSTALL_LOCN%;%CONDA_INSTALL_LOCN%\scripts;%PATH%;
6449
- set PYTHONUNBUFFERED=1
65-
# for obvci_appveyor_python_build_env.cmd
66-
- conda update --all --yes
67-
- conda install anaconda-client=1.6.3 --yes
68-
- conda install -c conda-forge --yes obvious-ci
6950
# for msinttypes and newer stuff
70-
- conda config --prepend channels conda-forge
71-
- conda config --set show_channel_urls yes
7251
- conda config --set always_yes true
73-
# For building conda packages
74-
- conda install --yes conda-build jinja2 anaconda-client
52+
- conda update --all
53+
- conda config --set show_channel_urls yes
54+
- conda config --prepend channels conda-forge
7555
# this is now the downloaded conda...
7656
- conda info -a
7757

78-
# Fix the appveyor build environment to work with conda build
79-
# workaround for missing vcvars64.bat in py34 64bit
80-
- copy ci\appveyor\vcvars64.bat "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64"
81-
8258
# For building, use a new environment which only includes the requirements for mpl
8359
# same things as the requirements in ci/conda_recipe/meta.yaml
8460
# if conda-forge gets a new pyqt, it might be nice to install it as well to have more backends
@@ -90,13 +66,13 @@ install:
9066
- activate test-environment
9167
- echo %PYTHON_VERSION% %TARGET_ARCH%
9268
# pytest-cov>=2.3.1 due to https://github.com/pytest-dev/pytest-cov/issues/124
93-
- pip install -q pytest "pytest-cov>=2.3.1" pytest-rerunfailures pytest-timeout pytest-xdist
69+
- pip install -q "pytest!=3.3.0" "pytest-cov>=2.3.1" pytest-rerunfailures pytest-timeout pytest-xdist
9470

9571
# Apply patch to `subprocess` on Python versions > 2 and < 3.6.3
9672
# https://github.com/matplotlib/matplotlib/issues/9176
9773
- python -c "import sys; sys.exit(not (3,) < sys.version_info < (3,6,3))" && (
9874
curl -sL https://github.com/python/cpython/pull/1224.patch |
99-
patch -fsup 1 -d %CONDA_PREFIX% ) || ( set errorlevel= )
75+
patch -fsup 1 -d %CONDA_PREFIX% ) || cmd /c "exit /b 0"
10076

10177
# Let the install prefer the static builds of the libs
10278
- set LIBRARY_LIB=%CONDA_PREFIX%\Library\lib
@@ -116,7 +92,7 @@ install:
11692

11793
test_script:
11894
# Now build the thing..
119-
- '%CMD_IN_ENV% pip install -ve .'
95+
- pip install -ve .
12096
# these should show no z, png, or freetype dll...
12197
- set "DUMPBIN=%VS140COMNTOOLS%\..\..\VC\bin\dumpbin.exe"
12298
- '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\ft2font*.pyd | findstr freetype.*.dll && exit /b 1 || exit /b 0'
@@ -125,7 +101,7 @@ test_script:
125101

126102
# this are optional dependencies so that we don't skip so many tests...
127103
- if x%TEST_ALL% == xyes conda install -q ffmpeg inkscape miktex pillow
128-
# missing packages on conda-forge for avconv mencoder imagemagick
104+
# missing packages on conda-forge for avconv imagemagick
129105
# This install sometimes failed randomly :-(
130106
#- choco install imagemagick
131107

@@ -134,34 +110,11 @@ test_script:
134110
# tests
135111
- echo The following args are passed to pytest %PYTEST_ARGS%
136112
- python tests.py %PYTEST_ARGS%
137-
# Generate a html for visual tests
138-
- python tools/visualize_tests.py --no-browser
139-
- pip install codecov
140-
- codecov -e PYTHON_VERSION PLATFORM
141113

142114
after_test:
143-
# After the tests were a success, build packages (wheels and conda)
144-
145-
# Build the wheel with the static libs
115+
# After the tests were a success, build wheels with the static libs
146116
# Hide the output, the copied files really clutter the build log...
147-
- '%CMD_IN_ENV% python setup.py bdist_wheel > NUL:'
148-
149-
# And now the conda build after a cleanup...
150-
# cleanup build files so that they don't pollute the conda build but keep the wheel in dist...
151-
- git clean -xdfq -e dist/
152-
# cleanup the environment so that the test-environment does not leak into the conda build...
153-
- set MPLBASEDIRLIST=
154-
- set LIBRARY_LIB=
155-
- deactivate
156-
- path
157-
- where python
158-
- '%CMD_IN_ENV% conda config --get channels'
159-
- '%CMD_IN_ENV% conda build -q .\ci\conda_recipe'
160-
161-
# Move the conda package into the dist directory, to register it
162-
# as an "artifact" for Appveyor.
163-
- copy /y %CONDA_INSTALL_LOCN%\conda-bld\win-32\*.bz2 dist || cmd /c "exit /b 0"
164-
- copy /y %CONDA_INSTALL_LOCN%\conda-bld\win-64\*.bz2 dist || cmd /c "exit /b 0"
117+
- 'python setup.py bdist_wheel > NUL:'
165118
- dir dist\
166119
- echo finished...
167120

@@ -174,8 +127,11 @@ artifacts:
174127
type: zip
175128

176129
on_finish:
130+
- pip install codecov
131+
- codecov -e PYTHON_VERSION PLATFORM
177132

178133
on_failure:
134+
# Generate a html for visual tests
179135
- python tools/visualize_tests.py --no-browser
180136
- echo zipping images after a failure...
181137
- 7z a result_images.zip result_images\ | grep -v "Compressing"

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ mpl-run: &mpl-install
6868

6969
doc-run: &doc-build
7070
name: Build documentation
71-
command: python make.py html
71+
command: make html
7272
working_directory: doc
7373

7474
doc-bundle-run: &doc-bundle

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,5 @@
1-
<!--Thank you so much for your PR! To help us review, fill out the form
2-
to the best of your ability. Please make use of the development guide at
3-
https://matplotlib.org/devdocs/devel/index.html
4-
5-
For help with git and github workflow, please see https://matplotlib.org/devel/gitwash/development_workflow.html
6-
7-
Please do not create the PR out of master, but out of a separate branch. -->
8-
9-
<!--Provide a general summary of your changes in the title above, for
10-
example "Raises ValueError on Non-Numeric Input to set_xlim". Please avoid
11-
non-descriptive titles such as "Addresses issue #8576".-->
12-
13-
141
## PR Summary
152

16-
<!--Please provide at least 1-2 sentences describing the pull request in
17-
detail. Why is this change required? What problem does it solve?-->
18-
19-
<!--If it fixes an open issue, please link to the issue here.-->
20-
213
## PR Checklist
224

235
- [ ] Has Pytest style unit tests
@@ -27,8 +9,33 @@ detail. Why is this change required? What problem does it solve?-->
279
- [ ] Added an entry to doc/users/next_whats_new/ if major new feature (follow instructions in README.rst there)
2810
- [ ] Documented in doc/api/api_changes.rst if API changed in a backward-incompatible way
2911

30-
<!--We understand that PRs can sometimes be overwhelming, especially as the
31-
reviews start coming in. Please let us know if the reviews are unclear or the
32-
recommended next step seems overly demanding , or if you would like help in
33-
addressing a reviewer's comments. And please ping us if you've been waiting
34-
too long to hear back on your PR.-->
12+
<!--
13+
Thank you so much for your PR! To help us review your contribution, please
14+
consider the following points:
15+
16+
- A development guide is available at https://matplotlib.org/devdocs/devel/index.html.
17+
18+
- Help with git and github is available at
19+
https://matplotlib.org/devel/gitwash/development_workflow.html.
20+
21+
- Do not create the PR out of master, but out of a separate branch.
22+
23+
- The PR title should summarize the changes, for example "Raise ValueError on
24+
non-numeric input to set_xlim". Avoid non-descriptive titles such as
25+
"Addresses issue #8576".
26+
27+
- The summary should provide at least 1-2 sentences describing the pull request
28+
in detail (Why is this change required? What problem does it solve?) and
29+
link to any relevant issues.
30+
31+
- If you are contributing fixes to docstrings, please pay attention to
32+
http://matplotlib.org/devel/documenting_mpl.html#formatting. In particular,
33+
note the difference between using single backquotes, double backquotes, and
34+
asterisks in the markup.
35+
36+
We understand that PRs can sometimes be overwhelming, especially as the
37+
reviews start coming in. Please let us know if the reviews are unclear or
38+
the recommended next step seems overly demanding, if you would like help in
39+
addressing a reviewer's comments, or if you have been waiting too long to hear
40+
back on your PR.
41+
-->

.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,6 @@ doc/gallery
6666
doc/tutorials
6767
doc/modules
6868
doc/pyplots/tex_demo.png
69-
doc/users/installing.rst
70-
doc/_static/depsy_badge.svg
71-
doc/_static/matplotlibrc
7269
lib/dateutil
7370
examples/*/*.pdf
7471
examples/*/*.png

.travis.yml

Lines changed: 50 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,24 @@ addons:
1919
- result_images.tar.bz2
2020
apt:
2121
packages:
22+
- cm-super
23+
- dvipng
24+
- gdb
25+
- gir1.2-gtk-3.0
26+
- graphviz
2227
- inkscape
2328
- libav-tools
24-
- gdb
25-
- mencoder
26-
- dvipng
27-
- pgf
29+
- libcairo2
30+
- libgeos-dev
31+
- libgirepository-1.0.1
2832
- lmodern
29-
- cm-super
33+
- otf-freefont
34+
- pgf
35+
- texlive-fonts-recommended
3036
- texlive-latex-base
3137
- texlive-latex-extra
32-
- texlive-fonts-recommended
3338
- texlive-latex-recommended
3439
- texlive-xetex
35-
- graphviz
36-
- libgeos-dev
37-
- otf-freefont
3840

3941
env:
4042
global:
@@ -43,25 +45,43 @@ env:
4345
- secure: RgJI7BBL8aX5FTOQe7xiXqWHMxWokd6GNUWp1NUV2mRLXPb9dI0RXqZt3UJwKTAzf1z/OtlHDmEkBoTVK81E9iUxK5npwyyjhJ8yTJmwfQtQF2n51Q1Ww9p+XSLORrOzZc7kAo6Kw6FIXN1pfctgYq2bQkrwJPRx/oPR8f6hcbY=
4446
- secure: E7OCdqhZ+PlwJcn+Hd6ns9TDJgEUXiUNEI0wu7xjxB2vBRRIKtZMbuaZjd+iKDqCKuVOJKu0ClBUYxmgmpLicTwi34CfTUYt6D4uhrU+8hBBOn1iiK51cl/aBvlUUrqaRLVhukNEBGZcyqAjXSA/Qsnp2iELEmAfOUa92ZYo1sk=
4547
- secure: "dfjNqGKzQG5bu3FnDNwLG8H/C4QoieFo4PfFmZPdM2RY7WIzukwKFNT6kiDfOrpwt+2bR7FhzjOGlDECGtlGOtYPN8XuXGjhcP4a4IfakdbDfF+D3NPIpf5VlE6776k0VpvcZBTMYJKNFIMc7QPkOwjvNJ2aXyfe3hBuGlKJzQU="
48+
- CYCLER=cycler
49+
- DATEUTIL=python-dateutil
50+
- MOCK=
51+
- NOSE=
4652
- NUMPY=numpy
47-
- OPENBLAS_NUM_THREADS=1
4853
- PANDAS=
54+
- PYPARSING=pyparsing
55+
- PYTEST=pytest!=3.3.0
56+
- PYTEST_COV=pytest-cov
57+
- PYTEST_PEP8=
58+
- SPHINX=sphinx
59+
- OPENBLAS_NUM_THREADS=1
4960
- NPROC=2
50-
- INSTALL_PEP8=
5161
- RUN_PEP8=
52-
- NOSE=
5362
- PYTEST_ARGS="-rawR --maxfail=50 --timeout=300 --durations=25 --cov-report= --cov=lib -n $NPROC"
5463
- PYTHON_ARGS=
5564
- DELETE_FONT_CACHE=
5665

5766
matrix:
5867
include:
5968
- python: 2.7
60-
env: MOCK=mock NUMPY=numpy==1.7.1 PANDAS=pandas NOSE=nose
69+
# pytest-cov>=2.3.1 due to https://github.com/pytest-dev/pytest-cov/issues/124.
70+
env:
71+
- CYCLER=cycler==0.10
72+
- DATEUTIL=python-dateutil==2.1
73+
- MOCK=mock
74+
- NOSE=nose
75+
- NUMPY=numpy==1.7.1
76+
- PANDAS='pandas<0.21.0'
77+
- PYPARSING=pyparsing==2.0.1
78+
- PYTEST=pytest==3.1.0
79+
- PYTEST_COV=pytest-cov==2.3.1
80+
- SPHINX=sphinx==1.3
6181
- python: 3.4
6282
env: PYTHON_ARGS=-OO
6383
- python: 3.6
64-
env: DELETE_FONT_CACHE=1 INSTALL_PEP8=pytest-pep8 RUN_PEP8=--pep8 PANDAS=pandas
84+
env: DELETE_FONT_CACHE=1 PANDAS='pandas<0.21.0' PYTEST_PEP8=pytest-pep8 RUN_PEP8=--pep8
6585
- python: "nightly"
6686
env: PRE=--pre
6787
- os: osx
@@ -108,22 +128,31 @@ install:
108128
# Upgrade pip and setuptools and wheel to get as clean an install as possible
109129
pip install --upgrade pip setuptools wheel
110130
- |
111-
# Install dependencies from pypi
131+
# Install dependencies from PyPI
112132
pip install --upgrade $PRE \
133+
codecov \
134+
coverage \
135+
$CYCLER \
113136
$MOCK \
114137
$NOSE \
115138
$NUMPY \
116139
$PANDAS \
117140
codecov \
118141
coverage \
119142
pillow \
120-
sphinx
143+
$PYPARSING \
144+
$DATEUTIL \
145+
$SPHINX
121146
# GUI toolkits are pip-installable only for some versions of Python so
122147
# don't fail if we can't install them. Make it easier to check whether the
123148
# install was successful by trying to import the toolkit (sometimes, the
124149
# install appears to be successful but shared libraries cannot be loaded at
125150
# runtime, so an actual import is a better check).
126-
pip install pyqt5 &&
151+
pip install cairocffi pgi &&
152+
python -c 'import pgi as gi; gi.require_version("Gtk", "3.0"); from pgi.repository import Gtk' &&
153+
echo 'pgi is available' ||
154+
echo 'pgi is not available'
155+
pip install pyqt5==5.9 &&
127156
python -c 'import PyQt5.QtCore' &&
128157
echo 'PyQt5 is available' ||
129158
echo 'PyQt5 is not available'
@@ -134,15 +163,14 @@ install:
134163
echo 'wxPython is available' ||
135164
echo 'wxPython is not available'
136165
137-
# pytest-cov>=2.3.1 due to https://github.com/pytest-dev/pytest-cov/issues/124
138166
pip install $PRE \
139-
pytest \
140-
pytest-cov>=2.3.1 \
167+
$PYTEST \
168+
$PYTEST_COV \
141169
pytest-faulthandler \
170+
$PYTEST_PEP8 \
142171
pytest-rerunfailures \
143172
pytest-timeout \
144-
pytest-xdist \
145-
$INSTALL_PEP8
173+
pytest-xdist
146174
147175
# Use the special local version of freetype for testing
148176
cp ci/travis/setup.cfg .

0 commit comments

Comments
 (0)