summaryrefslogtreecommitdiff
path: root/release/process.mdwn
blob: 899c518f3e5e50a0029718139ab46c51ad88938b (plain)
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
[[!meta title="Release Process"]]
[[!meta author="DanielSilverstone"]]
[[!meta date="2016-11-19T12:05:07Z"]]


[[!toc]]

# Releasing a new version of NetSurf and libraries

First the libraries and tool sources must be created (only if they
need an update) and then the browser itself.

# Release the buildsystem

The buildsystem must be released first.

The buildsystem follows exactly the [[same process|release/corebuildsystem]]
as releasing any other component except there is an additional step.

Because this is the buildsystem and provides the makefiles for all the
other source builds you must go to the CI server and ensure the
source-buildsystem job has successfully run and produced output in
<http://ci.netsurf-browser.org/builds/sources/>

# Release libnspsl

The public suffix list library should be updated for each release
after the buildsystem. 

Delete the `public_suffix_list.dat` file and run make, this will cause a
fresh copy to be downloaded and converted. You will need the correct
perl modules installed for this step (at least debian package libidna-punycode-perl).

The [[release process|release/corebuildsystem]] is then the same as
any other module using the core buildsystem.

# Release libutf8proc

May have to update to upstream unless upstream have added a pkg-config file

The [[release process|release/corebuildsystem]] is largely similar otherwise.

# Other core buildsystem based libraries

libraries using the core buildsystem all useing the same [[release process|release/corebuildsystem]].

The libraries to release in order:

-   libwapcaplet
-   libnslog
-   libnsutils
-   libparserutils
-   libcss
-   libhubbub
-   libdom
-   libnsbmp
-   libnsgif
-   librosprite
-   libsvgtiny
-   nsgenbind
-   libnsfb
-   libpencil
-   librufl


# Releasing NetSurf

NetSurf itself does not use the core buildsystem and has its own [[release process|release/netsurfbuildsystem]]


# Releasing the all source

The [[all source release process|release/allsource]] should then be followed.


# Bugtracker

The netsurf release version must be marked as released in mantis and the
next development version added if its not already present.