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
[WIP] Handling Encoding Error. #1496
Closed
Closed
Changes from 3 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
ea9621d
added an encoding exception
anirudnits 6ea1644
added tests for invalid encodings
anirudnits a8f22b4
added logic to handle unsupported encodings
anirudnits 839fdc4
Merge branch 'develop' of https://github.com/PyCQA/isort into issue/1…
anirudnits 86f8765
tried to solve the unicode error in windows build
anirudnits 572d10d
tried to solve the unicode error in windows build
anirudnits File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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.
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.
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 think the try except should be elsewhere (probably on the call of this function, or , better on
encoding, _ = tokenize.detect_encoding(buffer.readline)
inio.py
so it's more localized and the change affect less code than that.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.
@Pierre-Sassoulas I have also added a try clause on
encoding, _ = tokenize.detect_encoding
inisort/io.py
. The reason why I also put a try catch block here as well asisort/main.py
is that I'm trying to throw a warning for each file with invalid encoding(if verbose flag is set) and not an error even if at least one file has valid encoding. The error is only for the case when all the files processed have invalid encodings. So I needed a way to propagate thisinvalid encodings exceptions
toisort/main.py
where I am finally deciding if to throw an error or not.isort/io.py
andisort/api.py
are only called per file so I couldn't come up with a way to do it there.