人类依赖注入
dependencies的Python项目详细描述
人类依赖性注射
安装
所有发布的版本都托管在python包索引上。你可以 使用以下命令安装此包。
pip install dependencies
使用量
不带dependencies
的依赖注入robot=Robot(servo=Servo(amplifier=Amplifier()),controller=Controller(),settings=Settings(environment="production"),)robot.work()
使用dependencies
进行依赖注入classContainer(Injector):robot=Robotservo=Servoamplifier=Amplifiercontroller=Controllersettings=Settingsenvironment="production"Container.robot.work()
许可证
依赖项库是根据两条bsd许可证提供的。
变更日志
0.15(2018-07-21)
- 支持Injector子类中的in检查。
- 添加operationdecorator来构建可注入函数。
- 添加Packageproxy以减少 Injector定义。
- 添加celery contrib以定义来自Injector子类的任务。
- 添加py.test contrib来定义来自Injector子类的fixture。
- 添加django contrib以定义来自Injector子类的视图。
- 添加django rest framework contrib以定义api视图和模型视图 从Injector子类设置。
- 名为attributes的类应该以_class结尾。
- 改进了缺少依赖项的错误消息。
- 提高DependencyError而不是AttributeError以获得错过的 依赖关系。
- 放弃对Python2.6和3.4的支持。
0.14(2018-04-13)
- 为别名和跨注入器链接添加this代理对象。
- 不推荐属性赋值和usedecorator。
- 根据BSD许可证发布。
0.13(2016-10-09)
- 性能改进。
0.12(2016-09-29)
- 允许对注入器子类进行多重继承。
- 计算依赖项一次。
- 添加usedecorator。
- 允许使用嵌套式喷油器。
0.11(2016-08-22)
- 十二次加速。
- 使用属性分配防止不正确的操作。
- 拒绝可注入类中的*args和**kwargs。
- 只有当参数名为 以_cls结尾。
- 从install requires中删除six库。
0.10(2016-06-09)
- 变成模块。
0.9(2016-06-08)
- Injector子类的依赖项分配和取消。
0.8(2016-06-05)
- 更正Python2.6的语法错误
0.7(2016-06-04)
- 在构造函数中为相互递归引发DependencyError。 参数和指定的依赖项。
- 在dir结果中显示注入的依赖项。
- 拒绝实例化Injector及其子类。
0.6(2016-03-09)
- 不赞成使用c别名。使用真实的类。
- 允许在Injector上直接使用let。
- 不要在末尾实例化名为cls的依赖项。
0.5(2016-03-03)
- 避免属性搜索递归。这与继承一起发生 链长度从3开始,缺少对第一级的依赖关系。
- 为Injector子类访问添加c别名。
- 添加letfactory以临时覆盖指定的 依赖关系。
0.4(2016-03-03)
- 检测object.__init__并在参数注入中跳过它。
0.3(2016-03-02)
- 不推荐注射机构。注入器可以注入任何参数 去任何班级。注入器现在支持多个DI目标。全部 可能的目标现在在注入器属性中指定。只有 injec允许单基继承Tor子类。
0.2(2016-02-13)
- 允许重写由 继承自此注入器子类。
0.1(2016-01-31)
- 初次发布。