commit - 3556e52bb65c98e478ed3ff184bbcddedbbe2231
commit + ca2e25ad393bb25c9a4d81918e8612fd6354de51
blob - d87c93382b8d392870534e8be78d2f3dcc2eecbe
blob + b564a0e4c5f28780c71a4c5bca42fcaa0d3ec946
--- dulwich/repo.py
+++ dulwich/repo.py
raise UnsupportedVersion(format_version)
for extension, _value in config.items((b"extensions",)):
- if extension not in (b"worktreeconfig",):
+ if extension.lower() not in (b"worktreeconfig",):
raise UnsupportedExtension(extension)
if object_store is None:
blob - a063c45760ce8294805392e458913e61f34800cf
blob + d0b7c7705fd839e340f5d0c86ab5f0304db9304c
--- tests/test_repository.py
+++ tests/test_repository.py
c.write_to_path()
cs = r.get_config_stack()
self.assertEqual(cs.get(("user",), "name"), b"Jelmer")
+
+ def test_worktreeconfig_extension_case(self):
+ """Test that worktree code does not error for alternate case format"""
+ r = self._repo
+ c = r.get_config()
+ c.set(("core",), "repositoryformatversion", "1")
+ # Capitalize "Config"
+ c.set(("extensions",), "worktreeConfig", True)
+ c.write_to_path()
+ c = r.get_worktree_config()
+ c.set(("user",), "repositoryformatversion", "1")
+ c.set((b"user",), b"name", b"Jelmer")
+ c.write_to_path()
+ # The following line errored before
+ # https://github.com/jelmer/dulwich/issues/1285 was addressed
+ Repo(self._repo_dir)
def test_repositoryformatversion_1_extension(self):
r = self._repo