[namcap,0/4] Add a rule against common filenames in source() without overridden name

Message ID 20190527034922.27316-1-jamespharvey20@gmail.com
Headers show


Emil Velikov via arch-projects May 27, 2019, 3:49 a.m. UTC
There's no good way for namcap to ensure source() filenames are unique
across all packages, required for users with SRCDEST.  But, I think by
far the most common offending filename would be LICENSE, as
non-standard ones are required to be included, but sometimes there's
no upstream tarball or there is but it's not in there.  Mostly an
issue for AUR packages, but maybe there are official ones violating
this too.

We can at least check that if common names are in source(), they're
given an overridden name.  (Personally, I'm going with
"${pkgname}-LICENSE::", but this patch doesn't force this form.)

While adding this, split off the recently added non-unique versioned
source filenames (non-overridden versioned tarballs) from pkginfo
rules.  This was originally there using PkgInfoRule, but when it was
switched to PkgbuildRule, it was left in pkginfo.py.

Also add tests for the recently added non-unique versioned source
filenames rule.

James P. Harvey (4):
  Split warning for non-unique source filenames from pkginfo rules
  Add test for non-unique source filenames
  nonuniquesources: Also warn on common filenames not overriding name to
    be unique
  nonuniquesources: Add test for common filenames

 Namcap/rules/__init__.py                      |  1 +
 Namcap/rules/nonuniquesources.py              | 52 ++++++++++
 Namcap/rules/pkginfo.py                       | 11 +--
 .../tests/pkgbuild/test_nonuniquesources.py   | 94 +++++++++++++++++++
 4 files changed, 148 insertions(+), 10 deletions(-)
 create mode 100644 Namcap/rules/nonuniquesources.py
 create mode 100644 Namcap/tests/pkgbuild/test_nonuniquesources.py