用decorator轻松地否决代码。针对不同的抨击给出有用的警告和文档字符串。

wabisabi的Python项目详细描述


wabisabi

pypiTravisDocs

瓦比萨比Python3号。自动编写多种样板代码 通过python装饰器的依赖关系。

上面的链接暂时不起作用:https://deprecation-factory.readthedocs.io/en/latest/?badge=latest

动机

打破东西很重要!打破别人的东西就是卑鄙!

抨击的目的是警告其他库编写者他们的代码是 就要崩溃了,所以你可以继续对你自己进行激烈的改变。

通常,当您想要否决某个特性时,您最终会遵循一个过程 类似于

  1. 对代码进行有用的修改。
  2. 决定何时改变旧的行为。
  3. 在函数中添加警告以警告用户。
  4. 将函数签名更改为非感官的,以检测 违约行为。
  5. 在文档中添加消息(与numpydoc兼容)

最后,当行为被官方否决时,你需要做所有这些 又变了。

  1. 删除警告。
  2. 删除文档消息。
  3. 改掉旧习惯。
  4. 将函数签名改回有用的内容。

此库的目标是允许您简化步骤3-9。你不应该 在完成新的 特征。您编写的代码应该是,这个库, makes确保您的用户有足够的时间更新他们的代码。

这个库

  • 修改函数签名以确保当前 版本。这将有助于自动完成。
  • 将警告节添加到docstrings。试图正确地 缩进docstring。
  • 将用户指向他们的代码行,以便他们知道 做出适当的修改。
  • 在达到所需阈值后保留deprecator会导致noop。 这意味着您可以懒得将它们从代码中删除。 抨击不应该成为你发展的障碍。
  • 如果安装了numpydoc>;0.7,则“警告”部分将合并为 一个单独的部分,允许您链接deprecator。

安装

虽然您可以依赖于此,但我强烈建议您将 在你的项目中的需要,因为api很可能会改变和破坏你的代码。

当前折旧率

  • 反对更改kwargs中的默认值。句柄kwargs 也作为位置参数传递!
  • 转换为仅关键字参数。
  • kwarg重命名

未来折旧率

  • 交换位置参数的顺序
  • 使一个旧的kwarg成为下颌骨的位置arg
  • 欢迎功能要求!

开发主管

  • 马克·哈福奇

贡献者

可能是你!

如何贡献

准备好了吗?我们使用标准的github贡献模型。 Scikit图像有一个很好的 writeup关于如何设置 你的环境。适应我们的环境。

炊具

此包是用 Cookiecutteraudreyr/cookiecutter-pypackage 项目模板。

历史记录

0.2.4(2018.08.13)

  • 显然numpydoc 0.6没有__version__属性….

0.2.3(2018.08.13)

  • 检查numpydoc 0.7
  • 修复docstring消息中的错误

0.2.2(2018.08.12)

  • API变更。change_default_参数现在为 使参数名不发生冲突的旧参数

0.2.1(2018.08.12)

  • 与其他numpydocs合并,以便sphinx中的文档不会崩溃

0.2.0(2018.08.11)

  • 提供用于更改数字o的deprecator仅限f关键字参数。

0.1.1(2018.08.09)

  • 对于Python3.5,也会按顺序显示不推荐使用的参数。

0.1.0(2018.08.09)

  • 用于更改kwards默认值的新deprecator。处理参数 也作为位置argumnets传递。

0.0.1(2018-07-29)

  • pypi上的第一个版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java类/接口中的编码风格默认注释和元信息   java列表不为空,但poll方法返回null   java无法在安卓中设置视图   java在游戏中后台运行计数器线程   带有ForEach迭代问题的Java流   java OpenApi(Swagger 3.0)Codegen缺少验证   JAVAlang.RuntimeException:无法传递结果ResultInfo需要安卓。准许读取外部存储器或grantUriPermissio   新Java Spring启动项目应用程序引擎部署失败,错误代码为13   用户输入的java验证   如何使用java将连续的JSON对象转换为csv   java正则表达式以删除所有不可打印字符   如何告诉编译器在Android应用程序中使用Kotlin扩展函数而不是Java 8函数   java你能制作Tomcat 6标准吗。日志文件的行为是否像log4j DailRollingFileAppender?   当使用操作符重载时,在闭包中或甚至在方法中更新时,不会发生对我的列表的java更新   java错误解析jar上带有入口点创建的文件参数错误