beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.57k stars 1.8k forks source link

Upgrade to Python 3.8 / drop Python 3.7 #5283

Closed snejus closed 3 weeks ago

snejus commented 3 weeks ago

Description

Fixes #5222.

Drop Python 3.7. pyupgrade is responsible for most of the changes in the code. I undid some of the bits it attempted to update that aren't strictly necessary:

  1. Converting List/Dict/Tuple -> list/dict/tuple in modules that have from __future__ import annotations import. This should be done in a separate PR, and for all modules
  2. Converting some .format( calls to f-strings. It didn't do it consistently, and it should also be done in a separate PR, I believe.

Python upgrade unblocks several other PRs, for example #5266 and #5248.

To Do