# 0.9.3
## What's Changed
* feat: implement recursive forward ref resolution in test module dependencies by @eadwinCode in https://github.com/python-ellar/ellar/pull/302


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.9.2...0.9.3


# 0.9.2
## What's Changed
* fix(testing): handle uvicorn SystemExit in EllarUvicornServer startup by @eadwinCode in https://github.com/python-ellar/ellar/pull/300
* Bump ruff from 0.13.3 to 0.14.3 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/299
* Bump uvicorn[standard] from 0.30.6 to 0.38.0 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/296
* Bump starlette from 0.48.0 to 0.49.1 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/298
* feat: Add InjectByTag support and global TagRegistry for testing by @eadwinCode in https://github.com/python-ellar/ellar/pull/301


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.9.0...0.9.2

# 0.9.0
## What's Changed
* Starlette 0.46.1 upgrade by @eadwinCode in https://github.com/python-ellar/ellar/pull/267
* Update python-multipart requirement from <0.0.10,>=0.0.5 to >=0.0.5,<0.0.21 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/274
* Bump argon2-cffi from 23.1.0 to 25.1.0 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/273
* Bump regex from 2024.11.6 to 2025.7.34 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/271
* Bump types-ujson from 5.10.0.20240515 to 5.10.0.20250326 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/270
* Bump codecov/codecov-action from 5.4.0 to 5.4.3 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/269
* Update mkdocstrings[python] requirement from <0.26.0,>=0.19.0 to >=0.19.0,<0.31.0 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/278
* Update pytest-cov requirement from <6.0.0,>=2.12.0 to >=2.12.0,<8.0.0 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/292
* Bump mypy from 1.11.2 to 1.18.2 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/291
* Bump regex from 2025.7.34 to 2025.9.18 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/290
* Bump actions/setup-python from 5 to 6 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/288
* Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/287
* Bump codecov/codecov-action from 5.4.3 to 5.5.1 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/286
* Bump actions/checkout from 4 to 5 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/275
* Bump ruff from 0.6.3 to 0.13.2 by @dependabot[bot] in https://github.com/python-ellar/ellar/pull/289
* Fix mypy errors: resolve type issues and remove unused type ignores by @eadwinCode in https://github.com/python-ellar/ellar/pull/293


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.9...0.9.0

# 0.8.9
## What's Changed
* fix: Python 3.13 Support by @eadwinCode in https://github.com/python-ellar/ellar/pull/257
* fix:Starlette 0.45.1 Upgrade by @eadwinCode in https://github.com/python-ellar/ellar/pull/258
* Bump pypa/gh-action-pypi-publish from 1.12.2 to 1.12.3 by @dependabot in https://github.com/python-ellar/ellar/pull/260
* Bump codecov/codecov-action from 5.0.7 to 5.1.2 by @dependabot in https://github.com/python-ellar/ellar/pull/259
* fix: Authorization Documentation by @eadwinCode in https://github.com/python-ellar/ellar/pull/261
* fix: Added more context to authentication docs by @eadwinCode in https://github.com/python-ellar/ellar/pull/262
* Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4 by @dependabot in https://github.com/python-ellar/ellar/pull/264
* Bump codecov/codecov-action from 5.1.2 to 5.3.1 by @dependabot in https://github.com/python-ellar/ellar/pull/263
* Bump codecov/codecov-action from 5.3.1 to 5.4.0 by @dependabot in https://github.com/python-ellar/ellar/pull/265
* Fixed CI Test and Test Module Resolving Internal Services by @eadwinCode in https://github.com/python-ellar/ellar/pull/266


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.7...0.8.9


# 0.8.7
## What's Changed
* fix: Pydantic Version 2.10.2 bug by @eadwinCode in https://github.com/python-ellar/ellar/pull/254
* Bump pypa/gh-action-pypi-publish from 1.10.2 to 1.12.2 by @dependabot in https://github.com/python-ellar/ellar/pull/253
* Bump codecov/codecov-action from 4.6.0 to 5.0.7 by @dependabot in https://github.com/python-ellar/ellar/pull/252


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.6...0.8.7

# 0.8.6
## What's Changed
* Bump codecov/codecov-action from 4.5.0 to 4.6.0 by @dependabot in https://github.com/python-ellar/ellar/pull/249
* fix: Provider Config with string import by @eadwinCode in https://github.com/python-ellar/ellar/pull/251


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.5...0.8.6

# 0.8.5
## What's Changed
* Bump pypa/gh-action-pypi-publish from 1.9.0 to 1.10.2 by @dependabot in https://github.com/python-ellar/ellar/pull/246
* fix:Route Resolvers with custom alias and name by @eadwinCode in https://github.com/python-ellar/ellar/pull/247
* fix: Skip template name with any extension  by @eadwinCode in https://github.com/python-ellar/ellar/pull/248


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.4...0.8.5

