]> git.decadent.org.uk Git - dak.git/commitdiff
Moron. Test your changes.
authorJames Troup <james@nocrew.org>
Wed, 21 Jan 2004 03:48:58 +0000 (03:48 +0000)
committerJames Troup <james@nocrew.org>
Wed, 21 Jan 2004 03:48:58 +0000 (03:48 +0000)
TODO
test/005/evil.changes [deleted file]
test/005/test.py
utils.py

diff --git a/TODO b/TODO
index 4b623b707fcab26083163ec3da781e8d15d15118..02b24fb0202393e122f1775ea94fda25e1cac3f0 100644 (file)
--- a/TODO
+++ b/TODO
@@ -27,6 +27,11 @@ queue/approved
 Others
 ------
 
+<aj> i'd be kinda inclined to go with insisting the .changes file take
+   the form ---- BEGIN PGP MESSAGE --- <non -- BEGIN/END lines> --
+   BEGIN PGP SIG -- END PGP MESSAGE -- with no lines before or after,
+   and rejecting .changes that didn't match that
+
   o rene should check for source packages not building any binaries
 
   o heidi should have a diff mode that accepts diff output!
diff --git a/test/005/evil.changes b/test/005/evil.changes
deleted file mode 100644 (file)
index 7076f60..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
------BEGIN PGP SIGNED MESSAGE-----
-
-You: have been 0wned
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-Format: 1.7
-Date: Tue,  9 Sep 2003 01:16:01 +0100
-Source: gawk
-Binary: gawk
-Architecture: source i386
-Version: 1:3.1.3-2
-Distribution: unstable
-Urgency: low
-Maintainer: James Troup <james@nocrew.org>
-Changed-By: James Troup <james@nocrew.org>
-Description: 
- gawk       - GNU awk, a pattern scanning and processing language
-Closes: 204699 204701
-Changes: 
- gawk (1:3.1.3-2) unstable; urgency=low
- .
-   * debian/control (Standards-Version): bump to 3.6.1.0.
- .
-   * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]].
-     Thanks to <vle@gmx.net> for reporting the bug and forwarding it
-     upstream.  Closes: #204701
- .
-   * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix
-     [\x80-\xff].  Thanks to <vle@gmx.net> for reporting the bug and
-     forwarding it upstream.  Closes: #204699
-Files: 
- 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc
- 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz
- 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb
-
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.0.6 (GNU/Linux)
-
-iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau
-fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB
-=O7Gh
------END PGP SIGNATURE-----
index 3f6ca258393aa5f07bf3192ec6b3683da7c2ff50..8497066445b66b7e2a8c9cc432edfaca72eb4900 100755 (executable)
@@ -2,7 +2,7 @@
 
 # Check utils.parse_changes()'s for handling of multi-line fields
 # Copyright (C) 2004  James Troup <james@nocrew.org>
-# $Id: test.py,v 1.1 2004-01-21 03:20:52 troup Exp $
+# $Id: test.py,v 1.2 2004-01-21 03:48:58 troup Exp $
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -39,10 +39,8 @@ def fail(message):
 ################################################################################
 
 def main ():
-    for file in [ "valid", "bogus-pre", "bogus-post", "evil" ]:
+    for file in [ "valid", "bogus-pre", "bogus-post" ]:
         for strict_whitespace in [ 0, 1 ]:
-            if file == "evil" and strict_whitespace == 1:
-                continue;
             try:
                 changes = utils.parse_changes("%s.changes" % (file), strict_whitespace)
             except utils.changes_parse_error_exc, line:
index 2b40501cfac2bf6e59298578800cbf7a1a7a45e5..c2424cf768933101f6901289d96d000b90f2802a 100644 (file)
--- a/utils.py
+++ b/utils.py
@@ -2,7 +2,7 @@
 
 # Utility functions
 # Copyright (C) 2000, 2001, 2002, 2003, 2004  James Troup <james@nocrew.org>
-# $Id: utils.py,v 1.61 2004-01-21 03:20:52 troup Exp $
+# $Id: utils.py,v 1.62 2004-01-21 03:48:58 troup Exp $
 
 ################################################################################
 
@@ -45,7 +45,7 @@ re_parse_maintainer = re.compile(r"^\s*(\S.*\S)\s*\<([^\> \t]+)\>");
 changes_parse_error_exc = "Can't parse line in .changes file";
 invalid_dsc_format_exc = "Invalid .dsc file";
 nk_format_exc = "Unknown Format: in .changes file";
-no_files_exc = "No Files: field in .dsc file.";
+no_files_exc = "No Files: field in .dsc or .changes file.";
 cant_open_exc = "Can't read file.";
 unknown_hostname_exc = "Unknown hostname";
 cant_overwrite_exc = "Permission denied; can't overwrite existent file."
@@ -176,8 +176,8 @@ def parse_changes(filename, dsc_whitespace_rules=0):
         if line.startswith("-----BEGIN PGP SIGNATURE"):
             break;
         if line.startswith("-----BEGIN PGP SIGNED MESSAGE"):
+            inside_signature = 1;
             if dsc_whitespace_rules:
-                inside_signature = 1;
                 while index < num_of_lines and line != "":
                     index += 1;
                     line = indexed_lines[index];