SQLite Status Board

1.   Compiler warning checks. (Warnings in the Porter stemmer code are allowed.) drh ok  *
a.   Linux GCC -Wall -Wextra (the tool/warnings.sh script) drh ok  *
b.   Mac GCC -Wall -Wextra (the tool/warnings.sh script) drh ok  *
c.   OpenBSD GCC using options -Wall drh ok  *
d.   Windows MSVC Win32 /W3 mistachkin ok  *
e.   Windows MSVC Win64 /W3 drh ok  *
f.   sh tool/warnings-clang.sh drh ok  *
2.   Documentation checks: --- ---
a.   Latest release on the index.html page drh ok  *
b.   Release announcement in changes.in drh ok  *
c.   Release accouncement in news.html drh ok  *
d.   No unresolved hyperlinks in the documentation build drh ok  *
e.   Requirements marks are up-to-date in both documentation and source code drh ok  *
f.   The compile-time options are all up-to-date (compile.html) drh ok  *
g.   Database footprint is up-to-date (features.html) --- ---
h.   Test metrics are up-to-date (testing.html) --- ---
i.   Check new/changed documentation for spelling and gramatical mistakes --- ---
j.   Verify that this checklist agrees with planning documents --- ---
3.   Source code change review. "fossil diff --from release --to trunk" --- ---
a.   No stray changes drh ok  *
b.   All significant changes are mentioned in the "changes" log of the documentation drh ok  *
c.   New code complies with style guidelines drh ok  *
d.   New code complies with design rules drh ok  *
e.   Comments have been updated to reflect code changes drh ok  *
f.   Variables and functions have been renamed to reflect changes in their use drh ok  *
g.   Check all multiplications, and especially those involving the offset parameters to sqlite3OsRead() and sqlite3OsWrite() or having operands pageSize or szPage to make sure that 32x32-bit multiplicates that intend to yield a 64-bit result do not instead truncate to 32-bits. drh ok  *
h.   Verify that source code contains no tabs and that surplus whitespace has been removed. --- ---
i.   Verify that the list of APIs exposed via the extension header is up-to-date (sqlite3ext.h) --- ---
4.   OMIT, ENABLE, and DISABLE options: --- ---
a.   tclsh ../tool/omittest.tcl -skip_run --- ---
5.   Tests for platform Linux x86: drh ok  *
a.   tclsh releasetest.tcl dan ok  *
b.   tclsh th3make cov.rc (verify 100% branch test coverage)
On branch in sqlite3VdbeIntegerAffinity() that should be an ALWAYS(). Otherwise all branches covered.
drh ok  *
c.   tclsh fulltest.tcl fast.rc test.rc dan ok  *
d.   tclsh th3make fast-ex.rc dan ok  *
6.   Tests for platform Linux x86_64: --- ---
a.   tclsh th3make cov.rc (verify 100% branch test coverage) drh ok  *
b.   tclsh th3make cov.rc -DHAVE_MALLOC_H -DHAVE_MALLOC_USABLE_SIZE (verify 100% branch test coverage) --- ---
c.   tclsh releasetest.tcl drh ok  *
d.   tclsh fulltest.tcl fast.rc test.rc drh ok  *
e.   tclsh th3make memdebug.rc --- ---
f.   tclsh th3make test-ex.rc
Failures on hlr10000.1.1 due to the 4-digit version number ( instead of 3.7.16). This is a test script problem and can be safely ignored.
drh ok  *
g.   tclsh th3make test.rc CC=clang --- ---
h.   tclsh th3make fast.rc CC=clang --- ---
7.   Tests for platform Mac OS-X x86: drh ok  *
a.   tclsh releasetest.tcl dan ok  *
b.   tclsh fulltest.tcl fast.rc test.rc drh ok  *
c.   tclsh th3make fast.rc CC=clang drh ok  *
8.   Tests for platform Mac OS-X PPC: --- ---
a.   tclsh th3make -Os min.rc --- ---
9.   Tests for platform Win32/64: --- ---
a.   make fulltestonly mistachkin ok  *
b.   th3make test.rc mistachkin ok  *
c.   th3make fast.rc mistachkin ok  *
d.   At least one of the above using MinGW mistachkin ok  *
e.   At least one of the above using MSVC-32 mistachkin ok  *
f.   At least one of the above using MSVC-64 --- ---
g.   At least one of the above on WinRT (x86) --- ---
h.   At least one of the above on WinRT (ARM) --- ---
i.   At least one of the above on Windows Phone --- ---
j.   Verify that EXEs and DLLs generated using MSVC contain the correct version number, product name, description, and copyright as resources. --- ---
k.   th3make msvc.rc test.rc /RTC1 --- ---
10.   Tests for platform Android: dan ok  *
a.   th3make -Os min.rc dan ok  *
11.   Tests for platform OpenBSD x86: drh ok  *
a.   make test drh ok  *
b.   th3make -Os min.rc drh ok  *
12.   Tests for platform Solaris Sparc: drh ok  *
a.   make test drh ok  *
b.   th3make test.rc drh ok  *
c.   th3make fast.rc drh ok  *
13.   Other test performed on any available platform: --- ---
a.   th3make alignment2.rc test.rc --- ---
b.   th3make test.rc -DHAVE_LOCALTIME_R --- ---
c.   th3make test.rc -DSQLITE_THREADSAFE=0 drh ok  *
d.   th3make test.rc -ftrapv drh ok  *
e.   th3make test.rc -DSQLITE_MAX_ATTACHED=62 --- ---
f.   th3make min.rc -Os -DTH3_LOWMEM; valgrind ./th3 drh ok  *
g.   valgrind testfixture permutations.test valgrind --- ---
14.   Sqllogictest: --- ---
a.   Checked in latest SQLite amalgamation --- ---
b.   No compiler warnings drh ok  *
c.   run-all.sh with no errors drh ok  *
d.   run-all.bat with no errors --- ---
15.   Build using the configure/make in main source tree. --- ---
a.   Make sure that autoconf has been run to update the configure script. --- ---
b.   Run "make test" to verify that the build works. --- ---
c.   Verify the correct version numbers have been installed. --- ---
d.   Verify that the --disable-amalgamation option to configure works. --- ---
e.   Works on Linux --- ---
f.   Works on Mac --- ---
g.   Works on OpenBSD drh ok  *
h.   Works on Solaris drh ok  *
16.   Exported symbol checks: tool/symbols.sh --- ---
a.   No private symbols exported. (This is also checked by releasetest.tcl) --- ---
b.   No undesirable library dependencies --- ---
c.   No private symbols exported in MinGW (check using tool/symbols-mingw.sh) drh ok  *
d.   No undesirable library dependencies on MinGW drh ok  *
17.   Fossil updated to use the latest SQLite. drh ok  *
a.   No compiler warnings drh ok  *
b.   Used on active websites with no issues drh ok  *
18.   Firefox recompiled using lastest SQLite. drh ok  *
a.   No SQLite compiler warnings drh ok  *
b.   Active use with no issues noted drh ok  *
19.   CEROD tests in the test/ subdirectory.
test01 only
drh ok  *
20.   SEE tests using TH3: --- ---
a.   see.c drh ok  *
b.   see-aes128-ofb.c --- ---
c.   see-aes256-ofb.c --- ---
d.   see-rc4.c --- ---
e.   see-aes128-ccm.c --- ---
f.   At least one of the above using test.rc --- ---
g.   At least one of the above using memdebug.rc --- ---
h.   At least one of the above on Linux drh ok  *
i.   At least one of the above on Mac --- ---
j.   At least one of the above on Windows --- ---
21.   ZIPVFS tests: --- ---
a.   testfixture ../zipvfs/test/zipvfs.test (See test/README.txt in the ZIPVFS source tree for details.) --- ---
b.   th3make zipvfs.rc test.rc drh ok  *
c.   th3make zipvfs.rc memdebug.rc --- ---
d.   th3make zipvfs.rc min.rc -DTH3_VALGRIND; valgrind ./th3 drh ok  *
e.   At least one of the above on Linux drh ok  *
f.   At least one of the above on Mac --- ---
g.   At least one of the above on Windows --- ---
22.   NX-Devkit compiles and runs "tclsh th3make test.rc nx_compress.o" without error. --- ---
23.   Amalgamation autoconf tarball. --- ---
a.   Builds --- ---
b.   Works on Linux --- ---
c.   Works on Mac --- ---
24.   TEA archive builds correctly and runs: --- ---
a.   Linux --- ---
b.   Mac --- ---
25.   Run performance tests comparing the new SQLite release against the previous version. Verify no performance regressions. --- ---
a.   The TCL speed*.test scripts --- ---
b.   The TH3 speed tests
Two runs versus 3.7.15. 3.7.16 is clearly faster.
drh ok  *
c.   sqlite3 sqlite.fossil .dump >speed-c.sql
fossil timeline -R sqlite.fossil -n 300 -sqltrace 2>>speed-c.sql
fossil rebuild sqlite.fossil -sqltrace 2>>speed-c.sql
--- ---
26.   Verify that the amalgamation builds are byte-for-byte identical on all workstation platforms. --- ---
a.   linux x86 drh ok  *
b.   linux x64 drh ok  *
c.   mac leopard --- ---
d.   mac snow-leopard --- ---
e.   openbsd --- ---
f.   windows native mingw drh ok  *
g.   windows nmake drh ok  *
h.   sparc solaris using autoconf drh ok  *
27.   Verify that databases (including FTS3 and RTREE databases), rollback journals, and WAL files created by the release candidate are readable and writeable by historical versions of SQLite (as long as no unsupported features are used) and vice versa. --- ---
28.   Cross-platform tests. Verify the ability of databases, WAL files, and rollback journals to be copied and used between 32-bit and 64-bit systems and between big-endian and little-endian systems. --- ---
a.   32-big to 64-little, database --- ---
b.   32-big to 64-little, WAL --- ---
c.   32-big to 64-little, rollback --- ---
d.   64-little to 32-little, database --- ---
e.   64-little to 32-little, WAL --- ---
f.   64-little to 32-little, rollback --- ---
g.   32-little to 32-big, database --- ---
h.   32-little to 32-big, WAL --- ---
i.   32-little to 32-big, rollback --- ---
j.   64-little to 32-big, SEE database --- ---
k.   64-little to 32-big, ZIPVFS database --- ---
l.   64-little to 32-big, CEROD database --- ---
29.   Build and verify correct operation of sqlite3_analyzer on: --- ---
a.   Linux drh ok  *
b.   Mac --- ---
c.   Sparc Solaris drh ok  *
d.   Win32 (MinGW) --- ---
e.   Win32 (MSVC) and verify correct output. drh ok  *
30.   Tests for the sessions branch with macros SQLITE_ENABLE_SESSION and SQLITE_ENABLE_PREUPDATE_HOOK --- ---
a.   tclsh th3make test.rc (on windows) --- ---
b.   tclsh th3make test.rc (on unix) --- ---
c.   tclsh th3make cov.rc --- ---
d.   tclsh th3make min.rc -norun; valgrind ./th3 --- ---
e.   make test (on windows) --- ---
f.   make test (on unix) drh ok  *
g.   testfixture test/session.test drh ok  *
31.   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. drh ok  *
32.   System.Data.SQLite builds and checks out using the SQLite core
netfx40 debug
mistachkin ok  *