[rpmlint/f18] fix handling of ruby RI files as text files (they are binary files) and apply upstream fix for macro
Tom Callaway
spot at fedoraproject.org
Thu Sep 6 19:46:47 UTC 2012
commit 6c28b7c30b564d11d1284209bc00add0e63a6519
Author: Tom Callaway <spot at fedoraproject.org>
Date: Thu Sep 6 15:47:44 2012 -0400
fix handling of ruby RI files as text files (they are binary files) and apply upstream fix for macro regexp
rpmlint-1.4-ruby-ri-files-are-binary.patch | 14 ++++++++++++++
rpmlint-1.4-tighten-macro-regexp.patch | 12 ++++++++++++
rpmlint.spec | 14 +++++++++++++-
3 files changed, 39 insertions(+), 1 deletions(-)
---
diff --git a/rpmlint-1.4-ruby-ri-files-are-binary.patch b/rpmlint-1.4-ruby-ri-files-are-binary.patch
new file mode 100644
index 0000000..855645f
--- /dev/null
+++ b/rpmlint-1.4-ruby-ri-files-are-binary.patch
@@ -0,0 +1,14 @@
+diff -up rpmlint-1.4/FilesCheck.py.ruby-ri-files rpmlint-1.4/FilesCheck.py
+--- rpmlint-1.4/FilesCheck.py.ruby-ri-files 2012-09-06 15:39:40.348664465 -0400
++++ rpmlint-1.4/FilesCheck.py 2012-09-06 15:40:16.231664959 -0400
+@@ -273,6 +273,10 @@ def peek(filename, pkg, length=1024):
+ if not chunk: # Empty files are considered text
+ return (chunk, True)
+
++ # RI files generated by RDoc are always binary
++ if re.search(r'.*\/ri\/.*\.ri$', filename.lower()):
++ return (chunk, False)
++
+ # PDF's are binary but often detected as text by the algorithm below
+ if filename.lower().endswith('.pdf') and chunk.startswith('%PDF-'):
+ return (chunk, False)
diff --git a/rpmlint-1.4-tighten-macro-regexp.patch b/rpmlint-1.4-tighten-macro-regexp.patch
new file mode 100644
index 0000000..6c71d42
--- /dev/null
+++ b/rpmlint-1.4-tighten-macro-regexp.patch
@@ -0,0 +1,12 @@
+diff -up rpmlint-1.4/AbstractCheck.py.tighten-regexp rpmlint-1.4/AbstractCheck.py
+--- rpmlint-1.4/AbstractCheck.py.tighten-regexp 2012-09-06 15:38:03.122662962 -0400
++++ rpmlint-1.4/AbstractCheck.py 2012-09-06 15:38:10.939663091 -0400
+@@ -16,7 +16,7 @@ from Filter import addDetails, printInfo
+ import Config
+
+ # Note: do not add any capturing parentheses here
+-macro_regex = re.compile('%+[{(]?\w+[)}]?')
++macro_regex = re.compile('%+[{(]?[a-zA-Z_]\w{2,}[)}]?')
+
+ class _HeadRequest(urllib2.Request):
+ def get_method(self):
diff --git a/rpmlint.spec b/rpmlint.spec
index 4ebf25a..1950820 100644
--- a/rpmlint.spec
+++ b/rpmlint.spec
@@ -1,6 +1,6 @@
Name: rpmlint
Version: 1.4
-Release: 9%{?dist}
+Release: 10%{?dist}
Summary: Tool for checking common errors in RPM packages
Group: Development/Tools
@@ -17,6 +17,12 @@ Source5: %{name}.config.el5
Patch0: rpmlint-1.4-encoding.patch
# http://sourceforge.net/p/rpmlint/code/ci/671bf6d21c6e878e6ee551ee4e2871df8947ac52/
Patch1: rpmlint-1.4-py3-magic-number-fix.patch
+# Tighten macro regexp to min 3 chars, starting with a letter or underscore.
+# http://sourceforge.net/p/rpmlint/code/ci/ae8a019e53784a45c59f23a7b09ad47ea7584795/
+Patch2: rpmlint-1.4-tighten-macro-regexp.patch
+# Fix handling of Ruby RI files as text files, they're always binary files.
+# http://rpmlint.zarb.org/cgi-bin/trac.cgi/ticket/569
+Patch3: rpmlint-1.4-ruby-ri-files-are-binary.patch
BuildArch: noarch
BuildRequires: python >= 2.4
BuildRequires: rpm-python >= 4.4
@@ -50,6 +56,8 @@ and source packages as well as spec files can be checked.
%setup -q
%patch0 -p1 -b .enc
%patch1 -p1 -b .py3
+%patch2 -p1 -b .tighten-regexp
+%patch3 -p1 -b .ruby-ri-files
sed -i -e /MenuCheck/d Config.py
cp -p config config.example
install -pm 644 %{SOURCE2} CHANGES.package.old
@@ -100,6 +108,10 @@ make check
%changelog
+* Thu Sep 6 2012 Tom Callaway <spot at fedoraproject.org> - 1.4-10
+- fix handling of ruby RI files as text files (they are binary files)
+- apply upstream fix for macro regexp
+
* Tue Sep 4 2012 Thomas Woerner <twoerner at redhat.com> - 1.4-9
- fix build for RHEL: no bash-completion
More information about the scm-commits
mailing list