Package: obnam
Version: 1.15-1
Severity: grave
Justification: renders package unusable
Dear Maintainer,
I was attempting to run obnam backup and received the following python stack
trace.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/cliapp/app.py", line 189, in _run
self.process_args(args)
File "/usr/lib/python2.7/dist-packages/obnamlib/app.py", line 206, in
process_args
self.hooks.call('config-loaded')
File "/usr/lib/python2.7/dist-packages/obnamlib/hooks.py", line 188, in call
self.hooks[name].call_callbacks(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/obnamlib/hooks.py", line 65, in
call_callbacks
callback(*args, **kwargs)
File "/usr/lib/python2.7/dist-
packages/obnamlib/plugins/exclude_pathnames_plugin.py", line 57, in
config_loaded
self.compile_exclusion_patterns()
File "/usr/lib/python2.7/dist-
packages/obnamlib/plugins/exclude_pathnames_plugin.py", line 81, in
compile_exclusion_patterns
self.compile_regexps(regexps, self.pathname_excluder.exclude_regexp)
File "/usr/lib/python2.7/dist-
packages/obnamlib/plugins/exclude_pathnames_plugin.py", line 97, in
compile_regexps
except re.error as e:
NameError: global name 're' is not defined
Looking at exclude_pathnames_plugin.py it does call "except re.error" and I
couldn't find a corresponding import re. So something seems wrong.
Attached are the modifications I made to exclude_pathnames_plugin in order to
get it to work.
--- /tmp/exclude_pathnames_plugin.py 2015-08-25 22:27:42.290914865 -0700
+++ /usr/lib/python2.7/dist-packages/obnamlib/plugins/exclude_pathnames_plugin.py 2015-08-25 22:27:13.923549566 -0700
@@ -18,8 +18,9 @@
import logging
import os
import stat
import time
+import re
import obnamlib
@@ -93,11 +94,11 @@
logging.debug('Regular expression: %s', regexp)
try:
compiler(regexp)
except re.error as e:
-msg = ('error compiling regular expression "%s": %s' % (x, e))
+msg = ('error compiling regular expression "%s": %s' % (regexp, e))
logging.error(msg)
-self.progress.error(msg)
+#self.progress.error(msg)
def read_patterns_from_files(self, filenames):
patterns = []
for filename in filenames: