常规迭代
1. 增加TK组件支持。当前版本中使用了完整Python包,LZMA标准64-64压缩后体积相较嵌入式版本增加10M左右,但提供了TK等非高频Python内置库的支持,同样pip也是满血状态。
2. 增加CUDA版本选择。当Requirements文件中`paddlapaddle-gpu`后无任何`postxxx`版本号时,默认不进行搜索,而且提示用户输入想要安装的CUDA版本。需要注意的是,该版本中仍不提供已安装的本地CUDA列表信息,此处可能需要多尝试几次才会熟悉。使用说明详见[增加CUDA模块 - 无需用户手动安装CUDA也可使用GPU加速](https://github.com/GT-ZhangAcer/QPT/blob/main/examples/advanced/%E5%A2%9E%E5%8A%A0CUDA%E7%9A%84%E6%94%AF%E6%8C%81.md)
3. 增加系统漏洞检测机制。在盗版/早期的Win7系统中,向用户提供的安装镜像可能不带有重要的运行库修补补丁,然而没有这些补丁会影响到Python的使用,在该版本中验性增加了检测机制,引导用户在遇到该问题时安装杀毒软件并修复系统漏洞。
4. 增加对临时目录运行检测。考虑到部分用户可能在使用打包后的软件时会直接在压缩软件里运行,这样可能会引起部分Python依赖库安装失败的情况,例如日常内鬼的OpenCV。在该版本中会向用户弹出警告框,以此劝他解压一下吧~
5. 修改了Release文案。目的很简单,这次明确提示了这个警告框只会在自己的系统中运行!
6. 增加Logging统计模块。由于打包过程中可能会有很多的输出信息,若遇到了报错也可能会被忽略,在该版本中我们增加了统计模块,若打包中遇到了报错则会在打包尾声时告知开发者有了什么样的报错信息,并需要开发者进行确认。
7. copytree增加乞丐版进度条表示,这样就能清楚的认识到,不是卡了,真的不是卡了,是他在复制文件!
8. SubModule对opt目录下的op文件加判断。避免部分用户的“有损”压缩软件最后多造出了几个文件,然而这些文件会被QPT误以为是Op文件。
9. 增加在打包后默认弹出资源管理器的功能。作为一个懒人,实在是不想手动参加`此电脑->某盘->某文件夹->...->打包后的那个文件夹`这样频繁的找目录环节,该版本直接弹出,解决问题。
10. 加个全局安装状态。还在发愁用户在安装一半就关掉对话框吗?他可能以为软件卡了,抱着试试看的态度关掉了对话框,然后重新打卡时确又发现不对劲,它怎么没救了!救命啊!然后就找到了你,你也只能告诉他,重新解压!要删除之前的!要多等他一会儿!在这个版本中,大概率不用这样的操作了,因为如果第一次没有运行成功,后续仍会进行安装,直到他安装成功为止。
Fix Bugs
1. 对用户名为空格的情况进行判断,避免临时文件释放至带有空格的用户名路径下
2. 对Terminal也设置环境变量,这样就能防止因用户本地安装了Conda家族产品而导致的“找不到入口”这样人畜无害但又精神污染的警告框。
3. 对BatchInstall模块速度进行优化,并不会像之前那样为了稳定而把Python包重新安装,毕竟现在Pip是满血的不是。
4. 对copytree增加freeze,避免打包了被打包的那个文件,然后反复套娃最终导致硬盘被噎住的可怜表情。