Release Notes: There are no changes in S3QL itself. The S3QL 2.8 tarball accidentally included a copy of the Python dugong module; this has been fixed.
Release Notes: Fixes various problems with using a proxy server. Sending SIGUSR1 to mount.s3ql now generates a stack trace (debugging feature). When passing --installed to the test runner, S3QL commands are now loaded from $PATH instead of the packages bin/ directory. The runtest.py script now comes with the correct shebang (i.e. it can now be called as "./runtests.py" instead of "python3 runtests.py"). S3QL now requires the Python Dugong module. A filesystem hang when all upload threads encountered unexpected backend problems has been fixed.
Release Notes: Another race condition that could lead to mount.s3ql crashing with `ValueError: I/O operation on closed file` was fixed. S3QL now stores multiple copies of the master encryption key to allow recovery if the backend loses the object holding the primary copy. A problem with automatic cache size detection was fixed (mount.s3ql was treating bytes as kilobytes). An "AttributeError in LegacyDecryptDecompressFilter" crash when reading objects written by old S3QL versions was fixed. A problem with umount.s3ql giving a strange error when the mountpoint is still in use was fixed.
Release Notes: Various changes were made.
Release Notes: Fixes a crash when statvfs() is called on an almost empty filesystem (which may happen automatically when using some desktop environments, resulting in an immediate crash after mounting an empty filesystem). Fixes another race condition that could lead to the (apparent) vanishing of the file system metadata when the mount.s3ql is killed at an unfortunate time.
Release Notes: This release removes a race condition which resulted in a crash when a file was deleted while the upload was in progress and the upload was then restarted because of a connection problem, and another race condition which could lead to the (apparent) vanishing of the filesystem metadata when the mount.s3ql was killed at an unfortunate time. Specifying bzip2 as the compression algorithm for mount.s3ql no longer gives an error. S3QL programs no longer create an empty file in the default log file location if a custom log file is specified with --log.
Release Notes: Attempts to upgrade a filesystem that is already at the newest revision no longer render the local metadata copy unusable. Google storage bucket names containing dots no longer cause problems with SSL certificate validation. Fixes a crash when statvfs() is called on an almost empty file system. There is a new "swiftks" backend for OpenStack/Swift servers. Eliminates a race condition that could lead to mount.s3ql crashing with a "KeyError in collections/abc.py". Fixes a crash that could occur when trying to clean up after receiving a connection or server error when uploading an object.
Release Notes: Reading the file system passphrase from the authinfo2 file is now working again. The precedence of the authinfo2 sections has been fixed to agree with the documentation: later entries override earlier entries rather than the other way around. This release fixes a problem with mount.s3ql not recognizing the upgraded revision when `s3qladm upgrade` was run with a different --cachedir argument. This release fixes a crash in the s3 backend when multiple objects are deleted and the s3 connection needs to be re-established.
Release Notes: S3QL now uses SSL connections by default and verifies server certificates. A race condition that resulted in an apparent loss of remote metadata was fixed. The S3 backend now deletes multiple storage objects using one request if possible, reducing latency, traffic, and number of requests to S3. S3QL is now able to detect server errors and redirections before all data has been sent to the server. A new 'rackspace' backend that allows specification of the object storage region in the storage URL was added. The mount.s3ql --compress option now allows specification of the compression level.
Release Notes: Cycling of metadata backups when using the local backend now takes much less time. It is no longer required that S3QL and Python APSW be linked to the same SQLite shared library. In mount.s3ql, a crash when using --metadata-upload-interval 0 was fixed. Instead of completely unmounting the file system (and leaving the mount point inaccessible) when backend data is missing or corrupted, S3QL now returns an error and switches to read-only operation.