scripts/download.py: use a more terse api for fetching git commit date
authorYousong Zhou <yszhou4tech@gmail.com>
Wed, 27 Jun 2018 07:20:21 +0000 (15:20 +0800)
committerJo-Philipp Wich <jo@mein.io>
Tue, 18 Dec 2018 16:32:19 +0000 (17:32 +0100)
The previous api [1] includes in its response patch data among other
things, as such the response size can vary and be big.  Use another
api[2] to improve it a bit

 [1] Get a single commit, Repositories, https://developer.github.com/v3/repos/commits/#get-a-single-commit
 [2] Git Commits, Git Data, https://developer.github.com/v3/git/commits/#get-a-commit

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(backported from 6e3c2d757a5745dee5cce0b53175b56ad3621d73)

scripts/download.py

index f7fd534ea530c7bec31d367fb3019f4486e69272..779d7b3de27ea5c9d515831e5718e2f93fd9b548 100755 (executable)
@@ -305,7 +305,7 @@ class DownloadMethodGitHubTarball(DownloadMethod):
     def _init_commit_ts(self):
         if self.commit_ts is not None:
             return
-        url = self._make_repo_url_path('commits', self.version)
+        url = self._make_repo_url_path('git', 'commits', self.version)
         ct = self.commit_ts_cache.get(url)
         if ct is not None:
             self.commit_ts = ct
@@ -313,7 +313,7 @@ class DownloadMethodGitHubTarball(DownloadMethod):
         resp = self._make_request(url)
         data = resp.read()
         data = json.loads(data)
-        date = data['commit']['committer']['date']
+        date = data['committer']['date']
         date = datetime.datetime.strptime(date, '%Y-%m-%dT%H:%M:%SZ')
         date = date.timetuple()
         ct = calendar.timegm(date)