SQLite 3.7.15 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 dan ok  *
d.   Windows MSVC Win32 /W3 mistachkin ok  *
e.   Windows MSVC Win64 /W3
cross-compile via XCOMPILE=1 USE_NATIVE_LIBPATHS=1
mistachkin ok  *
f.   sh tool/warnings-clang.sh drh ok  *
 
2.   Documentation checks: drh ok  *
 
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) drh ok  *
h.   Test metrics are up-to-date (testing.html) drh ok  *
i.   Check new/changed documentation for spelling and gramatical mistakes drh ok  *
j.   Verify that this checklist agrees with planning documents drh ok  *
 
3.   Source code change review. "fossil diff --from release --to trunk" drh ok  *
 
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. drh ok  *
 
4.   OMIT, ENABLE, and DISABLE options: dan ok  *
 
a.   tclsh ../tool/omittest.tcl -skip_run dan ok  *
 
5.   Tests for platform Linux x86: dan ok  *
 
a.   tclsh releasetest.tcl dan ok  *
b.   tclsh th3make cov.rc (verify 100% branch test coverage) drh ok  *
c.   tclsh fulltest.tcl fast.rc test.rc drh ok  *
d.   tclsh th3make fast-ex.rc dan ok  *
 
6.   Tests for platform Linux x86_64: drh ok  *
 
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) drh ok  *
c.   tclsh releasetest.tcl
rerun after the integer/floating-point fix
drh ok  *
d.   tclsh fulltest.tcl fast.rc test.rc drh ok  *
e.   tclsh th3make memdebug.rc drh ok  *
f.   tclsh th3make test-ex.rc drh ok  *
g.   tclsh th3make test.rc CC=clang drh ok  *
h.   tclsh th3make fast.rc CC=clang drh ok  *
 
7.   Tests for platform Mac OS-X x86: dan ok  *
 
a.   tclsh releasetest.tcl dan ok  *
b.   tclsh fulltest.tcl fast.rc test.rc dan ok  *
c.   tclsh th3make fast.rc CC=clang dan ok  *
 
8.   Tests for platform Mac OS-X PPC: drh ok  *
 
a.   tclsh th3make -Os min.rc drh ok  *
 
9.   Tests for platform Win32/64: mistachkin ok  *
 
a.   make test
also msvc.rc, 32-bit Win7
mistachkin ok  *
b.   th3make test.rc
also mingw.rc, 32-bit Win7
mistachkin ok  *
c.   th3make fast.rc
also msvc.rc, 64-bit Win7
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 mistachkin ok  *
g.   At least one of the above on WinRT
32-bit ARM Win8, MSVC
mistachkin ok  *
h.   Verify that EXEs and DLLs generated using MSVC contain the correct version number, product name, description, and copyright as resources. mistachkin ok  *
i.   th3make msvc.rc test.rc /RTC1
64-bit Win 7 MSVC
mistachkin ok  *
 
10.   Tests for platform Android: drh ok  *
 
a.   th3make -Os min.rc
wal1.wal37.104 fails due to instrumentation, as expected. All other 907117 tests pass.
drh ok  *
 
11.   Tests for platform OpenBSD x86: dan ok  *
 
a.   make test dan ok  *
b.   th3make -Os min.rc dan ok  *
 
12.   Tests for platform Solaris Sparc: drh ok  *
 
a.   make test
The usual failure on e_expr-31.2.4 due to differences in floating point hardware.
drh ok  *
b.   th3make test.rc drh ok  *
c.   th3make fast.rc drh ok  *
 
13.   Other test performed on any available platform: dan ok  *
 
a.   th3make alignment2.rc test.rc drh ok  *
b.   th3make test.rc -DHAVE_LOCALTIME_R dan ok  *
c.   th3make test.rc -DSQLITE_THREADSAFE=0 dan ok  *
d.   th3make test.rc -ftrapv drh ok  *
e.   th3make test.rc -DSQLITE_MAX_ATTACHED=62 dan ok  *
f.   th3make min.rc -Os; valgrind ./th3 dan ok  *
g.   valgrind testfixture permutations.test valgrind
linux x86_64
dan ok  *
 
14.   Sqllogictest: mistachkin ok  *
 
a.   Checked in latest SQLite amalgamation drh ok  *
b.   No compiler warnings drh ok  *
c.   run-all.sh with no errors drh ok  *
d.   run-all.bat with no errors
built with Makefile.mingw, 32-bit Win 7
mistachkin ok  *
 
15.   Build using the configure/make in main source tree. drh ok  *
 
a.   Make sure that autoconf has been run to update the configure script. dan ok  *
b.   Run "make test" to verify that the build works. dan ok  *
c.   Verify the correct version numbers have been installed. dan ok  *
d.   Verify that the --disable-amalgamation option to configure works. dan ok  *
e.   Works on Linux dan ok  *
f.   Works on Mac dan ok  *
g.   Works on OpenBSD dan ok  *
h.   Works on Solaris drh ok  *
 
16.   Exported symbol checks: tool/symbols.sh drh ok  *
 
a.   No private symbols exported. (This is also checked by releasetest.tcl) drh ok  *
b.   No undesirable library dependencies drh ok  *
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. dan ok  *
 
20.   SEE tests using TH3: drh ok  *
 
