目标: 在不更新额外功能的情况下保证1.x可以独立使用 => 1.x LTS
- 重要
- 代码
- 地图
- 图像/数据源
- 资源
- 启动体验
- 可能实施的变更
注:
- [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库。
附: 对比图


hoshino_old和nonebot_alpha新增coreloguru依赖[log]core分支以解决不同bot平台间存在问题以及更新麻烦的问题注:
v{大版本}.{功能更新}.{bug修复}根据CHANGELOG中的每一个项目来定义版本loguru来避免直接print导致的终端格式问题;而事实上Nonebot提供了一个标准的logger:from noenbot.log import logger,Nonebot2才是默认使用 loguru 因此可以直接仿照nb1的格式使用logging.Logger或者直接使用nb提供的logger来输出,而不是使用额外的loguru库。附: 对比图