Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make test fails on Linux (Ubuntu20.04) ext4 with mounted ntfs #121712

Open
IljaManakov opened this issue Jul 13, 2024 · 1 comment
Open

make test fails on Linux (Ubuntu20.04) ext4 with mounted ntfs #121712

IljaManakov opened this issue Jul 13, 2024 · 1 comment
Labels
tests Tests in the Lib/test dir

Comments

@IljaManakov
Copy link

I have a dual-boot setup, where my Ubuntu 20.04 is on a ext4 FS and I have a data partition that is ntfs (for compat with Windows).
When I check out and build cpython on the data partition a bunch of tests fail with an OSError.
It seems to be related to the fact that the test suite creates the filenames as bytes assuming "utf-8" but ntfs uses "utf-16".

I have attached the log of the test run, which shows the failing tests.

P.S.: I also have encrypted the data partition with Veracrypt but I don't expect this to be relevant for this issue (but one never knows)
test_log.txt

cc @encukou

@encukou encukou added the tests Tests in the Lib/test dir label Jul 18, 2024
@encukou
Copy link
Member

encukou commented Jul 18, 2024

The tests currently assume a *nix filesystem can handle arbitrary bytes, not just UTF-8. Anything except / and \0 is valid in a path name component.
We also assume the FS can store Unix permission bits.

A PR that detects files and skips/adjusts the relevant tests would be welcome.
I recommend first adding a helper and using it to skip/adjust just one or two tests, so there's not too much to change if the reviewer requests comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests Tests in the Lib/test dir
Projects
None yet
Development

No branches or pull requests

2 participants