thomaswaldmann / pyfuse3 Goto Github PK
View Code? Open in Web Editor NEWThis project forked from libfuse/pyfuse3
Python 3 bindings for libfuse 3 with asynchronous API (Trio compatible)
License: Other
This project forked from libfuse/pyfuse3
Python 3 bindings for libfuse 3 with asynchronous API (Trio compatible)
License: Other
This only sometimes happens when testing locally on Debian:
Traceback (most recent call last):
File "/home/user/w/pyfuse3/test/test_examples.py", line 124, in test_passthroughfs
tst_passthrough(src_dir, mnt_dir)
File "/home/user/w/pyfuse3/test/test_examples.py", line 427, in tst_passthrough
assert_same_stats(src_name, mnt_name)
File "/home/user/w/pyfuse3/test/test_examples.py", line 438, in assert_same_stats
assert v1 == v2, 'Attribute {} differs by {} ({} vs {})'.format(
AssertionError: Attribute st_mtime_ns differs by 1000000 (1654026289613000000 vs 1654026289612000000)
assert 1654026289613000000 == 1654026289612000000
PR #1 : Strange: tests work locally on my debian system, but fail on github actions CI like this:
============================= test session starts ==============================
platform linux -- Python 3.6.15, pytest-7.0.1, pluggy-1.0.0 -- /opt/hostedtoolcache/Python/3.6.15/x64/bin/python
cachedir: .pytest_cache
rootdir: /home/runner/work/pyfuse3/pyfuse3/test, configfile: pytest.ini
plugins: trio-0.7.0
collecting ... collected 17 items
test/test_api.py::test_listdir PASSED [ 5%]
test/test_api.py::test_sup_groups PASSED [ 11%]
test/test_api.py::test_syncfs PASSED [ 17%]
test/test_api.py::test_entry_res PASSED [ 23%]
test/test_api.py::test_xattr PASSED [ 29%]
test/test_api.py::test_copy PASSED [ 35%]
test/test_examples.py::test_hello[hello.py] PASSED [ 41%]
test/test_examples.py::test_hello[hello_asyncio.py] PASSED [ 47%]
test/test_examples.py::test_tmpfs FAILED [ 52%]
test/test_examples.py::test_tmpfs ERROR [ 52%]
==================================== ERRORS ====================================
_______________________ ERROR at teardown of test_tmpfs ________________________
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/pytest_checklogs.py", line 117, in check_output
check_test_output(capfd, request.node)
File "/home/runner/work/pyfuse3/pyfuse3/test/pytest_checklogs.py", line 87, in check_test_output
pytest.fail('Suspicious output to stderr (matched "%s")' % hit.group(0))
File "/opt/hostedtoolcache/Python/3.6.15/x64/lib/python3.6/site-packages/_pytest/outcomes.py", line 196, in fail
raise Failed(msg=reason, pytrace=pytrace)
Failed: Suspicious output to stderr (matched "exception")
----------------------------- Captured stderr call -----------------------------
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 121, in get_row
row = next(self.cursor)
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 451, in <module>
trio.run(pyfuse3.main)
File "/opt/hostedtoolcache/Python/3.6.15/x64/lib/python3.6/site-packages/trio/_core/_run.py", line 1932, in run
raise runner.main_task_outcome.error
File "/home/runner/work/pyfuse3/pyfuse3/src/_pyfuse3.py", line 43, in wrapper
await fn(*args, **kwargs)
File "src/pyfuse3.pyx", line 781, in main
async with trio.open_nursery() as nursery:
File "/opt/hostedtoolcache/Python/3.6.15/x64/lib/python3.6/site-packages/trio/_core/_run.py", line 815, in __aexit__
raise combined_error_from_nursery
File "/home/runner/work/pyfuse3/pyfuse3/src/_pyfuse3.py", line 43, in wrapper
await fn(*args, **kwargs)
File "src/internal.pxi", line 272, in _session_loop
await py_retval
File "src/handlers.pxi", line 168, in fuse_setattr_async
entry = <EntryAttributes?> await operations.setattr(c.ino, entry, fields, fh, ctx)
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 315, in setattr
return await self.getattr(inode)
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 150, in getattr
row = self.get_row('SELECT * FROM inodes WHERE id=?', (inode,))
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 123, in get_row
raise NoSuchRowError()
NoSuchRowError: Query produced 0 result rows
=================================== FAILURES ===================================
__________________________________ test_tmpfs __________________________________
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/test_examples.py", line 76, in test_tmpfs
tst_write(mnt_dir)
File "/home/runner/work/pyfuse3/pyfuse3/test/test_examples.py", line 213, in tst_write
checked_unlink(name, mnt_dir)
File "/home/runner/work/pyfuse3/pyfuse3/test/test_examples.py", line 139, in checked_unlink
assert exc_info.value.errno == errno.ENOENT
AssertionError: assert 107 == 2
+107
-2
----------------------------- Captured stderr call -----------------------------
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 121, in get_row
row = next(self.cursor)
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 451, in <module>
trio.run(pyfuse3.main)
File "/opt/hostedtoolcache/Python/3.6.15/x64/lib/python3.6/site-packages/trio/_core/_run.py", line 1932, in run
raise runner.main_task_outcome.error
File "/home/runner/work/pyfuse3/pyfuse3/src/_pyfuse3.py", line 43, in wrapper
await fn(*args, **kwargs)
File "src/pyfuse3.pyx", line 781, in main
async with trio.open_nursery() as nursery:
File "/opt/hostedtoolcache/Python/3.6.15/x64/lib/python3.6/site-packages/trio/_core/_run.py", line 815, in __aexit__
raise combined_error_from_nursery
File "/home/runner/work/pyfuse3/pyfuse3/src/_pyfuse3.py", line 43, in wrapper
await fn(*args, **kwargs)
File "src/internal.pxi", line 272, in _session_loop
await py_retval
File "src/handlers.pxi", line 168, in fuse_setattr_async
entry = <EntryAttributes?> await operations.setattr(c.ino, entry, fields, fh, ctx)
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 315, in setattr
return await self.getattr(inode)
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 150, in getattr
row = self.get_row('SELECT * FROM inodes WHERE id=?', (inode,))
File "/home/runner/work/pyfuse3/pyfuse3/test/../examples/tmpfs.py", line 123, in get_row
raise NoSuchRowError()
NoSuchRowError: Query produced 0 result rows
=========================== short test summary info ============================
FAILED test/test_examples.py::test_tmpfs - assert 107 == 2
ERROR test/test_examples.py::test_tmpfs - Failed: Suspicious output to stderr...
!!!!!!!!!!!!!!!!!!!!!!!!!! stopping after 2 failures !!!!!!!!!!!!!!!!!!!!!!!!!!!
===================== 1 failed, 8 passed, 1 error in 2.57s =====================
Error: Process completed with exit code 1.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.