SQLite 3.7.7 Status Board

 
1.   Check compiler warnings seen on the following builds: --- ok
 
a.   Linux GCC using options -Wall -Wextra --- ok
b.   OpenBSD GCC using options -Wall --- ok
c.   Windows VC++
→ tested with nmake and ide at /w3 on 32-bit
shane ok
 
2.   Verify that documentation files are up-to-date: --- ok
 
a.   Latest release on the index.html page --- ok
b.   Release announcement in changes.in --- ok
c.   Release accouncement in news.html --- ok
d.   No unresolved hyperlinks in the documentation build --- ok
e.   The compile-time options are all up-to-date (compile.html) --- ok
f.   Database footprint is up-to-date (features.html) --- ok
g.   Test metrics are up-to-date (testing.html)
→ Valid for 3.7.5. No need to update at this time.
--- ok
h.   Check new/changed documentation for spelling and gramatical mistakes --- ok
i.   Verify that this checklist agrees with planning documents --- ok
 
3.   Review the differences between the release candidate and one or more prior releases to verify: --- ok
 
a.   No stray changes --- ok
b.   All significant changes are mentioned in the "changes" log of the documentation --- ok
c.   New code complies with style guidelines
→ Exceptions granted for some of the newer FTS4 code.
drh ok
d.   New code complies with design rules
→ Exceptions granted for some of the newer FTS4 code.
drh ok
e.   Comments have been updated to reflect code changes
→ Exceptions granted for some of the newer FTS4 code.
drh ok
f.   Variables and functions have been renamed to reflect changes in their use --- ok
 
4.   Verify SQLite compiles cleanly with all OMIT, ENABLE, and DISABLE options: --- ok
 
a.   tclsh ../tool/omittest.tcl -skip_run
→ passed with msvc
shane ok
 
5.   Run the following tests and verify output for platform Linux x86: --- ok
 
a.   tclsh releasetest.tcl drh ok
b.   tclsh th3make cov.rc (verify 100% branch test coverage)
→ 0 errors out of 754797 tests. No missed branches.
drh ok
c.   tclsh fulltest.tcl fast.rc test.rc drh ok
d.   tclsh th3make fast-ex.rc
→ 0 errors out of 14598894 tests - on "claire" (ubuntu, gcc-4.4.1)
drh ok
e.   tclsh th3make cov.rc -DHAVE_LOCALTIME_R=1 (verify 100% coverage) --- ok
 
6.   Run the following tests and verify output for platform Linux x86_64: --- ok
 
a.   tclsh releasetest.tcl --- ok
b.   tclsh fulltest.tcl fast.rc test.rc drh ok
c.   tclsh th3make memdebug.rc
→ 0 errors out of 2577123 tests
drh ok
d.   tclsh th3make test-ex.rc
→ 0 errors out of 14677349 tests
drh ok
 
7.   Run the following tests and verify output for platform Mac OS-X x86: --- ok
 
a.   tclsh releasetest.tcl drh ok
b.   tclsh fulltest.tcl fast.rc test.rc drh ok
 
8.   Run the following tests and verify output for platform Max OS-X PPC: --- ok
 
a.   tclsh th3make -Os min.rc --- ok
 
9.   Run the following tests and verify output for platform Win32: --- ---
 
a.   make fulltest --- ---
b.   th3make test.rc
→ 0 errors out of 2103370 tests in 24 configurations
shane ok
c.   th3make fast.rc
→ 0 errors out of 2013967 tests in 24 configurations
shane ok
 
10.   Run the following tests and verify output for platform Win64: --- ---
 
a.   make fulltest --- ---
b.   th3make test.rc (compiled using VC++)
→ 0 errors out of 2112805 tests in 24 configurations
shane ok
c.   th3make fast.rc
→ 0 errors out of 2017881 tests in 24 configurations
shane ok
 
11.   Run the following tests and verify output for platform Android: --- ok
 
a.   th3make -Os min.rc
→ 0 errors out of 799534 tests
--- ok
 
12.   Run the following tests and verify output for platform OpenBSD x86: --- ok
 
a.   make test
→ backup2-10 fails because of a difference in error reporting on OpenBSD. Not an issue.
--- ok
b.   th3make -Os min.rc
→ 0 errors out of 754323 tests
--- ok
 
13.   On one or more platforms of the tester's choice: drh ok
 
a.   th3make alignment2.rc test.rc
→ 0 errors out of 1653016 tests
drh ok
 
14.   Run test suites on various compilers and at various optimization settings for each compiler and verify that identical results are obtained on each run. This checklist item is designed to verify that SQLite code does not use C code constructs that are undefined or implementation defined. In particular, make sure the code works the same with and without the -ftrapv option on GCC. What other compilers and/or options can we list here? Clang? LLVM? --- ok
 
15.   Verify that everything still works with SQLITE_MAX_ATTACHED in the 50 to 60 range. --- ok
 
