Refactor parse_xml function to handle external target references (Issue #1349) (old PR #1350) by TommasoPetrolito · Pull Request #1518 · python-openxml/python-docx · GitHub
Conversation
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
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.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.
Footer
You can’t perform that action at this time.
I start from this issue/PR:
#1350
Trying to push again for this change to be merged/integrated, as people still face the issue/bug if this won't be merged.
In many projects I had to use the custom commits on forks to make it work, the discussion/conversation in PR 1350 shows that the issue is felt by a significant number of users and it would be nice to have this very little change finally merged @scanny
THE MODIFICATION IS:
The added code checks if self.target_ref exists and if it starts with a "#", which is a common way to denote external references. If both conditions are met, the method returns RTM.EXTERNAL, indicating that the target reference is external.
This change improves the robustness of our code by correctly handling and classifying external references. This will prevent potential errors or unexpected behavior when encountering such references.
Please merge this change now that the modification is properly aligned with latest code version and has no conflicts.