thunderbird / import-export-tools-ng

Import Export Tools that supports Thunderbird v68-v128
Other
294 stars 31 forks source link

Exporting folders with tilde in name fails #513

Open DaRealNOX opened 11 months ago

DaRealNOX commented 11 months ago

Hello everybody!

I last installed ImportExportTools NG 14.0.1 (enabled by automatic updates in Thunderbird 115.5.1x64 "Supernova") and noticed that I could no longer do exports. It was asked where on my data storage I wanted to export to, but neither a folder structure nor files were created. There was no error message or anything like that.

I always export my emails as EML files with an HTML index in a complete folder, so to speak in a batch. The addon settings are at the factory settings; in other words I don't use customization.

I then uninstalled the addon and installed version 14.0.2-b5 from here, from the Github repository. However, that didn't help either, no exports were created.

So I did a little troubleshooting and first checked the read/write permissions of the addon: Everything was fine. The addon is theoretically allowed to create folders and files in my operating system (Windows 11 Pro 23H2 [22631.2792]) or my data storage (SSD: 121 GB of 808 GB occupied).

This surprised me even more, which is why I tested all of the addon's other export options (sorry if the following options have different names in the English original, because I use the German version of the addon and quickly translated by hand)...

Mbox: All variants did NOT work! EML: All variants did NOT work! HTML: All variants did NOT work! PDF: Worked! Plain text: All variants did NOT work! CSV: Did NOT work! News indexes: All variants did NOT work!

I therefore ask for cross-checking (possibly by other Github users) because I can't imagine that no one has noticed this yet.

Thank you so much and best regards, NOX

cleidigh commented 11 months ago

@DaRealNOX Thank you for your detailed post. This is very odd. I will double check if something broke with a Thunderbird update. Having everything break seems crazy, but I am on it... @cleidigh

cleidigh commented 11 months ago

@DaRealNOX Ok after freaking out about some major failure, I did some spot checking with multiple export formats. So on my side things look good.

I am on Windows 10, Thunderbird v115.5.2, IETNG v14.0.1 So we do differ on the OS, however I would be very surprised if this is the issue. Note I tested under both en and de locales.

So the first thing I would ask is did this just stop working? Do you have any other addons that you can disable? Can you clear the console, do an eml export and capture the debug output and post here.

Something is obviously going wrong on your side, however, I don't believe it's a universal problem yet. Hopefully with your help we can debug it. Danke Christopher

DaRealNOX commented 11 months ago

@dressigh I'm now also on Thunderbird 115.5.2x64 (the update came during my evening time).

To answer your questions in advance:

1.) Yes, the addon suddenly stopped working. 2.) I installed the "Dark Reader" addon manually, which I uninstalled as a test. No improvement. All other extensions are Thunderbird defaults (such as the localization extensions, etc.), which apparently have nothing to do with the problem. 3.) I won't post the debug output for the following reason...

In the meantime, I started looking for it myself and was able to (aside from the fact that despite manually done about:config settings "_viewsource.editor.external = true" and "_viewsource.editor.path = C:\Program Files\Notepad++\notepad++.exe" Thunderbird still does not allow an external editor to view the source code, so once again looking for the file deep on my drive, grrrrrrr) through the Thunderbird error console to find out that there is an error or a "forgotten" program code in the exportTools.js:379:7 present.

To be precise, it concerns the code of the line here...

if (type !== 3 && type !== 5 && (IETglobalMsgFolders[i].server.type === "imap" || IETglobalMsgFolders[i].server.type === "news") && !IETglobalMsgFolders[i].verifiedAsOnlineFolder) {

...and if I interpret it correctly, the addon only allows exports from IMAP and NEWS servers, but not POP3. However, my mail server runs via POP3.

Therefore no action from the addon. And the addon does not provide a response (e.g. a Try-Catch with a corresponding error message to the user).

Sorry if I'm making you look a little old, but Try-Catch (Mozilla's developer knowledge base) is more important than ever these days to avoid such "unpredictable" situations. But beat me to death if you have it somewhere in the code but haven't used it yet (I didn't take the time to analyze the entire exportTools.js).

I hope this helps you correct it.

Greetings and good night, NOX

cleidigh commented 11 months ago

@DaRealNOX My first thought was a Thunderbird core change that caused all failures. So I checked my Thunderbird v115.4.2 POP3 setup (last pop work and that was fine. Then I got my v115.5.2 pop setup, that works fine as well so something is causing it i cannot reproduce. Can you get a clean, full console dump for an eml export and post. @cleidigh

cleidigh commented 11 months ago

@DaRealNOX Any update? @cleidigh

DaRealNOX commented 10 months ago

@cleidigh

It's a shame to see the case closed because I didn't have time to respond over the holidays.

So the problem still exists and I took the time to troubleshoot again...

I've come to the conclusion that certain characters in folder names prevent exporting (in other words, it doesn't even start!). As already mentioned, everything without an error message or notice for the user.

In my case it was the tilde ("~").

So Mr. Leidigh, please take a closer look at this. I don't have the time to reprogram or develop anything for you, except for an even deeper error analysis. As hard as that sounds.

cleidigh commented 10 months ago

@DaRealNOX It turns out that one of the components in the new web extension folder api doesn't like folders with a tilde and fails silently. The tilde is valid for both tb and os use. Given that I am sure this won't be fixed any time soon, I will have to figure out a workaround. @cleidigh

DaRealNOX commented 10 months ago

@cleidigh Good to see the case reopened. ;)

I think, in many software around the world where character replacement plays a role, there often is the option to specify a replacement character, for example the well-known "_" (underline). Making this available in the add-on settings UI and publishing it online together with the information about this circumstance would be common practice.

For example, you could set a link to a list of allowed characters/not allowed characters and their auto-replacements. And/or publish a list of bugs or “features” (like here on GitHub) or better link directly to the specific case/issue/whatever.

What is certain is that the tilde should be temporarily replaced by another character and the information should be sent to the user (preferably via a pop-up BEFORE export starts).

DaRealNOX commented 9 months ago

@cleidigh Hi! Are there any news about this issue?

cleidigh commented 9 months ago

@DaRealNOX A bug was filed against the thunderbird messageManager api. The bug has been fixed. I am trying to see when it will land. I will report when I know. @cleidigh

DaRealNOX commented 4 months ago

@cleidigh Now (due to the last update) UTF-8 is supported across the entire addon. But the error with the tilde during export is still there. It's a shame that nothing has happened for over half a year. :(