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

Skip to content

Commit 7781dbd

Browse files
committed
Merge remote-tracking branch 'master/master' into dfrac
2 parents d0cfe37 + 1bf8282 commit 7781dbd

File tree

1,043 files changed

+40196
-28473
lines changed

Some content is hidden

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

1,043 files changed

+40196
-28473
lines changed

appveyor.yml renamed to .appveyor.yml

Lines changed: 50 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,10 @@ environment:
1111
# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
1212
# /E:ON and /V:ON options are not enabled in the batch script intepreter
1313
# See: http://stackoverflow.com/a/13751649/163740
14-
CMD_IN_ENV: "cmd /E:ON /V:ON /C obvci_appveyor_python_build_env.cmd"
14+
CMD_IN_ENV: cmd /E:ON /V:ON /C obvci_appveyor_python_build_env.cmd
1515
# Workaround for https://github.com/conda/conda-build/issues/636
16-
PYTHONIOENCODING: "UTF-8"
17-
PYTEST_ARGS: -ra --timeout=300 --durations=25 -n %NUMBER_OF_PROCESSORS% --cov-report= --cov=lib
18-
USE_PYTEST: no
16+
PYTHONIOENCODING: UTF-8
17+
PYTEST_ARGS: -rawR --timeout=300 --durations=25 -n %NUMBER_OF_PROCESSORS% --cov-report= --cov=lib -m "not network"
1918
PYTHONHASHSEED: 0 # Workaround for pytest-xdist flaky collection order
2019
# https://github.com/pytest-dev/pytest/issues/920
2120
# https://github.com/pytest-dev/pytest/issues/1075
@@ -37,13 +36,6 @@ environment:
3736
PYTHON_VERSION: "3.5"
3837
TEST_ALL: "no"
3938
CONDA_INSTALL_LOCN: "C:\\Miniconda35-x64"
40-
- TARGET_ARCH: "x64"
41-
CONDA_PY: "35"
42-
CONDA_NPY: "110"
43-
PYTHON_VERSION: "3.5"
44-
TEST_ALL: "no"
45-
CONDA_INSTALL_LOCN: "C:\\Miniconda35-x64"
46-
USE_PYTEST: yes
4739
- TARGET_ARCH: "x86"
4840
CONDA_PY: "27"
4941
CONDA_NPY: "18"
@@ -63,26 +55,32 @@ platform:
6355
# all our python builds have to happen in tests_script...
6456
build: false
6557

58+
cache:
59+
- '%LOCALAPPDATA%\pip\Cache'
60+
- '%USERPROFILE%\.cache\matplotlib'
61+
6662
init:
67-
- cmd: "ECHO %PYTHON_VERSION% PYTEST=%USE_PYTEST% %CONDA_INSTALL_LOCN%"
63+
- echo %PYTHON_VERSION% %CONDA_INSTALL_LOCN%
6864

6965
install:
70-
- cmd: set PATH=%CONDA_INSTALL_LOCN%;%CONDA_INSTALL_LOCN%\scripts;%PATH%;
71-
- cmd: set PYTHONUNBUFFERED=1
66+
- set PATH=%CONDA_INSTALL_LOCN%;%CONDA_INSTALL_LOCN%\scripts;%PATH%;
67+
- set PYTHONUNBUFFERED=1
7268
# for obvci_appveyor_python_build_env.cmd
73-
- cmd: conda install -c pelson/channel/development --yes --quiet obvious-ci
69+
- conda install -c pelson/channel/development --yes --quiet obvious-ci
7470
# for msinttypes and newer stuff
75-
- cmd: conda config --add channels conda-forge
76-
- cmd: conda config --set show_channel_urls yes
77-
- cmd: conda config --set always_yes true
71+
# conda-forge may serve outdated versions of certain packages (e.g. conda
72+
# itself), so append it to the end of the list.
73+
- conda config --append channels conda-forge
74+
- conda config --set show_channel_urls yes
75+
- conda config --set always_yes true
7876
# For building conda packages
79-
- cmd: conda install --yes conda-build jinja2 anaconda-client
77+
- conda install --yes conda-build jinja2 anaconda-client
8078
# this is now the downloaded conda...
8179
- conda info -a
8280

