Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

💠 GI Bot 1.x 改进提案 #115

Open
7 of 14 tasks
1shin-7 opened this issue Jan 31, 2023 · 2 comments
Open
7 of 14 tasks

💠 GI Bot 1.x 改进提案 #115

1shin-7 opened this issue Jan 31, 2023 · 2 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@1shin-7
Copy link
Collaborator

1shin-7 commented Jan 31, 2023

目标: 在不更新额外功能的情况下保证1.x可以独立使用 => 1.x LTS

  • 重要
    • 添加tag以区分版本[tag]
    • 移除未使用的branch, 将现有的分支改为hoshino_oldnonebot_alpha 新增core
    • 清光Issues[1]
  • 代码
  • 地图
    • 使用异步下载[2]
    • 小改地图类
    • 改进绘制策略 (?)
  • 图像/数据源
  • 资源
    • 对图像等资源统一管理[4]
  • 启动体验
    • 优化下载[5]
  • 可能实施的变更
    • 一键脚本 (?)
    • 对项目进行小幅度重构[refmt]
    • 将核心部分拆分到core分支以解决不同bot平台间存在问题以及更新麻烦的问题

注:

  • [1] 现有的Issues囤积过多, 最早的更可追溯到2020年
  • [2] 同步下载地图资源会对bot启动造成一定程度的阻塞
  • [3] 现在使用的G-HW内鬼网作为图鉴来源比较不稳定,加之国内访问不佳,故考虑使用效率更高、访问延迟相对较优、无需解析网页以获取数据的 Amber Project 作为数据源及图鉴源;同时保留扩展性,支持使用国内数据(镜像)[对比图]
  • [4] 现在存在单一资源重复导入/资源存储位置较为分散等问题 考虑进行如下改变:
    • 统一资源目录
    • 统一导入资源
    • 单个插件初始化时声明所需资源 (?)
  • [5] 使用进度条,并且单行显示资源下载进度及文件名以减少终端输出
  • [6] 由于无必要性及考虑到完成工作消耗的时间, 可能完全不实施. 不过综合考虑, 优先实施核心解耦还是有一定必要性的, 这样可以大幅降低上述工作的时间.
  • [6] 由于项目前期使用的vscode等编辑器导致部分代码格式相对不标准 为提升易读性, 在PyCharm提供的一键格式化&优化导入的同时, 对非标准变量进行一定程度的重命名以提升可读性
  • [tag] 版本tag: 分三段: v{大版本}.{功能更新}.{bug修复} 根据CHANGELOG中的每一个项目来定义版本
  • [log] 原本使用loguru来避免直接print导致的终端格式问题;而事实上Nonebot提供了一个标准的logger:from noenbot.log import logger,Nonebot2才是默认使用 loguru 因此可以直接仿照nb1的格式使用logging.Logger或者直接使用nb提供的logger来输出,而不是使用额外的loguru库。

附: 对比图

image
image

@1shin-7 1shin-7 added the enhancement New feature or request label Jan 31, 2023
@1shin-7 1shin-7 changed the title 💠 GI Bot 1.x 长期可用提案 💠 GI Bot 1.x 改进提案 Jan 31, 2023
@1shin-7 1shin-7 pinned this issue Jan 31, 2023
@1shin-7 1shin-7 modified the milestone: LTS Jan 31, 2023
@1shin-7
Copy link
Collaborator Author

1shin-7 commented Feb 2, 2023

反思

由于过于急功冒进,总想搞个大新闻,在Issues未解决完毕,项目本身无法实现自给自足,加之计划未完全成熟时贸然开启2.0计划而由于生活原因导致无法在短期内完成乃至拖延长达一年时间 造成项目年久失修甚至用户流失。

完成LTS计划不失为将功补过之策


真正的GI Bot 2.0计划将在此Issue和关联PR完全解决,全部Isseus清理干净后启动,后续不再加入或者只根据Issue提议加入功能,转而进行bug修复。

虽说如此,但与GI Bot 2.0相关联的GAPI仍可能与LTS计划同时进行以方便获得稳定的圣遗物评分等操作。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

2 participants