Ticket #1692 (closed defect: fixed)
Bug in ToscaWidgets-0.2rc3dev_r3795
| Reported by: | dbrattli | Owned by: | alberto |
|---|---|---|---|
| Priority: | normal | Milestone: | irrespective |
| Component: | ToscaWidgets | Version: | trunk |
| Severity: | blocker | Keywords: | |
| Cc: |
Description
The doc collector (_make_params_docs) in meta.py for the latest ToscaWidgets? cannot handle class attributes that are of type tuple. It will give the following exception:
File "/Library/Python/2.5/site-packages/ToscaWidgets-0.2rc3dev_r3795-py2.5.egg/toscawidgets/meta.py", line 23, in __new__
_make_params_docs(new, params)
File "/Library/Python/2.5/site-packages/ToscaWidgets-0.2rc3dev_r3795-py2.5.egg/toscawidgets/meta.py", line 119, in _make_params_docs
default = " (*default* = %r)" % getattr(cls, name)
TypeError: not all arguments converted during string formatting
This is because tuples have a special meaning when used with the interpolation operator %, and its applied before the repr() of %r. Thus in order to fix the bug one have to call repr() before %.
py2.5.egg/toscawidgets [dag]: diff -urN meta.py.orig meta.py
--- meta.py.orig 2008-01-16 17:45:24.000000000 +0100
+++ meta.py 2008-01-16 17:45:34.000000000 +0100
@@ -116,7 +116,7 @@
# Get the default value.
try:
- default = " (*default* = %r)" % getattr(cls, name)
+ default = " (*default* = %s)" % repr(getattr(cls, name))
except AttributeError:
default = ""
-- Dag
Change History
Note: See
TracTickets for help on using
tickets.
Fixed is [4009]. Thanks!
Alberto