Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upadded support for non-ascii directories and file names #860
Conversation
Codecov Report
@@ Coverage Diff @@
## master #860 +/- ##
==========================================
- Coverage 94.79% 93.54% -1.25%
==========================================
Files 59 59
Lines 9603 9607 +4
==========================================
- Hits 9103 8987 -116
- Misses 500 620 +120
Continue to review full report at Codecov.
|
Thanks a lot, and I would love to merge this. However, it appears the PR breaks a single test in Py 2.7, and I am not entirely sure these are related. So I am merging to test it in master, and revert as needed. |
Unfortunately the build still fails on top of master for the same reason as before. I have no idea why this is happening. |
This fix allows support for non-ascii filenames, both in workdir and repos. For instance, when your workdir contains non-ascii (0-255) characters,
git.Repo.clone_from()
didn't work.Implementation:
It turned out that the amount of necessary changes is not big. The main problem was in that git.compat.defenc was set to sys.getdefaultencoding() instead of sys.getfilesystemencoding().
sys.getfilesystemencoding()
requires Python 2.3. Thefrom builtins import str
fixes several str(epath) etc. conversions that were causing UnicodeEncodeError. I have no idea what python2 version is necessary for that.I have tested the fix on Windows7 Pro x64, both with Python 2.7.13 and 3.7.3.