# 0.8.4
## What's Changed
* Custom resolver gen by @eadwinCode in https://github.com/python-ellar/ellar/pull/245


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.3...0.8.4

# 0.8.3
## What's Changed
* fix: ForwardRef and Service lookup by @eadwinCode in https://github.com/python-ellar/ellar/pull/235
* Bump ruff from 0.5.5 to 0.6.3 by @dependabot in https://github.com/python-ellar/ellar/pull/241
* Bump mypy from 1.11.1 to 1.11.2 by @dependabot in https://github.com/python-ellar/ellar/pull/240
* Bump aiohttp from 3.10.0 to 3.10.5 by @dependabot in https://github.com/python-ellar/ellar/pull/239
* Bump types-redis from 4.6.0.20240425 to 4.6.0.20240819 by @dependabot in https://github.com/python-ellar/ellar/pull/238
* Bump uvicorn[standard] from 0.30.4 to 0.30.6 by @dependabot in https://github.com/python-ellar/ellar/pull/237
* fix: allOf for latest Pydantic version by @eadwinCode in https://github.com/python-ellar/ellar/pull/244
* Fix: Moved Passlib and click package as an optional dependency by @eadwinCode in https://github.com/python-ellar/ellar/pull/243
* Bump types-redis from 4.6.0.20240819 to 4.6.0.20240903 by @dependabot in https://github.com/python-ellar/ellar/pull/242
* fix: Unified route function resolvers by @eadwinCode in https://github.com/python-ellar/ellar/pull/236

**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.2...0.8.3


# 0.8.2
## What's Changed
* Removed jinja validator by @eadwinCode in https://github.com/python-ellar/ellar/pull/234


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.1...0.8.2

# 0.8.1
## What's new
- **Module Service/Providers Encapsulation**:  Modules has the ability to define services that won't be accessible to other application modules. This provides a proper graph of module dependencies amongst each other and gives a clear information on services exposed and managed by each modules.
- **Module ForwardRef**: Modules that depends on another imported module can forward ref the module object to be able to utilize services/providers exposed by that module. 
- **ModuleRouter Nesting**: ModuleRouter objects can be nested with other ModuleRouter object as necessary for the user

## What's Changed
* fix: Application Context Round Usage by @eadwinCode in https://github.com/python-ellar/ellar/pull/217
* feat: Nested ModuleRouter support by @eadwinCode in https://github.com/python-ellar/ellar/pull/218
* Module Builder Refactor by @eadwinCode in https://github.com/python-ellar/ellar/pull/219
* Bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0 by @dependabot in https://github.com/python-ellar/ellar/pull/221
* Bump codecov/codecov-action from 4.4.1 to 4.5.0 by @dependabot in https://github.com/python-ellar/ellar/pull/220
* Bump mypy from 1.10.0 to 1.10.1 by @dependabot in https://github.com/python-ellar/ellar/pull/223
* Bump ruff from 0.4.7 to 0.5.0 by @dependabot in https://github.com/python-ellar/ellar/pull/222
* feat: Module Container Services Encapsulation by @eadwinCode in https://github.com/python-ellar/ellar/pull/224
* Bump uvicorn[standard] from 0.30.1 to 0.30.4 by @dependabot in https://github.com/python-ellar/ellar/pull/228
* Bump aiohttp from 3.9.5 to 3.10.0 by @dependabot in https://github.com/python-ellar/ellar/pull/226
* Bump injector from 0.21.0 to 0.22.0 by @dependabot in https://github.com/python-ellar/ellar/pull/227
* Bump starlette from 0.37.2 to 0.38.2 by @dependabot in https://github.com/python-ellar/ellar/pull/229
* Bump ruff from 0.5.0 to 0.5.5 by @dependabot in https://github.com/python-ellar/ellar/pull/225
* Ft: Module Routes Execution Context by @eadwinCode in https://github.com/python-ellar/ellar/pull/230
* Added py3.12 support by @eadwinCode in https://github.com/python-ellar/ellar/pull/190
* Documentation Updates Aug2024 by @eadwinCode in https://github.com/python-ellar/ellar/pull/231
* fix: Drop Global Guard as Provider by @eadwinCode in https://github.com/python-ellar/ellar/pull/232
* fixed app ready check by @eadwinCode in https://github.com/python-ellar/ellar/pull/233


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.8...0.8.1

# 0.8b1
## What's Changed
* Bump uvicorn[standard] from 0.30.1 to 0.30.4 by @dependabot in https://github.com/python-ellar/ellar/pull/228
* Bump aiohttp from 3.9.5 to 3.10.0 by @dependabot in https://github.com/python-ellar/ellar/pull/226
* Bump injector from 0.21.0 to 0.22.0 by @dependabot in https://github.com/python-ellar/ellar/pull/227
* Bump starlette from 0.37.2 to 0.38.2 by @dependabot in https://github.com/python-ellar/ellar/pull/229
* Bump ruff from 0.5.0 to 0.5.5 by @dependabot in https://github.com/python-ellar/ellar/pull/225
* Ft: Module Routes Execution Context by @eadwinCode in https://github.com/python-ellar/ellar/pull/230
* Added py3.12 support by @eadwinCode in https://github.com/python-ellar/ellar/pull/190


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.8.0a1...0.8b1

