Release notes: This release contains a huge amount of new features, bug fixes, and performance improvements. It is worth noting that v2.0 Postgres delta backups are not backward-compatible with the pre-2.0 versions. It means that the v2.0 delta backup can't be restored with the v1.1 or earlier versions. Also, this release introduces the initial support for Greenplum physical backups.
WAL-G for MySQL now supports the parallel backup-push/backup-fetch and has an optimized binlog upload mechanism. WAL-G for SQLServer now supports the backup encryption and compression as well as the external storage backup import/export. WAL-G v2.0 is available for download on [our GitHub releases page](https://github.com/wal-g/wal-g/releases/tag/v2.0.0 "our GitHub releases page"). Common: - Update lz4, brotli #1165, #1179 - Multiple libsodium fixes #1087, #1227 - Bash/zsh shell completions #1250, #1252 - Add a 'flags' subcommand #1033 - Disable CPU Limits in turbo mode #1121 - Metrics forwarding via statsd protocol #1240 SQLServer: - Add SQLServerDBConcurrency setting to limit concurrent database operations #1067 - Add LATEST keyword handling #1110 - Add norecovery option for backup log command #1115 - Add SQLServer compression / encryption #1161 - Backup import and export to the external storage #1184 Postgres: - Add CopyComposer for full backups optimization using remote copy API #1012 - Add streamed JSON sentinel serialization to decrease memory usage #1103 - Extract heavy files and tarfilesets from the backup sentinel #1114 - Introduce WALG_TAR_DISABLE_FSYNC to skip fsync during backup-fetch #1144 - Add reduced memory usage backup mode #1101 - Improvements and fixes for remote backup #1175 - Add pgBackRest backups restore support (beta) #1139, #1202 - Add 'wal-restore' command #977 - Add 'delete garbage' command #1217, #1218 - Return custom error code when WAL file does not exist #1195 - Add WALG_ALIVE_CHECK_INTERVAL to fail backup on Postgres process failure #1260 - Reformat LSN output #1259 MySQL: - Add wal-g binlog-analyze #1085 - Check binlog GTIDs before pushing binlogs to S3 #1190 - Add --check-gtids to wal-g binlog-push #1085 - Add --until-binlog-last-modified-time option to wal-g-mysql binlog-replay #1154 - Improve MySQL restore performance #1131 - Allow backups on cascade replicas #1168 - Fix mysql backup of a lagging replica #1223 - Make mysql bilong-push status observable to 3rd party tools #1229 Greenplum: - Initial physical backups support for GPDB 6.19.2+. API might change in the future versions. Storages: - Add get/put/rm/cat to storage tools #1069, #1164 - S3: Add download by range #1083 - S3: Add connection reset retries #1137 - S3: Add WALG_S3_MAX_RETRIES setting #1148 - S3: Fix S3_LOG_LEVEL setting #1158 - S3: AWS authentication fixes #1209 - S3: Yandex Cloud session token auth support #1213 - SSH: Ensure trailing delimiter in the storage prefix #1130 - Azure: Switch to the recommended azblob SDK #1135, #1171 - Azure: Fix ListFolder never returning error #1208 - Swift: Ignore files that were not found during ListFolder #1129 Best regards, WAL-G team.