@@ -6,27 +6,39 @@ Release Guide
6
6
7
7
A guide for developers who are doing a matplotlib release.
8
8
9
- * Edit :file: `__init__.py ` and bump the version number
10
9
11
10
.. _release-testing :
12
11
13
12
Testing
14
13
=======
15
14
16
- * Run all of the regression tests by running ``python tests.py ``
17
- at the root of the source tree.
15
+ We use `travis-ci <https://travis-ci.org/matplotlib/matplotlib >`__ for
16
+ continuous integration. When preparing for a release, the final
17
+ tagged commit should be tested locally before it is uploaded. In
18
+ addition ::
18
19
19
- * Run :file: `unit/memleak_hawaii3.py ` and make sure there are no
20
- memory leaks
20
+ python unit/memleak_hawaii3.py
21
21
22
- * try some GUI examples, e.g., :file: ` simple_plot.py ` with GTKAgg, TkAgg, etc...
22
+ should be run to check for memory leaks. Optionally, make sure ::
23
23
24
- * remove font cache and tex cache from :file: `.matplotlib ` and test
25
- with and without cache on some example script
24
+ python examples/tests/backend_driver.py
25
+
26
+ runs without errors and check the output of the PNG, PDF, PS and SVG
27
+ backends.
28
+
29
+
30
+ Github Stats
31
+ ============
32
+
33
+ To make sure everyone's hard work gets credited, regenerate the github
34
+ stats. In the project root run ::
35
+
36
+ python tools/github_stats.py --since-tag $TAG --project 'matplotlib/matplotlib' --links > doc/users/github_stats.rst
37
+
38
+
39
+ where `$TAG ` is the tag of the last major release. This will generate
40
+ stats for all work done since that release.
26
41
27
- * Optionally, make sure :file: `examples/tests/backend_driver.py ` runs
28
- without errors and check the output of the PNG, PDF, PS and SVG
29
- backends
30
42
31
43
.. _release-branching :
32
44
@@ -113,33 +125,27 @@ Then, to upload the source tarball::
113
125
rm -rf dist
114
126
python setup.py sdist upload
115
127
116
- Documentation updates
117
- =====================
128
+
129
+ Build and deploy Documentation
130
+ ==============================
118
131
119
132
The built documentation exists in the `matplotlib.github.com
120
133
<https://github.com/matplotlib/matplotlib.github.com/> `_ repository.
121
134
Pushing changes to master automatically updates the website.
122
135
123
136
The documentation is organized by version. At the root of the tree is
124
137
always the documentation for the latest stable release. Under that,
125
- there are directories containing the documentation for older versions
126
- as well as the bleeding edge release version called ` dev ` (usually
127
- based on what's on master in the github repository, but it may also
128
- temporarily be a staging area for proposed changes). There is also a
129
- symlink directory with the name of the most recently released version
130
- that points to the root. With each new release, these directories may
131
- need to be reorganized accordingly. Any time these version
132
- directories are added or removed, the ` versions.html ` file (which
133
- contains a list of the available documentation versions for the user)
134
- must also be updated.
138
+ there are directories containing the documentation for older versions.
139
+ The documentation for current master are built on travis and push to
140
+ the ` devdocs < https:// github.com/matplotlib/devdocs/ >`__ repository.
141
+ These are available ` matplotlib.org/devdocs
142
+ <http://matplotlib.org/devdocs> `__. There is a symlink directory
143
+ with the name of the most recently released version that points to the
144
+ root. With each new release, these directories may need to be
145
+ reorganized accordingly. Any time these version directories are added
146
+ or removed, the ` versions.html ` file (which contains a list of the
147
+ available documentation versions for the user) must also be updated.
135
148
136
- To make sure everyone's hard work gets credited, regenerate the github
137
- stats. `cd ` into the tools directory and run::
138
-
139
- python github_stats.py $TAG > ../doc/users/github_stats.rst
140
-
141
- where `$TAG ` is the tag of the last major release. This will generate
142
- stats for all work done since that release.
143
149
144
150
In the matplotlib source repository, build the documentation::
145
151
@@ -160,6 +166,8 @@ changes upstream::
160
166
git commit -m "Updating for v1.0.1"
161
167
git push upstream master
162
168
169
+
170
+
163
171
Announcing
164
172
==========
165
173
0 commit comments