Oct 22, 1997 This is Release 1.2.7 of the GoFetch Shell & NIE transport. Packing List: GoFetch Setup.pkg -- Setup program GoFetchExtras.pkg -- Extras drawer application, includes background button and notepad mail stationery. GoFetchNIETrans.pkg -- GoFetch Mail transport for NIE GoFetchShellTrans.pkg -- GoFetch Mail transport for dialup unix shell access GoFetch Help.pkg -- Unbundled help book, used to be part of GoFetch Setup.pkg 1.2.7 Release Notes This is a maintenance release to fix a bug with the eMate 300 when Newton Works is selected as the backdrop app and to support Kagi Registration using Flash Sheridan's Register App. You can also use the About box to send the appropriate URL to reach the Kagi website with NetHopper if it is installed. 1.2.6 Release Notes GoFetch has a new home at . This is another interim maintenance release to update the website and email addresses for GoFetch and to fix several reported bugs. There is another update coming soon, until then this version is good for 30 days for a trial period. This might get extended if the next version isn't completed in time, look on the website for more information. Please read the installation instructions that came with this version. There are a few changes if are already using 1.2.5r2. Thanks. * Prefs--After Sending, File deletes the text of the message even though File was selected and not log. Fixed in 1.2.6 * Received mail with large headers could cause the transport to run out of heap. Now in 1.2.6 headers are stored in store memory like the rest of the message. * Messages from the GoFetch Mail stationery from the Notes application sent "later" and stored in the outbox can't be edited or displayed. Fixed in 1.2.6 * Large numbers of messages left in the server's mailbox cause occasional "resets" on the Newton. There was a previously undocumented limitation of binary objects that Apple noted and documented. Applying this fix should eliminate the problem with 1.2.6. * The inbox stationery was capitalizing each word if used with the on-screen keyboard. This was happening in the "Edit Text" routing slip button too. Fixed in 1.2.6. 1.2.5 Release Notes Questions and comments to GoFetch 1.2.5 is a maintenance release designed to fix outstanding bugs, add requested features and to support new Newton hardware better. These notes will give you an idea of what has been fixed and/or changed in this release. GoFetch 1.2.5 does not add MIME compatibility to the transports. That is still upcoming in version 1.3. GoFetch 1.2.5 continues to work on MP120s and MP130s and it has been fully tested on the MP2000. The EMate 300 hasn't been as thoroughly tested but is expected to work without any problems. Unless otherwise noted, all changes have been applied to both the NIE and Shell versions of the transports. When you install GoFetch 1.2.5 you should adjust your Preferences again. GoFetch 1.2.5 sets you preferences to default because of new preferences added. Your registration will not be affected. If you aren't registered GoFetch 1.2.5 should give you a new trial period. There have been a number of bugs reported with the GoFetch 1.2. Here is a list of bug fixes incorporated into GoFetch 1.2.5. o There was an error with checking for mail with the following conditions: no mail on the POP server and the prefs setting was to not "Save mailbox status" (found in the Connection Options menu). This problem is fixed and this condition no longer produces an error. o Scrolling a long message in the inbox resulted in the scroll stopping before the end of the message. There is an inherent limit to the amount of scrolling that can be done with a standard text view on a Newton. This limit is defined by about 32000 pixels. This limit still exists in GoFetch 1.2.5. It may be possible to work around this problem in the future but for now you won't be able to scroll more than about 100k of text, the total size depends on the font size. o There was a bug in the scrolling of a text view. The total length of the message was being miscalculated as much smaller than the actual size. To speed up the scroll, GoFetch 1.2.5 no longer tries to determine the total length of the text, instead you can scroll past the end of the message. The only real change is that the down scroll arrow stays darkened instead of showing an outline when the end of message is reached. See the previous bug listing for a discussion of the scrolling limits in GoFetch 1.2.5. o There was a potential bug in the way that a reply to a received message without a subject header line was handled. I never verified the problem but a problem was reported so I changed the code to make it more robust in the condition that no "Subject:" header line was found. Please report any continued problems with this to o If the notepad was not the backdrop application, and it wasn't open, then when you tried to "Save text to notes" from the in/out box you would get an error. The handling of "Save text to notes" has been completely redone and in the process this problem was removed. See the "New features" section for more info on the "Save text to notes" improvements. o Out of heap errors when a large number of messages where left on the server. This bug has been largely fixed but if you have a very large number of messages on the server you could still see out of heap restart dialogs. There was a bug in the way the server database of messages (UIDL) was being handled. The list of messages was also left totally in the heap while it was in use. The bug has been fixed and with GoFetch 1.2.5 the list is kept mostly on the default store. Only a small portion of the list is now kept in the heap while the list is in use. For every 100 items left on the server you need about 3k of heap to manage it. There is a new feature to limit the total number of messages scanned by GoFetch but unfortunately the whole database is downloaded to the Newton even if it is not all used. In a future version I will attempt to remove the memory limits altogether. o Editing of text in the routing slip and in the outbox, the handwriting mode was set to letter-by-letter instead of using the more forgiving word recognition modes. In addition the modes were sometimes set to do math & symbols which could cause recognition problems. All GoFetch text editing views now use the notepad standard fo recognizing text. This is represented by the [A] button in the lower left of all text edit views in 1.2.5. This mode supports all words, punctuation and symbols without adversly affecting word recognition. o A server error complaining about unknown "UIDL" commands is eliminated. There are two optional POP server commands. "UIDL" generates a list of references to any mail left on the server. This command is used by "Save mailbox status" and to enable "Browse" mode. If the server replies with a error to UIDL now, GoFetch 1.2.5 automatically switches to don't "Save mailbox status" and to "Download" mode. The other optional command is "TOP" if this message produces an error then the "Retrieve unread mail" vs "Retrieve read mail" preferences are ignored. o The "Check old mail" preference in the "Connect Options" menu was confusing and inconsistent. Now old mail is scanned based on the "Retrieve read mail" and "Retrieve unread mail" settings and additionally any "Remote" items are scanned again. See the "New Features" section for more information. o There was a bug where a change to the "Skip Messages" size in the temporary options from the connect slip wasn't being honored. This is fixed. There are number of changes in GoFetch 1.2.5 for better support of the new MessagePad 2000. o Older versions of GoFetch disallowed installation on a card. This was to prevent crashes if the card is removed while the transport is in use. With the MP2000 though, the Newton can have 2 cards. It is now entirely reasonable that some people will keep a card installed in the Newton at all times. So it becomes necessary to allow installations to a card. This does not eliminate the problems with removing the card while GoFetch is in use. If you remove the card where GoFetch is installed while the transport is active you will crash your Newton, requiring a reset to recover. There doesn't seem to be a way around this in the current Newton OS. Even though this change was made for the MP2000, it also allows card installs on all supported Newton devices. Users should consider the potential problems before installing GoFetch NIE or GoFetch Shell onto a card. o A number of views in GoFetch are no longer full screen on a MP2000 since it has a much larger screen area. Any view that was full screen on the older hardware but isn't on the MP2000 is now movable. Also, views are centered correctly. o Apple documented many aspects of the transport interface since GoFetch was introduced, where applicable, I've updated the code to use the approved Newton Transport APIs. Several new features have been added to GoFetch. o In previous versions of GoFetch it was possible to try and save large text messages to the Notepad. This would sometimes work but leave the note inaccesable from the Notepad, other times you would get an error. GoFetch 1.2.5 fixes this problem by breaking text messages into 4k notes when saving to the notepad. The change also fixes a problem when the notepad isn't the backdrop application. o A automatic email scheduler has been added to the Prefs view. You can use the scheduler to automatically send and receive mail at specified times and days of the week. When something is scheduled the Newton will attempt to connect using the last worksite and owner info used. No connection slip is created and the settings are the defaults set in the GoFetch Prefs. o A new preference item has been added to GoFetch. You can now set a limit on the number of messages to process. There is now a "Maximum Messages" preference item. This limit is used whenever GoFetch needs to scan the messages in the server for retrieval or remote access. You can select from either the newest messages on the server or the oldest. If the "Save mailbox status" setting is checked then old messages are counted but not processed again, speeding up the check. You can use this in conjunction with "Check old mail" to limit the scan of old mail and save time. Note that this limit does not affect the total amount of memory used by the "Save mailbox status" when you have a large number of items left on the server. See the bug fix section for more info about out of heap errors. o The login script for the Shell transport now has a "Prompt" item that lets you create a login script that will prompt the user for some data to send to the server. This allows people with SecureID setups to enter a changing password when logging in. If you use the "Schedule" button with a login script that has a prompt, the login will eventually timeout and no mail will be sent or retrieved. The prompt is only needed by the GoFetch Dialup Setup since the NIE Internet Setup application has its own Prompt instruction(in NIE 1.1). o The "Clear Menus" button has been moved from the GoFetch Prefs view to the "Enter Address" view found in the routing slip. This was moved to make room for future enhancements in the preferences view. o The "Register" button is now found in the [i] button of the GoFetch Prefs. The Register window pops up automatically with an unregistered transport. The Register info menu item stays around even after registration is complete, but it shows the customer number to the user. o Check old mail has been redone. Before, it was confusing and inconsistent. Now, when Check old mail is set in the preferences the following algorithm is used. If you are using "Save mailbox status" then old messages are defined as any message that hasn't ever been retrieved, any message meeting the "Retrieve read mail" and "Retrieve unread mail" criteria and any item that was previously retrieved as remote. This allows you to get back any "Remote" items that you may have deleted. It also allows you scan old but already read mail that is left on the server. If in "Download mode" the messages that fit the retrieve options are downloaded. If in "Browse mode" the messages that fit the retrieve options are set to "Remote". If GoFetch already knows that a message doesn't fit the criteria, it is automatically skipped. If you aren't using "Save mailbox status" then any message meeting retrieve options is retrieved again. o The extensions for GoFetch found in the Extensions folder of the Extras Drawer have new icons. o The GoFetch Setup soup now has a user name of "GoFetch Setups" instead of the unreadable "GoFetchSetups:Fetch". o The order form now has an email address input line. Problems with NIE 1.1 and the MP120. As most people are aware, the MP120 has serious problems with the NIE. This problem was not fixed with NIE 1.1. While some people have been successful with the NIE and PPP many others have not. Here is a list of things to try if you want to get the MP120 working with the NIE. Even if you get it working however, you may find it frustrating since it is slow to access email. These limits are imposed by the NIE. The problems do not exist in the Shell version of GoFetch that does not use the NIE. Here is a list of things to try: The 120 memory issues are major and, as far as I can tell, unsolvable from our point of view. 1. It just doesn't work. It will get to the Connect with PPP message and hang forever. Hit the stop button and everything cancels correctly but you will never get a PPP connection. 2. Freeze or move as many apps as possible to a card and then remove the card, leaving only the following activly installed: NIEnabler, GoFetch NIE Transport, Internet Setup, GoFetch Setup. Try to use a PCMCIA modem and while you get past the Connect message eventually you will get a -60074 message. This is an undocumented error but probably means that the NIE couldn't get the system memory it needed. 3. I have tested the NIE with a SLIP and it is more memory efficient. If you access to SLIP you might want to try it. 4. Don't use browse mode, use download mode. This allows you to have the inbox closed and only a single application (the notepad or whatever) open. I got better results this way but I still couldn't download all 20 messages in my inbox without error. 5. Use an external modem. This worked the best. I used my desktop 28.8 and left the GoFetch NIE transport in download mode and was able to download all 20 messages without mishap. 6. Reset the Newton often. Resetting frees up memory that may be reserved by applications. None of these problems occur with the 130, so there is no doubt that they are 120 memory size related. Performance with the 120 is also remarkably bad. Took about 4 times longer to download 20 messages with the 120 than the 130. I tried everything in my power to reduce the memory usage of the GoFetch NIE transport. I don't do a DNS lookup with an endpoint active. I disconnect and dispose of all endpoints when I'm done, even though I could reuse the endpoint if moving from SMTP to POP or vice-versa. This allows a DNS lookup between the server swap without an active endpoint. Old Release notes: 1.2 Release Notes New Features: * Note that installing these versions of the transports give another 10 days of trial (shortened from 30 days) but it also replaces the transport preferences. This doesn't affect any setup done from the GoFetch Setup program, just the preferences found in the [i] button in the in and out box. Transports: All of the GoFetch preferences are now available using the Options button from the connection slip. As before, these options are only set for the current session. To change the preferences for all future sessions, use the preferences in the [i] menu. The option button now pops up a dialog window that contains all of the GoFetch preferences. Choosing the OK button applies the changes, Cancel cancels any changes. New Preferences to support the mail tracking features. Under the connect options there are two new options: "Save mailbox status" and "Check old mail". The save mailbox status tells the transport to enable a new mail tracking feature. The status of the server mailbox is maintained across sessions and servers. This should save considerable time for the average user away from their desktop computer and unable to clear out their mailbox. When the tracking is enabled the next time you log in to a particular server the transport doesn't need to poll all the mail, just the new mail. When this option is checked (default) the transport uses the optional POP3 commands "UIDL" and "TOP" to keep track of the mailbox status on the remote server. If your POP server doesn't support these commands, you won't be able to use this new feature. The check old mail option allows you to poll mail that would normally be skipped because of the "Save mailbox status" option. If it is not selected (default) then any mail already visited by the transport will not be checked again. When selected, any deleted remote items will be re-downloaded and any item that isn't remote will be checked against the current "Retrieve Read" and "Retrieve Unread" options and if they match, they will be downloaded. If you turn off the "Save mailbox status" option then all the tracking info for any server you subsequently connect to will be lost. The next time you turn the save mailbox status back on the transport will poll all the mail in your mailbox again. Also, the "Check old mail" option isn't used when the save mailbox status option is off. When the "save mailbox status" is off, remote items are removed from the inbox when GoFetch is disconnected from the server (compatible with 1.1 and earlier.) The tracking is done per server, but if you are using both the shell and NIE versions of GoFetch on the same server, then the same database of mail is used for both transports. If you tap on a remote item for an item that is on another server or that has been deleted by another mail program you will get an error. There is another option, new in 1.2, "Show connect slip", When selected (default) the user gets a dialog box when connecting to GoFetch allowing the user to change the owner, the worksite and any of the GoFetch preferences. When it is unselected the user gets the default connection and no connection slip is displayed. The address pickers are rewritten to support an "Enter Address" menu item. Tapping on "Enter Address" pops up a dialog with 3 fields. If you are just entering an email address you can skip the First and Last name fields and just enter the email address. If you check the "Add to names" box, then you have to fill in the first and last names as well. If the picker already had something selected when you tap "OK" a dialog pops up asking if you want to replace the selection or add to it. If the picker shows "None" then the address is just added when you click "Ok". The address pickers now have a selection for "None". Selecting "None" deselects whatever email addresses have selected. If you use the "Assist" button or select a name in the note before choosing the mail menu, a list of possible choices are added to the top of the list of names in the address pickers. The first item in this list is automatically added to the "To" field. Extras: The GoFetch Mail notepad stationery simulates a routing slip attached to the note. If you switch to a new note and then return to the filled out mail message the data is retained. Like the other parts of "Extras" the stationery lets you choose between any installed mail transport. So far, I've tested it with GoFetch NIE and GoFetch Shell and Eudora and it seems to work. You can hide the routing information by tapping on the small black triangle. When it points down it displays the routing info, when pointing right it hides the routing info. If you choose the mail menu, the last transport used via the menu displays the routing slip but it should have the "To", "Cc" and "Bcc" fields filled in automatically. Order Stationery: Similar to the mail notepad stationery but designed to be used as an order form. The user can mail or fax the order. GoFetch Help Book: The Help book has been unbundled from the GoFetch Setup program. It has gotten fairly large and it seemed that users might wish to remove it or put it on a card, separately from the Setup program. The new help book has many additions and changes to support the new features of 1.2. --------- 1.1 Release Notes The two major new features in are Fonts and Signature files. This distribution also contains a new version of the GoFetch Shell transport. You can set the stationery mail font separately from the edit font in the routing slip. The mail font is used from the in/out box whenever you are displaying mail using GoFetch. The edit font is used by the routing slip from the edit text button. Note that the edit font is specific to whatever transport you are using, NIE vs. Shell but the mail font is global and applies to any mail in the I/O box no matter where it was set from. Go to the preferences for the GoFetch transport that you are using. Near the bottom of the view, there is a pop-up button with 2 menu items. Select the font you want to edit. From there you can set the Font, the size and the style. The other major new feature is Signature files. A signature is a short bit of text appended to every mail message. To create a signature file, go to the GoFetch Setup application in the setup folder of the extras drawer. Hit the New button and one of the items is now, "GoFetch Signature". Tapping on "GoFetch Signature" creates a signature file. Edit whatever text you want in the text box. The text box uses the global "mail font" for display and editing. You can create as many different signatures as you wish. You can use any signature from the routing slip. You will see a "Signature" pop-up under the subject editor button. Tapping on this button will let you see the titles of all the signature files that you have created. Choosing a title will append the signature text to the particular message you are sending. You can also assign a default signature to a particular owner in the owner application. Open the "Owner Info" application in the setup drawer of the extras drawer. Choose an owner. Change the "Show" button to "All Info". Select the Add button and choose "GoFetch Signature". You can select from the list of available signatures from the pop-up. Or you can choose "Edit GoFetch Setups" to create or change existing signatures. The other change is support for mailing from NetHopper. There was an incompatibilty between GoFetch and NetHopper that is now fixed. Before, if you tried to mail a page, GoFetch would stop with an error before finishing the send. There is a small work around in GoFetch to handle this condition now. A consequence of the workaround is that the status dialog showing the filling page stops showing updates about half way through. This is normal and will go away when Allpen or Apple fixes a slight problem with the way that NetHopper stores pages. Thanks to AllPen for their cooperation in tracking this problem down. One other problem that has cropped up recently with the NIE version on MP120s is the 5386 error. This is a problem that Apple fixed with the latest MP130 system patch but Apple has not made a version of the same patch available for the MP120 yet. This problem shows up either as: >The following exception occured in >event (RetrItem) of state (RetrItem) >of finite state machine (Shell >Machine): {name: 'evt.ex.fr.store, error:5386} > Or as a spurious error saying that you've run out of storage when you really haven't. I'm still trying to track down why this seems to be happening with GoFetch now, when it wasn't seen previously. I haven't encountered it in my testing. I'd like to thank Evan Gross of Rainmaker Research Inc. for his help and code for doing the font selection. It is this kind of friendly cooperation that makes it a pleasure to work with the Newton. Thanks Evan. The 120 memory issues are the same as in the Beta 2 & 3 version. They are major and, as far as I can tell, unsolvable from our point of view. We hope that Apple will release an NIE version that addresses these issues. 1. It just doesn't work. It will get to the Connect with PPP message and hang forever. Hit the stop button and everything cancels correctly but you will never get a PPP connection. 2. Freeze or move as many apps as possible to a card and then remove the card, leaving only the following activly installed: NIEnabler, GoFetch NIE Transport, Internet Setup, GoFetch Setup. Try to use a PCMCIA modem and while you get past the Connect message eventually you will get a -60074 message. This is an undocumented error but probably means that the NIE couldn't get the system memory it needed. 3. I have tested the NIE with a SLIP and it is more memory efficient. If you access to SLIP you might want to try it. 4. Don't use browse mode, use download mode. This allows you to have the inbox closed and only a single application (the notepad or whatever) open. I got better results this way but I still couldn't download all 20 messages in my inbox without error. 5. Use an external modem. This worked the best. I used my desktop 28.8 and left the GoFetch NIE transport in download mode and was able to download all 20 messages without mishap. None of these problems occur with the 130, so there is no doubt that they are 120 memory size related. There is a rumor that Apple is working on a 1.1 version that will help the 120 memory size issues but I wouldn't get my hopes up. They might do it but from talking to the engineers, things are pretty tight already. Performance with the 120 is also remarkably bad. Took about 4 times longer to download 20 messages with the 120 than the 130. About what was expected. I tried everything in my power to reduce the memory usage of the GoFetch NIE transport. I don't do a DNS lookup with an endpoint active. I disconnect and dispose of all endpoints when I'm done, even though I could reuse the endpoint if moving from SMTP to POP or vice-versa. This allows a DNS lookup between the server swap without an active endpoint. A couple of other points. I keep the internet link active even when the transport is not in use. It is used similarly to the shell logout on the GoFetch Shell Transport. Use the "Disconnect" prefs item to set how long to wait before releasing the internet link. Note that the NIE has its own timeout. Once the last application or transport has released the internet link, you can configure it to leave the link for another 1-10 minutes or never disconnect. The "REMOTE" items will be deleted after the GoFetch NIE disconnects. So you configure it the same way you would for the Shell version. Beta 3 Release Notes: I've fixed many of the cancel problems but there are still some conditions that do not clean up correctly when canceled. If you run into some problem that won't go away, hit the reset button. Fetch Software will work with Apple to resolve these problems. At this point I believe that the problems are in the NIE and not in the GoFetch Transport. There was a problem with some SMTP mail servers. GoFetch was violating the SMTP specification for email addresses in the "MAIL FROM:" and "RCPT TO:" lines. Most SMTP servers didn't seem to care but a few were complaining about syntax errors, most notably the Apple Internet Mail Server (AIMS). I changed the status dialogs so that all status dialogs can be hidden, whether or not they originate from the NIE or the GoFetch transport. There is a problem with NetHopper (and any other program that uses email without going through the standard routing slip). I made the changes that I hope will address the problem but since I don't have a copy of NetHopper yet they didn't get tested against NetHopper. If you send mail with NetHopper and you get an error from GoFetch during the message download, I'd like to hear about it. If you run out of store memory while downloading mail, the error messages should be more useful now. They will tell what store is in use along with the out of store memory alert. Beta 2 Release Notes: It is beta 2. It works pretty well because of the shell transport ancestry but there are sure to be some initial problems. I haven't seen anything really bad yet but you never know until it gets a lot more testing. I've discovered several problems with the status dialogs and the "stop" button. Sometimes after you hit the stop button, the next time you try to connect you get stuck at "initializing...". This seems most common if you hit stop while logging in. To recover you essentially have to reset the Newton. I'm working on fixing this but I'm not sure if it is an NIE problem or a GoFetch transport problem. I've occasionally seen cases where an extra status dialog is displayed. I've tracked down several of these cases but there might be one or two still lurking. If you see it happen, and especially if you can make it happen repeatedly, I'd like to hear about it. There is a problem with Newtscape 1.3e2. If you use both GoFetch NIE and Newtscape at the same time, when Newtscape finishes it will redisplay a status dialog that you can't (easily) make go away. I've told Steve Weyer about it and I will get back to him to follow up. The NIE dialog boxes don't want a close box. Transports status dialogs like a close box so that the user can make the dialogs disappear to get them out of the way. Currently, I make the close box appear and disappear during different times. When I'm displaying NIE status, the close boxes should be missing, when I'm display GoFetch transport status the close boxes should appear. If this doesn't seem to be happening, I'd like to hear about it. The SetupGuide is designed (right now) for the Shell version. It hasn't been updated for the NIE version. Some of the settings might not be correct for TCP access. See your ISP for the correct settings. Also, the Setup Guide will create a dialup setup. You can delete it or ignore it if you are only using the NIE version. Just keep in mind that this is beta and isn't quite as robust as I'd like it to be. If all else fails, hit the reset button and try again.