This is the mail archive of the cygwin-apps-cvs mailing list for the cygwin-apps project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[calm - Cygwin server-side packaging maintenance script] branch master, updated. 20160705-41-gf3e0b64




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=f3e0b64f40dc1a29e138295ffba136eccc019df2

commit f3e0b64f40dc1a29e138295ffba136eccc019df2
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Fri Dec 9 12:36:12 2016 +0000

    Add a test for uploading just a replacement pvr.hint file

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=6c45ddb6e7be36a836b52b16dd156d76fac3aca6

commit 6c45ddb6e7be36a836b52b16dd156d76fac3aca6
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Fri Dec 9 12:18:59 2016 +0000

    Handle uploads of replacement pvr.hint correctly

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=6e69c16f243c1511fdc7e5114fb1472a70f2798a

commit 6e69c16f243c1511fdc7e5114fb1472a70f2798a
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Thu Dec 8 12:47:48 2016 +0000

    Fix exception getting best_version when a package has no versions
    
    Fix an exception trying to determine best_version when a package erroneously
    has no versions

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/calm.git;h=dfe16a90eae9f470ad70c53cc062d5dddfd0a27c

commit dfe16a90eae9f470ad70c53cc062d5dddfd0a27c
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Wed Dec 7 23:48:49 2016 +0000

    Add support for explicit 'test:' in pvr.hint
    
    With hindsight, override.hint seems to have been a bit of a mistake, as it
    suffers from the same problem as setup.hint, that a careless update to it
    unintentionally affects other versions.
    
    So, as an alternate mechanism, add support for an explicit 'test:' in
    pvr.hint, marking a version as a test version.
    
    If multiple versions have are marked thus, the highest version will be
    assigned to the test stability level. Versions marked as test cannot be
    assigned to any other stability level.


Diff:
---
 calm/hint.py                                       |    2 +
 calm/package.py                                    |   61 +++++++++++++------
 test/test_calm.py                                  |    3 +-
 .../per-version-replacement-hint-only-1.0-1.hint   |    4 +
 test/testdata/htdocs.expected/x86/packages.inc     |    1 +
 .../per-version-replacement-hint-only/.htaccess    |    3 +
 .../per-version-replacement-hint-only-1.0-1        |    7 ++
 .../per-version-replacement-hint-only-1.0-1-src    |    7 ++
 test/testdata/inifile/setup.ini.expected           |   11 ++++
 test/testdata/pkglist/cygwin-pkg-maint             |    1 +
 test/testdata/pkglist/expected                     |    2 +-
 test/testdata/process_arch/homedir.expected        |    1 +
 test/testdata/process_arch/htdocs.expected         |    3 +
 test/testdata/process_arch/rel_area.expected       |    4 +
 test/testdata/process_arch/setup.ini.expected      |   11 ++++
 ...-version-replacement-hint-only-1.0-1-src.tar.xz |  Bin 0 -> 228 bytes
 .../per-version-replacement-hint-only-1.0-1.hint   |    4 +
 .../per-version-replacement-hint-only-1.0-1.tar.xz |  Bin 0 -> 228 bytes
 18 files changed, 104 insertions(+), 21 deletions(-)

diff --git a/calm/hint.py b/calm/hint.py
index cf0d94a..7eb41bd 100755
--- a/calm/hint.py
+++ b/calm/hint.py
@@ -79,6 +79,8 @@ hintkeys[pvr] = merge_dicts(commonkeys, {
     # (depends could be an alias for requires in this kind of hint file)
     'depends': 'optval',
     'build-depends': 'optval',
+    # mark the package as a test version
+    'test': 'noval',
 })
 
 hintkeys[override] = merge_dicts(versionkeys, overridekeys)
diff --git a/calm/package.py b/calm/package.py
index b77c960..cf3c22e 100755
--- a/calm/package.py
+++ b/calm/package.py
@@ -227,20 +227,27 @@ def read_package(packages, basedir, dirpath, files, strict=False, remove=[]):
         if 'md5.sum' in files:
             files.remove('md5.sum')
 
