diff --git a/UmamusumeCardManager.spec b/UmamusumeCardManager.spec index e18f0c4..a813803 100644 --- a/UmamusumeCardManager.spec +++ b/UmamusumeCardManager.spec @@ -6,7 +6,7 @@ a = Analysis( pathex=[], binaries=[], datas=[('images', 'images'), ('database/umamusume_seed.db', 'database'), ('version.py', '.'), ('updater', 'updater')], - hiddenimports=['requests'], + hiddenimports=['requests', 'PIL', 'PIL._tkinter_finder'], hookspath=[], hooksconfig={}, runtime_hooks=[], @@ -23,13 +23,13 @@ exe = EXE( a.datas, [], name='UmamusumeCardManager', - debug=False, + debug=True, bootloader_ignore_signals=False, strip=False, - upx=True, + upx=False, upx_exclude=[], runtime_tmpdir=None, - console=False, + console=True, disable_windowed_traceback=False, argv_emulation=False, target_arch=None, diff --git a/database/umamusume_seed.db b/database/umamusume_seed.db index 343f292..94d84c3 100644 Binary files a/database/umamusume_seed.db and b/database/umamusume_seed.db differ diff --git a/db/db_queries.py b/db/db_queries.py index 692f34a..f086f54 100644 --- a/db/db_queries.py +++ b/db/db_queries.py @@ -108,7 +108,8 @@ def check_for_updates(): cleanup_orphaned_data() except Exception as e: - print(f"Update check failed: {e}") + import traceback + print(f"Update check failed: {e}\n{traceback.format_exc()}") def sync_from_seed(seed_path): """Merge new data from seed into user database""" @@ -195,12 +196,12 @@ def sync_from_seed(seed_path): """) seed_events = cur.fetchall() - # Prepare Skill map: seed_event_id -> list of (skill_name) - cur.execute("SELECT event_id, skill_name FROM seed.event_skills") + # Prepare Skill map: seed_event_id -> list of (skill_name, is_gold, is_or) + cur.execute("SELECT event_id, skill_name, is_gold, is_or FROM seed.event_skills") seed_skills = {} - for ev_id, sk_name in cur.fetchall(): + for ev_id, sk_name, is_gold, is_or in cur.fetchall(): if ev_id not in seed_skills: seed_skills[ev_id] = [] - seed_skills[ev_id].append(sk_name) + seed_skills[ev_id].append((sk_name, is_gold, is_or)) # Main Card Map: gametora_url -> main_card_id cur.execute("SELECT gametora_url, card_id FROM main.support_cards") @@ -216,9 +217,9 @@ def sync_from_seed(seed_path): # Insert Skills if seed_ev_id in seed_skills: - for sk_name in seed_skills[seed_ev_id]: - cur.execute("INSERT INTO main.event_skills (event_id, skill_name) VALUES (?, ?)", - (new_event_id, sk_name)) + for sk_name, is_gold, is_or in seed_skills[seed_ev_id]: + cur.execute("INSERT INTO main.event_skills (event_id, skill_name, is_gold, is_or) VALUES (?, ?, ?, ?)", + (new_event_id, sk_name, is_gold, is_or)) cur.execute("PRAGMA foreign_keys = ON") conn.commit() diff --git a/main.py b/main.py index 4809056..32de908 100644 --- a/main.py +++ b/main.py @@ -14,7 +14,17 @@ def run_scraper(): from scraper.gametora_scraper import run_scraper as scrape scrape() except Exception as e: - logging.error(f"An error occurred while running the scraper: {e}") + import traceback + error_msg = f"An error occurred while running the scraper:\n\n{e}\n\n{traceback.format_exc()}" + logging.error(error_msg) + try: + import tkinter as tk + from tkinter import messagebox + root = tk.Tk() + root.withdraw() + messagebox.showerror("Scraper Error", error_msg) + except: + pass sys.exit(1) def run_gui(): @@ -23,7 +33,17 @@ def run_gui(): app = MainWindow() app.run() except Exception as e: - logging.error(f"An error occurred while launching the GUI: {e}") + import traceback + error_msg = f"An error occurred while launching the GUI:\n\n{e}\n\n{traceback.format_exc()}" + logging.error(error_msg) + try: + import tkinter as tk + from tkinter import messagebox + root = tk.Tk() + root.withdraw() + messagebox.showerror("Application Error", error_msg) + except: + pass sys.exit(1) def main(): diff --git a/version.py b/version.py index fd736d9..3338da3 100644 --- a/version.py +++ b/version.py @@ -4,7 +4,7 @@ This file is the single source of truth for the application version. """ # Semantic versioning: MAJOR.MINOR.PATCH -VERSION: str = "7.0.0" +VERSION: str = "12.1.0" # Application metadata APP_NAME: str = "UmamusumeCardManager"