Skip to content

Awespykit 2.1.1

Choose a tag to compare

@laincat laincat released this 26 Sep 09:07
· 16 commits to main since this release

本次发布主要是修复若干缺陷,并补齐自动化(CI、发布流程、依赖更新)。所有产物由 GitHub Actions 构建并附带 SHA256 校验和。

修复

程序在部分用户环境里直接启动不了

包内使用的是扁平导入(from utils.thmt import ...、from com import *),入口点却用 sys.path.append() 把包目录追加到搜索路径末尾 —— 而 append 的优先级低于 site-packages。因此用户环境里只要装了同名的第三方包,程序会在启动瞬间崩溃:

ModuleNotFoundError: No module named 'utils.thmt'

PyPI 上确实存在一个叫 utils 的包,所以这不是假想场景。已改为 sys.path.insert(0, ...)。

Python 3.12+ 上「检查项目导入」完全不可用

utils/cip.py 引用了 ast.Str —— 该类已在 Python 3.12 中移除,调用即抛 AttributeError。程序打包工具里的「检查导入」在 3.12 / 3.13 / 3.14 上必然失败。已改为优先使用 ast.Constant。

查询面板的默认查询模式从未生效

logic/package_manager.py 中把配置对象与枚举做了比较(self.__parent.config == QMode.NotSPCF),恒为 False,导致默认分支永远走不到。

窗口最大化状态判断写错

logic/cloud_function.py 两处写成了 if self.isMinimized() or self.isMinimized():,第二个应为 isMaximized()。结果是窗口最大化时仍会把尺寸写进配置,下次还原出来的大小不对。

拖放文件后不会滚动到底部

com/widgets.py 用的是 verticalScrollBar().maximumHeight()(控件高度)而非 maximum()(滚动范围)。

其他

  • utils/pyi.py:默认参数里的 os.getcwd() 只在导入时求值一次,进程后续切换工作目录不会更新;
  • utils/pyi.py:生成文件的路径拼写 VERSOIN_INFO → VERSION_INFO;
  • utils/cip.py:改用 chardet 顶层导出的 UniversalDetector,消除弃用警告。

新增

  • CI:Python 3.9 ~ 3.14 矩阵跑静态检查与测试,另有 Windows exe 构建任务(构建完会真的启动一次做冒烟测试);
  • 自动发布:推送 main 自动发布开发版;打 tag 即发布正式版(本页即由此流程产出);
  • 依赖自动更新:Dependabot 每周检查,patch 级在 CI 通过后自动合并;
  • 新增 tests/(含专门锁住上述启动崩溃问题的回归测试)、ruff.toml、packaging/(打包配置与校验工具)。

产物

文件 说明
Awespykit.exe Windows 单文件可执行程序,双击即可运行,无需安装 Python
Awespykit.exe.sha256 exe 的 SHA256 校验和
awespykit-2.1.1-py3-none-any.whl Python 分发包(pip install 用)
awespykit-2.1.1.tar.gz 源码分发包
python-dist.sha256 两个 Python 分发包的 SHA256 校验和

校验下载文件是否完整(PowerShell):

Get-FileHash .\Awespykit.exe -Algorithm SHA256

也可以直接用 pip install Awespykit -U。