( )⚙ D8148 revlog-compression: update the config to be a list

This is an archive of the discontinued Mercurial Phabricator instance.

revlog-compression: update the config to be a list
ClosedPublic

Authored by marmoute on Feb 25 2020, 5:15 AM.

Details

Summary

format.revlog-compression is now a list of engine, the first supported one is to
be used. Doing this have several benefits:

  1. this is fully backward compatible, config using a single entry will be read

as a single item list, not changing any behavior.

  1. This open the way to use zstd by default without impacting platform were it

is not available. This will be done in a later changesets.

Using zstd provide a significant performance boost explained in : bb271ec2fbfb.
However zstd is not available in some cases, A notable example is the --pure
version of Mercurial which doesn't come with zstd support.

Diff Detail

Repository
rHG Mercurial
Branch
default
Lint
No Linters Available
Unit
No Unit Test Coverage

Event Timeline

marmoute created this revision.Feb 25 2020, 5:15 AM
pulkit added a subscriber: pulkit.Feb 25 2020, 6:12 AM

Looks good to me, can you add an entry to relnotes/next?

mharbison72 requested changes to this revision.Feb 25 2020, 12:45 PM
mharbison72 added a subscriber: mharbison72.
mharbison72 added inline comments.
mercurial/helptext/config.txt
891

s/value/values/

892

s/wille/will/

tests/test-repo-compengines.t
25

Nit: It might help readability (especially with a list) if the engines were delimited with quotes or parenthesis or something. It's mostly obvious here, but not if it's in a config file. (And actually, I missed that "unknown" was used above, and thought it was an awkward sentence at first.)

This revision now requires changes to proceed.Feb 25 2020, 12:45 PM
marmoute marked an inline comment as done.Feb 25 2020, 6:18 PM
marmoute updated this revision to Diff 20303.
mharbison72 accepted this revision.Feb 25 2020, 6:58 PM

LGTM, thanks for the update.

Looks good to me, can you add an entry to relnotes/next?

still missing the release notes entry.

This revision was not accepted when it landed; it landed in state Needs Review.
This revision was automatically updated to reflect the committed changes.

Really glad for this online alarmsinwindows10 amazing post forever