All notable changes to this project from 5.0.0 forward will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added
interfaces.GetAllOptions
.
- Updated
container.getAll
withoptions
optional param. - Updated
container.getAllAsync
withoptions
optional param. - Updated
interfaces.NextArgs
with optionalisOptional
param. - Updated
container
withtryGet
. - Updated
container
withtryGetAsync
. - Updated
container
withtryGetTagged
. - Updated
container
withtryGetTaggedAsync
. - Updated
container
withtryGetNamed
. - Updated
container
withtryGetNamedAsync
. - Updated
container
withtryGetAll
. - Updated
container
withtryGetAllAsync
. - Updated
container
withtryGetAllTagged
. - Updated
container
withtryGetAllTaggedAsync
. - Updated
container
withtryGetAllNamed
. - Updated
container
withtryGetAllNamedAsync
.
- Updated
interfaces.NextArgs
with optionalisOptional
param. - Updated
container
withtryGet
. - Updated
container
withtryGetAsync
. - Updated
container
withtryGetTagged
. - Updated
container
withtryGetTaggedAsync
. - Updated
container
withtryGetNamed
. - Updated
container
withtryGetNamedAsync
. - Updated
container
withtryGetAll
. - Updated
container
withtryGetAllAsync
. - Updated
container
withtryGetAllTagged
. - Updated
container
withtryGetAllTaggedAsync
. - Updated
container
withtryGetAllNamed
. - Updated
container
withtryGetAllNamedAsync
.
- Added
interfaces.GetAllOptions
.
- Updated
container.getAll
withoptions
optional param. - Updated
container.getAllAsync
withoptions
optional param.
- Fixed unexpected property access while running planning checks on injected base types.
- Updated ESM sourcemaps to refelct the right source code files.
- Updated library to import
reflect-metadata
. Importingreflect-metadata
before bootstraping a module in the userland is no longer required.
- Updated ESM build to provide proper types regardless of the ts resolution module strategy in the userland.
- Fixed container to properly resolve async
.toService
bindings. - Fixed
.toService
binding to properly disable caching any values.
- Updated ESM bundled types to solve circularly referenced types.
- Updated ESM build to provide proper types regardless of the ts resolution module strategy in the userland.
- Updated library to import
reflect-metadata
. Importingreflect-metadata
before bootstraping a module in the userland is no longer required.
- Fixed container to properly resolve async
.toService
bindings. - Fixed
.toService
binding to properly disable caching any values.
- Updated planner with better error description when a binding can not be properly resolved.
- Updated container to allow deactivating singleton undefined values.
- Updated ESM build to be compatible with both bundler and NodeJS module resolution algorithms.
- Updated ESM build to be compatible with both bundler and NodeJS module resolution algorithms.
- Updated planner with better error description when a binding can not be properly resolved.
- Updated ESM build with missing types.
- Updated
package.json
to include theexports
field for better bundler support.
- Updated fetch metadata flows with better error descriptions.
- Updated
package.json
to include theexports
field for better bundler support.
- Updated fetch metadata flows with better error descriptions.
- Bumped
@inversifyjs/common
and@inversifyjs/core
fixing wrong dev engines constraints.
- Updated
ServiceIdentifier
to rely onFunction
instead ofAbstract<T>
.
- Fixed
Target.getNameTag
with the right type:number | string | symbol
. - Fixed
interfaces.ModuleActivationStore.addDeactivation
to enforceserviceIdentifier
andonDeactivation
are consistent. - Fixed
interfaces.ModuleActivationStore.addActivation
to enforceserviceIdentifier
andonDeactivation
are consistent.
property injection tagged as @optional no longer overrides default values with undefined
.
Updated targetName
to be a valid typescript@5
decorator.
Brought tests up to 100% Code Coverage
LazyIdentfier Tests Removed browser test pipeline, browserify, karma (#1542) Update all dependencies except typescript (#1531)
Less than 100% code coverage Use default class property for @optional injected properties (#1467) Remove circular import (#1516) Fix strict type checking on @unmanaged decorator (#1499) Fix typo (LazyServiceIdentifer -> LazyServiceIdentifier) (#1483) Fix typo (circular dependency error message) (#1485)
- add API method for check dependency only in current container
- createTaggedDecorator #1343
- Async bindings #1132
- Async binding resolution (getAllAsync, getAllNamedAsync, getAllTaggedAsync, getAsync, getNamedAsync, getTaggedAsync, rebindAsync, unbindAsync, unbindAllAsync, unloadAsync) #1132
- Global onActivation / onDeactivation #1132
- Parent/Child onActivation / onDeactivation #1132
- Module onActivation / onDeactivation #1132
- Added @preDestroy decorator #1132
- @postConstruct can target an asyncronous function #1132
- Singleton scoped services cache resolved values once the result promise is fulfilled #1320
- only inject decorator can be applied to setters #1342
- Container.resolve should resolve in that container #1338
-Fix pre-publish for build artifacts
- Upgrade information for v4.x to v5.x
- Update BindingToSyntax with
.toAutoNamedFactory()
.
- Fix
Target.isTagged()
to excludeoptional
from tag injections #1190. - Update
toConstructor
,toFactory
,toFunction
,toAutoFactory
,toProvider
andtoConstantValue
to have singleton scope #1297. - Fix injection on optional properties when targeting ES6 #928
- Updating constructor injection wiki document with concrete injection example #922
- Change GUID to incremented counter for better performance #882
- fix broken compilation by adding
.toString()
so symbols serialization #893 - Fix problem with applying options on Container.resolve (fix #914) #915
- Fixed documentation issues
Deprecated - Replaced by 5.0.1