3.0.0 (2023-10-04)
- refactor!: migrate to typescript (9a7a32d)
Features
- add deprecation warnings and improve error messages (b9412b4)
- allow custom injectable name (fbd702d)
- allow manual constructors with optional injects (9fa92ae)
- deps: update dependencies and node engine version (27bf5b3)
- reuse singleton odin instance (b172fe1)
BREAKING CHANGES
- The
@OdinConfigdecorator is now@Configuration. - The
@PostConstructdecorator is now@Initializer. - The
@Singletondecorator is now@Injectable({ singleton: true }). Bundle.getnow returnsundefinedinstead ofnull.Container.getnow returnsundefinedinstead ofnull.Container.providenow returnsundefinedinstead ofnull.CustomProvider.resolvenow returnsundefinedinstead ofnull.Registry.getnow returnsundefinedinstead ofnull.- Renamed
InjectableDeftoDescriptor. - Renamed
InjectableDef.argstoDescriptor.options. - Renamed
InjectableDef.definitiontoDescriptor.injectable. - Renamed
Bundle.checkHastoBundle.validateRegistration. - Renamed
Registry.checkHastoRegistry.validateRegistration. - Renamed
Secrets.getPostContructtoSecrets.getInitializer. - Renamed
Secrets.setPostContructtoSecrets.setInitializer. - Removed
Bundle.getId. The user should not have to decide which identifier to use, all of them should be accepted everywhere. - Removed
Registry.getId. The user should not have to decide which identifier to use, all of them should be accepted everywhere. - Removed
Registry.hasName. It has been covered by the newhasimplementation. - Removed
Secrets.getNamed,Secrets.isNamedandSecrets.setNamed. It was the wrong solution for a simple problem, which has now been resolved. Feel free to implement/manage your own secrets. - Removed
Secrets.getWrapper,Secrets.isWrapperandSecrets.setWrapper. Thewrapperhad no purpose within odin itself. Feel free to implement/manage your own secrets. - Removed
Secrets.isCustomandSecrets.setCustom. Thecustomflag had no purpose within odin itself. Feel free to implement/manage your own secrets.
This release is also available on: