forked from postgis/postgis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
HOWTO_RELEASE
98 lines (81 loc) · 3.33 KB
/
HOWTO_RELEASE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
How to release
~~~~~~~~~~~~~~
Date: 2015-10-08
Versioning Scheme
-----------------
*PostGIS*
PostGIS release version is composed by POSTGIS_MAJOR_VERSION,
POSTGIS_MINOR_VERSION and POSTGIS_MICRO_VERSION components, all
set in Version.config.
By default only [POSTGIS_MICRO_VERSION] increments between releases.
Starting at PostGIS 2.1 in development POSTGIS_MICRO_VERSION should have
a "dev" string at the end
[POSTGIS_MINOR_VERSION] is incremented (and MICRO set to 0) when minor
additions have been introduced (one or two functions can be considered
*micro* additions)
[POSTGIS_MAJOR_VERSION] is incremented (and MICRO and MINOR set to 0) when
a dump/reload of existing spatial databases is *REQUIRED* for things
to work or rather *HIGHLY RECOMMENDED* to get new functionalities.
All POSTGIS_MICRO_VERSION that are in branch or trunk should end in dev.
So for example if you just release 2.1.1, then the 2.1 branch should have
POSTGIS_MICRO_VERSION set to 2dev so that the full version is 2.1.2dev.
*Liblwgeom*
Liblwgeom versioning is composed by by LIBLWGEOM_IFACE_CUR,
LIBLWGEOM_IFACE_AGE and LIBLWGEOM_IFACE_REV; all set and documented
in Version.config.
The liblwgeom versioning represents compatibility of the library
within a PostGIS minor version.
Requirements
------------
In order to build a release, you will need to build PostGIS and the
documentation -- that means having the required software:
* For PostGIS:
- PostgreSQL
- GEOS
- Proj4
- GDAL (for raster)
- json-c (for GeoJSON load support)
* For the docs:
- xsltproc
- DocBook XSL scripts
- ImageMagic
- DbLatex (for PDF)
Release procedure
-----------------
- Re-generate the ChangeLog (make ChangeLog)
- Edit NEWS: set release date and check all notable changes have
been reported (extract from ChangeLog).
- Edit README.postgis and set release date and version.
- Add release notes in doc/release_notes.xml
- Update Version.config to drop the "dev" suffix
- Commit all changes
- Tag branch:
$ base=http://svn.osgeo.org/postgis/
$ rev=x.x.0
$ svn copy -m "Tagged release $rev" $base/trunk $base/tags/$rev
- Run: sh make_dist.sh $rev (or use debbie for this)
- Build and test generated tarball (including extension upgrade)
- Copy tarball to web site and edit downloads page
- Announce on e-mail
- postgis-users
- postgis-devel
- pgsql-announce
- osgeo-discuss
- Update web sites
- PostGIS News
- https://svn.osgeo.org/postgis/web/_content/posts
a) create a new Post for current year making sure the page name starts with mm-dd
b) Update links on https://svn.osgeo.org/postgis/web/_content/pages/source.html
c) commit and wait 5 minutes to see changes on website
- PostGIS doc release versioned doc - http://postgis.net/documentation/
(For building pdf, debbie has tagged jobs
-- http://debbie.postgis.net:8080 (log in)
Create new job copy last tag e.g. PostGIS_2.0_tagged_docs to PostGIS_2.1_tagged_docs
and make appropriate edits and then just run.
Or just be lazy and bug Regina Obe do this.
- Wikipedia
- Twitter (we all love twitter don't we)
- Update Trac and make old Milestone as completed
- Push the revision number forward (see Versioning Scheme)
- Ensure all the previous released minor versions are listed in
extension/upgradeable_versions.mk including the one you just released