Pyne ChangeLog
~~~~~~~~~~~~~~

v0.6.7 (stable) - 26/11/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed criminally stupid error when starting up pyne
for the first time without ~/.pyne folder...

v0.6.6 (stable) - 21/11/2001 - 25/11/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Python 2.x fixes.

* Fixed some nntp error handling.

* Fixed error when changing mailbox server types (erk)

v0.6.5 (stable) - 10/11/2001 - 18/11/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Added "match all", and "collect and leave on server" to
filters.

* Fixed error when attempting 'Send Now' on an outgoing
message that isn't in the outbox.

* Editing a message that has already been posted now opens
a new copy of the message, rather than editing the original.

* Graceful handling of outgoing messages whose originating
folder has been deleted.

* debian stuff.

v0.6.4 (stable) - 12/10/2001 - 4/11/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Simple makefile (default install prefix: /usr/local/)
with 'install' and 'uninstall' targets.

* Messages with very long lines are now split up correctly
in the reply body.

* Shutdown debug messages silenced a bit.

* Stupid error involving toolbar message edit button fixed.

* Set application icon.

v0.6.3 (stable) - 17/9/2001 - 8/10/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed exceptions when attempting operations on placeholder
messages in newsgroups (messages at the root of a thread that
aren't on the server)

* Folder and message menus centralised so the right-click popup
menus are no longer different to the dropdown ones.

* Toolbar and menubar options get disabled when they aren't
appropriate now.

* Some stuff like 'delete thread' and 'download body' now work on
multiple selected messages.

* Fixed an exception if user tried to 'reply to all' on a message
not in a newsgroup or a mailbox.

* Messages moved from the outbox to other folders for working on
could only be edited by double-clicking on them. The toolbar and
menubar edit option now works correctly on them.

v0.6.2 (stable) - 5/8/2001 - 16/9/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Cleaned up the ProgressWindow class so it looks a bit nicer.

* Some i18n stuff.

* Now check for nulls in collected headers and bodies, because
they can crash gtk if shoved into the GtkText.

* A 'get receipt on delivery' option added to the message composer.

* We now use xhdr by default when collecting news, since newnews
seems to be very slow on most news server (and not many support it)

v0.6.1 (stable) - 16/8/2001 - 24/8/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed segfault if you close a mail collection window before
collection is finished.

* Fixed stupid error when replying by email or forwarding from
a newsgroup.

v0.6.0 (stable) - 3/8/2001 - 4/8/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed exception when collecting from imap4 mailboxes with no new
mail (duh)

* Outgoing messages are now time stamped by time of last edit,
rather than leaving the mail server to do it. I think this is
correct.

* We now keep a backup of the last working user.dat (called user.bak)
in the unlikely event that pyne writes a duff one (never happened before :)
or it gets corrupted. or someone trips over a power lead while it is
being written.

v0.5.22 (devel) - 1/8/2001 - 3/8/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* New menu in message composer for changing which folder you are
sending the message with.

* Button clicky thing for easier selection of sigfile.

* Export to unix mailbox. Nice for backup or archive, or moving
back to kmail because pyne sucks ;-)

* The user can now create general purpose boxes for stuff like
drafts, etc (like the saved box).

* 'Drafts' folder created on new user startup. Note it isn't a
special folder so it can be deleted. 'Saved' folder is no longer
considered 'special' either and may be deleted.

* You may now drag outgoing messages from the outbox to other
folders and work on them from there, and them move them back
to be sent.

* Dragging normal messages to the outbox creates a reply to the
message.

* Message replies. we no longer incorrectly add an extra 'on'
to the user's reply header. (On On 25 Jan someone wrote:)

* Filter by size rule now works with IMAP4 boxes.

* Now display all text/plain parts in a message, rather than just
the first.

* General purpose folders (drafts, saved, etc) may be dragged into
eachother.

v0.5.21 (devel) - 13/7/2001 - 29/7/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* lynx (or links) -dump parsing of html bodies so we can read
them, finally.

* The composer window header list contracts correctly when hiding
headers.

* Main menu Message->Rot13 body, Composer window menu Edit->Rot13
selected.

* Fixed bug in message composer: selecting 'delete message' on a
message with changes made deletes it now. [duh]

* Collecting new newsgroup lists is now done in a thread so the
interface doesn't lock up. (no progress bar however)

* New option: File -> Import Unix mailbox. Nice for getting my old
kmail folders into pyne.

* Newsgroups with download headers only set will now download marked
messages on update.

* Stupid boundary= without " " around boundary string no longer befuddles
us.

v0.5.20 (devel) - 4/7/2001 - 5/7/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Made the addressbook UI more logical and useable.