-        # collect the attributes for each tar file
+        # build a list of version-releases (since replacement pvr.hint files are
+        # allowed to be uploaded, we must consider both .tar and .hint files for
+        # that), and collect the attributes for each tar file
         tars = {}
         vr_list = set()
 
-        for f in list(filter(lambda f: re.match(r'^' + re.escape(p) + r'.*\.tar.*$', f), files)):
-            files.remove(f)
+        for f in list(files):
+            match = re.match(r'^' + re.escape(p) + r'.*\.(tar\.(bz2|gz|lzma|xz)|hint)$', f)
+            if not match:
+                continue
+
+            if not f.endswith('.hint'):
+                files.remove(f)
 
-            # warn if tar filename doesn't follow P-V-R naming convention
+            # warn if filename doesn't follow P-V-R naming convention
             #
             # P must match the package name, V can contain anything, R must
             # start with a number
-            match = re.match(r'^' + re.escape(p) + '-(.+)-(\d[0-9a-zA-Z.]*)(-src|)\.tar\.(bz2|gz|lzma|xz)$', f)
+            match = re.match(r'^' + re.escape(p) + '-(.+)-(\d[0-9a-zA-Z.]*)(-src|)\.' + match.group(1) + '$', f)
             if not match:
-                logging.log(strict_lvl, "tar file '%s' in package '%s' doesn't follow naming convention" % (f, p))
+                logging.log(strict_lvl, "file '%s' in package '%s' doesn't follow naming convention" % (f, p))
                 warnings = True
             else:
                 v = match.group(1)
@@ -251,24 +258,26 @@ def read_package(packages, basedir, dirpath, files, strict=False, remove=[]):
                 # idea.
                 if '-' in v:
                     lvl = logging.WARNING if p not in past_mistakes.hyphen_in_version else logging.INFO
-                    logging.log(lvl, "tar file '%s' in package '%s' contains '-' in version" % (f, p))
+                    logging.log(lvl, "file '%s' in package '%s' contains '-' in version" % (f, p))
 
                 if not v[0].isdigit():
-                    logging.warning("tar file '%s' in package '%s' has a version which doesn't start with a digit" % (f, p))
+                    logging.warning("file '%s' in package '%s' has a version which doesn't start with a digit" % (f, p))
 
                 # if not there already, add to version-release list
                 vr_list.add('%s-%s' % (v, r))
 
-            tars[f] = Tar()
-            tars[f].size = os.path.getsize(os.path.join(dirpath, f))
-            tars[f].is_empty = tarfile_is_empty(os.path.join(dirpath, f))
-            tars[f].mtime = os.path.getmtime(os.path.join(dirpath, f))
+            if not f.endswith('.hint'):
+                # collect the attributes for each tar file
+                tars[f] = Tar()
+                tars[f].size = os.path.getsize(os.path.join(dirpath, f))
+                tars[f].is_empty = tarfile_is_empty(os.path.join(dirpath, f))
+                tars[f].mtime = os.path.getmtime(os.path.join(dirpath, f))
 
-            if f in sha512:
-                tars[f].sha512 = sha512[f]
-            else:
-                tars[f].sha512 = sha512_file(os.path.join(dirpath, f))
-                logging.debug("no sha512.sum line for file %s in package '%s', computed sha512 hash is %s" % (f, p, tars[f].sha512))
+                if f in sha512:
+                    tars[f].sha512 = sha512[f]
+                else:
+                    tars[f].sha512 = sha512_file(os.path.join(dirpath, f))
+                    logging.debug("no sha512.sum line for file %s in package '%s', computed sha512 hash is %s" % (f, p, tars[f].sha512))
 
         # determine hints for each version we've encountered
         version_hints = {}