8381
# Fix the appveyor build environment to work with conda build
8482
# workaround for missing vcvars64.bat in py34 64bit
85-
- cmd: copy ci\appveyor\vcvars64.bat "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64"
83+
- copy ci\appveyor\vcvars64.bat "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64"
8684

8785
# For building, use a new environment which only includes the requirements for mpl
8886
# same things as the requirements in ci/conda_recipe/meta.yaml
@@ -91,18 +89,18 @@ install:
9189
- conda create -q -n test-environment python=%PYTHON_VERSION%
9290
pip setuptools numpy python-dateutil freetype=2.6 msinttypes "tk=8.5"
9391
pyparsing pytz tornado "libpng>=1.6.21,<1.7" "zlib=1.2" "cycler>=0.10"
94-
mock sphinx
92+
mock sphinx pandas
9593
- activate test-environment
96-
- cmd: echo %PYTHON_VERSION% %TARGET_ARCH%
97-
- cmd: IF %PYTHON_VERSION% == 2.7 conda install -q functools32
94+
- echo %PYTHON_VERSION% %TARGET_ARCH%
95+
- if %PYTHON_VERSION% == 2.7 conda install -q backports.functools_lru_cache
9896
# pytest-cov>=2.3.1 due to https://github.com/pytest-dev/pytest-cov/issues/124
99-
- conda install -q pytest "pytest-cov>=2.3.1" pytest-timeout pytest-xdist
97+
- pip install -q pytest "pytest-cov>=2.3.1" pytest-rerunfailures pytest-timeout pytest-xdist
10098

10199
# Let the install prefer the static builds of the libs
102100
- set LIBRARY_LIB=%CONDA_PREFIX%\Library\lib
103-
- cmd: 'mkdir lib || cmd /c "exit /b 0"'
104-
- copy /Y %LIBRARY_LIB%\zlibstatic.lib lib\z.lib
105-
- copy /Y %LIBRARY_LIB%\libpng_static.lib lib\png.lib
101+
- mkdir lib || cmd /c "exit /b 0"
102+
- copy /y %LIBRARY_LIB%\zlibstatic.lib lib\z.lib
103+
- copy /y %LIBRARY_LIB%\libpng_static.lib lib\png.lib
106104
# These z.lib / png.lib are not static versions but files which end up as
107105
# dependencies to the dll file. This is fine for the conda build, but not here
108106
# and for the wheels
@@ -119,55 +117,51 @@ test_script:
119117
- '%CMD_IN_ENV% pip install --no-deps -ve .'
120118
# these should show no z, png, or freetype dll...
121119
- set "DUMPBIN=%VS140COMNTOOLS%\..\..\VC\bin\dumpbin.exe"
122-
#- cmd: '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\_png*.pyd'
123-
#- cmd: '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\ft2font*.pyd'
124-
- cmd: '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\ft2font*.pyd | findstr freetype.*.dll && exit /b 1 || exit /b 0'
125-
- cmd: '"%DUMPBIN%" /DEPENDENTS lib\\matplotlib\\_png*.pyd | findstr z.*.dll && exit /b 1 || exit /b 0'
126-
- cmd: '"%DUMPBIN%" /DEPENDENTS lib\\matplotlib\\_png*.pyd | findstr png.*.dll && exit /b 1 || exit /b 0'
120+
- '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\ft2font*.pyd | findstr freetype.*.dll && exit /b 1 || exit /b 0'
121+
- '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\_png*.pyd | findstr z.*.dll && exit /b 1 || exit /b 0'
122+
- '"%DUMPBIN%" /DEPENDENTS lib\matplotlib\_png*.pyd | findstr png.*.dll && exit /b 1 || exit /b 0'
127123

128124
# this are optional dependencies so that we don't skip so many tests...
129-
- cmd: if x%TEST_ALL% == xyes; conda install -q pillow miktex inkscape
130-
# missing packages on conda-forge for ffmpeg avconv mencoder imagemagick
131-
- cmd: if x%TEST_ALL% == xyes; conda install -q -c menpo ffmpeg # a repackaged version
125+
- if x%TEST_ALL% == xyes conda install -q ffmpeg inkscape miktex pillow
126+
# missing packages on conda-forge for avconv mencoder imagemagick
132127
# This install sometimes failed randomly :-(
133-
#- cmd: choco install imagemagick
128+
#- choco install imagemagick
134129