16.   Update the amalgamation build for sqllogictest. Recompile and run the entire test suite in verification mode. Verify that there are no errors. Check-in the new amalgamation build in the sqllogictest Fossil repository.
→ 0 errors out of 17819637 tests.
drh ok
 
17.   The veryquick.test TCL tests run under valgrind with no unexplained errors or warnings. Note that some tests deliberately reference memory that has previously been freed which will cause valgrind warnings. Those tests are clearly marked. drh ok
 
18.   Run TH3 tests tclsh th3make -Os min.rc under valgrind with no unexplained errors or warnings. Some TH3 tests deliberately do things that valgrind will complain about. Those tests are clearly marked. drh ok
 
19.   Build using the configure/make in main source tree. --- ok
 
a.   Make sure that autoconf has been run to update the configure script. --- ok
b.   Run "make test" to verify that the build works. --- ok
c.   Verify the correct version numbers have been installed. --- ok
d.   Verify that the --disable-amalgamation option to configure works. --- ok
 
20.   Build a library from the amalgamation using both SQLITE_ENABLE_FTS3 and SQLITE_ENABLE_RTREE and verify that no internal symbols are exported. --- ok
 
21.   Update the SQLite amalgamation that is built into Fossil. Recompile and run a complete test. --- ok
 
22.   Update the SQLite amalgamation that is built into the public Firefox sources. Recompile and verify that the new SQLite is being used (by checking the version mark in the header of one of the Firefox database files) and that Firefox still works correctly and efficiently. dan ok
 
23.   Copy the SQLite amalgamation into CEROD. Compile CEROD and run the test scripts in the test/ subdirectory. Verify correct output. --- ok
 
24.   Copy the SQLite amalgamation into SEE. Compile and test all five variations of SEE using a command similar to tclsh th3make see.rc min.rc -Os -DSQLITE_DEBUG -DSQLITE_MEMDEBUG, with or without the optional switches. Test controllers "test.rc" and "fast.rc" can be substituted for "min.rc"; each should be used at least once. --- ok
 
a.   see.c --- ok
b.   see-aes128-ofb.c --- ok
c.   see-aes256-ofb.c drh ok
d.   see-rc4.c drh ok
e.   see-aes128-ccm.c --- ok
 
25.   Run the following ZIPVFS tests on at least one platform each: --- ok
 
a.   testfixture ../zipvfs/test/zipvfs.test (See test/README.txt in the ZIPVFS source tree for details.)
→ zipvfs5-17.1 failed with 38 instead of 36 free slots on x64. I'm not going to stress over the difference.
drh ok
b.   th3make zipvfs.rc test.rc drh ok
c.   th3make zipvfs.rc memdebug.rc --- ok
d.   th3make zipvfs.rc min.rc (Run under Valgrind with no unexplained errors)
→ Made one change in zipvfs to avoid a valgrind warning.
dan ok
 
26.   Build the amalgamation autoconf tarball. On Linux and Mac OS-X, unpack that tarball in a temporary directory and verify that it builds correctly.
→ products_build.sh produces a working amalgamation autoconf tarball
dan ok
 
27.   Build the TEA archive. On Linux and Mac OS-X, unpack that TEA archive into a temporary directory and verify that it builds correctly.
→ Same tarball as in item 26 works for TEA builds
dan ok
 
28.   Run performance tests comparing the new SQLite release against the previous version. Verify no performance regressions. --- ok
 
a.   The TCL speed*.test scripts
→ Ran speed1p.test and speed4p.test. With 3.7.6.3 and trunk. Times look similar.
dan ok
b.   The TH3 speed tests --- 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
--- ok
 
29.   Verify that the amalgamation builds are byte-for-byte identical on all workstation platforms. --- ok
 
30.   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.
→ Ran backcompat.test with rtree+fts enabled builds of trunk, 371 and 364.
dan ok
 
31.   Verify that databases, rollback journals, and WAL files are portable across --- ok
 
a.   32/64 bit platforms, and --- ok
b.   little/big-endian platforms. --- ok
 
32.   Build and verify correct operation of sqlite3_analyzer on: --- ok
 
a.   Linux --- ok
b.   MacOSX --- ok
c.   Win32 --- ok
 
33.   Run the CLI tests found under the tool subfolder in the main source tree and verify correct output.
→ passed on 32-bit windows
shane ok
 
34.   All changes in trunk have been merged into each of the following branches and those branches have been tested using TCL and TH3. --- ok
 
a.   sessions
→ veryquick.test (tcl) and min.rc (th3) both pass
--- ok
b.   apple-osx
→ veryquick.test (tcl) and min.rc (th3) both pass
dan ok
 
35.   Verify that all branches that are no longer active have been closed. --- ok
 
36.   Verify that the bug response checklist has been completed for all bugs found since the previous release. --- ok
 
37.   Verify that the new feature checklist has been completed for all enhancements made since the previous release. --- ok