ZipFile
23acf01c15
Add support for inspect.iscoroutinefunction() in Coroutine provider ( #830 )
2025-02-23 18:20:38 +02:00
Martin Lafrance
0d6fdb5b78
Fix broken wiring of sync inject-decorated methods ( #673 )
...
Co-authored-by: Martin Lafrance <mlafrance@cae.com>
Co-authored-by: ZipFile <zipfile.d@protonmail.com>
2025-02-23 18:17:45 +02:00
Taein Min
2330122de6
Add support for typing.Annotated ( #721 )
2025-01-20 17:37:28 +02:00
ZipFile
50643e0dfb
Run black
2025-01-18 17:02:55 +00:00
Philip Bjorge
de50666a13
fix: type provider ( #744 )
2025-01-12 14:14:12 +02:00
Philip Bjorge
00326e9a22
fix: type propogation through provided ( #733 )
...
Co-authored-by: Gonzalo Martinez <gonzarmv@gmail.com>
2025-01-08 13:31:00 +02:00
Roman Mogylatov
9f38db6ef3
Bump version to 4.45.0
2025-01-05 15:19:57 -05:00
Roman Mogylatov
9f4e2839d2
Remove unused imports from the starlette extension ( #846 )
2025-01-05 14:57:55 -05:00
ZipFile
41e18dfa90
Add Starlette lifespan handler implementation ( #683 )
2025-01-05 14:39:26 -05:00
František Trebuňa
f9db578c59
🎨 Raise exception instead of hiding it in finally ( #845 )
2025-01-05 14:33:09 -05:00
ZipFile
d82d9fb822
Improve debugability of deepcopy errors ( #839 )
2025-01-01 21:22:29 +02:00
ZipFile
3ba4704bc1
Remove six
2024-12-14 13:24:28 +00:00
Roman Mogylatov
83d71acb70
Bump version to 4.44.0
2024-12-07 11:51:44 -05:00
ZipFile
c61fc16b8d
Yet another Pydantic 2 support ( #832 )
...
* Add support for Pydantic v2 settings
* Configure pipeline to run tests against different pydantic versions
* Update Pydantic docs and examples for v2
* Fix compatibility with httpx v0.27.0
2024-12-07 11:38:08 -05:00
ZipFile
494c457643
PEP-517 ( #829 )
...
* Convert to PEP-517 project
* Move pylint and coverage configs to pyproject.toml
* Remove autogenerated C files
2024-11-10 00:01:30 -05:00
Roman Mogylatov
3777a947ea
Update version to 4.43.0
2024-11-04 00:02:52 -05:00
ZipFile
595daebd3a
Migrate to Cython3 ( #813 )
...
* Fix asyncio tests
* Convert class-private attributes to just private
* Upgrade to Cython 3
* Regenerate C files
* Fix tox coverage report
2024-11-03 20:48:40 -05:00
Roman Mogylatov
7a88a8ee8d
Update version
2024-09-09 22:23:27 -04:00
Roman Mogylatov
a8b54423dc
Update version to 4.42.0b1
2024-08-06 22:51:59 -04:00
Roman Mogylatov
3e56fef461
Update version to 4.42.0b
2024-08-06 22:45:40 -04:00
Roman Mogylatov
a5166bf591
Add Python 3.12 Support ( #752 ) ( #765 )
...
* Add Python 3.12 Support (#752 )
* Ignore .vscode
* Python 3.12 Support
* Change base python to 3.12 and pin pydantic to V1
* all tests passed
* ci: change default python to 3.12
* remove legacy python versions
* annotate pydantic models for tests
* Update publishing pipeline to use Python 3.12
* Test environment updates
* Update Cython to the latest prior 3.0 version and remove tracing from CI/CD
* Give up using editable tox installation in the coverage job
* Add mypy test fixes
* Remove tracing from the coverage job
* Fix typing test
* Remove PyPy 2.7
* Fix typing test
* Fix the typing issue with pydantic
* Remove pypy 3.9
* Fix the typing issue with mypy
* Update pydantic version to the latest from 1.x
* Update scipy deprecation warning filter
* Fix the tox job running coveralls
* Update changelog
---------
Co-authored-by: Anton Petrov <anton.a.petrov@gmail.com>
2024-08-06 22:41:24 -04:00
Roman Mogylatov
4bfdf89142
Bump version
2022-12-18 22:14:00 -05:00
Roman Mogylatov
d3320f5f06
Fix typing in wiring
2022-12-18 22:02:11 -05:00
Jamie Stumme
3b76a0d091
Allow Closing
to detect dependent resources ( #636 )
2022-12-18 21:49:23 -05:00
Roman Mogylatov
aaff333f01
Python 3.11 Support ( #647 )
...
* Update tests
* Enable tests on 3.11
* Fix coverage config in tox.ini
* feat: re cythonize to support python 3.11 (#646 )
* feat: re cythonize to support python 3.11
* misc: added tox env for python 3.11
* misc: add classifiers for python 3.11
* fix: skip tests for removed functions
* misc: CI updates for python 3.11
Co-authored-by: Roman Mogylatov <rmogilatov@gmail.com>
* Update tests and linters job
* Update test skip decorators
* Fix tox.ini
* Update 3.10 to be explicit string literal
* Move pypy3 to legacy job
* Fix error in resourse typing test
* Update publishing job
* Update actions and setup-python versions
* Update changelog
* Update pypy
* Update tox.ini with new pypy versions
* Update publishing job
* Update actions/upload-artifact@v3
* Update ubuntu to 22.04 on docs publishing job
* Update actions/download-artifact@v3 and pypa/gh-action-pypi-publish@release/v1
Co-authored-by: Gen Xu <xgbarry@gmail.com>
2022-12-18 21:09:14 -05:00
Roman Mogylatov
8cf86826eb
Bump version to 4.40.0
2022-08-03 21:20:38 -04:00
Roman Mogylatov
6f859e4aa2
( #454 ) ( #597 ) Fix @inject + @wraps, refactor patched callables registry and injections storage principles ( #610 )
...
* Refactor patched callables registry and injections storage principles
* Rename properties of PatchedRegistry
* Add typing improvements in wiring module
* Add __slots__ for PatchedAttribute
* Minor code style fixes
* Add test
* Rename test
* Update typing in test
* Make minor style fixes to test
* Update changelog
* Add documentation on the @inject decorator
2022-07-26 21:37:15 -04:00
Roman Mogylatov
142b91921a
Upgrade Cython to 0.29.30 ( #605 )
2022-07-10 21:23:25 -04:00
Roman Mogylatov
753e863d02
Add `Configuration.from_json()
` method ( #602 )
...
* Add implementation and tests
* Refactor naming in configuration fixtures
* Add typing for .from_json()
* Move get/set_ini_files() methods upper
* Add init implementation and tests
* Refactor typing tests
* Add examples
* Add docs
* Update docs index and readme
* Update changelog
2022-07-10 21:08:45 -04:00
Roman Mogylatov
cfed30cf07
Hotfix issue #574 , bump version to 4.39.1
2022-03-29 22:51:40 -04:00
Roman Mogylatov
93c8cbc83b
Bump version to 4.39.0
2022-03-27 22:21:51 -04:00
Roman Mogylatov
77b5cdebd3
Optimization r1 ( #571 )
...
* Add isfuture() and iscoroutine() optimization
* Apply async mode optimization
* Wiring changes
* Add optimization for wiring of async coroutines
* Remove unused imports
* Update changelog
* Refactor async mode checks
2022-03-27 22:20:05 -04:00
Roman Mogylatov
c2877777af
Refactor + add tests to #569
2022-03-27 14:18:46 -04:00
Vlad Fisher
8fe00bcff0
569 fix numpy typing wiring ( #570 )
...
* change erroneous issubclass call to isinstance
* import numpy.typing in tests
* better subclass check
* fix return
2022-03-27 14:11:04 -04:00
Roman Mogylatov
ad0d430229
Bump version to 4.38.0
2022-01-30 23:27:58 -05:00
Roman Mogylatov
0235d68265
Refactor string imports
2022-01-30 23:19:09 -05:00
Roman Mogylatov
86df7f91f6
531 Provider import from string ( #555 )
...
* Implement string imports for Factory, Callable, Singletons, and Resource
* Refactor the implementation
* Add tests
* Update tests to pass on Python 2
* Update typing and add typing tests
* Update changelog
* Update docs
2022-01-30 23:16:55 -05:00
Roman Mogylatov
38ca1cdeed
Fix #550
2022-01-28 23:12:08 -05:00
Roman Mogylatov
8dc3dd2f09
Update quotes in Cython and Python modules
2022-01-16 20:32:42 -05:00
Roman Mogylatov
a38ca647c3
Update quotes in typing stubs
2022-01-16 19:46:18 -05:00
Roman Mogylatov
742e73af1a
Aggregate provider ( #544 )
...
* Add implementation and typing stubs
* Add tests
* Add typing tests
* Refactor FactoryAggregate
* Update changelog
* Add Aggregate provider docs and example
* Update cross links between Aggregate, Selector, and FactoryAggregate docs
* Add wording improvements to the docs
2022-01-09 21:45:20 -05:00
Roman Mogylatov
cfadd8c3fa
Add config.from_env(as_=...) ( #541 )
...
* Add implementation and typing stub
* Add unit tests
* Update demo example
* Add typing tests
* Update changelog
* Update docs
* Add tests for an empty environment variable
* Improve wording in di_in_python.rst
* Update wording in changelog and docs
* Update doc blocks
2021-12-20 23:46:51 +01:00
Roman Mogylatov
cc17052acc
Fix mypy issues
2021-11-29 00:13:17 +02:00
Roman Mogylatov
7238482402
Add .providers attribute and .set_providers() method to FactoryAggregate provider
2021-11-26 19:50:19 +03:00
Roman Mogylatov
72d0e2610d
Add announce of Python 3.5 support dropping
2021-10-31 21:00:28 -04:00
Roman Mogylatov
0b3bcf334e
Bump version to 4.37.0
2021-10-31 20:50:16 -04:00
Roman Mogylatov
99d858e2fb
Upgrade Cython to 0.29.24
2021-10-31 20:48:23 -04:00
Roman Mogylatov
6030950596
Configuration(pydantic_settings=[...]) ( #525 )
...
* Add implementation
* Update changelog
* Fix deepcopy()
* Add example
* Add tests
* Add docs
2021-10-26 21:08:47 -04:00
Roman Mogylatov
34902db86e
Configuration(ini_files=[...]) ( #524 )
...
* Update changelog
* Add implementation
* Add tests
* Add more tests and example
* Update changelog
* Update documentation
2021-10-26 20:27:11 -04:00
Roman Mogylatov
b16b190ff7
Configuration(yaml_files=[...]) ( #522 )
...
* Add provider changes and tests
* Move config test fixtures
* Fix issue with explicit providing of envs_required=False for configuration from_*()
* Implement container API
* Increase priority of overriding from context
* Add docs and example
* Update changelog
* Update changelog
2021-10-23 21:46:50 -04:00