This is an archive of the discontinued Mercurial Phabricator instance.

config: add a function to insert non-file based, but overridable settings
ClosedPublic

Authored by mharbison72 on Jan 17 2020, 5:47 PM.

Details

Summary

This will be used in the next patch.

Until relatively recently (473510bf0575), there was no official way for
extensions to inject per-repo config data, so it probably makes sense that
ui.setconfig() items are sticky, and not affected by loading more config
files. But that makes it cumbersome if the extension wants to allow the data it
might add to be overridden by any data in the local hgrc file. The only thing I
could get to work was to load the local hgrc first, and then check if the source
for the config item that should be overridden was *not* the local hgrc file
name. But that's brittle because in addition to the file name, the source
contains the line number, there are the usual '\' vs '/' platform differences,
etc.

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.