ref:main

verify-linux-arm64 passed

Command: exec bash ci/verify.sh
Runner: carl offline linux/aarch64
Started: Aug 31, 2026 at 06:01 UTC Completed: Aug 31, 2026 at 06:03 UTC Duration: 1m 48s
Exit code: 0

Build Output

==> JAVA_HOME /usr/lib/jvm/java-21-openjdk-arm64
==> JDK 21 at /usr/bin/java
==> cargo at /home/pi/.cargo/bin/cargo
==> GRADLE_USER_HOME /home/pi/.anvil-runner/_work/fangorn/huorn-minecraft/1/.gradle-home (default was not writable)
==> CARGO_HOME /home/pi/.anvil-runner/_work/fangorn/huorn-minecraft/1/.cargo-home (default was not writable)
==> Host Linux/aarch64
=== [1/3] cargo test ===
Finished `release` profile [optimized] target(s) in 0.96s
Running unittests src/lib.rs (target/ci-Linux-aarch64/release/deps/huorn_minecraft-a68f6f7133f07fe5)
running 54 tests
test backend::docker::tests::test_extract_json_field ... ok
test backend::docker::tests::test_parse_memory_limit ... ok
test glyph_cache::tests::test_baseline_offset ... ok
test glyph_cache::tests::test_cell_size_consistency ... ok
test glyph_cache::tests::test_default_spacing_constants ... ok
test glyph_cache::tests::test_cache_clear ... ok
test glyph_cache::tests::test_glyph_cache_creation ... ok
test glyph_cache::tests::test_glyph_caching ... ok
test glyph_cache::tests::test_glyph_key_equality ... ok
test glyph_cache::tests::test_glyph_key_hash ... ok
test glyph_cache::tests::test_char_spacing_affects_cell_width ... ok
test glyph_cache::tests::test_glyph_rasterization ... ok
test glyph_cache::tests::test_glyph_rasterization_various_chars ... ok
test glyph_cache::tests::test_glyph_style_variations ... ok
test glyph_cache::tests::test_monospace_consistency ... ok
test glyph_cache::tests::test_space_character ... ok
test glyph_cache::tests::test_spacing_getters ... ok
test glyph_cache::tests::test_subpixel_order_default ... ok
test glyph_cache::tests::test_subpixel_order_from_i32 ... ok
test glyph_cache::tests::test_line_height_affects_cell_height ... ok
test glyph_cache::tests::test_subpixel_glyph_rasterization ... ok
test glyph_cache::tests::test_subpixel_vs_grayscale_glyph ... ok
test renderer::tests::test_color_palette_default ... ok
test renderer::tests::test_cursor_style_from_i32 ... ok
test glyph_cache::tests::test_glyph_cache_various_sizes ... ok
test renderer::tests::test_cell_size ... ok
test renderer::tests::test_dirty_flag ... ok
test glyph_cache::tests::test_unicode_characters ... ok
test renderer::tests::test_grayscale_progression ... ok
test renderer::tests::test_indexed_color_256_palette ... ok
test renderer::tests::test_pixel_buffer_rgba_format ... ok
test renderer::tests::test_pixel_buffer_access ... ok
test terminal::tests::test_alt_letter ... ok
test renderer::tests::test_renderer_creation ... ok
test terminal::tests::test_arrow_keys ... ok
test terminal::tests::test_arrow_keys_with_modifiers ... ok
test terminal::tests::test_basic_keys ... ok
test terminal::tests::test_ctrl_letter ... ok
test terminal::tests::test_function_keys ... ok
test renderer::tests::test_renderer_resize ... ok
test terminal::tests::test_headless_pixel_buffer_format ... ok
test terminal::tests::test_headless_terminal_ansi_colors ... ok
test terminal::tests::test_headless_terminal_cursor_rendering ... ok
test terminal::tests::test_headless_terminal_feed_and_render ... ok
test terminal::tests::test_headless_terminal_multiline ... ok
test terminal::tests::test_navigation_keys ... ok
test terminal::tests::test_headless_terminal_resize_and_render ... ok
test renderer::tests::test_renderer_various_sizes ... ok
test terminal::tests::test_terminal_create_and_render ... ok
test terminal::tests::test_terminal_scroll ... ok
test terminal::tests::test_unknown_key ... ok
test terminal::tests::test_terminal_resize ... ok
test terminal::tests::test_terminal_send_text ... ok
test terminal::tests::test_terminal_send_key ... ok
test result: ok. 54 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.40s
Running tests/audit_test.rs (target/ci-Linux-aarch64/release/deps/audit_test-9ad550e25e9e8170)
running 6 tests
test test_audit_log_empty_payload ... ok
test test_audit_log_writes_jsonl ... ok
test test_audit_log_multiple_events ... ok
test test_idle_timeout_unregister ... ok
test test_idle_timeout_detects_idle ... ok
test test_idle_timeout_resets_on_touch ... ok
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
Running tests/backend_test.rs (target/ci-Linux-aarch64/release/deps/backend_test-1bbcd50c9bf73a64)
running 20 tests
test docker_backend_name ... ok
test docker_spawn_succeeds_or_fails_based_on_availability ... ok
test plain_drop_cleans_up_child_process ... ok
test docker_is_available_does_not_panic ... ok
test plain_kill_then_write_fails_gracefully ... ok
test plain_kill_marks_session_dead ... ok
test plain_resize_does_not_crash ... ok
test plain_resize_then_io_still_works ... ok
test plain_spawn_creates_alive_session ... ok
test plain_spawn_with_explicit_shell ... ok
test plain_multiple_writes_and_reads ... ok
test registry_available_backends_includes_plain ... ok
test registry_contains_plain_and_docker ... ok
test registry_plain_is_available ... ok
test terminal_state_docker_backend_behavior ... ok
test terminal_state_invalid_backend_fails ... ok
test plain_multiple_concurrent_sessions ... ok
test plain_write_and_read_real_output ... ok
test plain_exit_command_kills_session ... ok
test terminal_state_with_plain_backend ... ok
test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.57s
Running tests/docker_e2e_test.rs (target/ci-Linux-aarch64/release/deps/docker_e2e_test-564db0180e9b646a)
running 10 tests
test docker_container_is_isolated ... ignored
test docker_exit_command ... ignored
test docker_kill_and_cleanup ... ignored
test docker_multiple_concurrent_containers ... ignored
test docker_no_containers_leaked_after_test ... ignored
test docker_resize ... ignored
test docker_resource_limits_enforced ... ignored
test docker_spawn_creates_running_container ... ignored
test docker_terminal_state_full_pipeline ... ignored
test docker_write_and_read_real_output ... ignored
test result: ok. 0 passed; 0 failed; 10 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/security_test.rs (target/ci-Linux-aarch64/release/deps/security_test-12c14135edc09ce9)
running 6 tests
test test_blocklist_allows_safe_input ... ok
test test_blocklist_blocks_match ... ok
test test_blocklist_substring_match ... ok
test test_line_accumulation ... ok
test test_multiple_lines_in_single_feed ... ok
test test_empty_blocklist_allows_everything ... ok
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/terminal_integration.rs (target/ci-Linux-aarch64/release/deps/terminal_integration-0a01eef6953fb786)
running 7 tests
test terminal_create_render_destroy ... ok
test terminal_resize_lifecycle ... ok
test terminal_content_after_command ... ok
test terminal_pixel_buffer_changes_after_output ... ok
test terminal_scroll ... ok
test terminal_rapid_create_destroy_no_leak ... ok
test terminal_send_key_and_poll ... ok
test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.40s
Doc-tests huorn_minecraft
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
=== [2/3] gradlew build ===
Starting a Gradle Daemon (subsequent builds will be faster)
> Configure project :
Architect Plugin: 3.4.164
Architectury Loom: 1.6.422
You are using an outdated version of Architectury Loom! This version will not receive any support, please consider updating!
> Task :forge:processResources UP-TO-DATE
> Task :fabric:processResources UP-TO-DATE
> Task :fabric:processTestResources NO-SOURCE
> Task :forge:processTestResources NO-SOURCE
> Task :fabric:validateAccessWidener NO-SOURCE
> Task :forge:validateAccessWidener UP-TO-DATE
> Task :common:compileJava UP-TO-DATE
> Task :common:processResources UP-TO-DATE
> Task :common:classes UP-TO-DATE
> Task :common:jar UP-TO-DATE
> Task :common:remapJar UP-TO-DATE
> Task :common:sourcesJar UP-TO-DATE
> Task :common:remapSourcesJar UP-TO-DATE
> Task :common:assemble UP-TO-DATE
> Task :common:compileTestJava NO-SOURCE
> Task :common:processTestResources NO-SOURCE
> Task :common:testClasses UP-TO-DATE
> Task :common:test NO-SOURCE
> Task :common:validateAccessWidener UP-TO-DATE
> Task :common:check UP-TO-DATE
> Task :forge:compileJava UP-TO-DATE
> Task :forge:classes UP-TO-DATE
> Task :forge:jar UP-TO-DATE
> Task :forge:shadowJar UP-TO-DATE
> Task :forge:remapJar UP-TO-DATE
> Task :forge:sourcesJar UP-TO-DATE
> Task :forge:remapSourcesJar UP-TO-DATE
> Task :forge:assemble UP-TO-DATE
> Task :forge:compileTestJava NO-SOURCE
> Task :forge:testClasses UP-TO-DATE
> Task :forge:test NO-SOURCE
> Task :forge:check UP-TO-DATE
> Task :forge:build UP-TO-DATE
> Task :fabric:compileJava UP-TO-DATE
> Task :fabric:classes UP-TO-DATE
> Task :fabric:jar UP-TO-DATE
> Task :fabric:shadowJar UP-TO-DATE
> Task :fabric:remapJar UP-TO-DATE
> Task :fabric:sourcesJar UP-TO-DATE
> Task :fabric:remapSourcesJar UP-TO-DATE
> Task :fabric:assemble UP-TO-DATE
> Task :fabric:compileTestJava NO-SOURCE
> Task :fabric:testClasses UP-TO-DATE
> Task :fabric:test NO-SOURCE
> Task :fabric:check UP-TO-DATE
> Task :fabric:build UP-TO-DATE
> Task :common:transformProductionFabric
[Architectury Transformer] Read classpath in 4.651 s
[Architectury Transformer] Transformed jar with 5 transformer(s) in 6.093 s
> Task :common:transformProductionForge
[Architectury Transformer] Read classpath in 1.650 s
[Architectury Transformer] Transformed jar with 7 transformer(s) in 3.293 s
> Task :common:build
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.8/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD SUCCESSFUL in 50s
24 actionable tasks: 2 executed, 22 up-to-date
=== [3/3] gradlew :fabric:runGametest ===
> Configure project :
Architect Plugin: 3.4.164
Architectury Loom: 1.6.422
You are using an outdated version of Architectury Loom! This version will not receive any support, please consider updating!
> Task :fabric:processResources UP-TO-DATE
> Task :fabric:generateDLIConfig
> Task :fabric:generateLog4jConfig
> Task :common:compileJava UP-TO-DATE
> Task :common:processResources UP-TO-DATE
> Task :common:classes UP-TO-DATE
> Task :common:jar UP-TO-DATE
> Task :fabric:generateRemapClasspath UP-TO-DATE
> Task :fabric:compileJava UP-TO-DATE
> Task :fabric:classes UP-TO-DATE
> Task :fabric:prepareArchitecturyTransformer
> Task :fabric:configureLaunch
> Task :fabric:runGametest
[Architectury Transformer] Architectury Runtime 5.2.91
[Architectury Transformer] Read classpath in 2.718 s
[Architectury Transformer] Listening at /home/pi/.anvil-runner/_work/fangorn/huorn-minecraft/1/common/build/devlibs/huorn-common-0.0.0-dev-dev.jar
[01:02:52] [main/INFO] (FabricLoader/GameProvider) Loading Minecraft 1.20.1 with Fabric Loader 0.15.3
[01:02:52] [main/INFO] (FabricLoader) Loading 48 mods:
- architectury 9.2.14
- fabric-api 0.91.0+1.20.1
- fabric-api-base 0.4.37+78d798af4f
- fabric-api-lookup-api-v1 1.6.35+4d8536c977
- fabric-biome-api-v1 13.0.12+215bbe9677
- fabric-block-api-v1 1.0.10+92a0d36777
- fabric-block-view-api-v2 1.0.0+92a0d36777
- fabric-command-api-v1 1.2.33+f71b366f77
- fabric-command-api-v2 2.2.12+b3afc78b77
- fabric-commands-v0 0.2.50+df3654b377
- fabric-containers-v0 0.1.63+df3654b377
- fabric-content-registries-v0 4.0.10+57aed33f77
- fabric-convention-tags-v1 1.5.4+a1a980da77
- fabric-crash-report-info-v1 0.2.18+aeb40ebe77
- fabric-data-generation-api-v1 12.3.3+d7b148e077
- fabric-dimensions-v1 2.1.53+8536527b77
- fabric-entity-events-v1 1.5.22+b3afc78b77
- fabric-events-interaction-v0 0.6.1+e91849a877
- fabric-events-lifecycle-v0 0.2.62+df3654b377
- fabric-game-rule-api-v1 1.0.39+ae9f657a77
- fabric-gametest-api-v1 1.2.12+b3afc78b77
- fabric-item-api-v1 2.1.27+b3afc78b77
- fabric-item-group-api-v1 4.0.11+d7b148e077
- fabric-lifecycle-events-v1 2.2.21+b3afc78b77
- fabric-loot-api-v2 1.2.0+96dfa95977
- fabric-loot-tables-v1 1.1.44+9e7660c677
- fabric-message-api-v1 5.1.8+d7b148e077
- fabric-mining-level-api-v1 2.1.49+b3afc78b77
- fabric-networking-api-v1 1.3.10+eeb8eb3677
- fabric-networking-v0 0.3.50+df3654b377
- fabric-object-builder-api-v1 11.1.2+4ee0bc6077
- fabric-particles-v1 1.1.1+201a23a077
- fabric-permissions-api-v0 0.3.1
- fabric-recipe-api-v1 1.0.20+b3afc78b77
- fabric-registry-sync-v0 2.3.2+4df89eb277
- fabric-rendering-data-attachment-v1 0.3.36+92a0d36777
- fabric-rendering-fluids-v1 3.0.27+b3afc78b77
- fabric-resource-conditions-api-v1 2.3.7+29de845d77
- fabric-resource-loader-v0 0.11.9+132c48c177
- fabric-screen-handler-api-v1 1.3.29+b3afc78b77
- fabric-transfer-api-v1 3.3.3+c81d263177
- fabric-transitive-access-wideners-v1 4.3.0+6c31357e77
- fabricloader 0.15.3
- generated_5375628 1.0.0
- huorn 0.0.0-dev
- java 21
- minecraft 1.20.1
- mixinextras 0.3.2
[01:02:53] [main/INFO] (FabricLoader/Mixin) SpongePowered MIXIN Subsystem Version=0.8.5 Source=file:/home/pi/.anvil-runner/_work/fangorn/huorn-minecraft/1/.gradle-home/caches/modules-2/files-2.1/net.fabricmc/sponge-mixin/0.12.5+mixin.0.8.5/8d31fb97c3e0cd7c8dad3441851c523bcfae6d8e/sponge-mixin-0.12.5+mixin.0.8.5.jar Service=Knot/Fabric Env=SERVER
[01:02:53] [main/INFO] (FabricLoader/Mixin) Loaded Fabric development mappings for mixin remapper!
[01:02:53] [main/INFO] (FabricLoader/Mixin) Compatibility level set to JAVA_16
[01:02:53] [main/INFO] (FabricLoader/Mixin) Compatibility level set to JAVA_17
[01:02:54] [main/INFO] (FabricLoader/MixinExtras|Service) Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.3.2).
[01:03:05] [main/INFO] (Minecraft) Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[01:03:06] [main/INFO] (FabricGameTestHelper) Starting test server
[01:03:08] [main/INFO] (Minecraft) Loaded 7 recipes
[01:03:09] [main/INFO] (Minecraft) Loaded 1272 advancements
[01:03:09] [main/INFO] (BiomeModificationImpl) Applied 0 biome modifications to 0 of 64 new biomes in 2.103 ms
[01:03:11] [Server thread/INFO] (Minecraft) Preparing start region for dimension minecraft:overworld
[01:03:11] [Server thread/INFO] (Minecraft) Preparing spawn area: 0%
[01:03:11] [Worker-Main-3/INFO] (Minecraft) Preparing spawn area: 0%
[01:03:12] [Worker-Main-2/INFO] (Minecraft) Preparing spawn area: 83%
[01:03:12] [Worker-Main-3/INFO] (Minecraft) Preparing spawn area: 83%
[01:03:13] [Worker-Main-1/INFO] (Minecraft) Preparing spawn area: 93%
[01:03:13] [Server thread/INFO] (Minecraft) Time elapsed: 2097 ms
[01:03:13] [Server thread/INFO] (Minecraft) Started game test server
[01:03:14] [Server thread/INFO] (Minecraft) Running test batch 'defaultBatch:1' (50 tests)...
[01:03:15] [Server thread/INFO] (Minecraft) 50 tests are now running!
[01:03:15] [Server thread/INFO] (Minecraft) [STDOUT]: [Huorn] Native methods registered for io.fangorn.huorn.nativelib.NativeTerminal (classloader: net.fabricmc.loader.impl.launch.knot.KnotClassLoader)
[Huorn] Registered 13 native methods for io/fangorn/huorn/nativelib/NativeTerminal
[01:03:15] [Server thread/INFO] (Minecraft) [STDOUT]: [Huorn] Native library loaded from /tmp/huorn-natives8938198025137196838/libhuorn_minecraft.so
[01:03:15] [Server thread/INFO] (Minecraft) [STDOUT]: [GameTest] Docker unavailable: Docker API error 404: {"message":"No such image: ubuntu:24.04"}
[01:03:18] [Server thread/INFO] (Minecraft) [STDOUT]: [GameTest] Audit log verification: PASSED
[01:03:18] [Server thread/INFO] (Minecraft) [STDOUT]: [GameTest] Audit log content: {"ts":"2026-08-07T07:59:12Z","event":"CONNECT","player":"test-uuid","name":"TestPlayer","backend":"plain","location":"0,64,0"}
{"ts":"2026-08-07T07:59:12Z","event":"DISCONNECT","player":"test-uuid","name":"TestPlayer"}
{"ts":"2026-08-31T06:03:18Z","event":"CONNECT","player":"test-uuid","name":"TestPlayer","backend":"plain","location":"0,64,0"}
{"ts":"2026-08-31T06:03:18Z","event":"DISCONNECT","player":"test-uuid","name":"TestPlayer"}
[01:03:18] [Server thread/WARN] (Minecraft) Can't keep up! Is the server overloaded? Running 5223ms or 104 ticks behind
[01:03:19] [Server thread/INFO] (Minecraft) [++++++++++++++++++++++++++++++++++++++++++++++++++]
[01:03:22] [Server thread/INFO] (Minecraft) ========= 50 GAME TESTS COMPLETE ======================
[01:03:22] [Server thread/INFO] (Minecraft) All 50 required tests passed :)
[01:03:22] [Server thread/INFO] (Minecraft) ====================================================
[01:03:22] [Server thread/INFO] (Minecraft) Stopping server
[01:03:22] [Server thread/INFO] (Minecraft) Saving players
[01:03:22] [Server thread/INFO] (Minecraft) Saving worlds
[01:03:23] [Server thread/INFO] (Minecraft) Saving chunks for level 'ServerLevel[Test Level]'/minecraft:overworld
[01:03:27] [Server thread/INFO] (Minecraft) Saving chunks for level 'ServerLevel[Test Level]'/minecraft:the_end
[01:03:27] [Server thread/INFO] (Minecraft) Saving chunks for level 'ServerLevel[Test Level]'/minecraft:the_nether
[01:03:27] [Server thread/INFO] (Minecraft) ThreadedAnvilChunkStorage (world): All chunks are saved
[01:03:27] [Server thread/INFO] (Minecraft) ThreadedAnvilChunkStorage (DIM1): All chunks are saved
[01:03:27] [Server thread/INFO] (Minecraft) ThreadedAnvilChunkStorage (DIM-1): All chunks are saved
[01:03:27] [Server thread/INFO] (Minecraft) ThreadedAnvilChunkStorage: All dimensions are saved
[01:03:27] [Server thread/INFO] (Minecraft) Game test server shutting down
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.8/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD SUCCESSFUL in 45s
10 actionable tasks: 4 executed, 6 up-to-date
=== All checks passed on Linux/aarch64 ===