Package: gavodachs2-server
Version: 2.5+dfsg-1
Severity: serious
Tags: bookworm, sid

https://ci.debian.net/data/autopkgtest/testing/amd64/g/gavodachs/19190406/log.gz

Setting up gavodachs2-server (2.5+dfsg-1) ...
createdb: error: database creation failed: ERROR:  database "gavo" already 
exists
Creation of gavo database failed; assuming it's already there
and carrying on.
createuser: error: creation of new role failed: ERROR:  role "dachsroot" 
already exists
*** Error: Oops.  Unhandled exception AttributeError.

Exception payload: module 'twisted.web.template' has no attribute
'_ToStan'
dpkg: error processing package gavodachs2-server (--configure):
 installed gavodachs2-server package post-installation script subprocess 
returned error exit status 1

I attempted to fix that error (debdiff attatched), however it then failed with
a "TypeError: 'Tag' object is not subscriptable", I modified the error handling
to get a backtrace, but it didn't leave me any the wiser as to what the actual
problem was.

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/gavo/user/cli.py", line 152, in main
    sys.exit(initdachs.main())
  File "/usr/lib/python3/dist-packages/gavo/user/initdachs.py", line 461, in 
main
    initDB(dsn)
  File "/usr/lib/python3/dist-packages/gavo/user/initdachs.py", line 433, in 
initDB
    _importBasicResources()
  File "/usr/lib/python3/dist-packages/gavo/user/initdachs.py", line 405, in 
_importBasicResources
    from gavo.user import importing
  File "/usr/lib/python3/dist-packages/gavo/user/importing.py", line 14, in 
<module>
    from gavo import api
  File "/usr/lib/python3/dist-packages/gavo/api.py", line 19, in <module>
    from gavo import rscdesc
  File "/usr/lib/python3/dist-packages/gavo/rscdesc.py", line 27, in <module>
    from gavo import registry
  File "/usr/lib/python3/dist-packages/gavo/registry/__init__.py", line 34, in 
<module>
    from gavo.registry import oaiinter      # registration of RegistryCore
  File "/usr/lib/python3/dist-packages/gavo/registry/oaiinter.py", line 23, in 
<module>
    from gavo import svcs
  File "/usr/lib/python3/dist-packages/gavo/svcs/__init__.py", line 35, in 
<module>
    from gavo.svcs.common import (Error, UnknownURI, ForbiddenURI, WebRedirect,
  File "/usr/lib/python3/dist-packages/gavo/svcs/common.py", line 18, in 
<module>
    from gavo.formal import nevowc
  File "/usr/lib/python3/dist-packages/gavo/formal/__init__.py", line 22, in 
<module>
    from .form import Form, Field, Group, ResourceWithForm, FORMS_KEY
  File "/usr/lib/python3/dist-packages/gavo/formal/form.py", line 121, in 
<module>
    class FieldFragment(nevowc.CommonRenderers, template.Element):
  File "/usr/lib/python3/dist-packages/gavo/formal/form.py", line 127, in 
FieldFragment
    T.label(class_='label', for_=template.slot('id'))[template.slot('label')],
TypeError: 'Tag' object is not subscriptable
--- gavodachs-2.5+dfsg/gavo/user/errhandle.py	2021-02-18 11:44:39.000000000 +0000
+++ /usr/lib/python3/dist-packages/gavo/user/errhandle.py	2022-02-13 23:47:17.499599771 +0000
@@ -170,7 +170,8 @@
 			messages.append("Snafu in %s, %s\n"%(msg.excRow, msg.excCol))
 			messages.append("")
 		messages.append("Oops.  Unhandled exception %s.\n"%msg.__class__.__name__)
-		messages.append("Exception payload: %s"%utils.safe_str(msg))
+		import traceback
+		messages.append("Exception payload: %s"%repr(msg)+" "+traceback.format_exc())
 		base.ui.notifyError("Uncaught exception at toplevel")
 
 	if getattr(opts, "enablePDB", False):
diff -Nru gavodachs-2.5+dfsg/debian/changelog 
gavodachs-2.5+dfsg/debian/changelog
--- gavodachs-2.5+dfsg/debian/changelog 2021-11-17 12:55:14.000000000 +0000
+++ gavodachs-2.5+dfsg/debian/changelog 2022-02-13 23:23:02.000000000 +0000
@@ -1,3 +1,10 @@
+gavodachs (2.5+dfsg-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Adapt code to support new version of twisted.
+
+ -- Peter Michael Green <plugw...@debian.org>  Sun, 13 Feb 2022 23:23:02 +0000
+
 gavodachs (2.5+dfsg-1) unstable; urgency=medium
 
   [ Markus Demleitner ]
diff -Nru gavodachs-2.5+dfsg/debian/patches/series 
gavodachs-2.5+dfsg/debian/patches/series
--- gavodachs-2.5+dfsg/debian/patches/series    2021-11-17 12:55:14.000000000 
+0000
+++ gavodachs-2.5+dfsg/debian/patches/series    2022-02-13 23:23:02.000000000 
+0000
@@ -1 +1,2 @@
 0001-Fixing-setup.py-version-check-to-work-with-python-3..patch
+twisted-22.patch
diff -Nru gavodachs-2.5+dfsg/debian/patches/twisted-22.patch 
gavodachs-2.5+dfsg/debian/patches/twisted-22.patch
--- gavodachs-2.5+dfsg/debian/patches/twisted-22.patch  1970-01-01 
00:00:00.000000000 +0000
+++ gavodachs-2.5+dfsg/debian/patches/twisted-22.patch  2022-02-13 
23:23:02.000000000 +0000
@@ -0,0 +1,22 @@
+Description:  Adapt code to support new version of twisted.
+Author: Peter Michael Green <plugw...@debian.org>
+
+--- gavodachs-2.5+dfsg.orig/gavo/formal/nevowc.py
++++ gavodachs-2.5+dfsg/gavo/formal/nevowc.py
+@@ -41,8 +41,15 @@ class NoDataError(Exception):
+     """
+     pass
+ 
++#newer versions of twisted moved _ToStan from twisted.web.template to
++#twisted.web._template_util
++try:
++    _ToStan = template._ToStan
++except AttributeError:
++    from twisted.web import _template_util
++    _ToStan = _template_util._ToStan
+ 
+-class _ToStan(template._ToStan):
++class _ToStan(_ToStan):
+     """A SAX parser unifying nevow and twisted.web namespaces.
+ 
+     We also map invisible (nevow) to transparent (t.w).

Reply via email to