diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-11 11:27:29 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-11 11:27:29 +0000 |
| commit | 9b8c3f898028204003e908ea17804daa94bc35d2 (patch) | |
| tree | f4f203bd41470149e97417f036b2c1f656fbca10 /python-dependencies.spec | |
| parent | d3d1a2b377a19a845abb5b1c92ec835051b58396 (diff) | |
automatic import of python-dependencies
Diffstat (limited to 'python-dependencies.spec')
| -rw-r--r-- | python-dependencies.spec | 336 |
1 files changed, 336 insertions, 0 deletions
diff --git a/python-dependencies.spec b/python-dependencies.spec new file mode 100644 index 0000000..16e3958 --- /dev/null +++ b/python-dependencies.spec @@ -0,0 +1,336 @@ +%global _empty_manifest_terminate_build 0 +Name: python-dependencies +Version: 7.7.0 +Release: 1 +Summary: Constructor injection designed with OOP in mind. +License: BSD-2-Clause +URL: https://pypi.org/project/dependencies +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2f/84/a4ebc1c3413329e2485e4a443aee4627b3ae71dec87269dd290f5483504d/dependencies-7.7.0.tar.gz +BuildArch: noarch + + +%description +# Dependencies [](https://github.com/proofit404/dependencies/actions/workflows/release.yml?query=branch%3Arelease) [](https://pypi.org/project/dependencies) + +Constructor injection designed with OOP in mind. + +**[Documentation](https://proofit404.github.io/dependencies) | +[Source Code](https://github.com/proofit404/dependencies) | +[Task Tracker](https://github.com/proofit404/dependencies/issues)** + +Dependency Injection (or simply DI) is a great technique. By using it you can +organize responsibilities in you codebase. Define high level policies and system +behavior in one part. Delegate control to low level mechanisms in another part. +Simple and powerful. + +With help of DI you can use different parts of your system independently and +combine their behavior really easy. + +If you split logic and implementation into different classes, you will see how +pleasant it becomes to change your system. + +This tiny library helps you to connect parts of your system, in particular - to +inject low level implementation into high level behavior. + +## Pros + +- Provide composition instead of inheritance. +- Solves top-down architecture problems. +- Boilerplate-free object hierarchies. +- API entrypoints, admin panels, CLI commands are oneliners. + +## Example + +Dependency injection without `dependencies` + +```pycon + +>>> from app.robot import Robot, Servo, Amplifier, Controller, Settings + +>>> robot = Robot( +... servo=Servo(amplifier=Amplifier()), +... controller=Controller(), +... settings=Settings(environment="production"), +... ) + +>>> robot.work() + +``` + +Dependency injection with `dependencies` + +```pycon + +>>> from dependencies import Injector + +>>> class Container(Injector): +... robot = Robot +... servo = Servo +... amplifier = Amplifier +... controller = Controller +... settings = Settings +... environment = "production" + +>>> Container.robot.work() + +``` + +## Questions + +If you have any questions, feel free to create an issue in our +[Task Tracker](https://github.com/proofit404/dependencies/issues). We have the +[question label](https://github.com/proofit404/dependencies/issues?q=is%3Aopen+is%3Aissue+label%3Aquestion) +exactly for this purpose. + +## Enterprise support + +If you have an issue with any version of the library, you can apply for a paid +enterprise support contract. This will guarantee you that no breaking changes +will happen to you. No matter how old version you're using at the moment. All +necessary features and bug fixes will be backported in a way that serves your +needs. + +Please contact [proofit404@gmail.com](mailto:proofit404@gmail.com) if you're +interested in it. + +## License + +`dependencies` library is offered under the two clause BSD license. + +<p align="center">— ⭐ —</p> + + +%package -n python3-dependencies +Summary: Constructor injection designed with OOP in mind. +Provides: python-dependencies +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-dependencies +# Dependencies [](https://github.com/proofit404/dependencies/actions/workflows/release.yml?query=branch%3Arelease) [](https://pypi.org/project/dependencies) + +Constructor injection designed with OOP in mind. + +**[Documentation](https://proofit404.github.io/dependencies) | +[Source Code](https://github.com/proofit404/dependencies) | +[Task Tracker](https://github.com/proofit404/dependencies/issues)** + +Dependency Injection (or simply DI) is a great technique. By using it you can +organize responsibilities in you codebase. Define high level policies and system +behavior in one part. Delegate control to low level mechanisms in another part. +Simple and powerful. + +With help of DI you can use different parts of your system independently and +combine their behavior really easy. + +If you split logic and implementation into different classes, you will see how +pleasant it becomes to change your system. + +This tiny library helps you to connect parts of your system, in particular - to +inject low level implementation into high level behavior. + +## Pros + +- Provide composition instead of inheritance. +- Solves top-down architecture problems. +- Boilerplate-free object hierarchies. +- API entrypoints, admin panels, CLI commands are oneliners. + +## Example + +Dependency injection without `dependencies` + +```pycon + +>>> from app.robot import Robot, Servo, Amplifier, Controller, Settings + +>>> robot = Robot( +... servo=Servo(amplifier=Amplifier()), +... controller=Controller(), +... settings=Settings(environment="production"), +... ) + +>>> robot.work() + +``` + +Dependency injection with `dependencies` + +```pycon + +>>> from dependencies import Injector + +>>> class Container(Injector): +... robot = Robot +... servo = Servo +... amplifier = Amplifier +... controller = Controller +... settings = Settings +... environment = "production" + +>>> Container.robot.work() + +``` + +## Questions + +If you have any questions, feel free to create an issue in our +[Task Tracker](https://github.com/proofit404/dependencies/issues). We have the +[question label](https://github.com/proofit404/dependencies/issues?q=is%3Aopen+is%3Aissue+label%3Aquestion) +exactly for this purpose. + +## Enterprise support + +If you have an issue with any version of the library, you can apply for a paid +enterprise support contract. This will guarantee you that no breaking changes +will happen to you. No matter how old version you're using at the moment. All +necessary features and bug fixes will be backported in a way that serves your +needs. + +Please contact [proofit404@gmail.com](mailto:proofit404@gmail.com) if you're +interested in it. + +## License + +`dependencies` library is offered under the two clause BSD license. + +<p align="center">— ⭐ —</p> + + +%package help +Summary: Development documents and examples for dependencies +Provides: python3-dependencies-doc +%description help +# Dependencies [](https://github.com/proofit404/dependencies/actions/workflows/release.yml?query=branch%3Arelease) [](https://pypi.org/project/dependencies) + +Constructor injection designed with OOP in mind. + +**[Documentation](https://proofit404.github.io/dependencies) | +[Source Code](https://github.com/proofit404/dependencies) | +[Task Tracker](https://github.com/proofit404/dependencies/issues)** + +Dependency Injection (or simply DI) is a great technique. By using it you can +organize responsibilities in you codebase. Define high level policies and system +behavior in one part. Delegate control to low level mechanisms in another part. +Simple and powerful. + +With help of DI you can use different parts of your system independently and +combine their behavior really easy. + +If you split logic and implementation into different classes, you will see how +pleasant it becomes to change your system. + +This tiny library helps you to connect parts of your system, in particular - to +inject low level implementation into high level behavior. + +## Pros + +- Provide composition instead of inheritance. +- Solves top-down architecture problems. +- Boilerplate-free object hierarchies. +- API entrypoints, admin panels, CLI commands are oneliners. + +## Example + +Dependency injection without `dependencies` + +```pycon + +>>> from app.robot import Robot, Servo, Amplifier, Controller, Settings + +>>> robot = Robot( +... servo=Servo(amplifier=Amplifier()), +... controller=Controller(), +... settings=Settings(environment="production"), +... ) + +>>> robot.work() + +``` + +Dependency injection with `dependencies` + +```pycon + +>>> from dependencies import Injector + +>>> class Container(Injector): +... robot = Robot +... servo = Servo +... amplifier = Amplifier +... controller = Controller +... settings = Settings +... environment = "production" + +>>> Container.robot.work() + +``` + +## Questions + +If you have any questions, feel free to create an issue in our +[Task Tracker](https://github.com/proofit404/dependencies/issues). We have the +[question label](https://github.com/proofit404/dependencies/issues?q=is%3Aopen+is%3Aissue+label%3Aquestion) +exactly for this purpose. + +## Enterprise support + +If you have an issue with any version of the library, you can apply for a paid +enterprise support contract. This will guarantee you that no breaking changes +will happen to you. No matter how old version you're using at the moment. All +necessary features and bug fixes will be backported in a way that serves your +needs. + +Please contact [proofit404@gmail.com](mailto:proofit404@gmail.com) if you're +interested in it. + +## License + +`dependencies` library is offered under the two clause BSD license. + +<p align="center">— ⭐ —</p> + + +%prep +%autosetup -n dependencies-7.7.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-dependencies -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 7.7.0-1 +- Package Spec generated |
