The program is far from finished, but I got to the point where I’m hearing almost no feedback from my beta testers, because I fixed everything they have reported. So now it’s time to go public.
September 20: 0.8.0 First public release. A few refinements to URL highlighting and attachment decoding. The manual is finally finished.
September 29: 0.8.1 Five new character encodings for asian languages. Improvements to the composition window: it now shows you where line breaks will occur in the final message, among other things.
October 9: 0.8.2 Many improvements to the language-oriented features, which didn’t work so hot in the previous release. If a message in the headers view is collapsed and has at least one reply that is unread, then the collapsed message will be displayed as unread as well.
October 12: 0.8.3 This version fixes a serious bug in the text encoding functions that caused bad things to happen if you encountered messages tagged with the wrong charset. Most of the program’s windows have been modified to remove the “Cancel” and “Save and Exit” buttons, now you just close the windows. Changes in the program’s low-level message-handling methods should make some operations go a lot faster, such as marking all messages read.
November 4: 0.8.4 This is the first version of the program that is ready to be translated into languages other than English. A new help topic has been added that explains how it should be done.
December 2: 0.8.5 When you unsubscribe from a newsgroup or delete an entire account, the program moves the affected folder or folders into its local trash folder, to be deleted later. Alas, I introduced a bug that prevented the program from being able to get rid of the contents of that local trash folder. It is now fixed.
January 4: 0.8.6 I am having a lot of problems getting my code to compile with Xcode version 2.2, so the only new feature this time is a later expiration date. Sorry!
February 27: 0.8.7 This is the first version built as a universal binary, which may run on Intel Macs, but I haven’t yet found anybody with an Intel Mac who is willing to help me test. The minimum Mac OS X version required advances from 10.3.0 to 10.3.9, which is a consequence of the universal binary build. If you’re replying to a message you are viewing in the main window, and you have selected some text in that message, then the text selection will be used as the quoted part of your reply, as opposed to the entire message. Secondary parts of multi-part attachments are now displayed in the headers view as if they were replies to the first part.
May 1: 0.8.8 This version is known to work on Intel Macintoshes. Added an item to the edit menu that will automatically replace straight quotes with smart quotes.
August 9: 0.8.9 The smart-quotes feature did not work so hot if you’re a fast typist, which would cause a lot of characters to arrive at once, overwhelming my meager algorithm. This is now fixed.
After many months of working on the program in isolation, I released it to a few select beta testers.
May 27: 0.0.1 First closed-beta release. It was just barely limping along, not even able to perform headers-only downloads yet.
May 30: 0.0.2 Fixes to the message store, catch-up function added.
June 8: 0.0.3 First keyboard shortcuts added. Headers-only downloads implemented.
June 11: 0.0.4 Beta testers report that malformed header strings were causing grief and crashes; all such bugs are fixed. Context menus added for the storage view and headers view. Space bar traversal implemented for the main window’s three primary views.
June 15: 0.0.6 (There was a 0.0.5, but it had a catastrophic bug, so it was quickly pulled and replaced.) More malformed header strings and invalid UTF-8 cause new problems, all are fixed. Space bar traversal now skips past messages that don’t have bodies. ROT13 item added to the edit menu. I didn’t check the expiration date on this version before releasing it, and it expired about a week before the next version came out. I compounded the problem by forgetting to check my support community, where my beta testers had reported the problem. Whoops. I suck.
June 21: 0.0.7 Prefs window is more-or-less complete. Registration data is now accepted. Partial drag-and-drop support added.
July 6: 0.0.8 First list artwork from Steven Ansell. Drag-and-drop is complete. Saved storage folders implemented. Cocoa doesn’t display a focus ring around NSTextViews, so I added code to do that myself. Improved parsing of date headers.
July 18: 0.0.9 Improved context menus. Killfile implemented. Hideous discovery: background threads have never had working autorelease pools, so they were leaking tons of memory, now fixed. Poor integration between the headers view and its background thread could cause a crash in some cases, which is also fixed. The program now has a helpbook, with a few help topics taken from the BeOS version of the program, edited to make sense in the context of Mac OS X.
July 24: 0.1.0 Message data moved to /Users/[yourname]/Library/PineappleData. The program now writes problems encountered to the EventLog.txt file. First version of the program’s icon, courtesy of Steven Ansell. The transfer window reaches its final form: now you can remove and rearrange executing items, and the progress bar works.
July 29: 0.1.1 The author makes the startling discovery that there are a heck of a lot of malformed articles on USENET, many of which can crash his message parser! Many fixes applied. A bunch of fixes to the message store, in an attempt to make it more robust and speedy.
August 11: 0.1.2 Even more fatal messages are encountered and worked around. The program can now parse almost every type of MIME and non-MIME message files, including attachments, quoted-printable text, character set decoding, header decoding, and so on.
August 14: 0.1.3 The message parser that appeared in the previous version is big and complicated, and the beta testers report numerous bugs. This version was released on the heels of that one, specifically to fix parsing problems. For example, the byte offsets written into X-Pineapple-Section headers were nearly always wrong, which triggered a cascade of other bugs in code that depends on that information.
August 20: 0.1.4 A whole bunch of menu items that used to work on only one current message are rewritten to work on all selected messages. Cross-post detection added: if a message is marked read in one group, all other copies of the message in other groups are also marked read. Steven Ansell supplied a new list art icon for headers-only newgroups, because the old one looked too similar to the full-download icon. The program now displays HTML messages in a WebKit view.
August 24: 0.1.5 Steven Ansell provides an updated program icon. Message rendering is improved. Printing works, a little bit. Message files now have a type code, creator code, and icon. A standalone viewer window was added, which is used to display messages when you double-click on them in the Finder. For the first time, all items in the main menu are wired up and working.
September 1: 0.1.6 Vertical centering of text in list views is improved, which makes many font families look better. Steven Ansell does another rev on the list art icons. URL highlighting and quote coloring added.
September 14: 0.1.7 The prefs tab for quote coloring had an off-by-one bug, which is now fixed. Added a new field to the headers view: “User Agent.” Steven Ansell does another rev on the program’s icon. Binary attachment decoding took forever, but is now finally finished.