Him188
40d4957837
[core/android] Implement mirai-core tests for Android target with AndroidSDK
2023-05-02 16:17:48 +01:00
Him188
c74e9d2858
[build] Make mirai-core AbstractTest
public, and add dependsOnCoreJvmTest
in buildSrc
2023-03-21 18:12:04 +00:00
StageGuard
78d0b4fd54
QRCode login support & Introduce new authorization factory ( #2502 )
...
* [core] process `wtlogin.trans_emp` to support qrcode login
* [core] fix `wtlogin.trans_emp` protocol
* [core] optimize QRCodeLoginProcessor logic
* [core] fix `wtlogin.trans_emp` outgoing packet
* [core] cancel login when logging a bot which is inconsistent from bot factory
* [core] ignore `flag3` check on ANDROID_WATCH & name `flag1` and `flag2`
* [core] provide default `QRCodeLoginListener` for jvm
* [core] don't catch IllegalStateException in QRCodeLoginProcessor
* [core] Use `LoginSolver.createQRCodeLoginListener()` instead of property; Rename configuration name
* [core] Code improvement
* [core] remove qrcode state lock
* [core] ignore `flag3` when command is `wtlogin.trans_emp` in packet codec
* [core] enable qrcode login for macos
* [core] remove debug property in log
* [core] reformat code
* [core] rename `TransEmpResponse` to `Response`
* [core] assert `flag3Exception` not null first
* [core] remove arg client
* [core] update qrcode login notes
* [core] set custom qrcode size
* [core] Draft BotAuthorization
* [core] make SecretsProtection mpp
* [core] BotAuthorization.byXXX
* [core] Move QRCodeLoginListener to `.auth`
* [core] Protect data of BotAccount
* [core] Add SelectorRequireReconnectException
* [core] Implementation of BotAuthorization
* Revert changes of BotConfiguration
* api dump
* [core] remove passwordMd5 in `BotAccount`
* [mock] Add new bot factory function to mock bot factory
* Delete LoginCommandTest
* [core] Improve QRCode render
* [core] Introduce UnsupportedCaptchaMethodException & UnsupportedQRCodeCaptchaException
* api dump
* update docs
* [core] update `DebugRunHelper`
* [core] add simple block for BotAuthorization
* api dump
* Rename `canDoQRLogin` to `supportsQRLogin`, and specify argument names for MiraiProtocolInternal
* Remove `phoneNumber` parameter from BotAccount
* Make `BotAccount.<init>` with String password parameter TestOnly
* Rename `InconsistentBotException` to `InconsistentBotIdException`
* Rename `QRCodeLoginListener.onStatusChanged` to `QRCodeLoginListener.onStateChanged`
* Rename `BotAuthorizationResult` to `BotAuthResult`
* Rename BotAuthComponent, move internal APIs to internal module
* Logic fixup
* doc update
* QRCodeLoginListener.qrCodeStateUpdateInterval & onIntervalLoop
* console login with BotAuthorization
* update testing
* Update mirai-core-api/src/jvmMain/kotlin/utils/LoginSolver.jvm.kt
* Move AuthControl outside SsoProcessor
* Redesign auth
* Add initialTicket to producerCoroutine
* Revert protocol changes of MACOS
* Fix latch death locking
* Fix CoroutineOnDemandValueScope.receiveOrNull exceptional finish
* Fix exception collecting
* Fix DefaultBotAuthorizationFactory loading
* [core] qrcode login for IPAD protocol
* Revert "[core] qrcode login for IPAD protocol"
This reverts commit c1136a8798
.
---------
Co-authored-by: Karlatemp <kar@kasukusakura.com>
Co-authored-by: Him188 <Him188@mamoe.net>
2023-03-18 13:52:31 +00:00
Karlatemp
fe70187881
[core/debug] Add utils for debug running; Update docs for launch debug run
2022-11-14 00:33:07 +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
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
ff2a8acb0c
Implement multiplatform modules
2022-07-20 00:30:16 +08:00
Him188
9df7c4bda4
Update RunNoticeRecorder
2022-06-14 10:49:48 +01:00
Him188
ab3280f6b7
Add more MessageProtocolTest:
...
Add fragmented test
Fix MusicShareProtocol and implement sending tests for MusicShareProtocolTest
OutgoingMessagePipelineImpl: set stopWhenConsumed
Fix `currentMessageChain` not updated in `processAlso`, add strong message packets checks, add tests for converting messages failed to send at FIRST step to LongMessageInternal
Add notes for receiving ForwardMessage
Add facade parameters to `download ForwardMessage*`
Add ForwardMessageProtocolTest
Add QuoteReplyProtocolTest
Add CONTAINING_MSG for MessageDecoderContext.attributes, for information-use only
Fix MessageReceiptTest
Fix QuoteReplyProtocolTest
2022-05-25 22:39:53 +01:00
Him188
c8fb354d13
Add LongMessageProtocolTest and various improvements:
...
Change attributes carrying helper objects to components
Make ClockHolder open
Use originalMessage for MessageReceipt
2022-05-25 22:39:53 +01:00
Him188
3270192715
Remove SendMessageHandler
and introduce OutgoingMessagePipeline
.
2022-05-25 22:39:53 +01:00
Him188
e6b094031c
Re-categorize MessageProtocol packages
2022-05-25 22:39:53 +01:00
Him188
94e49520d7
Move StructureToStringTransformerNew and its relevant files from jvmTest to commonTest
2022-05-25 22:39:53 +01:00
Him188
573473735c
Rename RunRecorder to RunNoticeRecorder
2022-05-25 22:39:53 +01:00
Him188
a89f6aeaef
Integrate new MessageProtocol with existing code
2022-05-25 22:39:53 +01:00
Him188
c118180b54
Move messages implementations other than InternalFlagOnlyMessage from .message
to .message.data
2022-05-25 22:39:53 +01:00
Him188
c30b3a285a
Move MessageSource implementations from .message
to .message.source
2022-05-25 22:39:53 +01:00
Him188
4acd74974a
Migrate deprecated usages and cleanup code
2022-04-13 13:08:14 +01:00
Him188
3844630550
Cleanup code
2022-01-06 20:07:22 +00:00
Him188
3a2663104b
Rewrite and generalize ConstructorCallCodegen for multipurpose usage.
2021-12-21 18:46:25 +00:00
Him188
bf98ab7858
Move _contentToString
outside mirai-core main sourceSets, and rename it to structureToString
2021-12-21 18:46:25 +00:00
Karlatemp
561d333cc7
NetInternalKit
2021-12-05 18:28:44 +08:00
Karlatemp
511d1fa4f8
Fix NetReplayHelper [no ci]
2021-11-20 17:40:58 +08:00
Karlatemp
e1ca6dd6c9
Avoid user injection
2021-11-09 18:20:56 +08:00
Karlatemp
76d23c5b0c
NetReplayHelper
2021-11-07 12:33:02 +08:00
Him188
76e2b6c64c
Redesign packet recording
2021-09-01 13:55:39 +08:00
Him188
8d8aca3f1c
Introduce Audio
for new API, revert changes on Voice
2021-08-05 21:48:20 +08:00
Him188
dd606c3022
Improve performance of hexToBytes
and simplify similar extensions
2021-07-07 15:00:28 +08:00
Him188
8647d38b34
Add MessageReceiptTest
for #1371
2021-07-02 21:06:31 +08:00
Him188
a59d7208cb
Add getMiraiImpl
to replace direct calls of MiraiImpl.INSTANCE
2021-07-02 21:06:31 +08:00
Karlatemp
a4b62b0909
Voice serialization ( #1368 )
...
* Voice serialization
* Implement `hashCode` and `equals` for `Voice`
* Update test
* Update test
* Add note of `PttMessage.pttInternalInstance`
* Fix logic of `Voice.equals`
2021-07-02 12:10:20 +08:00
Him188
c37457cafb
Cleanup and move local serializable classes to top-level
2021-06-19 18:28:21 +08:00
Him188
c93d6aa608
Add ForwardRefineTest
2021-05-30 22:51:26 +08:00
Him188
301deadbd1
Add test for #1273
2021-05-30 21:16:43 +08:00
Him188
b91bbfd2b8
Add NetworkHandlerFactory and tests for NetworkHandler
2021-05-09 00:54:48 +08:00
Him188
57eb716e31
Add inline BotFactory.newBot
for Kotlin DSL. fix #1233 ( #1234 )
2021-05-02 13:51:32 +08:00
Him188
5dcccd1402
Introduce base class for tests AbstractTest
2021-04-20 12:47:57 +08:00
Karlatemp
28a8b8303a
Support receive nested ForwardMessages ( #1196 )
...
* Support receive nested ForwardMessages
* Tests
2021-04-17 16:09:32 +08:00
Karlatemp
0c93aeb425
Add RefineContext for refining ( #1195 )
...
* Add RefineContext for refining
* Add RefineContext argument
* Fix build
2021-04-17 11:45:02 +08:00
Him188
7feeaee1ca
Refining Messages without suspension ( #1167 )
...
* Introduce `RefinableMessage.tryRefine` to refine without suspension.
* Extract `RefinableMessage` to separate file
* Always use `Bot` on `List<MsgComm.Msg>.toMessageChain`
* Introduce `MessageRefiner` and ensure MessageChain refined after transformation. Fix #1156 , fix #1157
* Add basic tests
* Refine forward message contents
* Refine long message contents
* Move refinement from message internals to MiraiImpl public APIs
* Comment out unused `toMessageChainOffline`
* refinement tests part
* refinement tests part
* Full tests and minor internal improv.s
* Fix tests
* Fix compile
2021-04-08 11:59:16 +08:00
Him188
7521e6d17f
Rename RichMessageOrigin
to MessageOrigin
( #1116 )
...
* Rename `RichMessageOrigin` to `MessageOrigin`
* apiDump
* Change `MessageOrigin.origin` parameter type from `RichMessage` to `SingleMessage`;
Rename `RichMessageKind` to `MessageOriginKind`
* Make MessageOriginKind serializable and update docs
* Ensure binary compatibility with <2.6 and provide migration helpers
* apiDump
2021-04-04 00:31:33 +08:00
Him188
430c2c59ad
Support UnsupportedMessage ( #1112 )
...
* Support UnsupportedMessage
* Fix serialize
* `UnsupportedMessage.contentToString`: use `struct.contentHashCode()`
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
2021-03-26 23:54:17 +08:00
Him188
af58c163d2
- Add FileMessage.internalId hence support serialization
...
- Add FileMessage.Serializer
- Add FileMessage.create and IMirai.createFileMessage to construct manually
- Mark FileMessage as stable
- Move TestMiraiCode from mirai-core-api to mirai-core
fix #1082
2021-03-20 15:33:08 +08:00
Him188
4ac7d3fa9a
Support Dice ( #1018 )
...
* Add Dice public API #1012 , close #1017
* Extract MarketFaceImpl to separate file
* Dice protocol impl #1012
* Dice refinement
* Add serialization support for Dice
* Add mirai code support for Dice
* Update docs/Messages.md
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
* Update mirai-core-api/src/commonMain/kotlin/message/data/Dice.kt
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
* Add dice mirai code test
Co-authored-by: sandtechnology <a1294790523@hotmail.com>
Co-authored-by: lc6a <1952511149@qq.com>
Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
2021-02-13 11:34:23 +08:00
Him188
13faff5471
Add serialization support for ShowImageFlag
2021-02-05 22:34:08 +08:00
Him188
b9e5c15bdb
Add polymorphic serialization tests
2021-02-03 10:39:36 +08:00
Him188
8da048af63
Serialization support for MusicShare;
...
Rename MusicShare.type to kind;
Rename MusicType to MusicKind;
2021-01-24 00:39:05 +08:00
Him188
668398c597
Fix build
2021-01-07 21:11:30 +08:00
Him188
41a34bdf65
[Review] Extract MessageSerializersImpl to separate file
2021-01-06 15:55:26 +08:00