Add capability to check for updates

This commit is contained in:
nathom 2021-04-08 12:41:45 -07:00
parent 4cf00a106e
commit 43edf0255c
4 changed files with 22 additions and 1 deletions

View File

@ -0,0 +1 @@
__version__ = "0.3.1"

View File

@ -4,6 +4,7 @@ from getpass import getpass
from hashlib import md5
import click
import requests
from .clients import TidalClient
from .config import Config
@ -54,6 +55,22 @@ def cli(ctx, **kwargs):
config = Config()
if config.session["check_for_updates"]:
from importlib import metadata
from packaging import version
r = requests.get("https://pypi.org/pypi/streamrip/json").json()
newest = r['info']['version']
if version.parse(metadata.version("streamrip")) < version.parse(newest):
click.secho(
"A new version of streamrip is available! "
"Run `pip3 install streamrip --upgrade` to update.",
fg="yellow",
)
else:
click.secho("streamrip is up-to-date!", fg='green')
if kwargs["no_db"]:
config.session["database"]["enabled"] = False
if kwargs["convert"]:

View File

@ -81,6 +81,7 @@ class Config:
"keep_downloaded_cover": True,
},
"path_format": {"folder": FOLDER_FORMAT, "track": TRACK_FORMAT},
"check_for_updates": True,
}
def __init__(self, path: str = None):

View File

@ -782,7 +782,9 @@ class Album(Tracklist):
"streamable": resp.get("allowStreaming"),
"quality": TIDAL_Q_MAP[resp.get("audioQuality")],
"bit_depth": 24 if resp.get("audioQuality") == "HI_RES" else 16,
"sampling_rate": 48000 if resp.get("audioQuality") == 'HI_RES' else 41000,
"sampling_rate": 48000
if resp.get("audioQuality") == "HI_RES"
else 41000,
"tracktotal": resp.get("numberOfTracks"),
"disctotal": resp.get("numberOfVolumes"),
}