Seems there is some knowledge that isn’t in the dev guide itself. https://beets.readthedocs.io/en/stable/dev/index.html
The overall principle I would follow is document things unique to beets while give less/no detail on general development / Python development.
If I get a handle on the content and formatting, I can put some of this information into the docs.
- How do I run tests?
I got this set up in VS Code but I’m not clear on the relationship between tox and individual Python testing packages. I get that Tox is a meta framework for testing across ex. different platforms but I don’t know what it uses to run actual
*test*.py files. Are devs able to replicate the Github actions / test process on their on PCs?
- How do I contribute to beets?
In the docs I don’t see any direct reference to how you contribute to the beets core.
- Can I install every package called by the test files at once?
Bonus points if I can call this dynamically so the docs are never out of date. I think this is the full list, perfect for
requirements.txt. But it was generated from test logs so it could be incomplete.
discogs_client flask mock # for acoustid pyacoustid # for mpd python-mpd2 pylast requests_oauthlib responses xdg
- What is a good dev workflow?
Okay, this may be more of a general Python question. I installed an editable clone of beets, per the FAQ, but it feels taped-together. I installed it overtop the old install I had installed the same way and it seems to work for now.