[1m[32m==>[m[1m Building on electivire[m
[1m[32m==>[m[1m Checking for remote environment...[m
[1m[32m==>[m[1m Syncing package to remote host...[m
sending incremental file list
./
.SRCINFO
          1,132 100%    0.00kB/s    0:00:00            1,132 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=3/5)
.nvchecker.toml
             46 100%   44.92kB/s    0:00:00               46 100%   44.92kB/s    0:00:00 (xfr#2, to-chk=2/5)
PKGBUILD
          2,100  47%    2.00MB/s    0:00:00            4,468 100%    4.26MB/s    0:00:00 (xfr#3, to-chk=1/5)
python-redis-5.2.0-1.log
            456 100%  445.31kB/s    0:00:00              456 100%  445.31kB/s    0:00:00 (xfr#4, to-chk=0/5)

sent 1,740 bytes  received 155 bytes  758.00 bytes/sec
total size is 5,843  speedup is 3.08
[1m[32m==>[m[1m Running  extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l root38 on remote host...[m
[22;2t]2;🔵 Container arch-nspawn-311720 on electivire.felixc.at[?25l:: Synchronizing package databases...
 core downloading...
 extra downloading...
:: Starting full system upgrade...
 there is nothing to do
[?25h[0m[J[23;2t[1m[32m==>[m[1m Building in chroot for [extra] (riscv64)...[m
[1m[32m==>[m[1m Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [root38]...[m[1mdone[m
[1m[32m==>[m[1m Making package: python-redis 5.2.0-1 (Fri Dec 13 22:03:15 2024)[m
[1m[32m==>[m[1m Retrieving sources...[m
[1m[34m  ->[m[1m Updating python-redis git repo...[m
From https://github.com/redis/redis-py
 - [deleted]           (none)                   -> refs/pull/3240/merge
 - [deleted]           (none)                   -> refs/pull/3380/merge
 - [deleted]           (none)                   -> refs/pull/3409/merge
remote: Enumerating objects: 914, done.[K
remote: Counting objects:   0% (1/914)[Kremote: Counting objects:   1% (10/914)[Kremote: Counting objects:   2% (19/914)[Kremote: Counting objects:   3% (28/914)[Kremote: Counting objects:   4% (37/914)[Kremote: Counting objects:   5% (46/914)[Kremote: Counting objects:   6% (55/914)[Kremote: Counting objects:   7% (64/914)[Kremote: Counting objects:   8% (74/914)[Kremote: Counting objects:   9% (83/914)[Kremote: Counting objects:  10% (92/914)[Kremote: Counting objects:  11% (101/914)[Kremote: Counting objects:  12% (110/914)[Kremote: Counting objects:  13% (119/914)[Kremote: Counting objects:  14% (128/914)[Kremote: Counting objects:  15% (138/914)[Kremote: Counting objects:  16% (147/914)[Kremote: Counting objects:  17% (156/914)[Kremote: Counting objects:  18% (165/914)[Kremote: Counting objects:  19% (174/914)[Kremote: Counting objects:  20% (183/914)[Kremote: Counting objects:  21% (192/914)[Kremote: Counting objects:  22% (202/914)[Kremote: Counting objects:  23% (211/914)[Kremote: Counting objects:  24% (220/914)[Kremote: Counting objects:  25% (229/914)[Kremote: Counting objects:  26% (238/914)[Kremote: Counting objects:  27% (247/914)[Kremote: Counting objects:  28% (256/914)[Kremote: Counting objects:  29% (266/914)[Kremote: Counting objects:  30% (275/914)[Kremote: Counting objects:  31% (284/914)[Kremote: Counting objects:  32% (293/914)[Kremote: Counting objects:  33% (302/914)[Kremote: Counting objects:  34% (311/914)[Kremote: Counting objects:  35% (320/914)[Kremote: Counting objects:  36% (330/914)[Kremote: Counting objects:  37% (339/914)[Kremote: Counting objects:  38% (348/914)[Kremote: Counting objects:  39% (357/914)[Kremote: Counting objects:  40% (366/914)[Kremote: Counting objects:  41% (375/914)[Kremote: Counting objects:  42% (384/914)[Kremote: Counting objects:  43% (394/914)[Kremote: Counting objects:  44% (403/914)[Kremote: Counting objects:  45% (412/914)[Kremote: Counting objects:  46% (421/914)[Kremote: Counting objects:  47% (430/914)[Kremote: Counting objects:  48% (439/914)[Kremote: Counting objects:  49% (448/914)[Kremote: Counting objects:  50% (457/914)[Kremote: Counting objects:  51% (467/914)[Kremote: Counting objects:  52% (476/914)[Kremote: Counting objects:  53% (485/914)[Kremote: Counting objects:  54% (494/914)[Kremote: Counting objects:  55% (503/914)[Kremote: Counting objects:  56% (512/914)[Kremote: Counting objects:  57% (521/914)[Kremote: Counting objects:  58% (531/914)[Kremote: Counting objects:  59% (540/914)[Kremote: Counting objects:  60% (549/914)[Kremote: Counting objects:  61% (558/914)[Kremote: Counting objects:  62% (567/914)[Kremote: Counting objects:  63% (576/914)[Kremote: Counting objects:  64% (585/914)[Kremote: Counting objects:  65% (595/914)[Kremote: Counting objects:  66% (604/914)[Kremote: Counting objects:  67% (613/914)[Kremote: Counting objects:  68% (622/914)[Kremote: Counting objects:  69% (631/914)[Kremote: Counting objects:  70% (640/914)[Kremote: Counting objects:  71% (649/914)[Kremote: Counting objects:  72% (659/914)[Kremote: Counting objects:  73% (668/914)[Kremote: Counting objects:  74% (677/914)[Kremote: Counting objects:  75% (686/914)[Kremote: Counting objects:  76% (695/914)[Kremote: Counting objects:  77% (704/914)[Kremote: Counting objects:  78% (713/914)[Kremote: Counting objects:  79% (723/914)[Kremote: Counting objects:  80% (732/914)[Kremote: Counting objects:  81% (741/914)[Kremote: Counting objects:  82% (750/914)[Kremote: Counting objects:  83% (759/914)[Kremote: Counting objects:  84% (768/914)[Kremote: Counting objects:  85% (777/914)[Kremote: Counting objects:  86% (787/914)[Kremote: Counting objects:  87% (796/914)[Kremote: Counting objects:  88% (805/914)[Kremote: Counting objects:  89% (814/914)[Kremote: Counting objects:  90% (823/914)[Kremote: Counting objects:  91% (832/914)[Kremote: Counting objects:  92% (841/914)[Kremote: Counting objects:  93% (851/914)[Kremote: Counting objects:  94% (860/914)[Kremote: Counting objects:  95% (869/914)[Kremote: Counting objects:  96% (878/914)[Kremote: Counting objects:  97% (887/914)[Kremote: Counting objects:  98% (896/914)[Kremote: Counting objects:  99% (905/914)[Kremote: Counting objects: 100% (914/914)[Kremote: Counting objects: 100% (914/914), done.[K
remote: Compressing objects:   0% (1/356)[Kremote: Compressing objects:   1% (4/356)[Kremote: Compressing objects:   2% (8/356)[Kremote: Compressing objects:   3% (11/356)[Kremote: Compressing objects:   4% (15/356)[Kremote: Compressing objects:   5% (18/356)[Kremote: Compressing objects:   6% (22/356)[Kremote: Compressing objects:   7% (25/356)[Kremote: Compressing objects:   8% (29/356)[Kremote: Compressing objects:   9% (33/356)[Kremote: Compressing objects:  10% (36/356)[Kremote: Compressing objects:  11% (40/356)[Kremote: Compressing objects:  12% (43/356)[Kremote: Compressing objects:  13% (47/356)[Kremote: Compressing objects:  14% (50/356)[Kremote: Compressing objects:  15% (54/356)[Kremote: Compressing objects:  16% (57/356)[Kremote: Compressing objects:  17% (61/356)[Kremote: Compressing objects:  18% (65/356)[Kremote: Compressing objects:  19% (68/356)[Kremote: Compressing objects:  20% (72/356)[Kremote: Compressing objects:  21% (75/356)[Kremote: Compressing objects:  22% (79/356)[Kremote: Compressing objects:  23% (82/356)[Kremote: Compressing objects:  24% (86/356)[Kremote: Compressing objects:  25% (89/356)[Kremote: Compressing objects:  26% (93/356)[Kremote: Compressing objects:  27% (97/356)[Kremote: Compressing objects:  28% (100/356)[Kremote: Compressing objects:  29% (104/356)[Kremote: Compressing objects:  30% (107/356)[Kremote: Compressing objects:  31% (111/356)[Kremote: Compressing objects:  32% (114/356)[Kremote: Compressing objects:  33% (118/356)[Kremote: Compressing objects:  34% (122/356)[Kremote: Compressing objects:  35% (125/356)[Kremote: Compressing objects:  36% (129/356)[Kremote: Compressing objects:  37% (132/356)[Kremote: Compressing objects:  38% (136/356)[Kremote: Compressing objects:  39% (139/356)[Kremote: Compressing objects:  40% (143/356)[Kremote: Compressing objects:  41% (146/356)[Kremote: Compressing objects:  42% (150/356)[Kremote: Compressing objects:  43% (154/356)[Kremote: Compressing objects:  44% (157/356)[Kremote: Compressing objects:  45% (161/356)[Kremote: Compressing objects:  46% (164/356)[Kremote: Compressing objects:  47% (168/356)[Kremote: Compressing objects:  48% (171/356)[Kremote: Compressing objects:  49% (175/356)[Kremote: Compressing objects:  50% (178/356)[Kremote: Compressing objects:  51% (182/356)[Kremote: Compressing objects:  52% (186/356)[Kremote: Compressing objects:  53% (189/356)[Kremote: Compressing objects:  54% (193/356)[Kremote: Compressing objects:  55% (196/356)[Kremote: Compressing objects:  56% (200/356)[Kremote: Compressing objects:  57% (203/356)[Kremote: Compressing objects:  58% (207/356)[Kremote: Compressing objects:  59% (211/356)[Kremote: Compressing objects:  60% (214/356)[Kremote: Compressing objects:  61% (218/356)[Kremote: Compressing objects:  62% (221/356)[Kremote: Compressing objects:  63% (225/356)[Kremote: Compressing objects:  64% (228/356)[Kremote: Compressing objects:  65% (232/356)[Kremote: Compressing objects:  66% (235/356)[Kremote: Compressing objects:  67% (239/356)[Kremote: Compressing objects:  68% (243/356)[Kremote: Compressing objects:  69% (246/356)[Kremote: Compressing objects:  70% (250/356)[Kremote: Compressing objects:  71% (253/356)[Kremote: Compressing objects:  72% (257/356)[Kremote: Compressing objects:  73% (260/356)[Kremote: Compressing objects:  74% (264/356)[Kremote: Compressing objects:  75% (267/356)[Kremote: Compressing objects:  76% (271/356)[Kremote: Compressing objects:  77% (275/356)[Kremote: Compressing objects:  78% (278/356)[Kremote: Compressing objects:  79% (282/356)[Kremote: Compressing objects:  80% (285/356)[Kremote: Compressing objects:  81% (289/356)[Kremote: Compressing objects:  82% (292/356)[Kremote: Compressing objects:  83% (296/356)[Kremote: Compressing objects:  84% (300/356)[Kremote: Compressing objects:  85% (303/356)[Kremote: Compressing objects:  86% (307/356)[Kremote: Compressing objects:  87% (310/356)[Kremote: Compressing objects:  88% (314/356)[Kremote: Compressing objects:  89% (317/356)[Kremote: Compressing objects:  90% (321/356)[Kremote: Compressing objects:  91% (324/356)[Kremote: Compressing objects:  92% (328/356)[Kremote: Compressing objects:  93% (332/356)[Kremote: Compressing objects:  94% (335/356)[Kremote: Compressing objects:  95% (339/356)[Kremote: Compressing objects:  96% (342/356)[Kremote: Compressing objects:  97% (346/356)[Kremote: Compressing objects:  98% (349/356)[Kremote: Compressing objects:  99% (353/356)[Kremote: Compressing objects: 100% (356/356)[Kremote: Compressing objects: 100% (356/356), done.[K
Receiving objects:   0% (1/914)Receiving objects:   1% (10/914)Receiving objects:   2% (19/914)Receiving objects:   3% (28/914)Receiving objects:   4% (37/914)Receiving objects:   5% (46/914)Receiving objects:   6% (55/914)Receiving objects:   7% (64/914)Receiving objects:   8% (74/914)Receiving objects:   9% (83/914)Receiving objects:  10% (92/914)Receiving objects:  11% (101/914)Receiving objects:  12% (110/914)Receiving objects:  13% (119/914)Receiving objects:  14% (128/914)Receiving objects:  15% (138/914)Receiving objects:  16% (147/914)Receiving objects:  17% (156/914)Receiving objects:  18% (165/914)Receiving objects:  19% (174/914)Receiving objects:  20% (183/914)Receiving objects:  21% (192/914)Receiving objects:  22% (202/914)Receiving objects:  23% (211/914)Receiving objects:  24% (220/914)Receiving objects:  25% (229/914)Receiving objects:  26% (238/914)Receiving objects:  27% (247/914)Receiving objects:  28% (256/914)Receiving objects:  29% (266/914)Receiving objects:  30% (275/914)Receiving objects:  31% (284/914)Receiving objects:  32% (293/914)Receiving objects:  33% (302/914)Receiving objects:  34% (311/914)Receiving objects:  35% (320/914)Receiving objects:  36% (330/914)Receiving objects:  37% (339/914)Receiving objects:  38% (348/914)Receiving objects:  39% (357/914)Receiving objects:  40% (366/914)Receiving objects:  41% (375/914)Receiving objects:  42% (384/914)Receiving objects:  43% (394/914)Receiving objects:  44% (403/914)Receiving objects:  45% (412/914)Receiving objects:  46% (421/914)Receiving objects:  47% (430/914)Receiving objects:  48% (439/914)Receiving objects:  49% (448/914)Receiving objects:  50% (457/914)Receiving objects:  51% (467/914)Receiving objects:  52% (476/914)Receiving objects:  53% (485/914)Receiving objects:  54% (494/914)Receiving objects:  55% (503/914)Receiving objects:  56% (512/914)Receiving objects:  57% (521/914)Receiving objects:  58% (531/914)Receiving objects:  59% (540/914)Receiving objects:  60% (549/914)Receiving objects:  61% (558/914)Receiving objects:  62% (567/914)Receiving objects:  63% (576/914)Receiving objects:  64% (585/914)Receiving objects:  65% (595/914)Receiving objects:  66% (604/914)Receiving objects:  67% (613/914)Receiving objects:  68% (622/914)Receiving objects:  69% (631/914)Receiving objects:  70% (640/914)Receiving objects:  71% (649/914)Receiving objects:  72% (659/914)Receiving objects:  73% (668/914)Receiving objects:  74% (677/914)Receiving objects:  75% (686/914)Receiving objects:  76% (695/914)Receiving objects:  77% (704/914)Receiving objects:  78% (713/914)Receiving objects:  79% (723/914)Receiving objects:  80% (732/914)Receiving objects:  81% (741/914)Receiving objects:  82% (750/914)Receiving objects:  83% (759/914)Receiving objects:  84% (768/914)Receiving objects:  85% (777/914)Receiving objects:  86% (787/914)Receiving objects:  87% (796/914)Receiving objects:  88% (805/914)Receiving objects:  89% (814/914)Receiving objects:  90% (823/914)Receiving objects:  91% (832/914)Receiving objects:  92% (841/914)Receiving objects:  93% (851/914)Receiving objects:  94% (860/914)Receiving objects:  95% (869/914)Receiving objects:  96% (878/914)Receiving objects:  97% (887/914)Receiving objects:  98% (896/914)Receiving objects:  99% (905/914)Receiving objects: 100% (914/914)Receiving objects: 100% (914/914), 523.04 KiB | 27.53 MiB/s, done.
remote: Total 914 (delta 632), reused 774 (delta 525), pack-reused 0 (from 0)[K
Resolving deltas:   0% (0/632)Resolving deltas:   1% (7/632)Resolving deltas:   2% (14/632)Resolving deltas:   3% (19/632)Resolving deltas:   4% (26/632)Resolving deltas:   5% (32/632)Resolving deltas:   6% (38/632)Resolving deltas:   7% (47/632)Resolving deltas:   8% (51/632)Resolving deltas:   9% (57/632)Resolving deltas:  10% (64/632)Resolving deltas:  11% (70/632)Resolving deltas:  12% (76/632)Resolving deltas:  13% (83/632)Resolving deltas:  14% (89/632)Resolving deltas:  15% (95/632)Resolving deltas:  16% (102/632)Resolving deltas:  17% (109/632)Resolving deltas:  18% (114/632)Resolving deltas:  19% (121/632)Resolving deltas:  20% (127/632)Resolving deltas:  21% (133/632)Resolving deltas:  22% (140/632)Resolving deltas:  23% (150/632)Resolving deltas:  24% (152/632)Resolving deltas:  25% (159/632)Resolving deltas:  26% (165/632)Resolving deltas:  27% (171/632)Resolving deltas:  28% (179/632)Resolving deltas:  29% (184/632)Resolving deltas:  30% (190/632)Resolving deltas:  31% (196/632)Resolving deltas:  32% (204/632)Resolving deltas:  33% (209/632)Resolving deltas:  34% (216/632)Resolving deltas:  35% (222/632)Resolving deltas:  36% (229/632)Resolving deltas:  37% (234/632)Resolving deltas:  38% (241/632)Resolving deltas:  39% (247/632)Resolving deltas:  40% (254/632)Resolving deltas:  41% (260/632)Resolving deltas:  42% (268/632)Resolving deltas:  43% (272/632)Resolving deltas:  44% (280/632)Resolving deltas:  45% (285/632)Resolving deltas:  46% (294/632)Resolving deltas:  47% (301/632)Resolving deltas:  48% (304/632)Resolving deltas:  49% (310/632)Resolving deltas:  50% (317/632)Resolving deltas:  51% (323/632)Resolving deltas:  52% (329/632)Resolving deltas:  53% (335/632)Resolving deltas:  54% (342/632)Resolving deltas:  55% (348/632)Resolving deltas:  56% (354/632)Resolving deltas:  57% (361/632)Resolving deltas:  58% (367/632)Resolving deltas:  59% (374/632)Resolving deltas:  60% (380/632)Resolving deltas:  61% (386/632)Resolving deltas:  62% (393/632)Resolving deltas:  63% (400/632)Resolving deltas:  64% (405/632)Resolving deltas:  65% (411/632)Resolving deltas:  66% (418/632)Resolving deltas:  67% (424/632)Resolving deltas:  68% (432/632)Resolving deltas:  69% (437/632)Resolving deltas:  70% (445/632)Resolving deltas:  71% (449/632)Resolving deltas:  72% (456/632)Resolving deltas:  73% (462/632)Resolving deltas:  74% (468/632)Resolving deltas:  75% (475/632)Resolving deltas:  76% (481/632)Resolving deltas:  77% (487/632)Resolving deltas:  78% (493/632)Resolving deltas:  79% (501/632)Resolving deltas:  80% (506/632)Resolving deltas:  81% (512/632)Resolving deltas:  82% (519/632)Resolving deltas:  83% (525/632)Resolving deltas:  84% (531/632)Resolving deltas:  85% (538/632)Resolving deltas:  86% (544/632)Resolving deltas:  87% (550/632)Resolving deltas:  88% (557/632)Resolving deltas:  89% (563/632)Resolving deltas:  90% (569/632)Resolving deltas:  91% (576/632)Resolving deltas:  92% (582/632)Resolving deltas:  93% (588/632)Resolving deltas:  94% (595/632)Resolving deltas:  95% (601/632)Resolving deltas:  96% (607/632)Resolving deltas:  97% (614/632)Resolving deltas:  98% (620/632)Resolving deltas:  99% (626/632)Resolving deltas: 100% (632/632)Resolving deltas: 100% (632/632), completed with 46 local objects.
   e82c56eb..21ef4dd3  5.0                      -> 5.0
 * [new branch]        5.2                      -> 5.2
   17db62e3..8f2276e1  master                   -> master
 * [new branch]        vv-full-coverage-bug-fix -> vv-full-coverage-bug-fix
 * [new branch]        vv-tba-support           -> vv-tba-support
 + 9e3c9680...c367d0fe refs/pull/1485/merge     -> refs/pull/1485/merge  (forced update)
 + 6ba98f98...d5de2baa refs/pull/2904/merge     -> refs/pull/2904/merge  (forced update)
 + 42a65bbc...697c3497 refs/pull/2930/head      -> refs/pull/2930/head  (forced update)
 + e02aa2a5...d0b1026a refs/pull/2930/merge     -> refs/pull/2930/merge  (forced update)
 + 96d52c7c...3b5e4c2a refs/pull/2964/merge     -> refs/pull/2964/merge  (forced update)
 + 3fb41eba...3f118976 refs/pull/2989/merge     -> refs/pull/2989/merge  (forced update)
 + ebc3c094...dbf626e6 refs/pull/2996/merge     -> refs/pull/2996/merge  (forced update)
 + 984b4872...b4bb0227 refs/pull/2998/merge     -> refs/pull/2998/merge  (forced update)
 + 983eda85...566548d3 refs/pull/3047/merge     -> refs/pull/3047/merge  (forced update)
 + 3ae2aa07...5ca2ab76 refs/pull/3075/merge     -> refs/pull/3075/merge  (forced update)
 + a4bf0437...ffcc4360 refs/pull/3111/merge     -> refs/pull/3111/merge  (forced update)
 + 990604b0...7258a170 refs/pull/3147/head      -> refs/pull/3147/head  (forced update)
 + e4a1f6ec...97a91075 refs/pull/3147/merge     -> refs/pull/3147/merge  (forced update)
 + 0bea0421...42a24610 refs/pull/3152/merge     -> refs/pull/3152/merge  (forced update)
 + 2b85bc59...60540fda refs/pull/3182/merge     -> refs/pull/3182/merge  (forced update)
 + 8ca576f1...37e35d72 refs/pull/3191/merge     -> refs/pull/3191/merge  (forced update)
 + 9a8a7749...c7537e4f refs/pull/3205/merge     -> refs/pull/3205/merge  (forced update)
 + 201bd189...89f2def8 refs/pull/3321/merge     -> refs/pull/3321/merge  (forced update)
 + a0493f7e...d6f85814 refs/pull/3331/merge     -> refs/pull/3331/merge  (forced update)
 + b133f928...4ef416b7 refs/pull/3341/merge     -> refs/pull/3341/merge  (forced update)
 + beec8913...72542da4 refs/pull/3346/merge     -> refs/pull/3346/merge  (forced update)
 + 3c99d19c...22af9404 refs/pull/3354/merge     -> refs/pull/3354/merge  (forced update)
 + 4b760133...31dbb851 refs/pull/3357/head      -> refs/pull/3357/head  (forced update)
 + 05ef2624...ca2b849d refs/pull/3357/merge     -> refs/pull/3357/merge  (forced update)
 + 96938603...8c98452b refs/pull/3364/merge     -> refs/pull/3364/merge  (forced update)
 + 29a4bea8...7458ef1f refs/pull/3367/merge     -> refs/pull/3367/merge  (forced update)
 + 96491a35...f7c465d2 refs/pull/3376/merge     -> refs/pull/3376/merge  (forced update)
 + 6b2a7253...d7a728a5 refs/pull/3397/merge     -> refs/pull/3397/merge  (forced update)
 + ac7a8f9d...71572537 refs/pull/3398/merge     -> refs/pull/3398/merge  (forced update)
 + 02f460e3...967322e8 refs/pull/3404/merge     -> refs/pull/3404/merge  (forced update)
   86205f73..d0e321fe  refs/pull/3407/head      -> refs/pull/3407/head
 + f43a70cc...4a2bba60 refs/pull/3407/merge     -> refs/pull/3407/merge  (forced update)
   dc9a866b..bb95f1ce  refs/pull/3409/head      -> refs/pull/3409/head
 * [new ref]           refs/pull/3413/head      -> refs/pull/3413/head
 * [new ref]           refs/pull/3413/merge     -> refs/pull/3413/merge
 * [new ref]           refs/pull/3415/head      -> refs/pull/3415/head
 * [new ref]           refs/pull/3417/head      -> refs/pull/3417/head
 * [new ref]           refs/pull/3418/head      -> refs/pull/3418/head
 * [new ref]           refs/pull/3420/head      -> refs/pull/3420/head
 * [new ref]           refs/pull/3420/merge     -> refs/pull/3420/merge
 * [new ref]           refs/pull/3423/head      -> refs/pull/3423/head
 * [new ref]           refs/pull/3423/merge     -> refs/pull/3423/merge
 * [new ref]           refs/pull/3424/head      -> refs/pull/3424/head
 * [new ref]           refs/pull/3424/merge     -> refs/pull/3424/merge
 * [new ref]           refs/pull/3426/head      -> refs/pull/3426/head
 * [new ref]           refs/pull/3432/head      -> refs/pull/3432/head
 * [new ref]           refs/pull/3432/merge     -> refs/pull/3432/merge
 * [new ref]           refs/pull/3434/head      -> refs/pull/3434/head
 * [new ref]           refs/pull/3434/merge     -> refs/pull/3434/merge
 * [new ref]           refs/pull/3435/head      -> refs/pull/3435/head
 * [new ref]           refs/pull/3435/merge     -> refs/pull/3435/merge
 * [new ref]           refs/pull/3436/head      -> refs/pull/3436/head
 * [new ref]           refs/pull/3436/merge     -> refs/pull/3436/merge
 * [new ref]           refs/pull/3437/head      -> refs/pull/3437/head
 * [new ref]           refs/pull/3438/head      -> refs/pull/3438/head
 * [new ref]           refs/pull/3439/head      -> refs/pull/3439/head
 * [new ref]           refs/pull/3439/merge     -> refs/pull/3439/merge
 * [new ref]           refs/pull/3440/head      -> refs/pull/3440/head
 * [new ref]           refs/pull/3440/merge     -> refs/pull/3440/merge
 * [new ref]           refs/pull/3441/head      -> refs/pull/3441/head
 * [new ref]           refs/pull/3442/head      -> refs/pull/3442/head
 * [new ref]           refs/pull/3442/merge     -> refs/pull/3442/merge
 * [new ref]           refs/pull/3445/head      -> refs/pull/3445/head
 * [new ref]           refs/pull/3445/merge     -> refs/pull/3445/merge
 * [new ref]           refs/pull/3446/head      -> refs/pull/3446/head
 * [new ref]           refs/pull/3447/head      -> refs/pull/3447/head
 * [new ref]           refs/pull/3447/merge     -> refs/pull/3447/merge
 * [new ref]           refs/pull/3448/head      -> refs/pull/3448/head
 * [new ref]           refs/pull/3448/merge     -> refs/pull/3448/merge
 * [new ref]           refs/pull/3449/head      -> refs/pull/3449/head
 * [new ref]           refs/pull/3451/head      -> refs/pull/3451/head
 * [new ref]           refs/pull/3456/head      -> refs/pull/3456/head
 * [new ref]           refs/pull/3456/merge     -> refs/pull/3456/merge
 * [new tag]           v5.2.0                   -> v5.2.0
 * [new tag]           v5.2.1                   -> v5.2.1
[1m[32m==>[m[1m Validating source files with b2sums...[m
    python-redis ... Passed
[22;2t]2;🔵 Container arch-nspawn-312838 on electivire.felixc.at[1m[32m==>[m[1m Making package: python-redis 5.2.0-1 (Fri Dec 13 22:03:26 2024)[m
[1m[32m==>[m[1m Checking runtime dependencies...[m
[1m[32m==>[m[1m Installing missing dependencies...[m
[?25lresolving dependencies...
looking for conflicting packages...

Package (1)                 New Version  Net Change

extra/python-async-timeout  4.0.3-5        0.03 MiB

Total Installed Size:  0.03 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing python-async-timeout...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
[?25h[1m[32m==>[m[1m Checking buildtime dependencies...[m
[1m[32m==>[m[1m Installing missing dependencies...[m
[?25lresolving dependencies...
looking for conflicting packages...

Package (37)                     New Version  Net Change  Download Size

extra/blas                       3.12.0-5       0.41 MiB               
extra/cblas                      3.12.0-5       0.28 MiB               
extra/jemalloc                   1:5.3.0-4      6.55 MiB               
extra/lapack                     3.12.0-5       4.72 MiB               
extra/perl-error                 0.17029-7      0.04 MiB               
extra/perl-mailtools             2.21-9         0.10 MiB               
extra/perl-timedate              2.33-7         0.08 MiB               
extra/python-autocommand         2.2.2-6        0.08 MiB               
extra/python-cffi                1.17.1-1       1.33 MiB               
extra/python-charset-normalizer  3.4.0-1        0.44 MiB               
extra/python-idna                3.10-1         0.88 MiB               
extra/python-iniconfig           2.0.0-5        0.04 MiB               
extra/python-jaraco.collections  5.0.1-1        0.10 MiB               
extra/python-jaraco.context      5.3.0-1        0.04 MiB               
extra/python-jaraco.functools    4.0.2-1        0.07 MiB               
extra/python-jaraco.text         4.0.0-1        0.08 MiB               
extra/python-more-itertools      10.3.0-1       0.63 MiB               
extra/python-packaging           24.2-1         0.66 MiB               
extra/python-platformdirs        4.3.6-1        0.24 MiB               
extra/python-pluggy              1.5.0-1        0.20 MiB               
extra/python-pycparser           2.22-2         1.71 MiB               
extra/python-pyproject-hooks     1.2.0-1        0.10 MiB               
extra/python-urllib3             1.26.20-3      1.26 MiB               
extra/git                        2.47.1-1      27.20 MiB               
extra/python-build               1.2.2-1        0.20 MiB       0.05 MiB
extra/python-coverage            7.6.8-1        1.88 MiB               
extra/python-cryptography        43.0.3-1       4.85 MiB               
extra/python-hiredis             3.0.0-1        0.09 MiB               
extra/python-installer           0.7.0-8        0.18 MiB               
extra/python-numpy               2.2.0-1       39.04 MiB       6.29 MiB
extra/python-pyopenssl           24.2.1-2       0.74 MiB               
extra/python-pytest              1:8.3.3-1      3.90 MiB               
extra/python-pytest-asyncio      0.24.0-1       0.14 MiB               
extra/python-requests            2.32.3-1       0.60 MiB               
extra/python-setuptools          1:75.2.0-2     7.99 MiB       1.23 MiB
extra/python-wheel               0.45.0-1       0.28 MiB               
extra/redis                      7.2.5-1        3.82 MiB               

Total Download Size:     7.57 MiB
Total Installed Size:  110.96 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 python-numpy-2.2.0-1-riscv64 downloading...
 python-setuptools-1:75.2.0-2-any downloading...
 python-build-1.2.2-1-any downloading...
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing perl-error...
installing perl-timedate...
installing perl-mailtools...
installing git...
Optional dependencies for git
    tk: gitk and git gui
    openssh: ssh transport and crypto
    perl-libwww: git svn
    perl-term-readkey: git svn and interactive.singlekey setting
    perl-io-socket-ssl: git send-email TLS support
    perl-authen-sasl: git send-email TLS support
    perl-mediawiki-api: git mediawiki support
    perl-datetime-format-iso8601: git mediawiki support
    perl-lwp-protocol-https: git mediawiki https support
    perl-cgi: gitweb (web interface) support
    python: git svn & git p4 [installed]
    subversion: git svn
    org.freedesktop.secrets: keyring credential helper
    libsecret: libsecret credential helper [installed]
installing python-packaging...
installing python-pyproject-hooks...
installing python-build...
Optional dependencies for python-build
    python-pip: to use as the Python package installer (default)
    python-uv: to use as the Python package installer
    python-virtualenv: to use virtualenv for build isolation
installing python-installer...
installing python-more-itertools...
installing python-jaraco.functools...
installing python-jaraco.context...
installing python-autocommand...
installing python-jaraco.text...
Optional dependencies for python-jaraco.text
    python-inflect: for show-newlines script
installing python-jaraco.collections...
installing python-platformdirs...
installing python-wheel...
Optional dependencies for python-wheel
    python-keyring: for wheel.signatures
    python-xdg: for wheel.signatures
    python-setuptools: for legacy bdist_wheel subcommand [pending]
installing python-setuptools...
installing python-coverage...
installing python-pycparser...
installing python-cffi...
Optional dependencies for python-cffi
    python-setuptools: "limited api" version checking in cffi.setuptools_ext [installed]
installing python-cryptography...
installing python-hiredis...
installing blas...
installing cblas...
installing lapack...
installing python-numpy...
Optional dependencies for python-numpy
    blas-openblas: faster linear algebra
installing python-pyopenssl...
installing python-iniconfig...
installing python-pluggy...
installing python-pytest...
installing python-pytest-asyncio...
installing python-charset-normalizer...
installing python-idna...
installing python-urllib3...
Optional dependencies for python-urllib3
    python-brotli: Brotli support
    python-certifi: security support
    python-cryptography: security support [installed]
    python-idna: security support [installed]
    python-pyopenssl: security support [installed]
    python-pysocks: SOCKS support
installing python-requests...
Optional dependencies for python-requests
    python-chardet: alternative character encoding library
    python-pysocks: SOCKS proxy support
installing jemalloc...
Optional dependencies for jemalloc
    perl: for jeprof [installed]
installing redis...
:: Running post-transaction hooks...
(1/5) Creating system user accounts...
Creating group 'git' with GID 972.
Creating user 'git' (git daemon user) with UID 972 and GID 972.
Creating group 'redis' with GID 971.
Creating user 'redis' (Redis in-memory data structure store) with UID 971 and GID 971.
(2/5) Reloading system manager configuration...
  Skipped: Current root is not booted.
(3/5) Creating temporary files...
(4/5) Arming ConditionNeedsUpdate...
(5/5) Warn about old perl modules
[?25h[1m[32m==>[m[1m Retrieving sources...[m
[1m[33m==> WARNING:[m[1m Skipping all source file integrity checks.[m
[1m[32m==>[m[1m Extracting sources...[m
[1m[34m  ->[m[1m Creating working copy of python-redis git repo...[m
Cloning into 'python-redis'...
done.
Switched to a new branch 'makepkg'
[1m[32m==>[m[1m Starting prepare()...[m
[1m[32m==>[m[1m Starting build()...[m
* Getting build dependencies for wheel...
running egg_info
creating redis.egg-info
writing redis.egg-info/PKG-INFO
writing dependency_links to redis.egg-info/dependency_links.txt
writing requirements to redis.egg-info/requires.txt
writing top-level names to redis.egg-info/top_level.txt
writing manifest file 'redis.egg-info/SOURCES.txt'
reading manifest file 'redis.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files found matching '__pycache__'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
adding license file 'LICENSE'
writing manifest file 'redis.egg-info/SOURCES.txt'
* Building wheel...
running bdist_wheel
running build
running build_py
creating build/lib/redis
copying redis/__init__.py -> build/lib/redis
copying redis/backoff.py -> build/lib/redis
copying redis/cache.py -> build/lib/redis
copying redis/client.py -> build/lib/redis
copying redis/cluster.py -> build/lib/redis
copying redis/connection.py -> build/lib/redis
copying redis/crc.py -> build/lib/redis
copying redis/credentials.py -> build/lib/redis
copying redis/exceptions.py -> build/lib/redis
copying redis/lock.py -> build/lib/redis
copying redis/ocsp.py -> build/lib/redis
copying redis/retry.py -> build/lib/redis
copying redis/sentinel.py -> build/lib/redis
copying redis/typing.py -> build/lib/redis
copying redis/utils.py -> build/lib/redis
creating build/lib/redis/_parsers
copying redis/_parsers/__init__.py -> build/lib/redis/_parsers
copying redis/_parsers/base.py -> build/lib/redis/_parsers
copying redis/_parsers/commands.py -> build/lib/redis/_parsers
copying redis/_parsers/encoders.py -> build/lib/redis/_parsers
copying redis/_parsers/hiredis.py -> build/lib/redis/_parsers
copying redis/_parsers/resp2.py -> build/lib/redis/_parsers
copying redis/_parsers/resp3.py -> build/lib/redis/_parsers
copying redis/_parsers/socket.py -> build/lib/redis/_parsers
copying redis/_parsers/helpers.py -> build/lib/redis/_parsers
creating build/lib/redis/asyncio
copying redis/asyncio/__init__.py -> build/lib/redis/asyncio
copying redis/asyncio/client.py -> build/lib/redis/asyncio
copying redis/asyncio/cluster.py -> build/lib/redis/asyncio
copying redis/asyncio/lock.py -> build/lib/redis/asyncio
copying redis/asyncio/retry.py -> build/lib/redis/asyncio
copying redis/asyncio/utils.py -> build/lib/redis/asyncio
copying redis/asyncio/connection.py -> build/lib/redis/asyncio
copying redis/asyncio/sentinel.py -> build/lib/redis/asyncio
creating build/lib/redis/commands
copying redis/commands/__init__.py -> build/lib/redis/commands
copying redis/commands/cluster.py -> build/lib/redis/commands
copying redis/commands/core.py -> build/lib/redis/commands
copying redis/commands/helpers.py -> build/lib/redis/commands
copying redis/commands/redismodules.py -> build/lib/redis/commands
copying redis/commands/sentinel.py -> build/lib/redis/commands
creating build/lib/redis/commands/bf
copying redis/commands/bf/__init__.py -> build/lib/redis/commands/bf
copying redis/commands/bf/commands.py -> build/lib/redis/commands/bf
copying redis/commands/bf/info.py -> build/lib/redis/commands/bf
creating build/lib/redis/commands/graph
copying redis/commands/graph/__init__.py -> build/lib/redis/commands/graph
copying redis/commands/graph/commands.py -> build/lib/redis/commands/graph
copying redis/commands/graph/edge.py -> build/lib/redis/commands/graph
copying redis/commands/graph/exceptions.py -> build/lib/redis/commands/graph
copying redis/commands/graph/execution_plan.py -> build/lib/redis/commands/graph
copying redis/commands/graph/node.py -> build/lib/redis/commands/graph
copying redis/commands/graph/path.py -> build/lib/redis/commands/graph
copying redis/commands/graph/query_result.py -> build/lib/redis/commands/graph
creating build/lib/redis/commands/json
copying redis/commands/json/__init__.py -> build/lib/redis/commands/json
copying redis/commands/json/_util.py -> build/lib/redis/commands/json
copying redis/commands/json/commands.py -> build/lib/redis/commands/json
copying redis/commands/json/decoders.py -> build/lib/redis/commands/json
copying redis/commands/json/path.py -> build/lib/redis/commands/json
creating build/lib/redis/commands/search
copying redis/commands/search/__init__.py -> build/lib/redis/commands/search
copying redis/commands/search/_util.py -> build/lib/redis/commands/search
copying redis/commands/search/aggregation.py -> build/lib/redis/commands/search
copying redis/commands/search/commands.py -> build/lib/redis/commands/search
copying redis/commands/search/document.py -> build/lib/redis/commands/search
copying redis/commands/search/field.py -> build/lib/redis/commands/search
copying redis/commands/search/indexDefinition.py -> build/lib/redis/commands/search
copying redis/commands/search/query.py -> build/lib/redis/commands/search
copying redis/commands/search/querystring.py -> build/lib/redis/commands/search
copying redis/commands/search/reducers.py -> build/lib/redis/commands/search
copying redis/commands/search/result.py -> build/lib/redis/commands/search
copying redis/commands/search/suggestion.py -> build/lib/redis/commands/search
creating build/lib/redis/commands/timeseries
copying redis/commands/timeseries/__init__.py -> build/lib/redis/commands/timeseries
copying redis/commands/timeseries/commands.py -> build/lib/redis/commands/timeseries
copying redis/commands/timeseries/info.py -> build/lib/redis/commands/timeseries
copying redis/commands/timeseries/utils.py -> build/lib/redis/commands/timeseries
running egg_info
writing redis.egg-info/PKG-INFO
writing dependency_links to redis.egg-info/dependency_links.txt
writing requirements to redis.egg-info/requires.txt
writing top-level names to redis.egg-info/top_level.txt
reading manifest file 'redis.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files found matching '__pycache__'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
adding license file 'LICENSE'
writing manifest file 'redis.egg-info/SOURCES.txt'
copying redis/py.typed -> build/lib/redis
installing to build/bdist.linux-riscv64/wheel
running install
running install_lib
creating build/bdist.linux-riscv64/wheel
creating build/bdist.linux-riscv64/wheel/redis
copying build/lib/redis/__init__.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/backoff.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/cache.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/client.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/cluster.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/connection.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/crc.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/credentials.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/exceptions.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/lock.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/ocsp.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/retry.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/sentinel.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/typing.py -> build/bdist.linux-riscv64/wheel/./redis
copying build/lib/redis/utils.py -> build/bdist.linux-riscv64/wheel/./redis
creating build/bdist.linux-riscv64/wheel/redis/_parsers
copying build/lib/redis/_parsers/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/base.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/commands.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/encoders.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/hiredis.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/resp2.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/resp3.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/socket.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
copying build/lib/redis/_parsers/helpers.py -> build/bdist.linux-riscv64/wheel/./redis/_parsers
creating build/bdist.linux-riscv64/wheel/redis/asyncio
copying build/lib/redis/asyncio/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/client.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/cluster.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/lock.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/retry.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/utils.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/connection.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
copying build/lib/redis/asyncio/sentinel.py -> build/bdist.linux-riscv64/wheel/./redis/asyncio
creating build/bdist.linux-riscv64/wheel/redis/commands
copying build/lib/redis/commands/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands
copying build/lib/redis/commands/cluster.py -> build/bdist.linux-riscv64/wheel/./redis/commands
copying build/lib/redis/commands/core.py -> build/bdist.linux-riscv64/wheel/./redis/commands
copying build/lib/redis/commands/helpers.py -> build/bdist.linux-riscv64/wheel/./redis/commands
copying build/lib/redis/commands/redismodules.py -> build/bdist.linux-riscv64/wheel/./redis/commands
copying build/lib/redis/commands/sentinel.py -> build/bdist.linux-riscv64/wheel/./redis/commands
creating build/bdist.linux-riscv64/wheel/redis/commands/bf
copying build/lib/redis/commands/bf/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands/bf
copying build/lib/redis/commands/bf/commands.py -> build/bdist.linux-riscv64/wheel/./redis/commands/bf
copying build/lib/redis/commands/bf/info.py -> build/bdist.linux-riscv64/wheel/./redis/commands/bf
creating build/bdist.linux-riscv64/wheel/redis/commands/graph
copying build/lib/redis/commands/graph/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/commands.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/edge.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/exceptions.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/execution_plan.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/node.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/path.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
copying build/lib/redis/commands/graph/query_result.py -> build/bdist.linux-riscv64/wheel/./redis/commands/graph
creating build/bdist.linux-riscv64/wheel/redis/commands/json
copying build/lib/redis/commands/json/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands/json
copying build/lib/redis/commands/json/_util.py -> build/bdist.linux-riscv64/wheel/./redis/commands/json
copying build/lib/redis/commands/json/commands.py -> build/bdist.linux-riscv64/wheel/./redis/commands/json
copying build/lib/redis/commands/json/decoders.py -> build/bdist.linux-riscv64/wheel/./redis/commands/json
copying build/lib/redis/commands/json/path.py -> build/bdist.linux-riscv64/wheel/./redis/commands/json
creating build/bdist.linux-riscv64/wheel/redis/commands/search
copying build/lib/redis/commands/search/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/_util.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/aggregation.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/commands.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/document.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/field.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/indexDefinition.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/query.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/querystring.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/reducers.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/result.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
copying build/lib/redis/commands/search/suggestion.py -> build/bdist.linux-riscv64/wheel/./redis/commands/search
creating build/bdist.linux-riscv64/wheel/redis/commands/timeseries
copying build/lib/redis/commands/timeseries/__init__.py -> build/bdist.linux-riscv64/wheel/./redis/commands/timeseries
copying build/lib/redis/commands/timeseries/commands.py -> build/bdist.linux-riscv64/wheel/./redis/commands/timeseries
copying build/lib/redis/commands/timeseries/info.py -> build/bdist.linux-riscv64/wheel/./redis/commands/timeseries
copying build/lib/redis/commands/timeseries/utils.py -> build/bdist.linux-riscv64/wheel/./redis/commands/timeseries
copying build/lib/redis/py.typed -> build/bdist.linux-riscv64/wheel/./redis
running install_egg_info
Copying redis.egg-info to build/bdist.linux-riscv64/wheel/./redis-5.2.0-py3.12.egg-info
running install_scripts
creating build/bdist.linux-riscv64/wheel/redis-5.2.0.dist-info/WHEEL
creating '/build/python-redis/src/python-redis/dist/.tmp-jcyq94mj/redis-5.2.0-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it
adding 'redis/__init__.py'
adding 'redis/backoff.py'
adding 'redis/cache.py'
adding 'redis/client.py'
adding 'redis/cluster.py'
adding 'redis/connection.py'
adding 'redis/crc.py'
adding 'redis/credentials.py'
adding 'redis/exceptions.py'
adding 'redis/lock.py'
adding 'redis/ocsp.py'
adding 'redis/py.typed'
adding 'redis/retry.py'
adding 'redis/sentinel.py'
adding 'redis/typing.py'
adding 'redis/utils.py'
adding 'redis/_parsers/__init__.py'
adding 'redis/_parsers/base.py'
adding 'redis/_parsers/commands.py'
adding 'redis/_parsers/encoders.py'
adding 'redis/_parsers/helpers.py'
adding 'redis/_parsers/hiredis.py'
adding 'redis/_parsers/resp2.py'
adding 'redis/_parsers/resp3.py'
adding 'redis/_parsers/socket.py'
adding 'redis/asyncio/__init__.py'
adding 'redis/asyncio/client.py'
adding 'redis/asyncio/cluster.py'
adding 'redis/asyncio/connection.py'
adding 'redis/asyncio/lock.py'
adding 'redis/asyncio/retry.py'
adding 'redis/asyncio/sentinel.py'
adding 'redis/asyncio/utils.py'
adding 'redis/commands/__init__.py'
adding 'redis/commands/cluster.py'
adding 'redis/commands/core.py'
adding 'redis/commands/helpers.py'
adding 'redis/commands/redismodules.py'
adding 'redis/commands/sentinel.py'
adding 'redis/commands/bf/__init__.py'
adding 'redis/commands/bf/commands.py'
adding 'redis/commands/bf/info.py'
adding 'redis/commands/graph/__init__.py'
adding 'redis/commands/graph/commands.py'
adding 'redis/commands/graph/edge.py'
adding 'redis/commands/graph/exceptions.py'
adding 'redis/commands/graph/execution_plan.py'
adding 'redis/commands/graph/node.py'
adding 'redis/commands/graph/path.py'
adding 'redis/commands/graph/query_result.py'
adding 'redis/commands/json/__init__.py'
adding 'redis/commands/json/_util.py'
adding 'redis/commands/json/commands.py'
adding 'redis/commands/json/decoders.py'
adding 'redis/commands/json/path.py'
adding 'redis/commands/search/__init__.py'
adding 'redis/commands/search/_util.py'
adding 'redis/commands/search/aggregation.py'
adding 'redis/commands/search/commands.py'
adding 'redis/commands/search/document.py'
adding 'redis/commands/search/field.py'
adding 'redis/commands/search/indexDefinition.py'
adding 'redis/commands/search/query.py'
adding 'redis/commands/search/querystring.py'
adding 'redis/commands/search/reducers.py'
adding 'redis/commands/search/result.py'
adding 'redis/commands/search/suggestion.py'
adding 'redis/commands/timeseries/__init__.py'
adding 'redis/commands/timeseries/commands.py'
adding 'redis/commands/timeseries/info.py'
adding 'redis/commands/timeseries/utils.py'
adding 'redis-5.2.0.dist-info/LICENSE'
adding 'redis-5.2.0.dist-info/METADATA'
adding 'redis-5.2.0.dist-info/WHEEL'
adding 'redis-5.2.0.dist-info/top_level.txt'
adding 'redis-5.2.0.dist-info/RECORD'
removing build/bdist.linux-riscv64/wheel
Successfully built redis-5.2.0-py3-none-any.whl
[1m[32m==>[m[1m Starting check()...[m
2639:C 13 Dec 2024 22:03:51.938 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
2639:C 13 Dec 2024 22:03:51.939 # WARNING You have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
2644:C 13 Dec 2024 22:03:52.009 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
2644:C 13 Dec 2024 22:03:52.011 # WARNING You have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
~/python-redis/src/python-redis/cluster/16379 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
~/python-redis/src/python-redis/cluster/16380 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
~/python-redis/src/python-redis/cluster/16381 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
~/python-redis/src/python-redis/cluster/16382 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
~/python-redis/src/python-redis/cluster/16383 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
~/python-redis/src/python-redis/cluster/16384 ~/python-redis/src/python-redis
~/python-redis/src/python-redis
>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 127.0.0.1:16383 to 127.0.0.1:16379
Adding replica 127.0.0.1:16384 to 127.0.0.1:16380
Adding replica 127.0.0.1:16382 to 127.0.0.1:16381
>>> Trying to optimize slaves allocation for anti-affinity
[WARNING] Some slaves are in the same host as their master
M: 2193baaea3fcb9c4daab38823a19540dd4254201 127.0.0.1:16379
   slots:[0-5460] (5461 slots) master
M: f46ab9639ab672c38d746d5f3d64c31ffadb472a 127.0.0.1:16380
   slots:[5461-10922] (5462 slots) master
M: 2c30ca7748079b8a85474807b6a473aead0eaa7a 127.0.0.1:16381
   slots:[10923-16383] (5461 slots) master
S: fd39328f1968b970f50bd6924864a30e7f012f08 127.0.0.1:16382
   replicates 2193baaea3fcb9c4daab38823a19540dd4254201
S: 4e42c8c1d1cd7776fb0ccb8618fc4f20d7e4f213 127.0.0.1:16383
   replicates f46ab9639ab672c38d746d5f3d64c31ffadb472a
S: cfd4bc054e2345aaf3c02e9e6743f68c27dc70dd 127.0.0.1:16384
   replicates 2c30ca7748079b8a85474807b6a473aead0eaa7a
Can I set the above configuration? (type 'yes' to accept): >>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join
.
>>> Performing Cluster Check (using node 127.0.0.1:16379)
M: 2193baaea3fcb9c4daab38823a19540dd4254201 127.0.0.1:16379
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
S: fd39328f1968b970f50bd6924864a30e7f012f08 127.0.0.1:16382
   slots: (0 slots) slave
   replicates 2193baaea3fcb9c4daab38823a19540dd4254201
S: cfd4bc054e2345aaf3c02e9e6743f68c27dc70dd 127.0.0.1:16384
   slots: (0 slots) slave
   replicates 2c30ca7748079b8a85474807b6a473aead0eaa7a
M: 2c30ca7748079b8a85474807b6a473aead0eaa7a 127.0.0.1:16381
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
S: 4e42c8c1d1cd7776fb0ccb8618fc4f20d7e4f213 127.0.0.1:16383
   slots: (0 slots) slave
   replicates f46ab9639ab672c38d746d5f3d64c31ffadb472a
M: f46ab9639ab672c38d746d5f3d64c31ffadb472a 127.0.0.1:16380
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
/usr/lib/python3.12/site-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"

  warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0
rootdir: /build/python-redis/src/python-redis
configfile: pytest.ini
plugins: asyncio-0.24.0
asyncio: mode=Mode.AUTO, default_loop_scope=None
collected 3162 items / 1090 deselected / 2072 selected

tests/test_asyncio/test_commands.py ..........................................................................................................................................................................................................................................................................ss..ss....................................................................................................................................................................................................................ss..................FF..ss......FF......FFFF................................................................
tests/test_asyncio/test_connect.py ..
tests/test_asyncio/test_connection.py .......s...............................
tests/test_asyncio/test_connection_pool.py ...............................................................................XXXXXXXXXXXXXXXXXXXX
tests/test_asyncio/test_credentials.py ....................
tests/test_asyncio/test_cwe_404.py ........
tests/test_asyncio/test_encoding.py ................XX......
tests/test_asyncio/test_hash.py ssssssssssssssssssssssssssssssssssssssssssssssssss
tests/test_asyncio/test_lock.py ......................................................
tests/test_asyncio/test_monitor.py ............ss
tests/test_asyncio/test_pipeline.py ..........................................................
tests/test_asyncio/test_pubsub.py ..................................................ss..................................................
tests/test_asyncio/test_retry.py ............................................................
tests/test_asyncio/test_scripting.py ................
tests/test_asyncio/test_sentinel.py .................
tests/test_asyncio/test_sentinel_managed_connection.py .
tests/test_cache.py ssssssssssssssssssssssssss....................
tests/test_command_parser.py .....
tests/test_commands.py .....................................s...............................................................................................................................ss...................................s.s...........................................................................................................................s............F.s.F.F..F....F...FF.........................................................X.......
tests/test_connect.py ...
tests/test_connection.py s.......................................
tests/test_connection_pool.py .......................................................................
tests/test_credentials.py ..........
tests/test_encoding.py ...........
tests/test_function.py .......
tests/test_graph_utils/test_edge.py ....
tests/test_graph_utils/test_node.py ...
tests/test_graph_utils/test_path.py .....
tests/test_hash.py ssssssssssssssssssssssssssssssssss
tests/test_helpers.py .......
tests/test_lock.py ..............................
tests/test_monitor.py ......s
tests/test_multiprocessing.py .........
tests/test_parsers/test_helpers.py ...
tests/test_pipeline.py ............................
tests/test_pubsub.py ..........................ss.............................
tests/test_retry.py ...................................................................
tests/test_scripting.py ..................
tests/test_sentinel.py ..................
tests/test_utils.py .......

=================================== FAILURES ===================================
____________________ TestRedisCommands.test_geopos[single] _____________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed190357710>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_if_server_version_lt("3.2.0")
    async def test_geopos(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
        # redis uses 52 bits precision, hereby small errors may be introduced.
>       assert_resp_response(
            r,
            await r.geopos("barcelona", "place1", "place2"),
            [
                (2.19093829393386841, 41.43379028184083523),
                (2.18737632036209106, 41.40634178640635099),
            ],
            [
                [2.19093829393386841, 41.43379028184083523],
                [2.18737632036209106, 41.40634178640635099],
            ],
        )

tests/test_asyncio/test_commands.py:2462: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>
response = [(2.1909382939338684, 41.43379028184083), (2.187376320362091, 41.40634178640635)]
resp2_expected = [(2.1909382939338684, 41.433790281840835), (2.187376320362091, 41.40634178640635)]
resp3_expected = [[2.1909382939338684, 41.433790281840835], [2.187376320362091, 41.40634178640635]]

    def assert_resp_response(r, response, resp2_expected, resp3_expected):
        protocol = get_protocol_version(r)
        if protocol in [2, "2", None]:
>           assert response == resp2_expected
E           assert [(2.190938293...634178640635)] == [(2.190938293...634178640635)]
E             
E             At index 0 diff: (2.1909382939338684, 41.43379028184083) != (2.1909382939338684, 41.433790281840835)
E             Use -v to get more diff

tests/conftest.py:615: AssertionError
_____________________ TestRedisCommands.test_geopos[pool] ______________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed1903577d0>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_if_server_version_lt("3.2.0")
    async def test_geopos(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
        # redis uses 52 bits precision, hereby small errors may be introduced.
>       assert_resp_response(
            r,
            await r.geopos("barcelona", "place1", "place2"),
            [
                (2.19093829393386841, 41.43379028184083523),
                (2.18737632036209106, 41.40634178640635099),
            ],
            [
                [2.19093829393386841, 41.43379028184083523],
                [2.18737632036209106, 41.40634178640635099],
            ],
        )

tests/test_asyncio/test_commands.py:2462: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>
response = [(2.1909382939338684, 41.43379028184083), (2.187376320362091, 41.40634178640635)]
resp2_expected = [(2.1909382939338684, 41.433790281840835), (2.187376320362091, 41.40634178640635)]
resp3_expected = [[2.1909382939338684, 41.433790281840835], [2.187376320362091, 41.40634178640635]]

    def assert_resp_response(r, response, resp2_expected, resp3_expected):
        protocol = get_protocol_version(r)
        if protocol in [2, "2", None]:
>           assert response == resp2_expected
E           assert [(2.190938293...634178640635)] == [(2.190938293...634178640635)]
E             
E             At index 0 diff: (2.1909382939338684, 41.43379028184083) != (2.1909382939338684, 41.433790281840835)
E             Use -v to get more diff

tests/conftest.py:615: AssertionError
________________ TestRedisCommands.test_georadius_with[single] _________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed1903568a0>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    async def test_georadius_with(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
    
        # test a bunch of combinations to test the parse response
        # function.
>       assert await r.georadius(
            "barcelona",
            2.191,
            41.433,
            1,
            unit="km",
            withdist=True,
            withcoord=True,
            withhash=True,
        ) == [
            [
                b"place1",
                0.0881,
                3471609698139488,
                (2.19093829393386841, 41.43379028184083523),
            ]
        ]
E       AssertionError: assert [[b'place1', ...79028184083)]] == [[b'place1', ...90281840835)]]
E         
E         At index 0 diff: [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_asyncio/test_commands.py:2533: AssertionError
_________________ TestRedisCommands.test_georadius_with[pool] __________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed19036cb00>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    async def test_georadius_with(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
    
        # test a bunch of combinations to test the parse response
        # function.
>       assert await r.georadius(
            "barcelona",
            2.191,
            41.433,
            1,
            unit="km",
            withdist=True,
            withcoord=True,
            withhash=True,
        ) == [
            [
                b"place1",
                0.0881,
                3471609698139488,
                (2.19093829393386841, 41.43379028184083523),
            ]
        ]
E       AssertionError: assert [[b'place1', ...79028184083)]] == [[b'place1', ...90281840835)]]
E         
E         At index 0 diff: [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_asyncio/test_commands.py:2533: AssertionError
_____________ TestRedisCommands.test_georadius_store_dist[single] ______________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed190362210>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    @pytest.mark.onlynoncluster
    async def test_georadius_store_dist(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
        await r.georadius(
            "barcelona", 2.191, 41.433, 1000, store_dist="places_barcelona"
        )
        # instead of save the geo score, the distance is saved.
>       assert await r.zscore("places_barcelona", "place1") == 88.05060698409301
E       assert 88.05060698338646 == 88.05060698409301

tests/test_asyncio/test_commands.py:2635: AssertionError
______________ TestRedisCommands.test_georadius_store_dist[pool] _______________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed1903622d0>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    @pytest.mark.onlynoncluster
    async def test_georadius_store_dist(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        await r.geoadd("barcelona", values)
        await r.georadius(
            "barcelona", 2.191, 41.433, 1000, store_dist="places_barcelona"
        )
        # instead of save the geo score, the distance is saved.
>       assert await r.zscore("places_barcelona", "place1") == 88.05060698409301
E       assert 88.05060698338646 == 88.05060698409301

tests/test_asyncio/test_commands.py:2635: AssertionError
________________ TestRedisCommands.test_georadiusmember[single] ________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed190362780>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    async def test_georadiusmember(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            b"\x80place2",
        )
    
        await r.geoadd("barcelona", values)
        assert await r.georadiusbymember("barcelona", "place1", 4000) == [
            b"\x80place2",
            b"place1",
        ]
        assert await r.georadiusbymember("barcelona", "place1", 10) == [b"place1"]
    
>       assert await r.georadiusbymember(
            "barcelona", "place1", 4000, withdist=True, withcoord=True, withhash=True
        ) == [
            [
                b"\x80place2",
                3067.4157,
                3471609625421029,
                (2.187376320362091, 41.40634178640635),
            ],
            [
                b"place1",
                0.0,
                3471609698139488,
                (2.1909382939338684, 41.433790281840835),
            ],
        ]
E       AssertionError: assert [[b'\x80place...79028184083)]] == [[b'\x80place...90281840835)]]
E         
E         At index 1 diff: [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_asyncio/test_commands.py:2653: AssertionError
_________________ TestRedisCommands.test_georadiusmember[pool] _________________

self = <tests.test_asyncio.test_commands.TestRedisCommands object at 0x7ed190362840>
r = <redis.asyncio.client.Redis(<redis.asyncio.connection.ConnectionPool(<redis.asyncio.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    async def test_georadiusmember(self, r: redis.Redis):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            b"\x80place2",
        )
    
        await r.geoadd("barcelona", values)
        assert await r.georadiusbymember("barcelona", "place1", 4000) == [
            b"\x80place2",
            b"place1",
        ]
        assert await r.georadiusbymember("barcelona", "place1", 10) == [b"place1"]
    
>       assert await r.georadiusbymember(
            "barcelona", "place1", 4000, withdist=True, withcoord=True, withhash=True
        ) == [
            [
                b"\x80place2",
                3067.4157,
                3471609625421029,
                (2.187376320362091, 41.40634178640635),
            ],
            [
                b"place1",
                0.0,
                3471609698139488,
                (2.1909382939338684, 41.433790281840835),
            ],
        ]
E       AssertionError: assert [[b'\x80place...79028184083)]] == [[b'\x80place...90281840835)]]
E         
E         At index 1 diff: [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_asyncio/test_commands.py:2653: AssertionError
________________________ TestRedisCommands.test_geopos _________________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed19057d790>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    def test_geopos(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
        r.geoadd("barcelona", values)
        # redis uses 52 bits precision, hereby small errors may be introduced.
>       assert_resp_response(
            r,
            r.geopos("barcelona", "place1", "place2"),
            [
                (2.19093829393386841, 41.43379028184083523),
                (2.18737632036209106, 41.40634178640635099),
            ],
            [
                [2.19093829393386841, 41.43379028184083523],
                [2.18737632036209106, 41.40634178640635099],
            ],
        )

tests/test_commands.py:3610: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>
response = [(2.1909382939338684, 41.43379028184083), (2.187376320362091, 41.40634178640635)]
resp2_expected = [(2.1909382939338684, 41.433790281840835), (2.187376320362091, 41.40634178640635)]
resp3_expected = [[2.1909382939338684, 41.433790281840835], [2.187376320362091, 41.40634178640635]]

    def assert_resp_response(r, response, resp2_expected, resp3_expected):
        protocol = get_protocol_version(r)
        if protocol in [2, "2", None]:
>           assert response == resp2_expected
E           assert [(2.190938293...634178640635)] == [(2.190938293...634178640635)]
E             
E             At index 0 diff: (2.1909382939338684, 41.43379028184083) != (2.1909382939338684, 41.433790281840835)
E             Use -v to get more diff

tests/conftest.py:615: AssertionError
___________________ TestRedisCommands.test_geosearch_member ____________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed19057deb0>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("6.2.0")
    def test_geosearch_member(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            b"\x80place2",
        )
    
        r.geoadd("barcelona", values)
        assert r.geosearch("barcelona", member="place1", radius=4000) == [
            b"\x80place2",
            b"place1",
        ]
        assert r.geosearch("barcelona", member="place1", radius=10) == [b"place1"]
    
>       assert r.geosearch(
            "barcelona",
            member="place1",
            radius=4000,
            withdist=True,
            withcoord=True,
            withhash=True,
        ) == [
            [
                b"\x80place2",
                3067.4157,
                3471609625421029,
                (2.187376320362091, 41.40634178640635),
            ],
            [
                b"place1",
                0.0,
                3471609698139488,
                (2.1909382939338684, 41.433790281840835),
            ],
        ]
E       AssertionError: assert [[b'\x80place...79028184083)]] == [[b'\x80place...90281840835)]]
E         
E         At index 1 diff: [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_commands.py:3678: AssertionError
____________________ TestRedisCommands.test_geosearch_with _____________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed18d97f500>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("6.2.0")
    def test_geosearch_with(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
        r.geoadd("barcelona", values)
    
        # test a bunch of combinations to test the parse response
        # function.
>       assert r.geosearch(
            "barcelona",
            longitude=2.191,
            latitude=41.433,
            radius=1,
            unit="km",
            withdist=True,
            withcoord=True,
            withhash=True,
        ) == [
            [
                b"place1",
                0.0881,
                3471609698139488,
                (2.19093829393386841, 41.43379028184083523),
            ]
        ]
E       AssertionError: assert [[b'place1', ...79028184083)]] == [[b'place1', ...90281840835)]]
E         
E         At index 0 diff: [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_commands.py:3727: AssertionError
__________________ TestRedisCommands.test_geosearchstore_dist __________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed18d97f9e0>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @pytest.mark.onlynoncluster
    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("6.2.0")
    def test_geosearchstore_dist(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        r.geoadd("barcelona", values)
        r.geosearchstore(
            "places_barcelona",
            "barcelona",
            longitude=2.191,
            latitude=41.433,
            radius=1000,
            storedist=True,
        )
        # instead of save the geo score, the distance is saved.
>       assert r.zscore("places_barcelona", "place1") == 88.05060698409301
E       AssertionError: assert 88.05060698338646 == 88.05060698409301
E        +  where 88.05060698338646 = zscore('places_barcelona', 'place1')
E        +    where zscore = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>.zscore

tests/test_commands.py:3860: AssertionError
____________________ TestRedisCommands.test_georadius_with _____________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed19057d340>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    def test_georadius_with(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        r.geoadd("barcelona", values)
    
        # test a bunch of combinations to test the parse response
        # function.
>       assert r.georadius(
            "barcelona",
            2.191,
            41.433,
            1,
            unit="km",
            withdist=True,
            withcoord=True,
            withhash=True,
        ) == [
            [
                b"place1",
                0.0881,
                3471609698139488,
                (2.19093829393386841, 41.43379028184083523),
            ]
        ]
E       AssertionError: assert [[b'place1', ...79028184083)]] == [[b'place1', ...90281840835)]]
E         
E         At index 0 diff: [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0881, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_commands.py:3915: AssertionError
_________________ TestRedisCommands.test_georadius_store_dist __________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed18d97f470>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @pytest.mark.onlynoncluster
    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    def test_georadius_store_dist(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            "place2",
        )
    
        r.geoadd("barcelona", values)
        r.georadius("barcelona", 2.191, 41.433, 1000, store_dist="places_barcelona")
        # instead of save the geo score, the distance is saved.
>       assert r.zscore("places_barcelona", "place1") == 88.05060698409301
E       AssertionError: assert 88.05060698338646 == 88.05060698409301
E        +  where 88.05060698338646 = zscore('places_barcelona', 'place1')
E        +    where zscore = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>.zscore

tests/test_commands.py:4016: AssertionError
____________________ TestRedisCommands.test_georadiusmember ____________________

self = <tests.test_commands.TestRedisCommands object at 0x7ed18d97f260>
r = <redis.client.Redis(<redis.connection.ConnectionPool(<redis.connection.Connection(host=localhost,port=6379,db=0)>)>)>

    @skip_unless_arch_bits(64)
    @skip_if_server_version_lt("3.2.0")
    def test_georadiusmember(self, r):
        values = (2.1909389952632, 41.433791470673, "place1") + (
            2.1873744593677,
            41.406342043777,
            b"\x80place2",
        )
    
        r.geoadd("barcelona", values)
        assert r.georadiusbymember("barcelona", "place1", 4000) == [
            b"\x80place2",
            b"place1",
        ]
        assert r.georadiusbymember("barcelona", "place1", 10) == [b"place1"]
    
>       assert r.georadiusbymember(
            "barcelona", "place1", 4000, withdist=True, withcoord=True, withhash=True
        ) == [
            [
                b"\x80place2",
                3067.4157,
                3471609625421029,
                (2.187376320362091, 41.40634178640635),
            ],
            [
                b"place1",
                0.0,
                3471609698139488,
                (2.1909382939338684, 41.433790281840835),
            ],
        ]
E       AssertionError: assert [[b'\x80place...79028184083)]] == [[b'\x80place...90281840835)]]
E         
E         At index 1 diff: [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.43379028184083)] != [b'place1', 0.0, 3471609698139488, (2.1909382939338684, 41.433790281840835)]
E         Use -v to get more diff

tests/test_commands.py:4034: AssertionError
=============================== warnings summary ===============================
../../../../usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1441
  /usr/lib/python3.12/site-packages/_pytest/config/__init__.py:1441: PytestConfigWarning: Unknown config option: timeout
  
    self._warn_or_fail_if_strict(f"Unknown config option: {key}\n")

tests/test_pubsub.py:978
  /build/python-redis/src/python-redis/tests/test_pubsub.py:978: PytestUnknownMarkWarning: Unknown pytest.mark.timeout - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.timeout(30, method="thread")

tests/test_pubsub.py:989
  /build/python-redis/src/python-redis/tests/test_pubsub.py:989: PytestUnknownMarkWarning: Unknown pytest.mark.timeout - is this a typo?  You can register custom marks to avoid this warning - for details, see https://docs.pytest.org/en/stable/how-to/mark.html
    @pytest.mark.timeout(5, method="thread")

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_geopos[single]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_geopos[pool]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadius_with[single]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadius_with[pool]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadius_store_dist[single]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadius_store_dist[pool]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadiusmember[single]
FAILED tests/test_asyncio/test_commands.py::TestRedisCommands::test_georadiusmember[pool]
FAILED tests/test_commands.py::TestRedisCommands::test_geopos - assert [(2.19...
FAILED tests/test_commands.py::TestRedisCommands::test_geosearch_member - Ass...
FAILED tests/test_commands.py::TestRedisCommands::test_geosearch_with - Asser...
FAILED tests/test_commands.py::TestRedisCommands::test_geosearchstore_dist - ...
FAILED tests/test_commands.py::TestRedisCommands::test_georadius_with - Asser...
FAILED tests/test_commands.py::TestRedisCommands::test_georadius_store_dist
FAILED tests/test_commands.py::TestRedisCommands::test_georadiusmember - Asse...
= 15 failed, 1900 passed, 134 skipped, 1090 deselected, 23 xpassed, 3 warnings in 194.65s (0:03:14) =
[1m[31m==> ERROR:[m[1m A failure occurred in check().[m
[1m    Aborting...[m
[0m[J[23;2t[1m[31m==> ERROR:[m[1m Build failed, check /var/lib/archbuild/extra-riscv64/root38/build[m
[34h[?25h[34h[?25hreceiving incremental file list
python-redis-5.2.0-1-riscv64-build.log
python-redis-5.2.0-1-riscv64-check.log
python-redis-5.2.0-1-riscv64-prepare.log

sent 81 bytes  received 6,518 bytes  1,885.43 bytes/sec
total size is 52,582  speedup is 7.97
