Releases: 1minds3t/omnipkg
omnipkg v1.4.4 - Yanked
SQLite support was not stable. Please upgrade to the latest version.
omnipkg v1.4.3: Yanked
Version 1.4.3: Unprecedented Multi-Python Stability and Self-Healing
omnipkg v1.4.2: SQLite Support & Test Harness Fixes
Release Title: Version 1.4.2: SQLite Support & Test Harness Fixes
Description:
This is a feature and stability release that re-introduces the SQLite cache backend and resolves critical bugs within the test harness.
✨ New Features
- SQLite Cache Backend: Omnipkg now includes robust support for a local SQLite cache. This provides a high-performance, file-based caching option for users who do not have a Redis server available, ensuring a seamless experience for everyone.
🐛 Bug Fixes & Stability Improvements
The test harness and interactive demo (omnipkg demo) have been significantly improved to handle multi-Python environments correctly.
- Test Context Fixed: The test runner has been hardened with a bootstrap guard (
sync_context_to_runtime) that forces it to use the correct Python interpreter from the activeomnipkgcontext. This resolves the excessive Knowledge Base refreshing and environment contamination issues seen in previous versions. - Rich Test on Python 3.9: The
richmodule switching test is temporarily disabled on Python 3.9 due to a known, minorsys.pathmanipulation issue in the loader. The test continues to pass on supported Python versions (3.10+). A full fix for this edge case will be addressed in a future release.
v1.4.2 is the new recommended stable version, combining the features of v1.4.0 with critical stability fixes.
omnipkg v1.4.1: Critical Stability Release
Release Title: Version 1.4.1: Critical Stability Release
This is a critical stability release. This release reverts the project's codebase to the stable v1.3.11 baseline to resolve significant bugs introduced in later versions.
The Issue
Version v1.4.0 introduced a critical flaw in the omnipkgLoader and environment handling logic. This resulted in sys.path contamination in multi-Python environments, causing test failures and unpredictable behavior.
The Fix
To ensure all users have a stable and reliable experience, the main branch has been reverted to the stable and correct codebase from v1.3.11, with an additional commit to stabilize the test harness.
What's Changed
- Reverted Core Logic: All core application code has been reverted to match the
v1.3.11tag. - SQLite Support Removed: The SQLite cache backend has been temporarily removed. It will be re-implemented safely on the
developmentbranch. - Test Harness Stabilized: The test suite has been updated to prevent environment contamination bugs.
We sincerely apologize for the instability of the recent release. v1.4.1 is the new recommended stable version.
omnipkg v1.4.0: The Liberation Update - No Redis Required!
This is a landmark release for omnipkg, fundamentally transforming its accessibility and ease of use. The biggest barrier to entry has been demolished: omnipkg no longer requires Redis to run!
Thanks to a new, fully-featured SQLite backend that acts as a seamless fallback, anyone can now get the full power of omnipkg with a simple pip install, no external services required. This makes first-time use, local development, and CI/CD integration trivially easy.
This version is the culmination of intense debugging and hardening, resulting in the most robust and accessible version of omnipkg ever released.
🚀 Major New Features
1. Robust SQLite Backend (Zero-Dependency Mode)
- No Redis, No Problem: If a Redis connection isn't available, omnipkg now automatically and seamlessly falls back to using a local SQLite database file for its knowledge base.
- Fully Featured: The new backend emulates the Redis API, supporting all of omnipkg's advanced features, including bubbling, version tracking, and self-healing sync.
- Instant Setup: This makes omnipkg 100% self-contained out of the box, perfect for new users and automated environments.
2. Hardened 8pkg run for Complex Orchestration
- The
8pkg runcommand has been significantly improved to handle complex, multi-process orchestrator scripts. - Fixed the critical "split brain" context issue where subprocesses (like
omnipkg swap) would lose track of the main environment's knowledge base. - The command now ensures a unified and predictable environment context is passed to all child processes, allowing scripts to reliably manipulate different Python versions and package states.
🛠️ Bug Fixes & Stability Improvements
- Resolved Core Import Error: Corrected an
ImportError(OmnipkgCorevsomnipkg) that occurred during the automatic interpreter re-launch process.
🧪 For Developers
- The
multiverse_analysis.pystress test now passes flawlessly when launched with8pkg run, serving as the ultimate validation of omnipkg's context switching, package management, and auto-healing capabilities working in perfect harmony.
How to Upgrade
pip install --upgrade omnipkgThis was a huge effort to hunt down and destroy some of the most subtle and complex bugs in the system. The result is a tool that is not only more powerful but dramatically easier for everyone to use. Thank you for your support!
omnipkg v1.3.11: The Unbreakable Engine Release
This is the release where omnipkg achieves architectural perfection. After a series of legendary debugging sessions, the core engine has been refactored to be leaner, smarter, and more portable than ever before, solidifying its status as a professional-grade, production-ready tool.
✨ Highlights
-
🚀 The Unbreakable Binary Engine: The hard dependency on
python-magichas been eliminated.omnipkgnow features a new, multi-strategy binary detection engine that uses a cascade of techniques—file permissions, magic number header inspection, and filename heuristics—to robustly identify executables even in the most sterile environments. This is a masterpiece of resilient engineering. -
💎 Leaner, Faster Core: By making
python-magicandtqdmoptional, the coreomnipkginstallation is now smaller and faster for everyone. Power users can still get the "deluxe" experience withpip install omnipkg[full], while all users benefit from a leaner core. -
🏆 True
noarchPurity: This architectural change allowsomnipkgto be packaged as a single, universalnoarch: pythonpackage for Conda. This is the gold standard of portability, dramatically simplifying the release process and ensuring a single, reliable build works for all users on all platforms.
This release represents the final polish on a revolutionary tool. The engine is unbreakable. The vision is complete.
omnipkg v1.3.10: The Conda-Forge Conquest
omnipkg v1.3.10: The Conda-Forge Conquest
This is a monumental release. After a legendary battle with linters, build environments, and the fundamental laws of CI/CD, omnipkg has been officially accepted into Conda-Forge, the most trusted and respected repository in the scientific Python ecosystem.
This victory solidifies omnipkg's position as a truly multi-platform, production-grade tool, now available to millions of developers and data scientists via a simple, trusted command.
✨ Highlights
- 🏆 Now Available on Conda-Forge! You can now install
omnipkgfrom the officialconda-forgechannel, the gold standard for Conda packages:conda install -c conda-forge omnipkg
- 🛡️ Bulletproof CI/CD Pipeline: The final, subtle bugs in the multi-platform build process have been hunted down and eliminated. The automated release factory now flawlessly builds and tests
omnipkgon Linux, macOS, and Windows without human intervention. - 💎 The Perfected Conda Recipe: The
meta.yamlhas been meticulously crafted to pass the rigorousconda-forgelinter checks while correctly handling all platform-specific dependencies, resulting in a perfect build on every OS.
This release marks the completion of the omnipkg distribution empire. From pip to Docker to Homebrew and now to Conda-Forge, omnipkg is everywhere.
omnipkg v1.3.9: The CI/CD Hardening Release
omnipkg v1.3.9: The CI/CD Hardening Release
This is a critical follow-up release that perfects our automated, multi-platform release pipeline.
A subtle bug was discovered where the conda-build process would fail during the test phase. The test command was inadvertently triggering the full application startup, which requires a Redis connection that isn't available in a sterile build environment.
This release fixes the issue by implementing a more intelligent test command (omnipkg --version) that validates the installation without initializing the full application core.
With this fix, the entire release factory is now complete and battle-hardened. Pushing a new release will now automatically and flawlessly build and deploy omnipkg to:
- PyPI
- Docker Hub (multi-architecture)
- GitHub Container Registry (multi-architecture)
- Homebrew
- Conda (multi-platform)
The vision of a fully automated, zero-friction release process is now a reality.
omnipkg v1.3.8: The Futurist Release
omnipkg v1.3.8: The Futurist Release
This release officially introduces support for the bleeding-edge Python 3.13, solidifying omnipkg as the most forward-looking and resilient package manager in the ecosystem.
Thanks to a robust, multi-layered download engine and a clean, modern codebase, omnipkg was found to be forward-compatible with Python 3.13 out of the box. This version officializes that support.
✨ Highlights
- 🚀 Day-Zero Python 3.13 Support: Use
omnipkg python adopt 3.13to seamlessly download, install, and bootstrap the latest version of Python into your multiverse. Jump into the future of Python development today! - Future-Proof by Design: This release proves that
omnipkg's architecture is so sound that it can adapt to future Python versions with minimal changes. - Official PyPI Declaration: The
pyproject.tomlhas been updated to officially declare Python 3.13 compatibility, ensuring the broader community can install and use it with confidence.
omnipkg v1.3.7: The Sentient Engine Release
omnipkg v1.3.7: The Sentient Engine Release
This is the release where omnipkg wakes up.
We are proud to introduce a set of revolutionary features that elevate omnipkg from an intelligent package manager to a sentient development environment. This release is the culmination of a legendary debugging journey, resulting in a system that doesn't just manage dependencies—it anticipates, diagnoses, and heals them in real-time, enabling workflows that were previously impossible in Python.
🚀 The "It Just Works" Button: The Auto-Healing run Command
The new 8pkg run <your_script.py> command is the ultimate expression of our vision. It creates a self-improving system that refuses to let your script fail due to environment issues.
- Execute: It first attempts to run your script at maximum speed using
uv. - Diagnose: If the script fails—from a simple
ModuleNotFoundErrorto a deep, catastrophic ABI break like the NumPy 2.0 incompatibility—omnipkgintercepts the crash and intelligently diagnoses the root cause. - Heal: It formulates a surgical healing plan, automatically installing the missing package or, in the case of a conflict, installing the correct version while bubbling the problematic one.
- Retry: It then automatically re-runs your script in the now-perfected environment until it succeeds.
The first time you run a script, omnipkg learns and permanently fixes its environment. Every run after that is pure, unadulterated speed.
🤯 The Multiverse Unleashed: Bubbles Now Work in Subprocesses!
This is the groundbreaking feature that unlocks the true power of bubbles. We have solved the holy grail of environment isolation:
The Problem: A script running inside a bubble was isolated from the omnipkg library itself, preventing it from launching subprocesses that could also use omnipkg's magic.
The Genius Fix: The omnipkgLoader is now self-aware. When it activates a bubble, it surgically symlinks its own critical dependencies into that bubble.
This seemingly simple change has universe-altering implications, enabling:
- True Concurrent A/B Testing: Launch two subprocesses from the same script, each running a different version of TensorFlow in its own bubble, at the same time.
- Nested Bubbles: A script running in one bubble can now launch a child process that activates a completely different bubble.
- Complex Cross-Interpreter Workflows: A Python 3.11 script can now orchestrate a Python 3.9 subprocess that uses its own Python 3.9-specific bubbles.
The barriers between environments have been shattered. The multiverse is now yours to command.
This is it. The vision is complete. Welcome to the future of Python development.