-
Notifications
You must be signed in to change notification settings - Fork 212
Update Netty to version 4.1.121 #370
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
base: master
Are you sure you want to change the base?
Conversation
I agree there's negligible chance this PR has broken the launcher. |
@Stewori , the pull request now updates Netty to 4.1.119. I re-ran the test suite, and got the expected results.
Can this pull request now be merged? |
Why is a failure in We find ourselves tolerating a number of failures with skips, but this isn't one (yet). |
This can't be merged as it stands because it doesn't come with the JARs it references. (The targets in the Ant build need the JARs checked in.) I ran the CI expecting it to fail for that reason, but actually I mis-thought: the affected sections only come into play when we build a distribution, which isn't being tested. The tests are running with the 4.1.73 JARs. π€¦ββοΈ . However, I feel safer when we get the JARs ourselves, than when a PR comes with them, so thank you for leaving them out. I'll do that bit and push to the PR.
|
IMO it's a waste of time to update dependencies unless a release is due. This effort will have to be repeated right before 2.7.5 is released (with Netty 4.1.127 or so). Updating even just cherry-picked deps earlier wouldn't be reflected on maven. Users who want newer deps can use jython-slim - I think our pom does not pin versions, just requires minimum versions. Edit: Just re-read my earlier replies where I say "we're good to go". I guess that was under the assumption that this would not involve any more work than pressing the merge button. Given that more effort is required, I would recommend to bundle it in an overall dependency update right before release. |
This is a good point. And when I go to download the JARs, I find netty is already up to .121, one day after .120 .came out. It's a hopeful sign, though, that the story is not all regression. I will try them out, but we should hold off merging until at least a beta is due. I think an ultimate squash-commit will make the change set no bigger than for a single update. |
It failed on my machine, but it is helpful to have the detail visible, so I pushed anyway and ran the CI. In the read-me we recommend running regression tests either with the |
@jeff5 , there were files from a previous aborted test run that I did not clean up. Having done that, the test_os_jy test suite runs without errors. $ dist/bin/jython Lib/test/test_os_jy.py
test_issue1727 (__main__.OSFileTestCase) ... ok
test_issue1755 (__main__.OSFileTestCase) ... ok
test_issue1793 (__main__.OSFileTestCase) ... ok
test_issue1824 (__main__.OSFileTestCase) ... ok
test_issue1825 (__main__.OSFileTestCase) ... ok
test_issue2068 (__main__.OSFileTestCase) ... ok
test_issue2083 (__main__.OSDirTestCase) ... ok
test_rmdir (__main__.OSDirTestCase) ... ok
test_stat_with_trailing_slash (__main__.OSStatTestCase) ... ok
test_write_buffer (__main__.OSWriteTestCase) ... ok
test_env (__main__.UnicodeTestCase) ... ok
test_env_naively (__main__.UnicodeTestCase) ... ok
test_getcwd (__main__.UnicodeTestCase) ... ok
test_getcwdu (__main__.UnicodeTestCase) ... ok
test_listdir (__main__.UnicodeTestCase) ... ok
test_uname (__main__.UnicodeTestCase) ... ok
test_strftime_japanese_locale (__main__.LocaleTestCase) ... ok
test_strptime_locale (__main__.LocaleTestCase) ... ok
test_turkish_locale_posix_module (__main__.LocaleTestCase) ... ok
test_turkish_locale_string_lower_upper (__main__.LocaleTestCase) ... ok
test_system_no_site_import (__main__.SystemTestCase) ... ok
test_system_uses_os_environ (__main__.SystemTestCase)
Writing to os.environ is made available as env vars in os.system subprocesses ... ok
test_bad_link (__main__.LinkTestCase) ... ok
test_link (__main__.LinkTestCase) ... ok
test_bad_symlink (__main__.SymbolicLinkTestCase) ... ok
test_readlink (__main__.SymbolicLinkTestCase) ... ok
test_readlink_non_symlink (__main__.SymbolicLinkTestCase)
os.readlink of a non symbolic link should raise an error ... ok
test_readlink_nonexistent (__main__.SymbolicLinkTestCase) ... ok
----------------------------------------------------------------------
Ran 28 tests in 32.699s
OK |
@jeff, please check and report which version of Java 8 you are using. I'm using
and zero tests are failing. You may have to update your version of Java 8. Results of latest build test.
Output (last few lines):
|
The only important issue I want to resolve through the current pull request is to get agreement on which version of Java 8 to use to run the Jython regression tests. We cannot just assume that newer version of Netty will continue to work flawlessly on older (buggier) version of Java 8. Tons of bugs have been fixed in Java 8, so we should standardize on the latest release which 8.0.452. We cannot be using different versions of Java 8 to run Jython regression tests (and then run into differeint error conditions). |
The JARs named in the Ant script don't actually determine what you run with: they only determine what gets into the shaded JAR and the POMs. When you run the At the moment, you are running with the 4.1.119 JARs. The tests are passing because they do not exercise the networking. Normally we run It is very rare for the version of Java to be an issue. I'm using:
because it is the latest Oracle will give away. |
Good. We try to keep them passing, even if it means adding skips (to revisit later, ideally). |
You can can see this fails in the CI. For completeness, I repeated on my own machine having dropped netty 4.1.121 JARS with the recent Temurin Java 8.:
I get the expected networking failures. |
Closes #349