Releases: dry-rb/dry-system
Releases · dry-rb/dry-system
v1.2.4
v1.2.3
v1.2.2
v1.2.1
Fixed
eager_load
was removed fromfinalize!
. It was introduced withtrue
by default that
wasn't the intention #281 (via #282) (@flash-gordon)
v1.2.0
v1.1.1
v1.1.0
v1.1.0.beta2
Changed
- Allow provider sources to use a custom superclass. This requires a custom provider registrar
to be configured, with its own implementations of#provider_source_class
(the superclass to
use) and#provider_source_options
(custom initialization args to pass to the provider
source). (via #275) (@alassek, @timriley)
v1.1.0.beta1
Added
- Add
Dry::System::ProviderRegistrar#target_container
, to be passed when initializing
providers. By default this is an alias of#container
. This allows for custom provider
registrars to override#target_container
to provide a custom#target
within providers.
An overridden value MUST still wrap the original#target_container
to ensure components
are registered in the right place. (via #270) (@timriley)
Changed
- Make
Dry::System::ProviderRegistrar
public API (via #270) (@timriley) - When registering a provider source, you can now provide a
provider_options:
hash of default
options for providers to be registered using that source. The one provider option currently
supported isnamespace:
. (via #271) (@timriley) - Load providers when accessing them via
Dry::System::ProviderRegistrar#[]
. The previous,
behavior of#[]
returningnil
if a provider had not been explicitly loaded was a
potential source of confusion. Now#[]
can serve as the one and only interface for fetching
a provider. (via #273) (@timriley)