kitty icon indicating copy to clipboard operation
kitty copied to clipboard

test_transfer_receive and test_transfer_send fail on ppc64le architecture

Open solopasha opened this issue 2 years ago • 3 comments

Describe the bug test_transfer_receive and test_transfer_send tests fail on ppc64le architecture.

To Reproduce Steps to reproduce the behavior:

  1. try building kitty 0.30.0 on ppc64le.
  2. See error
FAIL: test_transfer_receive (kitty_tests.file_transmission.TestFileTransmission.test_transfer_receive)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 476, in test_transfer_receive
    self.basic_transfer_tests()
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_receive>
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 361, in basic_transfer_tests
    single_file()
    dest = '/tmp/tmpqfyaav2n/dest'
    pty = <kitty_tests.file_transmission.TransferPTY object at 0x7fffaaeda6c0>
    s = <_io.BufferedWriter name='/tmp/tmpqfyaav2n/src'>
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_receive>
    single_file = <function TestFileTransmission.basic_transfer_tests.<locals>.single_file at 0x7fffa9af2de0>
    src = '/tmp/tmpqfyaav2n/src'
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 357, in single_file
    pty.wait_till_child_exits(require_exit_code=0)
    cmd = ()
    dest = '/tmp/tmpqfyaav2n/dest'
    pty = <kitty_tests.file_transmission.TransferPTY object at 0x7fffa9b6fc20>
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_receive>
    src = '/tmp/tmpqfyaav2n/src'
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/__init__.py", line 337, in wait_till_child_exits
    raise AssertionError(
    ec = 1
    end_time = 2442694.000290892
    require_exit_code = 0
    self = <kitty_tests.file_transmission.TransferPTY object at 0x7fffa9b6fc20>
    si_pid = 10012
    status = 256
    timeout = 10
AssertionError: Child exited with exit status: 256 code: 1 != 0. Screen contents:
Error: inappropriate ioctl for device
======================================================================
FAIL: test_transfer_send (kitty_tests.file_transmission.TestFileTransmission.test_transfer_send)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 507, in test_transfer_send
    self.basic_transfer_tests()
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_send>
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 361, in basic_transfer_tests
    single_file()
    dest = '/tmp/tmpsgpt9mex/dest'
    pty = <kitty_tests.file_transmission.TransferPTY object at 0x7fffa9b6ef30>
    s = <_io.BufferedWriter name='/tmp/tmpsgpt9mex/src'>
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_send>
    single_file = <function TestFileTransmission.basic_transfer_tests.<locals>.single_file at 0x7fffa9af2d40>
    src = '/tmp/tmpsgpt9mex/src'
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/file_transmission.py", line 357, in single_file
    pty.wait_till_child_exits(require_exit_code=0)
    cmd = ()
    dest = '/tmp/tmpsgpt9mex/dest'
    pty = <kitty_tests.file_transmission.TransferPTY object at 0x7fffa9b6fce0>
    self = <kitty_tests.file_transmission.TestFileTransmission testMethod=test_transfer_send>
    src = '/tmp/tmpsgpt9mex/src'
  File "/builddir/build/BUILD/kitty-0.30.0/kitty_tests/__init__.py", line 337, in wait_till_child_exits
    raise AssertionError(
    ec = 1
    end_time = 2442694.204230471
    require_exit_code = 0
    self = <kitty_tests.file_transmission.TransferPTY object at 0x7fffa9b6fce0>
    si_pid = 10081
    status = 256
    timeout = 10
AssertionError: Child exited with exit status: 256 code: 1 != 0. Screen contents:
Scanning files…
Found 1 files and directories, requesting transfer permission…
Error: inappropriate ioctl for device

Full logs: https://0x0.st/HOQF.txt

solopasha avatar Sep 18 '23 06:09 solopasha

Unfortunately I dont have access to this architecture so its not really possible for me to debug. If you do have access to it you might get more useful errors by running the transfer kitten on it

kitten transfer some-file /tmp/som-file and kitten transfer --transmit-deltas some-file /tmp/some-file

kovidgoyal avatar Sep 18 '23 06:09 kovidgoyal

I don't have it, I tried in the qemu emulator and got:

[root@ba9da8ff7ccd test]# kitten transfer 1 /tmp/test12-file
Scanning files…
Found 1 files and directories, requesting transfer permission…
Error: function not implemented

which comes somewhere from golang.org/x/sys...

solopasha avatar Sep 18 '23 07:09 solopasha

Hmm well I have no clue how one would go about debugging that short of sticking print statements everywhere to see which go system function is failing. Is there a ready made qemu img I can use to test so I dont have to waste time building one

kovidgoyal avatar Sep 18 '23 08:09 kovidgoyal