Him188
9122dddfb7
[core] Add net.mamoe.mirai.utils.Closeable
for MPP use
2022-09-23 21:38:06 +08:00
Him188
b360f58c2b
[core] Make ExternalResource.input
an internal API. helps #2254
2022-09-23 21:38:06 +08:00
cssxsh
d000f2ea0f
[core] add group level api ( #2115 )
...
* add: api dump
* feat: Member.level
* add: api dump
* rename: level to rank
* feat: rank show
* feat: honor flag
* fix: honor flag index
* feat: record and chart
* feat: flag and docs
* add: api dump
* fix: active
* fix: honor
* fix: active
* fix: rebase
* fix: docs
* feat: MemberActive
* fix: for review
* feat: other notification
* remove: low level api
* add: since and api dump
* add: since
* for: review
* add: event sync
* fix: name and docs
* fix: api dump
* fix: for review
* add: ActiveRank, MemberMedal close #2233
* fix: active for review
* improve public API for inlined GroupHonorType
* Change `@since 2.13.0` to `@since 2.13`
* dump api changes
* implement mock framework for Active
* change `GroupActive.flush` to `GroupActive.refresh`
* improve docs for GroupActive
* remove unnecessary expect/actual for MemberActive
* change property names in GroupInfo
* check permission in MockGroupActiveImpl
* optimize member names in CommonGroupActiveImpl
* fix error checking
* dump api
Co-authored-by: Him188 <Him188@mamoe.net>
2022-09-21 23:18:50 +08:00
Him188
aa40f3f3d7
[core] fix since version of ExternalResource.input
2022-09-21 12:01:47 +08:00
Him188
d32a8a566c
[core] Use Java URL connection for TxCaptchaHelper.
...
^Fixes previous commit c804bbda13
2022-09-11 20:02:42 +08:00
Him188
c804bbda13
[core] Remove dependency on ktor-client for mirai-core-api. Fix duplicated class errors on Android, close #2248
2022-09-11 19:49:43 +08:00
Him188
eb89b6348d
[core] Support solving device verification request by SMS:
...
- close #2190 , helps #717
- deprecate `LoginSolver.onSolveUnsafeDeviceLoginVerify`, add `.onSolveDeviceVerification`
2022-09-11 19:41:16 +08:00
Him188
2eb2c3acd0
[core] Add default AbstractExternalResource.input
implementation
2022-09-09 18:43:29 +08:00
Karlatemp
5ac74a336f
Create module mirai-console-frontend-base
2022-09-06 18:21:37 +08:00
Karlatemp
969c77f146
[console] Change convention of createLoggerFactory()
2022-08-28 22:52:48 +08:00
Him188
f0651c81c6
[core+console] Improve logging hierarchy: ( #2196 )
...
- always use factory API from mirai-core
- Terminal is still overriding standard outputs
- plugins are forbidden to override logging framework (this was allowed but not working before)
2022-08-27 18:46:16 +08:00
Him188
2d393ee0b0
[core+console] Raise deprecation level for 2.13: ( #2213 )
...
- warningSince 2.11 -> errorSince 2.13
- errorSince 2.12 -> hiddenSince 2.13
- some experimental APIs removed
2022-08-27 14:06:03 +08:00
Eritque arcus
fea1d28488
[core] Support friend group ( #2113 )
...
* feat: support friend group
* remove unnecessary modifications
* toByteArray2
* support friendGroup, with api dump
* support rename, with api dump
* modify as required
* modify as required
* reverse
* doc
* FriendGroups
* api dump
* modify as required
* fix CI
* FriendGroup sync notice
* api dump
* modify as required
* immutable
* add friends: ContactList in FriendGroup
* more sync notice
* modify log content
* Change `FriendGroup.friends` to `Collection<Friend>`
* Fix `FriendGroup.friends.isEmpty()`
* modified as require, untested
* del count and online count in info
* change import
* fix missing import
* set @since 2.13 and modified as required
* modified as required
* modified as required
* doc
* change friendGroupId type to Int?
* api dumped
* change friendGroupId type to Int?
* introduce null to friendGroupId
* modified as required
* chore
* api dump
* chore: remark
* change int? to int
* api dump
* Update mirai-core-api/src/commonMain/kotlin/data/FriendGroups.kt
Co-authored-by: Him188 <Him188@mamoe.net>
* Move FriendGroup and FriendGroups to contact.friendgroup
* Make `Friend.friendGroup` not null
* add FriendGroups.default for default group
* Redesign FriendGroup interface
Co-authored-by: Karlatemp <kar@kasukusakura.com>
Co-authored-by: Him188 <Him188@mamoe.net>
2022-08-26 16:56:09 +08:00
Him188
fb3f39e328
[core] Improve NetworkHandler exception handling and optimize exception logging:
...
- close #2175
- close #2148
- Fix `Throwable.findCause`
- Rename `mirai.network.handle.selector.logging` to `mirai.network.handler.selector.logging`
- Hide rather long and complicated `CancellationException`s, use `mirai.network.handler.cancellation.trace` to re-enable it
2022-08-26 15:20:04 +08:00
Eritque arcus
b4066ac6d1
NextEventAndIntercept and NextMessageAndIntercept ( #2177 )
...
* rewrote pr, no tested
* test and change param position
* enable ci
* finish test
* modified as required
* typo
2022-08-23 18:07:03 +08:00
Him188
a51f55124c
Mark ExternalResource.isAutoClose
, ExternalResource.useAutoClose
and ExternalResource.runAutoClose
stable
2022-08-16 10:26:45 +08:00
Him188
39074f1764
[build] Update to Kotlin 1.7.10:
...
Kotlin 1.7.10
kotlinx-serialization 1.3.3
kotlinx-coroutines 1.6.4
kotlinx-atomicfu 0.17.3
Ktor 2.1.0
2022-08-15 18:36:40 +08:00
Him188
9dd57de844
[core] Fix cache dir on native. part of #2160 .
2022-08-15 16:18:50 +08:00
Eritque arcus
6b8c054948
[core] Support change friend remark ( #2112 )
...
* feat: support ChangeFriendName
* fix: register factory
[skip ci]
* rebase dev
* kdoc?
* api dump
* kdoc
* rebase dev
* remove unnecessary modification
* info::remark -> info.remark
* rebase dev
* api dump
* try to fix CI
* Add `@since` for `Friend.remark` setter
Co-authored-by: Him188 <Him188@mamoe.net>
2022-08-14 10:15:42 +08:00
Him188
f96c156d82
[core] Implement ConstrainSingle
for Audio
( fix #2093 )
2022-08-12 09:14:16 +08:00
cssxsh
9db5d2c4b5
Add client properties to MessageSyncEvents, add OtherClientCommandSenderOnMessageSync and MessageSyncEvent.toCommandSender
2022-08-03 11:27:39 +08:00
cssxsh
c38740ce2f
在 Image 序列化时支持全部属性 ( #2036 )
...
* fix: Image Serializer Delegate
* use: api dump
* add: test Image serialization
* fix: type (SerialName) and deserialize
* fix: native test
2022-07-22 03:05:08 +08:00
Him188
e5cad1d0ba
Rewrite MessageSerializers for new project structure ( #2159 )
2022-07-20 15:09:09 +08:00
Him188
fd67ba9204
Configure shadow relocation and add checks for multiplatform publishing
2022-07-20 00:30:16 +08:00
AdoptOSS
7325c1f7e2
native: 优化 build script 及 actions,修复 ECDH 相关资源释放问题 ( #2110 )
...
* build: fix build on Windows
* test: fix ContentEqualsTest on native
* build: allow disabling targets with property
* fix: free ECDH-related resources properly on native
avoid memory leaking (usually on *nix) or crash (usually on Windows)
Signed-off-by: AdoptOSS <adoptoss@outlook.com>
* build(workflow): remove invalid options
* fix(styling): `mirai.target` property
* build(workflow): try to limit memory usage during mirai-console:tools:gradle-plugin:integTest
* enhance(test): use buildList
* build(workflow): retry
Co-authored-by: ArcticLampyrid <arcticlampyrid@outlook.com>
2022-07-20 00:30:16 +08:00
Him188
21c4a5ba04
Use kotlinx-coroutines-test
2022-07-20 00:30:16 +08:00
Him188
cca40b8aa3
Add dummy jvmBase target for IDE
2022-07-20 00:30:16 +08:00
Him188
7dbb1a5ad7
Add RunConfigurations
2022-07-20 00:30:16 +08:00
Him188
4230a6e84c
Remove MiraiLogger.subLogger in mirai-core-api to overcome declaration clash on native
2022-07-20 00:30:16 +08:00
Him188
fe0a4de368
Produce shared libraries and static libraries
2022-07-20 00:30:16 +08:00
Him188
4c6b879873
Upgrade to Ktor 2.0.2, use CIO engine for linux targets; Remove ktor-client-okhttp from mirai-core-api jvmBaseMain
...
Use Input.readAllText instead of Input.readText, because readText only reads one buffer.
#2084
2022-07-20 00:30:16 +08:00
Him188
d27228c8c8
Rewrite MessageSerializers, register serializers in each MessageProtocol, implement for native targets
2022-07-20 00:30:16 +08:00
Him188
13dadd5a95
Implement mirai-core for native
2022-07-20 00:30:16 +08:00
Him188
732e61e37d
Ensure for all MessageChain subclasses, equals
, hashCode
give consistent results.
2022-07-20 00:30:16 +08:00
Him188
7088835402
HMPP
2022-07-20 00:30:16 +08:00
Him188
ff2a8acb0c
Implement multiplatform modules
2022-07-20 00:30:16 +08:00
Him188
ce87400998
Use ktor-io to replace kotlinx-io
2022-07-20 00:30:16 +08:00
Him188
0571be1a55
Commonize projects: mirai-core series, and mirai-console-compiler-annotations
2022-07-20 00:30:16 +08:00
Him188
d96641dedb
Configure HMPP project structure
2022-07-20 00:30:16 +08:00
Him188
a4e7fda416
Raise deprecation level for 2.12
2022-06-14 11:19:44 +01:00
Him188
1a2241b8b2
Add Java-friendly EventChannel.exceptionHandler API, close #1953
2022-06-08 21:42:20 +01:00
Him188
bcaf9b5060
Fix warningSince for deprecation of GroupEntranceAnnouncementChangeEvent
2022-06-08 21:40:42 +01:00
Him188
67984bfbad
Deprecate GroupEntranceAnnouncementChangeEvent, as per #1873
2022-06-08 21:31:50 +01:00
Him188
38465972ba
Add more details in QuoteReply.toString
2022-05-25 22:39:53 +01:00
Him188
c75d1f7074
Add MessageSource.isOriginalMessageInitialized
2022-05-25 22:39:53 +01:00
Him188
7687749030
Add more details in MessageSource.toString
2022-05-25 22:39:53 +01:00
Him188
3e38f359ba
Add ForwardMessage.BuilderNode.toString
2022-05-25 22:39:53 +01:00
Him188
3b7eb40529
Add implementation notes for MessageSource.originalMessage
2022-05-25 22:39:53 +01:00
Him188
54b3bf405f
Add notes for Dice.name
2022-05-25 22:39:53 +01:00
Him188
08d1fc1f38
Add more MessageProtocolTest
2022-05-25 22:39:53 +01:00
Him188
a8c231485c
SilentLogger: return false for all isEnabled checks
2022-05-25 22:39:53 +01:00
Him188
0bb86a3b11
Rearrange functions in MessageVisitor to correspond their hierarchy
2022-05-25 22:39:53 +01:00
Him188
0cef98dec0
Fix OfflineAudioFactory configuration
2022-05-25 22:39:53 +01:00
Him188
d6a56f1052
Remove generic type on MessageVisitorUnit
2022-05-25 22:39:53 +01:00
Him188
287769799a
Enable kotlin-dynamic-delegation in mirai-core and mirai-core-api
2022-05-25 22:39:53 +01:00
Him188
0c708c8197
Redesign MessageChain hierarchy: Add LinearMessageChainImpl and CombinedMessage
2022-05-25 22:39:53 +01:00
Him188
b40b681f81
Deprecate EmptyMessageChain
in favor of emptyMessageChain()
2022-05-25 22:39:53 +01:00
Him188
3955546868
Add MessageVisitor
, MessageVisitorEx
, Message.accept
and Message.acceptChildren
as internal API
2022-05-25 22:39:53 +01:00
cssxsh
a1a517c03f
fix: FileMessage.Delegate SerialName ( #2041 )
2022-05-18 09:07:31 +01:00
Him188
d8ceb7ae5b
Fix @since
2022-05-16 19:14:14 +01:00
Him188
4495e36e7c
Fix event broadcast directly without checks. Add notes for broadcasting an event.
2022-05-16 19:14:14 +01:00
Him188
2f40d3f432
Deprecate EventDisabled
for ERROR
2022-05-16 19:14:14 +01:00
Him188
0c809f4e4c
Remove internal EventBroadcast
, code cleanup
2022-05-16 19:14:14 +01:00
Him188
497d9ff810
Update docs for Event, EventChannel, and Listener
2022-05-16 19:14:14 +01:00
Him188
c391d3f886
Refine nextEvent and syncFromEvent: handle exceptions correctly
2022-05-16 19:14:14 +01:00
Him188
30dbd1b1c2
Pass exceptions caught in subscriber context to subscriber only
2022-05-16 19:14:14 +01:00
Him188
c192047361
Move event implementations to EventDispatcher
and add EventChannel.asFlow
.
2022-05-16 19:14:14 +01:00
cssxsh
c6b47a3231
Fix MarketFace contentToString, return '[商城表情]' if original name is empty ( #2030 )
2022-05-14 11:14:36 +01:00
Karlatemp
cb3bba986c
Fix IMirai
initialize; Fix #1861 ; Fix some error caused by d757764308
2022-05-06 17:47:22 +08:00
Him188
4fa853065c
Add BotConfiguration.disableAccountSecretes
2022-05-02 14:01:53 +01:00
Him188
54eb4387e4
Make log4j.Logger.asMiraiLogger
and useLog4j2
stable
2022-05-02 11:13:55 +01:00
Karlatemp
c37576fda7
Log exception when failed to initialize java.desktop
for better user debugging; Use CLI if in headless mode
2022-04-30 12:49:28 +08:00
Him188
bb8cd86daa
Update dependencies:
...
Kotlin 1.6.21
Dokka 1.6.20
coroutines 1.6.1
atomifFU 0.17.2
serialization 1.3.2
ktor 1.6.7
blocking-bridge 2.0.0-162.1
dynamic-delegation 0.3.0-162.2
2022-04-26 11:12:35 +01:00
Him188
acb048c267
Add errorSince information for deprecation for BotConfiguration.json
2022-04-25 15:50:46 +01:00
Him188
7f85319a92
Deprecate BotConfiguration.json
2022-04-24 15:30:02 +01:00
Him188
1d60cf57b8
Add @since 2.11
for avatarUrl and AvatarSpec (for #1721 )
2022-04-24 12:50:33 +01:00
cssxsh
7a9769b618
Add getAvatarUrl(spec: Int) fix ( #1557 ) ( #1721 )
...
* Add getAvatarUrl(spec: Int) fix (#1557 )
* Add api dump
* Add AvatarSpec
* Add api dump
* fix: docs
* rename: getAvatarUrl
2022-04-24 12:48:18 +01:00
Runze Zhang
cc3d645d4c
Typo fixed ( #1978 )
2022-04-16 11:16:50 +01:00
Him188
8993de9a13
Review deprecation for 2.11, close #1837
2022-04-13 12:47:21 +01:00
Him188
d1cb05025e
Deprecated IMirai.Http for future removal
2022-04-13 12:08:39 +01:00
Him188
2a8f7de23d
Throw SendMessageFailedException
with new reason AT_ALL_LIMITED
, fix #1948
2022-04-02 13:24:30 +01:00
Karlatemp
1688dc9453
Fix typo of ExternalResource
2022-03-22 22:57:30 +08:00
Him188
4c600f9ded
Rearrange ExternalResource.toAutoCloseable
and update docs for ExternalResource
2022-03-21 13:39:41 +00:00
Him188
57a4b80d55
Update docs for ExternalResource
2022-03-21 13:22:35 +00:00
Him188
91e3ebdd03
Update docs for Image, close #1940
2022-03-21 13:04:24 +00:00
Him188
ab9c2ef2b2
Add Audio.lengthDuration
2022-03-16 15:34:12 +00:00
LaoLittle
827844c5d1
补充Nudge文档: 戳一戳上限 ( #1908 )
2022-03-05 02:27:00 +00:00
Him188
66bca56e39
Add more detail docs for RoamingMessages
2022-02-12 13:53:23 +00:00
cssxsh
cadb529588
为生成的 IMEI 增加校验位 ( #1855 )
...
* feat: luhn
* fix: China Country Code 86
* fix: China Country Code 86
* fix: China Country Code 86
2022-02-12 12:47:19 +00:00
AdoptOSS
4586203c80
improve(logger/log4j): use reusable message for better performance
2022-02-12 12:36:41 +00:00
Him188
1012c6fbf6
Add createAutoCloseable
back, close #1856 (caused by #1742 (PR #1774 ))
2022-01-31 15:15:14 +00:00
Him188
701039ee48
弃用无 receiver 的事件扩展函数, 增加其 EventChannel
receiver 版本替换 ( #1754 )
...
* Deprecate no-receiver functions `nextEvent*`, `syncFromEvent*`, `asyncFromEvent*`. Add their `EventChannel`-receiver counterparts. #1827
* Fix migration
* Migrate `nextMessage` to new API
2022-01-20 10:15:10 +00:00
Him188
747bc05591
Update apiDump for previous commit 2d26f94769
(Move AbstractImage
, FriendImage
, GroupImage
from mirai-core-api to mirai-core)
2022-01-14 19:34:04 +00:00
Him188
2d26f94769
Move AbstractImage
, FriendImage
, GroupImage
from mirai-core-api to mirai-core, close #1670
2022-01-14 19:02:38 +00:00
Him188
7d3971259d
Review deprecation for 2.10. close #1742 ( #1774 )
2022-01-14 18:26:44 +00:00
Him188
1ab48748ab
Fix project structure for Dokka
...
Co-authored-by: 微莹·纤绫 <karlatemp@vip.qq.com>
2022-01-06 20:26:52 +00:00
Him188
3d864362aa
Generalize binary validator
2022-01-06 20:26:52 +00:00
Him188
2a036d7bb3
Simplify buildscript: remove redundant comments
2022-01-06 04:46:58 +00:00
LaoLittle
0c964f3144
允许使用 IPAD 协议发送戳一戳 ( #1711 )
...
* 修改注释
* IPAD协议发送戳一戳时不抛出UnsupportedOperationException
* 修改注释
“安卓协议”的描述并不准确,ANDROID_PAD 也是安卓协议,但是完全不支持戳一戳
修改进行明确
* Apply suggestions from code review
* Update Nudge.kt
Co-authored-by: Initial-heart <63091661+Initial-heart-1@users.noreply.github.com>
Co-authored-by: Him188 <Him188@mamoe.net>
2022-01-06 01:16:42 +00:00
Him188
1819374b9a
Use SimpleMessage for Log4J2 for security, close #1729
2021-12-30 14:34:25 +00:00