Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							8eea9c4e45
							
						
					 | 
					
						
						
							
							Implement container.check_dependencies() (#396)
						
						
						
						
						
						
						
						* Add implementation, typing stubs, and tests
* Add docs and example
* Update changelog 
						
					 | 
					
						2021-02-14 18:47:15 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							839a319831
							
						
					 | 
					
						
						
							
							Better error message for dependency provider (#395)
						
						
						
						
						
						
						
						* Add prototype for flat resolving
* Add working prototype for sample 1 and 3
* Add working prototype, requires deep refactoring
* Update DependenciesContainer to handle Contrainer provider
* Fix Dependency provider copying issue
* Add hardening fix for Self provider to avoid copying bugs
* Fix flaky container copy issue
* Rename set_parent() to assign_parent()
* Refactor Dependency provider and its typing stub
* Add tests for Dependency provider
* Update makefile to run coverage when tests fail
* Clean up DependenciesContainer provider and add tests
* Clean up Container provider and add tests
* Clean up container instance and add tests
* Refactor isinstance() checks
* Clean up DeclarativeContainer and add tests
* Update docs and examples
* Update changelog
* Revoke makefile change 
						
					 | 
					
						2021-02-13 09:16:38 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							674a6b0f9e
							
						
					 | 
					
						
						
							
							Container "self" injections (#392)
						
						
						
						
						
						
						
						* Add implementation
* Add Self provider tests
* Add container tests
* Remove ellipsis from tests to make them pass on Python 2
* Add tests
* Add docs
* Improve traverse() typing stubs
* Update changelog 
						
					 | 
					
						2021-02-07 14:13:23 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							b25356d2fa
							
						
					 | 
					
						
						
							
							Fix tests
						
						
						
						
						
					 | 
					
						2021-02-05 17:21:26 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							c964253204
							
						
					 | 
					
						
						
							
							Container.reset_singletons() (#390)
						
						
						
						
						
						
						
						* Rename container tests
* Add implementation + tests
* Update changelog
* Add examples and docs 
						
					 | 
					
						2021-02-05 17:14:10 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							cba5aefd65
							
						
					 | 
					
						
						
							
							Add container base class
						
						
						
						
						
					 | 
					
						2021-02-03 15:36:37 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							e9a16d1f17
							
						
					 | 
					
						
						
							
							Fix #380: .init_resources() and .shutdown_resource() dont ignore nested resources
						
						
						
						
						
					 | 
					
						2021-02-01 09:54:36 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							3ca6dd9af1
							
						
					 | 
					
						
						
							
							Providers traversal (#385)
						
						
						
						
						
						
						
						* Implement providers traversal in first precision
* Implement traversal for all providers
* Update traverse interface + add some tests
* Refactor tests
* Add tests for callable provider
* Add configuration tests
* Add Factory tests
* Add FactoryAggrefate tests
* Add .provides attribute to singleton providers
* Add singleton provider tests
* Add list and dict provider tests
* Add resource tests
* Add Container provider tests
* Add Selector provider tests
* Add ProvidedInstance provider tests
* Add AttributeGetter provider tests
* Add ItemGetter provider tests
* Add MethodCaller provider tests
* Refactor container interface
* Update resource provider string representation
* Add .initializer attribute to Resource provider
* Add docs and examples
* Remove not needed EOL in the tests
* Make cosmetic refactoring
* Ignore flake8 line width error in traverse example 
						
					 | 
					
						2021-02-01 09:42:21 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							39cb963351
							
						
					 | 
					
						
						
							
							367 Fix declarative container metaclass bug with child providers
						
						
						
						
						
					 | 
					
						2021-01-29 16:37:50 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							92938b018d
							
						
					 | 
					
						
						
							
							Improve @containers.copy to replace subcontainer providers (#378)
						
						
						
						
						
						
						
						* Improve @containers.copy to replace subcontainer providers
* Bump version to 4.11.1 
						
					 | 
					
						2021-01-27 09:21:45 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							907a4f1887
							
						
					 | 
					
						
						
							
							Add dependencies attribute to declarative and dynamic containers (#359)
						
						
						
						
						
						
						
						* Add .dependencies attribute to declarative and dynamic containers
* Update changelog
* Add typing tests 
						
					 | 
					
						2021-01-15 07:20:37 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							dd57c68ce5
							
						
					 | 
					
						
						
							
							Fix declarative container multi-level inheritance issue
						
						
						
						
						
					 | 
					
						2021-01-12 17:49:48 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							feed916f46
							
						
					 | 
					
						
						
							
							Async resources and injections (#352)
						
						
						
						
						
						
						
						* Add support of async injections into wiring
* Add support of async functions and async generators for resources
* Update resource provider typing stub for stutdown
* Add resource base class for async resources
* Fix tests
* Add tests for async injections in wiring @inject
* Refactor provider tests
* Add tests for async resources
* Rework async resources callbacks to .add_done_callback() style (fixes pypy3 issue)
* Add awaits into async resource class test
* Refactor FastAPI tests
* Implement async resources initialization in container
* Move container async resource tests to a separate module for Python 3.6+
* Fix init async resources in container on Python 2
* Add first dirty async injections implementation
* Fix isawaitable error
* Turm asyncio import to conditional for safer Py2 usage
* Refactor kwargs injections
* Implement positional injections, add tests and make refactoring
* Implement attribute injections and add tests
* Add singleton implementation + tests for all singleton types
* Implement injections in thread-local and thread-safe singleton providers
* Update .provided + fix resource concurent initialization issue
* Implement async mode for Dependency provider
* Add async mode for the provider
* Add overload for Factory typing
* Add typing stubs for async resource
* Refactor abstract* providers __call__()
* Add async mode API + tests
* Add typing stubs & tests for async mode API
* Add tests for async mode auto configuration
* Refactor Provider.__call__() to use async mode api
* Refactor Dependency provider to use async mode api
* Add tests for Dependency provider async mode
* Add support of async mode for FactoryAggregate provider + tests
* Refactor Singleton provider to use async mode api
* Refactor ThreadSafeSingleton provider to use async mode api
* Refactor ThreadLocalSingleton provider to use async mode api
* Finish Singleton refactoring to use async mode api
* Refactor Resource provider to use async mode api
* Add Provider.async_() method + tests
* Add typing stubs for async_() method + tests
* Refactor Singleton typing stubs to return singleton from argument methods
* Refactor provider typing stubs
* Improve resource typing stub
* Add tests for async context kwargs injections
* Fix typo in resource provider tests
* Cover shutdown of not initialized resource
* Add test to cover resource initialization with an error
* Fix Singleton and ThreadLocalSingleton to handle initialization errors
* Add FastAPI + Redis example
* Make cosmetic fixes to FastAPI + Redis example
* Add missing development requirements
* Update module docblock in fastapi + redis example
* Add FastAPI + Redis example docs
* Add references to FastAPI + Redis example
* Refactor resource docs
* Add asynchronous resources docs
* Refactor wiring docs
* Add async injections docs for wiring
* Add async injections page and update docs index, readme, and key features pages
* Add providers async injections example
* Add docs on provider async mode enabling
* Reword async provider docs
* Add provider async mode docs
* Add cross links to async docs
* Mute flake8 errors in async provider examples
* Update changelog
* Make cosmetic fix to containers.pyx 
						
					 | 
					
						2021-01-10 19:26:15 -05:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							47c79b2772
							
						
					 | 
					
						
						
							
							Resources (#312)
						
						
						
						
						
						
						
						* Add prototype
* Add example
* Remove typing erros in Python 2.7 and 3.4
* Move resources example
* Draft resources docs
* Update resources docs
* Fix repr
* Rename dict provider test
* Add more tests
* Add tests + refactoring
* Add more tests
* Update tests to run only on 3.5+
* Update setup.py
* Add typing tests
* Update changelog
* Fix generator iteration
* Remove contextlib
* Hotfix aiohttp issue
* Move aiohttp fix to tox.ini
* Move aiohttp fix to a different place in tox 
						
					 | 
					
						2020-10-24 20:56:32 -04:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							08de710b2f
							
						
					 | 
					
						
						
							
							235 Fix Delegate cannot be used in overridden container (#236)
						
						
						
						
						
						
						
						* Add test for bug #235
* Fix issue + refactoring
* Update changelog 
						
					 | 
					
						2019-10-09 10:45:14 -04:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							9a785de4b5
							
						
					 | 
					
						
						
							
							Coroutine provider (#206)
						
						
						
						
						
						
						
						* Add coroutine provider examples
* Add coroutine provier
* Update changelog
* Update static analysis travis jobs to python 3.7
* Update coroutine provider implementation for python 3.4
* Update static analysis travis jobs to python 3.6
* Make pycode style happy
* Add tests for coroutine providers
* Make coroutine tests python 2 syntax friendly
* Split tests to python2 and python3
* Refactor coroutine provider tests
* Modify pypy tests running command
* Update coroutine provider docs 
						
					 | 
					
						2018-10-18 19:39:19 +03:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							461c546d31
							
						
					 | 
					
						
						
							
							Fix bug #200
						
						
						
						
						
					 | 
					
						2018-07-26 10:16:02 +03:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							4bfaf92099
							
						
					 | 
					
						
						
							
							Refactor tests
						
						
						
						
						
					 | 
					
						2018-07-26 10:08:46 +03:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							48ac3824cb
							
						
					 | 
					
						
						
							
							Fix bug #198
						
						
						
						
						
					 | 
					
						2018-07-24 23:09:56 +03:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							1c6160e827
							
						
					 | 
					
						
						
							
							Feature/declarative container initialization (#176)
						
						
						
						
						
						
						
						* Add overriding functionality on declarative container initialization
* Update changelog
* Update bundles example 
						
					 | 
					
						2017-12-24 23:03:13 +02:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogylatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							7bd0997f85
							
						
					 | 
					
						
						
							
							Add parsing of nested containers to declarative container
						
						
						
						
						
					 | 
					
						2017-11-21 11:47:55 +02:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Roman Mogilatov
							
						 
					 | 
					
						
						
						
						
							
						
						
							5695c781c9
							
						
					 | 
					
						
						
							
							Update project structure
						
						
						
						
						
					 | 
					
						2016-11-04 13:06:47 +02:00 | 
					
					
						
						
							
							
							
						
					 |