lp:~qwertyface/localmail/localmail

Created by Peter Russell and last modified
Get this branch:
bzr branch lp:~qwertyface/localmail/localmail
Only Peter Russell can upload to this branch. If you are Peter Russell please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Peter Russell
Project:
localmail
Status:
Merged

Recent revisions

55. By Peter Russell

Fix a few errors relating to non-ascii mails

* Correctly convert message payloads to bytes in inbox.py
* Correctly decode message headers in inbox.py
* Convert a few strings including '\' characts to raw strings
* Add tests which round-trip non-ascii mail with differing encodings
  (these could probably do with a refactor)

54. By Peter Russell

Linter fixes.

53. By Peter Russell

Hacked together Python 3.5 support.

I've tried to minimize the code changes in doing this, so some cleanup
may be necessary.

This hasn't been tested with Python 2.6, but it should support everything
that is used.

Changes:

* Fix up imports to consistently use relative imports
* Move Zope Interface implementations to use @implementer decorators.
* Ignore .eggs/ in the root. This seems to be tox gumph.
* Use io.BytesIO instead of cStringIO.StringIO where the latter fails to
  import.
* Move from x.next() to next(x)
* Don't return a dict itemsview from MemoryIMAPMailbox.fetch()
* Use some of the new Python3 email module binary functions. This is
  necessary on Python 3.
* Work around the fact that Twisted sometimes seems to call
  MemoryMessage.lineReceived() with bytes most of the time but str at
  least once. It appears that the str is a header, so encoding it as
  ASCII is probably OK? This is clearly a hack.
* Work around the fact that the legacy Python email get_payload() method
  returns a str, when we want a bytes, by encoding it as latin-1. I think
  this is probably safe in this particular case, but migrating to the new
  API is probably the right fix.
* Use bytes literals in various places.
* Allow the LOCALMAIL environment variable to be passed to tox runs.

52. By Simon Davy

bumping to 0.4.1

51. By Simon Davy

don't flush every 5s, just flush on edit

50. By Simon Davy

fix changelog

49. By Simon Davy

bump version: 0.3.0 to 0.4.0

48. By Simon Davy

make jinja2 optional

47. By Simon Davy

use jinja2 for web templates. Various packaging/docs tweaks, linting

46. By Simon Davy

add ability for random ports

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:localmail
This branch contains Public information 
Everyone can see this information.

Subscribers