forked from nm-wu/nsf
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.release
123 lines (106 loc) · 4.31 KB
/
README.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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
Steps for a beta release:
- docs:
* update all docs with asciidoc in doc/
- code:
* tcl 8.5:
* configure with --enable-development
make test
* configure with --enable-memcount=yes
make test 2>&1|cat |fgrep Overall
* configure with --enable-development and activate valgrind in Makefile
make test 2>&1|cat |fgrep "definitely lost"
(8.5.11 ok, when every test returns "40 bytes in 2 blocks")
(8.5.14 ok, when on test reurns "64 bytes in 1 blocks")
* get rid of non-ansi-c
make "CFLAGS_DEFAULT=-ansi -pedantic"
(warnings are ok, errors not)
* compile with clang
make "CC=clang"
make "CC=clang" test
* run static analysis:
make cppcheck
#/opt/local/bin/scan-build-mp-3.9 -enable-checker alpha make
/opt/local/bin/scan-build-mp-3.9 make
/opt/local/bin/scan-view-mp-3.9 ...
* run Coverity (7.6.0, requires gcc 4.8):
(sudo port install gcc48)
(download Coverity Build Tool from https://scan.coverity.com/download/)
make clean
rm -rf cov-int/
/usr/local/cov-analysis-macosx-7.6.0/bin/cov-build --dir cov-int make CC=gcc-mp-4.8
tar czvf /tmp/nsf.tgz cov-int
curl --form token=jJ1QoqZ2Ksriz6JXtI3aHg \
--form email=<email> \
--form file=@/tmp/nsf.tgz \
--form version="`git describe --tags`" \
--form description="maintenance checkout" \
https://scan.coverity.com/builds?project=Next+Scripting+Framework
* configure without --enable-development
make install
make install-aol
test with naviserver/aolserver (xowiki/xowf)
* tcl 8.6:
* configure with --enable-development
make test
* configure with --enable-memcount=yes
make test 2>&1|cat |fgrep Overall
* configure with --enable-development and activate valgrind in Makefile
make test 2>&1|cat |fgrep "definitely lost"
(8.6b2 ok, when every test returns "40 bytes in 2 blocks")
(8.6.0 ok, when every test returns "0 bytes in 0 blocks")
- build windows binaries
- test tk apps under windows
- Announcement
* Summarize changes since the last release in doc/Announce-VERSION
As source use e.g.
git log --date-order --date=short|less
~/scripts/git-changelog2 -- 2.1.0..HEAD --no-merges > ChangeLog-2.1.0-HEAD
Diffstats
git diff --stat 2.1.0..HEAD
* Run spell checker over announcement + ChangeLog
* git add announcement
- rebuild documentation
* make doc
* make pdfdoc (currently, it is necessary to manually edit next-tutorial.html and next-migration.html
and replace setInterval() + next 4 lines by reinstall())
* call "make doc again" to remove editing traces
- build test-tar-file
* make tar
* check content of tar file
tar ztvf ../nsf2.2.0.tar.gz |sort -rn -k 5,6|less
- tag version in git and commit
git tag -a 2.0b5 -m 2.0b5
git push --tags
# git push --follow-tags
# git push commit
- build tar
* (make sure accurate COMMIT file is present, e.g., run ./configure once?)
* make tar
* check content of tar file
tar ztvf ../nsf2.0.tar.gz |sort -rn -k 5,6|less
- put NX API and shell onto sourceforge:
* cd doc/
* dtplite -o /tmp/doc/ -style man.css -header header.html.inc html .
* mv /tmp/doc/toc.html /tmp/doc/index.html
* scp -r /tmp/doc/* {gneumann|foxcruiser}@web.sourceforge.net:/home/project-web/next-scripting/htdocs/
* check https://next-scripting.sourceforge.io/
- update archive at sourceforge
* create folder with version name
* upload tar file to new folder
* upload announce to new folder and rename it to README
- update web site
* stefan, please add recommended steps here
- prepare next release:
rename folder containing nsf (e.g. to nsf2.2.0)
update version number in
* configure.ac (NsfVersion, NSF_MAJOR_VERSION, NSF_MINOR_VERSION)
* library/nx/nx.tcl
* library/nx/pkgIndex.tcl
* library/xotcl/library/xotcl2.tcl
* win/pkg.vc
* library/serialize/serializer.tcl
* library/mongodb/nx-mongo.tcl
* library/mongodb/configure.ac
in SRCDIR and SRCDIR/library/mongodb/
autoconf
./configure ....