跳转到主要内容

编写Pants插件的测试支持。

项目描述

Pants是一个使用Python编写的Apache2许可构建工具。

最新文档可以在pantsbuild找到。

1.25.x稳定版本

本文档描述了达到1.25.x稳定系列之前的版本。

1.25.x系列为Pants带来了两个主要变化

  1. 在BUILD文件中弃用globs()rglobs()zglobs()

  2. 添加文件参数。

请参阅https://groups.google.com/forum/#!topic/pants-devel/3nmdSeyvwU0以获取更多信息。

1.25.0 (03/12/2020)

1.25.x系列的第一个稳定版本,自上一个rc以来没有变化!

1.25.0rc1 (03/6/2020)

API更改

  • ignore添加回–files-not-found-behavior(#9175) PR #9175

  • 删除pytest passthrough args弃用。(#9126) PR #9126

  • 将删除–test-fast的时间从1.27.0.dev0推迟到1.28.0.dev0(#9250) PR #9250

错误修正

  • 编译器选项集可以是列表或集合(#9182) PR #9182

  • 将具有类路径元素的non-jvm目标添加到导出模块中作为库。(#9084) PR #9084

  • 撤销“切换到点Idea项目类型”(#8745)(#9096) PR #9096

  • 重新固定pytest,并为zipp添加一个固定版本。(#9095) PR #9095

  • 修复对忽略选项的–transitive的弃用警告(#9076) PR #9076

  • 对弃用的Target方法重写触发警告/错误(#9073) PR #9073

  • 修复在pantsd下的警告过滤问题(#9121) PR #9121

  • 允许使用–no-fast与junit一起使用测试规范(#9093) PR #9093

1.25.0rc0 (02/4/2020)

API更改

  • 弃用globsrglobszglobs(#9040) PR #9040

  • 弃用–owner-of以支持文件参数(#9050) PR #9050

  • 弃用默认为和具有选项的–build-file-imports(#9047) PR #9047

  • 弃用–glob-expansion-failure以支持–files-not-found-behavior(#9022) PR #9022

  • [thrift linter]在严格模式下使用非零退出警告,在不严格模式下使用零退出警告(#9051) PR #9051

新功能

  • 允许每个目标使用文件参数(#9048) PR #9048

  • 添加当文件参数没有拥有目标时使用–owners-not-found-behavior选项(#9068) PR #9068

  • 在setup.py规则中支持python2(#8956) PR #8956

  • [IntelliJ] 将编译器选项和插件添加到export-dep-as-jar的输出中(#9036) PR #9036

  • [IntelliJ] 将javac_optionsextra_jvm_options添加到export-dep-as-jar的输出中(#9053) PR #9053

错误修正

  • 修复Python代码检查工具,使其在没有注册 pants.backend.python 的情况下也能工作 (#9059) PR #9059

  • 修复V2 testsetup-py2 以支持文件参数 (#9056) PR #9056

  • 按换行符而不是空格拆分Zinc的argfile (#9065) PR #9065

  • 修复与弃用警告相关的竞争条件 (#9060) PR #9060

重构、改进和工具

  • 将无效的文件参数更改为错误而不是警告 (#9041) PR #9041

  • 保留用于查找拥有目标的文件系统规范 (#9063) PR #9063

  • –owner-of 实现与 –changed-* 解耦 (#9046) PR #9046

  • 将依赖项从核心移入Python后端子系统 (#9049) PR #9049

  • 允许选项被动注册。 (#9061) PR #9061

  • 当没有实现时,不要显示核心目标如 binarytest (#9002) PR #9002

  • 从 release.sh 脚本中移除来源检查 (#9042) PR #9042

  • 快照子集内禀 (#9006) PR #9006

  • 不再内部使用 globsrglobszglobs (#9029) PR #9029

  • 在 testprojects/ 中停止使用 globs (#9039) PR #9039

  • 使 fix_deprecated_globs_usage.py 更加健壮 (#9067) PR #9067

文档

  • 更新文档以使用新 ! 排除语法用于 BUILD 文件 (#9037) PR #9037

1.25.0.dev3 (01/29/2020)

API更改

  • 移除 generate-pants-ini 目标。 (#8993) PR #8993

  • 弃用 –fast 选项 (#8970) PR #8970

  • 切换到点想法项目类型 (#8745) PR #8745

  • 弃用默认使用 –transitive (#8955) PR #8955

  • 添加 IPython 子系统并弃用 –repl-py 选项 (#8996) PR #8996

  • 根据v1/v2设置条件注册某些可选项 (#8997) PR #8997

新功能

  • 允许使用 cloc2validate 的文件系统规范 (#8985) PR #8985

  • 通过新 ! 语法在 BUILD 文件中允许排除 (#9025) PR #9025

错误修正

  • 确保每个文件系统规范都是有效的 (#9009) PR #9009

  • 移除自定义 NodeResolveFingerprintStrategy (#8398) PR #8398

  • 当 setup_py 任务没有工作要做时移除异常。 (#8620) PR #8620

  • 解决 v2 插件。 (#9020) PR #9020

  • 修复 V2 目标的 Outputting 混合 (#9011) PR #9011

  • 修复非确定性的 ConsolidateClasspath (#9001) PR #9001

  • 修复 validatecloc2 与没有源的目标的破坏性 (#9000) PR #9000

  • 修复与 from __future__ import annotations 兼容的规则类型提示验证 (#9004) PR #9004

  • 正确识别覆盖率选项,并将输出复制到dist/ (#8705) PR #8705

  • 恢复对通过新枚举选项输出第三方依赖的dependencies支持 (#8960) PR #8960

  • 正确设置workunit父ID(修复#7969) (#8947) PR #8947

重构、改进和工具

  • 修改选项解析器以允许在文件参数中使用! (#9031) PR #9031

  • 重构PathGlobs以在构造函数中支持忽略glob (#9032) PR #9032

  • 修复在1.41.0版本中出现的某些clippy错误 (#9027) PR #9027

  • 扩展config_test.py以更好地定义Config API (#9021) PR #9021

  • 重构engine/legacy/structs.py (#9023) PR #9023

  • 描述当glob不匹配时的失败原因 (#9013) PR #9013

  • 对发布脚本进行一些小的改进 (#8964) PR #8964

  • 首次使用async-await (#9018) PR #9018

  • 重构config.py以支持可能的未来配置文件格式 (#9014) PR #9014

  • 升级到Rust 1.40 (#9017) PR #9017

  • 改进未匹配glob的错误消息 (#9010) PR #9010

  • 改进规则图问题的错误消息 (#8998) PR #8998

  • options.pyoptions_bootstrapper.pyconfig.py添加类型提示 (#8990) PR #8990

  • 将内部代码移动到新模块 (#8999) PR #8999

  • 将JvmTask子类的分发查找改为调用JvmTask (#8938) PR #8938

  • 重构–changed-include-dependees以使用枚举选项 (#8995) PR #8995

  • 允许废弃子作用域 (#8984) PR #8984

测试

  • 修复Zipp 2.0发布破坏Python 2集成测试 (#8994) PR #8994

文档

  • 修复Python示例文档中的错误 (#8987) PR #8987

1.25.0.dev2 (01/17/2020)

新功能

  • 添加Bandit Python代码检查工具 (#8929) PR #8929

API更改

  • 废弃–fmt-transitive–lint-transitive并切换默认值为False (#8969) PR #8969

  • 默认为Python用户提供Python 3.6+ (#8968) PR #8968

  • 移除–cloc2-transitive (#8957) PR #8957

重构、改进和工具

  • 引入SourcesSnapshot以供仅需要源文件操作的目标使用 (#8980) PR #8980

  • 调整选项解析器以允许在文件系统规范中使用glob (#8981) PR #8981

  • 在运行发布脚本时gitignore twine venv创建的文件。 (#8966) PR #8966

  • 修复更多错误 (#8983) PR #8983

  • source/添加类型提示 (#8977) PR #8977

  • AddressStructTargetAdaptorParserHydratedTarget添加类型提示 (#8967) PR #8967

  • @goal_rules中停止请求AddressSpecs (#8972) PR #8972

  • 更新 Maven 艺术品 URL (#8975) PR #8975

  • 使用守护线程 (#8959) PR #8959

  • 为目标根设置添加类型提示 (#8965) PR #8965

  • 将 V2 python_test_runner.py 集成测试迁移到 V2 风格 (#8924) PR #8924

1.25.0.dev1 (01/14/2020)

API更改

  • 将某些类型标记为“有副作用” (#8922) PR #8922

  • @console_rule 重命名为 @goal_rule (#8942) PR #8942

  • 弃用 –positional-arg-file 以便使用 –spec-file (#8928) PR #8928

  • optionable_rule 重命名为 subsystem_rule (#8893) PR #8893

新功能

  • 使流式工作单元报告间隔成为可配置选项 (#8946) PR #8946

  • 一个用于拓扑排序目标的规则。 (#8921) PR #8921

  • 添加 –debug 选项以交互方式运行 V2 测试。 (#8827) PR #8827

  • 规则以支持运行 setup.py 命令 (#8882) PR #8882

错误修正

  • 将 V2 Pytest pex 文件设置为 –not-zip-safe 以修复偶尔的挂起 (#8953) PR #8953

  • 修复 _maybe_handle_help (#8945) PR #8945

重构、改进和工具

  • src/python/pants/pantsd/pailgun_server.py 中使用 f-strings + 修复注释中的拼写错误。 (#8949) PR #8949

  • goal/auth/ 添加一些类型注解 (#8934) PR #8934

  • src/python/pants/testutilsrc/python/pants/util/ 上使用 f-strings (#8950) PR #8950

  • 将公共 Target 方法重命名为使用 address_spec 而不是 spec (#8944) PR #8944

  • 仅针对 export-dep-as-jar 目标编译非模块导出 (#8914) PR #8914

  • 解决 setup-py2 的某些剩余问题 (#8927) PR #8927

  • 调整参数解析器以允许文件系统规范 (#8932) PR #8932

  • 共享本地 LMDB 存储,避免为每个测试方法创建一个 (#8933) PR #8933

  • 允许 python_test_runner.py 为单个目标获取覆盖率 (#8910) PR #8910

  • 修复 @console_rule 未返回 Goal 的混淆错误 (#8931) PR #8931

  • 让 handle_workunits 回调使用 kwargs (#8918) PR #8918

  • 重构 options_test.py (#8906) PR #8906

  • 简化 ./pants test –debug 请求单个地址 (#8925) PR #8925

  • 停止向 V2 测试输出添加我们自己的颜色 (#8926) PR #8926

  • 将核心测试模型更新为包括覆盖率结果 (#8851) PR #8851

  • 在 v2 pytest 中使用颜色 (#8901) PR #8901

  • 修复与 setup-py2 变更冲突的规格重命名热修复 (#8920) PR #8920

  • 准备 1.24.0rc1. (#8919) PR #8919

  • Spec 重命名为 AddressSpec (#8916) PR #8916

  • 将 1.26 系列的弃用提前到 1.26 开发系列中 (#8908) PR #8908

  • specs.py 添加类型注解 (#8913) PR #8913

  • 添加实验性 –fmt-only 标志 (#8911) PR #8911

  • 提取用于准备 chrooted Python 源的规则 (#8899) PR #8899

  • 添加 deprecated.resolve_conflicting_options 以方便移动选项 (#8903) PR #8903

  • 添加 shell_str 类型以改进 –args 选项支持 (#8904) PR #8904

测试

  • 跳过悬停的 Pantsd 集成测试 (#8961) PR #8961

  • 测试多个修改相同文件的 V2 格式化程序 (#8850) PR #8850

  • 跳过 #8943 中的失败测试 (#8948) PR #8948

  • 添加 create_options_bootstrapper() 测试实用工具,以减少 V2 测试中的样板代码 (#8943) PR #8943

文档

  • 当合并非摘要时,为规则作者添加有用的错误信息 (#8962) PR #8962

  • 修复导出文档中的错别字 (#8936) PR #8936

1.25.0.dev0 (01/06/2020)

API更改

  • 弃用 –fmt-skip–lint-skip (#8900) 问题 #8346 PR #8900

  • 为每个 linter/formatter 子系统添加 –skip 选项 (#8898) PR #8898

  • 添加 ESLint 子系统并弃用 node-distribution ESLint 选项 (#8891) PR #8891

  • 添加 –black-skip–isort-skip–flake8-skip (#8888) PR #8888

  • 默认弃用运行 python-eval (#8889) PR #8889

  • 添加 scrooge-linter 子系统并弃用 lint-thrift 选项 (#8894) PR #8894

  • 添加 checkstyle 子系统并弃用 –lint-checkstyle-configuration (#8896) PR #8896

  • 弃用 option.custom_types.dict_optionlist_option (#8885) PR #8885

  • 添加 scalafixscalafmtscalastyle 子系统并弃用任务级配置选项 (#8886) PR #8886

  • 停止在内部使用 Java 6 和 7 (#8657) PR #8657

  • 将默认 MyPy 从 0.740 升级到 0.761 (#8866) PR #8866

错误修正

  • 在 tempdir 中运行交互式进程时使用绝对路径 (#8895) PR #8895

  • 修复 Black 和 isort 的 ./pants lint2 (#8877) PR #8877 PR #8823

  • 为 InteractiveRunner 提供输入文件 Digest (#8855) PR #8855

  • 当显示选项帮助选择时支持枚举 (#8853) PR #8853

  • 热修复 MyPy 由于类型别名而在 macOS 上不工作 (#8887) PR #8887

  • 修复 isort、Pytest 和 MyPy 选项以进行指纹识别 (#8871) PR #8871

  • 对于选项名称而不是目标报告弃用 (#8856) PR #8856

重构、改进和工具

  • 在内部使用 V2 isort (#8756) PR #8756

  • 重构 python_test_runner 以使用新的 pex 创建规则 (#8852) PR #8852

  • option/subsystem/ 添加类型提示 (#8878) PR #8878

  • 将弃用的 assertRaisesRegexp 替换为 assertRaisesRegex (#8879) PR #8879

  • 移除已弃用的 –pytest-requirements–pytest-timeout-requirements–pytest-cov-requirements–pytest-unittest2-requirements (#8876) PR #8876

  • 部分类型检查剩余的 250 个文件 (#8875) PR #8875

  • 停止在 Python 解释器约束中引用 Python 4 (#8867) PR #8867

  • 部分类型检查 TestBase 和 235 个测试文件 (#8874) PR #8874

  • 完成对所有 src 代码的部分类型检查 (#8865) PR #8865

  • 重构 optionsubsystem 测试 (#8872) PR #8872

  • 类型检查 build-support/bin/generate_travis_yml.py (#8868) PR #8868

  • optionsubsystem 测试从 tests/python 移动到 src/python (#8870) PR #8870

  • 在 meta.py 中将 Enum 的 match() 函数转换为顶级函数 (#8504) PR #8504

  • 添加 SingleFileExecutable 以便于消费可执行文件的快照 (#8860) PR #8860

  • 使用新的 @decorated_type_checkable 装饰器改进检查 @union 类型的人体工程学 (#8496) PR #8496

  • 部分类型检查 backend/native 和 100 多个文件 (#8864) PR #8864

  • 修复 memo.pymeta.py 中装饰器的类型提示 (#8863) PR #8863

  • [IntelliJ] 在 export-dep-as-jar 时只导出可模块化的目标 (#8812) PR #8812

  • 使用原始字符串修复正则表达式弃用警告 (#8880) PR #8880

项目详情


发行历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

此版本没有提供源代码分发文件。请参阅有关生成分发存档的教程。

构建分发

pantsbuild.pants.testinfra-1.25.0-py36.py37-none-any.whl (16.3 kB 查看哈希值)

上传时间: Python 3.6 Python 3.7

支持