135130
# Test import of tkagg backend
136131
- python -c "import matplotlib as m; m.use('tkagg'); import matplotlib.pyplot as plt; print(plt.get_backend())"
137132
# tests
138133
- echo The following args are passed to pytest %PYTEST_ARGS%
139-
- if x%USE_PYTEST% == xyes py.test %PYTEST_ARGS%
140-
- if x%USE_PYTEST% == xno python tests.py %PYTEST_ARGS%
134+
- python tests.py %PYTEST_ARGS%
141135
# Generate a html for visual tests
142-
- python visual_tests.py
143-
- if x%USE_PYTEST% == xyes pip install codecov
144-
- if x%USE_PYTEST% == xyes codecov -e PYTHON_VERSION PLATFORM
136+
- python tools/visualize_tests.py --no-browser
137+
- pip install codecov
138+
- codecov -e PYTHON_VERSION PLATFORM
145139

146140
after_test:
147141
# After the tests were a success, build packages (wheels and conda)
148142

149143
# Build the wheel with the static libs
150144
# Hide the output, the copied files really clutter the build log...
151-
- cmd: '%CMD_IN_ENV% python setup.py bdist_wheel > NUL:'
145+
- '%CMD_IN_ENV% python setup.py bdist_wheel > NUL:'
152146

153147
# And now the conda build after a cleanup...
154148
# cleanup build files so that they don't pollute the conda build but keep the wheel in dist...
155-
- cmd: git clean -d -x -f -e dist/
149+
- git clean -xdfq -e dist/
156150
# cleanup the environment so that the test-environment does not leak into the conda build...
157-
- cmd: set MPLBASEDIRLIST=
158-
- cmd: set LIBRARY_LIB=
159-
- cmd: deactivate
160-
- cmd: path
161-
- cmd: where python
162-
- cmd: '%CMD_IN_ENV% conda config --get channels'
163-
- cmd: '%CMD_IN_ENV% conda build -q .\ci\conda_recipe'
151+
- set MPLBASEDIRLIST=
152+
- set LIBRARY_LIB=
153+
- deactivate
154+
- path
155+
- where python
156+
- '%CMD_IN_ENV% conda config --get channels'
157+
- '%CMD_IN_ENV% conda build -q .\ci\conda_recipe'
164158

165159
# Move the conda package into the dist directory, to register it
166160
# as an "artifact" for Appveyor.
167-
- cmd: 'copy /Y %CONDA_INSTALL_LOCN%\conda-bld\win-32\*.bz2 dist || cmd /c "exit /b 0"'
168-
- cmd: 'copy /Y %CONDA_INSTALL_LOCN%\conda-bld\win-64\*.bz2 dist || cmd /c "exit /b 0"'
169-
- cmd: dir dist\
170-
- cmd: echo finished...
161+
- copy /y %CONDA_INSTALL_LOCN%\conda-bld\win-32\*.bz2 dist || cmd /c "exit /b 0"
162+
- copy /y %CONDA_INSTALL_LOCN%\conda-bld\win-64\*.bz2 dist || cmd /c "exit /b 0"
163+
- dir dist\
164+
- echo finished...
171165

172166
artifacts:
173167
- path: dist\*
@@ -180,9 +174,9 @@ artifacts:
180174
on_finish:
181175

182176
on_failure:
183-
- python visual_tests.py
177+
- python tools/visualize_tests.py --no-browser
184178
- echo zipping images after a failure...
185-
- 7z a result_images.zip result_images\ |grep -v "Compressing"
179+
- 7z a result_images.zip result_images\ | grep -v "Compressing"
186180
- appveyor PushArtifact result_images.zip
187181

188182
matrix:

.coveragerc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
[run]
2-
source=
2+
branch = true
3+
source =
34
matplotlib
45
mpl_toolkits
6+
omit = matplotlib/_version.py
57

68
[report]
79
exclude_lines =