* 'Send Now' option in composer.

* Changed order of headers in quickview and printed output
to: "to, from, subject, date".

* Fixed bug: messages without downloaded bodies could be
marked but did not show the change.

* 'Download marked' option in folder popup menu for newsgroups
with download headers only turned on.

* 'Message view tab position' option in preferences. now tabs
in the composer window and the quickview pane can be repositioned.

v0.5.19 (devel) - 3/7/2001 - 4/7/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Warn the user when a font cannot be found, and fall back
on a default.

* Ooops. missed out last_expiry in pyne_user.__init__. better
make this a bug fix release...

* Replies and new messages with no text entered are deleted
if you close the composer window.

v0.5.18 (devel) - 28/6/2001 - 3/7/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Optional collection of headers of news posts so bodies
of interesting stuff can be downloaded later.

* Fixed bug introduced in 0.5.16 (or 15?) which made attempting
to collect a new newsgroup list fail. *sigh*

* General purpose message marking.

* Fixed failure to load 0.5.2-13 data.

v0.5.17 (devel) - 10/6/2001 - 19/6/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* New mailbox type 'mailbox' to replace the popbox.
Unified pop3 or imap4 mailbox.

* Fixed bug when replying by mail to news post and original
post appearing in the mailbox.

* Only expire on shutdown once per day.

* Fixed bug in nntpbox. Error when collecting news posts
in python 1.5.2.

v0.5.16 (devel) - 30/5/2001, all night 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Finally fixed that "Gtk-CRITICAL" on main window or composer window
creation. i only had to look.

* Fixed very slow opening of messages when double clicked (caused
by unnecessary threading of group in new window)

* Reply header ("On $DATE, $FROM wrote:") configurable in main preferences.

* "Delete thread" option in newsgroups (from right-click message menu)

* Newsgroups now have seperate filters rather than a global filter set
for an entire nntp server.

* Regular expression match in message filters.

v0.5.15 (devel) - 17/5/2001 - 29/5/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* View menu items in message composer now correctly toggled.

* Added right-click popup menu to the message list items.
 | Add sender to addressbook.
 \ Open in composer/new window

* Fixed bug in parsing 2 digit years (incoming mail dated year 1901)

* Fixed parsing of messages with no terminating boundary
(content-disposition: inline)

* More 'normal' expand/collapse behaviour in message pane (thread
is only expanded when the expander thingy is clicked)

* Fixed oversight in convert-0.5.3 and 0.5.11 scripts.
("cannot find __main__.user", etc after applying script)

* Multiple message drag-n-drop.

* User preferences: new option. Only mark messages as read when double-
clicked on.

* Fixed interface lockup on pop collection error.

v0.5.14 (devel) - 22/4/2001 - 17/5/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* News server group lists stored more compactly. should reduce
memory use.

* Changes to nntpbox to support servers without .date.

* New mailbox format: flatfile. Headers and bodies in single
flat file per message. Not too nasty on reiserfs :). Now the
default for all boxes because shelve isn't robust enough.

* Rewrite of attachment decoding. Each part now has a header
and body (msg.parts_header, msg.parts_text)

v0.5.13 (devel) - 9/4/2001 - 18/4/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Finally bothered to do the FORWARD filter rule.

* Fixed GetOutbox (when replying by email to a news post with
more than 1 possible popbox)

* Double-clicking a message in the outbox will now open the
message edit window, not a new window to view it.

* Got rid of message.type, and merged .isreplied and .isread
into a single bit packed integer type thing. May take a while
on startup converting old messages to new format.

* Cleaned up mailbox setup routines with new ptk.big_edit_box

* Prevented moving folders into their own sub-folders. oops.

* Fixed breakup of message threading on old threads with many
missing messages.
 \ Merged into stable 0.5.4

* Superclass for mailboxes. ptk split into bits and moved to
a package. msg_view_box moved into the ptk.

v0.5.12 (devel) - 5/4/2001 - 8/4/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* DND within the folder view. Allows moving of mailboxes into
other mailboxes. ie. subfolders.

* Per-newsgroup expiry settings (defaulting to the nntpbox
expiry setting).

v0.5.11 (devel branch) - 4/3/2001 - 5/4/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Must run convert.py script on 0.5.0-0.5.3 format ~/.pyne
directories.

* Multiple threads per newsgroup to speed collection.

* command line arguments (see pyne.py --help) - option specify 
location of "~/.pyne"

* Double-clicking a message in the message-list pane opens a
new window displaying that message.

* Multiple addresses in the To, Cc and Bcc line are now sent
to correctly.
 \ Merged into stable 0.5.3.

* Fixed calls to 'info_box' when failing to decode a message.
 \ Merged into stable 0.5.3

