Changelog - 2026-09-11
ARDOR Replaces @minimaltech/ra-core-infra
New Feature Breaking ChangeIn one line. @minimaltech/ra-core-infra became four ARDOR packages behind a single @venizia/ardor umbrella import.
What changed
- Package architecture split. The codebase is partitioned along dependency seams into
@venizia/ardor-kernel(isomorphic core),@venizia/ardor-react(React context and hooks), and@venizia/ardor-admin(react-admin adapter), all re-exported by@venizia/ardor. - Four symbol renames.
AbstractRaApplication,BaseRaApplication,CoreRaApplication, andICoreRaApplicationwere renamed to match the ARDOR naming convention. - DIContainer dropped.
DIContainerhas been removed in favor of the inversionContainerprovided via IGNIS. - Module augmentation targets moved. Interface augmentations must now target the declaring package (
@venizia/ardor-reactor@venizia/ardor-admin) instead of the umbrella import. - IGNIS dependency bumped. ARDOR requires
@venizia/ignis-inversionversion>=0.2.0-7to support metadata-based target resolution. - Vietnamese message bundle updated.
vietnameseMessagesnow includesra.validation.uniquerequired byra-core5.15.3. - Logger toggle fix.
Logger.toggleDebug({ state: false })now explicitly disables debug logging instead of toggling the state.
Who is affected
- All consumers of
@minimaltech/ra-core-infra. Action required: migrate by hand following the guide, and update the dependency to@venizia/ardor. See../guides/migration/from-ra-core-infra.
Breaking changes
WARNING
All consumers importing from @minimaltech/ra-core-infra must update their package dependencies, symbol names, and TypeScript module augmentations.
Before:
ts
// ... the old package, no longer installable
import {
AbstractRaApplication,
BaseRaApplication,
CoreRaApplication,
ICoreRaApplication,
useInjectable,
useTranslate,
} from '@minimaltech/ra-core-infra';
declare module '@minimaltech/ra-core-infra' {
interface IUseInjectableKeysOverrides extends Record<keyof ReturnType<Application['bindingList']>, unknown> {}
interface IUseTranslateKeysOverrides extends ITranslateKeys {}
}After:
ts
import {
AbstractArdorApplication,
BaseArdorApplication,
ArdorApplication,
type IArdorApplication,
useInjectable,
useTranslate,
} from '@venizia/ardor';
// The keys an application binds; `ITranslateKeys` is the app's own message-key type.
type TApplicationKeys = 'services.ProductApi' | 'services.OrderApi';
interface ITranslateKeys extends Record<'resources.product.name', unknown> {}
declare module '@venizia/ardor-react' {
interface IUseInjectableKeysOverrides extends Record<TApplicationKeys, unknown> {}
}
declare module '@venizia/ardor-admin' {
interface IUseTranslateKeysOverrides extends ITranslateKeys {}
}Details
@minimaltech/ra-core-infrais permanently frozen at0.0.3-18; all future development and fixes live in the ARDOR packages.- The migration guide lists the four edits a consumer makes: the import specifier, the symbol renames, the
declare moduleretargeting, and thepackage.jsondependency.
| Package | Role |
|---|---|
@venizia/ardor-kernel | Isomorphic core: application base, service and CRUD bases, logger, network fetchers, socket client |
@venizia/ardor-react | Application context, inversion hooks, typed Redux hook factories, UI hooks |
@venizia/ardor-admin | react-admin adapter: REST data provider, auth provider, i18n provider, ArdorApplication root |
@venizia/ardor | Umbrella package re-exporting kernel, react, and admin packages |