.github/ISSUE_TEMPLATE.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1-
To help us understand and resolve your issue, please fill out the form to the best of your ability. You can feel free to delete the sections that do not apply.
1+
<!--To help us understand and resolve your issue, please fill out the form to the best of your ability.-->
2+
<!--You can feel free to delete the sections that do not apply.-->
23

34
### Bug report
45

56
**Bug summary**
67

7-
- A short 1-2 sentences that succinctly describes the bug
8+
<!--A short 1-2 sentences that succinctly describes the bug-->
89

910
**Code for reproduction**
1011

11-
- A minimum code snippet required to reproduce the bug, also minimizing the number of dependencies required
12+
<!--A minimum code snippet required to reproduce the bug, also minimizing the number of dependencies required-->
1213

1314
```python
1415
# Paste your code here
@@ -18,7 +19,7 @@ To help us understand and resolve your issue, please fill out the form to the be
1819

1920
**Actual outcome**
2021

21-
- The output produced by the above code, which may be a screenshot, console output, etc.
22+
<!--The output produced by the above code, which may be a screenshot, console output, etc.-->
2223

2324
```
2425
# If applicable, paste the console output here
@@ -28,11 +29,17 @@ To help us understand and resolve your issue, please fill out the form to the be
2829

2930
**Expected outcome**
3031

31-
- A description of the expected outcome from the code snippet
32-
- If this used to work in an earlier version of Matplotlib, please note the version it used to work on
32+
<!--A description of the expected outcome from the code snippet-->
33+
<!--If this used to work in an earlier version of Matplotlib, please note the version it used to work on-->
3334

3435
**Matplotlib version**
35-
36-
- Matplotlib version, Python version and Platform (Windows, OSX, Linux ...)
37-
- How did you install Matplotlib and Python (pip, anaconda, from source ...)
36+
<!--Please specify your platform and versions of the relevant libraries you are using:-->
37+
* Operating System:
38+
* Matplotlib Version:
39+
* Python Version:
40+
* Jupyter Version (if applicable):
41+
* Other Libraries:
42+
43+
<!--Please tell us how you installed matplotlib and python e.g., from source, pip, conda-->
44+
<!--If you installed from conda, please specify which channel you used if not the default-->
3845

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
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+
<!--Provide a general summary of your changes in the title above, for
6+
example "Raises ValueError on Non-Numeric Input to set_xlim". Please avoid
7+
non-descriptive titles such as "Addresses issue #8576".-->
8+
9+
<!--If you are able to do so, please do not create the
10+
PR out of master, but out of a separate branch. See
11+
https://matplotlib.org/devel/gitwash/development_workflow.html for
12+
instructions.-->
13+
14+
## PR Summary
15+
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+
21+
## PR Checklist
22+
23+
- [ ] Has Pytest style unit tests
24+
- [ ] Code is PEP 8 compliant
25+
- [ ] New features are documented, with examples if plot related
26+
- [ ] Documentation is sphinx and numpydoc compliant
27+
- [ ] Added an entry to doc/users/whats_new.rst if major new feature
28+
- [ ] Documented in doc/api/api_changes.rst if API changed in a backward-incompatible way
29+
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.-->

.gitignore

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,7 @@
3030
################
3131
# setup.py working directory
3232
build
33-
# sphinx build directory
34-
doc/_build
33+
3534
# setup.py dist directory
3635
dist
3736
# Egg metadata
@@ -57,12 +56,18 @@ lib/matplotlib/mpl-data/matplotlibrc
5756

5857
# Documentation generated files #
5958
#################################
59+
# sphinx build directory
60+
doc/_build
61+
doc/api/_as_gen
62+
# autogenerated by sphinx-gallery
6063
doc/examples
61-
doc/_templates/gallery.html
64+
doc/gallery
65+
doc/tutorials
66+
doc/modules
67+
doc/pyplots/tex_demo.png
6268
doc/users/installing.rst
69+
doc/_static/depsy_badge.svg
6370
doc/_static/matplotlibrc
64-
doc/pyplots/tex_demo.png
65-
doc/api/_as_gen
6671
lib/dateutil
6772
examples/*/*.pdf
6873
examples/*/*.png

0 commit comments

Comments
 (0)