Repository: codespell-project/codespell

Issue:
codespell unhappy with pytest config in pyproject.toml
When running codespell with [this pyproject.toml](https://github.com/aucampia/cookiecutter-python/blob/374772bf96a79bdbee55e4fbeb27e4d79df53329/pyproject.toml) I get the following error:

```console
$ python -m poetry run codespell --version
2.2.2
$ python -m poetry run codespell
Traceback (most recent call last):
  File "/home/iwana/sw/d/github.com/aucampia/cookiecutter-python/.venv/bin/codespell", line 8, in <module>
    sys.exit(_script_main())
  File "/home/iwana/sw/d/github.com/aucampia/cookiecutter-python/.venv/lib/python3.10/site-packages/codespell_lib/_codespell.py", line 767, in _script_main
    return main(*sys.argv[1:])
  File "/home/iwana/sw/d/github.com/aucampia/cookiecutter-python/.venv/lib/python3.10/site-packages/codespell_lib/_codespell.py", line 772, in main
    options, parser = parse_options(args)
  File "/home/iwana/sw/d/github.com/aucampia/cookiecutter-python/.venv/lib/python3.10/site-packages/codespell_lib/_codespell.py", line 426, in parse_options
    config.read_dict(data)
  File "/usr/lib64/python3.10/configparser.py", line 755, in read_dict
    self.set(section, key, value)
  File "/usr/lib64/python3.10/configparser.py", line 1205, in set
    super().set(section, option, value)
  File "/usr/lib64/python3.10/configparser.py", line 895, in set
    value = self._interpolation.before_set(self, section, option,
  File "/usr/lib64/python3.10/configparser.py", line 402, in before_set
    raise ValueError("invalid interpolation syntax in %r at "
ValueError: invalid interpolation syntax in "{'testpaths': ['tests'], 'addopts': ['--cov-config=pyproject.toml', '--capture=no', '--tb=native', '-ra'], 'log_format': '%(asctime)s %(process)d %(thread)d %(levelno)03d:%(levelname)-8s %(name)-12s %(module)s:%(lineno)s:%(funcName)s %(message)s', 'log_date_format': '%Y-%m-%dT%H:%M:%S', 'log_cli_format': '%(asctime)s %(process)d %(thread)d %(levelno)03d:%(levelname)-8s %(name)-12s %(module)s:%(lineno)s:%(funcName)s %(message)s', 'log_cli_date_format': '%Y-%m-%dT%H:%M:%S'}" at position 123
```


Discussion:
This looks like an issue with the [`configparser`](https://docs.python.org/3/library/configparser.html) module of Python:
```python
$ python3
Python 3.10.6 (main, Aug 10 2022, 11:40:04) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import configparser
>>> 
>>> data = {
...     'foo': {
...         'x': '%Y'
...     }
... }
>>> 
>>> config = configparser.ConfigParser()
>>> config.read_dict(data)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.10/configparser.py", line 755, in read_dict
    self.set(section, key, value)
  File "/usr/lib/python3.10/configparser.py", line 1205, in set
    super().set(section, option, value)
  File "/usr/lib/python3.10/configparser.py", line 895, in set
    value = self._interpolation.before_set(self, section, option,
  File "/usr/lib/python3.10/configparser.py", line 402, in before_set
    raise ValueError("invalid interpolation syntax in %r at "
ValueError: invalid interpolation syntax in '%Y' at position 0
>>> 
```
See [Interpolation of values](https://docs.python.org/3/library/configparser.html#interpolation-of-values).
We used to read INI files with `configparser.ConfigParser` (`setup.cfg` and `.codespellrc`), now we also read a TOML file (`pyproject.toml`). But then, is `configparser.ConfigParser` able to read TOML files too? Is **`%`** supposed to be processed differently in INI files and TOML files? I honestly don't know, I don't have much experience with `configparser.ConfigParser`.

Resolving patch:
diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py
--- a/codespell_lib/_codespell.py
+++ b/codespell_lib/_codespell.py
@@ -402,7 +402,7 @@ def parse_options(args):
     cfg_files = ['setup.cfg', '.codespellrc']
     if options.config:
         cfg_files.append(options.config)
-    config = configparser.ConfigParser()
+    config = configparser.ConfigParser(interpolation=None)
 
     # Read toml before other config files.
     toml_files_errors = list()


Test patch: