Memecode ReleasesMemecode Software Releases en-us http://www.memecode.com Copyright 2024, Matthew Allen Sun, 11 Feb 2024 13:40:21 +1100 Sun, 11 Feb 2024 13:40:21 +1100 i.Disk 2.4 Zip x64 (OSX) http://www.memecode.com/data/idisk-mac64-v2.4.zip <a href="http://www.memecode.com/data/idisk-mac64-v2.4.zip">Download</a> [0 bytes]<br>Sun, 11 Feb 2024 13:40:21 +1100<p/>Changes: <ul> <li> [Mac] Fix "AirDrop" being shown as "#error" in the list of volumes. </ul> http://www.memecode.com/data/idisk-mac64-v2.4.zip Sun, 11 Feb 2024 13:40:21 +1100 Scribe 3.x 3.9 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.9.exe <a href="http://www.memecode.com/data/scribe-win64-v3.9.exe">Download</a> [0 bytes]<br>Sat, 03 Feb 2024 09:21:37 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.9.exe Sat, 03 Feb 2024 09:21:37 +1100 Scribe 3.x 3.8 x64 (OSX) http://www.memecode.com/data/scribe-mac-v3.8.zip <a href="http://www.memecode.com/data/scribe-mac-v3.8.zip">Download</a> [0 bytes]<br>Wed, 03 Jan 2024 21:33:36 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-mac-v3.8.zip Wed, 03 Jan 2024 21:33:36 +1100 Scribe 3.x 3.8 x64 (Linux) http://www.memecode.com/data/scribe-linux-v3.8.AppImage <a href="http://www.memecode.com/data/scribe-linux-v3.8.AppImage">Download</a> [0 bytes]<br>Mon, 01 Jan 2024 14:28:53 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-linux-v3.8.AppImage Mon, 01 Jan 2024 14:28:53 +1100 Scribe 3.x 3.8 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.8.exe <a href="http://www.memecode.com/data/scribe-win64-v3.8.exe">Download</a> [0 bytes]<br>Mon, 01 Jan 2024 09:08:42 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.8.exe Mon, 01 Jan 2024 09:08:42 +1100 Scribe 3.x 3.7 x64 (OSX) http://www.memecode.com/data/scribe-mac-v3.7.zip <a href="http://www.memecode.com/data/scribe-mac-v3.7.zip">Download</a> [0 bytes]<br>Fri, 08 Dec 2023 08:05:04 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-mac-v3.7.zip Fri, 08 Dec 2023 08:05:04 +1100 Scribe 3.x 3.7 x64 (Linux) http://www.memecode.com/data/scribe-linux-v3.7.AppImage <a href="http://www.memecode.com/data/scribe-linux-v3.7.AppImage">Download</a> [0 bytes]<br>Fri, 08 Dec 2023 07:50:24 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-linux-v3.7.AppImage Fri, 08 Dec 2023 07:50:24 +1100 Scribe 3.x 3.7 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.7.exe <a href="http://www.memecode.com/data/scribe-win64-v3.7.exe">Download</a> [0 bytes]<br>Fri, 08 Dec 2023 07:23:58 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.7.exe Fri, 08 Dec 2023 07:23:58 +1100 Scribe 3.x 3.6 x64 (Linux) http://www.memecode.com/data/scribe-linux-v3.6.AppImage <a href="http://www.memecode.com/data/scribe-linux-v3.6.AppImage">Download</a> [0 bytes]<br>Sun, 26 Nov 2023 15:47:42 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-linux-v3.6.AppImage Sun, 26 Nov 2023 15:47:42 +1100 Scribe 3.x 3.6 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.6.exe <a href="http://www.memecode.com/data/scribe-win64-v3.6.exe">Download</a> [0 bytes]<br>Sun, 26 Nov 2023 15:30:32 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.6.exe Sun, 26 Nov 2023 15:30:32 +1100 Scribe 3.x 3.5 x64 (OSX) http://www.memecode.com/data/scribe-mac-3.5.zip <a href="http://www.memecode.com/data/scribe-mac-3.5.zip">Download</a> [0 bytes]<br>Tue, 21 Nov 2023 09:45:36 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-mac-3.5.zip Tue, 21 Nov 2023 09:45:36 +1100 Scribe 3.x 3.5 x64 (Linux) http://www.memecode.com/data/scribe-linux-v3.5.AppImage <a href="http://www.memecode.com/data/scribe-linux-v3.5.AppImage">Download</a> [0 bytes]<br>Tue, 21 Nov 2023 09:11:34 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-linux-v3.5.AppImage Tue, 21 Nov 2023 09:11:34 +1100 Scribe 3.x 3.5 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.5.exe <a href="http://www.memecode.com/data/scribe-win64-v3.5.exe">Download</a> [0 bytes]<br>Tue, 21 Nov 2023 08:10:43 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.5.exe Tue, 21 Nov 2023 08:10:43 +1100 Scribe 3.x 3.3 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.3.exe <a href="http://www.memecode.com/data/scribe-win64-v3.3.exe">Download</a> [0 bytes]<br>Wed, 08 Nov 2023 07:53:21 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.3.exe Wed, 08 Nov 2023 07:53:21 +1100 Scribe 3.x 3.3 x64 (Linux) http://www.memecode.com/data/scribe-linux-v3.3.AppImage <a href="http://www.memecode.com/data/scribe-linux-v3.3.AppImage">Download</a> [0 bytes]<br>Sat, 04 Nov 2023 20:32:00 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-linux-v3.3.AppImage Sat, 04 Nov 2023 20:32:00 +1100 Scribe 3.x 3.2 x64 (OSX) http://www.memecode.com/data/scribe-mac-v3.2.zip <a href="http://www.memecode.com/data/scribe-mac-v3.2.zip">Download</a> [0 bytes]<br>Tue, 10 Oct 2023 08:31:23 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-mac-v3.2.zip Tue, 10 Oct 2023 08:31:23 +1100 Scribe 3.x 3.2 x64 (Windows) http://www.memecode.com/data/scribe-win64-v3.2.exe <a href="http://www.memecode.com/data/scribe-win64-v3.2.exe">Download</a> [0 bytes]<br>Sun, 08 Oct 2023 09:06:24 +1100<p/>v3.10 Changes: <ul> <li> [Linux] Made the DND drop handler more asynchronous to allow it to collect the data it requested before giving it to the app. Seems more modern X11 implementations need this way of doing things to work correctly. <li> Fixed dropping a calendar event file onto the calendar view not being shown or saved. <li> Fixed marking email read not removing them from the "new mail" list which in turn drives the flashing mail icon. <li> New scripting function: folder.Create() which will return a new object suitable for storing in that folder. Taking into account the backend and folder's item type (mail/calender/contact etc). <li> New scripting function: folder.Add(thing) which adds a thing to the folder. <li> New scripting member: thing.Object returns the LDataI* for the thing. <li> Added new bitwise scripting operators: &amp; | ^ ~ << >> <li> Started working towards a popup notification if there is errors during filtering. If filters have configuration issues currently it might print something to the console, but the user never sees anything. And is unlikely to notice an error. <li> Made the panel open/close buttons scale a bit with screen DPI. </ul> <br> v3.9 Changes: <ul> <li> Mac: fixed the DST UTC/Local conversion in some cases. <li> Moved the finder window worker out of a thread and to GUI thread time slices to fix it not working. <li> Fixed a crash when the options file has empty Message elements. Not sure how you can get those with normal operation but at least it doesn't crash if you do. The message element stores information about an email on a POP server, ie the time stamp of when it was last seen, so Scribe can delete it after 'n' days (assuming the user selected that option in the account receive settings). </ul> <br> v3.8 Changes: <ul> <li> The 'delete as spam' button now uses the spam folder path configured in the system folder options (in File -> Manage Mail Stores) rather than the hard coded "/Spam". <li> Fixed the shutdown of progress dialogs. This was in the context of copying items using Cmd+C/Cmd+V and the dialog that shows up when you do that. <li> SSL connections can now be cancelled instead of waiting for timeout. This helps in shutting down promptly instead of waiting for an image download that is stuck on a URI that won't load. <li> Made the filter UI elements adjust a little better to the screen DPI scale. Mainly for high DPI screens. <li> Ongoing fixes to moving email between mail3 and imap stores. Getting email to appear and disappear at the right times in this new async way of doing stuff. <li> Fixed the "..." button in the filter actions to update the editbox properly when the user selects something. E.g. browsing for a folder path or selecting a colour. <li> Fixed a bug where an IMAP append command didn't put a new email object in the destination IMAP folder. <li> Fixed a recently introduced mime encoding bug. <li> Fixed the crash when changing the UI font size in the appearance settings. <li> Fixed the incoming/outgoing etc checkboxes on the Filter objects in the list view not updating promptly. </ul> <br> v3.7 Changes: <ul> <li> Fixed the Dom.txt file being empty. <li> Added an optional 'ShortCut' parameter to the AddToolsMenuItem scripting function. <li> Fixed a bunch of async bugs related to moving items between different back ends (e.g. imap <-> store3). <li> Fixed a bug where multiple simultaneous new IMAP email would duplicate one of the messages many times, rather than download the different content. It was quite difficult to nail down. But I'm so glad it's fixed now. <li> Fixed mail moved from IMAP to a currently selected Store3 folder not appearing in the list view. <li> Fixed deleting webdav entries so that it's reflected in the UI. Previously the object wouldn't disappear after deletion. </ul> <br> v3.6 Changes: <ul> <li> Fixed crash in the display of Contacts with a timezone. An API had changed and the caller had been updated to take that into account. And the compiler didn't catch it either. </ul> <br> v3.5 Changes: Wherein we do some more testing and find more bugs... <ul> <li> In the case where there are remote ical feeds and/or webdav calendar folders loaded in the calendar view, the display can something wait for long network load times. This is now fixed. It'll display whatever it has right now. <li> Fixed not being able to create and delete Mail3 calendar events in the calendar view. <li> Fixed new blank events hanging around after selecting a time in the calendar view and then clicking "Cancel". <li> Fixed a crash when using the Attachment context menu "Save As". </ul> <br> v3.4 Changes: <ul> <li> Fixed the calendar view window getting stuck in a loop and crashing. <li> Fixed not being able to show / hide remote calendar sources. </ul> <br> v3.3 Changes: <ul> <li> Linux: fixed a lot of GTK3 drawing and screen update bugs that only showed up in modern releases like Ubuntu 22.04. They aren't all fixed, but the major ones are. <li> Linux: figured out the cause of the unreasonable file size. A "-g" had crept into the release flags, and surprisingly trying to 'strip' the binary didn't work. Anyway it's now fixed and the release size is back down to "normal". <li> Linux: Fixed the appimage boot up not to fail on saving a non-existant options object. Also the logging of errors is improved. <li> Various async fixes to moving and copying items around. <li> Fixed the scroll position affecting the context menu of filter condition nodes. </ul> <br> v3.2 Changes: <ul> <li> Fixed bayesian filter rebuild changing mail to unread incorrectly. <li> Fixed bayesian filter rebuild getting "stuck" and not processing mail3 email. <li> Fixed bayesian filter rebuild all function not actually writing out the final btree indexes. Sigh. <li> Fixed the openssl connections leaking socket handles when the connection fails. Eventually this would cause things like "too many files open" errors on Linux. <li> Added support for more Lgi config settings. Firstly there is Fonts.PointSizeOffset that will adjust the point size of all the system fonts used by Scribe. Then you can also set things like Fonts.SystemFont to actually override the font face and point size rather than use the system supplied font. See the actual lgi.conf file for the other tag names. <li> Linux: Fixed the install and use of a private OpenSSL copy (v3.2.0 built by me) if the system one isn't suitable. It's unbelievable that the libssl3.so that ships with Ubuntu 20 is missing important export symbols and is basically unusable. But that's Linux for you. <li> The folder select dialog now has a filter edit box. Also double clicking an item selects that path and ends the dialog (ie same as clicking 'ok'). <li> Updated the scripting syntax help page with some updated type names, information about casting values and some new DOM member fields. <li> Added 2 new scripting functions to convert between colour space integers (<a href='https://phab.mallen.id.au/source/lgi/browse/default/include/lgi/common/ColourSpace.h'>LColourSpace</a> in Lgi) and strings: ColourSpaceToString, StringToColourSpace. <li> Updated the release notes link on the title page to point to this page. <li> Fixed importing MBOX or EML not having the message body when the file just has bare LF line endings (not the standard CRLF). <li> Refactored the import / export API to be asynchronous. Particularly for folders which can take a longer amount of time. Having the api support callbacks when the operation is finished and return a "delayed" status to the caller is excellent. This will also tie in nicely with the Haiku branch work. Which is mostly about making all the things asynchronous. <li> Fixed the item filter to correctly show any coloured items when clicking "any" in the colour filter. Previously it would only show any of the selected colours, and colours outside that range were not shown. Ie if you set a colour via a script. Which by the way uses 32 bit ARGB (0xAARRGGBB). <li> Fixed dragging a vcalendar/vcard files to a webdav folder. Previously it would complain it's the wrong item type. <li> Fixed a <a href='http://memecode.com/forums/view.php?id=57530'>crash</a> when cancelling the account preview. Repo: click 'refresh' on the account preview and then 'cancel' before it completes. <li> Merged the 'Haiku' branch into the main dev branch. This will create some instability in the short term. <li> Fairly significant rewrite of the MBOX import parsing. Both to make it faster and more accurate. <li> Implemented import / export for contact group objects. <li> ContactGroup: Fixed 'delete' command on the context menu. <li> ContactGroup: The 'date modified' field now also appears in the item preview. <li> Rewrote the scribe export function to use the current way of processing bulk data. Gave it a nice new <a href='http://memecode.com/scribe/images/export/results-dialog.png'>completion dialog.</a> <li> Added ability to drop files onto the folder's list area on the main window. This imports them into the currently selected folder. Previously you had to drop the file onto the tree item. That still works. <li> Various scripting functions that show UI <a href='http://memecode.com/forums/view.php?id=57543'>now use callbacks</a>. <li> Help files updated to remove references to InScribe. <li> Calendar events: removed "move to ..." context menu entries that don't have name or are writable. <li> Calendar view: clicking to create an event and then cancelling the UI now deletes the orphaned event (that was never saved). And also doesn't crash anymore. Which is always nice. <li> Calendar view: added mouse wheel support to scroll vertically. <li> Calendar view: fixed rendering of multi-day events in week view. <li> Windows: The text display code now skips unicode variation selector characters. <li> Added code to string new lines from the mail subject before displaying the text in the folder list view. <li> Fixed the handling of malformed HTML in the viewer. Specifically when the = is missing between the attribute name and value. <li> Removed script and style element content from the BodyAsText mail field that is used to display the preview text. Ie when Html is converted to text. <li> Changed the starting day of the week in the appearance options now updates the current calendar view properly. <li> Fixed a bunch of implementation bugs in the RFC 2047 code. <li> The console now also catches a couple of trace messages sent before it's initialization. Particularly the path to the Lgi.json file that Scribe will use for configuration of Lgi options. This makes it a little more discoverable. <li> Some fixes to the printing of emails. Cancelling the printer selection dialog no longer results in an error message. Also for HTML printing the page number(s) are now correctly interpreted as one based indexing. <li> Made the shutdown dialog font size sensitive. Also added all it's strings to the resource file so it's translatable. Fixed some functionality issues too. <li> Fixed plain text attachments getting used as the text alternative to the HTML in a MIME message. There is also a unit test to make sure that doesn't happen again. <li> Windows: Added a menu under 'Tools' to delete all the registry settings related to Scribe. </ul> v3.1 Changes: <ul> <li> [Windows] Fixed the image libraries not loading. <li> Fixed finding the Resource folder. <li> Fixed the check software update. </ul> <br> v3.0 Changes: <ul> <li> Removed all propriety code, like the OAUTH client secrets and anything related to InScribe keys or i.Scribe limits. <li> Set up a mercurial repository to host the source: <a href='https://phab.mallen.id.au/source/scribeopensrc/'>https://phab.mallen.id.au/source/scribeopensrc/</a> <li> The windows build is switching to vs2019, and there will be some changes to the way the redistributable is installed if missing. <li> Scripting: <ul> <li> New callback type: OnAfterMailReceive(App, Email). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57457'>App.GetUri</a>(Uri, CallbackName, UserData). <li> New App object method: <a href='http://memecode.com/forums/view.php?id=57456'>App.SearchHtml</a>(Html, SearchExpression, ResultExpression). <li> New Mail object method: <a href='http://memecode.com/forums/view.php?id=57456'>Mail.SearchHtml</a>(SearchExpression, ResultExpression). <li> Fixed handling in some contexts of expressions that use array arguments. <li> New Mail object method: Mail.DeleteAsSpam(). Fairly self explanatory. </ul> <li> Imap server UID field now sorts in integer order (instead of the default string). <li> Pop preview button in the tool bar now honours the order of accounts listed in the options. It'll preview the first pop3 account. If you want to change the default make the desired pop account first in the list with the arrows in the options dialog. <li> When an email is marked as spam, the UID is stored in the account for deletion on the next POP3 connection. However if the user elects to open the preview window and change the action from "delete" to "download" the software previously would still just delete the email. Which is just incorrect. Now it removes that email's UID from the spam list and allows it to download normally. While fixing that I also made change to the spam UID list save correctly by marking the list as dirty. <li> Added entity encoding for less than and greater than characters when wrapping and quoting HTML replies/forwards so that the HTML edit control displays them correctly. <li> Fixed the set read/unread on the mail context menu. <li> Html editor: Added right click on URL to launch in Browser. </ul> <br> http://www.memecode.com/data/scribe-win64-v3.2.exe Sun, 08 Oct 2023 09:06:24 +1100 i.Disk 2.3 Hpkg x32 (Haiku) http://www.memecode.com/data/idisk-haiku32-v2.3.hpkg <a href="http://www.memecode.com/data/idisk-haiku32-v2.3.hpkg">Download</a> [0 bytes]<br>Tue, 15 Aug 2023 20:16:46 +1000<p/>Changes: <ul> <li> Added support for FTP security modes: SFTP and FTPS. <li> Fixed some issues with the options not being persisted properly. <li> Added <a href='https://www.haiku-os.org/'>Haiku OS</a> support. It won't have all the features of the other builds just yet. But it's a start. </ul> http://www.memecode.com/data/idisk-haiku32-v2.3.hpkg Tue, 15 Aug 2023 20:16:46 +1000 i.Disk 2.3 Zip x64 (OSX) http://www.memecode.com/data/idisk-mac64-v2.3.zip <a href="http://www.memecode.com/data/idisk-mac64-v2.3.zip">Download</a> [0 bytes]<br>Fri, 28 Jul 2023 09:18:15 +1000<p/>Changes: <ul> <li> Added support for FTP security modes: SFTP and FTPS. <li> Fixed some issues with the options not being persisted properly. <li> Added <a href='https://www.haiku-os.org/'>Haiku OS</a> support. It won't have all the features of the other builds just yet. But it's a start. </ul> http://www.memecode.com/data/idisk-mac64-v2.3.zip Fri, 28 Jul 2023 09:18:15 +1000 i.Disk 2.3 Installer x64 (Windows) http://www.memecode.com/data/idisk-win64-v2.3.exe <a href="http://www.memecode.com/data/idisk-win64-v2.3.exe">Download</a> [0 bytes]<br>Fri, 28 Jul 2023 09:02:06 +1000<p/>Changes: <ul> <li> Added support for FTP security modes: SFTP and FTPS. <li> Fixed some issues with the options not being persisted properly. <li> Added <a href='https://www.haiku-os.org/'>Haiku OS</a> support. It won't have all the features of the other builds just yet. But it's a start. </ul> http://www.memecode.com/data/idisk-win64-v2.3.exe Fri, 28 Jul 2023 09:02:06 +1000