Skip to content

Commit

Permalink
Bump versions of sub-components & add changelogs (#178)
Browse files Browse the repository at this point in the history
* Bump versions of sub-components
* Add changelogs to each sub-component
  • Loading branch information
Blacksmoke16 committed May 14, 2022
1 parent e8ade2a commit 693513e
Show file tree
Hide file tree
Showing 4 changed files with 146 additions and 2 deletions.
143 changes: 143 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
# Changelog

## [0.3.3] - 2022-05-14

_First release a part of the monorepo._

### Added

- Add getting started documentation to API docs ([#172](https://github.com/athena-framework/athena/pull/172)) (George Dietrich)

### Changed

- Update minimum `crystal` version to `~> 1.4.0` ([#169](https://github.com/athena-framework/athena/pull/169)) (George Dietrich)

## [0.3.2] - 2021-10-30

### Changed

- Unused services are now excluded from the container ([#30](https://github.com/athena-framework/dependency-injection/pull/30)) (George Dietrich)

## [0.3.1] - 2021-03-28

### Fixed

- Fix error with untyped parameters with default values injecting ([#28](https://github.com/athena-framework/dependency-injection/pull/28)) (George Dietrich)

## [0.3.0] - 2021-03-20

### Added

- Allow injecting [configuration](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--configuration) into services ([#27](https://github.com/athena-framework/dependency-injection/pull/27)) (George Dietrich)

## [0.2.6] - 2021-03-15

### Added

- Allow using the `ADI::Inject` annotation on class methods to create [factories](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--factories) ([#25](https://github.com/athena-framework/dependency-injection/pull/25)) (George Dietrich)

## [0.2.5] - 2021-01-30

### Changed

- Migrate documentation to [MkDocs](https://mkdocstrings.github.io/crystal/) ([#23](https://github.com/athena-framework/dependency-injection/pull/23), [#24](https://github.com/athena-framework/dependency-injection/pull/24)) (George Dietrich)

## [0.2.4] - 2021-01-29

### Added

- Add dependency on `athena-framework/config` ([#20](https://github.com/athena-framework/dependency-injection/pull/20)) (George Dietrich)
- Add support for injecting [parameters](https://athenaframework.org/components/config/#parameters) into a service ([#20](https://github.com/athena-framework/dependency-injection/pull/20)) (George Dietrich)
- Add support for [service proxies](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--service-proxies) ([#21](https://github.com/athena-framework/dependency-injection/pull/21)) (George Dietrich)

### Removed

- Remove the `lazy` `ADI::Register` field. All services are lazy by default now ([#21](https://github.com/athena-framework/dependency-injection/pull/21)) (George Dietrich)

### Fixed

- Fix issue building documentation ([#22](https://github.com/athena-framework/dependency-injection/pull/22)) (George Dietrich)

## [0.2.3] - 2020-12-24

### Fixed

- Fix error when a parameter has a default value after an array parameter ([#19](https://github.com/athena-framework/dependency-injection/pull/19)) (George Dietrich)

## [0.2.2] - 2020-12-03

### Changed

- Update `crystal` version to allow version greater than `1.0.0` ([#18](https://github.com/athena-framework/dependency-injection/pull/18)) (George Dietrich)

## [0.2.1] - 2020-11-14

### Added

- Add a mock container instance to allow mocking services ([#15](https://github.com/athena-framework/dependency-injection/pull/15)) (George Dietrich)
- Add ability to customize the type of a service within the container ([#15](https://github.com/athena-framework/dependency-injection/pull/15)) (George Dietrich)
- Add support for [factory pattern](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--factories) constructors ([#16](https://github.com/athena-framework/dependency-injection/pull/16)) (George Dietrich)

## [0.2.0] - 2020-06-09

_Major refactor of the component._

### Added

- Add concept of [aliasing services](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--aliasing-services) ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Add concept of [binding values](https://athenaframework.org/DependencyInjection/#Athena::DependencyInjection:bind(key,value)) ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Add concept of [auto configuration](https://athenaframework.org/DependencyInjection/#Athena::DependencyInjection:auto_configure(type,options)) ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Add [ADI::Inject](https://athenaframework.org/DependencyInjection/Inject/) annotation ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Add support for [generic services](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--generic-services) ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)

### Changed

- **Breaking:** manually provided arguments now need to be prefixed with a `_` ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- **Breaking:** service names are now based on the `FQN` of the type, downcase underscored by default ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Updated [optional services](https://athenaframework.org/DependencyInjection/Register/#Athena::DependencyInjection::Register--optional-services) to now be based on the type/default value of the parameter ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- Service dependencies are now resolved automatically, removes need to manually provide them ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)

### Removed

- **Breaking:** remove the `ADI::Service` module ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- **Breaking:** remove the `ADI::Injectable` module ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- **Breaking:** remove the `@?` syntax ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)
- **Breaking:** remove the `#get`, `#has`, `#resolve`, `#tagged`, and `#tags` methods from `ADI::ServiceContainer` ([#10](https://github.com/athena-framework/dependency-injection/pull/10)) (George Dietrich)

## [0.1.3] - 2020-04-06

### Fixed

- Fix an edge case by checking includers via `<=` ([#7](https://github.com/athena-framework/dependency-injection/pull/7)) (George Dietrich)

## [0.1.2] - 2020-02-22

### Changed

- Change type resolution logic to operate at compile time instead of runtime ([#6](https://github.com/athena-framework/dependency-injection/pull/6)) (George Dietrich)

## [0.1.1] - 2020-02-06

### Added

- Add the ability to redefine services ([#4](https://github.com/athena-framework/dependency-injection/pull/4)) (George Dietrich)

## [0.1.0] - 2020-01-31

_Initial release._

[0.3.3]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.3.3
[0.3.2]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.3.2
[0.3.1]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.3.1
[0.3.0]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.3.0
[0.2.6]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.6
[0.2.5]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.5
[0.2.4]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.4
[0.2.3]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.3
[0.2.2]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.2
[0.2.1]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.1
[0.2.0]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.2.0
[0.1.3]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.1.3
[0.1.2]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.1.2
[0.1.1]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.1.1
[0.1.0]: https://github.com/athena-framework/dependency-injection/releases/tag/v0.1.0
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Dependency Injection

[![Common Changelog](https://common-changelog.org/badge.svg)](https://common-changelog.org)
[![CI](https://github.com/athena-framework/athena/workflows/CI/badge.svg)](https://github.com/athena-framework/athena/actions/workflows/ci.yml)
[![Latest release](https://img.shields.io/github/release/athena-framework/dependency-injection.svg)](https://github.com/athena-framework/dependency-injection/releases)

Expand Down
2 changes: 1 addition & 1 deletion shard.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: athena-dependency_injection

version: 0.3.2
version: 0.3.3

crystal: ~> 1.4

Expand Down
2 changes: 1 addition & 1 deletion src/athena-dependency_injection.cr
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ alias ADI = Athena::DependencyInjection
# fiber is truly independent from one another, with them not being reused or sharing state external to the container. An example of this is how `HTTP::Server` reuses fibers
# for `connection: keep-alive` requests. Because of this, or in cases similar to, you may want to manually reset the container via `Fiber.current.container = ADI::ServiceContainer.new`.
module Athena::DependencyInjection
VERSION = "0.3.2"
VERSION = "0.3.3"

private BINDINGS = {} of Nil => Nil
private AUTO_CONFIGURATIONS = {} of Nil => Nil
Expand Down

0 comments on commit 693513e

Please sign in to comment.