Hi, I've now corrected or worked around issues with various sqlite versions. These tests have failed before:
Markus Wanner wrote: > 146 database_check FAIL (line 23) > 216 i_selector FAIL (line 32) Revision 40dba08582bcb2eecde9c9700fcab85b11f2ff61 adds a 'hex()' function for sqlite versions below 3.3.13, which didn't have that, yet. That made these two tests succeed for sqlite 3.3.8 - 3.3.13. > 192 empty_environment FAIL (line 29) The 'empty_environment' test does no longer completely wipe the environment, but maintains the given LD_LIBRARY_PATH environment variable. This only works under Linux for now. I'm lacking any other systems to test on. Added in rev f67d1482d7c2aa37adaeeb7db09161be9dc8b616 This should also help other linked libraries. > 203 fail_cleanly_on_unreadable_db unexpected success Rev b268fec033da5902f6af76e8e56b2ace759e090f fixes this issue by removing he offending checks. Investigating revealed, that newer sqlite3 versions are trying to read/write a journal file in the same directory where the database resides. That of course fails for unreadable, but only searchable directories. Here's an strace of sqlite3 trying to open a journal file on a a-rw+x parent directory '/home/markus/test': open("/home/markus/test/test.db-journal", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE|O_NOFOLLOW, 0644) = 4 open("/home/markus/test", O_RDONLY|O_LARGEFILE) = -1 EACCES (Permission denied) close(4) With these fixes I've been able to compile and successfully test monotone against all of these sqlite versions: 3.3.8 (as currently included in debian etch / stable) 3.3.12 3.3.17 3.4.1 (what we shipped up to now) 3.5.9 (as currently included in debian lenny / testing) 3.6.3 (newest upstream release) I didn't care to test anything older than 3.3.8. Regards Markus Wanner _______________________________________________ Monotone-devel mailing list Monotone-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/monotone-devel