* Add wiring (#294)
* Add wiring module
* Fix code style
* Fix package test
* Add version fix
* Try spike for 3.6
* Try another fix with metaclass
* Downsample required version to 3.6
* Introduce concept with annotations
* Fix bugs
* Add debug message
* Add extra tests
* Add extra debugging
* Update config resolving
* Remove 3.6 generic meta fix
* Fix Flake8
* Add spike for 3.6
* Add Python 3.6 spike
* Add unwire functionality
* Add support of corouting functions
* Bump version to 4.0
* Updaet demo example
* Add pydocstyle ignore for demo
* Add flake8 ignore for demo
* Update aiohttp example
* Update flask example
* Rename aiohttp example directory
* Rename views module to handlers in aiohttp example
* Add sanic example
* Remove not needed images
* Update demo
* Implement wiring for Provide[foo.provider]
* Implement Provide[foo.provided.bar.baz.call()]
* Make flake8 happy
* Wiring refactoring (#296)
* Refactor wiring
* Add todos to wiring
* Implement wiring of config invariant
* Implement sub containers wiring + add tests
* Add test for wiring config invariant
* Add container.unwire() typing stub
* Deprecate ext package modules and remove types module
* Deprecate provider.delegate() method
* Add __all__ for wiring module
* Add protection for wiring only declarative container instances
* Bump version to 4.0.0a2
* Add wiring docs
* Add wiring of class methods
* Remove unused import
* Add a note on individuals import to wiring docs
* Add minor improvement to wiring doc
* Update DI in Python page
* Update key features
* Update README concep and FAQ
* Add files via upload
* Update README.rst
* Update README.rst
* Update README.rst
* Update docs index page
* Update README
* Remove API docs for flask and aiohttp ext
* Add wiring API docs
* Update docs index
* Update README
* Update readme and docs index
* Change wording in README
* Django example (#297)
* Add rough django example
* Remove sqlite db
* Add gitignore
* Fix flake8 and pydocstyle errors
* Add tests
* Refactor settings
* Move web app to to the root of the project
* Add bootstrap 4
* Add doc blocks for web app
* Add coverage
* Fix typo in flask
* Remove not needed newlines
* Add screenshot
* Update django app naming
* Add django example to the docs
* Update changelog
* Update Aiohttp example
* Add sanic example to the docs
* Make a little fix in django example docs page
* Add flask example to the docs
* Add aiohttp example to the docs
* Update installation docs page
* Fix .delegate() deprecation
* Refactor movie lister to use wiring
* Make micro cosmetic changes to flask, aiohttp & sanic examples
* Refactor single container example to use wiring
* Refactor multiple container example to use wiring
* Add return type to main() in application examples
* Refactor decoupled packages example to use wiring
* Refactor code layout for DI demo example
* Update wiring feature message
* Add more links to the examples
* Change code layout in miniapps
* Update sanic example
* Update miniapp READMEs
* Update wiring docs
* Refactor part of cli tutorial
* Refactor CLI app tutorial
* Update test coverage results in movie lister example and tutorial
* Make some minor updates to aiohttp and cli tutorials
* Refactor flask tutorial
* Make cosmetic fix in flask example
* Refactor Flask tutorial: Connect to the GitHub
* Refactor Flask tutorial: Search service
* Refactor Flask tutorial: Inject search service into view
* Refactor Flask tutorial: Make some refactoring
* Finish flask tutorial refactoring
* Update tutorials
* Refactor asyncio monitoring daemon example application
* Fix tutorial links
* Rename asyncio miniapp
* Rename tutorial image dirs
* Rename api docs tol-level page
* Refactor initial sections of asyncio daemon tutorial
* Refactor asyncio tutorial till Example.com monitor section
* Refactor asyncio tutorial example.com monitor section
* Refactor asyncio tutorial httpbin.org monitor tutorial
* Refactor tests section of asyncio daemon tutorial
* Update conclusion of asyncio daemon tutorial
* Rename tutorial images
* Make cosmetic update to flask tutorial
* Refactor aiohttp tutorial: Minimal application section
* Refactor aiohttp tutorial: Giphy API client secion
* Refactor aiohttp tutorial secion: Make the search work
* Refactor aiohttp tutorial tests section
* Refactor aiohttp tutorial conclusion
* Upgrade Cython to 0.29.21
* Update changelog
* Update demo example
* Update wording on index pages
* Update changelog
* Update code layout for main demo
* Fix dependency provider stub issue with required init arg
* Refactor bundles example app
* Rename bundles package
* Rename bundles example container
* Rename bundles mini app to decoupled packages
* Move decoupled packages example to main examples
* Fix a typo
* Add meta
* Add basic setup
* Add more tests for factory
* Add mypy checks to CI
* Add mypy checks to makefile command
* Add typing for the factories
* Add stub for Callable providers
* Add typing module and object provider stubs
* Fix typing test issue
* Remove typing module
* Add Delegate stub
* Add stub for Dependency provider
* Add stub for ExternalDependency
* Add stubs for providers module functions
* Add stubs for the DependenciesContainer provider
* Add stub for the CallableDelegate provider
* Add stubs for Coroutine providers
* Add stubs for the configuration options
* Add stub for the FactoryDelegate
* Add stub for the FactoryAggregate provider
* Add singleton stubs
* Add stubs for singletons
* Add stub for the List provider
* Add stub for the Container provider
* Add stub for the Selector provider
* Add stubs for the dynamic container
* Add stub for the declarative container
* Add stubs for the extensions
* Add types module for explicit provider typing
* Set absolute import mode for the providers module and add types module test
* Skip typing test for Python 3.5
* Remove coroutine test from py35
* Fix py35 tests
* Add \n to the tox.ini
* Add sketch
* Cythonize MethodCaller
* Cythonize ItemGetter, AttributeGetter & ProvidedInstance providers
* Add docblock for .provided attribute
* Refactor repr methods
* Add .provided attribute to the Dependency provider
* Add tests for the .provided attribute to the majority of the providers
* Add docblock for the ProvidedInstance provider
* Add docblocks for the rest of the providers
* Add example of the provided instance usage
* Add tests for provided instance* providers
* Add complex provided instance example
* Update example provided_instance.py
* Add docs