Commit Graph

707 Commits

Author SHA1 Message Date
Roman Mogylatov
a2b09c57dc Bump version to 4.4.0 2020-11-15 18:19:34 -05:00
Roman Mogylatov
092be74145 Add docs page on flask blueprints example 2020-11-15 18:09:45 -05:00
Roman Mogylatov
ae3024588c
Wiring reengineering (#324)
* Bump version to 4.3.9: FastAPI example

* Reengineer wiring

* Add @inject decorator

* Add .workspace dir to gitignore

* Add generic typing for @inject

* Add type cast for @inject

* Update movie lister example

* Update cli application tutorial

* Update demo example

* Update wiring docs and examples

* Update aiohttp example and tutorial

* Update multiple containers example

* Update single container example

* Update decoupled packages example

* Update django example

* Update asyncio daemon example and tutorial

* Update FastAPI example

* Update flask example and tutorial

* Update sanic example

* Add wiring registry

* Add new line to .gitignore

* Add @inject to the test samples

* Fix flake8 errors
2020-11-15 16:06:42 -05:00
Roman Mogylatov
cdce5247c8 Bump version to 4.3.8 2020-11-12 16:31:20 -05:00
Roman Mogylatov
ccf6ccad54 Bump version to 4.3.7 2020-11-10 17:02:42 -05:00
Roman Mogylatov
3ff5c8ce82 Bump version to 4.3.6 2020-11-05 12:37:25 -05:00
Roman Mogylatov
6b93c2e412 Bump version to 4.3.5 2020-11-05 12:23:47 -05:00
Roman Mogylatov
f3ec74a31f Bump version to 4.3.4 2020-11-05 10:20:23 -05:00
Roman Mogylatov
25549d7cfe Bump version to 4.3.3 2020-11-03 16:06:42 -05:00
Roman Mogylatov
fb2d927cae Fix wiring for @classmethod and @staticmethod 2020-11-03 15:59:02 -05:00
Roman Mogylatov
b0d3f08aa6 Bump version to 4.3.2 2020-10-30 16:56:13 -04:00
Roman Mogylatov
f65f8b1af9 Bump version to 4.3.1 2020-10-29 23:00:43 -04:00
Roman Mogylatov
d65b31865b Bump version to 4.3.0 2020-10-29 22:57:14 -04:00
Roman Mogylatov
707446a70f
Closing wiring marker (#315)
* Add closing marker

* Add example

* Fix flake8 errors

* Add test

* Update docs and README
2020-10-29 22:55:09 -04:00
Roman Mogylatov
21f0658ef3 Bump version to 4.2.0 2020-10-29 15:48:04 -04:00
Roman Mogylatov
30bc505b79 Update README and docs index 2020-10-29 15:46:43 -04:00
Roman Mogylatov
e3ccb0e764 Bump version to 4.1.8 2020-10-28 22:30:52 -04:00
Roman Mogylatov
018102b4e2 Update asyncio daemon to use Resource provider 2020-10-28 22:28:49 -04:00
Roman Mogylatov
f7499354ec Bump version to 4.1.7 2020-10-28 21:02:21 -04:00
Roman Mogylatov
bf82f594b4 Add google analytics id 2020-10-28 20:48:07 -04:00
Roman Mogylatov
5c09be46d2 Bump version to 4.1.6 2020-10-28 14:23:00 -04:00
Roman Mogylatov
776cb4eebf Fix multiple containers wiring issue 2020-10-28 13:44:11 -04:00
Roman Mogylatov
2565a1eab0 Fix wiring for @classmethod 2020-10-28 13:11:07 -04:00
Roman Mogylatov
c7d8645044 Bump version to 4.1.5 2020-10-27 17:48:05 -04:00
Roman Mogylatov
279910410e Bump version to 4.1.4 2020-10-27 14:36:11 -04:00
Roman Mogylatov
969849e4da Bump version to 4.1.3 2020-10-27 14:05:16 -04:00
Roman Mogylatov
3b4fae8dca Add installation of certifi for windows ci builds 2020-10-27 14:04:52 -04:00
Roman Mogylatov
25d626e92f Migrate from travis-ci.org to travis-ci.com 2020-10-27 14:02:50 -04:00
Roman Mogylatov
c6e7551e87 Bump version to 4.1.2 2020-10-27 13:28:02 -04:00
Roman Mogylatov
b01ee7709c Bump version to 4.1.1 2020-10-26 13:39:13 -04:00
Roman Mogylatov
a3c7296879 Bump version to 4.1.0 2020-10-24 20:57:48 -04: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
b54bcb7b31
Dict provider (#311)
* Add tests

* Add implementation and typing stubs

* Update README and docs pages

* Add example and docs

* Update changelog

* Add long description to the doc block
2020-10-22 14:49:39 -04:00
Roman Mogylatov
5c1486e1a3
Un deprecate container decorators (#310)
* Remove deprecation warnings

* Add example and docs

* Update changelog
2020-10-22 12:00:46 -04:00
Roman Mogylatov
97731db180 Update license year 2020-10-21 17:06:12 -04:00
Roman Mogylatov
081fccea93 Add favicon 2020-10-21 17:01:31 -04:00
Roman Mogylatov
c81194682b Remove redirect in bages 2020-10-21 16:55:28 -04:00
Roman Mogylatov
c90f6c1b97 Bump version to 4.0.6 2020-10-20 17:50:31 -04:00
Roman Mogylatov
ca54db6d05 Bump version to 4.0.5 2020-10-19 17:35:12 -04:00
Roman Mogylatov
ff4d24706e
Move "provided" attribute (#306)
* Update typing stub

* Move attribute

* Add typing test

* Update docs

* Add test

* Update changelog
2020-10-19 17:21:38 -04:00
Roman Mogylatov
452a13c9f7
Update all links to docs to use https (#305)
* Update README

* Update docs

* Update examples

* Update changelog
2020-10-19 17:18:39 -04:00
Roman Mogylatov
81c67f8b27 Bump version to 4.0.4 2020-10-18 22:27:53 -04:00
Roman Mogylatov
44e0a03148 Bump version to 4.0.3 2020-10-16 21:44:12 -04:00
Roman Mogylatov
f1867b6bf4
Deprecate declarative container decorators (#303) 2020-10-16 21:43:21 -04:00
Roman Mogylatov
619fa1f25c Bump version to 4.0.2 2020-10-16 16:38:37 -04:00
Roman Mogylatov
09d1c4ce9f Bump versionto 4.0.1 2020-10-16 14:10:14 -04:00
Roman Mogylatov
07d4f7e74f
Develop 4.0 (#298)
* 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
2020-10-09 15:16:27 -04:00
Roman Mogylatov
1f136e427d Bump version to 3.44.0 2020-09-13 20:51:10 -04:00
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
203427aa97 Fix few typos 2020-09-09 23:34:59 -04:00
Roman Mogylatov
ffc477d1ee Update API docs 2020-09-09 22:23:28 -04:00
Roman Mogylatov
505ccf5a1d Fix a few typos 2020-09-09 22:23:14 -04:00
Roman Mogylatov
5740dd6df5 Remove not relevant "speech" example 2020-09-09 21:34:30 -04:00
Roman Mogylatov
a305660a08 Bump version to 3.42.0 2020-09-09 18:02:37 -04:00
Roman Mogylatov
21764dbeec Fix sphinx warning 2020-09-09 17:59:44 -04:00
Roman Mogylatov
172c175e89 Fix some wording 2020-09-09 17:58:28 -04:00
Roman Mogylatov
5cb7917a68 Update changelog 2020-09-09 17:53:19 -04:00
Roman Mogylatov
b4772af2c1 Update README 2020-09-09 17:53:00 -04:00
Roman Mogylatov
7e11d56ad6 Delete "What is DI?" documentation page 2020-09-09 17:52:45 -04:00
Roman Mogylatov
81ab8f807a Update DI in Python docs page 2020-09-09 17:39:49 -04:00
Roman Mogylatov
2b4d211207 Add ref marker to key features page 2020-09-08 21:57:37 -04:00
Roman Mogylatov
f75d90b21b Change wording in the "What is DI?" page 2020-09-08 21:27:57 -04:00
Roman Mogylatov
ba574660d8 Bump version to 3.41.0 2020-09-07 22:07:09 -04:00
Roman Mogylatov
2d28bc0d02 Add a link to the decoupled packages example to the introduction 2020-09-07 22:06:59 -04:00
Roman Mogylatov
039e51d4ba Delete mail service example mini app 2020-09-07 22:04:50 -04:00
Roman Mogylatov
139e67dd95 Delete api client example mini app 2020-09-07 22:02:33 -04:00
Roman Mogylatov
e1844a3040 Refactor factory of factories pattern example 2020-09-07 21:57:43 -04:00
Roman Mogylatov
8284d1f169 Refactor chained factories pattern example 2020-09-07 21:45:03 -04:00
Roman Mogylatov
d93c4a419b Update changelog 2020-09-07 12:34:49 -04:00
Roman Mogylatov
36ece67586 Add docs for the use cases example 2020-09-07 12:31:59 -04:00
Roman Mogylatov
f84d3e6f4e Refactor main module of the decoupled packages example 2020-09-07 12:05:12 -04:00
Roman Mogylatov
098ecb4eec Fix declarative container mypy stub 2020-09-07 11:53:03 -04:00
Roman Mogylatov
5306b27c48 Refactor password hashing example 2020-09-07 11:51:17 -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
bf978601ba
Refactor services miniapps (#291)
* Refactor services mini app with single container

* Make few little fixes to single container app

* Update requirements.txt for single container example

* Refactor multiple containers example

* Add single container docs page

* Create multiple containers page
2020-09-04 23:19:32 -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
74df2ed00d Fix typo 2020-09-03 23:11:43 -04:00
Roman Mogylatov
14c2ecae8f Update "What is What is dependency injection?" documentation page 2020-09-03 23:09:21 -04:00
Roman Mogylatov
5f7d978012 Bump version to 3.37.0 2020-09-03 18:05:45 -04:00
Roman Mogylatov
913ce01475 Update key features 2020-09-03 18:03:21 -04:00
Roman Mogylatov
441cc66427 Improve singleton provider docs 2020-09-03 17:57:26 -04:00
Roman Mogylatov
d6e4e8fb08 Add container usage to provided instance examples 2020-09-03 17:48:45 -04:00
Roman Mogylatov
d61281a0b9 Add usage of the container to the selector example 2020-09-03 17:38:52 -04:00
Roman Mogylatov
e48746d65f Add usage of the container to the configuration examples 2020-09-03 17:37:03 -04:00
Roman Mogylatov
2a23f3d2f4 Add container usage for list provider example 2020-09-03 17:03:28 -04:00
Roman Mogylatov
1eb9020a4e Add container usage for all singleton provider examples 2020-09-03 16:56:01 -04:00
Roman Mogylatov
a7afa66e40 Add container usage for all factory provider examples 2020-09-03 16:51:12 -04:00
Roman Mogylatov
8b13a809e6 Edit feedback documentation page 2020-09-03 16:26:32 -04:00
Roman Mogylatov
ca986698e9 Update key features page and remove structure page 2020-09-03 16:20:04 -04:00
Roman Mogylatov
f32363d259 Edit key features pages 2020-09-03 13:36:56 -04:00
Roman Mogylatov
063301a0b3 Bump version to 3.36.0 2020-09-02 21:28:09 -04:00
Roman Mogylatov
27ea3e3156 Update copyright year in the docs 2020-09-02 21:27:44 -04:00
Roman Mogylatov
6012d97a70 Remove not needed image from the docs 2020-09-02 21:27:24 -04:00
Roman Mogylatov
e29bf348ea Rename the container overriding docs page 2020-09-02 21:21:18 -04:00
Roman Mogylatov
580a9a66b5 Fix a typo in the custom provider docs 2020-09-02 21:21:07 -04:00