mercurial/localrepo.py
changeset 44382 f0027a3dd7cb
parent 44363 f7459da77f23
child 44409 f935b680860d
equal deleted inserted replaced
44381:454bc51f114c 44382:f0027a3dd7cb
  3576         if ui.configbool(b'format', b'usefncache'):
  3576         if ui.configbool(b'format', b'usefncache'):
  3577             requirements.add(b'fncache')
  3577             requirements.add(b'fncache')
  3578             if ui.configbool(b'format', b'dotencode'):
  3578             if ui.configbool(b'format', b'dotencode'):
  3579                 requirements.add(b'dotencode')
  3579                 requirements.add(b'dotencode')
  3580 
  3580 
  3581     compengine = ui.config(b'format', b'revlog-compression')
  3581     compengines = ui.configlist(b'format', b'revlog-compression')
  3582     if compengine not in util.compengines:
  3582     for compengine in compengines:
       
  3583         if compengine in util.compengines:
       
  3584             break
       
  3585     else:
  3583         raise error.Abort(
  3586         raise error.Abort(
  3584             _(
  3587             _(
  3585                 b'compression engine %s defined by '
  3588                 b'compression engines %s defined by '
  3586                 b'format.revlog-compression not available'
  3589                 b'format.revlog-compression not available'
  3587             )
  3590             )
  3588             % compengine,
  3591             % b', '.join(b'"%s"' % e for e in compengines),
  3589             hint=_(
  3592             hint=_(
  3590                 b'run "hg debuginstall" to list available '
  3593                 b'run "hg debuginstall" to list available '
  3591                 b'compression engines'
  3594                 b'compression engines'
  3592             ),
  3595             ),
  3593         )
  3596         )
  3594 
  3597 
  3595     # zlib is the historical default and doesn't need an explicit requirement.
  3598     # zlib is the historical default and doesn't need an explicit requirement.
  3596     elif compengine == b'zstd':
  3599     if compengine == b'zstd':
  3597         requirements.add(b'revlog-compression-zstd')
  3600         requirements.add(b'revlog-compression-zstd')
  3598     elif compengine != b'zlib':
  3601     elif compengine != b'zlib':
  3599         requirements.add(b'exp-compression-%s' % compengine)
  3602         requirements.add(b'exp-compression-%s' % compengine)
  3600 
  3603 
  3601     if scmutil.gdinitconfig(ui):
  3604     if scmutil.gdinitconfig(ui):