Roman Mogylatov
d8439a28b1
Make provider generic type ( #293 )
...
* Add __class_getitem__ for Provider to null the typing in runtime
* Make Provider stub generic and remove types module
* Update types module tests
* Return types module with deprecation warning
* Return types module with deprecation warning
* Update changelog
* Add docs page
2020-09-13 20:32:21 -04:00
Roman Mogylatov
6febd03646
Bump version to 3.43.1
2020-09-09 23:48:08 -04:00
Roman Mogylatov
07f050d2ad
Bump version to 3.43.0
2020-09-09 23:36:13 -04:00
Roman Mogylatov
ffc477d1ee
Update API docs
2020-09-09 22:23:28 -04:00
Roman Mogylatov
a305660a08
Bump version to 3.42.0
2020-09-09 18:02:37 -04:00
Roman Mogylatov
ba574660d8
Bump version to 3.41.0
2020-09-07 22:07:09 -04:00
Roman Mogylatov
098ecb4eec
Fix declarative container mypy stub
2020-09-07 11:53:03 -04:00
Roman Mogylatov
6d2a0382a7
Bump version to 3.40.0
2020-09-06 21:54:58 -04:00
Roman Mogylatov
29f209d382
Update bundles example ( #292 )
...
* 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
2020-09-06 21:51:38 -04:00
Roman Mogylatov
5bb9d221a5
Bump version to 3.39.0
2020-09-04 23:22:58 -04:00
Roman Mogylatov
72b2d0570f
Bump version to 3.38.1
2020-09-03 23:25:32 -04:00
Roman Mogylatov
d6dbef0a75
Bump version to 3.38.0
2020-09-03 23:22:11 -04:00
Roman Mogylatov
5f7d978012
Bump version to 3.37.0
2020-09-03 18:05:45 -04:00
Roman Mogylatov
d6e4e8fb08
Add container usage to provided instance examples
2020-09-03 17:48:45 -04:00
Roman Mogylatov
063301a0b3
Bump version to 3.36.0
2020-09-02 21:28:09 -04:00
Roman Mogylatov
dd2ded7321
Update documentation and example on creating a custom provider
2020-09-02 21:09:08 -04:00
Roman Mogylatov
806bd31735
Bump version to 3.35.1
2020-09-01 21:58:13 -04:00
Roman Mogylatov
0985635ea6
Bump version to 3.35.0
2020-09-01 21:40:14 -04:00
Roman Mogylatov
c4b33749d2
Providers docs update ( #289 )
...
* Update callable provider docs
* Update coroutine provider docs
* Edit object docs
* Edit list provider docs
* Edit configuration provider docs
* Edit selector provider docs
* Fix mypy stub of the ``DeclarativeContainer`` to specify the ``__init__`` interface
* Edit Dependency provider docs
2020-09-01 21:39:23 -04:00
Roman Mogylatov
0d9aaaac0b
Bump version to 3.34.0
2020-08-31 21:29:05 -04:00
Roman Mogylatov
3c27cd6ab2
Bump version to 3.33.0
2020-08-26 22:25:22 -04:00
Roman Mogylatov
2e940adb50
Typing stubs ( #286 )
...
* 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
2020-08-26 22:24:20 -04:00
Roman Mogylatov
15acccf48f
Bump version to 3.32.3
2020-08-26 16:35:31 -04:00
Roman Mogylatov
cc7ade89d7
Bump version to 3.32.2
2020-08-26 16:24:59 -04:00
Roman Mogylatov
3f94a900a4
Bump version to 3.32.1
2020-08-25 10:27:24 -04:00
Roman Mogylatov
fcbab97db2
Bump version to 3.32.0
2020-08-24 13:38:08 -04:00
Roman Mogylatov
f5b97ca92e
Configuration option typed injections ( #284 )
...
* Add implementation and tests
* Add docs page and examples
* Revert the api_client miniapp accidental changes
2020-08-24 13:34:47 -04:00
Roman Mogylatov
cc8536b5e4
Bump version to 3.31.0
2020-08-20 21:59:09 -04:00
Roman Mogylatov
cf862fe8b5
Provided attributes ( #282 )
...
* 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
2020-08-20 21:52:12 -04:00
Roman Mogylatov
e15a6dbb1d
Bump version to 3.30.4
2020-08-16 01:16:25 -04:00
Roman Mogylatov
01a18bc2ff
Bump version to 3.30.3
2020-08-16 01:13:32 -04:00
Roman Mogylatov
ac6412bd41
Bump version to 3.30.2
2020-08-13 22:57:34 -04:00
Roman Mogylatov
f67dab1f03
Bump version to 3.30.1
2020-08-13 21:53:13 -04:00
Roman Mogylatov
2f42de9fa1
Bump version to 3.30.0
2020-08-12 17:06:40 -04:00
Roman Mogylatov
3c69b4683f
Bump version to 3.29.0
2020-08-10 22:32:29 -04:00
Roman Mogylatov
ed2a795581
Bump version to 3.28.1
2020-08-10 15:50:51 -04:00
Roman Mogylatov
d3f3b58389
Bump version to 3.28.0
2020-08-08 14:49:08 -04:00
Roman Mogylatov
3a61457be7
Asyncio daemon tutorial ( #278 )
...
* Fix a typo in the docblock of the Configuration provider
* Update the changelog
* Add tutorial sections
* Switch to use https for httpbin.org requests
* Add what we are going to build section
* Fix ``Makefile`` to run ``aiohttp`` integration tests on Python 3.5+
* Add prerequisities and prepare the env sections
* Add logging, config and the dispacher sections
* Change logging
* Fix multiple typos in the ``flask`` and ``aiohttp`` tutorials
* Add the initial and dirty version
* Fix multiple typos in the ``flask`` and ``aiohttp`` tutorials
* Fix the 3.27.0 changelog
* Finish all the parts before the dispatcher
* Finish dispatcher section
* Update http monitor logging format
* Finish the tutorial
* Fix docblock in the dispatcher module
* Update changelog
* Add meta keywords and description
2020-08-08 14:48:05 -04:00
Roman Mogylatov
5bf5a7651b
Bump version to 3.27.0
2020-08-06 16:42:49 -04:00
Roman Mogylatov
4a8133204c
Factory deep init injections ( #277 )
...
* Add factory deep context providing
* Add example
* Add test
2020-08-06 16:33:06 -04:00
Roman Mogylatov
1f302ec74c
Bump version to 3.26.0
2020-08-03 18:08:53 -04:00
Roman Mogylatov
ea1e79885c
274 Configuration provider redesign ( #275 )
...
* Get 1st stable version
* Remove prototype module
* Try fix copying
* Add config itemselector example
* Add doc blocks
2020-08-03 18:01:20 -04:00
Roman Mogylatov
6fccb6eec1
Bump version to 3.25.1
2020-07-30 13:53:37 -04:00
Roman Mogylatov
978ebda9eb
Bump version to 3.25.0
2020-07-29 22:20:34 -04:00
Roman Mogylatov
4ca385d73b
Bump version to 3.24.1
2020-07-29 12:18:09 -04:00
Roman Mogylatov
c190e049b5
Bump version to 3.24.0
2020-07-28 19:26:41 -04:00
Roman Mogylatov
e0d81c2d28
Aiohttp integration ( #270 )
...
* Add aiohttp extension module
* Add giphynav-aiohttp app
* Add missing docstrings
* Remove print() call
* Remove not needed import from flask extension tests
* Improve coroutine provider tests
* Add aiohttp extension tests
* Update tox.ini
* Add aiohttp extras
* Try fix Python 3.4 tests
* Try fix 3.6 tests
* Stop running coroutine tests for Python 3.4
* Rename tests
* Remove type hints
* Fix pypy and change python version for coverage job to 3.8
* Fix coveralls job
* Try fix Python 3.4, 3.5 tests
* Make coverage job to run 3.5+ tests
* Add tests
* Add readme
* Update the readmes
* Add API docs
* Add API docs page
* Update changelog
2020-07-28 19:19:05 -04:00
Roman Mogylatov
8f5ea52303
Bump version to 3.23.2
2020-07-23 20:49:08 -04:00
Roman Mogylatov
00d91ae829
Bump version to 3.23.1
2020-07-22 12:17:37 -04:00
Roman Mogylatov
1f115111b2
Dependency provider issue with abc ( #267 )
...
* Fix the issue
* Add the test
* Update tests
* Update changelog
* Update tests
2020-07-22 12:14:26 -04:00
Roman Mogylatov
93adbe5207
Bump version to 3.23.0
2020-07-20 17:02:32 -04:00
Roman Mogylatov
78b7be218b
Bump version to 3.22.0
2020-07-18 00:45:06 -04:00
Roman Mogylatov
8b2486c5e5
Bump version to 3.21.2
2020-07-13 23:29:32 -04:00
Roman Mogylatov
5ada7f24dd
Bump version to 3.21.1
2020-07-13 23:09:42 -04:00
Roman Mogylatov
73cfc873ce
Bump version to 3.21.0
2020-07-13 22:50:02 -04:00
Roman Mogylatov
72147b664e
Re-design Flask integration
2020-07-13 22:45:15 -04:00
Roman Mogylatov
4f753c8fd3
Bump version to 3.20.1
2020-07-11 12:42:55 -04:00
Roman Mogylatov
d6176dc754
Bump version to 3.20.0
2020-07-11 12:16:08 -04:00
Roman Mogylatov
fa469618dd
Readme update ( #263 )
...
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Add files via upload
* Update README.rst
* Rename Blank Diagram (1).svg to di-map.svg
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Add files via upload
* Rename Blank Diagram (2).svg to di-map2.svg
* Update README.rst
* Update README.rst
* Update README.rst
* Update README.rst
* Add files via upload
* Add files via upload
* Rename README.svg to di-map3.svg
* Update README.rst
* Add files via upload
* Rename README - Page 3.svg to di-map4.svg
* Update README.rst
* Add files via upload
* Rename README - Copy of Page 3.svg to di-map5.svg
* Update README.rst
* Delete di-map.svg
* Delete di-map2.svg
* Delete di-map3.svg
* Delete di-map4.svg
* Update README.rst
* Update README.rst
* Add Github Navigator - Flask application
* Do more refactoring for ghnav-flask
* More refactoring
* Update README
* Add tests
* Update readme
* Add Flask extension
* Add Factory.provides attribute
* Add Flask extension module
* User flask extension in githubnavigator example
* Add README for ghnav-flask
* Update ghnav-flask README
* Update ghnav-flask README
* Update README with ghnav container example
* Move ghnav-flask to miniapps/ folder
* Fix auth token reading from env for ghnav-flask
* Update readme
* Fix ghnav-flask linter errors
* Add downloads and wheel badge
* Add tests for flask extension
* Fix flask tests
* Add requirements-ext.txt installation to tox.ini
* Add API docs for ext.flask module
* Update setup.py
* Add Flask to the list of keywords
* Update badges on docs README
* Update docs README title
* Fix ext.flask tests
* Fix syntax of ext.flask for Python 2.7, 3.4, 3.5
* Fix syntax of ext.flask for Python 2.7, 3.4, 3.5
* Fix imports in ext.flask for Python 2.7, 3.4, 3.5
* Update ghfnav-flask README
* Update ghfnav-flask README
* Remove setting of empty github token
* Add flask extras
* Update requirements
* Update requirements
* Add flask extra to python 3.4 tox.ini
* Update changelog
* Update changelog
2020-07-11 12:15:00 -04:00
Roman Mogylatov
a8135c0628
Bump version to 3.19.2
2020-07-02 22:08:12 -04:00
Roman Mogylatov
cc90f66dc8
Bump version to 3.19.1
2020-07-01 23:17:29 -04:00
Roman Mogylatov
1a5e7baf7b
Bump version to 3.19.0
2020-06-29 16:34:05 -04:00
Roman Mogylatov
2513d1f600
Selector provider ( #258 )
...
* Add Selector provider
* Add Selector provider example
* Add tests for selector provider
* Update changelog
* Add pydocstyle ignore D101 for examples
* Fix repr() test
* Update changelog
* Add D203,D213 to examples pydocstyle ignore
* Add selector provider docs
2020-06-29 16:32:12 -04:00
Roman Mogylatov
7491fc05a2
Fix ini files parsing
2020-06-25 23:37:01 -04:00
Roman Mogylatov
1cd25e701f
Add interpolation of environment variables for Configuration provider
2020-06-25 23:16:19 -04:00
Roman Mogylatov
525ddbc24c
Bump version to 3.18.0
2020-06-25 18:06:37 -04:00
Roman Mogylatov
62e1995a7d
Add configuration provider docs
2020-06-25 17:12:16 -04:00
Roman Mogylatov
507a832bb8
Add Configuration.from_env() method + refactoring
2020-06-25 12:50:42 -04:00
Roman Mogylatov
3217feb73b
Update providers.pyx code style
2020-06-24 21:27:40 -04:00
Roman Mogylatov
65db4f2b1d
Fix code style issue
2020-06-24 21:23:05 -04:00
Roman Mogylatov
ad2d8155d4
Remove yaml stub in providers module
2020-06-24 21:13:37 -04:00
Roman Mogylatov
e22edcdadd
Restore configuration methods
2020-06-24 21:04:30 -04:00
Roman Mogylatov
1a23b8b6f5
Try type(dict) fix
2020-06-24 17:38:52 -04:00
Roman Mogylatov
50d8363650
Pin virtualenv to 20.0.23
2020-06-24 17:26:58 -04:00
Roman Mogylatov
52c98bbe49
Comment yaml-related code
2020-06-24 17:16:46 -04:00
Roman Mogylatov
597f5d772f
Add default value for name argument of Configuration provider
2020-06-24 16:40:53 -04:00
Roman Mogylatov
a76744805a
Add Configuration.from_yaml method
2020-06-24 16:29:44 -04:00
Roman Mogylatov
2c43a1c426
Remove undocumented positional parameter of DependenciesContainer provider
2020-06-24 14:39:07 -04:00
Roman Mogylatov
feab6b6814
Revert "Add overriding logic for Container provider"
...
This reverts commit b727be3f9a
.
2020-06-24 13:24:57 -04:00
Roman Mogylatov
b727be3f9a
Add overriding logic for Container provider
2020-06-24 12:41:18 -04:00
Roman Mogylatov
f95dadfc23
Add Configuration.from_dict() method
2020-06-23 18:09:20 -04:00
Roman Mogylatov
a985952d0c
Fix Configuration.from_ini() to support Python 2
2020-06-23 16:53:22 -04:00
Roman Mogylatov
87bb5ff97d
Add Configuration.from_ini() method
2020-06-23 16:46:24 -04:00
Roman Mogylatov
1e13727a94
Bump version to 3.17.1
2020-06-23 12:48:01 -04:00
Roman Mogylatov
2fd216bb5a
Hotfix dynamic container deep-copying
2020-06-23 12:47:48 -04:00
Roman Mogylatov
69e2230b80
Bump version to 3.17.0
2020-06-23 12:14:06 -04:00
Roman Mogylatov
c8b781e744
Container provider ( #256 )
...
* Add unit tests
* Add Container provider
* Update changelog
2020-06-22 22:45:16 -04:00
Roman Mogylatov
e6f096270e
Config linking ( #255 )
...
* Add config linking test
* Add provider linking
* Update changelog
2020-06-22 21:52:00 -04:00
Roman Mogylatov
7c3d961ae7
Bump version to 3.16.1
2020-06-16 22:34:19 -04:00
Roman Mogylatov
eadac4b1cc
Fix warnings in API docs
2020-06-16 22:22:06 -04:00
Roman Mogylatov
dd7c951ea6
Bump version to 3.16.0
2020-06-14 17:49:57 -04:00
Roman Mogylatov
af7297ce71
Update Cython version
2020-06-14 17:38:24 -04:00
Roman Mogylatov
2beafb9a51
List provider ( #251 )
...
* Add List provider
* Add List provider example
* Add List provider unit tests
* Add docs
* Upstream changes from develop
* Update API docs
* Update unit tests
* Add support of positional context argument injections
* Update changelog
2020-06-14 17:32:12 -04:00
Bruno P. Kinoshita
910dec38a4
Fix a few typos ( #250 )
...
* Fix a few typos
* Spell, grammar checkers on docs
2020-06-13 22:24:32 -04:00
Roman Mogylatov
fac768496e
Bump version to 3.15.6
2020-02-18 17:52:46 -05:00
Roman Mogylatov
6c81568888
Bump version to 3.15.5
2020-02-18 17:50:56 -05:00
Roman Mogylatov
b00edad1b9
Bump version to 3.15.4
2020-01-26 20:37:13 -05:00
Roman Mogylatov
f8ddf1b19b
Bump version to 3.15.3
2020-01-26 19:53:06 -05:00
Roman Mogylatov
7ce170a1d9
Bump version to 3.15.2
2020-01-26 19:33:28 -05:00
Roman Mogylatov
b09868233c
Bump version to 3.15.1
2020-01-26 19:17:03 -05:00