From e9fdb3a04d28b6fec077a17290be1bd88557e995 Mon Sep 17 00:00:00 2001 From: sugoidogo Date: Tue, 29 Jul 2025 07:57:01 -0700 Subject: [PATCH] maximize cache usage --- astrolobot.py | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/astrolobot.py b/astrolobot.py index 807fe4b..f33c2df 100755 --- a/astrolobot.py +++ b/astrolobot.py @@ -42,6 +42,10 @@ def dependency_setup(): print('dependencies ready') +def today(): + now=datetime.utcnow() + return datetime(now.year,now.month,now.day) + # Astrology functions def load_settings(): @@ -63,7 +67,7 @@ def is_retrograde(speed): return speed<0 @cache -def get_positions_raw(date): +def get_positions_raw(date=today()): import swisseph as swe julian_day = swe.julday(date.year, date.month, date.day) planets = { @@ -97,7 +101,7 @@ def get_positions_raw(date): return positions @cache -def get_positions(date): +def get_positions(date=today()): positions={} for name, position_raw in get_positions_raw(date).items(): @@ -129,7 +133,7 @@ def get_list_formatted(in_list,isare=True): return output @cache -def get_positions_formatted(date): +def get_positions_formatted(date=today()): retrograde_planets=[] position_strings=[] @@ -148,15 +152,14 @@ def get_positions_formatted(date): return positions_formatted -def get_transits(): - seconds_in_1_day=86400 - now=datetime.utcnow() - positions_now=get_positions(now) +@cache +def get_transits(date=today(), maxdays=28): + positions_now=get_positions(date) transits={} days=1 - while len(transits)<12 and days<29: - future_timestamp=now.timestamp()+(days*seconds_in_1_day) + while len(transits)<12 and days