oops leaving milestone code_name empty
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Launchpad itself |
High
|
Unassigned |
Bug Description
The OOPS-1405ED465 oops shows the NoneableTextLine is working with None, but it assumes it has a string.
* Module canonical.
super(
AttributeError: 'NoneType' object has no attribute 'strip'
The milestone code_name is optional. but is effectively required to avoid the oops.
This was not a problem last release when I edited milestones. The StrippedTextLin
Related branches
- Francis J. Lacoste (community): Approve (release-critical) on 2009-11-05
- Barry Warsaw (community): Approve (code) on 2009-11-05
-
Diff: 68 lines (+32/-6)2 files modifiedlib/canonical/launchpad/doc/stripped-text-widget.txt (+29/-4)
lib/canonical/launchpad/fields/__init__.py (+3/-2)
Curtis Hovey (sinzui) wrote : | #2 |
I do not think that is viable. API does not use widgets. We want the field to normalise values when the field is used by API.
Changed in launchpad-registry: | |
assignee: | nobody → Curtis Hovey (sinzui) |
status: | Triaged → In Progress |
tags: | added: current-rollout-blocker |
Curtis Hovey (sinzui) wrote : | #3 |
Fixed in db-devel r8646.
Changed in launchpad-registry: | |
status: | In Progress → Fix Committed |
Changed in launchpad-registry: | |
milestone: | 3.1.11 → 3.1.10 |
Changed in launchpad-registry: | |
status: | Fix Committed → Fix Released |
Changed in launchpad: | |
assignee: | Curtis Hovey (sinzui) → nobody |
On Thu, Nov 05, 2009 at 02:12:36PM -0000, Curtis Hovey wrote: e.set() method was added to by Tim's 2009-10-2 bmp- commit- message branch. It either needs to return early, or
> This was not a problem last release when I edited milestones. The
> StrippedTextLin
> inline-
> NoneableTextLine should test for None before calling super.
Don't forget to consider the case where the field is already set to some
non-None value, and you try to set it to None.
As a side note, we should replace the default TextLine widget with a
widget that always strips the input, so that we don't need to do this in
the field itself.