Page MenuHomePhabricator

Should support modern compression (not just gzip) with $wgCompressRevisions/compressOld.php
Open, Needs TriagePublic

Description

When the wiki enables "compress text of revisions" feature, they want to minimize the size of the database (at the slight cost of performance).
However, currently only very old 'gzip' compression is supported, which has vastly inferior compression ratio compared to modern tools like 'xz'.

Instead of hardcoding "gzip", "gzdeflate" and "gzinflate" in ConcatenatedGzipHistoryBlob and HistoryBlobStub, we should support multiple compression methods there.

Default should still be gzip (as most compatible solution which doesn't require third-party libraries), but if the wiki wants to opt-in to using another algorithm, it should be able to do so.