@@ -478,12 +487,22 @@ def validate_packages(args, packages):
                         break
                     else:
                         logging.debug("package '%s' stability '%s' overridden to version '%s'" % (p, l, v))
+                # if package is explicitly marked as having that stability level
+                # (only used for test, currently)
+                elif (l == 'test') and ('test' in packages[p].version_hints[v]):
+                    logging.debug("package '%s' version '%s' marked as stability '%s'" % (p, v, l))
                 else:
                     # level 'test' must be assigned by override
                     if l == 'test':
                         levels.remove(l)
                         # go around again to check for override at the new level
                         continue
+                    else:
+                        # if version is explicitly marked test, it can't be
+                        # assigned to any other stability level
+                        if 'test' in packages[p].version_hints[v]:
+                            logging.debug("package '%s' version '%s' can't be used for stability '%s' as it's marked test" % (p, v, l))
+                            break
 
                 level_found = True
                 logging.log(5, "package '%s' stability '%s' assigned version '%s'" % (p, l, v))
@@ -506,7 +525,7 @@ def validate_packages(args, packages):
 
         # the package must have some versions
         if not packages[p].stability:
-            logging.error("package '%s' doesn't have any versions" % (p))
+            logging.error("no versions at any stability level for package '%s'" % (p))
             error = True
         # it's also probably a really good idea if a curr version exists
         elif 'curr' not in packages[p].stability and 'curr' not in getattr(args, 'okmissing', []):
@@ -516,8 +535,12 @@ def validate_packages(args, packages):
         # the curr version, if we have one, otherwise, the highest version.
         if 'curr' in packages[p].stability:
             packages[p].best_version = packages[p].stability['curr']
-        else:
+        elif len(packages[p].vermap):
             packages[p].best_version = sorted(packages[p].vermap.keys(), key=lambda v: SetupVersion(v), reverse=True)[0]
+        else:
+            logging.error("package '%s' doesn't have any versions" % (p))
+            packages[p].best_version = None
+            error = True
 
         # If, for every stability level, the install tarball is empty and there
         # is no source tarball, we should probably be marked obsolete
diff --git a/test/test_calm.py b/test/test_calm.py
index 84124bd..b0e725d 100755
--- a/test/test_calm.py
+++ b/test/test_calm.py
@@ -264,7 +264,8 @@ class CalmTest(unittest.TestCase):
                      (os.path.join(m_homedir, 'x86', 'release', 'after-ready', '!ready'), '-t 198709011700'),
                      (os.path.join(m_homedir, 'noarch', 'release', 'perl-Net-SMTP-SSL', '!ready'), ''),
                      (os.path.join(m_homedir, 'x86', 'release', 'corrupt', '!ready'), ''),
-                     (os.path.join(m_homedir, 'x86', 'release', 'per-version', '!ready'), '')]
+                     (os.path.join(m_homedir, 'x86', 'release', 'per-version', '!ready'), ''),
+                     (os.path.join(m_homedir, 'x86', 'release', 'per-version-replacement-hint-only', '!ready'), '')]
         for (f, t) in ready_fns:
             os.system('touch %s "%s"' % (t, f))
 
diff --git a/test/testdata/homes/Blooey McFooey/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint b/test/testdata/homes/Blooey McFooey/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint
new file mode 100644
index 0000000..fbc7159
--- /dev/null
+++ b/test/testdata/homes/Blooey McFooey/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint	
@@ -0,0 +1,4 @@
+sdesc: "Replacement per-version hint test package - updated"
+ldesc: "Replacement per-version hint test package - updated"
+category: Base
+requires: base-cygwin per-version
diff --git a/test/testdata/htdocs.expected/x86/packages.inc b/test/testdata/htdocs.expected/x86/packages.inc
index 54fc736..1f443bd 100755
--- a/test/testdata/htdocs.expected/x86/packages.inc
+++ b/test/testdata/htdocs.expected/x86/packages.inc
@@ -17,6 +17,7 @@
 <tr><td><a href="x86/mDNSResponder">mDNSResponder</a></td><td>Bonjour Zeroconf implementation</td></tr>
 <tr><td><a href="x86/openssh">openssh</a></td><td>The OpenSSH server and client programs</td></tr>
 <tr><td><a href="x86/per-version">per-version</a></td><td>Per-version hint test package</td></tr>
