Skip to content

v1.4.0

Latest

Choose a tag to compare

@elJulioDev elJulioDev released this 03 Jan 15:37
· 4 commits to master since this release

Update System & Professional Startup

This release transforms KeyForge into a self-sustaining application with the introduction of an Automatic Update System, a polished Splash Screen experience, and a professional-grade Logging Infrastructure.

New Features

  • Auto-Update System: KeyForge now intelligently checks for new releases via the GitHub API. It utilizes semantic versioning (via packaging) to accurately notify you when a new update is available and directs you to the download page.
  • Dynamic Splash Screen: A new, theme-aware startup screen provides visual feedback while the application initializes. It adapts automatically to your selected theme (Light/Dark) and displays real-time loading progress (Scanning system, Loading rules, etc.).
  • Robust Application Restart: Changing languages or themes now triggers a "hard restart" (process re-execution). This ensures a completely clean state for the new settings, eliminating potential memory glitches or UI artifacts.

Technical & Core Improvements

  • Professional Logging System: A new KeyForgeLogger singleton has been implemented.

    • Rotating Logs: Automatically manages log files (max 5MB, keeps last 3 files) to prevent disk clutter.

    • Console Output: Color-coded console logs for easier debugging during development.

    • Error Analysis: Captures critical errors and stack traces in AppData/Local/KeyForge/logs (Windows) or equivalent paths on Linux/Mac.

  • Startup Optimization: The initialization logic in main_window.py has been decoupled. Heavy tasks (like scanning windows and loading rules) are now threaded effectively behind the Splash Screen, preventing the "application not responding" ghosting effect during launch.

Dependency Updates

  • Added requests>=2.31.0 (For API communication).
  • Added packaging>=23.0 (For version comparison).
  • Updated pywin32 requirement.