Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32.4k
gh-116622: Android logging fixes#122698
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
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.
These changes all make sense to me; but there's a hypothesis test that is currently failing. I want to understand what's going on there before I formally approve/merge.
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.
Looks like the hypothesis failure is due to#122686, so I guess that makes this good to go!
b0c48b8
intopython:mainUh oh!
There was an error while loading.Please reload this page.
Thanks@mhsmith for the PR, and@freakboy3742 for merging it 🌮🎉.. I'm working now to backport this PR to: 3.13. |
Modifies the handling of stdout/stderr redirection on Android to accomodatethe rate and buffer size limits imposed by Android's logging infrastructure.(cherry picked from commitb0c48b8)Co-authored-by: Malcolm Smith <smith@chaquo.com>
GH-122719 is a backport of this pull request to the3.13 branch. |
Modifies the handling of stdout/stderr redirection on Android to accomodate the rate and buffer size limits imposed by Android's logging infrastructure.
Hello! For next time, please could you update your blurb CLI? Thanks! https://discuss.python.org/t/new-blurb-1-2-please-upgrade/59159 |
Modifies the handling of stdout/stderr redirection on Android to accomodate the rate and buffer size limits imposed by Android's logging infrastructure.
Uh oh!
There was an error while loading.Please reload this page.
This PR fixes several issues with Android's redirection of stdout and stderr to the Logcat, which was added in#118063:
The buffering behavior of TextIOWrapper was changed in#119507, which broke the technique we were previously using to stay within Logcat's line length limit. Since this behavior is not part of TextIOWrapper's public API, it's safer to bypass it completely and do the buffering ourselves.
When running in
--verbose3
mode, I noticed that failure logs of large test modules liketest_pathlib
were truncated because they were being written faster than the test script could consume them. Fixed by adding a rate limit using the token bucket algorithm.The Android stdout and stderr tests themselves failed in
--verbose3
mode because stdout and stderr were captured by aStringIO
. Fixed by detecting this mode and using some temporary streams with the same properties.