Skip to content

Releases: Qwejay/QPyPack

v2.4.2

28 Jun 07:24

Choose a tag to compare

2.4.2

  • 语法错误提示:打包失败时,自动扫描完整构建日志,识别 Python 源码中的 IndentationError、SyntaxError 和 TabError。
  • 显示错误位置:解析出出错文件名、行号及错误描述,帮助用户快速定位代码缺陷,程序区分“用户代码错误”与“打包工具故障”,避免混淆。

v2.4.1

28 Jun 06:07

Choose a tag to compare

2.4.1

  • 重构设置TAB:全面重构设置面板,将参数分类为“应用元数据”、“编译控制”、“资源与沙盒”、“软件设置”四大模块。
  • 保存路径配置:支持将 EXE 输出至全局指定的自定输出目录,并支持对缺失的多级父目录进行全自动递归创建。
  • 并发编译限制:支持手动限制打包引擎并发编译时所能占用的最大 CPU 核心数,避免由于硬件满载引发设备死机。
  • 编译完成声音反馈:引入非外部重度依赖的系统级音频通知,在打包成功或异常中断时给予不同的声音提示。
  • 自动持久化打包日志:任务结束后支持在目标输出路径自动保存运行日志(.log 格式),极大提升异常分析排查的便利性。

v2.4.0

28 Jun 01:43

Choose a tag to compare

2.4.0

  • 控制台防闪退机制:在非 GUI 模式打包时,工具会自动在临时脚本尾部注入防闪退控制代码(针对 Windows 平台下双击运行的非交互式程序),提升用户体验。
  • 提升文件删除的鲁棒性:重构了临时目录清理机制,引入带重试延时与只读属性解除的 robust_rmtree 回收机制,减少因防病毒软件或进程占用导致清理失败的情况。
  • 新增云同步锁检测:对于处于 OneDrive 等云同步盘锁定状态的文件,提供前置 I/O 异常检测,避免打包过程意外被系统挂起。
  • 完善引擎参数映射:优化 Nuitka 的插件自动加载逻辑(自适应 PyQt/PySide 家族、numpy, matplotlib, tkinter 等常见重型库),使其配置更加贴合实际运行环境。
  • 新增 CI/CD 工作流:推送版本标签自动触发 PyPI 发布,并同步编译 Windows 运行包(.exe)上传至 GitHub Release 附件。
  • 版本自动同步:构建时自动对齐 pyproject.toml 与入口脚本中的版本号,降低手动维护出错率。

QPyPack_2.3.5

17 Jun 08:16
db8a7bd

Choose a tag to compare

2.3.5

  • 防漏包机制:彻底废弃极易误判的短路判定,重构依赖拉取架构为“三重绝对安全网”(Requirements -> Pipreqs -> AST源码强扫)。即使前置分析工具漏报,最终的 AST 保底扫描也会强行抓取 PySide6 等核心隐式库并塞入沙盒,彻底终结漏包闪退问题。
  • 工作区“零污染”改造:贯彻绝对纯净的构建理念。将 QPyPack.ini 配置文件平滑迁移至全局系统路径(~/.qpypack/config.ini),并将所有 AST 缓存、依赖清单等中间产物全部转移至操作系统 Temp 目录,确保不留任何垃圾文件污染用户的工程代码区。
  • 构建日志工程化规范:全面重构控制台与 UI 日志的输出文案,引入规范化的 CI/CD 生命周期状态标签(如 [Init], [Env], [Deps], [Build], [Pack]),大幅提升状态诊断的清晰度与专业性。
  • 虚拟环境沙盒智能自愈:在分配独立隔离的 venv 打包沙盒后,首个初始化动作变更为静默自动升级 pip,彻底压制并清除了因老旧模块引发的大段黄色警告乱码。
  • 核心 BUG 修复:精准修复了因底层 configparser 映射字典降级读取失败,导致抛出 'dict' object has no attribute 'lower' 的致命性系统崩溃问题。
  • 优化日志表述:调整了日志输出文字的语言表述,现在更加专业化。

2.3.0

15 Jun 12:24

Choose a tag to compare

2.3.0

  • UI框架重构:由 PyQt5 升级至 PySide6。优化了现代高分屏(High-DPI)下的文字与图标缩放表现。
  • 精简架构:移除 cx_Freeze 打包引擎,专注打磨更现代、更高效的 PyInstaller 与 Nuitka 双核心引擎。
  • Nuitka 官方最佳实践深度集成
    • 单文件 (--onefile) 模式下,强制启用 zstandard 核心压缩环境,大幅优化产物体积与解压启动性能。
    • 全局引入 anti-bloat 防膨胀插件,智能拦截并避免 pytestIPython 等无用巨大依赖被误打包。
    • 新增对 tkinter 官方探针的自动识别与插件激活。
    • 重构附加资源打包逻辑,引擎将自动探测目标类型,严格区分并适配单文件 (--include-data-files) 与文件夹 (--include-data-dir) 打包规范。
  • PyInstaller 深度优化
    • 移除过时的强制 PyQt 隐藏导入逻辑,交由现代 Hook 自动完美处理。
    • 彻底修复附加资源在跨平台构建时的路径分隔符 (os.pathsep) 匹配与切割异常问题。

QPyPack_2.2.0

13 Jun 16:23
70bd1b8

Choose a tag to compare

2.2

  • 更名为 QPyPack,并规范化了内部沙盒与临时文件命名规范。
  • 超时守护 (Watchdog):引入看门狗机制,为关键打包步骤设置超时限制,防止因网络问题导致构建无限期挂起。
  • 依赖推导优化:pipreqs 原生支持国内镜像站重定向加速,并增加 15 秒超时自愈,失败时自动降级为本地纯静态 AST 解析。
  • 智能命名输出:自动解析脚本版本,预设输出文件名为 {Name}_{Version} 格式(例如:QPyPack_2.2.0.exe)。
  • 编译兼容扩展:Nuitka 编译模式新增对 PyQt6、PySide、NumPy、Matplotlib 等常用插件的自适应识别。
  • 细节打磨:改进日志高频刷新滚动体验,优化版本信息元数据抓取退级逻辑。

PyPack_2.0

03 Jun 14:59

Choose a tag to compare

[2.0.0] - 2026-06-03

  • 界面重构,更加简洁易用。
  • 优化了子进程执行与管道输出读取机制,改善了长时间构建时的稳定性。
  • 在 Windows 平台下隐藏了编译期间可能弹出的冗余控制台黑窗口。
  • 修正了多引擎切换时部分 UI 控件显示状态的联动逻辑。

PyPack_1.0.2

03 Jun 01:03
aaac47e

Choose a tag to compare

Update README.md

Pypack_1.0.1

31 May 00:42
6fe7067

Choose a tag to compare

[1.0.1] - 2026-05-31

新增

  • 自定义 PIP 镜像源:在“高级选项”界面中引入了 PIP 镜像源输入配置,默认使用清华大学开源软件镜像源(https://pypi.tuna.tsinghua.edu.cn/simple)。
  • 配置即时持久化:PIP 镜像源输入支持修改即时生效,并利用 QSettings 自动存储于注册表/配置文件中,下次启动应用时自动读取。

优化

  • 构建逻辑统一:优化了虚拟环境(Venv)初始化、打包引擎下载以及项目依赖解析时的命令行拼接逻辑,统一走用户配置的自定义 PIP 镜像源。