changeset 2213:3c38d9be63a6

check MANIFEST against the files actually unpacked
author Richard Jones <richard@users.sourceforge.net>
date Fri, 16 Apr 2004 10:43:51 +0000
parents 75e46660345c
children 39ffc2a7d901
files CHANGES.txt run_tests.py setup.py
diffstat 3 files changed, 24 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGES.txt	Tue Apr 13 05:28:00 2004 +0000
+++ b/CHANGES.txt	Fri Apr 16 10:43:51 2004 +0000
@@ -12,6 +12,7 @@
 - added another sample detector "creator_resolution"
 - added search_checkboxes as an option for the search form
 - added IMAP support to mail gateway (sf rfe 934000)
+- check MANIFEST against the files actually unpacked
 
 Fixed:
 - mysql and postgresql schema mutation now handle added Multilinks
--- a/run_tests.py	Tue Apr 13 05:28:00 2004 +0000
+++ b/run_tests.py	Fri Apr 16 10:43:51 2004 +0000
@@ -622,6 +622,9 @@
     # Hmm...
     logini = os.path.abspath("log.ini")
 
+    from setup import check_manifest
+    check_manifest()
+
     # Initialize the path and cwd
     global pathinit
     pathinit = PathInit(build, build_inplace, libdir)
--- a/setup.py	Tue Apr 13 05:28:00 2004 +0000
+++ b/setup.py	Fri Apr 16 10:43:51 2004 +0000
@@ -16,7 +16,7 @@
 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
 # 
-# $Id: setup.py,v 1.59 2004-03-24 05:56:06 richard Exp $
+# $Id: setup.py,v 1.60 2004-04-16 10:43:51 richard Exp $
 
 from distutils.core import setup, Extension
 from distutils.util import get_platform
@@ -128,6 +128,25 @@
         script = script + ".bat"
     return script
 
+def check_manifest():
+    """Check that the files listed in the MANIFEST are present when the
+    source is unpacked.
+    """
+    try:
+        f = open('MANIFEST')
+    except:
+        print '\n*** SOURCE ERROR: The MANIFEST file is missing!'
+        sys.exit(1)
+    try:
+        manifest = [l.strip() for l in f.readlines()]
+    finally:
+        f.close()
+    err = [line for line in manifest if not os.path.exists(line)]
+    if err:
+        n = len(manifest)
+        print '\n*** SOURCE ERROR: There are files missing (%d/%d found)!'%(
+            n-len(err), n)
+        sys.exit(1)
 
 
 #############################################################################

Roundup Issue Tracker: http://roundup-tracker.org/