Changelog - 2025-12-17
Inversion of Control Refactor
The Dependency Injection (DI) system has been extracted from packages/helpers into a standalone package @venizia/ignis-inversion.
Overview
- New Package:
@venizia/ignis-inversioncreated. - Separation of Concerns:
inversionpackage has zero dependencies on the rest of the framework (exceptlodash,reflect-metadata,zod). - Refactor:
packages/corenow imports DI primitives from@venizia/ignis-inversion.
Breaking Changes
WARNING
This section contains changes that require migration or manual updates to existing code.
1. Deep Imports
Before:
typescript
import { inject } from '@venizia/ignis-helpers/src/helpers/inversion';After:
typescript
import { inject } from '@venizia/ignis-inversion';
// OR via re-exports (if available)
import { inject } from '@venizia/ignis';Deep imports to helpers/inversion within @venizia/ignis-helpers will no longer work as the directory has been removed.
Files Changed
Core Package (packages/core)
| File | Changes |
|---|---|
src/helpers/inversion/ | Refactored to re-export from @venizia/ignis-inversion and add core extensions |
src/mixins/server-config.mixin.ts | Removed |
Helpers Package (packages/helpers)
| File | Changes |
|---|---|
src/helpers/inversion/ | Deleted (Moved to new package) |
Inversion Package (packages/inversion)
| File | Changes |
|---|---|
package.json | Created |
src/ | Created (Content moved from helpers) |
Examples (examples/vert)
| File | Changes |
|---|---|
package.json | Added @venizia/ignis-inversion dependency |
Migration Guide
NOTE
Follow these steps if you're upgrading from a previous version.
Step 1: Update Imports
Check for any deep imports to packages/helpers/src/helpers/inversion and update them to point to @venizia/ignis-inversion.
typescript
// Find
from '@venizia/ignis-helpers/src/helpers/inversion'
// Replace with
from '@venizia/ignis-inversion'Step 2: Install New Package
If you are using the DI system directly, add the new package to your dependencies.
bash
npm install @venizia/ignis-inversion