-
-
Notifications
You must be signed in to change notification settings - Fork 31.4k
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
gh-90473: Decrease recursion limit and skip tests on WASI (GH-92803) #92803
Conversation
tiran
commented
May 14, 2022
- Reduce recursion limit to 750. WASI has limited call stack.
- Mark tests that require mmap, os.pipe, or fail on musl libc.
0d3f889
to
24ff31d
Compare
24ff31d
to
1dfb80b
Compare
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.
mostly LGTM
What's the plan for un-skipping all those tests? Some of them seem like they should be fixable right now but I expect some may not ever work.
1dfb80b
to
6fb0e9f
Compare
We need to revise the skips whenever we update to a new version of WASI SDK. The standard evolves in small incremental steps. Each version adds a few new features. |
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.
LGTM (There were a few things I'm not familiar with that I'll trust you on. 😄)
I noted a couple cases where it seems like we should be able to tweak tests instead of skipping them. However, I'll leave their resolution up to your judgement.
Lib/test/test_syntax.py
Outdated
@@ -2117,6 +2117,7 @@ def test_syntax_error_on_deeply_nested_blocks(self): | |||
self._check_error(source, "too many statically nested blocks") | |||
|
|||
@support.cpython_only | |||
@unittest.skipIf(support.is_wasi, "Exhausts WASI call stack") |
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.
Is there some way we could tweak the test to get the same coverage?
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 was able to make the test pass with a smaller parser MAXSTACK
value on WASI.
CC @pablogsal
6fb0e9f
to
fdd80e9
Compare
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.
LGTM, overall. I have a few minor remarks/suggestions.
Reduce recursion limit to 750. WASI has limited call stack. Mark tests that require mmap, os.pipe, or fail on musl libc.
71714f4
to
e67eab4
Compare
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.
Parser and AST changes LGTM
Thanks @tiran for the PR 🌮🎉.. I'm working now to backport this PR to: 3.11. |
GH-92952 is a backport of this pull request to the 3.11 branch. |
…onGH-92803) (cherry picked from commit 137fd3d) Co-authored-by: Christian Heimes <christian@python.org>