Releases: Nehonix-Team/XFMP
XFPM - vG0.1.61
[G0.1.61] - 2026-04-02
Fixed
- Core: Resolved a critical structural bug where
xfpm updateincorrectly stripped dependency boundaries (such aspeerDependencies,devDependencies, andoptionalDependencies) and merged them unconditionally into standarddependencieswhen specific packages were updated via CLI (e.g.,xfpm update xypriss). XFPM now correctly memorizes and restores the package to its original structural block unless explicitly instructed otherwise via flags (-D,-O).
XFPM - vG0.1.60
[G0.1.60] - 2026-04-02
Fixed
- Core: Resolved a critical oversight where
peerDependenciesin the rootpackage.jsonwere ignored during standard installation. XFPM now correctly collects, resolves, and installs these dependencies, ensuring full compatibility with plugins and libraries that rely on peer-level isolation.
Improved
- Metadata: Refactored internal dependency aggregation logic in
PackageJson.AllDependenciesfor better accuracy during project analysis.
XFPM - vG0.1.59-27326
[G0.1.59] - 2026-03-28
Fixed
- Core: Fixed a critical bug where
xfpm install <pkg>(orxfpm i <pkg>) would fail to create apackage.jsonfile in a directory that did not already have one. XFPM now correctly initializes a defaultpackage.jsonwith the current directory name and version1.0.0when installing packages for the first time.
Improved
- DX: Streamlined first-time initialization experience, making it easier to start new projects by directly adding dependencies.
XFPM - vG0.1.57-27326
This release introduces critical stability patches to the package resolution logic, intelligent cache invalidation, improved lifecycle script execution, and modernizes the CLI metrics interface.
Stability & Bug Fixes
1. Package.json Constraint Integrity
Resolved an issue where running xfpm install (without specific package arguments) would implicitly mutate the package.json file to update existing constraints to the latest resolved bounds. The resolver now accurately respects your defined package.json dependencies and only rewrites the file when explicitly adding new dependencies or running with the update flag.
2. Intelligent Cache Invalidation
Addressed a persistent resolution bug that caused the engine to throw "no version found satisfying [version]" errors. Previously, if a package requested a newly published version (often seen with optional dependencies like @oven/bun-linux-* during global installs) and the XFPM virtual store cache held an outdated metadata snapshot, the resolution would silently skip or fatally error out.
The resolver now detects cache misses on bestMatch routines and forcefully invalidates the cache, executing a fresh network fetch to safely resolve and queue the new dependencies.
3. Lifecycle Script Execution
Fixed a major pipeline block affecting detached background processes. Postinstall scripts (such as the xypriss engine installer) that spawned daemonized processes would previously cause xfpm to lock up for 10+ seconds while waiting for the standard output pipes to close. The runtime script executor has been refactored to utilize custom cross-platform pipes (os.Pipe), allowing the main installation pipeline to cleanly detach and complete instantly once the immediate script exits.
Interface & Quality of Life
4. Real-Time Telemetry & UI Performance
- The
[EXTRACTING]pipeline now displays the exact elapsed execution time per concurrent package down to the millisecond block. - The dependency tree resolution indicator now correctly reflects real active search elapsed bounds rather than generic placeholder streams, visually clarifying the highly parallelized backend architecture.
XFPM - Version G0.1.49-40326
This release introduces improvements to the developer experience and extends the capabilities of XFPM with support for local package installation.
New Features
Local package installation
A new path command has been introduced to allow installing packages directly from a local directory. This enables developers to test or integrate local modules without publishing them to a registry.
Example:
xfpm install --path ../my-local-package
Improvements
Enhanced logging system
The internal logging system has been updated to provide clearer and more structured error messages. This improvement helps developers better understand failures during dependency resolution and installation processes.
Internal Changes
- Improvements to the dependency resolver.
- Stability enhancements in the installer.
- Updates to internal version utilities.
- Refinements in the CLI entry point and logging utilities.
About XFPM
XFPM is a high-performance CLI package manager written in Go for the XyPriss ecosystem.
It provides fast dependency resolution, strict package isolation through a virtual store, and a clean command-line interface designed for professional development workflows.
XFPM - Version G0.1.48-30326
This release introduces major fixes related to dependency update precision and version persistence in package.json.
Update Engine Improvements
Targeted Update
Fixed an issue where xfpm update <package> unnecessarily forced a full project re-analysis.
- Isolated Updates: Specifying a package now triggers metadata updates only for that package and its direct dependencies. Other project packages remain on their current versions.
- Force to Latest:
xfpm update <package>(without a version tag) now consistently resolves to the absolute latest version (latest), making major version upgrades easier.
package.json Synchronization
Resolved an ambiguity bug when writing to package.json.
- Previously, if multiple versions of the same package were resolved (transitively), XFPM could sometimes persist the wrong version at the root level.
- The version saved in
package.jsonis now guaranteed to be the one specifically resolved for the project root.
Workflow Features (Reminder G0.1.44+)
- Continuous Self-Update: XFPM automatically resumes its original task after updating itself.
- CAS Store Integrity: Protection against file truncation through safe deletion before writing hardlinks.
Technical Maintenance
- New build engine vG0.1.48 with optimized UPX compression.
- Fixed parsing for scoped packages (
@scope/pkg).
XFPM - Version G0.1.45-30326
XFPM - Version G0.1.45-30326
This release introduces major stability enhancements to the storage engine and streamlines the update experience for better workflow continuity.
Core Engine Improvements
Seamless Update Workflow
The update mechanism has been re-engineered to prevent workflow interruptions.
- Task Continuation: When an update is accepted, XFPM now automatically re-executes the original command (e.g.,
add,install) using the updated binary. This eliminates the need to manually restart commands after a self-update. - Process Replacement: On Unix-like systems, XFPM uses
syscall.Execto replace the current process image, ensuring an instantaneous transition to the new version.
CAS Storage Stability
Resolved a critical issue in the Content Addressable Storage (CAS) that could lead to zero-byte (empty) files.
- Anti-Self-Truncation: Implemented mandatory destination removal before linking or copying. This prevents the "inode truncation" bug where
os.Createon a hardlink would empty the source CAS file. - Surgical Force Extraction: Refined the
forceextraction logic to only remove specific package directories within the virtual store, preventing accidental deletion of shared or scoped parent directories.
CLI and UX Enhancements
Improved Scoped Package Handling
The CLI parser has been upgraded to correctly handle scoped NPM packages independently of version tags.
- Fixed parsing logic for arguments like
@scope/package@version. - Enhanced
xfpm update <package>to correctly resolve and refresh targeted scoped dependencies.
Global Environment Support
- Universal CWD Flag: The
-C/--cwdflag is now processed in the global pre-run phase, ensuring consistent behavior across all subcommands. - PATH Injection: Automated injection of
node_modules/.binand XFPM global paths into the execution environment forxfpm run.
G0.1.44-20326
XFPM - Version G0.1.44-20326
This release focuses on critical stability improvements to the Content Addressable Storage (CAS) engine, enhanced dependency resolution logic, and improved developer experience through refined CLI behavior.
Core Engine Improvements
1. CAS Integrity and Anti-Corruption Logic
Resolved a critical race condition and filesystem conflict where the use of hardlinks combined with standard file creation protocols could lead to the truncation of shared inodes.
- Implemented a strict "remove-before-create" policy for all file linking and copying operations.
- Added mandatory file size verification post-extraction to guarantee content persistence.
- Removed intermediate buffering that could lead to stream desynchronization during multi-threaded extractions.
2. Surgical Dependency Updates
Refactored the update command semantics to distinguish between metadata resolution and physical extraction.
xfpm updatenow fetches fresh metadata from registries while strictly honoring semver constraints defined inpackage.json.- Extraction is now surgical: only packages whose resolved versions have changed (or which are explicitly targeted) are re-extracted, significantly reducing update times for large dependency trees.
CLI and Developer Experience
1. Execution Path Resolution
The xfpm run command now automatically constructs a prioritized execution environment.
- Local
node_modules/.binand global XFPM binary paths are dynamically injected into thePATHduring script execution. - This resolves issues where locally installed tools (e.g.,
quickdev,prisma) were not found when executed via XFPM.
2. Global Working Directory Support
The -C (or --cwd) flag is now supported globally across all subcommands. This allows users to execute management tasks on remote project directories without the need for manual navigation.
3. Scoped Package Handling
Improved the URI and CLI argument parser to correctly handle scoped NPM packages (e.g., @scope/package). Scoped packages now support full version specification and targeted updates using the standard @ separator.
Technical Fixes
- Fixed a bug where duplicate packages in a resolved tree could cause race conditions during extraction.
- Enhanced registry client error reporting for failed tarball downloads.
- Improved lifecycle script execution by ensuring environment variables are correctly inherited and sanitized.
G0.1.42-10326
XFPM Release Notes - Version G0.1.42-10326
Overview
Version G0.1.42 introduces critical updates to the package resolution engine, cross-platform compatibility layers, and the official NPM deployment wrapper. This release focuses on reliability in non-interactive environments and improved dependency tree consistency.
Major Changes
NPM Deployment Wrapper
- Implementation of the
xypriss-clipackage on the NPM registry. - Integration of a post-install trigger that executes the native deployment sequence.
- Added comprehensive documentation regarding administrative privilege requirements for global installations.
Installation Infrastructure
- Enhanced Unix and Windows installers with automated detection of existing XyPriss components.
- Implementation of an explicit cleanup sequence prior to re-installation.
- Added TTY detection to handle piped and non-interactive sessions (e.g., CI/CD or automated scripts).
- Reverted delivery endpoints to the private Nehonix DLL infrastructure for secure script sourcing.
Core Engine and Resolver
- Updated the dependency resolver to support flexible architecture naming conventions (reconciling x64/x86_64 and arm64/aarch64).
- Implementation of recursive force extraction: the
--forceflag now applies to the entire dependency tree to ensure store integrity. - Integrated explicit skip logging in the resolver to provide transparency regarding platform-specific package exclusions.
- Synchronized CLI version output with the internal package metadata.
Legal and Compliance
- Standardized Nehonix OSL (NOSL) license headers across all core CLI implementation files.
- Updated copyright notices to current requirements.
Technical Improvements
- Refined Linux-specific naming heuristics in the compatibility layer.
- Optimized build script support for multi-architecture compression.
- Improved error handling during binary stream synchronization.
G0.1.41-10326
XFPM - version G0.1.41-10326
The Great Rewrite: Why Go?
XFPM has undergone a massive architecture shift, moving from Rust to Go. While we appreciate the safety of Rust, the transition to Go was driven by several strategic pillars for the Nehonix ecosystem:
- Universal Portability: Go's superior cross-compilation allows us to provide native, high-performance binaries for Windows, Linux, and macOS (AMD64 & ARM64) with a single, unified codebase.
- Zero-Config Deployment: XFPM is now a single static binary. No external dependencies, no complex shared libraries—just download and run.
- Maintainability & Speed: The Go rewrite allowed us to iterate faster on complex features like Neural Graph resolution and Virtual Store management while maintaining near-native execution speed.
- Ecosystem Integration: Go provides seamless interaction with system-level APIs, making our PATH management and process isolation more robust across different OS environments.
Technical Features & Improvements
Targeted Update Engine
Fixed the primary bottleneck of previous versions. Commands like xfpm update <package> now only re-extract and re-process the target package and its specific dependency tree. Unrelated project dependencies remain untouched, drastically reducing update times.
Enhanced Virtual Store Isolation
Our .xpm/virtual_store implementation has been hardened. It ensures that packages can only access their explicitly declared dependencies, preventing "phantom dependencies" and version leakage common in standard flat node_modules.
Intelligent Lifecycle Scripts
Lifecycle scripts (preinstall, install, postinstall, etc.) are now tracked and executed only for packages that were actually modified or updated in the current session. No more redundant downloads or time-wasting script executions.
Integrated Auto-Update Engine
XFPM now includes a built-in update checker. It performs an optimized check for new releases on the Nehonix GitHub repository and offers a direct update experience within the CLI.
Matrix UI V2
The terminal interface has been refined for professional environments. We have transitioned to high-contrast █ progress bars to avoid rendering artifacts and provide precise, real-time feedback on complex installation sequences.
Cross-Platform Build Pipeline
A new build.sh script with optional UPX Compression support. Linux amd64 binaries are now optimized down to ~3MB without losing performance.
Technical Bug Fixes
- Fixed symlink "bubbling" where Node.js would pick up parent dependencies after uninstallation.
- Fixed redundant extraction of identical package versions across large dependency trees.
- Corrected delegation issues between
updateandinstallcommands. - Improved error handling for scoped packages (
@scope/pkg) in the virtual store.
Powered by Nehonix™ & XyPriss Engine