# HG changeset patch # User Jun Wu # Date 1490712840 25200 # Node ID cf052cc5c2c26133aaa6ea8536a4919a89ab008e # Parent c3ca0ad8ab9c60b3d4df4ef1e5e2e7d9e44cec0e rcutil: do not cache rccomponents The function is only called once except for "hg debugconfig", where it is called twice. So there is no need to cache it. Caching it will cause issues with chgserver. Instead of dropping the cache in chgserver, it seems cleaner to just avoid the cache. diff -r c3ca0ad8ab9c -r cf052cc5c2c2 mercurial/rcutil.py --- a/mercurial/rcutil.py Sat Mar 25 19:17:11 2017 -0400 +++ b/mercurial/rcutil.py Tue Mar 28 07:54:00 2017 -0700 @@ -62,8 +62,6 @@ path = _expandrcpath(defaultpath) return path -_rccomponents = None - def rccomponents(): '''return an ordered [(type, obj)] about where to load configs. @@ -78,7 +76,7 @@ ''' envrc = ('items', envrcitems()) - global _rccomponents + _rccomponents = None if _rccomponents is None: if 'HGRCPATH' in encoding.environ: # assume HGRCPATH is all about user configs so environments can be