Re: [arch-general] [namcap] [PATCH] Check for packages that should be 'any'

2010-09-16 Thread Dan McGee
On Sun, Aug 1, 2010 at 7:47 PM, David Campbell davek...@archlinux.us wrote:
 If a package has no elf files but is not 'any', throw a warning saying that
 the package could be 'any'.
 ---
  Namcap/anyelf.py |   18 ++
  namcap-tags      |    1 +
  2 files changed, 11 insertions(+), 8 deletions(-)

 diff --git a/Namcap/anyelf.py b/Namcap/anyelf.py
 index f3414af..c037ff0 100644
 --- a/Namcap/anyelf.py
 +++ b/Namcap/anyelf.py
 @@ -33,20 +33,22 @@ class package:
        def short_name(self):
                return anyelf
        def long_name(self):
 -               return If package is 'any' architecture, check for ELF files
 +               return Check for ELF files to see if a package should be 
 'any'
 +               architecture
This will be really ugly when it prints; you should just use a single
quoted string.

        def prereq(self):
                return extract
        def analyze(self, pkginfo, data):
                ret = [[], [], []]
 -               if pkginfo.arch and pkginfo.arch[0] != 'any':
 -                       return ret
                found_elffiles = []
 -
                os.path.walk(data, scanelf, found_elffiles)
 -               if len(found_elffiles)  0:
 -                       for i in found_elffiles:
 -                               ret[0].append((elffile-in-any-package %s, 
 i))
 -
 +
 +               if pkginfo.arch and pkginfo.arch[0] == 'any':
 +                       if len(found_elffiles)  0:
 +                               for i in found_elffiles:
 +                                       
 ret[0].append((elffile-in-any-package %s, i))
 +               else:
 +                       if len(found_elffiles) == 0:
 +                               
 ret[1].append((no-elffiles-and-not-any-package, ()))
                return ret

        def type(self):
 diff --git a/namcap-tags b/namcap-tags
 index acb8e9c..4040136 100644
 --- a/namcap-tags
 +++ b/namcap-tags
 @@ -47,6 +47,7 @@ missing-license :: Missing license
  missing-maintainer :: Missing Maintainer tag
  missing-checksums :: Missing checksums
  missing-url :: Missing url
 +no-elffiles-and-not-any-package :: No ELF files and not an any package
Let's drop the 'and' from here to shorten it up.

  non-fhs-info-page %s :: Non-FHS info page (%s) found. Use /usr/share/info 
 instead
  non-fhs-man-page %s :: Non-FHS man page (%s) found. Use /usr/share/man 
 instead
  not-a-common-license %s :: %s is not a common license (it's not in 
 /usr/share/licenses/common/)
 --
 1.7.1.1

Applied, made a few small changes as stated above. Sorry this got lost
in the depths of the inbox.


Re: [arch-general] [namcap] [PATCH] Check for packages that should be 'any'

2010-09-15 Thread Allan McRae
Thanks.  I just ran into a situation where this would have been useful 
and remembered this patch way back in my mail archive.


@Dan: are you OK to pull this?

Allan

On 02/08/10 10:47, David Campbell wrote:

If a package has no elf files but is not 'any', throw a warning saying that
the package could be 'any'.
---
  Namcap/anyelf.py |   18 ++
  namcap-tags  |1 +
  2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/Namcap/anyelf.py b/Namcap/anyelf.py
index f3414af..c037ff0 100644
--- a/Namcap/anyelf.py
+++ b/Namcap/anyelf.py
@@ -33,20 +33,22 @@ class package:
def short_name(self):
return anyelf
def long_name(self):
-   return If package is 'any' architecture, check for ELF files
+   return Check for ELF files to see if a package should be 
'any'
+   architecture
def prereq(self):
return extract
def analyze(self, pkginfo, data):
ret = [[], [], []]
-   if pkginfo.arch and pkginfo.arch[0] != 'any':
-   return ret
found_elffiles = []
-
os.path.walk(data, scanelf, found_elffiles)
-   if len(found_elffiles)  0:
-   for i in found_elffiles:
-   ret[0].append((elffile-in-any-package %s, i))
-
+
+   if pkginfo.arch and pkginfo.arch[0] == 'any':
+   if len(found_elffiles)  0:
+   for i in found_elffiles:
+   ret[0].append((elffile-in-any-package 
%s, i))
+   else:
+   if len(found_elffiles) == 0:
+   
ret[1].append((no-elffiles-and-not-any-package, ()))
return ret

def type(self):
diff --git a/namcap-tags b/namcap-tags
index acb8e9c..4040136 100644
--- a/namcap-tags
+++ b/namcap-tags
@@ -47,6 +47,7 @@ missing-license :: Missing license
  missing-maintainer :: Missing Maintainer tag
  missing-checksums :: Missing checksums
  missing-url :: Missing url
+no-elffiles-and-not-any-package :: No ELF files and not an any package
  non-fhs-info-page %s :: Non-FHS info page (%s) found. Use /usr/share/info 
instead
  non-fhs-man-page %s :: Non-FHS man page (%s) found. Use /usr/share/man instead
  not-a-common-license %s :: %s is not a common license (it's not in 
/usr/share/licenses/common/)
--
1.7.1.1







[arch-general] [namcap] [PATCH] Check for packages that should be 'any'

2010-08-01 Thread David Campbell
If a package has no elf files but is not 'any', throw a warning saying that
the package could be 'any'.
---
 Namcap/anyelf.py |   18 ++
 namcap-tags  |1 +
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/Namcap/anyelf.py b/Namcap/anyelf.py
index f3414af..c037ff0 100644
--- a/Namcap/anyelf.py
+++ b/Namcap/anyelf.py
@@ -33,20 +33,22 @@ class package:
def short_name(self):
return anyelf
def long_name(self):
-   return If package is 'any' architecture, check for ELF files
+   return Check for ELF files to see if a package should be 
'any'
+   architecture
def prereq(self):
return extract
def analyze(self, pkginfo, data):
ret = [[], [], []]
-   if pkginfo.arch and pkginfo.arch[0] != 'any':
-   return ret
found_elffiles = []
-
os.path.walk(data, scanelf, found_elffiles)
-   if len(found_elffiles)  0:
-   for i in found_elffiles:
-   ret[0].append((elffile-in-any-package %s, i))
-
+
+   if pkginfo.arch and pkginfo.arch[0] == 'any':
+   if len(found_elffiles)  0:
+   for i in found_elffiles:
+   ret[0].append((elffile-in-any-package 
%s, i))
+   else:
+   if len(found_elffiles) == 0:
+   
ret[1].append((no-elffiles-and-not-any-package, ()))
return ret

def type(self):
diff --git a/namcap-tags b/namcap-tags
index acb8e9c..4040136 100644
--- a/namcap-tags
+++ b/namcap-tags
@@ -47,6 +47,7 @@ missing-license :: Missing license
 missing-maintainer :: Missing Maintainer tag
 missing-checksums :: Missing checksums
 missing-url :: Missing url
+no-elffiles-and-not-any-package :: No ELF files and not an any package
 non-fhs-info-page %s :: Non-FHS info page (%s) found. Use /usr/share/info 
instead
 non-fhs-man-page %s :: Non-FHS man page (%s) found. Use /usr/share/man instead
 not-a-common-license %s :: %s is not a common license (it's not in 
/usr/share/licenses/common/)
--
1.7.1.1