Consider an SVN repo which was mirrored to git by git_updater. When SVN repo is migrated to github, the git histories of chromium mirror and new github one are different. As a result, hashes of the objects do not match.
Before, gclient would just get stuck at trying to fetch the repo after changing its remote url with errors like this:
...
[0:01:21] error: refs/heads/master does not point to a valid object!
[0:01:21] error: refs/remotes/origin/HEAD does not point to a valid object!
[0:01:21] error: refs/remotes/origin/master does not point to a valid object!
[0:01:21] error: refs/heads/master does not point to a valid object!
[0:01:21] error: refs/remotes/origin/HEAD does not point to a valid object!
[0:01:21] error: refs/remotes/origin/master does not point to a valid object!
[0:01:21] fatal: bad object HEAD
[0:01:21] error: /b/git-cache/chromium.googlesource.com-external-github.com-google-open--vcdiff did not send all necessary objects
The solution is to notice such state, delete the .git folder, and clone again.
BUG=523239
R=akuegel@chromium.org
Review URL: https://codereview.chromium.org/1303293002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296417 0039d316-1c4b-4281-b951-d872f2087c98
I fixed the overlapping argument and fixed up the tests so that the actual sha1 hash is now passed (since the tool actually check now that the downloaded file hash matches)
BUG=
R=hinoka@google.com
Review URL: https://codereview.chromium.org/1285423002 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296346 0039d316-1c4b-4281-b951-d872f2087c98
Patch contributed by Leung Wing Chung <lwchkg@gmail.com>.
Committed on his behalf due to Commit Queue's mishandling of
CRLF files.
Here is my procedure for testing for a new install
1. Download and unzip
https://src.chromium.org/svn/trunk/tools/depot_tools.zip
Note that the path should include a space character,
e.g. "with a space"
2. Copy the three modified files to the unzipped folder
3. Convert the unzipped files into Windows CRLF.
4. REMOVE the following lines from update_depot_tools.bat
(Should I file a separate bug for this?)
:: Initialize/update virtualenv.
cd /d "%DEPOT_TOOLS_DIR%."
python -u bootstrap\bootstrap.py --deps_file bootstrap\deps.pyl --quiet ENV
if errorlevel 1 goto :EOF
5. Run gclient. Installation should be okay until
"git rebase" is run.
R=maruel@chromium.org
BUG=507301
Review URL: https://codereview.chromium.org/1232023004 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296275 0039d316-1c4b-4281-b951-d872f2087c98
1. GetFileList() returns a list of path\names on Windows but of path/names on
non-Windows. To not perturb existing hashes, I guess the hashing code should do
path.replace('/', '\\') before hashing.
2. GetFileList() returns a sorted list of filenames, and \ compares pretty
different than / (the former is less than all numbers while the latter
is greater, for example). So replace / with \\ for sorting too.
With this change, OS X produces the same file hash as Windows.
The script still early-exits on non-Windows, so no visible change yet.
BUG=495204
Review URL: https://codereview.chromium.org/1287543005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296271 0039d316-1c4b-4281-b951-d872f2087c98
The majority of chromium projects are on googlesource.com, which can
display a range of commits on the web. Use this feature instead of
dumping logs into the commit message.
Particularly, this avoids creating large commit messages as these logs
sometimes contain upwards of 50 commits.
Review URL: https://codereview.chromium.org/1257233006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296184 0039d316-1c4b-4281-b951-d872f2087c98
This does one last check to see if the file downloaded by
download_from_google_storage.py actually matches its sha1
BUG=
Review URL: https://codereview.chromium.org/1252313005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296155 0039d316-1c4b-4281-b951-d872f2087c98
Original CL: https://codereview.chromium.org/1242013003/
Executing a bat file from another bat file will replace
that first bat file with the second one. To call the
second one and then return and execute the rest of the
first one, you have to do "call second.bat"
"python" is really "python.bat" so that this happened
was not obvious. More obvious now.
R=bratell@opera.comTBR=pgervais@chromium.org
BUG=511926
Review URL: https://codereview.chromium.org/1239263003 .
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296063 0039d316-1c4b-4281-b951-d872f2087c98
gclient should be checking out origin/deployed, not deployed.
--revision deployed is local, origin/deployed actually causes it to fetch
BUG=
Review URL: https://codereview.chromium.org/1236133005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296055 0039d316-1c4b-4281-b951-d872f2087c98
A flag for showing the description instead of opening the editor to modify it.
BUG=493885
Review URL: https://codereview.chromium.org/1237483003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296000 0039d316-1c4b-4281-b951-d872f2087c98
After this CL is in users will be able to skip dependency checks and uploads for specific branches locally by running (using test2 as a branch name):
git config branch.test2.skip-deps-uploads True
To undo the skipping:
git config --unset branch.test2.skip-deps-uploads
To do the above commands globally (across all checkouts):
git config --global branch.test2.skip-deps-uploads True
git config --global --unset branch.test2.skip-deps-uploads
BUG=chromium:504832
Review URL: https://codereview.chromium.org/1210903005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295953 0039d316-1c4b-4281-b951-d872f2087c98
This is needed to ensure that it resolves to a correct URL on Gitiles.
R=maruel@chromium.org, smut@google.com
Review URL: https://codereview.chromium.org/1225713002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295932 0039d316-1c4b-4281-b951-d872f2087c98
This both ensures that 'git auto-svn' has been properly run, and also that
the Blink checkout is appropriately 'unmanaged'.
R=dpranke@chromium.org, mmoss@chromium.org
BUG=289742
Review URL: https://codereview.chromium.org/1186053007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295916 0039d316-1c4b-4281-b951-d872f2087c98
* make RunTest's multiprocessing.Pool in the constructor of InputApi
to avoid getting tripped up by chdir manipulation.
* Don't do the split cyclic-import check when the invoker of the
Pylint presubmit checks explicitly sends cyclic import check
parameters via extra_args
* fix pseudobug where ownership of the files variable was unclear,
and pass all arguments on stdin (instead of mix of CLI + stdin).
* fix bug in pylint which caused it to manipulate sys.path before
spawning its subprocesses, which caused multiprocessing to fail
on windows.
* Note: This may carry a slight semantic change. Before, pylint would
add all .py files' directories to sys.path while checking any of
them. Now in parallel mode, pylint will only add the path of the
single file to sys.path. This behavior actually mirrors Python's
own behavior, so the check should be more-correct than before (and
should cut down on pylint import scanning time with very large
sys.path's).
* If someone encounters an issue with this, please note that the
GetPylint check also includes an extra_paths_list which is
expressly for this purpose.
R=dpranke@chromium.org, kbr@chromium.org, maruel@chromium.org
BUG=501012
Review URL: https://codereview.chromium.org/1208743002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295908 0039d316-1c4b-4281-b951-d872f2087c98
The activate_end method is used in infra/bootstrap/build_deps.py, which doesn't
pass the value for this parameter.
R=pgervais@chromium.org
BUG=503067
Review URL: https://codereview.chromium.org/1213113002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295893 0039d316-1c4b-4281-b951-d872f2087c98
Reason for revert:
This conflicts with (and duplicates?) the -z option below and has broken one of the chrome android downstream bots.
Safer to revert than trying to fix
Original issue's description:
> Add support for tar.gz archive files to download from download_from_google_storage
>
> Also, add support for directly setting the public read flag on uploaded files.
>
> The support for tar.gz allows the uploaded bundle to be a single tar.gz file instead of a lot of individual files using the directory support already in. The benefit here is that it is much easier to update the dependency. Simply clean out the existing files, copy in the new ones, create a tar.gz file, with the same name as the directory + 'tar.gz'. If the directory name and file name does not match up we will not clean up existing artifacts on download (i.e., there can be left over files after extracting).
>
> I am doing this because I am moving a bunch of the dart dependencies to gcs, and a lot of our dependencies is much easier to manage with this in. If you don't like this, I can simply wrap the download script in another python script and do the logic there, but this may be handy for other people as well.
>
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=295872
TBR=hinoka@google.com,hinoka@chromium.org,azarchs@chromium.org,ricow@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1209033006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295883 0039d316-1c4b-4281-b951-d872f2087c98
All CQ supported projects already have git mirrors. We don't
want to support svn checkouts anymore.
BUG=503847
Review URL: https://codereview.chromium.org/1213363002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295882 0039d316-1c4b-4281-b951-d872f2087c98
Also, add support for directly setting the public read flag on uploaded files.
The support for tar.gz allows the uploaded bundle to be a single tar.gz file instead of a lot of individual files using the directory support already in. The benefit here is that it is much easier to update the dependency. Simply clean out the existing files, copy in the new ones, create a tar.gz file, with the same name as the directory + 'tar.gz'. If the directory name and file name does not match up we will not clean up existing artifacts on download (i.e., there can be left over files after extracting).
I am doing this because I am moving a bunch of the dart dependencies to gcs, and a lot of our dependencies is much easier to manage with this in. If you don't like this, I can simply wrap the download script in another python script and do the logic there, but this may be handy for other people as well.
Review URL: https://codereview.chromium.org/807463005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295872 0039d316-1c4b-4281-b951-d872f2087c98
It is not clear why it was skipped in r293502, but it was problematic
before that as it can be seen from CL 802403003.
The reason for the different results (and likely the reason why the test
was skipped) is that the handling of the %(upstream:track) and
%(upstream:trackhort) formatting tags was broken in git itself until
version 2.3.0. This was fixed in git commit b6160d95, and the fix shows
that the test expectations in testGetBranchesInfo() were actually wrong
in one of the cases.
Fix the expectations and make sure we only use %(upstream:track) in the
test when a suitable git version is present.
R=pgervais@chromium.org,iannucci@chromium.org
Review URL: https://codereview.chromium.org/1195933003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295814 0039d316-1c4b-4281-b951-d872f2087c98
It still early-exits on non-Windows, so no visible change yet.
BUG=495204
Review URL: https://codereview.chromium.org/1181943003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295807 0039d316-1c4b-4281-b951-d872f2087c98
Hashes for both the 2013 and 2015 toolchain don't change for me locally with
this change, looks like there are no hidden or system files in the toolchain.
(I tried with the "you are a googler" flow.)
No intended behavior change.
BUG=495204
Review URL: https://codereview.chromium.org/1200113004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295804 0039d316-1c4b-4281-b951-d872f2087c98
This flag allows the user to specify a file which contains a JSON list of dicts to set for the "changes" property when scheduling the build.
BUG=493885
Review URL: https://codereview.chromium.org/1199963004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@295788 0039d316-1c4b-4281-b951-d872f2087c98