Hi, it's me again.
I like this software very much and I would like to contribute.
I'm a programmer with a few years of experience and given that I'm excited about this as a user, I could channel energy for the benefit of everyone (community and myself included). I've been writing a few modifications to mnemosyne for a while on a private repos.
My concern is about how to best channel this energy in a way that the current maintainers see value.
So from a very humble perspective, I would recommend running some basic CI/CD tooling on the codebase. One could argue that this is standard practice in the field. Are you ok with:
1. Running an automatic code formatter, e.g. [black](
https://black.readthedocs.io/en/stable/index.html) with [pre-commit](
https://pre-commit.com/).
2. Tests should be taken more seriously. Right now the tests hang here due to `tests/test_sync.py`. If I comment it out, `master` gives me:
```
============================================ 12 failed, 380 passed, 749 warnings in 8.02s =============================================
```
These failing tests should be commented out so that the entire test suite succeeds and only code that:
a. Adds new tests.
b. Passes all the tests.
should be merged.
Hopefully these recommendations sound like "everyday programming" in the large and not some arbitrary opinion from someone from the outside. I would also kindly put forth that this also encourages new contributions from the community as a whole.
If you give me the green light I could add these in a PR pretty soon.
Looking forward to hearing back from you,