a.   see.c
Windows
mistachkin ok  *
b.   see-aes128-ofb.c
linux memdebug.rc
drh ok  *
c.   see-aes256-ofb.c
mac test.rc
drh ok  *
d.   see-rc4.c
mac with min.rc
drh ok  *
e.   see-aes128-ccm.c
prior failures were due to TH3 problems that are now fixed.
drh ok  *
f.   At least one of the above using test.rc
mac see-aes256-ofb.c
drh ok  *
g.   At least one of the above using memdebug.rc
see-aes128-ofb linux
drh ok  *
h.   At least one of the above on Linux drh ok  *
i.   At least one of the above on Mac
see-rc4.c
drh ok  *
j.   At least one of the above on Windows
msvc.rc see.rc memdebug.rc test.rc, 32-bit Win 7
mistachkin ok  *
 
21.   ZIPVFS tests: drh ok  *
 
a.   testfixture ../zipvfs/test/zipvfs.test (See test/README.txt in the ZIPVFS source tree for details.) dan ok  *
b.   th3make zipvfs.rc test.rc dan ok  *
c.   th3make zipvfs.rc memdebug.rc
msvc win7 x64 - single failure on zipvfs4.softheaplimit02.15120.3. All other tests pass. This one failure is most likely instrumentation.
drh ok  *
d.   th3make zipvfs.rc min.rc; valgrind ./th3 dan ok  *
e.   At least one of the above on Linux dan ok  *
f.   At least one of the above on Mac
21b is on osx.
dan ok  *
g.   At least one of the above on Windows
memdebug.rc
drh ok  *
 
22.   NX-Devkit compiles and runs "tclsh test.rc nx_compress.o" without error. drh ok  *
 
23.   Amalgamation autoconf tarball. dan ok  *
 
a.   Builds dan ok  *
b.   Works on Linux dan ok  *
c.   Works on Mac dan ok  *
 
24.   TEA archive builds correctly and runs: dan ok  *
 
a.   Linux dan ok  *
b.   Mac dan ok  *
 
25.   Run performance tests comparing the new SQLite release against the previous version. Verify no performance regressions. drh ok  *
 
a.   The TCL speed*.test scripts
43358M cycles on 3.7.15 and 43440M cycles on 3.7.14.1
drh ok  *
b.   The TH3 speed tests
22823M cycles on 3.7.15 versus 22857M cycles on 3.7.14.1
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
40342M cycles on 3.7.15 versus 40360M cycles on 3.7.14.1
drh ok  *
 
26.   Verify that the amalgamation builds are byte-for-byte identical on all workstation platforms. drh ok  *
 
a.   linux x86
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
drh ok  *
b.   linux x64
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
drh ok  *
c.   mac leopard
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
drh ok  *
d.   mac snow-leopard
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
drh ok  *
e.   openbsd
[bd7aeeb691f]: 21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h on devio.us
drh ok  *
f.   windows native mingw mistachkin ok  *
g.   windows nmake
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c, 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
mistachkin ok  *
h.   sparc solaris using autoconf
21f9a00fe2fa4a17b132f607dbcd83e354501e2d sqlite3.c 0def544ef56e14e7946c2b852d68bc4a9338570f sqlite3.h
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.
Tested using backcompat.test against 3.6.4 and 3.7.1
dan ok  *
 
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. drh ok  *
 
a.   32-big to 64-little, database drh ok  *
b.   32-big to 64-little, WAL drh ok  *
c.   32-big to 64-little, rollback drh ok  *
d.   64-little to 32-little, database drh ok  *
e.   64-little to 32-little, WAL drh ok  *
f.   64-little to 32-little, rollback drh ok  *
g.   32-little to 32-big, database drh ok  *
h.   32-little to 32-big, WAL drh ok  *
i.   32-little to 32-big, rollback drh ok  *
j.   64-little to 32-big, SEE database drh ok  *
k.   64-little to 32-big, ZIPVFS database drh ok  *
l.   64-little to 32-big, CEROD database drh ok  *
 
29.   Build and verify correct operation of sqlite3_analyzer on: drh ok  *
 
a.   Linux drh ok  *
b.   Mac drh ok  *
c.   Sparc Solaris drh ok  *
d.   Win32 (MinGW) mistachkin ok  *
e.   Win32 (MSVC) and verify correct output.
on win7
drh ok  *
 
30.   Tests for the sessions branch with macros SQLITE_ENABLE_SESSION and SQLITE_ENABLE_PREUPDATE_HOOK drh ok  *
 
a.   tclsh th3make test.rc (on windows)
win8 mingw: 0 errors out of 2641198 tests.
drh ok  *
b.   tclsh th3make test.rc (on unix) dan ok  *
c.   tclsh th3make cov.rc dan ok  *
d.   tclsh th3make min.rc -norun; valgrind ./th3 dan ok  *
e.   make test (on windows)
win7 msvc: the usual failures on hook-7.5.2.1 and hook-7.5.2.2. All else passes.
drh ok  *
f.   make test (on unix)
hook-7.5.2.1 and hook-7.5.2.2 still fail. As expected.
dan ok  *
g.   testfixture test/session.test dan 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.
Seems to work. Shell can be built with sqlite3-all.c just as it can with sqlite3.c.
dan ok  *
 
32.   System.Data.SQLite builds and checks out using the SQLite core
netfx40, debug, release, netCF
mistachkin ok  *