* Creeping mime boundaries with successive edits fixed.
 \ Merged into stable 0.5.3

* NNTP: Method of getting new messages when 'newnews' isn't
available changed. Expired messages shouldn't be recollected now...
 \ Merged into stable 0.5.3

* No longer minds if no sigfile is specified.
 \ Merged into stable 0.5.3

* Small fix to parsing of headers. Multipart boundaries with
colons in them caused problems.
 \ Merged into stable 0.5.3

v0.5.2b (stable branch) - 4/3/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Tiny one line fix in mainwin.py. Attempting to create a new message
to a newsgroup caused an exception... how do i let these through...

* Bug in deleting folders. silly (again)

* A safety try: except in ptk.py because some people reported errors,
although they could not be reproduced

v0.5.2 - 27/2/2001 -> 2/3/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed update bug in ptk.message_tree. Things like removing a
single message from a folder causes it to zoom to top of list..

* Printing support (of sorts)

* Much requested move back to Python 1.5.2!

* Fixed a very silly bug in 0.5.1, where newsgroups are created
with the uid of the nntpbox, making them unusable (doh!)

* Improved partial update. Should now preserve expanded nodes.

* Allow individual collection of newsgroups.

* Fixed a bug in filters dialog, selecting a folder to move messages
to was broken. Damn... 0.5.1 was a buggy release...

* Optional threading of mail in pop/smtp boxes (nice for mailing
lists)

* Hard word wrap (finally).

v0.5.1 - 10/2/2001 -> 27/2/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MUST run convert.py script to convert 0.5.0 mailboxes to 0.5.1
format.

* fixed some drag-n-drop problems, and dragging from a newsgroup
now correctly *copies* the message rather than moving it :-)

* mailbox format changed (modularlised for unix and mh mailbox
support). use ./convert.py to convert 0.5.0 mailboxes to 0.5.1

* MH Mailbox module

* Fixed a possible fatal error in get_attachment_info (caused
by passing attachments with empty body)

* Support for NNTP servers without newnews(). Ugly.

* Made creating a new folder open its settings box.

* Partial update stuff. Now the interface does fewer needless
redraws

* Added 'insert file' to composer

* Version stamp on user.dat for the first time

* Some attachment fixes (multipart/related)

v0.5.0 - 11/1/2001 -> 8/2/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixed some multi-part problems and added support for
'multipart/alternative' sub-parts. (plain & html body).
Made view attachment open browser for html attachments.

* changed "organisation" header to "organization" :-(

* rewrite of crappy message composer thing.

* use of old python string module removed.

* move back to shelve for headers and bodies. hopefully it
isn't as screwy python 1.5.2 shelve... :-{
faster threading and shutdown because of this and
some more threading tweaks.

* Folder search added. Currently only parts[0] search.
XXX add subject, from and body search options.

* General fixes to the mailfilter stuff, and added support
for nntpboxes. Still dirty code and ACTION_FORWARD rule
not implemented.

* now works from ~/.pyne rather than ./data, and assumes
pyne modules are in same directory as pyne.py or in $PATH

* messages with base64 encoded single part bodies no longer
bother us.

* added different message sorting methods. by subject and from/to,
in addition to by date. changed by clicking on the message list
headings.

* in preferences. added 'classic' window pane mode option (more
like most mail/news clients)

* 'load message' (ascii, as from server) added

v0.4.0 - 25/9/2000 -> 10/1/2001
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Change text colours added to preferences.

* No longer using python's shelve module to store article
headers and bodies. it's too slow and (?) buggy (?) :-o

* Componentisation of commonly used pyne controls (ptk.py)

* Fixed parsing of dates with broken (2 digit) year fields.

* Drag 'n' drop from message list to folders. move only.

* Per-folder expiry settings. Expire messages possibly on
mailboxes not just news now :-] V. Nice for mailing lists.

* Filters

* Many smaller additions, fixes and cleanups i can't be
bothered listing.

v0.3.0 - 28/8/2000 -> 25/9/2000 - named Pyne
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Considerable rewrite. NNTP started.

2/9/2000 - i'm able to read news with it for the first
time (threaded, too :). Still no posting.

* Threaded offline news reading and posting.

* multi-window interface [file/new window], not that i
  ever use it...

* threaded message collection so gtk interface
  isn't frozen during collect.

v0.2.0 - Started 23/6/2000
~~~~~~~~~~~~~~~~~~~~~~~~~~

* Gtk interface

* Attachment decoding.

* Outgoing attachments.

* Address book

v0.1.0 - 21/3/2000
~~~~~~~~~~~~~~~~~~

* Basic POP3 mail collection and SMTP posting.

* Curses interface


