-
-
Notifications
You must be signed in to change notification settings - Fork 213
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
Tests on Windows + GitHub Actions #314
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey! This PR makes sense. Love the path fixes.
As for CI, I was not committed to Travis CI. I was on their free tier for OSS. However, I have been using GitHub Actions in other projects, and love the integration and community. Happy to switch.
Before we merge, I would love to see a GitHub Actions checkmark on this PR. Not sure why it's not running.
Okay there's a green checkmark on eb99020. 👍 |
Tests on Windows via GitHub Actions were not working. While trying to fix them, I've uncovered some strange behaviors. Currently all tests pass on macOS, Windows, and Linux for python 3.8-3.12 + pypy3.8.
1. Incomplete path conversion on Windows
Unlike
str(pathlib.Path)
,os.path.join
does not convert existing forward-slashes, causing incomplete conversion of the monkeypatched UNIX-style paths to Windows-style.2. Python 3.11 and 3.12 on Windows
For some unknown reason, in Python 3.11 & 3.12 on Windows (but not UNIX), the following receives a WindowsPath instead of a string. So I modified
evil_unlink
to perform relative path checks for both string and Path (sinceos.unlink
supports both datatypes).3. Erroneous stdout on pypy3.9 and pypy3.10 (all OSes)
See https://github.com/elliotwutingfeng/tldextract/actions/runs/6810665611/job/18519409296#step:5:60
I believe this has to do with the requests library, but I am unable to suppress the output (some kind of tuple?). This is probably the most important issue since pypy only supports the latest 1 or 2 versions of pypy.
4. Consider switching to GitHub Actions from Travis
If you are spending money on Travis, you may want to consider switching to GitHub Actions as it is free for public projects like this.