Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/cygwin-apps/calm.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Turney <jon.turney@dronecode.org.uk>2017-10-31 15:43:54 +0300
committerJon Turney <jon.turney@dronecode.org.uk>2017-11-09 18:19:41 +0300
commit828b91be6190a1707b8e89a157487419e36bcac7 (patch)
treeae8ce20efad66e7ba29ebba0c931955b3bf64dff
parent558c8d958f4b64d99f39bc4bcf3f3ba12b5495f1 (diff)
Try to rename setup.hint to pvr.hint at upload
Update tests
-rw-r--r--calm/uploads.py34
-rw-r--r--test/testdata/process_arch/rel_area.expected10
-rw-r--r--test/testdata/uploads/move.expected8
-rw-r--r--test/testdata/uploads/pkglist.expected6
4 files changed, 46 insertions, 12 deletions
diff --git a/calm/uploads.py b/calm/uploads.py
index 4b4725d..dc95d48 100644
--- a/calm/uploads.py
+++ b/calm/uploads.py
@@ -116,6 +116,36 @@ def scan(m, all_packages, arch, args):
logging.warning("package '%s' is not in the package list for maintainer %s" % (dirpath, m.name))
continue
+ # see if we can fix-up any setup.hint files
+ pvr = None
+ ambiguous = False
+ seen = False
+
+ for f in sorted(files):
+ # warn about legacy setup.hint uploads
+ if f == 'setup.hint':
+ logging.warning("'%s' seen, please update to cygport >= 0.23.0" % f)
+ seen = True
+
+ match = re.match(r'^([^-].*?)(-src|)\.tar\.(bz2|gz|lzma|xz)$', f)
+ if match:
+ if (pvr is not None) and (pvr != match.group(1)):
+ ambiguous = True
+
+ pvr = match.group(1)
+
+ if seen:
+ if ambiguous or (pvr is None):
+ error = True
+ logging.error("'setup.hint' seen in %s, and couldn't determine what version it applies to", dirpath)
+ else:
+ old = "setup.hint"
+ new = pvr + ".hint"
+ logging.warning("renaming '%s' to '%s'" % (old, new))
+ os.rename(os.path.join(dirpath, old), os.path.join(dirpath, new))
+ files.remove(old)
+ files.append(new)
+
# filter out files we don't need to consider
for f in sorted(files):
fn = os.path.join(dirpath, f)
@@ -171,10 +201,6 @@ def scan(m, all_packages, arch, args):
files.remove(f)
continue
- # warn about legacy setup.hint uploads
- if f == 'setup.hint':
- logging.warning("'%s' seen, please update to cygport >= 0.23.0" % fn)
-
# verify compressed archive files are valid
if re.search(r'\.tar\.(bz2|gz|lzma|xz)$', f):
valid = True
diff --git a/test/testdata/process_arch/rel_area.expected b/test/testdata/process_arch/rel_area.expected
index 51f4a24..58deba0 100644
--- a/test/testdata/process_arch/rel_area.expected
+++ b/test/testdata/process_arch/rel_area.expected
@@ -4,6 +4,7 @@
'noarch/release/perl-Net-SMTP-SSL': ['perl-Net-SMTP-SSL-1.03-1-src.tar.xz',
'perl-Net-SMTP-SSL-1.03-1.tar.xz',
'perl-Net-SMTP-SSL-1.03-2-src.tar.xz',
+ 'perl-Net-SMTP-SSL-1.03-2.hint',
'perl-Net-SMTP-SSL-1.03-2.tar.xz',
'setup.hint',
'sha512.sum'],
@@ -93,5 +94,10 @@
'staleversion-250-0.tar.xz',
'staleversion-260-0-src.tar.xz',
'staleversion-260-0.tar.xz'],
- 'x86/release/testpackage': ['setup.hint', 'sha512.sum', 'testpackage-1.0-1-src.tar.bz2', 'testpackage-1.0-1.tar.bz2'],
- 'x86/release/testpackage/testpackage-subpackage': ['setup.hint', 'testpackage-subpackage-1.0-1.tar.bz2']}
+ 'x86/release/testpackage': ['setup.hint',
+ 'sha512.sum',
+ 'testpackage-1.0-1-src.tar.bz2',
+ 'testpackage-1.0-1.hint',
+ 'testpackage-1.0-1.tar.bz2'],
+ 'x86/release/testpackage/testpackage-subpackage': ['testpackage-subpackage-1.0-1.hint',
+ 'testpackage-subpackage-1.0-1.tar.bz2']}
diff --git a/test/testdata/uploads/move.expected b/test/testdata/uploads/move.expected
index 47cb0af..fda6084 100644
--- a/test/testdata/uploads/move.expected
+++ b/test/testdata/uploads/move.expected
@@ -1,3 +1,5 @@
-{'x86/release/testpackage': ['setup.hint', 'testpackage-1.0-1-src.tar.bz2', 'testpackage-1.0-1.tar.bz2'],
- 'x86/release/testpackage/testpackage-subpackage': ['setup.hint', 'testpackage-subpackage-1.0-1.tar.bz2'],
- 'x86/release/testpackage2/testpackage2-subpackage': ['setup.hint', 'testpackage2-subpackage-1.0-1.tar.bz2']}
+{'x86/release/testpackage': ['testpackage-1.0-1-src.tar.bz2', 'testpackage-1.0-1.hint', 'testpackage-1.0-1.tar.bz2'],
+ 'x86/release/testpackage/testpackage-subpackage': ['testpackage-subpackage-1.0-1.hint',
+ 'testpackage-subpackage-1.0-1.tar.bz2'],
+ 'x86/release/testpackage2/testpackage2-subpackage': ['testpackage2-subpackage-1.0-1.hint',
+ 'testpackage2-subpackage-1.0-1.tar.bz2']}
diff --git a/test/testdata/uploads/pkglist.expected b/test/testdata/uploads/pkglist.expected
index 0e4c587..f36b2a4 100644
--- a/test/testdata/uploads/pkglist.expected
+++ b/test/testdata/uploads/pkglist.expected
@@ -6,11 +6,11 @@
'Like it’s you’re Markup Language™ Nokogiri’s tool―that '
'Bézier."',
'category': 'Devel',
- 'requires': 'cygwin'}}, {'curr': None, 'prev': None, 'test': None}, False),
+ 'requires': 'cygwin'}}, {}, False),
'testpackage-subpackage': Package('x86/release/testpackage/testpackage-subpackage', {'testpackage-subpackage-1.0-1.tar.bz2': Tar('aff488008bee3486e25b539fe6ccd1397bd3c5c0ba2ee2cf34af279554baa195af7493ee51d6f8510735c9a2ea54436d776a71e768165716762aec286abbbf83', 195, False)}, {'1.0-1': {'sdesc': '"A test subpackage"',
'ldesc': '"A test subpackage"',
'category': 'Devel',
- 'external-source': 'testpackage'}}, {'curr': None, 'prev': None, 'test': None}, False),
+ 'external-source': 'testpackage'}}, {}, False),
'testpackage2-subpackage': Package('x86/release/testpackage2/testpackage2-subpackage', {'testpackage2-subpackage-1.0-1.tar.bz2': Tar('6de201dfed1d45412509c65deb34690dc2d09c6aafccfe491fd2f440f92842b9c755b61dc7bcdd4cc0c9f18cf46c2b3a1241e99c4c2a33fff5555e7b2f0b6348', 14, True)}, {'1.0-1': {'sdesc': '"A test subpackage 2"',
'ldesc': '"A test subpackage 2"',
- 'category': 'Devel'}}, {'curr': None, 'prev': None, 'test': None}, False)}
+ 'category': 'Devel'}}, {}, False)}