Files
QPyPack/CHANGELOG.md
T
QwejayHuang 94da38d7da v2.7.7: Atomic config save, encoding enhancements, anti-AV retry, RamDisk fixes
- feat: add atomic save mechanism for config write protection
- feat: improve source/deps encoding compatibility (GBK, UTF-8 with BOM)
- feat: add smart retry mechanism to prevent AV lock (Permission Denied)
- feat: add global exception logging and isolate engine build env vars
- fix: resolve [WinError 1] crash during packaging on RamDisk
- fix: ensure temp directory setting fully applies to venv and PyInstaller cache
2026-08-09 13:26:23 +08:00

349 lines
25 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 更新日志 (Changelog)
QPyPack 项目的所有重要变更都将记录在此文件中。
本日志格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/) 规范,
且本项目严格遵循 [语义化版本 (Semantic Versioning)](https://semver.org/lang/zh-CN/) 规范。
[English Version](./CHANGELOG_EN.md) | **中文**
---
# 更新日志 (Changelog)
---
## [2.7.7] - 2026-08-09
#### 新增
- **配置写入保护**:引入原子化保存机制,彻底杜绝因断电、死机或磁盘满导致的配置丢失/损坏问题。。
- **提高编码兼容**:升级源码与依赖的读取逻辑,智能兼容 GBK、带 BOM 的 UTF-8 等多种复杂编码,告别乱码闪退。
- **抗杀软拦截**:产物输出阶段加入智能重试机制,有效解决生成瞬间被安全软件锁定而导致的“权限不足”报错。
- **稳定性增强**:增加全局异常日志捕获,并隔离了引擎编译时的环境变量,避免干扰主程序运行。
#### 修复
- 修复在部分 RamDisk(内存盘)环境下打包时,因路径解析引发 [WinError 1] 导致程序崩溃的问题。
- 修复设置面板中的“临时目录”选项未对虚拟环境和 PyInstaller 缓存完全生效的漏洞。
---
## [2.7.6] - 2026-08-08
#### 新增
- **项目沙箱智能感知**:基于脚本路径哈希与 Python 版本/架构生成唯一沙箱标识,加载项目脚本时自动感知识别已有环境并快速复用。
- **虚拟环境一键清理**:设置面板新增项目虚拟环境清理功能,自动扫描项目关联的虚拟环境,提供一键清理功能。
- **AI翻译工具**:新增 `update_locales_ai.py` 现代化 GUI 翻译管理工具,填写大模型API后可自动一键补全更新程序的翻译。
- **窗口大小记忆**:新增窗口大小调整后自己记忆保存功能,重新启动不会丢失。
#### 改进
- **环境自愈与容错降级**:重构虚拟环境有效性校验逻辑,检测到环境损坏或清理失败时自动降级至临时沙箱,确保打包流程零中断。
- **跨平台进程彻底回收**:优化打包任务取消逻辑,Linux / macOS 平台开启独立会话组销毁,彻底解决中断构建时的后台残留进程。
- **环境检测与降级告警**:优化 Python 解释器版本与架构(x64/x86)检测超时处理,增加完善的异常捕获与日志降级提示。
- **界面文案精炼**:重构依赖项与虚拟环境复选框文本,统一清理确认对话框按钮样式与风险提示。
#### 修复
- **国际化词条同步**:补全并同步环境清理、时间戳签名日志及降级告警等新增 UI 词条的简体中文映射。
---
## [2.7.5] - 2026-08-06
#### 新增
- **代码签名与时间戳**:新增 Windows / macOS 产物自动数字签名功能,支持 `.pfx` 自签名证书生成与商业证书配置;Windows 签名集成微软、DigiCert、Sectigo 等权威时间戳服务器盖章支持。
- **macOS DMG 构建**:CI/CD 构建流程支持自动生成 macOS 平台的 `.dmg` 安装包镜像。
#### 改进
- **macOS 默认签名**:macOS 平台默认开启 Ad-hoc 伪签名,解决 M 系列芯片上未签名二进制运行报“应用已损坏”的问题。
- **跨平台构建打包**:重构 CI/CD 自动化构建流程,优化 Linux 平台 PySide6 插件依赖打包与稳定性。
- **系统兼容性矩阵**:调整解释器检测逻辑,动态评估并展示各操作系统与架构的兼容性要求。
- **界面与文案优化**:统一跨平台文件选择框渲染机制;默认开发者更名为“独立开发者”,应用描述更名为“桌面应用程序”。
#### 修复
- **多语言与国际化同步**:补全并同步简体/繁体中文、日、韩、德、法、西、葡、俄等 8+ 种语言的签名日志与文本框右键菜单翻译。
- **进程资源回收**:优化打包任务异常终止时的进程管道与句柄清理逻辑。
---
## [2.7.4] - 2026-08-05
#### 新增
- **打包模式选择**:支持切换「兼容模式」与「精简模式」,兼容模式减少打包出错,精简模式打包后体积更小,构建失败时自动提供重试提示。
- **保留虚拟环境**:支持生成并复用项目本地虚拟环境,不用每次新建环境,大幅提升同一项目的建构速度。
#### 改进
- **Nuitka 策略优化**:精简模式下动态优化 `playwright`、`ttkbootstrap` 等框架的打包参数,进一步缩小产物体积。
- **右键菜单优化**:动态加载 Qt 系统翻译包,完善原生右键菜单与对话框的多语言体验,修复右键菜单底色为黑色的BUG(用了一下午才修复好==!)。
- **UI与视觉统一**:显式配置 Fusion 浅色主题 Palette,统一全局右键菜单样式,优化预设按钮布局与页面边距。
- **AST 依赖扫描**:扫描路径自动排除虚拟打包目录,统一包名小写判重匹配。
- **细节修复**:修复提示音开关响应逻辑;支持子进程独立环境变量设置;加强表格空指针安全校验;更新部分翻译;修复多个细小bug。
## [2.7.3] - 2026-08-04
#### 新增
* **Python 环境管理器**:新增环境管理弹窗,支持本地已安装 Python 的智能识别切换,以及官方/国内镜像源的一键下载安装。
* **文件夹打包模式**:运行模式新增文件夹模式,并支持自定义内部资源目录名。
* **原生 AST 依赖分析**:全面重构依赖扫描机制,使用原生 AST 解析替代 pipreqs,大幅提升隐式依赖分析速度与准确度。
* **Playwright 镜像加速**:新增 Playwright 浏览器驱动的镜像源下载及官方 CDN 自动回退机制。
#### 改进
* **UPX 动态避让**:升级 UPX 压缩策略,自动识别并排除当前 Python 版本的核心 DLL 及 `vcruntime140_1.dll`,防止报错。
* **线程与中断控制**:强化构建取消与清理逻辑,避免线程残留与临时文件锁死。
* **平台兼容与超时保护**:优化 macOS Bundle Identifier 生成逻辑,增加命令执行超时保护机制。
* **界面细节调整**:重构打包模式单选区域,精简关于页面布局与间距,更新版权标识。
* **国际化翻译**:更新部分文字表述及翻译。
---
## [2.7.2] - 2026-08-03
### 改进
* **编译器选择策略调整**:取消之前对 Python 3.13+ 强行硬编码/限制使用 Zig 编译器的逻辑。改由优化后的自适应探测策略:优先检测本地 MSVC / Clang / GCC(MinGW64) 环境,若均未检测到,则转由 Nuitka 自动检测并托管下载兼容的 MinGW-w64 C 编译器工具链。
* **更新 Python 平台兼容性矩阵**:修正设置面板中 Python 解释器选择器的平台指示卡片,更加准确地反映 Nuitka C 后端编译器的自动选择与托管能力。
* **优化构建日志与提示**:当未检测到本地 C 编译器时,显示下载 MinGW-w64 提示;增加对本地编译器的显式识别与反馈。
* **界面提示微调**:优化附加资源列表提示,引导用户使用“导出预设”进行资源配置复用;简化临时目录选项文本,提升 UI 简洁度。
* **恢复默认依赖目录**:将 PyInstaller 单目录模式的依赖文件夹名称恢复为官方默认的 `_internal`,方便同类软件合并放置以共用运行库,减少磁盘占用。
* **优化交互状态保持**:拖入新脚本或重置工作区时,不再清空用户已配置的“自定义输出目录”,提升连续打包时的操作体验。
---
## [2.7.1] - 2026-08-02
### 新增
* **防锁临时目录选项**:设置页面新增“临时目录”位置选择,支持将 Nuitka 中间编译沙盒切换至系统 Temp 目录,解决 OneDrive/杀毒软件锁定文件导致的构建中断问题。
### 改进
* **无缝多版本重构建体验**:打包完成后,切换 Python 解释器或修改配置保存返回时,自动保持脚本载入状态,100% 完整保留图标、版本元数据、隐式导入与附加资源,告别重复拖入与重新加载预设的繁琐流程。
---
## [2.7.0] - 2026-08-01
### 新增
* **Nuitka 自动编译器嗅探与探测**:新增对 `Clang` (LLVM) 与 `Zig`(专为 Python 3.13+ C 后端优化)编译器的自动探测与调用支持,优先与系统 MSVC (`--msvc=latest`) 或 Clang 自动匹配。
* **免配置第三方库打包预设**:内置对 `ttkbootstrap`、`customtkinter`、`playwright`、`moviepy` 等高频报错/丢失资源库的自动化 `--collect-all` 与 `--collect-data` 处理,实现零配置打包。
* **双模式实时日志查看器**:引入“精简模式 (Concise)”与“详细模式 (Detailed)”双视图日志查看器,支持在面板上方一键无缝实时切换、清空与导出日志。
* **智能 Python 平台兼容性提示**:设置页面的 Python 解释器选择器新增动态指示卡片,实时展示对 Windows 7/8/10/11、macOS 及 Linux 的支持状态与官方下载引导。
* **构建容错与降级保护机制**:新增编译前物理内存与磁盘空间评估;遭遇 `ZstdError` (OOM 内存溢出) 时自动触发单线程 (`--jobs=1`) 降级重试;遭遇杀毒软件或系统锁定图标时自动触发剥离图标降级构建。
### 修复
* **源码 BOM 与编码解析兼容**:修复处理包含特殊 BOM (`utf-8-sig`) 或非标准系统回退编码的源码时,AST 模块可能抛出解码异常导致扫描中断的问题。
* **云盘锁定感知与预警**:修复工作所在目录受 OneDrive / Dropbox 等云盘锁定同步时,缺乏明确预警导致打包中断的问题。
* **控制台程序运行时崩溃**:修复因控制台“按回车退出逻辑与源码语法块作用域/闭合冲突引发的崩溃问题。
### 改进
* **AST 解析引擎原生化重构**:将源码隐式依赖扫描由子进程调用彻底重构为同进程原生 AST 模块解析,大幅降低系统资源开销并成倍提升扫描速度。
* **环境检索异步并发加速**:引入多线程异步并发检测机制,对系统内所有候选 Python 环境进行并行嗅探与版本校验,彻底消除软件启动时的 I/O 卡顿。
* **纯矢量 UI 规范与 Emoji 清理**:全面清理侧边栏、Tab 标签及语言列表中的 Emoji 表情,全量升级为 Google Material SVG 矢量图标栈,解决 Linux 及老旧 Windows 系统下的字体回退乱码与排版跳动问题。
* **卡片式动态构建状态反馈**:主面板拖拽区与状态栏支持实时捕获并渲染编译引擎(Nuitka / Scons / PyInstaller)极细粒度的编译进度文本,大幅缓解打包等待焦虑。
* **重构“关于”页面与赞助交互**:全新设计“关于”选项卡,引入可视化 GitHub、PyPI、Issues 动作行按钮及自愿赞助模块。
* **依赖安装弹性降级策略**:重构 pip 依赖构建逻辑,采用统一原子依赖清单;当指定严格版本号(`==`)安装失败时,自动剥离版本约束并拉取最新兼容版本。
* **跨平台原生字节流图标生成**:剥离对 macOS `sips` 命令行工具的强依赖,重构纯 Python 原生字节流拼装机制处理跨平台 `.ico` 与 `.icns` 生成。
* **扩展第三方包名映射库**:扩展内置包名映射字典,补充 `pyside6_addons`、`pyside6_essentials`、`attrs`、`psycopg2-binary` 等常见第三方包映射。
---
## [2.6.2] - 2026-07-27
* **新增界面推移动画**:重构切页逻辑,新增双图层平滑推移过渡动画,彻底消除从设置页返回主界面时的排版闪烁与图标跳动。
* **非打断式通知系统**:全面剥离强侵入式的 `QMessageBox` 阻塞弹窗,改用底部状态栏 Toast 轻量级通知,保障打包工作流连贯。
* **错误日志红色高亮**:遇致命异常、锁定文件或依赖缺失时,自动展开日志面板并以醒目红色 HTML 字体高亮呈现,便于快速定位。
* **GNU gettext 引擎重构**:引入 `TranslationEngine`,将全软件中文硬编码重构为英文原文 Base Key 模式;内置 `zh_CN` 兜底字典,实现零外部依赖运行。
* **全球主流多语言扩展**:新增日 (`ja_JP`)、韩 (`ko_KR`)、法 (`fr_FR`)、德 (`de_DE`)、西 (`es_ES`)、俄 (`ru_RU`)、葡 (`pt_BR`)、繁中 (`zh_TW`) 等语言包支持。
* **智能语言选择器**:设置界面新增语言切换下拉框,支持各国原生母语名称显示(如 Deutsch, Français),并能精准动态识别当前系统默认语言。
* **作用域变量冲突**:修复 `QFileDialog` 解构占位符 `fp, _` 意外覆盖全局翻译函数 `_()` 导致局部作用域崩溃的严重隐患。
* **Qt 动画引擎警告**:修复旧版 geometry 动画作用于 `QStackedLayout` 时抛出 `starting an animation without end value` 的底层警告。
* **PyPI 静态资源打包**:`pyproject.toml` 补全 `locales/*.json` 资源打包规则,確保 `pip install` 安装后多语言功能依然有效。
---
## [2.6.1] - 2026-07-25
* **消除依赖污染**:修复开启“精简模式”时,AST 引擎错误遍历整个父目录的 Bug,解决打包产物被混入无关依赖的问题。
* **构建沙盒隔离**:默认将目标脚本放入独立沙盒中解析,杜绝同目录其他脚本的依赖干扰;同时在 UI 界面新增“允许扫描同目录所有文件”开关。
* **MSVC 智能检测**:引入本地 C++ 编译环境智能嗅探。若系统已安装 MSVC,Nuitka 将自动启用 `--msvc=latest`,优先使用系统原生编译器,提升兼容性并免除耗时的 MinGW 下载。
* **UPX 警告静默**:自动识别并跳过系统核心动态库的 UPX 压缩报错,并小幅提升构建速度。
---
## [2.6.0] - 2026-07-24
### 🎨 交互与 UI 架构重构
* **重构 TAB 导航**:重新分配 TAB 布局,界面更加美观易用。
* **布局与字体精细化**:紧凑化引擎描述框布局;引入跨平台安全字体栈,零侵权风险且全平台优雅回退。
* **高分屏渲染优化**:优先提取 256px 高清图标图层,结合浮点精度绘制,解决 125%~200% 屏幕缩放下的图标模糊。
### 🛠️ 打包引擎与稳定性修复
* **防穿透包名兜底**:内置 C 扩展模块硬编码映射,避免出现找不到包的错误。
* **拦截虚假切源警报**:智能识别 pip 包名错误,避免在镜像源网络正常时误报“主镜像源连接超时”。
* **只读目录权限防护**:控制台防闪退注入脚本改写至系统临时目录,防止因源目录只读导致打包中断。
---
## [2.5.7] - 2026-07-23
* **完善日志右键菜单**:新增清空日志、导出日志功能。
* **下拉菜单与样式优化**:修复非编辑模式下拉框导致的文本重叠 Bug。
* **按钮与布局规格统一**:统一“浏览”、“AST 扫描”等工具按钮的长度和大小。
* **细节提升**:拖拽区域的主标题与副标题均开启自动换行,防止载入长路径文件时挤压主面板。
---
## [2.5.6] - 2026-07-23
* **PIP 双源备份**:新增备用镜像源配置与故障自动重试机制,内置国内主流 PyPI 镜像预设。
* **UI 与视觉重构**:重构 `QComboBox` 悬浮下拉框,统一极简白色主题与滚动体验;Tab 标签栏改为居中对齐,优化窗口最小宽度(710px)。
* **打包稳定性提升**:依赖安装全流程接管,支持主/备源自动降级切源;补全 PyInstaller Windows 版本元数据的 `VarFileInfo` 翻译头字段;优化精简模式下的排除模块策略。
---
## [2.5.5] - 2026-07-22
* **消除误删风险**:优化目录 `build/dist` 智能清理,保护桌面及工作区安全。
* **全沙盒隔离编译**:引入系统级临时目录隔离输出,彻底解决跨盘符与路径割裂异常。
* **修复路径映射与 UX**:构建 cwd 重定向至源码目录以完美解析相对路径;修正 `open_dist` 打开逻辑。
* **修复 pipreqs 崩溃**:解决依赖自动扫描过程中的编码中断问题。
---
## [2.5.4] - 2026-07-18
* **新增精简模式**:自动剔除 `pip`、`unittest` 等冗余库并启用 Nuitka `-OO` 优化,大幅缩减产物体积;配套深度源码静态扫描(至多检索 500 个本地依赖),保障极致精简下的运行稳定性。
* **修复 UPX 假性报错**:当未勾选 UPX 时,显式向引擎传递 `--noupx` 指令,阻断 PyInstaller 静默调用系统 UPX 造成的兼容性报错与日志干扰。
* **修复日志中文乱码**:对底层命令行调用 (`subprocess`) 全面强制追加 `encoding="utf-8"` 参数,彻底解决 Windows 默认编码 (GBK) 解析字节流时引发的控制台乱码。
---
## [2.5.3] - 2026-07-17
* **引擎版本锁定**:支持在高级设置中自定义 Nuitka / PyInstaller / pipreqs 的版本,杜绝上游更新导致的打包失败。
* **动态进度 UI**:主界面大字标题实时同步并轮播当前构建步骤,告别卡顿感与等待焦虑。
* **解决编译崩溃**:全局强制注入 UTF-8 环境,修复 Windows 中文系统下 Nuitka 解析 PyTorch 等库时因 GBK 编码导致的致命报错。
* **高分屏渲染修复**:解决非整数缩放(如 125%)下的字体发虚问题,清理冗余代码消除 DPI 权限报错。
* **依赖扫描自适应**:修复非 UTF-8 编码源码导致 `pipreqs` 分析崩溃的问题,支持自动回退本地编码。
* **智能解释器检索**:合并 `.EXE/.exe` 重复路径,默认选中当前环境,并剥离 `\\?\` 路径前缀以防子进程调用异常。
* **绝对无痕清理**:增加对 `nuitka-crash-report.xml` 与临时 `__pycache__` 的强制回收,绝不污染用户目录。
* **修复图标未更新问题**:修复添加新的打包会导致图标未能更新的问题。
---
## [2.5.2] - 2026-07-15
* **重构编译后端指令集**:将 PyInstaller 与 Nuitka 的底层打包参数生成逻辑重构为两套完全独立、互不干扰的构建分支,彻底消除参数污染隐患。
* **优化 Nuitka 附加资源兼容性**:针对 Nuitka 编译器在处理单个附加数据文件时,若目标相对路径为 `.` 会导致编译崩溃的问题进行了自适应修复 (`os.path.normpath` 路径标准化)。
* **修正 Nuitka 排除模块指令**:将排除特定模块参数修正为 Nuitka 官方标准的 `--nofollow-import-to`。
* **完善 Windows 二进制属性映射**:修正应用描述正确映射至 `--file-description`,应用名称映射至 `--product-name`,补充 `--product-version` 参数。
---
## [2.5.1] - 2026-07-15
* **多平台自动编译**:利用 GitHub Actions,在 windows-latest、macos-latest 和 ubuntu-latest 三种容器中并发运行,自动将产物打包归档并上传至 Tag Release 附件。
* **扁平风格**:清除 Emoji 表情,全面换装扁平化 Google 风格矢量图标。
* **修改版权信息显示**:删除标题栏作者信息,增加状态栏右侧常驻版权声明(自适应隐藏)。
---
## [2.5.0] - 2026-07-15
* **安全去耦与跨平台稳定性优化**:完全隔离 Windows 的 `winreg` 注册表静态调用,保障 macOS 与 Linux 等非 Windows 环境下的静态加载安全性。
* **自适应图像格式转换引擎**:引入全新的 `convert_image_to_format` 弹性图形转译机制,支持 SVG、PNG、JPG 转换为 `.ico` 与 `.icns`。
* **应用元数据精准转译与写入**:Windows 下自动动态写入 `VSVersionInfo` 元数据,macOS 平台自动映射生成规范的 Bundle ID(如 `com.company.appname`)。
* **多维异构构建产物精准提炼**:重构底层产物移动(Move)与重置逻辑,精准捕获 Windows `.exe`、macOS `.app` 以及 UNIX 无后缀二进制。
---
## [2.4.6] - 2026-07-12
* **跨平台兼容性适配**:修复底层进程调用中 Windows 平台专有 `creationflags` 导致非 Windows 系统崩溃的异常;重构 UNIX 环境下的 Python 解释器探测器。
* **UI 现代化重构与 UX 体验升级**:采用卡片式容器布局 (Card-based Layout),引入“胶囊式子导航 (Pill-Tabs)”,全面解决低分辨率缩放下的组件挤压问题。
* **多版本内核独立编译沙盒**:支持全局指定或浏览任意版本的 Python 解释器,并在专属内核沙盒中完成代码解析与独立编译。
* **关于界面视觉重构**:引入原生交互式动作行 (Action Row),支持无缝调用系统浏览器跳转开源仓库;修复 ICO 图标抗锯齿失真问题。
---
## [2.4.5] - 2026-07-06
* **源码解析安全修复**:移除了进行依赖扫描和控制台防闪退注入时对源码换行符 (CRLF 强转 LF) 的干预,修复潜在的多行字符串解析错误及文件破坏问题。
---
## [2.4.4] - 2026-07-06
* **附加资源可视化管理**:引入列表化管理组件,支持通过图形化对话框分别添加“文件”和“文件夹”,并支持双击列表条目修改相對釋放路徑。
* **路径解析引擎升级**:重写底层存储与 `--add-data` 指令拼接逻辑,解决绝对路径被错误切割的解析隐患。
---
## [2.4.3] - 2026-07-01
* **自定义依赖清单支持**:新增指定依赖文件路径配置,支持为不同脚本绑定不同的 `requirements.txt`。
* **修复控制台模式下导入及资源读取异常**:调整控制台防闪退代码注入逻辑,将临时入口文件限制在源脚本同级目录下,规避相对导入 (Import) 失效。
* **重构后台分析线程控制逻辑**:废弃不安全的 `QThread.terminate()`,采用解绑信号的处理机制,降低界面卡死或死锁概率。
* **提升 Nuitka Standalone 打包兼容性**:改用动态扫描匹配 `.dist` 产物文件夹,避免入口重命名导致的构建异常。
---
## [2.4.2] - 2026-06-28
* **编译语法异常诊断**:编译失败时,自动扫描构建日志,精准识别源码中的 `IndentationError`、`SyntaxError` 和 `TabError`。
* **精准定位错误源**:解析并高亮展示语法错误的源文件名、行号及错误描述,区分“源码逻辑异常”与“打包工具故障”。
---
## [2.4.1] - 2026-06-25
* **模块化配置重构**:重构设置面板,将参数分类为“应用元数据”、“编译控制”、“资源与沙盒”、“软件设置”四大模块。
* **自定义归档目录**:支持将编译产物输出至全局指定的自定义目录,并支持对缺失的多级父目录进行自动递归创建。
* **并发编译限制**:支持手动限制打包引擎并发编译时占用的最大 CPU 核心数。
* **编译提示音效与自动日志保存**:引入系统级音频通知,并在任务结束后支持在目标输出路径自动保存 `.log` 运行日志。
---
## [2.4.0] - 2026-06-22
* **控制台防闪退机制**:非 GUI 模式打包时,自动在临时脚本尾部注入防闪退控制代码。
* **提升文件删除鲁棒性**:重构临时目录清理机制,引入带重试延时与只读属性解除的 `robust_rmtree` 回收机制。
* **云盘锁状态前置拦截**:对处于 OneDrive 等云同步锁定状态的文件提供前置 I/O 异常检测。
* **持续集成与自动发布**:新增 GitHub Actions 工作流,推送 Tag 自动触发 PyPI 发布与 GitHub Release 附件上传。
---
## [2.3.5] - 2026-06-17
* **防漏包机制**:重构依赖拉取架构为“三重绝对安全网”(`Requirements -> Pipreqs -> AST 源码强扫`),彻底解决漏包闪退问题。
* **工作区零污染**:配置文件迁移至全局路径 `~/.qpypack/config.ini`,所有中间产物转移至系统 Temp 目录。
* **构建日志规范化**:引入规范的 CI/CD 生命周期状态标签 (`[Init]`, `[Env]`, `[Deps]`, `[Build]`, `[Pack]`)。
* **虚拟环境沙盒智能自愈**:分配隔离 venv 后自动升级 pip,清除老旧模块的大段警告乱码。
---
## [2.3.0] - 2026-06-15
* **UI 框架重构**:由 PyQt5 升级至 PySide6,优化高分屏 (High-DPI) 缩放表现。
* **精简架构**:移除 cx_Freeze,专注打磨 PyInstaller 与 Nuitka 双核心引擎。
* **Nuitka 最佳实践**:单文件模式下强制启用 `zstandard` 压缩;引入 `anti-bloat` 防膨胀插件;自动识别 `tkinter` 探针。
---
## [2.2.0] - 2026-06-14
* **更名与规范**:正式更名为 **QPyPack**,规范化内部沙盒与临时文件命名。
* **超时守护 (Watchdog)**:引入看门狗机制,为关键打包步骤设置超时限制,防止构建无限期挂起。
* **智能命名输出**:自动解析脚本版本,预设输出文件名为 `{Name}_{Version}` 格式。
---
## [1.0.1] - 2026-05-31
* **自定义 PIP 镜像源**:引入 PIP 镜像源配置,默认使用清华大学开源镜像源,支持修改即时生效与 QSettings 持久化存储。
* **构建逻辑统一**:虚拟环境初始化与依赖解析统一走用户配置的自定义 PIP 镜像源。
---
## 📄 License
Copyright (C) 2026 QwejayHuang.
Licensed under the [GNU General Public License v3.0](LICENSE).