|
e1c87aeae4
|
feat: 将 TelegramBots 升级至 8.0.0, 并适配 TelegramBots 的新改动.
将 TelegramBots 升级至新版本, 以支持新的 API.
由于 TelegramBots 发生无法兼容旧版本的重大变更, 因此 ScalaBot 将随着此次更新一同进行重大更改.
BREAKING CHANGE: ScalaBot 所依赖的 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 中的 `org.jetbrains.kotlinx.binary-compatibility-validator` 似乎不再对 Java 代码起作用, 因此移除该插件, 并在后续寻找替代品.
TelegramBots 文档: https://rubenlagus.github.io/TelegramBotsDocumentation/how-to-update-7.html
|
2024-12-10 23:32:29 +08:00 |
|
|
eda0e522cd
|
docs(config): 补充关于 Gson 类型适配器的使用指导.
为 AppConfig 和 BotConfig 补充关于 Gson 类型适配器使用的信息, 以便于开发者正确使用类型适配器解析和编码 Json.
|
2022-07-22 21:59:14 +08:00 |
|
|
e8711e9974
|
refactor(meta): 为 ProxyConfig 覆盖 toString 方法.
覆盖 toString 方法后, 可以输出易懂的代理信息(我担心按照 data class 的格式输出, 用户可能看不懂).
|
2022-07-16 20:26:45 +08:00 |
|
|
5843e37196
|
docs(config): 补充配置类的文档.
由于先前的更新忘记补充文档了, 所以补充一下.
|
2022-06-26 13:25:44 +08:00 |
|
|
581eeba20b
|
feat(config): 新增 HTTPS 代理类型, 增加 Maven 对 HTTPS 代理的支持.
为 ProxyType 增加 HTTPS 类型, 同时为 Aether 增加 Https 代理支持, 方便用户使用现有的公开代理下载依赖包.
|
2022-06-25 23:00:51 +08:00 |
|
|
4a160ad42b
|
refactor(config): 更改 BotConfig.enabled 的默认值为 false.
更改 enabled 的默认值, 以防止意外启动 Bot.
同时让 bot.json 在初始化时设为 true, 方便用户改完就能启动.
|
2022-06-24 19:10:39 +08:00 |
|
|
a1790a0716
|
perf(config): 优化配置使用过程中的判断.
通过调整部分属性的 null-safety 特性, 移除了部分 non-null 判断, 略微(真的很略微)提高了性能(虽然仅限于启动).
|
2022-06-24 19:08:41 +08:00 |
|
|
b12758bd18
|
refactor(config): 更改部分配置类的属性默认值.
为了保证扩展中命令的权限判断有效性, 故移除 BotAccount 中 creatorId 字段的默认值, 此改动将要求用户提供准确的 Bot 创建者 Id.
这个改动拖得越久, 影响的范围就越大.
另外, 为 BotConfig 中的 extensions 属性和 proxy 属性增加默认值, 以减少意义重复的情况(例如当用户没设置 proxy 属性时提供一个 type 为 NO_PROXY 的 ProxyConfig, 无需判断是否为 null).
|
2022-06-24 02:00:11 +08:00 |
|
|
289b9678f2
|
refactor(config): 将与配置相关的内容迁移到 scalabot-meta 模块.
通过将配置迁移到单独的模块, 可以方便使用其他程序扩展 ScaleBot, 而不仅仅是让 ScaleBot 成为扩展的平台.
BREAKING CHANGE: 与配置有关的 Class 移动到了 scalabot-meta 模块.
目前仅所有配置类(以 `Config` 结尾的 Class)和相应的序列化类(以 `Serializer` 结尾的)都迁移到了 meta 模块, 但其工具方法则作为扩展函数保留在 app 模块中.
这么做的好处是为了方便其他应用(例如 ScalaBot 外部管理程序)根据需要生成配置文件.
scalabot-meta 将会作为依赖项发布, 可根据需要获取 ScalaBot-meta 生成 ScalaBot 的配置.
此次改动普通用户无需迁移.
|
2022-06-20 20:55:04 +08:00 |
|