FAQ about patches | More patches | Main Page | SHA256 digest for this patch

Check for New Mail in Incoming Folders
Patch is available for versions:

 
New features have been added to this patch, they can be found at the bottom of this page.
 
This patch allows you to check for mail in selected incoming folders. After you apply the patch you have to go into your configuration and go to:
 
incoming-folders-to-check =
 
You should write a space separate list of incoming folders where you want your new mail to be checked. If you want to check all of them you can write a "*" (do not include the quotes!) instead of the whole list.
 
After this you should enable
 
[X] enable-check-incoming-folders.
 
Make sure that you also enable [X] enable-incoming-folders.
 
This patch reports new mail in incoming folders in two ways, depending on if you have enabled or disabled the feature enable-fast-recent-test.
  • If you have enabled [X] enable-fast-recent-test then folders that contain new mail are selected and appear either in bold or with an "X" to its side depending on the setting show-selected-in-boldface. You can see an image that shows the look of the folder screen with this feature enabled. Enabling this feature makes checks for new mail happen "fast". This is only available for version 4.33 or newer.
     
  • If, on the contrary, you have disabled [ ] enable-fast-recent-test, then you will see a full report of how many new messages and total number of messages per folder there are. This is only available for version 4.60 or newer. The report is on the form Folder-Name [New messages/Total messages], so you will see something like
      
    INBOX [1/4]    pine-info [2/439]    etc.
     
    You can see an image that shows how the folder list screen looks when this feature is disabled. Disabling this feature make checks for new mail slower that enabling this feature, but at the same time you get a full report.
Pressing ^H either from the index or the folder menu will check for new mail in Incoming Folders. This is only available from version 4.21 (^H is the definition of the Backspace key in my keyboard)
 
Starting in version 4.33, the patch tries to make its work when you are not doing any work, in other words, the idea is that if you are doing something (say moving in the index) then Alpine won't check for new mail and wait until you are not active to check for mail. This avoids seeing delays when your priority is not to know if new mail has arrived. Contact me for easy instructions on how to remove this feature from the patch.
 
New functionality was added starting in version 4.56. There is a new variable called inc-fld-timeout, which controls for how long should Alpine attempt to connect to a server before giving up on trying to check e-mail on that server. The default is 5 seconds, which is also the minimum and the maximum is 60 seconds. The idea is that you should set this default to be a large number if your connection is fast, but a small number is your connection is slow, so that Alpine won't waste much time trying to check e-mail in a slow connection. Notice that Alpine will fail silently in this case, it will not give any report of the error (because such error can potentially appear many times during the same session, which is considered obstructive).
 
New functionality was added in version 4.58. A new configuration option recheck-all-incoming-folders was added to make Alpine check all incoming folders all the time. Alpine normally checks for new mail in incoming folders that do not have new mail. If Alpine knows that there's new mail in a specific folder, the check is skipped for that folder. Enabling this feature makes Alpine check all folders for new mail. This is useful if you use two clients to read your e-mail, and do not open the folders with new mail using Alpine. If you only use Alpine to read your mail, then you do not need to enable this feature.
 
The patch for version 4.58 includes another patch that fixes a bug when checking the status of a maildrop. This bug fix patch is not a bug fix for my patch, but for the maildrop feature in Alpine.
 
New: I have added new functionality in 4.60, which allows you to see how many unread and the total number of messages in each incoming folder that is checked for new mail. This functionality is tied to the feature enable-fast-recent-test, which must be disabled in order to make it work (the reason why this new feature is tied to this feature is because there was a bug in the library code of Alpine for versions previous to 4.60 which would make any other method fail. This had nothing to do with my patch, but it affects it, so I had to make this decision to avoid users having to suffer from this bug in deffective UW-IMAP servers).
 
The patch for Alpine4.61 has a new feature which allows you to determine how and when new checks will be performed. The new variable is called incoming-check-rule, which can be set to any of three values: automatic, automatic-after-first-manual-check or manual-only, which makes Alpine check for new mail automatically (without user intervention), or only after the first manual check or only manual checks are allowed. You can always force a check for new mail by pressing ^H.
 
New functionality was added in version 4.63. The main idea is to speed the check in incoming folders, and changes like this will keep coming in future releases of this patch. If you see a full report in the folder screen which includes the number of new and total messages in a folder, then you probably know that getting this informationmay be time consuming. In order to speed getting this information, some checks may be skipped. Here's how it works:
 
Internally, a loop of checks is started in INBOX and all folders are checked. In subsequent checks, a check in a folder may be skipped if the last check on that folder took too long. The number of checks that are skipped depends linearly on the number of seconds that the last check took to be completed on that folder. If the check on a folder is fast, then such folder is checked all the time. If the total amount of time that a check has taken is too long, then that check is interrupted, and the full cycle of checks may not be complete.
 
Externally, you will see in the folder list screen a folder name followed by a code, a space and the report of new and total number of messages in that folder. For example INBOX~ [0/3]. There are 4 possible codes:
  1. A space " " (or no visible code). This means that the last check in that folder was fast enough and that the report on new and total number of messages is current.
  2. A period ".", means that the last "real" check on that folder took too long and so the last cycle of checks skipped that folder. The report on new and total number of messages has not been updated since the last check.
  3. An underscore "_". This means that in the last cycle, this was the last folder that was checked, and so the information on new and total number of messages is current. Normally this is the folder where the checks ended.
  4. a tilde "~", means that this was the first folder to be checked, and so the information on new and total number of messages is current. Normally this is where the cycle of checks started.
Last Updated 12:52:42 PST Sat Nov 04 2006.