Go to file
Pierre Tardy 2b7daff8cb Don't try to decode when checking clone bundles
This fix exception with python3 with stack-trace:

error: Cannot fetch platform_external_grpc-grpc-java.git (UnicodeDecodeError: 'utf-8' codec can't decode byte 0x96 in position 640: invalid start byte)

[...]
  File "[...]project.py", line 2255, in _IsValidBundle
    if f.read(16) == '# v2 git bundle\n':
  File "/usr/lib/python3.5/codecs.py", line 321, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)

Even if we ask 16 characters, python buffered decoder will try to decode more in the buffer

The patch works for python2 and python3, and open the file in byte mode so that decoding is not attemped

Signed-off-by: Pierre Tardy <tardyp@gmail.com>
Change-Id: I837ae3c5cd724b34670fc2a84e853431f482b20d
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/224642
Reviewed-by: Mike Frysinger <vapier@google.com>
Reviewed-by: David Pursehouse <dpursehouse@collab.net>
Tested-by: Mike Frysinger <vapier@google.com>
2019-07-11 01:33:37 +00:00
docs docs: start a release document 2019-06-12 23:18:10 -04:00
hooks hooks/pre-auto-gc-battery: allow gc to run on non-laptops 2018-07-11 13:45:58 -07:00
subcmds git_command: drop custom version helper 2019-07-11 01:30:18 +00:00
tests git_command: drop custom version helper 2019-07-11 01:30:18 +00:00
.flake8 Replace pylint with pyflakes/flake8 2016-09-14 09:49:02 +02:00
.gitattributes Adds additional crlf clobber avoidance. 2016-06-22 08:36:45 +00:00
.gitignore Add repoc to the .gitignore file 2013-03-08 01:18:08 +00:00
.mailmap Update .mailmap 2017-05-26 21:44:57 +09:00
.project Set correct name in PyDev and Eclipse project config 2013-04-19 09:35:43 +09:00
.pydevproject Leverage the next keyword from python 2.7 2018-12-19 11:06:35 -08:00
color.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
command.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
COPYING Initial Contribution 2008-10-21 07:00:00 -07:00
editor.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
error.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
event_log.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
git_command.py git_command: drop custom version helper 2019-07-11 01:30:18 +00:00
git_config.py handle binary stream from urllib.request.urlopen 2019-07-04 18:19:00 -04:00
git_refs.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
git_ssh add license header to a few more files 2019-06-13 13:23:19 -04:00
gitc_utils.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
main.py main: user-agent: include full git version info 2019-07-11 01:32:38 +00:00
manifest_xml.py fix raise syntax 2019-07-05 01:38:14 -04:00
pager.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
platform_utils_win32.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
platform_utils.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
progress.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
project.py Don't try to decode when checking clone bundles 2019-07-11 01:33:37 +00:00
pyversion.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
README.md README: link in new bug tracker 2018-12-20 02:11:46 -05:00
repo repo: all ParseGitVersion to load git version info itself 2019-07-11 01:29:18 +00:00
SUBMITTING_PATCHES.md Replace pylint with pyflakes/flake8 2016-09-14 09:49:02 +02:00
trace.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00
wrapper.py set default file encoding to utf-8 2019-06-13 14:30:52 +00:00

repo

Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is not meant to replace Git, only to make it easier to work with Git. The repo command is an executable Python script that you can put anywhere in your path.