+<tr><td><a href="x86/per-version-replacement-hint-only">per-version-replacement-hint-only</a></td><td>Per-version hint test package</td></tr>
 <tr><td><a href="x86/perl-Net-SMTP-SSL">perl-Net-SMTP-SSL</a></td><td>Perl distribution Net-SMTP-SSL</td></tr>
 <tr><td><a href="x86/rpm-doc">rpm-doc</a></td><td>Obsolete package for RPM package management system manual pages</td></tr>
 <tr><td><a href="x86/staleversion">staleversion</a></td><td>Test package for stale version removal</td></tr>
diff --git a/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/.htaccess b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/.htaccess
new file mode 100644
index 0000000..3196d64
--- /dev/null
+++ b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/.htaccess
@@ -0,0 +1,3 @@
+Options Indexes
+IndexOptions -FancyIndexing
+AddType text/html 1 2 3 4 5 6 7 8 9
diff --git a/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1 b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1
new file mode 100644
index 0000000..86c5135
--- /dev/null
+++ b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1
@@ -0,0 +1,7 @@
+<html>
+<h1>per-version-replacement-hint-only: Per-version hint test package (installed binaries and support files)</h1>
+<tt><pre>
+    2015-10-11 14:45          26 test/test.1
+    2015-10-11 14:45          31 test/test.2
+</pre></tt>
+</html>
diff --git a/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src
new file mode 100644
index 0000000..969236e
--- /dev/null
+++ b/test/testdata/htdocs.expected/x86/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src
@@ -0,0 +1,7 @@
+<html>
+<h1>per-version-replacement-hint-only: Per-version hint test package (source code)</h1>
+<tt><pre>
+    2015-10-11 14:45          26 test/test.1
+    2015-10-11 14:45          31 test/test.2
+</pre></tt>
+</html>
diff --git a/test/testdata/inifile/setup.ini.expected b/test/testdata/inifile/setup.ini.expected
index d770582..ea351c1 100644
--- a/test/testdata/inifile/setup.ini.expected
+++ b/test/testdata/inifile/setup.ini.expected
@@ -209,6 +209,17 @@
  'source: x86/release/per-version/per-version-4.0-1-src.tar.xz 228 '
  'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
  '\n'
+ '@ per-version-replacement-hint-only\n'
+ 'sdesc: "Per-version hint test package"\n'
+ 'ldesc: "Per-version hint test package"\n'
+ 'category: Base\n'
+ 'requires: cygwin\n'
+ 'version: 1.0-1\n'
+ 'install: x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.tar.xz 228 '
+ 'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
+ 'source: x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src.tar.xz 228 '
+ 'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
+ '\n'
  '@ perl-Net-SMTP-SSL\n'
  'sdesc: "Perl distribution Net-SMTP-SSL"\n'
  'ldesc: "Implements the same API as Net::SMTP, but uses IO::Socket::SSL for\n'
diff --git a/test/testdata/pkglist/cygwin-pkg-maint b/test/testdata/pkglist/cygwin-pkg-maint
index 6067d55..9239bdc 100644
--- a/test/testdata/pkglist/cygwin-pkg-maint
+++ b/test/testdata/pkglist/cygwin-pkg-maint
@@ -1703,6 +1703,7 @@ perl-YAML                                    Achim Gratz/Yaakov Selkowitz
 perl-YAML-LibYAML                            Achim Gratz
 per-version                                  Blooey McFooey
 per-version-incomplete                       Blooey McFooey
