Roman Mogylatov
ef0f5f5ebe
Add implementation + tests
2021-02-05 16:53:59 -05:00
Roman Mogylatov
2fadbf0f81
Rename container tests
2021-02-05 16:43:03 -05:00
Roman Mogylatov
c4892af31e
Refactor `container.apply_container_providers_overridings()
to use
container.traverse()
`
2021-02-05 08:59:16 -05:00
Roman Mogylatov
c9ab7d540d
Add tests for .provided & .call()
2021-02-05 08:48:25 -05:00
Roman Mogylatov
288284aa9c
Make "make test" to be a default test command and run Python 3 tests
2021-02-05 08:36:36 -05:00
Roman Mogylatov
b3bd8e888b
Add tests for selector provider
2021-02-05 08:34:20 -05:00
Roman Mogylatov
35f280ac8a
Merge branch 'release/4.17.0' into master
2021-02-04 18:19:55 -05:00
Roman Mogylatov
2c1eb9f95f
Bump version to 4.17.0
2021-02-04 18:19:40 -05:00
Roman Mogylatov
d45d98e300
Fastapi sqlalchemy example ( #389 )
...
* Add application
* Dockerize the app
* Fix 204 content-leength error
* Rename database file
* Add tests
* Add README
* Fix a typo in FastAPI example
* Add docs on FastAPI + SQLAlchemy example
* Update changelog
* Add link to the example to README and other docs pages
* Add EOF to the config.yml
2021-02-04 18:18:25 -05:00
Roman Mogylatov
a1f779a9f3
Merge branch 'release/4.16.0' into master
2021-02-03 15:40:53 -05:00
Roman Mogylatov
892330f43c
Bump version to 4.16.0
2021-02-03 15:40:41 -05:00
Roman Mogylatov
cba5aefd65
Add container base class
2021-02-03 15:36:37 -05:00
Roman Mogylatov
6cc1a0c61f
Merge branch 'release/4.15.0' into master
2021-02-03 09:22:58 -05:00
Roman Mogylatov
f48fd159f0
Bump version to 4.15.0
2021-02-03 09:22:40 -05:00
Roman Mogylatov
15fa6c301e
Pydantic settings support ( #388 )
...
* Add implementation and basic test
* Add full test coverage + bugfix
* Add test coverage for .from_yaml() method
* Update setup.py, tox and dev requirements
* Stop running pydantic tests on Python 3.5 and below
* Remove pydantic from tox Python < 3.6
* Add example and docs
* Update features block
* Add extra test
* Update changelog
2021-02-03 09:21:32 -05:00
Roman Mogylatov
1fabbf314b
Merge branch 'release/4.14.0' into master
2021-02-01 09:57:43 -05:00
Roman Mogylatov
fbe51b95e8
Bump version to 4.14.0
2021-02-01 09:55:21 -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
0c1a08174f
Merge branch 'release/4.13.2' into master
2021-01-29 16:58:44 -05:00
Roman Mogylatov
cd949c6a0b
Bump version to 4.13.2
2021-01-29 16:58:30 -05:00
Roman Mogylatov
4942f9c160
Fix PyCharm typing warning in container.wire() method
2021-01-29 16:58:08 -05:00
Roman Mogylatov
b7afbe2cdc
Merge branch 'release/4.13.1' into master
2021-01-29 16:42:38 -05:00
Roman Mogylatov
fba00894ea
Bump version to 4.13.1
2021-01-29 16:42:30 -05:00
Roman Mogylatov
39cb963351
367 Fix declarative container metaclass bug with child providers
2021-01-29 16:37:50 -05:00
Roman Mogylatov
f188811d87
Merge branch 'release/4.13.0' into master
2021-01-29 13:51:08 -05:00
Roman Mogylatov
a0ba7fd16c
Bump version to 4.13.0
2021-01-29 13:50:53 -05:00
Roman Mogylatov
478ca18ae3
336 Dependency provider default ( #382 )
...
* Add implementation and tests
* Refactor dependency provider docs
* Update docs
* Update changelog
2021-01-29 13:49:40 -05:00
Roman Mogylatov
1f17bc6e08
Merge branch 'release/4.12.0' into master
2021-01-28 19:50:49 -05:00
Roman Mogylatov
ebeb258e96
Bump version to 4.12.0
2021-01-28 19:50:35 -05:00
Roman Mogylatov
eb587933f4
Implement wiring autoloader ( #381 )
...
* Implement wiring autoloader
* Add docs
* Update changelog
2021-01-28 19:49:24 -05:00
Roman Mogylatov
9225f9dcd6
Merge branch 'release/4.11.3' into master
2021-01-28 08:46:00 -05:00
Roman Mogylatov
aca67663b6
Bump version to 4.11.3
2021-01-28 08:44:10 -05:00
Roman Mogylatov
6224131a76
358 Replace configuration option weakref to root with regular ref
2021-01-28 08:40:43 -05:00
Roman Mogylatov
9136fdcbb5
Merge branch 'release/4.11.2' into master
2021-01-27 14:19:27 -05:00
Roman Mogylatov
725e3fa322
Bump version to 4.11.2
2021-01-27 14:03:08 -05:00
Roman Mogylatov
ba0fb38ad0
379 Fix a bug in `providers.Container
` when it's declared not at class root level
2021-01-27 14:02:13 -05:00
Roman Mogylatov
874b13fdea
Merge branch 'release/4.11.1' into master
2021-01-27 09:22:11 -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
78479c65e6
Merge branch 'release/4.11.0' into master
2021-01-27 07:50:18 -05:00
Roman Mogylatov
f5b2862354
Switch CD to prod
2021-01-27 07:49:53 -05:00
Roman Mogylatov
9efc8ed488
Test docs - ok
2021-01-27 07:45:48 -05:00
Roman Mogylatov
9bdce2d376
Test docs publishing
2021-01-27 07:41:25 -05:00
Roman Mogylatov
63dade0615
Bump version to 4.11.0
2021-01-27 07:39:38 -05:00
Roman Mogylatov
7b33733bdf
Update badge
2021-01-27 07:38:35 -05:00
Roman Mogylatov
717f7a0497
Travis CI -> GitHub Actions ( #377 )
...
* Add tests config
* Try run tests on multiple versions
* Add jobs for Python 3.5, 3.6, 3.7
* Add Python 3.4
* Add Python 2.7 job
* Add PyPy and PyPy3 jobs
* Add tests coverage job
* Try to add manual trigger for tests
* Fix coveralls token passing
* Change coverage job name
* Update env sections
* Update run and env sections
* Add COVERALLS_GIT_BRANCH
* Try set branch name
* Set branch name and token
* Update tox.ini to pass env variables
* Update tox.ini
* Re-arrange run actions
* Refactor tests workflow
* Add linters workflow
* Move linters to tests workflow
* Move branch name
* Create common linters job
* Rename tests and linters workflow
* Add pull_request event for tests and linters jobs
* Add publishing workflow
* Try quote asteriks
* Update publishing workflow to publish to test server
* Change publishing workflow name
* Add linux x64 wheels publishing job
* Bump version
* Add publishing wheels on mac and windows
* Fix windows builds
* Refactor to two stages build
* Rename build wheels job
* Add experimental aarch64 builds
* Rename custom archs job
* Add tests & linters to publishing job
* Bump version
* Add docs publishing
* Rename aarch64 job
* Rename aarch64 job
* Revert version change
* Update coveralls job
* Experiment with coveralls
* Experiment with branch name
* Update tox.ini to pass github token
* Update tox.ini to pass all GH vars
* Remove coveralls branch
* Remove travis ci config
2021-01-26 21:11:27 -05:00
Roman Mogylatov
dfedead4f0
Add yaml tests skipping on Python 3.4
2021-01-25 17:32:22 -05:00
Roman Mogylatov
4cc39fc6eb
369 Add required argument to config from_* methods ( #376 )
...
* Update typing stubs
* Update from_yaml() method
* Update from_ini() method
* Update from_dict() method
* Update from_env() method
* Update documentation
* Update changelog
* Update changelog
* Make doc block fix
* Add extra test for from_ini()
2021-01-24 10:27:45 -05:00
Roman Mogylatov
2d49308c16
Configuration strict mode raise on non existing files ( #375 )
...
* Update from_yaml()
* Refactor YAML environment variables interpolation
* Update from_ini()
* Refactor UNDEFINED
* Update from_env()
* Update from_dict()
* Update docs
* Update changelog
2021-01-23 22:37:50 -05:00
Roman Mogylatov
500855895b
372 Change yaml loader to safe loader ( #373 )
...
* Add safe loader with env interpolation and an arg to provide custom loader
* Add docs
* Update changelog
2021-01-21 18:00:24 -05:00