56 lines
2 KiB
Python
Executable file
56 lines
2 KiB
Python
Executable file
#!/usr/bin/python -tt
|
|
import os
|
|
import sys
|
|
import time
|
|
import urlgrabber
|
|
from hashlib import sha1
|
|
|
|
files = {
|
|
'kitchen/pycompat27/_subprocess.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/subprocess.py',
|
|
'tests/test_subprocess.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/test/test_subprocess.py',
|
|
'tests/test_defaultdict.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/test/test_defaultdict.py',
|
|
'kitchen/pycompat24/base64/_base64.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/base64.py',
|
|
'tests/test_base64.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/test/test_base64.py',
|
|
'tests/subprocessdata/sigchild_ignore.py': 'http://hg.python.org/cpython/raw-file/2.7/Lib/test/subprocessdata/sigchild_ignore.py',
|
|
}
|
|
if __name__ == '__main__':
|
|
os.chdir('sync')
|
|
|
|
for filename in files:
|
|
base_filename = os.path.basename(filename)
|
|
base_upstream_filename = os.path.basename(files[filename])
|
|
modname = os.path.splitext(base_upstream_filename)[0]
|
|
|
|
if not os.path.exists(modname):
|
|
os.mkdir(modname)
|
|
sp = open(os.path.join('..', filename), 'r')
|
|
sp_sum = sha1(sp.read()).hexdigest()
|
|
sp_sum_line = '%s\n' % sp_sum
|
|
record = open('%s/record' % modname, 'w')
|
|
record.writelines(sp_sum_line)
|
|
record.close()
|
|
|
|
os.chdir(modname)
|
|
|
|
urlgrabber.urlgrab(files[filename])
|
|
sp = open(base_upstream_filename)
|
|
sp_sum = sha1(sp.read()).hexdigest()
|
|
sp_sum_line = '%s\n' % sp_sum
|
|
|
|
record = open('record', 'r')
|
|
if sp_sum_line in record:
|
|
os.remove(base_upstream_filename)
|
|
os.chdir('..')
|
|
continue
|
|
|
|
retrieved_at = int(time.time())
|
|
new_name = '%s-%s' % (retrieved_at, base_upstream_filename)
|
|
os.rename(base_upstream_filename, new_name)
|
|
|
|
print 'New %s found: %s' % (base_upstream_filename, new_name)
|
|
record = open('record', 'a')
|
|
record.writelines(sp_sum_line)
|
|
record.close()
|
|
os.chdir('..')
|
|
|
|
sys.exit(0)
|