Repository navigation
fix: preserve process control exceptions in RSS and Atom conversion - #2652
Open
InfinityJMB (jblanc86-maker) wants to merge 2 commits into
Open
InfinityJMB (jblanc86-maker) wants to merge 2 commits into
InfinityJMB (jblanc86-maker) wants to merge 2 commits into
Conversation
Catch Exception in the two generic RSS handlers so KeyboardInterrupt and SystemExit reach the caller. Preserve stream-position cleanup and ordinary parsing/rendering fallbacks.
Add cancellation/exit regressions for XML detection and RSS/Atom rendering, plus ordinary-error and stream-position controls. All 173 RSS/Atom tests pass on Python 3.12.14.
Author
|
@microsoft-github-policy-service agree |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
RSS/Atom detection and HTML rendering currently catch
BaseException. This silently turnsKeyboardInterruptandSystemExitinto an unsupported-format result or unconverted content, preventing these signals from reaching the caller.Catch
Exceptionin the two generic handlers instead. XML detection still restores the stream position infinally; ordinary parse/render failures and the dedicatedRecursionErrorfallback retain their behavior.Validation
DID NOT RAISE; all three controls passed.python -m pytest tests/test_rss.py -q— 173 passed on Python 3.12.14.pre-commit run --all-filesandgit diff --checkpassed.AI assistance: ChatGPT was used to investigate the issue and prepare the patch and tests.