( )⚙ 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
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

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–892

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