Add linting configured with .pre-commit-config.yml
This is optional for contributors, while I can simply apply it during a PR (or maybe automatically with https://pre-commit.ci/). There's several tools configured there but most important is black to enforce a standard code style.
Modernise packaging to use flit and pyproject.toml
(also: ./viresclient/ is moved to ./src/viresclient/ and ./test/ to ./tests/)
A downside with flit is that it does not come with an automatic versioning system like setuptools_scm
Switch dependencies to always accept higher versions (to be mitigated by running a weekly(?) test)
Some things to be added in the future:
proper test suite to cover integration with the server, and regression checks
These changes introduce two main things to move toward easier maintenance, inspired by https://github.com/scikit-hep/cookie:
.pre-commit-config.yml
pyproject.toml
./viresclient/
is moved to./src/viresclient/
and./test/
to./tests/
)Some things to be added in the future: