plainbox check-config crashes with duplicates in [environment]

Bug #1185427 reported by Sylvain Pineau
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Next Generation Checkbox (CLI)
Fix Released
Low
Maciej Kisielewski

Bug Description

If I write a config file like this one:

[environment]
foo: bar
foo: bar

plainbox check-config does not detect the duplicated values as it does for other headers:

plainbox check-config
Traceback (most recent call last):
  File "/usr/local/bin/plainbox", line 9, in <module>
    load_entry_point('plainbox==0.4.dev', 'console_scripts', 'plainbox')()
  File "/home/sylvain/git_lp/checkbox/plainbox/plainbox/impl/__init__.py", line 82, in call_impl
    return impl(*args, **kwargs)
  File "/home/sylvain/git_lp/checkbox/plainbox/plainbox/impl/box.py", line 125, in main
    retval = box.main(argv)
  File "/home/sylvain/git_lp/checkbox/plainbox/plainbox/impl/box.py", line 66, in main
    config = PlainBoxConfig.get()
  File "/home/sylvain/git_lp/checkbox/plainbox/plainbox/impl/config.py", line 388, in get
    self.read(cls.Meta.filename_list)
  File "/home/sylvain/git_lp/checkbox/plainbox/plainbox/impl/config.py", line 453, in read
    value = dict(parser.items(section.name))
  File "/usr/lib/python3.3/configparser.py", line 853, in items
    return [(option, value_getter(option)) for option in d.keys()]
  File "/usr/lib/python3.3/configparser.py", line 853, in <listcomp>
    return [(option, value_getter(option)) for option in d.keys()]
  File "/usr/lib/python3.3/configparser.py", line 850, in <lambda>
    section, option, d[option], d)
  File "/usr/lib/python3.3/configparser.py", line 391, in before_get
    self._interpolate_some(parser, option, L, value, section, defaults, 1)
  File "/usr/lib/python3.3/configparser.py", line 407, in _interpolate_some
    p = rest.find("%")
AttributeError: 'list' object has no attribute 'find'

Related branches

description: updated
Zygmunt Krynicki (zyga)
Changed in checkbox:
status: New → Triaged
Zygmunt Krynicki (zyga)
affects: checkbox → plainbox
Zygmunt Krynicki (zyga)
tags: removed: plainbox
Changed in plainbox:
assignee: nobody → Maciej Kisielewski (kissiel)
status: Triaged → In Progress
Changed in plainbox:
milestone: none → 0.38.0
status: In Progress → Fix Committed
Changed in plainbox:
milestone: 0.38.0 → 0.39.0
affects: plainbox → checkbox-ng
Changed in checkbox-ng:
milestone: 0.39.0 → none
milestone: none → 1.0.0
Changed in checkbox-ng:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.