This bug was due to synopsis using exception classes with no base
classes.  I have made an NMU with a patch to make them inherit from
Exception as is now required, and fixed some other bugs I found along
the way.  Patch follows.

Ben.

diff -u synopsis-0.8.0/debian/rules synopsis-0.8.0/debian/rules
--- synopsis-0.8.0/debian/rules
+++ synopsis-0.8.0/debian/rules
@@ -68,7 +68,7 @@
        chmod 644 $(PKG_TMP)/usr/include/Synopsis/PTree/Writer.hh
 
        # Install documentation
-       mkdir -p $(PKG_TMP)/usr/share/doc/synopsis-doc
+       mv $(PKG_TMP)/usr/share/doc/Synopsis 
$(PKG_TMP)/usr/share/doc/synopsis-doc
        cp -a share/doc/Synopsis/examples $(PKG_TMP)/usr/share/doc/synopsis-doc
        cp -a share/doc/Synopsis/html $(PKG_TMP)/usr/share/doc/synopsis-doc
 
diff -u synopsis-0.8.0/debian/changelog synopsis-0.8.0/debian/changelog
--- synopsis-0.8.0/debian/changelog
+++ synopsis-0.8.0/debian/changelog
@@ -1,3 +1,14 @@
+synopsis (0.8.0-5.3) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * debian/patches/31_use_exception_base.dpatch: Use Exception as base
+    class for exception classes. (Closes: #484266)
+  * debian/patches/71_gcc4.3.dpatch: Patch test suite too.
+  * Updated documentation section to Programming
+  * Fixed creation of extra documentation directories
+
+ -- Ben Hutchings <[EMAIL PROTECTED]>  Sun, 29 Jun 2008 14:22:40 +0000
+
 synopsis (0.8.0-5.2) unstable; urgency=high
 
   * Non-maintainer upload.
diff -u synopsis-0.8.0/debian/synopsis-doc.doc-base.DevGuide 
synopsis-0.8.0/debian/synopsis-doc.doc-base.DevGuide
--- synopsis-0.8.0/debian/synopsis-doc.doc-base.DevGuide
+++ synopsis-0.8.0/debian/synopsis-doc.doc-base.DevGuide
@@ -8,7 +8,7 @@
  adventurers to find their way around the project. APIs that are currently
  documented here may mature and become stable, at which point their
  documentation will be migrated to the tutorial.
-Section: Apps/Programming
+Section: Programming
 
 Format: HTML
 Index: /usr/share/doc/synopsis-doc/html/DevGuide/index.html
diff -u synopsis-0.8.0/debian/synopsis-doc.doc-base.Tutorial 
synopsis-0.8.0/debian/synopsis-doc.doc-base.Tutorial
--- synopsis-0.8.0/debian/synopsis-doc.doc-base.Tutorial
+++ synopsis-0.8.0/debian/synopsis-doc.doc-base.Tutorial
@@ -10,7 +10,7 @@
  representations are presently being worked on, notably in relation to the
  C++ parser. To learn more about those (Parse Tree, Symbol Table, etc.) see
  the Developer's Guide.
-Section: Apps/Programming
+Section: Programming
 
 Format: HTML
 Index: /usr/share/doc/synopsis-doc/html/Tutorial/index.html
diff -u synopsis-0.8.0/debian/patches/71_gcc4.3.dpatch 
synopsis-0.8.0/debian/patches/71_gcc4.3.dpatch
--- synopsis-0.8.0/debian/patches/71_gcc4.3.dpatch
+++ synopsis-0.8.0/debian/patches/71_gcc4.3.dpatch
@@ -105,0 +106,10 @@
+--- synopsis-0.8.0~/tests/Cxx/src/Encoding.cc  2008-06-29 14:21:40.000000000 
+0000
++++ synopsis-0.8.0/tests/Cxx/src/Encoding.cc   2008-06-29 14:20:37.000000000 
+0000
+@@ -8,6 +8,7 @@
+ #include <iostream>
+ #include <iomanip>
+ #include <fstream>
++#include <stdlib.h>
+ 
+ using namespace Synopsis;
+ 
diff -u synopsis-0.8.0/debian/patches/00list 
synopsis-0.8.0/debian/patches/00list
--- synopsis-0.8.0/debian/patches/00list
+++ synopsis-0.8.0/debian/patches/00list
@@ -1,5 +1,6 @@
 25_soname
 30_import_processor_py
+31_use_exception_base
 40_Scope_hh
 50_Object_hh
 60_ASCII_py
only in patch2:
unchanged:
--- synopsis-0.8.0.orig/debian/patches/31_use_exception_base.dpatch
+++ synopsis-0.8.0/debian/patches/31_use_exception_base.dpatch
@@ -0,0 +1,40 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 31_use_exception_base.dpatch by Ben Hutchings <[EMAIL PROTECTED]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Exception classes must be subclasses of Exception.
+
[EMAIL PROTECTED]@
+--- synopsis-0.8.0.orig/Synopsis/Formatters/Dot.py     2005-05-13 
04:16:16.000000000 +0000
++++ synopsis-0.8.0/Synopsis/Formatters/Dot.py  2008-06-29 15:58:51.000000000 
+0000
+@@ -18,7 +18,7 @@
+ 
+ verbose = False
+ 
+-class SystemError:
++class SystemError(Exception):
+    """Error thrown by the system() function. Attributes are 'retval', encoded
+    as per os.wait(): low-byte is killing signal number, high-byte is return
+    value of command."""
+--- synopsis-0.8.0.orig/Synopsis/Processor.py  2008-06-29 15:41:11.000000000 
+0000
++++ synopsis-0.8.0/Synopsis/Processor.py       2008-06-29 15:42:31.000000000 
+0000
+@@ -71,7 +71,7 @@
+             raise KeyError, "No parameter '%s' in '%s'"%(i, 
self.__class__.__name__)
+ 
+ 
+-class Error:
++class Error(Exception):
+    """An exception a processor may raise during processing."""
+ 
+    def __init__(self, what):
+--- synopsis-0.8..orig0/Synopsis/Type.py       2005-05-13 04:16:17.000000000 
+0000
++++ synopsis-0.8.0/Synopsis/Type.py    2008-06-29 15:59:27.000000000 +0000
+@@ -13,7 +13,7 @@
+    "Compares classes of two objects"
+    return cmp(type(a),type(b)) or cmp(a.__class__,b.__class__)
+ 
+-class Error:
++class Error(Exception):
+    """Exception class used by Type internals."""
+ 
+    def __init__(self, err):
--- END ---

-- 
Ben Hutchings
Man invented language to satisfy his deep need to complain. - Lily Tomlin

Attachment: signature.asc
Description: Digital signature

Reply via email to