Commit Graph

3110 Commits

Author SHA1 Message Date
Karlatemp
c685a77c68
[core] Fix highway uploading 2022-08-09 21:44:50 +08:00
Him188
2df0fc2e4d
[core] change server list logging priority from info to verbose 2022-08-05 01:30:07 +08:00
Him188
0fe0e7afb8
[core] Fix TestFactory checks 2022-08-03 11:48:51 +08:00
Him188
bbd89417ea Add addOtherClient for GroupExtensions for tests, add other clients before running tests for MessageSyncEvent 2022-08-03 11:27:39 +08:00
cssxsh
9db5d2c4b5 Add client properties to MessageSyncEvents, add OtherClientCommandSenderOnMessageSync and MessageSyncEvent.toCommandSender 2022-08-03 11:27:39 +08:00
Him188
7dee5fe6c8
[core/test] Fix AbstractTest.checkTestFactories 2022-07-31 19:39:58 +08:00
Him188
eeb10cc89a
[core] Update docs for implementations 2022-07-31 15:44:48 +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
699718f958 Add multiplatform DynamicTest 2022-07-20 00:30:16 +08:00
Him188
fd67ba9204 Configure shadow relocation and add checks for multiplatform publishing 2022-07-20 00:30:16 +08:00
AdoptOSS
dc747ea438 fix: platform socket on Windows (#2121)
* fix: platform socket on Windows

* fix(workflow): use win platform ssl provider instead of openssl for cURL
openssl can't use system's native CA store by default
2022-07-20 00:30:16 +08:00
Him188
2022074007 Minor docs update for NetworkHandler 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
afedbdad7b Fix services 2022-07-20 00:30:16 +08:00
Him188
f962618bee Fix compiler warnings 2022-07-20 00:30:16 +08:00
Him188
21c4a5ba04 Use kotlinx-coroutines-test 2022-07-20 00:30:16 +08:00
Him188
e1123e9a96 Move AudioTest to message/data 2022-07-20 00:30:16 +08:00
Him188
0f26dbff5c Add test for test Audio extraData 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
fe0a4de368 Produce shared libraries and static libraries 2022-07-20 00:30:16 +08:00
Him188
dab703869f core: Close and join all jobs after each test 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
7836b2a4b3 Broadcast BotOfflineEvent.Active after state OK -> CLOSED 2022-07-20 00:30:16 +08:00
Him188
c260abb6f3 Cancel TestEventDispatcher jobs after test 2022-07-20 00:30:16 +08:00
Him188
a964f7ee87 Improve core network stability:
Close network and do logout only if networkInitialized

core, network: Guard changing state

core, network: Protect state overriding when setting a state

Always close NetworkHandlerSupport even if CommonNetworkHandler is in CLOSED state
2022-07-20 00:30:16 +08:00
Him188
2f537f90b4 Use different types for TestState 2022-07-20 00:30:16 +08:00
Him188
daf9c4a208 Configure GitHub Actions for native 2022-07-20 00:30:16 +08:00
Him188
21d883b630 Introduce higher performance compression/decompression methods for different purposes for common 2022-07-20 00:30:16 +08:00
Him188
89fa379f8f Add native test entrance 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
7088835402 HMPP 2022-07-20 00:30:16 +08:00
Him188
92942c1037 Improve setState stability 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
Karlatemp
0e1585e898
Fix senderName render of ForwardMessage; fix #2143 2022-07-09 10:59:41 +08:00
sandtechnology
057708e637
Fix broken image and gif issue (#2114)
* Try to fix broken image issue #1699

* Re-add deleted comma at tail
2022-07-01 09:00:27 +08:00
Him188
2dcff0cf45
Reduce unnecessary logs from packetLogger 2022-06-14 11:22:04 +01:00
Him188
a4e7fda416
Raise deprecation level for 2.12 2022-06-14 11:19:44 +01:00
Him188
9df7c4bda4
Update RunNoticeRecorder 2022-06-14 10:49:48 +01:00
Him188
297592b9f2 Do not throw exception when failed to locate desensitization rules, for tests on CI 2022-05-25 22:39:53 +01:00
Him188
c4a2f19db6 Use empty internalIds for all OnlineMessageSourceToGroupImpl to speed up tests. 2022-05-25 22:39:53 +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
c75d1f7074 Add MessageSource.isOriginalMessageInitialized 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
112ce644b4 Add preprocessAndSendOutgoingImpl for tests only 2022-05-25 22:39:53 +01:00
Him188
d5ef2aae64 Add MessageProtocolStrategy.sendPacket 2022-05-25 22:39:53 +01:00
Him188
c510a49adc Generalize ImagePatcher 2022-05-25 22:39:53 +01:00
Him188
52968b172f Rename buildChecks to buildCodingChecks 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
9d03260067 Add CustomMessageProtocolTest 2022-05-25 22:39:53 +01:00
Him188
4b79c197e7 Filter out customElem without MIRAI_CUSTOM_ELEM_TYPE 2022-05-25 22:39:53 +01:00
Him188
617b32aa14 Use constant value for MIRAI_CUSTOM_ELEM_TYPE 2022-05-25 22:39:53 +01:00
Him188
1407bcf251 Fix VipFace and add VipFaceProtocolTest 2022-05-25 22:39:53 +01:00
Him188
2dac3b5d92 Add FileMessage tests 2022-05-25 22:39:53 +01:00
Him188
24243e917e Make FileMessage.toString more clear 2022-05-25 22:39:53 +01:00
Him188
50c5ec0456 NoticeProcessorPipeline: desensitize debug logs 2022-05-25 22:39:53 +01:00
Him188
8b6b06ea3b Adapt desensitize in StructureToStringTransformer 2022-05-25 22:39:53 +01:00
Him188
796df9b79f Change Image.toString format to contain more information 2022-05-25 22:39:53 +01:00
Him188
149b77c05b Desensitize LightAppElem.data 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
08d1fc1f38 Add more MessageProtocolTest 2022-05-25 22:39:53 +01:00
Him188
b4f042ae1b Add ImagePatcher for AbstractMockNetworkHandlerTest.components 2022-05-25 22:39:53 +01:00
Him188
67f3b8dee8 Image.equals: compare all properties rather than imageId only 2022-05-25 22:39:53 +01:00
Him188
90deacb692 Fix imageType sent from macOS client, fix #1111 2022-05-25 22:39:53 +01:00
Him188
05aa3c8026 Add ContactOrBot.inferMessageSourceKind 2022-05-25 22:39:53 +01:00
Him188
573473735c Rename RunRecorder to RunNoticeRecorder 2022-05-25 22:39:53 +01:00
Him188
7e87376930 Move toMessageChain and toRichTextElems to MessageProtocolFacade 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
c47779c726 MessageProtocol implementations 2022-05-25 22:39:53 +01:00
Him188
d6343870b8 MessageProtocol pipeline infrastructure 2022-05-25 22:39:53 +01:00
Him188
0b52c2bb5a Generalize NoticeProcessorPipeline as ProcessorPipeline 2022-05-25 22:39:53 +01:00
Him188
0cef98dec0 Fix OfflineAudioFactory configuration 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
7251d87621 Optimize processForwardMessage 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
c118180b54 Move messages implementations other than InternalFlagOnlyMessage from .message to .message.data 2022-05-25 22:39:53 +01:00
Him188
255bfafeed Move InternalFlagOnlyMessage implementations from .message to .message.flags 2022-05-25 22:39:53 +01:00
Him188
68c36669fc Rearrange Image implementations into multiple files 2022-05-25 22:39:53 +01:00
Him188
27daf62ba5 Move Image implementations from .message to .message.image 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
a9516b401b Generalize chineseLength to mirai-core-utils 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
Him188
c3f94a66d6
Remove legacy sendAndExpect to reduce code complexity to avoid compiler bugs, fix #2049 2022-05-25 20:36:58 +01:00
Him188
753342d99e
Add timeout for logout on close 2022-05-21 15:21:07 +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
f83d20bed9 Enable EventLaunchUndispatchedTest 2022-05-16 19:14:14 +01:00
Him188
e0140c6272 Remove useless sub test in NettyHandlerEventTest 2022-05-16 19:14:14 +01:00
Him188
c7ff26ab19 Assign different bot ids for each test bot instance 2022-05-16 19:14:14 +01:00
Him188
5deee909a9 StateObserver: Make beforeStateResume and afterStateResume suspend 2022-05-16 19:14:14 +01:00
Him188
bdf125e26d Broadcast BotOfflineEvent async and ensure joinBroadcast works for it 2022-05-16 19:14:14 +01:00
Him188
da65f4d86d Run login recovery in EventDispatcher's scope 2022-05-16 19:14:14 +01:00
Him188
baf6c35e46 Wait async connector in SelectorRecoveryTest 2022-05-16 19:14:14 +01:00
Him188
ac1fc887c5 Close test bot instance after each test 2022-05-16 19:14:14 +01:00
Him188
8ac5b2d8c0 Do not set mirai.event.trace by default 2022-05-16 19:14:14 +01:00