Use a case-sensitive version of SafeConfigParser everywhere
This change has the potential to break existing setups, but the current
behaviour (the keys in configuration files are always lower-cased) can
bite us in a few places:
- no way to use a Command in [defaults]
- hgext.Extension doesn't work in [extensions]
- you can't use an Upper/case/PATH in the [paths] section of hgweb.config
- you can't (easily) protect paths with upper-case letters with the
acl extension
- you can't specify a /Path/TO/a/rEPO in the [reposubs] section for
the notify extension
#!/bin/sh
hg init
echo a > a
hg add a
hg commit -m "test" -d "1000000 0"
hg history
hg tag -d "1000000 0" "bleah"
hg history
echo foo >> .hgtags
hg tag -d "1000000 0" "bleah2" || echo "failed"
hg tag -d "1000000 0" -r 0 "bleah2" 1 || echo "failed"
hg revert .hgtags
hg tag -d "1000000 0" -r 0 "bleah0"
hg tag -l -d "1000000 0" "bleah1" 1
cat .hgtags
cat .hg/localtags
hg update 0
hg tag -d "1000000 0" "foobar"
cat .hgtags
cat .hg/localtags
hg tag -l 'xx
newline'
hg tag -l 'xx:xx'
true