DrTrigon has uploaded a new change for review.
https://gerrit.wikimedia.org/r/86375
Change subject: re-enable support for svn repo revision detection (from compat)
......................................................................
re-enable support for svn repo revision detection (from compat)
* re-enable old code still there
* add support for git sha hash (cf. change 85523)
* try to avoid to excessive use of try...except structures
Change-Id: Ia5b6c30715b1ef4e103701e159987fe9b506660d
---
M pywikibot/version.py
1 file changed, 11 insertions(+), 6 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/pywikibot/core
refs/changes/75/86375/1
diff --git a/pywikibot/version.py b/pywikibot/version.py
index 9555d71..3c6fa20 100644
--- a/pywikibot/version.py
+++ b/pywikibot/version.py
@@ -10,8 +10,7 @@
__version__ = '$Id$'
import os
-import time
-import datetime
+import time, datetime
import urllib
import subprocess
@@ -47,7 +46,11 @@
if cache:
return cache
try:
- (tag, rev, date, hsh) = getversion_git()
+ _program_dir = _get_program_dir()
+ if os.path.isdir(os.path.join(_program_dir, '.svn')):
+ (tag, rev, date, hsh) = getversion_svn(_program_dir)
+ else:
+ (tag, rev, date, hsh) = getversion_git(_program_dir)
except Exception:
try:
(tag, rev, date, hsh) = getversion_nightly()
@@ -87,11 +90,12 @@
from sqlite3 import dbapi2 as sqlite
con = sqlite.connect(os.path.join(_program_dir, ".svn/wc.db"))
cur = con.cursor()
- cur.execute('''select local_relpath, repos_path, revision,
changed_date from nodes order by revision desc, changed_date desc''')
- name, tag, rev, date = cur.fetchone()
+ cur.execute('''select local_relpath, repos_path, revision,
changed_date, checksum from nodes order by revision desc, changed_date desc''')
+ name, tag, rev, date, hsh = cur.fetchone()
con.close()
tag = tag[:-len(name)]
date = time.gmtime(date / 1000000)
+ hsh = hsh.split('$')[2]
else:
for i in xrange(3):
entries.readline()
@@ -104,9 +108,10 @@
date = time.strptime(entries.readline()[:19], '%Y-%m-%dT%H:%M:%S')
rev = entries.readline()[:-1]
entries.close()
+ hsh = '(unknown)'
if (not date or not tag or not rev) and not path:
raise ParseError
- return (tag, rev, date)
+ return (tag, rev, date, hsh)
def getversion_git(path=None):
--
To view, visit https://gerrit.wikimedia.org/r/86375
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia5b6c30715b1ef4e103701e159987fe9b506660d
Gerrit-PatchSet: 1
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: DrTrigon <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits