>>> lua-timerwheel: Building community/lua-timerwheel 1.0.2-r1 (using abuild 3.17.0_rc1-r2) started Tue, 28 Apr 2026 18:32:22 +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 luajit lua5.1 lua5.1-busted lua5.2 lua5.2-busted lua5.3 lua5.3-busted lua5.4 lua5.4-busted ( 1/77) Installing lua5.1-libs (5.1.5-r13) ( 2/77) Installing lua5.1 (5.1.5-r13) ( 3/77) Installing lua-coxpcall (1.17.0-r2) ( 4/77) Installing lua5.1-coxpcall (1.17.0-r2) ( 5/77) Installing lua-cjson (2.1.0-r12) ( 6/77) Installing lua5.1-cjson (2.1.0-r12) ( 7/77) Installing lua-cliargs (3.0.2-r1) ( 8/77) Installing lua-luassert (1.9.0-r1) ( 9/77) Installing lua5.1-say (1.4.1-r1) (10/77) Installing lua5.1-luassert (1.9.0-r1) (11/77) Installing lua-mediator (1.1.2-r3) (12/77) Installing lua5.1-mediator (1.1.2-r3) (13/77) Installing lua-filesystem (1.8.0-r5) (14/77) Installing lua5.1-filesystem (1.8.0-r5) (15/77) Installing lua-penlight (1.15.0-r2) (16/77) Installing lua-say (1.4.1-r1) (17/77) Installing lua-system (0.7.0-r0) (18/77) Installing lua5.1-system (0.7.0-r0) (19/77) Installing lua-term (0.07-r3) (20/77) Installing lua5.1-term (0.07-r3) (21/77) Installing lua-busted (2.3.0-r1) (22/77) Installing lua5.1-penlight (1.15.0-r2) (23/77) Installing lua5.1-busted (2.3.0-r1) (24/77) Installing lua-socket (3.1.0-r2) (25/77) Installing lua5.1-socket (3.1.0-r2) (26/77) Installing luajit (2.1_p20251030-r0) (27/77) Installing lua5.2-libs (5.2.4-r13) (28/77) Installing lua5.2 (5.2.4-r13) (29/77) Installing lua5.2-socket (3.1.0-r2) (30/77) Installing lua5.2-filesystem (1.8.0-r5) (31/77) Installing lua5.2-system (0.7.0-r0) (32/77) Installing lua5.2-cjson (2.1.0-r12) (33/77) Installing lua5.2-say (1.4.1-r1) (34/77) Installing lua5.2-luassert (1.9.0-r1) (35/77) Installing lua5.2-mediator (1.1.2-r3) (36/77) Installing lua5.2-penlight (1.15.0-r2) (37/77) Installing lua5.2-term (0.07-r3) (38/77) Installing lua5.2-busted (2.3.0-r1) (39/77) Installing lua5.2-coxpcall (1.17.0-r2) (40/77) Installing linenoise (1.0-r5) (41/77) Installing lua5.3-libs (5.3.6-r6) (42/77) Installing lua5.3 (5.3.6-r6) (43/77) Installing lua5.3-say (1.4.1-r1) (44/77) Installing lua5.3-term (0.07-r3) (45/77) Installing lua5.3-cjson (2.1.0-r12) (46/77) Installing lua5.3-luassert (1.9.0-r1) (47/77) Installing lua5.3-mediator (1.1.2-r3) (48/77) Installing lua5.3-filesystem (1.8.0-r5) (49/77) Installing lua5.3-penlight (1.15.0-r2) (50/77) Installing lua5.3-system (0.7.0-r0) (51/77) Installing lua5.3-busted (2.3.0-r1) (52/77) Installing lua5.3-coxpcall (1.17.0-r2) (53/77) Installing lua5.3-socket (3.1.0-r2) (54/77) Installing lua5.4-libs (5.4.8-r0) (55/77) Installing readline (8.3.3-r1) (56/77) Installing lua5.4 (5.4.8-r0) (57/77) Installing lua5.4-say (1.4.1-r1) (58/77) Installing lua5.4-luassert (1.9.0-r1) (59/77) Installing lua5.4-cjson (2.1.0-r12) (60/77) Installing lua5.4-mediator (1.1.2-r3) (61/77) Installing lua5.4-filesystem (1.8.0-r5) (62/77) Installing lua5.4-penlight (1.15.0-r2) (63/77) Installing lua5.4-system (0.7.0-r0) (64/77) Installing lua5.4-term (0.07-r3) (65/77) Installing lua5.4-busted (2.3.0-r1) (66/77) Installing lua5.4-coxpcall (1.17.0-r2) (67/77) Installing lua5.4-socket (3.1.0-r2) (68/77) Installing .makedepends-lua-timerwheel (20260428.183305) (69/77) Installing lua5.5-say (1.4.1-r1) (70/77) Installing lua5.5-socket (3.1.0-r2) (71/77) Installing lua5.5-luassert (1.9.0-r1) (72/77) Installing lua5.5-mediator (1.1.2-r3) (73/77) Installing lua5.5-penlight (1.15.0-r2) (74/77) Installing lua5.5-system (0.7.0-r0) (75/77) Installing lua5.5-term (0.07-r3) (76/77) Installing lua5.5-busted (2.3.0-r1) (77/77) Installing lua5.5-coxpcall (1.17.0-r2) Executing busybox-1.37.0-r31.trigger OK: 431.4 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) 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.19 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.56 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.14 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.33 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.31 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.23 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 (1.33 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 (3.54 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.37 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.41 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.25 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 (10.84 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.50 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.23 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 (4.60 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.20 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.42 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.38 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.45 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.18 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.37 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.10 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.48 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.84 ms) [----------] 24 tests from spec/timerwheel_spec.lua (45.53 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (45.82 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.17 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.56 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.15 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.50 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.25 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.25 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 (1.20 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.99 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.18 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.18 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.40 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 (12.70 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.24 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.21 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.81 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.21 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.40 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.37 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.42 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.20 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.34 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.09 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.46 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.91 ms) [----------] 24 tests from spec/timerwheel_spec.lua (42.49 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (42.75 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.23 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.61 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.27 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.36 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.22 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.24 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 (1.07 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.70 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.16 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.17 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.25 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 (10.65 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.33 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.31 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 (4.23 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.22 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.49 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.37 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.46 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.18 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.45 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.10 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.53 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.89 ms) [----------] 24 tests from spec/timerwheel_spec.lua (112.23 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (112.51 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.21 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.55 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.16 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.32 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.25 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.21 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 (1.13 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.78 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.17 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.19 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.24 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 (12.33 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.00 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.22 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.02 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.19 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.45 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.38 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.42 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.18 ms) [ RUN ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer [ OK ] spec/timerwheel_spec.lua:384: Timerwheel cancel() removes a timer (0.41 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.09 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.47 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.79 ms) [----------] 24 tests from spec/timerwheel_spec.lua (111.76 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (112.08 ms total) [ PASSED ] 24 tests. >>> lua-timerwheel: Testing on luajit [==========] 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.09 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.32 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.31 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.31 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.24 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.86 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.59 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.14 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.09 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 (3.58 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.52 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.11 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.35 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.11 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.44 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.64 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.64 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.13 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.04 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.22 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.21 ms) [----------] 24 tests from spec/timerwheel_spec.lua (26.88 ms total) [----------] Global test environment teardown. [==========] 24 tests from 1 test file ran. (27.15 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 Tue, 28 Apr 2026 18:33:06 +0000 elapsed time 0h 0m 44s >>> lua-timerwheel: Cleaning up srcdir >>> lua-timerwheel: Cleaning up pkgdir >>> lua-timerwheel: Uninstalling dependencies... ( 1/77) Purging .makedepends-lua-timerwheel (20260428.183305) ( 2/77) Purging lua5.4-coxpcall (1.17.0-r2) ( 3/77) Purging lua5.3-coxpcall (1.17.0-r2) ( 4/77) Purging lua5.1-coxpcall (1.17.0-r2) ( 5/77) Purging lua5.2-coxpcall (1.17.0-r2) ( 6/77) Purging lua5.5-coxpcall (1.17.0-r2) ( 7/77) Purging lua-coxpcall (1.17.0-r2) ( 8/77) Purging lua5.5-busted (2.3.0-r1) ( 9/77) Purging lua5.5-luassert (1.9.0-r1) (10/77) Purging lua5.5-mediator (1.1.2-r3) (11/77) Purging lua5.5-penlight (1.15.0-r2) (12/77) Purging lua5.5-say (1.4.1-r1) (13/77) Purging lua5.5-system (0.7.0-r0) (14/77) Purging lua5.5-term (0.07-r3) (15/77) Purging lua-busted (2.3.0-r1) (16/77) Purging lua-cjson (2.1.0-r12) (17/77) Purging lua-luassert (1.9.0-r1) (18/77) Purging lua-mediator (1.1.2-r3) (19/77) Purging lua-say (1.4.1-r1) (20/77) Purging lua-system (0.7.0-r0) (21/77) Purging lua-term (0.07-r3) (22/77) Purging lua5.1-socket (3.1.0-r2) (23/77) Purging lua5.5-socket (3.1.0-r2) (24/77) Purging lua5.2-socket (3.1.0-r2) (25/77) Purging lua5.3-socket (3.1.0-r2) (26/77) Purging lua5.4-socket (3.1.0-r2) (27/77) Purging lua-socket (3.1.0-r2) (28/77) Purging lua5.3-busted (2.3.0-r1) (29/77) Purging lua5.3-cjson (2.1.0-r12) (30/77) Purging lua5.3-luassert (1.9.0-r1) (31/77) Purging lua5.3-mediator (1.1.2-r3) (32/77) Purging lua5.3-say (1.4.1-r1) (33/77) Purging lua5.3-system (0.7.0-r0) (34/77) Purging lua5.3-term (0.07-r3) (35/77) Purging lua5.3-penlight (1.15.0-r2) (36/77) Purging lua5.3-filesystem (1.8.0-r5) (37/77) Purging lua5.1-busted (2.3.0-r1) (38/77) Purging lua5.1-cjson (2.1.0-r12) (39/77) Purging lua5.1-luassert (1.9.0-r1) (40/77) Purging lua5.1-mediator (1.1.2-r3) (41/77) Purging lua5.1-say (1.4.1-r1) (42/77) Purging lua5.1-system (0.7.0-r0) (43/77) Purging lua5.1-term (0.07-r3) (44/77) Purging lua5.1-penlight (1.15.0-r2) (45/77) Purging lua5.1-filesystem (1.8.0-r5) (46/77) Purging lua5.2-busted (2.3.0-r1) (47/77) Purging lua5.2-cjson (2.1.0-r12) (48/77) Purging lua5.2-luassert (1.9.0-r1) (49/77) Purging lua5.2-mediator (1.1.2-r3) (50/77) Purging lua5.2-say (1.4.1-r1) (51/77) Purging lua5.2-system (0.7.0-r0) (52/77) Purging lua5.2-term (0.07-r3) (53/77) Purging lua5.2-penlight (1.15.0-r2) (54/77) Purging lua5.2-filesystem (1.8.0-r5) (55/77) Purging lua5.4-busted (2.3.0-r1) (56/77) Purging lua5.4-cjson (2.1.0-r12) (57/77) Purging lua5.4-luassert (1.9.0-r1) (58/77) Purging lua5.4-mediator (1.1.2-r3) (59/77) Purging lua5.4-say (1.4.1-r1) (60/77) Purging lua5.4-system (0.7.0-r0) (61/77) Purging lua5.4-term (0.07-r3) (62/77) Purging lua5.4-penlight (1.15.0-r2) (63/77) Purging lua5.4-filesystem (1.8.0-r5) (64/77) Purging lua-penlight (1.15.0-r2) (65/77) Purging lua-filesystem (1.8.0-r5) (66/77) Purging luajit (2.1_p20251030-r0) (67/77) Purging lua5.1 (5.1.5-r13) (68/77) Purging lua5.2 (5.2.4-r13) (69/77) Purging lua5.3 (5.3.6-r6) (70/77) Purging lua5.4 (5.4.8-r0) (71/77) Purging linenoise (1.0-r5) (72/77) Purging lua-cliargs (3.0.2-r1) (73/77) Purging lua5.1-libs (5.1.5-r13) (74/77) Purging lua5.2-libs (5.2.4-r13) (75/77) Purging lua5.3-libs (5.3.6-r6) (76/77) Purging lua5.4-libs (5.4.8-r0) (77/77) Purging readline (8.3.3-r1) Executing busybox-1.37.0-r31.trigger OK: 425.2 MiB in 102 packages >>> lua-timerwheel: Updating the community/x86 repository index... >>> lua-timerwheel: Signing the index...