Releases: LamGC/ScalaBot
Releases · LamGC/ScalaBot
v0.8.0-1
v0.8.0
v0.8.0 (2024-12-11)
BREAKING CHANGE
- ScalaBot 所依赖的 TelegramBots 发生重大更改, 所有扩展都需要进行适配.
有关 TelegramBots 的重大变更说明和迁移指南请参考TelegramBots官方文档.
ScalaBot 的最低 Java 版本已全部升级至 Java 17 (这是 TelegramBots 的最低兼容性要求), 所有扩展都应该至少迁移至 Java 17 版本.
ScalaBot 的重大更改:- scalabot-extension
net.lamgc.scalabot.extension.util.AbilityBots.getBotAccountId(BaseAbilityBot): long
已被移除, 由于 BaseAbilityBot 不再允许获取 botToken, 因此该方法被移除. 作为代替, 请通过net.lamgc.scalabot.extension.BotExtensionFactory.createExtensionInstance
所得到的BotExtensionCreateOptions
中获取 botAccountId.
- scalabot-extension
Feat
- 将 TelegramBots 升级至 8.0.0, 并适配 TelegramBots 的新改动.
Refactor
- extension: 使用 URI 而不是 URL 来排除重复项, 以避免潜在的 URL hashCode 问题.
v0.7.0
v0.6.1
v0.6.1 (2023-08-03)
Fix
- config: 将 local 列为 Maven 仓库 Id 的保留字.
Deps
- 为避免引入旧的依赖, 该版本开始 scalabot-extension 将不再引入 slf4j-api 模块.
- TelegramBots 依赖更新到 6.7.0 版本.
v0.6.0
v0.6.0 (2023-02-21)
⚠️ BREAKING CHANGE
运行指标名称变更
新的指标名称将以 scalabot_
开头,并且新增 bot_id
Label。
# Before
telegrambots_updates_total{bot_name="Test_Bot"} 1
#After
scalabot_telegrambots_updates_total{bot_name="Test_Bot", bot_id="10000"} 1
如果用户启用了运行指标功能, 请注意修改指标的名称。
💡Feat
- metrics: 指标信息增加 bot_id label.
- logging: 支持通过参数控制日志输出级别.
⛏Refactor
- launch: 在启动时输出 JVM 和 Kotlin 的版本号.
- launch: 将 AppPaths 从 Launcher 解耦.
- metrics: 为指标增加 namespace 名称.
v0.5.2
v0.5.2 (2022-10-20)
Fix
- 更新 jackson-databind 依赖版本以缓解 CVE-2022-42004 漏洞.
- dependencies: 更新 Commons-codec 依赖项的版本.
v0.5.1
v0.5.1 (2022-08-23)
Fix
- extension: 修复 ExtensionClassLoader 无法过滤非扩展包内 BotExtensionFactory 对象的问题.
- logging: 修复日志滚动文件路径错误.
- launch: 修复缺省的 Maven 中央库不遵循代理规则的问题.
Refactor
- 补充缺失代码.
- utils: 把日志记录器的获取方式改的优雅一点(对于测试来说).
- config: 重构 AppPaths 的构造方法, 应对将来 Kotlin 更新中的特性.
v0.5.0
更新日志
Refactor
- extension: 将构件下载请求跟构件解析请求对齐.
- extension: 在 MavenRepositoryExtensionFinder 增加一个扩展包信息日志.
- launch: 统一代理的使用.
- meta: 为 ProxyConfig 覆盖 toString 方法.
- launch: 更改初始化配置中, 退出进程的时机.
- config: 调整序列化工具类, 便于进行测试.
- config: 对配置文件的 AppPath 对象更名.
- metrics: 调整 MetricsHttpServer 注册关闭钩子的时机.
Feat
- launch: 延后 BotConfig 的反序列化时机, 以防止因某一个机器人配置错误而导致全部配置加载失败.
- config: 增加 BotAccountSerializer, 主要用于检查字段值.
Fix
- config: 修复因使用了错误的 Gson 对象而导致的配置初始化警告.
Perf
- extension: 优化 printExtensionFileConflictError 日志输出.
v0.4.0
更新日志
Feat
- meta: 新增 meta 模块.
- config: 新增 HTTPS 代理类型, 增加 Maven 对 HTTPS 代理的支持.
- metrics: 运行指标服务端支持设置 HTTP 认证.
Fix
- config: 修复潜在的无状况错误问题.
- config: 修正 BotConfigSerializer 中使用的错误默认值.
- config: 添加两个序列化器来修复因 Gson 导致的解析错误.
- utils: 修复 deepListFiles 错误地返回了 null 的情况.
Refactor
- config: 更改 BotConfig.enabled 的默认值为 false.
- config: 更改部分配置类的属性默认值.
- config: 包装 Serializer 可能抛出的异常.
- config: 调整方法访问权.
- database: 为旧版数据库适配器添加 @deprecated 注解.
- config: 将与配置相关的内容迁移到 scalabot-meta 模块.
- config: 改进配置读取错误时输出的错误信息.
Perf
- config: 优化配置使用过程中的判断.
- config: 优化 Artifact 的序列化过程.
- utils: 优化 Artifact 的判断条件.
BREAKING CHANGE
- 与配置有关的 Class 移动到了 scalabot-meta 模块. (普通用户无需执行任何操作,该改动面向开发者)
v0.3.1
更新日志
Feat
- config: 简化凭证配置过程.
- config: 将代理类型为 null 的情况视为不使用代理.
Refactor
- test: 调整 checkJsonKey 的所在类, 以便于编写测试用例.
Fix
- config: 修复因 Maven 仓库配置中未包括 layout 属性导致解析错误的问题.
- config: 更改 MavenRepositoryConfig.proxy 的默认值.
警告:依赖仓库变更
由于我自建在 Github 的 Maven 仓库存在不少问题,因此现已将构件转移至自建的 Nexus 仓库。
旧版本可继续沿用 Github 仓库,新版本将只会发布到 Nexus 仓库,请注意更改仓库地址。
新的仓库(暂时)地址为:
https://nexus.kuku.me/repository/maven-public/
目前已将 scalabot-extension
历史版本发布到新仓库。