>>> lua-timerwheel: Building community/lua-timerwheel 1.0.2-r1 (using abuild 3.17.0_rc1-r2) started Thu, 23 Apr 2026 01:56:05 +0000 >>> lua-timerwheel: Validating /home/buildozer/aports/community/lua-timerwheel/APKBUILD... >>> lua-timerwheel: Analyzing dependencies... >>> lua-timerwheel: Installing for build: build-base lua lua-coxpcall lua-busted lua-socket lua5.1 lua5.1-busted lua5.2 lua5.2-busted lua5.3 lua5.3-busted lua5.4 lua5.4-busted ( 1/76) Installing lua5.1-libs (5.1.5-r13) ( 2/76) Installing lua5.1 (5.1.5-r13) ( 3/76) Installing lua-coxpcall (1.17.0-r2) ( 4/76) Installing lua5.1-coxpcall (1.17.0-r2) ( 5/76) Installing lua-cjson (2.1.0-r12) ( 6/76) Installing lua5.1-cjson (2.1.0-r12) ( 7/76) Installing lua-cliargs (3.0.2-r1) ( 8/76) Installing lua-luassert (1.9.0-r1) ( 9/76) Installing lua5.1-say (1.4.1-r1) (10/76) Installing lua5.1-luassert (1.9.0-r1) (11/76) Installing lua-mediator (1.1.2-r3) (12/76) Installing lua5.1-mediator (1.1.2-r3) (13/76) Installing lua-filesystem (1.8.0-r5) (14/76) Installing lua5.1-filesystem (1.8.0-r5) (15/76) Installing lua-penlight (1.15.0-r2) (16/76) Installing lua-say (1.4.1-r1) (17/76) Installing lua-system (0.7.0-r0) (18/76) Installing lua5.1-system (0.7.0-r0) (19/76) Installing lua-term (0.07-r3) (20/76) Installing lua5.1-term (0.07-r3) (21/76) Installing lua-busted (2.3.0-r1) (22/76) Installing lua5.1-penlight (1.15.0-r2) (23/76) Installing lua5.1-busted (2.3.0-r1) (24/76) Installing lua-socket (3.1.0-r2) (25/76) Installing lua5.1-socket (3.1.0-r2) (26/76) Installing lua5.2-libs (5.2.4-r13) (27/76) Installing lua5.2 (5.2.4-r13) (28/76) Installing lua5.2-socket (3.1.0-r2) (29/76) Installing lua5.2-filesystem (1.8.0-r5) (30/76) Installing lua5.2-system (0.7.0-r0) (31/76) Installing lua5.2-cjson (2.1.0-r12) (32/76) Installing lua5.2-say (1.4.1-r1) (33/76) Installing lua5.2-luassert (1.9.0-r1) (34/76) Installing lua5.2-mediator (1.1.2-r3) (35/76) Installing lua5.2-penlight (1.15.0-r2) (36/76) Installing lua5.2-term (0.07-r3) (37/76) Installing lua5.2-busted (2.3.0-r1) (38/76) Installing lua5.2-coxpcall (1.17.0-r2) (39/76) Installing linenoise (1.0-r5) (40/76) Installing lua5.3-libs (5.3.6-r6) (41/76) Installing lua5.3 (5.3.6-r6) (42/76) Installing lua5.3-say (1.4.1-r1) (43/76) Installing lua5.3-term (0.07-r3) (44/76) Installing lua5.3-cjson (2.1.0-r12) (45/76) Installing lua5.3-luassert (1.9.0-r1) (46/76) Installing lua5.3-mediator (1.1.2-r3) (47/76) Installing lua5.3-filesystem (1.8.0-r5) (48/76) Installing lua5.3-penlight (1.15.0-r2) (49/76) Installing lua5.3-system (0.7.0-r0) (50/76) Installing lua5.3-busted (2.3.0-r1) (51/76) Installing lua5.3-coxpcall (1.17.0-r2) (52/76) Installing lua5.3-socket (3.1.0-r2) (53/76) Installing lua5.4-libs (5.4.8-r0) (54/76) Installing readline (8.3.3-r1) (55/76) Installing lua5.4 (5.4.8-r0) (56/76) Installing lua5.4-say (1.4.1-r1) (57/76) Installing lua5.4-luassert (1.9.0-r1) (58/76) Installing lua5.4-cjson (2.1.0-r12) (59/76) Installing lua5.4-mediator (1.1.2-r3) (60/76) Installing lua5.4-filesystem (1.8.0-r5) (61/76) Installing lua5.4-penlight (1.15.0-r2) (62/76) Installing lua5.4-system (0.7.0-r0) (63/76) Installing lua5.4-term (0.07-r3) (64/76) Installing lua5.4-busted (2.3.0-r1) (65/76) Installing lua5.4-coxpcall (1.17.0-r2) (66/76) Installing lua5.4-socket (3.1.0-r2) (67/76) Installing .makedepends-lua-timerwheel (20260423.015636) (68/76) Installing lua5.5-say (1.4.1-r1) (69/76) Installing lua5.5-socket (3.1.0-r2) (70/76) Installing lua5.5-luassert (1.9.0-r1) (71/76) Installing lua5.5-mediator (1.1.2-r3) (72/76) Installing lua5.5-penlight (1.15.0-r2) (73/76) Installing lua5.5-system (0.7.0-r0) (74/76) Installing lua5.5-term (0.07-r3) (75/76) Installing lua5.5-busted (2.3.0-r1) (76/76) Installing lua5.5-coxpcall (1.17.0-r2) Executing busybox-1.37.0-r31.trigger OK: 466.1 MiB in 179 packages >>> lua-timerwheel: Cleaning up srcdir >>> lua-timerwheel: Cleaning up pkgdir >>> lua-timerwheel: Cleaning up tmpdir >>> lua-timerwheel: Fetching https://distfiles.alpinelinux.org/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> lua-timerwheel: Fetching https://github.com/Tieske/timerwheel.lua/archive/1.0.2/timerwheel.lua-1.0.2.tar.gz Connecting to github.com (20.26.156.215:443) Connecting to codeload.github.com (20.26.156.216:443) saving to '/var/cache/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz.part' timerwheel.lua-1.0.2 100% |********************************| 13576 0:00:00 ETA '/var/cache/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz.part' saved /var/cache/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz: OK >>> lua-timerwheel: Fetching https://distfiles.alpinelinux.org/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz /var/cache/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz: OK >>> lua-timerwheel: Unpacking /var/cache/distfiles/v3.24/timerwheel.lua-1.0.2.tar.gz... >>> lua-timerwheel: Testing on lua5.1 [==========] Running tests from scanned files. [----------] Global test environment setup. [----------] Running tests from spec/timerwheel_spec.lua [ RUN ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options [ OK ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options [ OK ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options (0.43 ms) [ RUN ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options [ OK ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options (0.10 ms) [ RUN ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer [ OK ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer (0.23 ms) [ RUN ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument [ OK ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument (0.19 ms) [ RUN ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error [ OK ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers [ OK ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers (0.98 ms) [ RUN ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables [ OK ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables (2.56 ms) [ RUN ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past [ OK ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past (0.32 ms) [ RUN ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge [ OK ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge [ OK ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge [ OK ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge (8.42 ms) [ RUN ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings [ OK ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings (1.37 ms) [ RUN ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge [ OK ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing [ OK ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing (3.87 ms) [ RUN ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error [ OK ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error (0.15 ms) [ RUN ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution [ OK ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution (0.34 ms) [ RUN ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot [ OK ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot (0.31 ms) [ RUN ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead [ OK ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead (0.36 ms) [ RUN ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past [ OK ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.28 ms) [ RUN ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer [ OK ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer (0.06 ms) [ RUN ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot [ OK ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot (0.37 ms) [ RUN ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling [ OK ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling (3.55 ms) [----------] 24 tests from spec/timerwheel_spec.lua (35.23 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (35.44 ms total) [ PASSED ] 24 tests. >>> lua-timerwheel: Testing on lua5.2 [==========] Running tests from scanned files. [----------] Global test environment setup. [----------] Running tests from spec/timerwheel_spec.lua [ RUN ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options [ OK ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options [ OK ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options (0.43 ms) [ RUN ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options [ OK ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer [ OK ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer (0.21 ms) [ RUN ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument [ OK ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error [ OK ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error (0.16 ms) [ RUN ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers [ OK ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers (0.88 ms) [ RUN ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables [ OK ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables (2.26 ms) [ RUN ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past [ OK ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past (0.13 ms) [ RUN ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge [ OK ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge (0.12 ms) [ RUN ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge [ OK ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge [ OK ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge (8.78 ms) [ RUN ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings [ OK ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings (1.21 ms) [ RUN ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge [ OK ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge (0.16 ms) [ RUN ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing [ OK ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing (2.70 ms) [ RUN ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error [ OK ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution [ OK ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution (0.32 ms) [ RUN ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot [ OK ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot (0.29 ms) [ RUN ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead [ OK ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead (0.36 ms) [ RUN ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past [ OK ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.30 ms) [ RUN ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer [ OK ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer (0.06 ms) [ RUN ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot [ OK ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot (0.35 ms) [ RUN ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling [ OK ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling (2.55 ms) [----------] 24 tests from spec/timerwheel_spec.lua (32.28 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (32.49 ms total) [ PASSED ] 24 tests. >>> lua-timerwheel: Testing on lua5.3 [==========] Running tests from scanned files. [----------] Global test environment setup. [----------] Running tests from spec/timerwheel_spec.lua [ RUN ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options [ OK ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options [ OK ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options (0.42 ms) [ RUN ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options [ OK ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer [ OK ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer (0.21 ms) [ RUN ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument [ OK ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error [ OK ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error (0.15 ms) [ RUN ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers [ OK ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers (0.87 ms) [ RUN ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables [ OK ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables (2.20 ms) [ RUN ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past [ OK ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past (0.12 ms) [ RUN ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge [ OK ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge (0.13 ms) [ RUN ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge [ OK ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge [ OK ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge (8.54 ms) [ RUN ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings [ OK ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings (1.17 ms) [ RUN ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge [ OK ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge (0.16 ms) [ RUN ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing [ OK ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing (2.24 ms) [ RUN ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error [ OK ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution [ OK ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution (0.30 ms) [ RUN ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot [ OK ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot (0.26 ms) [ RUN ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead [ OK ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead (0.31 ms) [ RUN ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past [ OK ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past (0.12 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.24 ms) [ RUN ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer [ OK ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer (0.05 ms) [ RUN ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot [ OK ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot (0.30 ms) [ RUN ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling [ OK ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling (1.86 ms) [----------] 24 tests from spec/timerwheel_spec.lua (98.96 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (99.14 ms total) [ PASSED ] 24 tests. >>> lua-timerwheel: Testing on lua5.4 [==========] Running tests from scanned files. [----------] Global test environment setup. [----------] Running tests from spec/timerwheel_spec.lua [ RUN ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options [ OK ] spec/timerwheel_spec.lua:31: Timerwheel new() succeeds without options (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options [ OK ] spec/timerwheel_spec.lua:38: Timerwheel new() fails with bad options (0.35 ms) [ RUN ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options [ OK ] spec/timerwheel_spec.lua:63: Timerwheel new() succeeds with proper options (0.09 ms) [ RUN ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer [ OK ] spec/timerwheel_spec.lua:91: Timerwheel set() and step() sets a timer (0.17 ms) [ RUN ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument [ OK ] spec/timerwheel_spec.lua:103: Timerwheel set() and step() sets a timer and passes the argument (0.13 ms) [ RUN ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error [ OK ] spec/timerwheel_spec.lua:117: Timerwheel set() and step() doesn't fail on a callback error (0.84 ms) [ RUN ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers [ OK ] spec/timerwheel_spec.lua:132: Timerwheel set() and step() sets 10 timers (0.73 ms) [ RUN ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables [ OK ] spec/timerwheel_spec.lua:147: Timerwheel set() and step() sets 10 timers and reuses the tables (1.87 ms) [ RUN ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past [ OK ] spec/timerwheel_spec.lua:177: Timerwheel set() and step() sets a timer in the past (0.11 ms) [ RUN ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge [ OK ] spec/timerwheel_spec.lua:188: Timerwheel set() and step() sets a timer on the old edge (0.10 ms) [ RUN ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge [ OK ] spec/timerwheel_spec.lua:199: Timerwheel set() and step() sets a timer on the new edge (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge [ OK ] spec/timerwheel_spec.lua:214: Timerwheel set() and step() sets timers over the ring edge (7.97 ms) [ RUN ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings [ OK ] spec/timerwheel_spec.lua:229: Timerwheel set() and step() sets timers, skipping over empty rings (0.96 ms) [ RUN ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge [ OK ] spec/timerwheel_spec.lua:246: Timerwheel set() and step() doesn't execute before edge, but on/after edge (0.14 ms) [ RUN ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing [ OK ] spec/timerwheel_spec.lua:261: Timerwheel set() and step() callback and args gets GC'ed after executing (2.26 ms) [ RUN ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error [ OK ] spec/timerwheel_spec.lua:290: Timerwheel set() and step() calls the error handler on an error (0.12 ms) [ RUN ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution [ OK ] spec/timerwheel_spec.lua:322: Timerwheel peek() returns time to execution (0.29 ms) [ RUN ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot [ OK ] spec/timerwheel_spec.lua:336: Timerwheel peek() returns time to execution from last slot (0.25 ms) [ RUN ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead [ OK ] spec/timerwheel_spec.lua:348: Timerwheel peek() returns time to execution a few (empty) rings ahead (0.29 ms) [ RUN ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past [ OK ] spec/timerwheel_spec.lua:360: Timerwheel peek() returns time to execution in the past (0.12 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.23 ms) [ RUN ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer [ OK ] spec/timerwheel_spec.lua:401: Timerwheel cancel() removes a non-existing timer (0.05 ms) [ RUN ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot [ OK ] spec/timerwheel_spec.lua:407: Timerwheel cancel() removes timers, leaving holes in the slot (0.30 ms) [ RUN ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling [ OK ] spec/timerwheel_spec.lua:432: Timerwheel cancel() callback and args gets GC'ed after cancelling (2.35 ms) [----------] 24 tests from spec/timerwheel_spec.lua (92.88 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (93.08 ms total) [ PASSED ] 24 tests. >>> lua-timerwheel: Entering fakeroot... >>> lua-timerwheel*: Running postcheck for lua-timerwheel >>> lua-timerwheel*: Preparing package lua-timerwheel... Please specify at least one package name on the command line. >>> lua-timerwheel*: Tracing dependencies... lua lua-coxpcall >>> lua-timerwheel*: Package size: 9.4 KB >>> lua-timerwheel*: Compressing data... >>> lua-timerwheel*: Create checksum... >>> lua-timerwheel*: Create lua-timerwheel-1.0.2-r1.apk >>> lua-timerwheel: Build complete at Thu, 23 Apr 2026 01:56:40 +0000 elapsed time 0h 0m 35s >>> lua-timerwheel: Cleaning up srcdir >>> lua-timerwheel: Cleaning up pkgdir >>> lua-timerwheel: Uninstalling dependencies... ( 1/76) Purging .makedepends-lua-timerwheel (20260423.015636) ( 2/76) Purging lua5.4-coxpcall (1.17.0-r2) ( 3/76) Purging lua5.3-coxpcall (1.17.0-r2) ( 4/76) Purging lua5.1-coxpcall (1.17.0-r2) ( 5/76) Purging lua5.2-coxpcall (1.17.0-r2) ( 6/76) Purging lua5.5-coxpcall (1.17.0-r2) ( 7/76) Purging lua-coxpcall (1.17.0-r2) ( 8/76) Purging lua5.5-busted (2.3.0-r1) ( 9/76) Purging lua5.5-luassert (1.9.0-r1) (10/76) Purging lua5.5-mediator (1.1.2-r3) (11/76) Purging lua5.5-penlight (1.15.0-r2) (12/76) Purging lua5.5-say (1.4.1-r1) (13/76) Purging lua5.5-system (0.7.0-r0) (14/76) Purging lua5.5-term (0.07-r3) (15/76) Purging lua-busted (2.3.0-r1) (16/76) Purging lua-cjson (2.1.0-r12) (17/76) Purging lua-luassert (1.9.0-r1) (18/76) Purging lua-mediator (1.1.2-r3) (19/76) Purging lua-say (1.4.1-r1) (20/76) Purging lua-system (0.7.0-r0) (21/76) Purging lua-term (0.07-r3) (22/76) Purging lua5.1-socket (3.1.0-r2) (23/76) Purging lua5.5-socket (3.1.0-r2) (24/76) Purging lua5.2-socket (3.1.0-r2) (25/76) Purging lua5.3-socket (3.1.0-r2) (26/76) Purging lua5.4-socket (3.1.0-r2) (27/76) Purging lua-socket (3.1.0-r2) (28/76) Purging lua5.1-busted (2.3.0-r1) (29/76) Purging lua5.1-cjson (2.1.0-r12) (30/76) Purging lua5.1-luassert (1.9.0-r1) (31/76) Purging lua5.1-mediator (1.1.2-r3) (32/76) Purging lua5.1-penlight (1.15.0-r2) (33/76) Purging lua5.1-filesystem (1.8.0-r5) (34/76) Purging lua5.1-say (1.4.1-r1) (35/76) Purging lua5.1-system (0.7.0-r0) (36/76) Purging lua5.1-term (0.07-r3) (37/76) Purging lua5.3-busted (2.3.0-r1) (38/76) Purging lua5.3-cjson (2.1.0-r12) (39/76) Purging lua5.3-luassert (1.9.0-r1) (40/76) Purging lua5.3-mediator (1.1.2-r3) (41/76) Purging lua5.3-say (1.4.1-r1) (42/76) Purging lua5.3-system (0.7.0-r0) (43/76) Purging lua5.3-term (0.07-r3) (44/76) Purging lua5.3-penlight (1.15.0-r2) (45/76) Purging lua5.3-filesystem (1.8.0-r5) (46/76) Purging lua5.2-busted (2.3.0-r1) (47/76) Purging lua5.2-cjson (2.1.0-r12) (48/76) Purging lua5.2-luassert (1.9.0-r1) (49/76) Purging lua5.2-mediator (1.1.2-r3) (50/76) Purging lua5.2-say (1.4.1-r1) (51/76) Purging lua5.2-system (0.7.0-r0) (52/76) Purging lua5.2-term (0.07-r3) (53/76) Purging lua5.2-penlight (1.15.0-r2) (54/76) Purging lua5.2-filesystem (1.8.0-r5) (55/76) Purging lua5.4-busted (2.3.0-r1) (56/76) Purging lua5.4-cjson (2.1.0-r12) (57/76) Purging lua5.4-luassert (1.9.0-r1) (58/76) Purging lua5.4-mediator (1.1.2-r3) (59/76) Purging lua5.4-say (1.4.1-r1) (60/76) Purging lua5.4-system (0.7.0-r0) (61/76) Purging lua5.4-term (0.07-r3) (62/76) Purging lua5.4-penlight (1.15.0-r2) (63/76) Purging lua5.4-filesystem (1.8.0-r5) (64/76) Purging lua-penlight (1.15.0-r2) (65/76) Purging lua-filesystem (1.8.0-r5) (66/76) Purging lua5.1 (5.1.5-r13) (67/76) Purging lua5.2 (5.2.4-r13) (68/76) Purging lua5.3 (5.3.6-r6) (69/76) Purging lua5.4 (5.4.8-r0) (70/76) Purging linenoise (1.0-r5) (71/76) Purging lua-cliargs (3.0.2-r1) (72/76) Purging lua5.1-libs (5.1.5-r13) (73/76) Purging lua5.2-libs (5.2.4-r13) (74/76) Purging lua5.3-libs (5.3.6-r6) (75/76) Purging lua5.4-libs (5.4.8-r0) (76/76) Purging readline (8.3.3-r1) Executing busybox-1.37.0-r31.trigger OK: 459.0 MiB in 103 packages >>> lua-timerwheel: Updating the community/ppc64le repository index... >>> lua-timerwheel: Signing the index...