Py2exe-GUI/docs/ROADMAP.md
2023-12-09 17:35:31 +08:00

2.8 KiB
Raw Blame History

开发待办事项

控件

  • 子进程窗口 SubProcessDlg
    • 将子进程的输出与状态显示至单独的对话框
    • 增加多功能按钮
    • 关闭窗口时中断子进程、清除输出
    • 处理不能正确显示子进程错误的问题(会被“打包完成”遮盖)
    • 增加「将输出导出到日志文件」功能
    • 增加简单高亮功能
  • 添加资源文件窗口
    • --add-data--add-binary--paths--hidden-import
    • 模仿 Windows “编辑环境变量” 窗口,左侧条目,右侧添加删除编辑等按钮
  • Python 解释器选择器
    • 文件浏览对话框选择解释器可执行文件
    • 处理解释器验证器返回结果,异常时弹出对话框要求用户自行检查确认
    • 创建「解释器环境类」,保存解释器路径等信息
    • ComboBox 中列出各解释器将解释器环境类保存在userData中
    • 快捷显示已安装的 PyInstaller 版本,未安装则提供「一键安装」
    • (?) 识别系统解释器/venv/Poetry/conda等
  • 命令浏览器
    • 显示将传递给 PyInstaller 的选项列表
    • 高亮提示
    • 以终端命令格式显示完整命令,并添加续行符
  • "What is this" 提示
  • 右键菜单,添加指向对应 PyInstaller 文档,提供完整帮助信息
  • PyInstaller 选项参数详解表格
  • 主窗口状态栏显示软件版本
  • 「一键调试」模式,自动选择 --onedir--console--debug 等利于调试的选项

打包

  • 选项参数获取
    • 将参数拼接成完整调用命令
    • 参数预览器控件
    • 使用枚举值控制参数
    • 优化拼接代码
  • 调用 PyInstaller 子进程
    • 使用 QProcess 替代 subprocess 以解决界面卡死问题
    • 优化子进程相关代码,增强异常处理
  • 打包任务
    • 创建打包任务,保存所有选项
    • 创建 .spec 文件
    • spec 编辑器

界面

  • 实现跨平台功能
    • 获取当前运行平台
    • 保存至全局变量中
    • 定制各平台特有功能
  • 使用 qrc 管理静态资源
  • 翻译与国际化
    • Qt 提供的界面文本自动翻译
    • 自实现的不同语言下功能差异如“打开PyInstaller文档”指向不同的链接等

应用程序级

  • 解决相对引用与作为包运行问题
  • logging 日志记录
  • 将用户设置保存到文件中存储

美化

  • QSS 与美化
  • 动画效果

构建与分发

平台:

  • Windows 发行版
  • Linux 发行版

分发方式:

  • GitHub Releases
  • Arch Linux AUR
  • Ubuntu PPA