Skip to content

omnipkg v1.5.9 - Improved Preflight Install Checks & Cross-Platform Redis Logic

Pre-release
Pre-release

Choose a tag to compare

@1minds3t 1minds3t released this 28 Oct 13:15

This is a critical update that significantly improves the intelligence, speed, and stability of the core installer. It addresses key logic bugs in the preflight satisfaction check and makes the caching mechanism far more robust, especially for cross-platform users.

✨ Key Features & Fixes

🧠 Smarter, Strategy-Aware Preflight Checks

The preflight satisfaction check is now significantly more intelligent, eliminating unnecessary installations and providing a faster, more accurate user experience.

  • Fixed: The installer now correctly re-checks package satisfaction after resolving a version (e.g., when running 8pkg install pydantic). This prevents the tool from incorrectly proceeding to a full install when the resolved package is already active.
  • Fixed: The preflight check is now fully "strategy-aware." It correctly understands that a bubbled package is not satisfied when using the latest-active strategy, ensuring the main installer runs to promote the package to the active environment.
  • Result: A faster, more reliable, and less confusing installation process that does the right thing in all scenarios.

⚡️ Robust Caching with Redis Circuit Breaker

The connection logic for the caching backend has been completely overhauled to be faster and more resilient, eliminating frustrating delays.

  • New: A "circuit breaker" pattern has been implemented for Redis connections. The tool tries to connect only once with an aggressive 0.2-second timeout. If it fails, it instantly and permanently falls back to the local SQLite cache for the remainder of the command's execution.
  • Fixed: This completely solves the long (5+ second) startup delays experienced by users on Windows when a Redis server was running in WSL, as the tool no longer repeatedly tries to connect to an unreachable host.
  • New: Added a redis_enabled: false option to the configuration file, allowing users to explicitly disable Redis and force the use of the SQLite cache.

⚛️ Atomic Knowledge Base Updates

The end-of-install process has been reordered to be more efficient and eliminate potential race conditions, paving the way for future high-concurrency features.

  • Fixed: The "redundant bubble" cleanup now runs before the consolidated Knowledge Base (KB) update.
  • Result: The KB is now updated once with the final, correct state of the filesystem. This eliminates temporary inconsistencies, reduces I/O operations, and ensures atomic updates.

foundational Work

  • New: Added the deptimemachine.py module, laying the groundwork for a future feature to install packages with their historical dependencies.
  • General code cleanup and improvements to the testing suite.