#0.8.a1
## What's new
- **Module Service/Providers Encapsulation**:  Modules has the ability to define services that won't be accessible to other application modules. This provides a proper graph of module dependencies amongst each other and gives a clear information on services exposed and managed by each modules.
- **Module ForwardRef**: Modules that depends on another imported module can forward ref the module object to be able to utilize services/providers exposed by that module. 
- **ModuleRouter Nesting**: ModuleRouter objects can be nested with other ModuleRouter object as necessary for the user

## What' changed
* fix: Application Context Round Usage by @eadwinCode in https://github.com/python-ellar/ellar/pull/217
* Module Builder Refactor by @eadwinCode in https://github.com/python-ellar/ellar/pull/219
* Bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0 by @dependabot in https://github.com/python-ellar/ellar/pull/221
* Bump codecov/codecov-action from 4.4.1 to 4.5.0 by @dependabot in https://github.com/python-ellar/ellar/pull/220
* Bump mypy from 1.10.0 to 1.10.1 by @dependabot in https://github.com/python-ellar/ellar/pull/223
* Bump ruff from 0.4.7 to 0.5.0 by @dependabot in https://github.com/python-ellar/ellar/pull/222


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.8...0.8.0a1

# 0.7.8
## What's Changed
* Policy Refactor by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/9ebb844d942359645b61412480a0031d3a43d0d7
* Dropped task execution for module lifespan actions by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/7724b21efbc82d30171d930f6cebab15fcc4eebf
* feat: Added middleware support to EllarMount and ApplicationContext by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/61ff5c0a97b0e965e6e82e121530de26aea4f528
* Fixed module template filters and global variables by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/7f883c38e74df54d5b026015420d60ecfb9e4b47
* Added support for injector to be nested, dropped controller class key and added support for controller inheritance by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/f50cffc3cde44cf868867cff71a712d0358cabf2
* Added support for gateway controller inheritance by @eadwinCode in https://github.com/python-ellar/ellar/pull/216/commits/aab73fda48c00ac6849d1abbf6b7d4ba67a12449


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.7...0.7.8


# 0.7.7
## What's Changed
* Bump types-ujson from 5.9.0.0 to 5.10.0.20240515 by @dependabot in https://github.com/python-ellar/ellar/pull/213
* Bump ruff from 0.4.2 to 0.4.7 by @dependabot in https://github.com/python-ellar/ellar/pull/212
* Bump uvicorn[standard] from 0.29.0 to 0.30.0 by @dependabot in https://github.com/python-ellar/ellar/pull/211
* Bump uvicorn[standard] from 0.30.0 to 0.30.1 by @dependabot in https://github.com/python-ellar/ellar/pull/214
* Bump codecov/codecov-action from 4.3.0 to 4.4.1 by @dependabot in https://github.com/python-ellar/ellar/pull/210
* Bump mypy from 1.9.0 to 1.10.0 by @dependabot in https://github.com/python-ellar/ellar/pull/202
* fix: TestingModule metadata sharing during tests by @eadwinCode in https://github.com/python-ellar/ellar/pull/215


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.6...0.7.7

# 0.7.6
## What's Changed
* Bump codecov/codecov-action from 4.1.1 to 4.3.0 by @dependabot in https://github.com/python-ellar/ellar/pull/207
* Bump ruff from 0.3.4 to 0.4.2 by @dependabot in https://github.com/python-ellar/ellar/pull/206
* Update mkdocstrings[python] requirement from <0.25.0,>=0.19.0 to >=0.19.0,<0.26.0 by @dependabot in https://github.com/python-ellar/ellar/pull/205
* Bump types-redis from 4.6.0.20240218 to 4.6.0.20240425 by @dependabot in https://github.com/python-ellar/ellar/pull/204
* Bump aiohttp from 3.9.3 to 3.9.5 by @dependabot in https://github.com/python-ellar/ellar/pull/203
* mypy 1.10.0 upgrade by @eadwinCode in https://github.com/python-ellar/ellar/pull/208
* May 22/24 patches by @eadwinCode in https://github.com/python-ellar/ellar/pull/209


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.4...0.7.6

# 0.7.4
## What's Changed
* feat(DI): Service registration with tag by @eadwinCode in https://github.com/python-ellar/ellar/pull/200
* Bump mypy from 1.8.0 to 1.9.0 by @dependabot in https://github.com/python-ellar/ellar/pull/195
* feat: Dynamic command by @eadwinCode in https://github.com/python-ellar/ellar/pull/201


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.3...0.7.4


