Package: circus
Version: 0.12.1+dfsg-1
Severity: normal
Tags: patch upstream
I've found that circus fails to start with python-configparser installed:
Traceback (most recent call last):
File "/usr/bin/circusd", line 9, in <module>
load_entry_point('circus==0.12.1', 'console_scripts', 'circusd')()
File "/usr/lib/python2.7/dist-packages/circus/circusd.py", line 126, in main
arbiter = Arbiter.load_from_config(args.config)
File "/usr/lib/python2.7/dist-packages/circus/arbiter.py", line 423, in
load_from_config
cfg = get_config(config_file)
File "/usr/lib/python2.7/dist-packages/circus/config.py", line 135, in
get_config
cfg, cfg_files_read = read_config(config_file)
File "/usr/lib/python2.7/dist-packages/circus/config.py", line 123, in
read_config
for include_dir in cfg.dget('circus', 'include_dir', '').split():
File "/usr/lib/python2.7/dist-packages/circus/config.py", line 75, in dget
value = self.get(section, option)
File "/usr/lib/python2.7/dist-packages/circus/config.py", line 60, in get
res = StrictConfigParser.get(self, section, option)
File "/usr/lib/python2.7/dist-packages/backports/configparser/__init__.py",
line 811, in get
d)
File "/usr/lib/python2.7/dist-packages/backports/configparser/__init__.py",
line 384, in before_get
self._interpolate_some(parser, option, L, value, section, defaults, 1)
File "/usr/lib/python2.7/dist-packages/backports/configparser/__init__.py",
line 397, in _interpolate_some
rawval = parser.get(section, option, raw=True, fallback=rest)
TypeError: get() got an unexpected keyword argument 'raw'
This error puzzles me because StrictConfigParser inherits directly
from ConfigParser and does not redefine get to reject keyword
arguments such as raw; perhaps I'm missing something.
At any rate, I've found it possible to avoid the problem by rebuilding
with the attached patch, which sticks with the stock 2.x ConfigParser
module.
Could you please take a look?
Thanks!
-- System Information:
Debian Release: buster/sid
APT prefers testing
APT policy: (500, 'testing'), (500, 'stable'), (300, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, x32
Kernel: Linux 4.13.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages circus depends on:
ii python 2.7.14-1
ii python-iowait 0.1-1.1
ii python-psutil 5.0.1-1+b1
ii python-tornado 4.5.1-2+b1
ii python-zmq 16.0.2-2+b1
Versions of packages circus recommends:
ii python-gevent 1.2.2-2
ii python-gevent-websocket 0.9.3-1
ii python-yaml 3.12-1+b1
Versions of packages circus suggests:
ii python-pygments 2.2.0+dfsg-1
pn python-redis <none>
-- no debconf information
--- a/circus/util.py
+++ b/circus/util.py
@@ -32,14 +32,9 @@ from tornado import concurrent
from circus.py3compat import (
integer_types, bytestring, raise_with_tb, text_type
)
-try:
- from configparser import (
- ConfigParser, MissingSectionHeaderError, ParsingError, DEFAULTSECT
- )
-except ImportError:
- from ConfigParser import ( # NOQA
- ConfigParser, MissingSectionHeaderError, ParsingError, DEFAULTSECT
- )
+from ConfigParser import ( # NOQA
+ ConfigParser, MissingSectionHeaderError, ParsingError, DEFAULTSECT
+)
try:
from urllib.parse import urlparse
except ImportError: