diff --git a/agenda/thespacedevs.py b/agenda/thespacedevs.py index 4092f40..8ca9428 100644 --- a/agenda/thespacedevs.py +++ b/agenda/thespacedevs.py @@ -16,7 +16,7 @@ Summary = dict[str, typing.Any] ttl = 60 * 60 * 2 # two hours -def next_launch_api_data(rocket_dir: str, limit: int = 200) -> StrDict | None: +def next_launch_api_data(rocket_dir: str, limit: int = 200) -> StrDict: """Get the next upcoming launches from the API.""" now = datetime.now() filename = os.path.join(rocket_dir, now.strftime("%Y-%m-%d_%H:%M:%S.json")) @@ -24,19 +24,14 @@ def next_launch_api_data(rocket_dir: str, limit: int = 200) -> StrDict | None: params: dict[str, str | int] = {"limit": limit} r = requests.get(url, params=params) - try: - data: StrDict = r.json() - except requests.exceptions.JSONDecodeError: - return None + data: StrDict = r.json() open(filename, "w").write(r.text) return data -def next_launch_api(rocket_dir: str, limit: int = 200) -> list[Launch] | None: +def next_launch_api(rocket_dir: str, limit: int = 200) -> list[Launch]: """Get the next upcoming launches from the API.""" data = next_launch_api_data(rocket_dir, limit) - if not data: - return None return [summarize_launch(launch) for launch in data["results"]] diff --git a/update.py b/update.py index d4a1f0b..01ec251 100755 --- a/update.py +++ b/update.py @@ -9,7 +9,6 @@ import typing from datetime import date, datetime from time import time -import deepdiff # type: ignore import flask import requests @@ -88,14 +87,16 @@ def report_space_launch_change( name = prev_launch["name"] subject = f"Change to {name}" - differences = deepdiff.DeepDiff(prev_launch, cur_launch) - body = f""" A space launch of interest was updated. Get ready for two big piles of JSON. -{json.dumps(differences, indent=2)} +Old launch data +{json.dumps(prev_launch, indent=2)} + +New launch data +{json.dumps(cur_launch, indent=2)} """ agenda.mail.send_mail(config, subject, body) @@ -113,7 +114,6 @@ def update_thespacedevs(config: flask.config.Config) -> None: rocket_dir = os.path.join(config["DATA_DIR"], "thespacedevs") existing_data = agenda.thespacedevs.load_cached_launches(rocket_dir) - assert existing_data prev_launches = { slug: get_launch_by_slug(existing_data, slug) for slug in config["FOLLOW_LAUNCHES"] @@ -121,8 +121,6 @@ def update_thespacedevs(config: flask.config.Config) -> None: t0 = time() data = agenda.thespacedevs.next_launch_api_data(rocket_dir) - if not data: - return # thespacedevs API call failed cur_launches = { slug: get_launch_by_slug(data, slug) for slug in config["FOLLOW_LAUNCHES"] }