-
Notifications
You must be signed in to change notification settings - Fork 102
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
Various test fixes, enable linting in CI, add Python 3.7 compatibility #76
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.
Great work, thanks for submitting this. Other than running the integration tests in Travis (which I think we shouldn't do until we figure out #77 as that issue makes it virtually impossible to get Travis to give a thumbs up), this looks good!
Can you just revert the .travis.yml
to what it was before (while adding the python 3.7 stuff)? I'll merge right after! Thanks!
Now one integration test even failed for Python 2.6. Should we just globally disable the integration tests in Travis for now? |
dce90fd
to
d363feb
Compare
This still needs a proper cleanup, but I think I fixed the main integration test issues @jorisroovers! Instead of using The one Python 3.7 unit test failure on Travis seems to be reproducible (on Travis), but I cannot reproduce it locally using Python 3.7.0. I will not have time to work on this the next days or the next week, but feel free to cherry-pick from this, or finish this PR yourself :) |
ca02431
to
70a56af
Compare
Could you review this again @jorisroovers? I think this finally fixes the intermittent failures for all Python versions! Tests for Python 3.7 fail due to a newer git version included in the image used by Travis (but PR #79 fixes that). |
6cd8338
to
b4d7050
Compare
And use specific pylint version for Python 3.3
When exiting with exit code zero, the `handle_test_result` method should not print a red FAIL, just because the previous test wrote something to STDOUT.
Newer pylint versions report more warnings. This fixes some of them, and ignores quite a few others through `pylint: disable` lines.
When running an old version of pylint with newer options (e.g. to switch off "new" warnings), pylint would fail. This switches off the option checking. This is needed to make pylint work with the full range of Python versions (and the compatible pylint versions) ranging from Python 2.6 to Python 3.6+.
Hi @jorisroovers! I just updated this to use the very latest version of |
Update wheel to 0.32.2, and to 0.29.0 (last supported version for Python 2.6 and 3.3), respectively. Also remove the check for wheel in run_tests.sh: With multiple versions specified in requirements.txt, it is not that trivial anymore to "make sure that wheel is installed".
And to version 3.2.5 for the EOL'd Python versions 2.6 and 3.3.
Instead of using assertEqual on a string and the return object from the sh call, this introduces another assertion helper function that compares the STDOUT part from the RunningCommand (see sh docs) to a string using assertMultiLineEqual. It also replaces CRLF by LF to avoid potential end-of-line issues.
ping @jorisroovers |
@pbregener sorry, it's really hard for me to make time to work on this these days. Happy to take your word for it and get this merged for now. I don't anticipate having proper time to review this, do some of the other work and then push a new release until late December when I will take a holiday though. If you're interested in taking a more active/overall role on the project (and pinky swear to uphold proper standards ;-) ), I can give you full commit access. Let me know! |
Appreciate it @jorisroovers, but I am about to start a new job soon and am therefore pretty busy, too, these days. I have just found gitlint quite useful and created this PR with the hope to help make it more future proof :) |
- Various text fixes all over - Enable lint tests for Python 3.6 - Fix some pylint warnings - Ignore pylint errors for bad options - Use unittest2 only for Python 2 - Test Python 3.7 in Travis - Integration Tests: Introduce assertEqualStdout - Activate all integration tests in Travis - Update dependencies in requirements.txt
- Python 3.7 support - Python 2.6 no longer supported - Various dependency updates and under the hood fixes (see #76) Special thanks to @pbregener for his contributions related to python 3.7 support and test fixes. Full Release details in CHANGELOG.md.
This changes various dependencies and test-related files.
pylint
dependency which allows us to run the linting tests with Python 3.6pylint
sh
andpytest
(needed for Python 3.7 compatibility)test_target
less strict withgit
#79