☰ Home
Timeline
Forum
Compiler warning checks.
Linux GCC -Wall -Wextra (the tool/warnings.sh script)
Mac GCC -Wall -Wextra (the tool/warnings.sh script)
OpenBSD GCC using options -Wall
Windows MSVC Win32 /W3
Windows MSVC Win64 /W3
sh tool/warnings-clang.sh
Documentation checks:
Latest release on the index.html page
Release announcement in changes.in
Release accouncement in news.html
No unresolved hyperlinks in the documentation build
Requirements marks are up-to-date in both documentation and source code
The compile-time options are all up-to-date (compile.html)
Check new/changed documentation for spelling and gramatical mistakes
Source code change review.
"fossil diff --from version-3.8.7 --to branch-3.8.7 "
No stray changes
All significant changes are mentioned in the "changes" log
of the documentation
New code complies with style guidelines
New code complies with design rules
Comments have been updated to reflect code changes
Variables and functions have been renamed to reflect changes
in their use
Check all calls to sqlite3OsRead() and sqlite3OsWrite() to ensure that
offset computations are 64-bit clean.
Check all calls to memory allocation routines to ensure that size
computations are 64-bit clean.
Suggested regular expression for search: /(Re|M)alloc[FORZa-z]*(/
Verify that source code contains no tabs and that surplus whitespace has
been removed.
Verify that the list of APIs exposed via the extension header is
up-to-date (sqlite3ext.h)
OMIT, ENABLE, and DISABLE options:
tclsh ../tool/omittest.tcl -skip_run -target libsqlite3.a
Tests for platform Linux x86_64 :
tclsh th3make cov.rc
(verify 100% branch test coverage)
tclsh th3make cov.rc -DHAVE_MALLOC_H -DHAVE_MALLOC_USABLE_SIZE
(verify 100% branch test coverage)
tclsh th3make cov.rc -DSQLITE_ENABLE_STAT4
(verify 100% branch test coverage)
tclsh releasetest.tcl
tclsh fulltest.tcl fast.rc test.rc
tclsh th3make memdebug.rc
tclsh th3make test-ex.rc
tclsh th3make test.rc CC=clang
tclsh th3make fast.rc CC=clang
./mptester x.db mptest/crash01.test
./mptester x.db mptest/multiwrite01.test
Tests for 32-bit x86 Linux
tclsh th3make test.rc -m32
tclsh th3make test.rc CC=clang -m32
tclsh th3make quick.rc -m32
Tests for platform Linux ARM (BeagleBoard)
tclsh th3make min.rc
Recompile and test Fossil
Tests for platform Mac OS-X x86 :
tclsh releasetest.tcl
tclsh fulltest.tcl min.rc
tclsh th3make fast.rc CC=clang
./mptester x.db mptest/crash01.test
./mptester x.db mptest/multiwrite01.test
Tests for platform Win32/64 :
make fulltestonly
th3make test.rc
th3make fast.rc
Verify that EXEs and DLLs generated using MSVC contain the correct
version number, product name, description, and copyright as resources.
th3make msvc.rc test.rc /RTC1
mptester x.db mptest/crash01.test
mptester x.db mptest/multiwrite01.test
nmake /f makefile.msc DEBUG=2 test
Tests for platform Android :
th3make quick.rc
Tests for platform OpenBSD x86 :
make test
Tests for platform Solaris Sparc :
th3make fast.rc
Other test performed on any available platform:
th3make alignment2.rc test.rc
th3make test.rc -DHAVE_LOCALTIME_R
th3make test.rc -DSQLITE_THREADSAFE=0
th3make test.rc -ftrapv
OPTS=-DSQLITE_SMALL_STACK make sqlite3.c; th3make test.rc -DSQLITE_SMALL_STACK
th3make test.rc CC=clang -fsanitize=undefined
th3make test.rc -DSQLITE_MAX_ATTACHED=125
th3make quick.rc -valgrind
th3make quick.rc -DSQLITE_ENABLE_STAT4 -valgrind
th3make quick.rc -DHAVE_MALLOC_H -DHAVE_MALLOC_USABLE_SIZE -valgrind
valgrind testfixture permutations.test valgrind
th3make quick.rc -DSQLITE_TRACE_SIZE_LIMIT=15
th3make quick.rc -funsigned-char
th3make quick.rc -fsigned-char
th3make quick.rc -DSQLITE_ENABLE_MEMSYS5 -DTH3_LOWMEM
th3make quick.rc -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS4
th3make quick.rc -DSQLITE_TEST_REALLOC_STRESS
th3make test.rc ../th3private/*.test
./configure; make fulltest
Sqllogictest:
Checked in latest SQLite amalgamation
No compiler warnings
run-all.sh with no errors
Build using the configure/make in main source tree.
Make sure that autoconf has been run to update the configure script.
Run "make test" to verify that the build works.
Verify the correct version numbers have been installed.
Verify that the --disable-amalgamation option to configure works.
Works on Linux
Exported symbol checks: tool/symbols.sh
No private symbols exported. (This is also checked by releasetest.tcl)
No undesirable library dependencies
No private symbols exported in MinGW (check using tool/symbols-mingw.sh)
No undesirable library dependencies on MinGW
Fossil updated to use the latest SQLite.
No compiler warnings
Used on active websites with no issues
Firefox recompiled using lastest SQLite.
No SQLite compiler warnings
Active use with no issues noted
CEROD tests in the test/ subdirectory.
SEE tests using TH3:
see.c
ZIPVFS tests:
testfixture ../zipvfs/test/zipvfs.test
(See test/README.txt in the ZIPVFS source tree for details.)
th3make zipvfs.rc test.rc
NX-Devkit compiles and runs "tclsh th3make test.rc nx_compress.o" without error.
Amalgamation autoconf tarball.
Builds
Works on Linux
Works on Mac
Run performance tests comparing the new SQLite release against the
previous release.
The speedtest1 program
Run "make wordcount; bash run-wordcount.bash $OPTIONS" with options:
bash run-wordcount.sh sqlite3.c
bash run-wordcount.sh sqlite3.c --cachesize 5 --nosync
Verify that the amalgamation builds are byte-for-byte identical on all
workstation platforms.
linux
mac
openbsd
windows native mingw
windows nmake
sparc solaris using autoconf
Build and verify correct operation of sqlite3_analyzer on:
Linux
Mac
Win32
Verify that the sqlite3-all.c build target works and that the resulting
sqlite3-all.c file and its include files (sqlite3-?.c) compile and run
the same as the single-file amalgamation.
This page was generated in about
0.003s by
Fossil 2.26 [761c24e7b0] 2024-11-19 14:28:30