fix: small InputSource related issues #2255
Merged
+1,193
−141
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.
Summary of changes
I have added a bunch of tests for
InputSource
handling, checking every kind of input source with most of the parsers. During this, I detected the following issues that I fixed:rdflib.util._iri2uri()
should not URL quote thenetloc
parameter, theidna
encoding already takes care of special characters. I removed the URL quoting ofnetloc
rdflib.parser.create_input_source()
incorrectly usesfile.buffer
instead ofsource.buffer
when dealing with IO stream sources.Other changes with no runtime impact include:
InputSource
tests.urllib.error.HTTPError: HTTP Error 429: Too Many Requests
from it.
Checklist
the same change.
so maintainers can fix minor issues and keep your PR up to date.