D5800: config: introduce a new value for ui.relative-paths getting old behavior

Yuya Nishihara yuya at tcha.org
Sat Feb 2 21:11:08 EST 2019


Looks good, but I find it isn't easy to parse the meaning of
`getuipathfn(repo, forcevalue=True)`. Perhaps it can be spelled as
`forcerelative=True`.

> +def getuipathfn(repo, legacyvalue=False, forcevalue=None):

> +    if forcevalue is not None:
> +        relative = forcevalue
> +    else:
> +        config = repo.ui.config('ui', 'relative-paths')
> +        if config == 'legacy':
> +            relative = legacyvalue
> +        else:
> +            relative = stringutil.parsebool(config)

If we want to report an invalid boolean value, we still need to use
`ui.configbool()`.


More information about the Mercurial-devel mailing list