+per-version-replacement-hint-only            Blooey McFooey
 phodav                                       Yaakov Selkowitz
 phonon                                       Yaakov Selkowitz
 phonon-backend-gstreamer                     Yaakov Selkowitz
diff --git a/test/testdata/pkglist/expected b/test/testdata/pkglist/expected
index 0610a6c..a43eb13 100644
--- a/test/testdata/pkglist/expected
+++ b/test/testdata/pkglist/expected
@@ -3,7 +3,7 @@
  'Adam Dinwoodie': maintainers.Maintainer('Adam Dinwoodie', [], ['git']),
  'Alexey Sokolov': maintainers.Maintainer('Alexey Sokolov', [], ['znc']),
  'Andrew Schulman': maintainers.Maintainer('Andrew Schulman', [], ['atool', 'autossh', 'bc', 'discus', 'fish', 'lftp', 'libargp', 'nosleep', 'orpie', 'pinfo', 'ploticus', 'ploticus-doc', 'screen', 'sitecopy', 'sng', 'socat', 'stow', 'stunnel', 'time', 'unison2.27', 'unison2.32', 'unison2.40', 'unison2.45', 'unison2.48']),
- 'Blooey McFooey': maintainers.Maintainer('Blooey McFooey', [], ['corrupt', 'perl-Net-SMTP-SSL', 'per-version', 'per-version-incomplete', 'staleversion', 'testpackage']),
+ 'Blooey McFooey': maintainers.Maintainer('Blooey McFooey', [], ['corrupt', 'perl-Net-SMTP-SSL', 'per-version', 'per-version-incomplete', 'per-version-replacement-hint-only', 'staleversion', 'testpackage']),
  'Bob Heckel': maintainers.Maintainer('Bob Heckel', [], ['libgc', 'w3m']),
  'Charles Wilson': maintainers.Maintainer('Charles Wilson', [], ['alternatives', 'autobuild', 'cygutils', 'gcc-tools-epoch1-autoconf', 'gcc-tools-epoch1-automake', 'gcc-tools-epoch2-autoconf', 'gcc-tools-epoch2-automake', 'inetutils', 'libassuan', 'libksba', 'libustr', 'libXpm-noX', 'mingw-binutils', 'mingw-bzip2', 'mingw-gcc', 'mingw-libgcrypt', 'mingw-libgpg-error', 'mingw-pthreads', 'mingw-xz', 'mingw-zlib', 'nfrotz', 'pinentry', 'pth', 'rsh', 'run2', 'rxvt', 'sunrpc', 'tcp_wrappers', 'xsri']),
  'Chris J. Breisch': maintainers.Maintainer('Chris J. Breisch', [], ['man-db']),
diff --git a/test/testdata/process_arch/homedir.expected b/test/testdata/process_arch/homedir.expected
index e680cec..2f825f1 100644
--- a/test/testdata/process_arch/homedir.expected
+++ b/test/testdata/process_arch/homedir.expected
@@ -11,6 +11,7 @@
  'Blooey McFooey/x86/release/not-on-package-list': ['not-on-package-list-1.0-1.tar.bz2', 'setup.hint'],
  'Blooey McFooey/x86/release/not-ready': ['-not-ready-0.9-1.tar.bz2', 'not-ready-1.0-1.tar.bz2', 'setup.hint'],
  'Blooey McFooey/x86/release/per-version': [],
+ 'Blooey McFooey/x86/release/per-version-replacement-hint-only': [],
  'Blooey McFooey/x86/release/testpackage': [],
  'Blooey McFooey/x86/release/testpackage/testpackage-subpackage': [],
  'Blooey McFooey/x86/release/testpackage2': ['setup.hint', 'testpackage2-1.0-1.tar.bz2'],