# 0.7.3
## What's Changed
* Bump codecov/codecov-action from 4.0.0 to 4.1.1 by @dependabot in https://github.com/python-ellar/ellar/pull/198
* Bump pypa/gh-action-pypi-publish from 1.8.12 to 1.8.14 by @dependabot in https://github.com/python-ellar/ellar/pull/197
* Bump ruff from 0.3.0 to 0.3.4 by @dependabot in https://github.com/python-ellar/ellar/pull/196
* Update pytest-cov requirement from <5.0.0,>=2.12.0 to >=2.12.0,<6.0.0 by @dependabot in https://github.com/python-ellar/ellar/pull/193
* Bump uvicorn[standard] from 0.27.1 to 0.29.0 by @dependabot in https://github.com/python-ellar/ellar/pull/192
* Minor Fixes by @eadwinCode in https://github.com/python-ellar/ellar/pull/199


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.2...0.7.3

# 0.7.2
## What's Changed
* Renamed examples to samples by @eadwinCode in https://github.com/python-ellar/ellar/pull/188
* Update mkdocstrings[python] requirement from <0.24.0,>=0.19.0 to >=0.19.0,<0.25.0 by @dependabot in https://github.com/python-ellar/ellar/pull/187
* Bump types-redis from 4.6.0.20240106 to 4.6.0.20240218 by @dependabot in https://github.com/python-ellar/ellar/pull/186
* Bump ruff from 0.1.9 to 0.3.0 by @dependabot in https://github.com/python-ellar/ellar/pull/185
* Update python-multipart requirement from <0.0.7,>=0.0.5 to >=0.0.5,<0.0.10 by @dependabot in https://github.com/python-ellar/ellar/pull/184
* Bump pypa/gh-action-pypi-publish from 1.8.11 to 1.8.12 by @dependabot in https://github.com/python-ellar/ellar/pull/183
* Lib dependency restructure by @eadwinCode in https://github.com/python-ellar/ellar/pull/189

**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.1...0.7.2


# 0.7.1
## What's Changed
* Fixed EmailStr bug by @eadwinCode in https://github.com/python-ellar/ellar/pull/181


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.7.0...0.7.1

# 0.7.0
## What's Changed
* Bump aiohttp from 3.9.1 to 3.9.3 by @dependabot in https://github.com/python-ellar/ellar/pull/178
* Bump types-redis from 4.6.0.11 to 4.6.0.20240106 by @dependabot in https://github.com/python-ellar/ellar/pull/175
* Bump pypa/gh-action-pypi-publish from 1.8.10 to 1.8.11 by @dependabot in https://github.com/python-ellar/ellar/pull/173
* Bump codecov/codecov-action from 3.1.4 to 4.0.0 by @dependabot in https://github.com/python-ellar/ellar/pull/172
* Update pytest requirement from <8.0.0,>=6.2.4 to >=6.2.4,<9.0.0 by @dependabot in https://github.com/python-ellar/ellar/pull/174
* moved `ellar.common.routing` core implementation to `ellar.core.routing` by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* dropped `application.install_module()` by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* Moved Controllers and Routers computation to happen during `@Module` processing by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* Renamed `ellar.openapi.open_info` to `ellar.openapi.api_info` by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* Added Session Documentation by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* Added OpenAPI Documentation by @eadwinCode in https://github.com/python-ellar/ellar/pull/179
* Starlette 0.37.1 support by @eadwinCode in https://github.com/python-ellar/ellar/pull/180

