= TODO =

This is a list of known issues:

=== change bug.attachments.remove() ===

The syntax of that function in combination with the `bug.attachments.filter()`-function looks strange: (./)

{{{
bug.attachments.remove([i for i in bug.attachments.filter(lambda a: re.match('^(CoreDump.gz$|Stacktrace.txt|ThreadStacktrace.txt|Dependencies.txt$|ProcMaps.txt$|ProcStatus.txt$|Registers.txt$|Disassembly.txt$)', a.lp_filename))])
}}}

=== relation between attachment and comment ===

Using `weakref` is not the best solution and it seems to be broken sometimes.
Suggestion:

 * really delete an attachment
  * bug.comment[x].attachments should be a list of attachment-ids
  * add a 'deleted-attachment`-object:
   * whenever an attachment is deleted .comment.attachment[x] should refer to the deleted attachment

 * set attachment as deleted
  * add attachment.deleted attribute
  * bug.attachments will return list of attachments where `.deleted== False`
  * .comment.attachment[x] will return either an `<dead-object>` or raise an error

=== duplicate_of ===

allow `duplicate_of = None` (./)