jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/390362 )
Change subject: version: Don't rely on git.wikimedia.org ......................................................................
version: Don't rely on git.wikimedia.org
It's dead. Use Gerrit's API instead.
Bug: T139089 Change-Id: Ic4917c6814406ad1d10397f6d9eef5382b34f8ef --- M pywikibot/version.py 1 file changed, 8 insertions(+), 9 deletions(-)
Approvals: jenkins-bot: Verified Xqt: Looks good to me, approved
diff --git a/pywikibot/version.py b/pywikibot/version.py index c48db41..f20209e 100644 --- a/pywikibot/version.py +++ b/pywikibot/version.py @@ -14,6 +14,7 @@
import codecs import datetime +import json import os import subprocess import sys @@ -364,19 +365,17 @@ return (tag, rev, date, hsh)
-def getversion_onlinerepo(repo=None): - """Retrieve current framework revision number from online repository. - - @param repo: (optional) Online repository location - @type repo: URL or string - """ +def getversion_onlinerepo(): + """Retrieve current framework git hash from Gerrit.""" from pywikibot.comms import http
- url = repo or 'https://git.wikimedia.org/feed/pywikibot/core' + url = 'https://gerrit.wikimedia.org/r/projects/pywikibot%2Fcore/branches/master' + # Gerrit API responses include )]}' at the beginning, make sure to strip it out buf = http.fetch(uri=url, - headers={'user-agent': '{pwb}'}).content.splitlines() + headers={'user-agent': '{pwb}'}).content[4:] + try: - hsh = buf[13].split('/')[5][:-1] + hsh = json.loads(buf)['revision'] return hsh except Exception as e: raise ParseError(repr(e) + ' while parsing ' + repr(buf))
pywikibot-commits@lists.wikimedia.org