-
Notifications
You must be signed in to change notification settings - Fork 1
Expand CI pipeline to support Windows
and macOS
#160
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
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.
I would avoid where possible using -latest in CI. They tend to migrate latest quite early which has in the past led to breaking issues in software stacks. I'm approving here though since a python project is unlikely to suffer this unless the early releases of a new OS have limited python versions available at first release of the env. I've mostly seen this in compilation based and containerised applications, but in general you should version them to control what is available.
Other than this point, great addition to CI.
0942035
to
149dea3
Compare
Coveralls MacOS runner is currently not working, coverallsapp/github-action#248 |
- move the `setup()` and `teardown()` functions to a `test_base.py` file to centrally manage the setup and teardown of files - use `logging.shutdown()` to ensure logging handlers are correctly closed and shutdown after use to avoid file IO issues within tests - ensure the correct format of `jobxxx` folders are being used within tests ti ensure consistency
- BaseTestCase: improved docstrings, simplified setup/teardown, pre-create logs folder, restore working directory after tests, ensure temp dir cleanup. - TestEntropyManager: disable MDAnalysis and commands loggers to prevent logging noise during tests. - TestLoggingConfig: use self.test_dir consistently instead of temp_dir.name for log file paths. - TestMain: force UTF-8 mode for subprocess (-X utf8) and capture output with UTF-8 encoding to avoid UnicodeEncodeErrors on Windows. - Inlcude `windows2025` within `project-ci.yaml` as the test cases now work on Windows
…ss-platform path comparisons and proper handling of mixed, invalid, and non-job folder names
…ndows/Linux/macOS assertion failures
…CodeEntropy into 159-expand-ci-testing
- Removed the warning about Windows not being tested - Added quotation marks around the editable `pip install` command to ensure correct installation
Summary
This PR expands the CI pipeline for
CodeEntropy
to include cross-platform testing and multiple Python versions, improving coverage and reliability.Changes
Cross-Platform CI Testing:
ubuntu-24.04
,windows-2025
, andmacos-15
.Impact
CodeEntropy
's compatibility across major operating systems.