|
c144755913
|
feat(config): 增加 BotAccountSerializer, 主要用于检查字段值.
增加 BotAccount 的序列化器, 便于检查有关字段的值是否有效.
|
2022-07-03 02:32:37 +08:00 |
|
|
9b7fc30512
|
fix(config): 修复因使用了错误的 Gson 对象而导致的配置初始化警告.
导致的原因是在初始化 app.json 时错误的使用了 botConfigGson, 而 botConfigGson 未配置用于 MetricsServer 的 UsernameAuthenticator 序列化器, 导致在初始化配置文件中序列化 AppConfig 时, Gson 会反射调用 BasicAuthenticator, 导致被 Java 模块系统拦截并报错, 现已修复该问题.
|
2022-07-02 22:01:05 +08:00 |
|
|
27dc26160d
|
refactor(config): 对配置文件的 AppPath 对象更名.
先前为确保后续可以增加指定配置文件路径的功能, 在命名上标记的 DEFAULT 在现在已经不符合实际意义了, 故将 DEFAULT 前缀移除.
|
2022-06-30 00:15:07 +08:00 |
|
|
ae411ce829
|
refactor(metrics): 调整 MetricsHttpServer 注册关闭钩子的时机.
将关闭钩子的时机调整到 main 方法中, 可以减少多余的钩子注册(比如测试时无需注册钩子, 却还是注册了).
|
2022-06-29 03:06:15 +08:00 |
|
|
1afe0f07a8
|
perf(extension): 优化 printExtensionFileConflictError 日志输出.
Kotlin-logging 在日志输出方法中做了检查, 如果级别未开启则不会调用方法获取日志内容,
故将内容构造部分移入 error 代码块以避免无意义的生成日志内容.
|
2022-06-29 03:03:16 +08:00 |
|
|
099c452fe7
|
feat(meta): 新增 meta 模块.
将与配置相关的内容迁移到 scalabot-meta 模块.
其他项目可以使用 meta 模块来生成 ScalaBot 的配置文件, 通过配置文件管理 ScalaBot 的运行.
BREAKING CHANGE: 与配置有关的类迁移到了 scalabot-meta 模块.
目前仅所有配置类 (以 `Config` 结尾的 Class) 和相应的序列化类 (以 `Serializer` 结尾的) 都迁移到了 meta 模块, 但其工具方法则作为扩展函数保留在 app 模块中.
这么做的好处是为了方便其他应用 (例如 ScalaBot 外部管理程序) 根据需要生成配置文件.
scalabot-meta 将会作为依赖项发布, 可根据需要获取 ScalaBot-meta 生成 ScalaBot 的配置.
+ 此次改动普通用户无需迁移。
|
2022-06-27 19:24:52 +08:00 |
|
|
581eeba20b
|
feat(config): 新增 HTTPS 代理类型, 增加 Maven 对 HTTPS 代理的支持.
为 ProxyType 增加 HTTPS 类型, 同时为 Aether 增加 Https 代理支持, 方便用户使用现有的公开代理下载依赖包.
|
2022-06-25 23:00:51 +08:00 |
|
|
896305f4a3
|
style: 改一下代码格式.
把“宝塔”改掉, 看起来太难受了.
|
2022-06-25 21:17:27 +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 |
|
|
8a33448b19
|
refactor(config): 调整方法访问权.
迁移前, createDefaultRepositoryId 方法和 checkRepositoryLayout 方法已经是 Private 了,
迁移中出现差错导致变更为 internal, 现已修复.
Pull Request #8
|
2022-06-23 03:52:04 +08:00 |
|
|
45244c1fb1
|
build: 将子项目间共用的 Plugin 声明在根项目.
根据 Gradle 建议[1], 可以将子项目中都有使用的插件, 更改到根项目中, 这么做可以让我们仅更新根项目的插件版本, 让 Gradle 自动同步子项目的插件版本.
---------------------------------
[1]: https://docs.gradle.org/current/userguide/plugins.html#sec:subprojects_plugins_dsl
|
2022-06-22 15:02:30 +08:00 |
|
|
c64f5e739b
|
refactor(database): 为旧版数据库适配器添加 @Deprecated 注解.
添加注解以表明该适配器已弃用, 但仍然保留适配器以保证旧版数据库正常使用(并迁移到新版数据库).
|
2022-06-21 01:43:54 +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 |
|
|
dbc4232dd6
|
test(config): 调整 BotAccount 的单元测试代码.
调整代码有利于后续更新测试用例时减少出错的可能性(虽然基本不换), 修复一个词汇错误.
|
2022-06-20 16:01:35 +08:00 |
|
|
c662b970f0
|
test(utils): 补充 deepListFiles 的单元测试.
补充单元测试项, 目前已实现 Utils 单元测试全覆盖(Logger Class 不算).
|
2022-06-19 02:47:26 +08:00 |
|
|
f148c21390
|
fix(utils): 修复 deepListFiles 错误地返回了 null 的情况.
预期中, deepListFiles 返回 null 与否是与 listFiles 相同的, 当 File 无法访问, 或者不是一个目录的情况下才会返回 null,
但由于语法疏漏, 导致可能出现即使 listFiles 返回 null 时 deepListFiles 也不返回 null 的情况.
现已修复该问题.
|
2022-06-19 02:07:24 +08:00 |
|
|
c41aac735c
|
build: 更新依赖项版本.
已确定无兼容性问题.
|
2022-06-18 09:57:03 +08:00 |
|
|
ae64de00e7
|
test(config): 完善 AppPaths 类的单元测试.
补充分支测试内容.
|
2022-06-18 09:53:45 +08:00 |
|
|
215a4670db
|
feat(metrics): 运行指标服务端支持设置 HTTP 认证.
支持对运行指标服务端设置 HTTP 认证, 以防止运行指标被非法获取.
|
2022-06-18 09:20:46 +08:00 |
|
|
c5fe96c02d
|
test: 新增对 BotAccount.id 字段的单元测试.
该测试有助于确保 id 能正常地从 Token 中获取.
|
2022-06-15 02:22:58 +08:00 |
|
|
508f14f271
|
test: 新增对 Artifact.equalsArtifact 的完整单元测试.
该测试已确保完全覆盖(100%).
|
2022-06-15 02:19:14 +08:00 |
|
|
35c77f6093
|
perf: 优化 Artifact 的判断条件.
根据相关文档[1], baseVersion 和 Version 不需要同时判断, 只需要单独判断 Version 即可确认版本是否符合.
另外, 如果 Version 不符, 那么 isSnapshot 就没有必要判断(不可能出现 Version 相同的情况下, 一个是快照版, 一个是发布版的情况), 故移除对 baseVersion 和 isSnapshot 的检查.
另外, Properties 属于 Aether 内部的非持久化信息交换方式, 不是必须纳入检查的项目, 故新增参数用于选择是否检查 Properties 是否相同.
------------------------------------
[1]: https://community.sonatype.com/t/what-is-the-differences-between-maven-baseversion-and-maven-version/2937
|
2022-06-15 02:18:01 +08:00 |
|
|
7e48f4bf0b
|
build(test): 增加 Kover 测试覆盖率插件, 升级 Mockk 依赖项版本(1.12.3 -> 1.12.4).
Kover 是 Kotlin 官方为弥补 Kotlin 不能使用 Jacoco 所推出的替代品, 目前使用上没有问题.
顺便更新一下 Mockk 版本.
|
2022-06-15 01:20:35 +08:00 |
|
|
9c05726849
|
refactor(config): 改进配置读取错误时输出的错误信息.
改进后的信息有助于让用户了解到底发生了什么, 可帮助用户找到出错的配置文件并修复错误的配置格式.
|
2022-06-11 16:19:08 +08:00 |
|
|
b5c85e213b
|
test: 完善序列化器的单元测试.
目前经测试, 已完善到 100% 覆盖率.
|
2022-05-19 23:54:27 +08:00 |
|
|
746221a085
|
feat(config): 简化凭证配置过程.
由于先前的配置过程较为麻烦, 故将凭证配置简化为只有用户名和密码.
|
2022-05-19 23:53:25 +08:00 |
|
|
24f34aa27f
|
refactor: 调整 checkJsonKey 的所在类, 以便于编写测试用例.
通过调整所在类, 可更好的在单元测试中获取方法对象, 进行测试调用.
|
2022-05-19 18:20:46 +08:00 |
|
|
31366575a9
|
test: 补充部分序列化单元测试.
补充一部分测试内容.
|
2022-05-19 17:55:36 +08:00 |
|
|
37c3275bb6
|
fix(config): 修复因 Maven 仓库配置中未包括 layout 属性导致解析错误的问题.
当 Maven 仓库采用 JsonObject 形式配置, 且未配置 "layout" 属性时, 将会引发 NPE,
该改动已修复该问题.
|
2022-05-19 16:54:47 +08:00 |
|
|
72e26bd677
|
fix(config): 更改 MavenRepositoryConfig.proxy 的默认值.
防止因默认值导致出现错误的代理配置, 故将默认值更改为无代理(null).
|
2022-05-19 16:43:25 +08:00 |
|
|
9aab3c2a24
|
feat(config): 将代理类型为 null 的情况视为不使用代理.
为简化用户配置难度, 关闭代理可选择将 type 设为 null, 来表示不需要使用代理.
|
2022-05-19 15:46:18 +08:00 |
|
|
cac055bb08
|
test: 完善 AppPaths 中对 BOT_DATA_PATH 环境变量的测试流程.
通过使用 System-Lambda 库, 补充 AppPaths 中对环境变量使用的测试.
|
2022-05-19 15:01:16 +08:00 |
|
|
5e18149640
|
feat(config): 支持限定 Maven 仓库构件类型.
增加 Maven 仓库配置, 支持限定仓库可获取的构件发布类型(发布或快照).
此改动有利于用户增加仓库约束, 防止意外使用错误的扩展包版本.
|
2022-05-18 15:57:49 +08:00 |
|
|
0a5313e94a
|
fix(extension): 修复 Maven 仓库扩展搜索器无法从第三方仓库获取扩展的问题.
由于在加载仓库配置时, 未设置仓库 Id, 导致 Aether 将仓库排除, 进而导致无法通过第三方仓库获取插件.
改动后, 将在未配置仓库 Id 的情况下, 为其生成一个 Id 名称.
|
2022-05-18 15:40:33 +08:00 |
|
|
a0afde52ac
|
fix(launch): 修复 Maven 本地仓库文件夹未初始化的问题.
由于 Maven 本地仓库文件夹未初始化, 将导致启动时发生错误, 现已修复该问题.
|
2022-05-17 19:59:04 +08:00 |
|
|
ef37f3b2d7
|
fix(bot): 修复因机器人命令列表为空而导致命令列表自动更新报错的问题.
当机器人因扩展加载失败时, 将无法正常执行命令更新操作, 故添加空命令检查以避免该问题.
|
2022-05-17 19:56:42 +08:00 |
|
|
95ad251826
|
refactor(utils): 移除不再使用的方法.
当初开发 Maven 仓库搜索器时意外提交的, 已经可以移除了.
|
2022-05-07 01:43:15 +08:00 |
|
|
8174f2a3a2
|
refactor(bot): 修正提示信息错误, 移除空父类方法调用.
修正了运行指标信息中的拼写错误, 移除对无操作父类方法的调用, 这么做可以明确表明只有子类实现了操作.
|
2022-05-07 01:37:21 +08:00 |
|
|
478480014a
|
perf(utils): 优化自动释放钩子的资源引用.
原本自动释放钩子对资源的引用, 可能会出现资源已经被关闭, 但仍然无法被 GC 回收的问题.
此次改动, 将会让钩子在关闭资源后, 将资源从列表中移除.
虽然, 自动释放钩子设计上仅会被 System.exit 动作触发, 但保险起见还是加上这个改动.
|
2022-05-05 16:52:29 +08:00 |
|
|
830f05c90a
|
refactor(utils): 加强 getPriority 方法的优先值判断.
加强优先级判断, 有利于后续使用时防止出现意外情况的问题.
顺便补充一手单元测试.
|
2022-05-05 16:13:48 +08:00 |
|
|
8be0978783
|
refactor: 更改 AppConfig 的获取方式, 以便于编写测试用例.
通过 Const 单例对象获取配置信息不利于编写测试用例, 所以改为利用参数的默认值来获取 Const 的 config 对象.
Issue #5
|
2022-05-04 23:55:21 +08:00 |
|
|
ce613787f6
|
fix: 修正方法参数使用错误的问题.
MavenRepositoryConfig 的 toRemoteRepository 方法使用了参数默认值, 可能会导致意外使用常量的情况,
故移除 MavenRepositoryConfig.toRemoteRepository 的参数默认值.
Pull Request #6
|
2022-05-04 23:07:45 +08:00 |
|
|
2389d082f4
|
test(config): 优化对 defaultInitializer 方法的单元测试.
将 defaultInitializer 方法的反射获取次数减少为一次, 并在测试结束后恢复访问权设置.
|
2022-05-04 22:36:35 +08:00 |
|
|
27f54c3c36
|
test(config): 补充一部分 AppPaths 的单元测试项目.
补充了针对 AppPaths.defaultInitializer() 和 AppPaths.DATA_ROOT 的单元测试项.
其他的有待补充.
|
2022-05-04 02:00:01 +08:00 |
|
|
7b985ce325
|
refactor: 将十六进制转换代码迁移到 Kotlin.
将 ByteUtils 的实现改用 Kotlin 代码做, 移除 ByteUtils.
另外, 本次修改同时修正了方法名错误的问题(hax 改成 hex), 并补充了单元测试.
|
2022-05-04 00:38:30 +08:00 |
|
|
77b7a7cd08
|
feat(launch): 对配置中没有启用任何机器人的情况输出警告.
增加对没有启用任何机器人时候的一个警告信息, 以防止被误认为无响应退出.
|
2022-05-02 02:20:19 +08:00 |
|
|
e8b746b3f8
|
feat(config): 第一次运行将提醒用户更改配置文件.
之前忘记添加这个提醒了, 首次运行的时候, `config.json` 和 `bot.json` 是不存在的, 所以根据这两个文件的存在与否, 来判定并提醒用户更改配置文件.
|
2022-05-02 02:18:23 +08:00 |
|
|
d24572a4f3
|
refactor(config): 修改 AppConfig 的获取方式, 便于编写测试用例.
通过 Const 单例对象获取配置信息不利于编写测试用例, 所以改为利用参数的默认值来获取 Const 的 config 对象.
Issue #5
|
2022-05-01 23:54:22 +08:00 |
|
|
f11290c73d
|
feat: 可以覆盖 Maven 中央仓库配置.
原本设计是无论配置文件中是否带有 Maven 中央仓库, 都会添加 Maven 中央仓库进去, 这样可能会覆盖用户的仓库配置.
新改动将检查配置中是否添加了 Maven 中央仓库配置来决定是否补充 Maven 中央仓库.
|
2022-05-01 23:09:44 +08:00 |
|
|
1f2ab0f9b1
|
fix(extension): 修复搜索器错误日志不包括异常信息.
意外漏掉了这个错误信息, 目前已补充, 以方便寻找问题.
|
2022-05-01 00:09:28 +08:00 |
|
|
d14ef9de36
|
fix: 修复Maven 本地仓库文件夹未初始化的问题.
当本地仓库文件夹未初始化时, 将导致文件写入失败, 已修复该问题.
|
2022-04-30 21:12:36 +08:00 |
|
|
93cf5c4e2f
|
fix: 修复因文件访问比初始化早而导致的启动错误问题.
由于 Launcher 比 initialFiles 更早的执行, 调用 Const 导致更早的访问了未初始化的文件, 导致第一次启动会出现错误.
改动中将 Launcher 移入 main 方法不会有影响, 相比于在 AppPaths.<init> 中初始化会更安全.
|
2022-04-22 18:15:30 +08:00 |
|
|
270e744bcf
|
build: 更新并增加 Kotlin 相关依赖项.
由于不明确的 Kotlin 运行时机制, 需直接向框架本身添加 Kotlin 标准库依赖, 以解决潜在的 Kotlin 反射支持问题.
不可能因运行时问题就继续向框架添加不相关的依赖, 所以该问题将继续调查.
|
2022-04-19 00:08:24 +08:00 |
|
|
d84465ebd9
|
build: 更新 TelegramBots 依赖项.
更新该依赖项以支持新版本的 Telegram API.
请注意: TelegramBots 已将弃用类移除.
|
2022-04-18 23:56:30 +08:00 |
|
|
18bc3a8d48
|
refactor(logging): 补充两个日志屏蔽.
屏蔽两个日志量较大的类, 日志量过多会影响 Debug.
|
2022-04-18 23:54:29 +08:00 |
|
|
142eddfa28
|
refactor(extension): Maven 本地仓库路径将会相对于 DATA_ROOT 路径.
为防止混淆配置意义, 方便数据转移, 将 Maven 本地仓库路径调整为相对 DATA_ROOT 目录, 绝对路径不受影响.
|
2022-04-14 22:38:51 +08:00 |
|
|
64849adfab
|
fix(config): 修复潜在的未初始化异常.
原设计中, PathConst 类会晚于 AppPaths 类中各枚举值的初始化, 进而导致 DATA_ROOT 获取 PathConst 中字段时出现未初始化异常的情况.
由于 AppPaths 设计为在运行时生成并获取路径, 所以该文件不会对 AppPaths 造成太大影响, 但 Kotlin 已决定在未来版本明确该问题为错误(Error), 所以将 PathConst 由伴生对象修改为单例对象以避免该问题.
|
2022-04-14 21:46:01 +08:00 |
|
|
29bd12a8dd
|
feat(bot): 增加 accountId 属性.
增加该属性有利于其他组件对机器人账户进行标记.
|
2022-04-10 16:28:20 +08:00 |
|
|
9cdf10ccc2
|
refactor(launch): 增强关闭阶段的鲁棒性.
增加异常捕获, 防止由于部分 bot 发生异常而无法关闭其余机器人.
|
2022-04-10 16:27:20 +08:00 |
|
|
4210efef3b
|
refactor(config): 改进了数据目录的获取方式.
补充了通过 user.dir 获取目录路径的方式.
|
2022-04-10 16:26:13 +08:00 |
|
|
c5f28e395e
|
refactor(util): 优化代码.
使用 Kotlin 语法糖优化不必要的代码.
|
2022-03-28 23:43:33 +08:00 |
|
|
eb95436404
|
fix(extension): 修复创建扩展对象时可能会出现的 NPE 问题.
创建对象后没有检查 NPE 问题, 修复该问题后有助于接受 Factory 不提供扩展的情况(现在这个情况是允许的了).
|
2022-03-28 21:38:40 +08:00 |
|
|
1281dbcabe
|
feat(config): 支持指定本地仓库的路径.
可指定本地仓库的路径, 用于代替用户目录下的默认 Maven 本地仓库, 这么做可以在任意位置设置共享本地仓库.
|
2022-03-21 23:47:59 +08:00 |
|
|
1cd26b3b25
|
build: 更新依赖项版本.
|
2022-03-21 22:34:30 +08:00 |
|
|
19162dcaef
|
feat(database): 更改数据库命名方式.
由于 BotToken 可以更换, 所以旧版命名方式将会有迁移的问题, 故更改为通过 Bot AccountId 来命名数据库.
CLOSED #3
|
2022-03-20 11:56:38 +08:00 |
|
|
0748afaff5
|
refactor(config): 为 BotAccount 添加 id 字段.
根据 Telegram Bot token 的组成结构, 可以取出 Bot Account Id, 故添加 id 字段.
|
2022-03-20 11:37:24 +08:00 |
|
|
4b20b0cc59
|
feat(bot): 新增命令列表更新功能.
增加`命令列表更新`功能, 该功能可根据已加载的 Ability, 调用 Telegram Bot API 更新命令列表.
后续会尝试支持 BotCommandScope.
|
2022-03-15 15:18:04 +08:00 |
|
|
22a824377a
|
refactor(bot): 简化 ScalaBot 构造器的参数.
改动前的构造器参数大多是直接从 BotConfig 中传递进去, 这么做不利于添加新的参数, 因此改动后, BotConfig 将直接传递到 ScalaBot 的构造器中, 由 ScaleBot 内部按需获取参数进行初始化.
|
2022-03-15 14:13:53 +08:00 |
|
|
a0344f251f
|
fix: 修复因某一个机器人启动失败而导致整个程序崩溃.
改动之后, 将容忍机器人的启动失败, 而不会因此异常退出程序.
|
2022-03-10 13:33:57 +08:00 |
|
|
84b67c7f89
|
refactor(bot): 补充一些日志信息.
补充启动过程的日志信息, 防止用户以为启动卡死 (因为在通过 Maven 仓库加载扩展包的时候会比较慢).
|
2022-03-10 13:31:37 +08:00 |
|
|
1776f07f16
|
refactor(extension): 修改 resolveRepositoryByUrl 中对构件的校验和检查策略.
将 Release 与 Snapshot 的 Checksum 策略设为 Fail, 可防止意外的包修改问题.
|
2022-02-28 08:38:21 +08:00 |
|
|
00e90eabd0
|
fix(extension): 移除默认的 MavenRepositoryExtensionFinder.
将 MavenRepositoryExtensionFinder 的初始化过程交给 Launcher 执行.
|
2022-02-28 08:26:26 +08:00 |
|
|
285c8b04d1
|
fix: 修复因 config.json 不存在而引发的启动异常.
当 config.json 不存在时, 当 Launcher 类被加载时, 将导致因 config.json 加载失败而出现类初始化异常, 通过调整访问时机, 修复了这个问题.
|
2022-02-26 17:36:23 +08:00 |
|
|
a642948f45
|
feat: 可通过配置文件设置用于查找扩展包的 Maven 仓库.
使用 Maven 扩展包搜素器将不再限制仓库, 可通过配置文件添加其他仓库.
|
2022-02-26 17:30:31 +08:00 |
|
|
6df9f1b3c7
|
refactor(bot): 按照 Kotlin 官方代码规范, 修正代码格式错误.
Kotlin 官方代码规范建议把 Companion object 放在类的最后面, 确实应该如此.
|
2022-02-26 17:26:24 +08:00 |
|
|
4bc3776717
|
refactor(config): 更改 BotConfig 的 proxy 属性默认值.
为了让用户了解到可对机器人配置单独的代理, 而将 proxy 的默认值改为 ProxyConfig 缺省值.
|
2022-02-26 16:22:16 +08:00 |
|
|
eb34f17b06
|
refactor(config): 调整 BotConfig 中部分字段的默认值.
内置命令默认打开, 方便用户查询命令. baseApiUrl 默认值为 Telegram 官方 API 地址, 设置默认值可让用户了解可以对此项进行修改.
|
2022-02-26 16:18:32 +08:00 |
|
|
54b3e1cad7
|
fix(bot): 修复 disableBuiltInAbility 逻辑错误的问题.
设置反了, 所以 disableBuiltInAbility == true 就会打开内置命令.
|
2022-02-26 16:11:27 +08:00 |
|
|
35d092a22d
|
refactor: 根据 Kotlin 规范, 调整类访问权.
按照 Kotlin 编码规范, 将序列化类调整为`内部`可预防意外的外部使用.
|
2022-02-26 15:46:08 +08:00 |
|
|
90434d9dbf
|
perf(extension): 修正 FoundedPackage 统计方法.
该问题源于旧版本时方法的用途, 原本该方法用于合并所有已找到的 FoundedPackage, 但新版本已经被其他方法替代, 所以也没必要再通过合并来统计数量.
|
2022-02-26 15:37:50 +08:00 |
|
|
b3c63e5abe
|
feat(config): 支持通过环境变量或 VM 参数指定数据目录.
主要是为 Docker 镜像支持, 这样可以在镜像中指定数据目录, 方便设置持久卷或者文件映射.
|
2022-02-26 12:00:16 +08:00 |
|
|
737ac9a08a
|
fix: 修复了注释中的一个错字 :P
纠正了语句错误而已.
|
2022-02-24 02:23:53 +08:00 |
|
|
692fe5b8f9
|
feat(extension): Maven 仓库搜索器将使用全局代理下载扩展包.
改动后, 配置的全局代理将适用于 MavenRepositoryExtensionFinder.
|
2022-02-22 01:32:02 +08:00 |
|
|
13472d952e
|
feat(extension): 支持从 Maven 仓库下载并安装扩展包.
支持该功能后, 可以使用户更容易安装扩展包, 尤其是无需配置的扩展包.
|
2022-02-22 01:15:41 +08:00 |
|
|
d69112eefa
|
refactor(logging): 再 ban 掉三个啰嗦的类.
因为它们的 Debug 级别日志太啰嗦了(狗头).
|
2022-02-22 01:11:40 +08:00 |
|
|
856af0dde7
|
refactor(config): 重写 AppPaths 的 toString.
重写该方法后, 可以简单地添加到字符串模板中, 方便使用.
|
2022-02-21 16:47:13 +08:00 |
|
|
6ea36a1129
|
build: 更新 Slf4j-api 的版本.
更新版本以修复潜在的问题.
|
2022-02-21 15:38:20 +08:00 |
|
|
d7b253186e
|
fix(extension): 在创建扩展对象时捕获异常.
为防止 Factory 抛出异常影响加载, 增强鲁棒性, 所以在创建实例时捕获异常, 并跳过抛出异常的 Factory.
目前还不能解决 Factory 初始化异常的问题, 等 MavenRepositoryFinder 更新后再修复.
|
2022-02-21 11:52:25 +08:00 |
|
|
1b538f7c1f
|
docs(bot): 补充 ScalaBot 的 Javadoc 内容.
补充了文档.
|
2022-02-20 16:54:30 +08:00 |
|
|
19ad5e0c1a
|
refactor(logging): 屏蔽 Apache HttpClient 中 Debug 级别的日志.
Debug 级别下 HttpClient 会把请求和响应完全打印到日志中, 在 Debug 过程中不是那么的友好, 所以屏蔽它.
|
2022-02-20 16:51:14 +08:00 |
|
|
f8f80840c6
|
refactor(extension): 在搜索到扩展包的情况下不再继续使用低优先级搜索器.
在高优先级搜索器找到一个或以上的扩展包时, 停止调用更低优先级的搜索器,
这有助于避免无意义的远端扩展包搜索行为, 在本地搜索到扩展包后就没有必要再触发远端搜索器搜索了.
|
2022-02-19 23:26:38 +08:00 |
|
|
52a97b892c
|
refactor(logging): 设置不同运行环境下的日志配置.
使用 logback 中配置的引用功能, 为 scalabot-app 模块设置了开发环境与生产环境的日志配置,
目前仅最低级别不同外没啥区别.
|
2022-02-17 19:27:02 +08:00 |
|
|
86144f29cc
|
build: 更新依赖项 Slf4j-api 和 gson 的版本.
更新版本以修复潜在的 bug.
|
2022-02-17 19:08:30 +08:00 |
|
|
d85ee024cb
|
feat(metrics): 初步增加获取运行指标的功能(兼容 Prometheus).
添加兼容 Prometheus 的运行指标收集导出功能, 通过内置 HttpServer 将其导出.
默认关闭.
|
2022-02-17 19:06:28 +08:00 |
|
|
beb3fd8280
|
refactor(extension): 将 ExtensionPackageFinder 实现移动到单独的代码文件中.
移动之后, ExtensionComponents.kt (原名 Extension.kt) 将专注于扩展的加载组件开发, 而 ExtensionFinders.kt 则专注于开发和维护扩展包发现器.
|
2022-02-17 18:52:47 +08:00 |
|
|
014e733d86
|
refactor(logging): 移除无用的属性.
additivity 并非用于 appender-ref, 该问题不影响任何功能, 属于初期开发遗漏的瑕疵.
|
2022-02-16 17:04:41 +08:00 |
|
|
2c9e727ecd
|
style(extension): 补充文档并修正代码规范问题.
去除多余的空格, 并在文档中建议使用 FinderPriority 中定义的优先级.
|
2022-02-16 17:02:08 +08:00 |
|
|
c5e5b1c303
|
refactor(util): 添加方法用于快速注册 ShutdownHook.
该功能将在后续提交中使用.
|
2022-02-16 14:27:16 +08:00 |
|
|
16135e3cde
|
feat(extension): 支持 ExtensionPackageFinder 设置优先级.
添加 FinderRules 注解, 发现器标记注解后, 将根据优先级选择加载扩展包;
该改动有助于支持远端扩展包加载的开发, 例如可以直接从 maven 中央仓库获取支持加载的构件, 支持该功能将大大增加便捷性.
Closed #1
|
2022-02-15 22:37:24 +08:00 |
|