Skip to content

Releases: Nehonix-Team/XFMP

XFPM - vG0.1.61

02 Apr 17:03

Choose a tag to compare

[G0.1.61] - 2026-04-02

Fixed

  • Core: Resolved a critical structural bug where xfpm update incorrectly stripped dependency boundaries (such as peerDependencies, devDependencies, and optionalDependencies) and merged them unconditionally into standard dependencies when 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

02 Apr 10:49

Choose a tag to compare

[G0.1.60] - 2026-04-02

Fixed

  • Core: Resolved a critical oversight where peerDependencies in the root package.json were 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.AllDependencies for better accuracy during project analysis.

XFPM - vG0.1.59-27326

28 Mar 13:49

Choose a tag to compare

[G0.1.59] - 2026-03-28

Fixed

  • Core: Fixed a critical bug where xfpm install <pkg> (or xfpm i <pkg>) would fail to create a package.json file in a directory that did not already have one. XFPM now correctly initializes a default package.json with the current directory name and version 1.0.0 when 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

27 Mar 22:52

Choose a tag to compare

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

04 Mar 22:16

Choose a tag to compare

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

03 Mar 16:05

Choose a tag to compare

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.json is 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

03 Mar 12:47

Choose a tag to compare

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.Exec to 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.Create on a hardlink would empty the source CAS file.
  • Surgical Force Extraction: Refined the force extraction 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 / --cwd flag is now processed in the global pre-run phase, ensuring consistent behavior across all subcommands.
  • PATH Injection: Automated injection of node_modules/.bin and XFPM global paths into the execution environment for xfpm run.

G0.1.44-20326

02 Mar 07:26

Choose a tag to compare

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 update now fetches fresh metadata from registries while strictly honoring semver constraints defined in package.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/.bin and global XFPM binary paths are dynamically injected into the PATH during 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

01 Mar 18:26

Choose a tag to compare

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-cli package 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 --force flag 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

01 Mar 14:10

Choose a tag to compare

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 update and install commands.
  • Improved error handling for scoped packages (@scope/pkg) in the virtual store.

Powered by Nehonix™ & XyPriss Engine