Closed Bug 544807 Opened 11 years ago Closed 11 years ago
Import from Eudora filter rules does not translate URL-style rules
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:184.108.40.206) Gecko/20091221 Firefox/3.5.7 (.NET CLR 3.5.30729) Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:220.127.116.11) Gecko/20100111 Thunderbird/3.0.1 Ran an import "complete" from Eudora, the import wizard created a msgFilterRules.dat file which contained lots of rules in the format name="From:email@example.com" enabled="yes" type="17" action="Move to folder" actionValue="mailbox://nobody@Local%20Folders/Trash" condition="OR (from,contains,firstname.lastname@example.org)" name="From:bounce-smallcapdigest-1950650N@lyris.smallcapnetwork.net" enabled="yes" type="17" action="Move to folder" actionValue="mailbox://nobody@Local%20Folders/Trash" condition="OR (from,contains,bounce-smallcapdigest-1950650N@lyris.smallcapnetwork.net)" When T'bird tries to run the filters, displays error dialog "One of your filters uses a custom header that contains an invalid character, such as a ':', a non-printable character, or an 8-bit ascii character. Please edit the msgFilterRules.dat file, which contains your filters, to remove invalid characters from your custom headers. [OK]" Removing all similar rules provided a workaround, and the T'bird filtering should be better than Eudora's ever was :-) Reproducible: Didn't try Steps to Reproduce: 1.Tools Import... 2.Import Everything 3.Eudora ... wait ... took over an hour :-) When finished, check mail, dialog pops up. Actual Results: Could not get new mail until I found the clobbered rules file and removed all the rules. Expected Results: Expected filtering to work as it had in Eudora. In retrospect, I think T'bird should have either fixed the rules to work in T'bird's syntax, or suggested that there is a better way to do this filtering in T'bird, and offered to remove any rules which could not / should not be imported as is. This occurred with a fresh install from the website today. The Eudora import was the second mail account imported. As this problem prevented getting new mail, it is quite serious for the new user.
Eudora Version 18.104.22.168. Had been in use for over 5 years, several upgrades.
This happens when importing a filter from Classic Eudora that uses a meta-header ("<<Body>>", "<<Any Header>>", etc.). It actually uses the "angled quotes" characters (which are '«' and '»'), and that causes a problem. It's actually fixed in Eudora 8, but I see those changes haven't been propagated to the Thunderbird code base. I will submit a patch with the latest code. As a workaround, you could install a Eudora 8 beta, import your Classic Eudora data with it, and then switch to using Thunderbird 3.0.
Status: UNCONFIRMED → NEW
Ever confirmed: true
This fixes the angled quotes importing. It also includes a fix that's in Eudora 8 that correctly uses the name of the imported mail subfolder if the user had done a one-off import of the mailboxes instead of a full migration.
Actually, what looks like happened is that when it was checked in those special characters got translated to UTF-8, and so went from being one byte to two bytes. They need to be just the one specific byte. I'll submit a new patch with them encoded so this doesn't happen again.
Attachment #426124 - Flags: superreview? → superreview?(bienvenu)
Comment on attachment 426124 [details] [diff] [review] Now with encoded characters Would it be possible to write a unit test for this? Eudora import coverage is non-existent so it would be nice to have some coverage. Or is it difficult to set up Eudora import w/o Eudora installed?
It would be difficult, as the import code requires things like looking up registry entries in order to find where the Eudora data resides.
Comment on attachment 426124 [details] [diff] [review] Now with encoded characters ok, that makes sense. Can you move bundle into the block where it's used?
Declared the bundle variable closer to where it's used. Continuing bienvenu's r+/sr+.
Comment on attachment 428293 [details] [diff] [review] Fix bundle variable declaration location [Checkin: Comment 10 & 12] http://hg.mozilla.org/comm-central/rev/ded4820bb274
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 3.1b1
Version: 3.0 → Trunk
Attachment #428293 - Flags: approval-thunderbird3.0.3? → approval-thunderbird3.0.4?
Comment on attachment 428293 [details] [diff] [review] Fix bundle variable declaration location [Checkin: Comment 10 & 12] A brief discussion on irc with Beckley tells me this is a low risk patch and has benefit for Classic Eudora imports into Thunderbird and has been in Eudora 8 for some time now. Therefore, a=Standard8.
Attachment #428293 - Flags: approval-thunderbird3.0.4? → approval-thunderbird3.0.4+
Checked into 1.9.1: http://hg.mozilla.org/releases/comm-1.9.1/rev/6179ec4770e7
Attachment #428293 - Attachment description: Fix bundle variable declaration location [Checkin: Comment 10] → Fix bundle variable declaration location [Checkin: Comment 10 & 12]
You need to log in before you can comment on or make changes to this bug.