* move the dependencies from options.install_requires to
options.extras_require if those dependencies are only used by tests.
as per
https://packaging.python.org/en/latest/discussions/install-requires-vs-requirements/#id5
> install_requires is a setuptools setup.py keyword that should be
> used to specify what a project minimally needs to run correctly.
* remove the duplicated dependencies from options.extras_require
if they are also listed in options.install_requires.
* update requirements.txt using
"pip-compile --extra=test pyproject.toml", so requirements.txt
can include the dependencies required by tests.