PySide2/Qt5 for Python框架的PEP561存根文件
项目描述
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
未声明的信号 - 支持所有
QSize
和QSizeF
操作 - 修复
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 查看哈希)