跳转到主要内容

PySide2/Qt5 for Python框架的PEP561存根文件

项目描述

mypy logo

CI

Mypy存根为PySide2 (Qt5 for Python)

作者: Philippe Fremy

Qt5 for Python/PySide2提供的官方类型存根不足以与mypy进行正确的类型验证。此软件包通过提供精心策划和更新的存根来解决此问题。

改进

  • 修复 Signal 以使其接受方法 emit()
  • 修复 qVersion() 返回字符串,而不是字节
  • 修复 QMessageBox.warning、信息、关键、问题、关于、关于Qt 以接受 None 作为父参数
  • 修复 QProgressDialog.setCancelButton() 接受 None
  • 修复 QTreeWidgetItem< 的比较
  • 修复 Signal.connect() 返回值从 None 更改为 bool
  • 修复 QTimer.timeout 未声明的信号
  • 支持所有 QSizeQSizeF 操作
  • 修复 QLineEdit.setText() 以接受 None
  • 添加 QDialogButtonBox.StandardButton__or__ 操作
  • 修复所有 Qt 对象中未检测到的缺失方法
  • 将所有缺失的信号添加到存根中(许多都缺失了)
  • 修复所有接受 QCursor 的方法,也接受 Qt.CursorShape
  • 添加从 QByteArray 到字节的转换
  • QDialog 添加 exec()
  • 修复 data()setData() 以接受 Qt.ItemDataRole
  • 为操作 QFlag 派生类的所有方法添加所有方法: __or____xor__
  • 修复所有接受QColor的方法,使其也能接受Qt.GlobalColor
  • 修复QCoreApplication.translate()的签名
  • 修复QLabel.setAlignment()以接受Qt.AlignmentFlag

详细信息请查看CHANGELOG.md

这个项目受到了PyQt5-stubs项目的启发。

请注意,这项工作远未完成。请随时报告问题或提出改进建议。

许可

作为PySide2的衍生作品,stub以LGPL v2.1许可发布。有关详细信息,请参阅文件LICENSE。

安装

只需使用pip安装官方PySide2-stubs

$ pip install PySide2-stubs

或使用GitHub上的最新版本

$ pip install git+https://github.com/python-qt-tools/PySide2-stubs

就是这样,在这两种情况下,新的stub将被mypy自动拾取。类型检查过程应该会更好。

帮助改进stub

如果您发现不正确或缺少类型信息(即使您的代码是正确的,mypy也会报告错误),请按照以下步骤在此处报告

  • 创建一个问题显示您的问题
  • 更好的是,创建一个PR来修复问题
    • 确保添加一个显示错误类型测试。只需在tests/下创建一个文件。文件名不以test开头。测试套件将运行该文件并对其进行类型检查。
    • 在PySide2-stubs目录中修复stub
    • 并打开PR

项目详情


下载文件

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

源代码分发

PySide2-stubs-5.15.2.1.2.tar.gz (622.8 kB 查看哈希)

上传时间 源代码

构建分发

PySide2_stubs-5.15.2.1.2-py3-none-any.whl (542.9 kB 查看哈希)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面