diff --git a/test/testdata/process_arch/htdocs.expected b/test/testdata/process_arch/htdocs.expected
index 3dd3b28..235021c 100644
--- a/test/testdata/process_arch/htdocs.expected
+++ b/test/testdata/process_arch/htdocs.expected
@@ -27,6 +27,9 @@
                      'per-version-4.8-1-src',
                      'per-version-5.0-1',
                      'per-version-5.0-1-src'],
+ 'x86/per-version-replacement-hint-only': ['.htaccess',
+                                           'per-version-replacement-hint-only-1.0-1',
+                                           'per-version-replacement-hint-only-1.0-1-src'],
  'x86/perl-Net-SMTP-SSL': ['.htaccess',
                            'perl-Net-SMTP-SSL-1.03-1',
                            'perl-Net-SMTP-SSL-1.03-1-src',
diff --git a/test/testdata/process_arch/rel_area.expected b/test/testdata/process_arch/rel_area.expected
index 67d9b4c..51f4a24 100644
--- a/test/testdata/process_arch/rel_area.expected
+++ b/test/testdata/process_arch/rel_area.expected
@@ -71,6 +71,10 @@
                                         'per-version-incomplete-39-1-src.tar.xz',
                                         'per-version-incomplete-39-1.tar.xz',
                                         'sha512.sum'],
+ 'x86/release/per-version-replacement-hint-only': ['per-version-replacement-hint-only-1.0-1-src.tar.xz',
+                                                   'per-version-replacement-hint-only-1.0-1.hint',
+                                                   'per-version-replacement-hint-only-1.0-1.tar.xz',
+                                                   'sha512.sum'],
  'x86/release/proj': ['setup.hint', 'sha512.sum'],
  'x86/release/proj/libproj-devel': ['setup.hint', 'sha512.sum'],
  'x86/release/proj/libproj1': ['setup.hint', 'sha512.sum'],
diff --git a/test/testdata/process_arch/setup.ini.expected b/test/testdata/process_arch/setup.ini.expected
index 2fd7bcb..d959734 100644
--- a/test/testdata/process_arch/setup.ini.expected
+++ b/test/testdata/process_arch/setup.ini.expected
@@ -215,6 +215,17 @@
  'source: x86/release/per-version/per-version-5.0-1-src.tar.xz 228 '
  'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
  '\n'
+ '@ per-version-replacement-hint-only\n'
+ 'sdesc: "Replacement per-version hint test package - updated"\n'
+ 'ldesc: "Replacement per-version hint test package - updated"\n'
+ 'category: Base\n'
+ 'requires: base-cygwin per-version\n'
+ 'version: 1.0-1\n'
+ 'install: x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.tar.xz 228 '
+ 'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
+ 'source: x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src.tar.xz 228 '
+ 'e675b0ac4bc2c3e1c4971bc56d77b0cd53a9bdf5632873a235d7582e29dfd3e8a7bb04b28f6cdee3e6b3d14c25ed39392538e3f628a9bfda6c905646ebc3c225\n'
+ '\n'
  '@ perl-Net-SMTP-SSL\n'
  'sdesc: "Perl distribution Net-SMTP-SSL"\n'
  'ldesc: "Implements the same API as Net::SMTP, but uses IO::Socket::SSL for\n'
diff --git a/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src.tar.xz b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src.tar.xz
new file mode 100644
index 0000000..0e6f1e8
Binary files /dev/null and b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1-src.tar.xz differ
diff --git a/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint
new file mode 100644
index 0000000..726738d
--- /dev/null
+++ b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.hint
@@ -0,0 +1,4 @@
+sdesc: "Per-version hint test package"
+ldesc: "Per-version hint test package"
+category: Base
+requires: cygwin
diff --git a/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.tar.xz b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.tar.xz
new file mode 100644
index 0000000..0e6f1e8
Binary files /dev/null and b/test/testdata/relarea/x86/release/per-version-replacement-hint-only/per-version-replacement-hint-only-1.0-1.tar.xz differ


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]