From 51681aec1bd0aeb1624b4efff7e340c25ddc54db Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Sat, 1 Nov 2025 07:30:47 +0000 Subject: [PATCH] docker: Bump complement. ci: Run complement with optimizations. Signed-off-by: Jason Volk --- .github/workflows/main.yml | 1 - .github/workflows/test.yml | 25 ++++++++++--------------- docker/Dockerfile.complement | 5 +++-- docker/complement.sh | 6 ++---- tests/complement/results.jsonl | 27 ++++++++++++++++++++++++--- 5 files changed, 39 insertions(+), 25 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8c67364a..6f742f06 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -189,7 +189,6 @@ jobs: machines: ${{needs.init.outputs.machines}} excludes: > [ - {"feat_set": "logging"}, {"cargo_profile": "test", "rust_toolchain": "stable", "feat_set": "none"}, {"cargo_profile": "test", "rust_target": "aarch64-unknown-linux-gnu"}, {"cargo_profile": "release-debuginfo"}, diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 74ad4569..b9e9574c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -38,9 +38,6 @@ on: complement: type: boolean default: true - complement_feat_sets: - type: string - default: '["all"]' complement_runner: type: string rust_sdk_integration: @@ -292,22 +289,21 @@ jobs: !failure() && !cancelled() && !contains(inputs.head_msg, '[ci no build]') && inputs.complement - && contains(fromJSON(inputs.cargo_profiles), fromJSON('["test"]')[0]) - && contains(fromJSON(inputs.complement_feat_sets), fromJSON('["all"]')[0]) + && contains(fromJSON(inputs.cargo_profiles), fromJSON('["bench"]')[0]) && contains(fromJSON(inputs.rust_toolchains), fromJSON('["nightly"]')[0]) - && contains(fromJSON(inputs.sys_targets), fromJSON('["x86_64-v1-linux-gnu"]')[0]) + && contains(fromJSON(inputs.sys_targets), fromJSON('["x86_64-v3-linux-gnu"]')[0]) name: Complement uses: ./.github/workflows/bake.yml with: bake_targets: '["complement-tester", "complement-testee"]' - cargo_profiles: '["test"]' - feat_sets: ${{inputs.complement_feat_sets}} + cargo_profiles: '["bench"]' + feat_sets: '["logging"]' rust_toolchains: '["nightly"]' sys_names: ${{inputs.sys_names}} sys_versions: ${{inputs.sys_versions}} rust_targets: ${{inputs.rust_targets}} - sys_targets: '["x86_64-v1-linux-gnu"]' + sys_targets: '["x86_64-v3-linux-gnu"]' machines: ${{inputs.machines}} runner: ${{inputs.complement_runner}} excludes: ${{inputs.excludes}} @@ -319,10 +315,9 @@ jobs: && !contains(inputs.head_msg, '[ci no build]') && inputs.complement && inputs.machines - && contains(fromJSON(inputs.cargo_profiles), fromJSON('["test"]')[0]) - && contains(fromJSON(inputs.feat_sets), fromJSON('["all"]')[0]) + && contains(fromJSON(inputs.cargo_profiles), fromJSON('["bench"]')[0]) && contains(fromJSON(inputs.rust_toolchains), fromJSON('["nightly"]')[0]) - && contains(fromJSON(inputs.sys_targets), fromJSON('["x86_64-v1-linux-gnu"]')[0]) + && contains(fromJSON(inputs.sys_targets), fromJSON('["x86_64-v3-linux-gnu"]')[0]) name: Matrix Compliance needs: [complement, smoke] @@ -334,13 +329,13 @@ jobs: strategy: fail-fast: false matrix: - cargo_profile: ${{fromJSON('["test"]')}} - feat_set: ${{fromJSON(inputs.complement_feat_sets)}} + cargo_profile: ${{fromJSON('["bench"]')}} + feat_set: ${{fromJSON('["logging"]')}} rust_toolchain: ${{fromJSON('["nightly"]')}} sys_name: ${{fromJSON(inputs.sys_names)}} sys_version: ${{fromJSON(inputs.sys_versions)}} rust_target: ${{fromJSON(inputs.rust_targets)}} - sys_target: ${{fromJSON('["x86_64-v1-linux-gnu"]')}} + sys_target: ${{fromJSON('["x86_64-v3-linux-gnu"]')}} machine: ${{fromJSON(inputs.machines)}} exclude: ${{fromJSON(inputs.excludes)}} include: ${{fromJSON(inputs.includes)}} diff --git a/docker/Dockerfile.complement b/docker/Dockerfile.complement index 82941ed1..3efdbf00 100644 --- a/docker/Dockerfile.complement +++ b/docker/Dockerfile.complement @@ -134,12 +134,13 @@ ENTRYPOINT valgrind \ FROM input AS complement-base ARG var_cache ARG var_lib_apt +ARG complement_ref="426bc3458e5287398ec39ab7d2b8f2e3103dcf39" ARG complement_tags="conduwuit_blacklist" ARG complement_tests="./tests/..." ARG complement_run=".*" WORKDIR /usr/src -ADD https://github.com/matrix-construct/complement.git#403840348f6bcc9cc8ed1671dc2f638c2b1ce4ac complement +ADD https://github.com/matrix-construct/complement.git#${complement_ref} complement WORKDIR /usr/src/complement ENV COMPLEMENT_BASE_IMAGE="complement-testee" @@ -157,7 +158,7 @@ ARG complement_verbose=0 ARG complement_debug=0 ARG complement_dirty=0 ARG complement_count=1 -ARG complement_parallel=16 +ARG complement_parallel=1 ARG complement_shuffle=1337 ARG complement_timeout="1h" ARG complement_run=".*" diff --git a/docker/complement.sh b/docker/complement.sh index 2b78709c..4b477950 100755 --- a/docker/complement.sh +++ b/docker/complement.sh @@ -16,7 +16,7 @@ default_sys_target="x86_64-v1-linux-gnu" default_sys_version="testing-slim" default_complement_verbose=0 -default_complement_dirty=1 +default_complement_dirty=0 default_complement_count=1 default_complement_parallel=1 default_complement_shuffle=0 @@ -32,9 +32,7 @@ skip="${skip}|TestRoomCreate/Parallel/POST_/createRoom_makes_a_room_with_a_topic skip="${skip}|TestLogin/parallel/POST_/" skip="${skip}|TestUnbanViaInvite" skip="${skip}|TestRoomState/Parallel/GET_/publicRooms_lists_newly-created_room" -# flakes due to timeout in debug-mode -skip="${skip}|TestMSC4297StateResolutionV2_1_starts_from_empty_set" -skip="${skip}|TestMSC4297StateResolutionV2_1_includes_conflicted_subgraph" +skip="${skip}|TestThreadReceiptsInSyncMSC4102" set -a cargo_profile="${cargo_profile:-$default_cargo_profile}" diff --git a/tests/complement/results.jsonl b/tests/complement/results.jsonl index b9c509d2..1377d172 100644 --- a/tests/complement/results.jsonl +++ b/tests/complement/results.jsonl @@ -154,12 +154,14 @@ {"Action":"fail","Test":"TestFederationKeyUploadQuery/Can_query_remote_device_keys_using_POST"} {"Action":"pass","Test":"TestFederationRedactSendsWithoutEvent"} {"Action":"pass","Test":"TestFederationRejectInvite"} -{"Action":"pass","Test":"TestFederationRoomsInvite"} -{"Action":"pass","Test":"TestFederationRoomsInvite/Parallel"} +{"Action":"fail","Test":"TestFederationRoomsInvite"} +{"Action":"fail","Test":"TestFederationRoomsInvite/Parallel"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Invited_user_can_reject_invite_over_federation"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Invited_user_can_reject_invite_over_federation_for_empty_room"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Invited_user_can_reject_invite_over_federation_several_times"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Invited_user_has_'is_direct'_flag_in_prev_content_after_joining"} +{"Action":"fail","Test":"TestFederationRoomsInvite/Parallel/Inviter_user_can_rescind_invite_over_federation"} +{"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Non-invitee_user_cannot_rescind_invite_over_federation"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Remote_invited_user_can_join_the_room_when_homeserver_is_already_participating_in_the_room"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Remote_invited_user_can_reject_invite_when_homeserver_is_already_participating_in_the_room"} {"Action":"pass","Test":"TestFederationRoomsInvite/Parallel/Remote_invited_user_can_see_room_metadata"} @@ -328,6 +330,11 @@ {"Action":"pass","Test":"TestMSC4291RoomIDAsHashOfCreateEvent_CannotSendCreateEvent"} {"Action":"pass","Test":"TestMSC4291RoomIDAsHashOfCreateEvent_RoomIDIsOnCreateEvent"} {"Action":"fail","Test":"TestMSC4291RoomIDAsHashOfCreateEvent_UpgradedRooms"} +{"Action":"pass","Test":"TestMSC4297StateResolutionV2_1_includes_conflicted_subgraph"} +{"Action":"pass","Test":"TestMSC4297StateResolutionV2_1_starts_from_empty_set"} +{"Action":"fail","Test":"TestMSC4308ThreadSubscriptionsSlidingSync"} +{"Action":"fail","Test":"TestMSC4308ThreadSubscriptionsSlidingSync/Receives_thread_subscriptions_over_incremental_sliding_sync"} +{"Action":"fail","Test":"TestMSC4308ThreadSubscriptionsSlidingSync/Receives_thread_subscriptions_over_initial_sliding_sync"} {"Action":"fail","Test":"TestMSC4311FullCreateEventOnStrippedState"} {"Action":"pass","Test":"TestMediaConfig"} {"Action":"pass","Test":"TestMediaFilenames"} @@ -466,6 +473,9 @@ {"Action":"pass","Test":"TestProfileDisplayName"} {"Action":"pass","Test":"TestProfileDisplayName/GET_/profile/:user_id/displayname_publicly_accessible"} {"Action":"pass","Test":"TestProfileDisplayName/PUT_/profile/:user_id/displayname_sets_my_name"} +{"Action":"pass","Test":"TestPublicRooms"} +{"Action":"pass","Test":"TestPublicRooms/parallel"} +{"Action":"pass","Test":"TestPublicRooms/parallel/Can_search_public_room_list"} {"Action":"pass","Test":"TestPushRuleCacheHealth"} {"Action":"pass","Test":"TestPushSync"} {"Action":"pass","Test":"TestPushSync/Adding_a_push_rule_wakes_up_an_incremental_/sync"} @@ -618,6 +628,7 @@ {"Action":"pass","Test":"TestRoomMessagesLazyLoadingLocalUser"} {"Action":"pass","Test":"TestRoomReadMarkers"} {"Action":"pass","Test":"TestRoomReceipts"} +{"Action":"pass","Test":"TestRoomReceipts/Receipts_DO_NOT_include_a_`room_id`_field"} {"Action":"pass","Test":"TestRoomSpecificUsernameAtJoin"} {"Action":"pass","Test":"TestRoomSpecificUsernameAtJoin/Bob_can_find_Alice_by_mxid"} {"Action":"pass","Test":"TestRoomSpecificUsernameAtJoin/Bob_can_find_Alice_by_profile_display_name"} @@ -693,6 +704,15 @@ {"Action":"pass","Test":"TestSyncTimelineGap/incremental"} {"Action":"pass","Test":"TestTentativeEventualJoiningAfterRejecting"} {"Action":"fail","Test":"TestThreadReceiptsInSyncMSC4102"} +{"Action":"fail","Test":"TestThreadSubscriptions"} +{"Action":"fail","Test":"TestThreadSubscriptions/Can_create_automatic_subscription_to_a_thread"} +{"Action":"fail","Test":"TestThreadSubscriptions/Can_subscribe_to_and_unsubscribe_from_a_thread"} +{"Action":"fail","Test":"TestThreadSubscriptions/Cannot_use_thread_root_as_automatic_subscription_cause_event"} +{"Action":"fail","Test":"TestThreadSubscriptions/Error_when_using_invalid_automatic_event_ID"} +{"Action":"fail","Test":"TestThreadSubscriptions/Manual_subscriptions_overwrite_automatic_subscriptions"} +{"Action":"pass","Test":"TestThreadSubscriptions/Nonexistent_threads_return_404"} +{"Action":"fail","Test":"TestThreadSubscriptions/Server-side_automatic_subscription_ordering_conflict"} +{"Action":"fail","Test":"TestThreadSubscriptions/Unsubscribe_succeeds_even_with_no_subscription"} {"Action":"fail","Test":"TestThreadedReceipts"} {"Action":"fail","Test":"TestThreadsEndpoint"} {"Action":"pass","Test":"TestToDeviceMessages"} @@ -705,6 +725,7 @@ {"Action":"pass","Test":"TestTxnScopeOnLocalEcho"} {"Action":"pass","Test":"TestTyping"} {"Action":"pass","Test":"TestTyping/Typing_can_be_explicitly_stopped"} +{"Action":"pass","Test":"TestTyping/Typing_events_DO_NOT_include_a_`room_id`_field"} {"Action":"pass","Test":"TestTyping/Typing_notification_sent_to_local_room_members"} {"Action":"fail","Test":"TestUnknownEndpoints"} {"Action":"pass","Test":"TestUnknownEndpoints/Client-server_endpoints"} @@ -712,7 +733,7 @@ {"Action":"pass","Test":"TestUnknownEndpoints/Media_endpoints"} {"Action":"pass","Test":"TestUnknownEndpoints/Server-server_endpoints"} {"Action":"pass","Test":"TestUnknownEndpoints/Unknown_prefix"} -{"Action":"fail","Test":"TestUnrejectRejectedEvents"} +{"Action":"pass","Test":"TestUnrejectRejectedEvents"} {"Action":"fail","Test":"TestUploadKey"} {"Action":"fail","Test":"TestUploadKey/Parallel"} {"Action":"fail","Test":"TestUploadKey/Parallel/Can_claim_one_time_key_using_POST"}