## Breaking Changes
* dropped `application.install_module()` use [ModuleSetup](https://python-ellar.github.io/ellar/basics/dynamic-modules/) for Modules that need application services
* `OPENAPIModule.setup` requires app as parameter.


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.6.8...0.7.0

# 0.6.8
## What's Changed
* Drop file storage  by @eadwinCode in https://github.com/python-ellar/ellar/pull/171
* Updated Ellar CLI documentation by @eadwinCode in https://github.com/python-ellar/ellar/pull/171


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.6.7...0.6.8

# 0.6.7
## What's Changed
* Bug Fixes: Extra Route Args multiple field grouping by @eadwinCode in https://github.com/python-ellar/ellar/pull/170


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.6.6...0.6.7

# 0.6.6
## What's Changed
* Update publish.yml by @eadwinCode in https://github.com/python-ellar/ellar/pull/168
* Feat: Added support for running async context manager with sync_worker by @eadwinCode in https://github.com/python-ellar/ellar/pull/169


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.6.4...0.6.6

# 0.6.4
## What's Changed
* Bump actions/setup-python from 4 to 5 by @dependabot in https://github.com/python-ellar/ellar/pull/165
* Bump types-ujson from 5.8.0.1 to 5.9.0.0 by @dependabot in https://github.com/python-ellar/ellar/pull/164
* Bump uvicorn[standard] from 0.23.2 to 0.25.0 by @dependabot in https://github.com/python-ellar/ellar/pull/163
* Bump ruff from 0.1.7 to 0.1.9 by @dependabot in https://github.com/python-ellar/ellar/pull/162
* Async application context by @eadwinCode in https://github.com/python-ellar/ellar/pull/167


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.6.2...0.6.4

# 0.6.2
## What's Changed
* Files System And File Mounting by @eadwinCode in https://github.com/python-ellar/ellar/pull/147
* 100% test coverage by @eadwinCode in https://github.com/python-ellar/ellar/pull/158
* App stack build on lifespan by @eadwinCode in https://github.com/python-ellar/ellar/pull/159
* Added support for Swagger Doc dark theme.
  
# 0.6.0
## What's Changed
* Feat(LazyModuleImport): New feature by @eadwinCode in https://github.com/python-ellar/ellar/pull/155
* Feat - Lazy Loading ApplicationModule by @eadwinCode in https://github.com/python-ellar/ellar/pull/156
* code refactoring by @eadwinCode in https://github.com/python-ellar/ellar/pull/157


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.8...0.6.0

# 0.5.8
## What's Changed
* Bump ruff from 0.1.4 to 0.1.6 by @dependabot in https://github.com/python-ellar/ellar/pull/152
* Bump types-redis from 4.6.0.8 to 4.6.0.11 by @dependabot in https://github.com/python-ellar/ellar/pull/153
* Bump black from 23.10.1 to 23.11.0 by @dependabot in https://github.com/python-ellar/ellar/pull/151
* Bump aiohttp from 3.8.5 to 3.9.1 by @dependabot in https://github.com/python-ellar/ellar/pull/150
* Pydantic v2 migration by @eadwinCode in https://github.com/python-ellar/ellar/pull/148


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.7...0.5.8

# 0.5.7
## What's Changed
* Test coverage fix by @eadwinCode in https://github.com/python-ellar/ellar/pull/144
* Feat: Lazy Object  by @eadwinCode in https://github.com/python-ellar/ellar/pull/146


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.6...0.5.7

# 0.5.6
## What's Changed
* fixed file data as bytes by @eadwinCode in https://github.com/python-ellar/ellar/pull/143


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.5...0.5.6

# 0.5.5
## What's Changed
* fix file and form schema route function by @eadwinCode in https://github.com/python-ellar/ellar/pull/142


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.4...0.5.5


# 0.5.4
## What's Changed
* Route Function Parameter Aliasing Bug Fix by @eadwinCode in https://github.com/python-ellar/ellar/pull/140
* file upload openapi doc fix by @eadwinCode in https://github.com/python-ellar/ellar/pull/141


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.3...0.5.4


# 0.5.3
## What's Changed
* Fixed Auth And Core pkg Dependency by @eadwinCode in https://github.com/python-ellar/ellar/pull/139


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.2...0.5.3

# 0.5.2
## What's Changed
* Bump ruff from 0.0.275 to 0.1.3 by @dependabot in https://github.com/python-ellar/ellar/pull/135
* Bump black from 23.9.1 to 23.10.1 by @dependabot in https://github.com/python-ellar/ellar/pull/136
* Bump types-redis from 4.6.0.5 to 4.6.0.8 by @dependabot in https://github.com/python-ellar/ellar/pull/133
* Bump mypy from 1.5.1 to 1.6.1 by @dependabot in https://github.com/python-ellar/ellar/pull/134
* Authentication Docs by @eadwinCode in https://github.com/python-ellar/ellar/pull/137

## Breaking Changes
* OpenAPI module Refactor by @eadwinCode in https://github.com/python-ellar/ellar/pull/138


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.1...0.5.2

# 0.5.1
## What's Changed
* Fix grammar error in dynamic-modules.md by @artemyfmv in https://github.com/python-ellar/ellar/pull/132
* Exception Docs Update by @eadwinCode in https://github.com/python-ellar/ellar/pull/131
* Bump black from 22.12.0 to 23.9.1 by @dependabot in https://github.com/python-ellar/ellar/pull/129
* Bump aiohttp from 3.8.4 to 3.8.5 by @dependabot in https://github.com/python-ellar/ellar/pull/113

## New Contributors
* @artemyfmv made their first contribution in https://github.com/python-ellar/ellar/pull/132

**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.5.0...0.5.1

# 0.5.0
## What's Changed
* Bump uvicorn[standard] from 0.22.0 to 0.23.2 by @dependabot in https://github.com/python-ellar/ellar/pull/128
* Bump types-ujson from 5.8.0.0 to 5.8.0.1 by @dependabot in https://github.com/python-ellar/ellar/pull/127
* Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/python-ellar/ellar/pull/126
* Route handlers dependencies type annotation support by @eadwinCode in https://github.com/python-ellar/ellar/pull/130


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.4.9...0.5.0

# 0.4.9
## What's Changed
* fixed 400 error parsing body on windows by @eadwinCode in https://github.com/python-ellar/ellar/pull/125


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.4.8...0.4.9

# 0.4.7
## What's Changed
* Libraries Bump up by @eadwinCode in https://github.com/python-ellar/ellar/pull/122


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.4.6...0.4.7

# 0.4.6
## What's Changed
* drop python 3.7 by @eadwinCode in https://github.com/python-ellar/ellar/pull/118
* Added scope to provider config by @eadwinCode in https://github.com/python-ellar/ellar/pull/121


**Full Changelog**: https://github.com/python-ellar/ellar/compare/0.4.5...0.4.6

# 0.4.5
## What's Changed
* Added auth example by @eadwinCode in https://github.com/eadwinCode/ellar/pull/116
* MyPy Liniting Fix And Embedded Body by @eadwinCode in https://github.com/eadwinCode/ellar/pull/117
* Moved authorization guard to interceptor by @eadwinCode in https://github.com/eadwinCode/ellar/pull/117


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.4.4...0.4.5

# 0.4.4
## What's Changed
* Documentation update by @eadwinCode in https://github.com/eadwinCode/ellar/pull/102
* OPENAPI Refactor by @eadwinCode in https://github.com/eadwinCode/ellar/pull/103
* Bump starlette from 0.27.0 to 0.28.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/105
* Expanding Sessions by @eadwinCode in https://github.com/eadwinCode/ellar/pull/109
* Authentication and Authorization by @eadwinCode in https://github.com/eadwinCode/ellar/pull/104
* Bump types-ujson from 5.7.0.5 to 5.8.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/107
* Ruff linting and mypy upgrade by @eadwinCode in https://github.com/eadwinCode/ellar/pull/115
* Linting, MyPy Upgrade and Example fixes by @eadwinCode in https://github.com/eadwinCode/ellar/pull/111


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.4.2...0.4.4

# 0.4.2
## What's Changed
* Bump starlette from 0.26.1 to 0.27.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/97
* Update typer requirement from <0.8.0,>=0.6.1 to >=0.6.1,<0.10.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/96
* Bump uvicorn[standard] from 0.20.0 to 0.22.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/95
* Bump codecov/codecov-action from 3.1.3 to 3.1.4 by @dependabot in https://github.com/eadwinCode/ellar/pull/94
* Config with prefix by @eadwinCode in https://github.com/eadwinCode/ellar/pull/99
* Extended Lifespan to Module classes by @eadwinCode in https://github.com/eadwinCode/ellar/pull/100
* Ellar Documentation Redesign by @eadwinCode in https://github.com/eadwinCode/ellar/pull/100/commits/7b5d60b149b6ad786b6bf682278e6d7fac83fd8e
* Fixed register_services not calling in modules by @eadwinCode in https://github.com/eadwinCode/ellar/pull/101


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.4.0...0.4.2

# 0.4.0
## What's Changed
* [BREAKING] Renamed Guards decorator to UseGuards decorator by @eadwinCode in https://github.com/eadwinCode/ellar/pull/93

## New Features
* Background Task Feature by @eadwinCode in https://github.com/eadwinCode/ellar/pull/91
You can inject BackgroundTasks instance to you route handler

```python
async def send_welcome_email(email):
    print(f'Send Welcome Email Task Called with "{email}"')

@router.post('/signup')
def sign_up(username: str, password: str, email: str, tasks: BackgroundTasks):
    tasks.add_task(send_welcome_email, email=email)

    return {'status': 'Signup successful'}
```

* EllarInterceptors by @eadwinCode in https://github.com/eadwinCode/ellar/pull/92
Use of interceptors to add more custom implementation to your route handlers and controller as define by [Aspect Oriented Programming](https://en.wikipedia.org/wiki/Aspect-oriented_programming) (AOP) technique
```python
@injectable
class ResponseModifierInterceptor(EllarInterceptor):
    async def intercept(
        self, context: IExecutionContext, next_interceptor: t.Callable[..., t.Coroutine]
    ) -> t.Any:
        data = await next_interceptor()
        if data:
            data.update(ResponseModifierInterceptor="ResponseModifierInterceptor modified returned resulted")
        return data
        
@Controller("")
class InterceptorControllerTest(ControllerBase):
    @UseInterceptors(ResponseModifierInterceptor)
    @get("/interceptor-1")
    async def interceptor_1(self):
        return {"message": "intercepted okay"}
```


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.3.8...0.4.0

# 0.3.8
## What's Changed
* Socket IO integration and Websocket documentation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/82
* Bump codecov/codecov-action from 3.1.1 to 3.1.3 by @dependabot in https://github.com/eadwinCode/ellar/pull/83
* Update email-validator requirement from <2.0.0,>=1.1.1 to >=1.1.1,<3.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/84
* Update mkdocs-material requirement from <9.0.0,>=7.1.9 to >=7.1.9,<10.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/86
* Bump types-ujson from 5.7.0.1 to 5.7.0.5 by @dependabot in https://github.com/eadwinCode/ellar/pull/88
* ellar package dependency refactor by @eadwinCode in https://github.com/eadwinCode/ellar/pull/89
* 0.3.8 by @eadwinCode in https://github.com/eadwinCode/ellar/pull/90
* Breaking: any missing import from `ellar.core` can be found in `ellar.common`


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.3.6...0.3.8

# 0.3.6
## What's Changed
* Added doc on rate limiting by @eadwinCode in https://github.com/eadwinCode/ellar/pull/74
* Guard Documentation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/64
* Dynamic Setup Fix by @eadwinCode in https://github.com/eadwinCode/ellar/pull/75
* Versioning Documentation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/79
* Update python-multipart requirement from <0.0.6,>=0.0.5 to >=0.0.5,<0.0.7 by @dependabot in https://github.com/eadwinCode/ellar/pull/66
* Bump types-ujson from 5.7.0.0 to 5.7.0.1 by @dependabot in https://github.com/eadwinCode/ellar/pull/68
* Testing Documentation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/80
* Starlette Upgrade by @eadwinCode in https://github.com/eadwinCode/ellar/pull/81


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.3.4...0.3.6

# 0.3.4
## What's Changed
* Caching Featuring by @eadwinCode in https://github.com/eadwinCode/ellar/pull/65
* Cache attributes update by @eadwinCode in https://github.com/eadwinCode/ellar/pull/71
* Module Setup Feature  by @eadwinCode in https://github.com/eadwinCode/ellar/pull/73


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.3.2...0.3.4

# 0.3.2
## What's Changed
* fix itsdangerous bug in session middleware by @eadwinCode in https://github.com/eadwinCode/ellar/pull/63


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.3.0...0.3.2

# 0.3.0
## What's Changed
* Bump black from 22.8.0 to 22.12.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/50
* Bump types-ujson from 0.1.1 to 5.6.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/49
* Update typer requirement from <0.7.0,>=0.6.1 to >=0.6.1,<0.8.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/40
* Removed ASGI args from contextvar by @eadwinCode in https://github.com/eadwinCode/ellar/pull/53
* Document updates Jan 2023 by @eadwinCode in https://github.com/eadwinCode/ellar/pull/54
* Injectable Class should be resolved at runtime without errors by @eadwinCode in https://github.com/eadwinCode/ellar/pull/60
* More Doc Updates by @eadwinCode in https://github.com/eadwinCode/ellar/pull/55
* Guards Refactor by @eadwinCode in https://github.com/eadwinCode/ellar/pull/59
* restored commented tests by @eadwinCode in https://github.com/eadwinCode/ellar/pull/61
* Bump starlette from 0.21.0 to 0.23.1 by @dependabot in https://github.com/eadwinCode/ellar/pull/48
* Bump types-ujson from 5.6.0.0 to 5.7.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/58
* Bump types-dataclasses from 0.1.7 to 0.6.6 by @dependabot in https://github.com/eadwinCode/ellar/pull/57
* Update flake8 requirement from <4.0.0,>=3.8.3 to >=3.8.3,<7.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/56


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.2.8...0.3.0

# 0.2.8
## What's Changed
* Separated `IHostContext` from `IExecutionContext` and added factory class that manages their creation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/51
* Made Guards classes Injectable by @eadwinCode in https://github.com/eadwinCode/ellar/pull/52
* Switched from `thread.local` to `ContextVar` to manage `request_scopes` properly by @eadwinCode in https://github.com/eadwinCode/ellar/pull/52
* Added Documentation for `ExecutionContext`.
* Increased test coverage.

**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.2.6...0.2.8

# 0.2.6
## What's Changed
* Documentation Updates by @eadwinCode in https://github.com/eadwinCode/ellar/pull/43
* Reverted building routes from a single list to a list of routers with a well-managed route not found cross routes @eadwinCode in https://github.com/eadwinCode/ellar/pull/43
* Python 3.11 Support by @eadwinCode in https://github.com/eadwinCode/ellar/pull/44
* Changed ASCII drawing to the image by @eadwinCode in https://github.com/eadwinCode/ellar/pull/45
* Added an `IExceptionHandler` contract for defining custom exception handler by @eadwinCode in https://github.com/eadwinCode/ellar/pull/46. [Doc](https://eadwincode.github.io/ellar/overview/exception_handling/)
* Dropped use for `BaseHTTPMiddleware` from Starlette and added a `FunctionBasedMiddleware` by @eadwinCode in https://github.com/eadwinCode/ellar/pull/47
* Added `file` decorator for `FileResponseModel` and `StreamingResponseModel` by @eadwinCode in https://github.com/eadwinCode/ellar/pull/47

```python
import asyncio
from ellar.common import ModuleRouter, file

async def slow_numbers(minimum: int, maximum: int):
    yield ("<html><body><ul>")
    for number in range(minimum, maximum + 1):
        yield "<li>%d</li>" % number
        await asyncio.sleep(0.01)
    yield ("</ul></body></html>")

router = ModuleRouter('/file')

@router.get()
@file(media_type='text/html')
def file_download():
    return {'path': 'path/to/file.html', 'filename': 'code.html', 'content_disposition_type': 'attachment'}

@router.get('/stream')
@file(media_type='text/html', streaming=True)
def file_stream():
    return slow_numbers(1, 4)
```


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.2.4...0.2.6

# 0.2.4
## What's Changed
* Update mkdocs-material requirement from <8.0.0,>=7.1.9 to >=7.1.9,<9.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/37
* Update pytest-cov requirement from <4.0.0,>=2.12.0 to >=2.12.0,<5.0.0 by @dependabot in https://github.com/eadwinCode/ellar/pull/35
* Pydependencies upgrade by @eadwinCode in https://github.com/eadwinCode/ellar/pull/32
* Bump types-orjson from 3.6.0 to 3.6.2 by @dependabot in https://github.com/eadwinCode/ellar/pull/34
* Made CLI tool an optional requirement by @eadwinCode in https://github.com/eadwinCode/ellar/pull/38


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.2.2...0.2.4

# 0.2.2
## What's Changed
* update readme by @areski in https://github.com/eadwinCode/ellar/pull/30
* Cli help command fix by @eadwinCode in https://github.com/eadwinCode/ellar/pull/31

**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.2.0...0.2.2

# 0.2.0
## What's Changed
* Project dependency fix by @eadwinCode in https://github.com/eadwinCode/ellar/pull/29
* Python 3.6 support ends here

**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.1.8...0.2.0

# 0.1.8
## What's Changed
* starlette dependencies fix by @eadwinCode in https://github.com/eadwinCode/ellar/pull/28


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.1.6...0.1.8

# 0.1.6
## What's Changed 
* package stats update by @eadwinCode in https://github.com/eadwinCode/ellar/pull/17
* fixed static package type by @eadwinCode in https://github.com/eadwinCode/ellar/pull/18
* Doc Preparation by @eadwinCode in https://github.com/eadwinCode/ellar/pull/19
* Moved Configuration From File To Class Based by @eadwinCode in https://github.com/eadwinCode/ellar/pull/21
* Bump codecov/codecov-action from 3.1.0 to 3.1.1 by @dependabot in https://github.com/eadwinCode/ellar/pull/25
* CLI Commands And Basic Project Scaffolding by @eadwinCode in https://github.com/eadwinCode/ellar/pull/20
* Quick-Start Doc by @eadwinCode in https://github.com/eadwinCode/ellar/pull/27

### CLI Commands
To scaffold ellar project
```shell
ellar create-project `project-name`
```
To scaffold ellar app
```shell
ellar create-module `app-name`
```
To start application server
```shell
ellar runserver
```


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.1.4...0.1.6

# 0.1.4
## What's Changed
* Bump actions/setup-python from 3 to 4 by @dependabot in https://github.com/eadwinCode/ellar/pull/8
* Starlette Class Renames by @eadwinCode in https://github.com/eadwinCode/ellar/pull/9
* Common Package Testing by @eadwinCode in https://github.com/eadwinCode/ellar/pull/10
* Constant Value All Caps by @eadwinCode in https://github.com/eadwinCode/ellar/pull/11
* Openapi Module Test by @eadwinCode in https://github.com/eadwinCode/ellar/pull/12
* Guard Module Testing by @eadwinCode in https://github.com/eadwinCode/ellar/pull/13
* Configuration Module Test by @eadwinCode in https://github.com/eadwinCode/ellar/pull/14
* App Test by @eadwinCode in https://github.com/eadwinCode/ellar/pull/15
* AppFactory and TestClientFactory Test by @eadwinCode in https://github.com/eadwinCode/ellar/pull/16


**Full Changelog**: https://github.com/eadwinCode/ellar/compare/0.1.2...0.1.4


# Version 0.1.2
## What's Changed
* Refactored route operation functions @eadwinCode in https://github.com/eadwinCode/ellar/pull/7

# Version 0.1.0
## First Release

* Pydantic integration
* DI Container
* Templating with Jinja2
* OpenAPI Documentation (Swagger and ReDoc)
* Controller (MVC)
* Guards (Authentications, roles and permissions)
* Modularization (eg: flask blueprint)
* Websocket support
* Session and Cookie support
* CORS, GZip, Static Files, Streaming responses
* Test client built on requests
* In-process background tasks.
* Startup and shutdown events.
* Application Events

### New Contributors
* @eadwinCode made their first contribution in https://github.com/eadwinCode/ellar/pull/6
