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
adding foo
adding bar
adding baz/bletch
test-archive-TIP/.hg_archival.txt
test-archive-TIP/bar
test-archive-TIP/baz/bletch
test-archive-TIP/foo
test-archive-TIP/.hg_archival.txt
test-archive-TIP/bar
test-archive-TIP/baz/bletch
test-archive-TIP/foo
Archive: archive.zip
testing: test-archive-TIP/.hg_archival.txt OK
testing: test-archive-TIP/bar OK
testing: test-archive-TIP/baz/bletch OK
testing: test-archive-TIP/foo OK
No errors detected in compressed data of archive.zip.
test/.hg_archival.txt
test/bar
test/baz/bletch
test/foo
test/.hg_archival.txt
test/bar
test/foo
test-TIP/.hg_archival.txt
test-TIP/bar
test-TIP/baz/bletch
test-TIP/foo
abort: archive prefix contains illegal components
Archive: test.zip
testing: test/.hg_archival.txt OK
testing: test/bar OK
testing: test/baz/bletch OK
testing: test/foo OK
No errors detected in compressed data of test.zip.
test-TIP/.hg_archival.txt
test-TIP/bar
test-TIP/baz/bletch
test-TIP/foo