Release Notes
Mimestream is under continuous, active development. Our release history is published here to keep our users informed of improvements made.
Version 1.4.2 Latest Stable Version
🔧 Fixed
- (macOS 15) Slow loading of message content in some conversations
- (macOS 15) Crash when loading certain messages
Version 1.4.1
🔧 Fixed
- Gmail API errors shown when moving, archiving, or labeling messages.
- (macOS 15) Broken Gmail Filters created due to smart quote substitution
Version 1.4.0
Mimestream has been updated for compatibility with macOS 15.
✨ Improved
- More efficient address autocomplete suggestions
- Faster message rendering in long threads
- More tolerant handling of transient errors reported by the Gmail API
🔧 Fixed
- (macOS 15) Windows are not correctly centered
- (macOS 15) Can't click on a topic in the feedback form
- (macOS 15) Tooltips no longer work in the compose window
- (macOS 15) The "Send" toolbar icon in the compose window shows up as "Send Again"
- (macOS 15) Crash when typing some characters into the Label / Move-to popover token field
- Idle open compose windows consume CPU cycles
- Font size popup can flicker when changing value
- Unread messages can be incorrectly aligned in the filter results preview list
- Images don't appear in print output after being loaded manually
- Duplicate diagnostics files can be attached to Feedback emails
- Deep links can be pasted incorrectly into other apps like Reminders
- Creating a label with a reserved name can result in an error
🧹 Cleanup
- New architecture for the compose window (for SwiftUI compatibility)
- Changed Twitter to X in the onboarding screens
Version 1.3.8
✨ Improved
- Sending feedback now shows a confirmation screen with recovery suggestions
🔧 Fixed
- Can't click the Archive button in standalone windows opened from deep links
- The template insertion popover sometimes doesn't appear
- Drag and drop in the favorites list sometimes drops at the wrong place
- Media files attached to feedback reports sometimes don't get sent
- Incorrect "Update Available ()" message sometimes shown in the message list header
- Software updates window doesn't transition release notes from light to dark
🧹 Cleanup
- Updated list of blocked trackers
Version 1.3.7
✨ Improved
- Special support for Omnifocus as a "Send Link To" destination
- Support snooze suggestions prompts like "1 week" and "in 2d"
- Faster address autocomplete suggestions
🔧 Fixed
- Standlone windows opened from deep links don't show labels
- Unable to move messages opened in standalone windows
- Vacation response editor's end date doesn't update correctly
- First compose window doesn't show "Recently Addressed" suggestions
- Random alert that "account is a required value"
- Tab characters in a `mailto` link's body are converted to spaces
- Error responding to invitations when email address case doesn't match
- Filter creation with subject criteria shows incorrect preview results
- Expired licenses can get into an infinite refresh loop
- Attachments are auto-saved in the downloads folder on drag
- Duplicate "Draft" text in participant lists shown in the Sent folder
- Quick looking attachments in the compose window sometimes doesn't work
- Crash when syncing messages in the background
🧹 Cleanup
- Improve SwiftUI-based error reporting with recovery suggestions
- Tweak alignment of menu bar extra text
- Additional logging to track down problems in the feedback window
- Fixed incorrect drop target outline in the compose window's header
Version 1.3.6
🔧 Fixed
- Web views are leaked after using the "Open With" context menu
- Automatic linkification doesn't work on some types of links
Version 1.3.5
🔧 Fixed
- (Regression) URL tool tips stop working after a while
Version 1.3.4
🔧 Fixed
- (Regression) Print operations never finish loading messages
Version 1.3.3
This update improves compatibility with macOS 14.4+, fixing an issue where the conversation view stops responding to clicks.
✨ Improved
- New architecture for rendering messages (recycling web content processes to reduce memory usage)
🔧 Fixed
- (macOS 14.4+) Conversation view sometimes stops responding to clicks
- “Find Next” doesn't work after re-selecting a conversation
- The menu items for changing the message list filter don't work
🧹 Cleanup
- Conversation view find bar shouldn't appear on placeholder views
- Conversation view find bar shouldn't have the "Replace" option
Version 1.3.2
🔧 Fixed
- Diagnostic logs sometimes fail to collect
- Changing the default email client sometimes doesn't work
- Prompt to report crashes sometimes doesn't appear
- Send button may not work on draft with previous sync error
- Deep links may not work when account case doesn't match
- Message list contact names now always follow the email header to match Gmail
Version 1.3.1
🔧 Fixed
- Selected message isn't restored when switching profiles
- Clicking on a notification no longer automatically selects the message
- Profile tabs may unexpectedly render as a popup
Version 1.3.0
Deep linking to messages
Sometimes it can be helpful to have a link back to a specific email message, so you can easily reference it from a document, task, or other app. Although Mimestream has long supported copying the Gmail URL, Mimestream now supports private deep links that will open directly in Mimestream. If you don’t have Mimestream installed on a system, the deep link will offer to open the message in Gmail instead. Deep links are private, and can’t be shared with others.
With the feature enabled, use the message list context menu to choose “Copy Link”. Alternatively, use the keyboard shortcut ⌘
C
to copy the deep link.
Block address suggestions
Mimestream’s address suggestions factor in both frequency and recency, and quickly adapt to changes in addressing habits. However, if there is a case where you’d like to prevent an address from being suggested, Mimestream now supports an address suggestion blocklist.
To manage the blocklist, open the app’s Settings window, click on the Composing tab, click “Manage Address Suggestions Blocklist…”, and add or remove addresses from the presented sheet.
✨ Improved
- Overhauled sync error handling in the compose window with new option to retry if an error is encountered
🔧 Fixed
- Drafts can fail to sync with “Gmail service error: Precondition check failed”
- Crash after modifying a draft that previously had a sync error
- Crash shortly after deleting a message or draft that was selected in the conversation view
- Standalone windows aren't restored after more than one relaunch
- When printing or exporting as PDF, image attachments may render overlapped with message text
- Sidebar settings checkboxes don't visually toggle when clicked
- Status tray can get stuck showing "Sending…" even after a message has finished sending
- Sync errors may be presented multiple times in the compose window
🧹 Cleanup
- Allow dropping screenshots anywhere in the feedback form, not just the attachments table.
Version 1.2.6
🔧 Fixed
- Crash may occur after selecting a specific message in the conversation view
- Crash if some system fonts are unavailable
- Replying to a message you sent yourself doesn't populate the To field
Version 1.2.5
✨ Improved
- Additional tuning of address autocomplete suggestion rankings
🔧 Fixed
- Crash during background syncing in some circumstances
- Crash when viewing message with event attachments in some circumstances
- Crash when switching messages in some circumstances
- Child labels can be renamed to an empty string
🧹 Cleanup
- Sanity checks added to trap a rare problem with reply message selection
Version 1.2.4
✨ Improved
- Autocomplete suggestions improved to show more relevant addresses first
- Autocomplete suggestions now support company names
- Redesigned "Add Favorite" sheet
🔧 Fixed
- Autocomplete suggestions disappear after entering "@"
- Autocomplete suggestions don't support word tokenization for results from Google Contacts and Other Contacts
- Mentions shouldn't be triggered by a numeric prefix (e.g. "+1")
- Filter criteria for "Doesn't have" doesn't work correctly with spaces or commas
- After app launch, duplicate windows shown for drafts with errors
- App may crash during a cache reset
- Feedback form goes blank on double-click
🧹 Cleanup
- Deleting a draft doesn't show the correct alert message
- Bug report emails shouldn't be localized
Version 1.2.2
🔧 Fixed
- Crash may occur when background sync activity refreshes the message list model
- No autocomplete suggestions for addresses without display names
- No autocomplete suggestions for search terms with periods in them
🧹 Cleanup
- Support overriding the polling interval (for specific user support scenarios)
Version 1.2.1
Improved autocomplete with better Workspace Directory integration
Address autocomplete has been improved to work across address components – for example, typing “tim apple” will now suggest “Tim Cook – tim@apple.com”. Additionally, the integration with the Google Workspace Directory takes advantage of new Google People API functionality, and presents the full name associated with any directory-based suggestions.
✨ Improved
- Redesigned the “New Label” sheet to make nesting under a parent label easier
- Label search now splits words by underscore (e.g. "B" will find "A_B")
🔧 Fixed
- Occasional crash after sending emails (due to Google People API changes)
- Crash when loading certain messages with .ics attachments
- Screenshots sometimes fail to attach in the app’s feedback form
- The “Report Crash?” window may be clipped in some locales
🧹 Cleanup
- The “Report Crash?” window no longer requires a description to submit
- Layout shifts in the activation window when the progress spinner is showing
Version 1.2.0
Add non-invitation events to your calendar
Mimestream has long supported responding to calendar invitations inline, but 1.2 now supports adding non-invitation events (like train/flight tickets, dinner reservations, etc.) directly to your Calendar.
Setting to control how attachments are opened
On the “Viewing” tab of Settings, there’s a new “Open Attachments In:” option. Mimestream defaults to opening attachments in an internal folder, like Apple Mail. However, for users that frequently edit opened attachments and prefer a workflow more like using Gmail in the browser, it’s now possible to open attachments in the Downloads folder instead.
Support for macOS 14's "Predictive Text" completions
macOS 14 Sonoma introduces a system-wide “Predictive Text” feature, and Mimestream’s compose window has been updated to work with this new feature. Predictions appear in gray text, and pressing tab or space completes the insertion. Predictive text completions are usually short and often just a single word.
New form for submitting feedback
We love hearing feedback from our users, and 1.2 makes this even easier with a new “Feedback form”. Once a category has been selected, relevant logs can be collected, and prompts appear to manually attach any potentially private information (like message content). All content can be previewed before being submitted via email, and a copy remains in your Sent folder for your records.
Prompt to report app crashes
If the app crashes unexpectedly, users that have opted in to the “Latest” software updates will be prompted to submit a report directly to Mimestream, which can help us fix the issue. The crash report can be previewed before being submitted via email, and a copy remains in your Sent folder for your records.
✨ Improved
- Revised trial UI with ability to temporarily dismiss when expired
- Proactively prevent attaching files that Gmail will disallow at send-time anyways
- Recover when downloaded attachments are manually deleted from the app's container
- Better compatibility of sent email with some spam filters
- Better error reporting of calendar banner errors
🔧 Fixed
- (macOS 14) Window restoration doesn't work correctly
- (macOS 14) Syncing sometimes gets stuck for a few minutes after launching the app
- Files with an unknown MIME type result in an error when being attached
- Link to view an event invitation in Google Calendar may open in the wrong account
- The “Finish Sending?” alert keeps showing even after a draft was permanently deleted
- Transient clock skew errors shouldn't be proactively presented to users
- The conversation header can show an incomplete set of labels if the conversation has event invitations
- Some event invitations show “error extracting required information”
Version 1.1.5
✨ Improved
- Multi-day events are now supported in the Calendar invitation banner
🔧 Fixed
- The “Move to Applications” prompt incorrectly appears when launched from ~/Applications
- Crash when deselecting calendars from the Agenda view
- Contacts don't show their Apple Contacts photo if there is a Google “Other Contact” for them
- Assigning a gray color to a Label doesn't work
🧹 Cleanup
- Improved the Filter Actions UI to clearly show it can be scrolled
Version 1.1.3
✨ Improved
- The Calendar banner now supports invitations received on Gmail aliases
- Improved “Safe Mode” with a cache reset option
- Prompt to automatically move the app to /Applications
- Snoozing (a “Labs” feature) is now supported from the standalone viewer window
- Better error explanations for certain Oauth errors (e.g system clock skew)
🔧 Fixed
- (macOS 14) White line artifact below the Profiles tab pane
- (macOS 14) Empty signature popup appears in the compose window
- (macOS 14) Calendar banner agenda doesn't show Apple Calendar events anymore
- Calendar banner RSVP buttons shouldn't be shown for events in shared calendars
- Calendar banner RSVP buttons sometimes don't stay selected after a click
- Race condition when renaming a parent label can result in corruption of child label names
- Aborting a label rename still results in unnecessary nanme updates being pushed to the server
- Automatic confirmation code input logic gets confused by stale or delayed emails arriving
- Search token menus sometimes appear on incorrect screen
- Crash when pasting specific text into the search field
Version 1.1.2
This update improves Mimestream’s compatibility with macOS 14 Sonoma, and fixes other assorted bugs.
🔧 Fixed
- (macOS 14) Tokens sometimes don't draw in address fields
- (macOS 14) The entire sidebar sometimes flashes during syncing activity
- (macOS 14) Editing Gmail Filter fields can insert smart quotes, creating invalid filters
- (macOS 14) Hoving over Labels with colors in the Menus can cause them to turn black
- (macOS 14) Choosing a mention suggestion doesn't actually add the address
- App goes into a crash loop because the Gmail API is now occasionally not returning the Starred label
- Control-click on some areas of message list cells doesn't work
- Mentions sometimes don't appear if typed mid-sentence
- The Mentions suggestions menu is incorrectly positioned when app text size preference is large
- Pressing enter inside a list element after an inline code doesn't continue the list
- Text size adjustments via Command +/- don't always work correctly
- Attachments dragged from the compose window are locked
- Message list header unread/spam/trash counts can go negative
🧹 Cleanup
- Reset trials to allow returning users to re-try the app
Version 1.1.1
🔧 Fixed
- Replying to messages with localized “Re” or “Fwd” prefixes may split the thread
- Temporary text size adjustments via Command +/- don’t work correctly if the Text Size setting is very large
Version 1.1.0
Support for Google's Advanced Protection Program
We’re thrilled to announce that Mimestream has been approved by Google for use with the Advanced Protection Program. Although we don’t recommend this for most users, support for this program has been a top request from security-conscious and enterprise users. For more information, read our blog post.
✨ Improved
- Improved performance and accuracy hiding redundant quoted text
- Calendar invitation banner now supports optional attendees
- Support for even larger “Text Size” choices in Settings
- Normalization of subject prefixes to prevent prefix stacking
- Ability to copy link text from the context menu
- Manually choosing “Check for Updates…” now overrides update settings and finds the latest update
- Improved ability to “Remove Formatting” from text
🔧 Fixed
- Some messages with lazy-loading images can't be fully scrolled
- Some messages print with their body starting on the second page
- Exported PDFs are cut off on the right side
- Autofill doesn't show contacts from the Google Workspace Directory
- Duplicate sign-in prompts after trying to reconnect a logged-out account
- The status tray animation is too tall
- Signatures don't get inserted when forwarding selected text only
- Profile tab unread counts are sometimes incorrect for accounts without inbox categories enabled
- Accounts may use the wrong display name when the account has multiple names associated
- Text copied from the search field has white color style (in dark mode)
- A shortcut for "Report Spam" is missing in Apple Mail shortcuts mode
Version 1.0.5
🔧 Fixed
- (macOS 13.3+) Beeping when scrolling conversations by holding down the up or down arrow keys
- Pressing Shift+Return inside a list inserts two newlines
- Failure to sync deletion of all filters from Gmail
- Reply-To headers aren't respected for messages sent from yourself to yourself
- Adding images to templates is allowed but doesn't work
- Unnecessary scrollbar shown in filter criteria text fields
- Filter criteria text fields shouldn't automatically substitute smart quotes
Version 1.0.4
🔧 Fixed
- Large message bodies are sometimes shown as a .html file attachment instead of inline
- Search sometimes shows unrelated results from an earlier query
- Unable to remove numbered or bulleted lists
- Calendar banner fails to load when the system time format doesn’t match the current locale default
- Replying to a sent message with a “Reply-To” header should reply to the original recipient
- Embedded videos sometimes automatically play
- The “Insert Variable:” label in the Templates editor isn't correctly vertically aligned
- “Personal” appears instead of “Primary” in the Categorize-As pop-up when editing Filters
🧹 Cleanup
- Additional logging for the account authorization process
Version 1.0.3
🔧 Fixed
- Regression: Mentions sometimes aren't suggested when typing
🧹 Cleanup
- Holding Option and clicking "Sign in with Google" opens the browser directly instead of using Authentication Services
Version 1.0.2
✨ Improved
- Profile tabs now show the non-primary unread count as a dot rather than a count
🔧 Fixed
- Sharing PDFs from Finder adds a random UUID to the filename
- Error when sending 3+ drafts composed offline
- Rare race condition may cause a prior version of a draft to be sent
- Crash when clicking on the “& 1 more…” button to show labels in the compose window header
- Custom template variables with dashes in their name don’t get substituted
- Slow typing in long paragraphs with “@handle” text earlier in the paragraph
- Double-clicking the “Activate Existing License” button results in an an activation failure
- Markdown substitution for inline code doesn’t work when backtick is inserted at start (rather than end) of words
🧹 Cleanup
- Improved clarity of the still-sending quit alert
- Reduced the intensity of the message selection highlight
Version 1.0.1
We’ve made it easier to activate Mimestream! A minor update was made to our privacy policy to support this functionality.
✨ Improved
- Automatic license lookup using hashed account addresses
- Simplified the manual license activation UI
🔧 Fixed
- Messages are marked as read upon click, even when using the Mark-read-Manually setting.
- Activation fails for some Macs with replaced logic boards
- The expired version update check can go into an alert popup loop
- Snooze time suggestions are incorrect, always 8AM
- Template variables: “Parent Message: Time sent” inserts the wrong value
- Template variables: Only prompt once for each unique custom variable
- Filters: Can't choose the “Apply label” option if the account has no labels
Version 1.0.0
Today, we’re thrilled to announce the public launch of Mimestream 1.0 and the conclusion of our beta program. This milestone release is packed with new features and improvements, and is our biggest update ever.
Mimestream 1.0 offers a 14-day free trial before requiring purchase. Please see our pricing for more details.
Create and Manage Server-Side Gmail Filters
Automatically organize your incoming email by creating and managing your Gmail filters from within the app.
Getting started is as easy as selecting “Filter Messages Like These…” from the context menu of a message. You can leverage the full power of Gmail’s filters and create complex criteria and actions. In addition, you can go to the app’s settings and click on the “Filters” tab to manage all of your account’s pre-existing filters.
Filters created in Mimestream are synchronized with Gmail, and are true server-side Gmail filters. They run even when your Mac is offline.
Separate Accounts into Profiles like “Work” and “Personal”
Sometimes a “Unified Inbox” makes the most sense, but sometimes it’s better to have fully separate spaces for work and personal accounts. To give you the best of both worlds, we’ve built “Profiles”, which allows you to group accounts together into separate profiles.
The default profiles are simply “Personal” and “Work, but you can customize these if you’d like. Just click “Manage Profiles” in the Profile-selector popup, and you can create new profiles, or edit existing ones and assign custom icons, colors, and even a notification / working-hours schedule (see below).
Working Hours / Notification Schedules
With many people working from home and always-connected, work-life balance is more important than ever these days. To help you achieve this, we’ve added “Notification Schedules”, so that you can set active hours for each profile.
With notification schedules, you can configure your “Work” profile to stop sending you notifications when your workday is over, and the dock unread count will get adjusted to omit the work accounts, too. Of course, if your personal profile doesn’t have a schedule, you’ll continue to receive personal account notifications. The next morning, when your schedule resumes, you’ll get a batch of all the notifications that were waiting for you, and your dock badge count will go back up.
Focus Filters
New in macOS 13, Focus Filters allow you to configure how apps present notifications while in a Focus. Mimestream now includes the ability to specify which Profiles can deliver notifications while in a specific Focus, so you can have greater control over tuning out unwanted distractions.
Account Colors in the Message List
If you prefer using the Unified Inbox, we’ve added Account Colors to make it easier to spot messages from different accounts. After selecting a color for each account in the app’s Settings, a color swatch is shown as an icon on every message, and also used as the default color of labels in the sidebar, to help you keep track of what account you’re working with.
Manage your Gmail Vacation Responder
When you’re ready to disconnect and take a vacation, or if you’re just traveling for work, you can easily edit and activate your Gmail Vacation Response from right within Mimestream!
Vacation responses are synchronized with Gmail, and the response is sent by Gmail’s servers even when your Mac is offline. They can be customized to start and end on specific dates, and also only be sent to Google Contacts or to people within your Google Workspace organization.
Label and Star Drafts
Sometimes it’s important to organize your sent messages. Now, you can easily label or star messages directly in the compose window. For instance, you might label a message with a project-specific label, or you might star a message to remember to follow up on it.
If you’d like to use these features, you can manually add them to your compose window by control-clicking the toolbar, clicking Customize, and dragging the Label and Star items in. Alternatively, labeling and starring can be done from the main menu, using the shortcuts ⌘L
for labeling and ⇧⌘L
for starring.
Menu Bar Extra
Quickly check your unread messages to see if you missed anything important with our handy new menu bar extra. Click on a message to open the Mimestream main window directly selected on the message. This feature can be enabled from the “General” tab of the app’s settings.
Synced Colors for Google Contacts
Mimestream already can show you the public Google profile photo of users you’re emailing, as long as you’ve enabled the Google Contacts service. However, for users that don’t have a public profile photo, we’ve now brought syncing of the Google-assigned monogram image color to the app. The color used for a contact’s monogram image will now match what you see in Gmail and the Gmail iOS app, helping with a sense of recognition for who you’re communicating with.
Template Variables
Write templates with predefined or totally custom variables. For instance, you can automatically include the recipient’s name with text like “Hi {{ recipient.first_name }},” or have custom fields that prompt you for values like “Quantity: {{ custom.quantity }}”.
Select specific messages in Conversation View
Sometimes, email threads can get long and there can be a lot of participants. Although Mimestream has always supported clicking on the reply button in the header of a specific message, now the conversation view supports the notion of a “selected message” that allows you to just click on a message (or navigate with keyboard shortcuts) and use other standard shortcuts like ⌘R to reply to them.
🚀 Other New Features
- Support for decoding application/ms-tnef (winmail.dat) attachments
- Support for paid licensing and activation
✨ Improved
- Setting to choose “Stable” or “Latest” app updates
- Setting to choose the default email client
- Banner prompt to make Mimestream the default email reader
- Crash-loop detection and a “safe mode” to check for available updates
- Support “Open in Background” for browsers other than Safari on macOS 13.2+
- Confirmation prompt before enabling Importance markers for the first time, to avoid user confusion
- Searches now always start scoped to All Mail
- Menu item and shortcut to load remote images
- Refreshed UI for the calendar invite banner's agenda section
- Refreshed styling of code blocks
- Reply compose windows now have an "Include original attachments" button in their header
🔧 Fixed
- Delayed unsnooze operations after system sleep
- Incorrect snooze suggestion on Mondays for “Next Week”
- The compose window’s signature reverts to the initial signature when the “insert signature before quoted text” setting is changed
- Messages with illegal Content-Type headers don't display content
- Pressing right-arrow should exit inline code at the end of a line
- Pressing tab at the end of a mention or link should exit link
- Multiple compose windows may open when sharing more than one file
- Broken images can be posted into the local signature editor
- Signature popup isn't clickable when the window size is small
- Copying the conversation title can include UI elements
- New Gmail URL format (the previous format is no longer working reliabily)
- Parentheses in names should be ignored when generating initial monograms
- Messages with remote content can be printed blank
- Move to Inbox from Trash lags on actually moving messages
- Pasting an email address shouldn't linkify selected text
- Turning text selection into code should de-smartify quotes
- Paste as quotation doesn't always work
- Messages don't get reformatted for dark mode if they contain `color-scheme: light;` style
- Forwarding a message with a mention automatically adds the mentioned recipient
- Draft gets incorrectly starred when starring a thread
- Search suggestions can have incorrect icon or highlight color
🧹 Cleanup
- Removes support for macOS 11
- Snooze suggestions should default to 8AM to match Gmail
- The Help menu item now opens the website help page
- Social media follow buttons added to the onboarding window
Version 1.0.0-rc.3
🔧 Fixed
- Profile photo isn't shown when adding an account
🧹 Cleanup
- Enforce cap on categorized inbox unread counts to reduce Gmail API usage during launch week
Version 1.0.0-rc.2
Almost there! Mimestream 1.0 launches on Monday at 9AM PDT / 12PM EDT.
✨ Improved
- Social media follow buttons added to the onboarding flow
🧹 Cleanup
- Loading any pricing view now re-fetches pricing information
- Pricing and coupons are now fetched from a CDN instead of the licensing server
Version 1.0.0-rc.1
Mimestream 1.0 is launching next week!
🚀 New
- UI to insert variables in the Templates editor
- Reply compose windows now have an "Include original attachments" button in their header
✨ Improved
- Support soft seat caps for large teams/groups
🔧 Fixed
- (macOS 13.3 regression) Focus Filters no longer work
- New profiles have no initial folder selection
- Forwarding a message with a mention automatically adds the mentioned recipient
- Draft gets incorrectly starred when starring a thread
- Search suggestions can have incorrect icon or highlight color
- Active trials are sometimes not shown in the activation window
- Launch special coupon doesn't show until a trial is started
🧹 Cleanup
- Filter button outlines have a better appearance in dark mode
- Whitespace is trimmed from Filter fields when saving
- The Help menu item now opens the website help page
- Terms consent added to the upgrader window
Version 1.0.0-rc
🚀 New
- Support for custom variables in Templates
- Support for group licensing
✨ Improved
- The onboarding window now defers restoration of purchases until after accounts are added (so the confirmation code can be auto-filled)
🔧 Fixed
- New Gmail URL format (the previous format is no longer working reliabily)
- Filters may be duplicated after editing
- Parentheses in names should be ignored when generating initial monograms
- Pressing tab in the profile schedule view hangs the app
- Settings window layout is broken in French
- Filter criteria rows with long values should wrap to a new line
- Messages with remote content can be printed blank
- Move to Inbox from Trash lags on actually moving messages
- Applying a Filter to existing messages may fail with a "too many concurrency requests" error
- Pasting an email address shouldn't linkify selected text
- Turning text selection into code should de-smartify quotes
- Paste as quotation doesn't always work
- Messages don't get reformatted for dark mode if they contain `color-scheme: light;` style
🧹 Cleanup
- Filter details show labels without a corner radius
- Snooze suggestions should default to 8AM to match Gmail
Version 1.0.0-beta.8
We’re putting the finishing touches on the Mimestream 1.0 launch! Until then, this update fixes regressions introduced by macOS 13.3 and has a number of other improvements.
🚀 New
- Create Focus Filters to only show notifications from certain profiles during a system Focus
- Menu item and shortcut to load remote images
- Refreshed UI for the calendar invite banner's agenda section
- Refreshed styling of code blocks
✨ Improved
- Searches now always start scoped to All Mail
- Support for retroactively applying filters with a "Delete" action
🔧 Fixed
- (macOS 13.3) Changing the font size in the compose window doesn't work
- (macOS 13.3) Spacebar doesn't scroll conversation view
- Pressing right-arrow should exit inline code at the end of a line
- Pressing tab at the end of a mention or link should exit link
- Multiple compose windows may open when sharing more than one file
- Images can be pasted into local signatures, even though they aren't supported
- Signature popup isn't clickable when the window size is small
- Copying the conversation title can include UI elements
- Blue accents in the menu extra's menu aren't readable in dark mode
- Cells in the menu extra's menu are inconsistent in width when messages have labels
🧹 Cleanup
- Improved and tuned up spacing in the Filter criteria views
- Up to 6 profile tabs are now allowed in the sidebar before switching to a picker
- License view isn't vertically centered in the activation window
- Fixed inconsistent title baselines in upgrade screens and filter views
- Filter list cells have been simplified to show more information
- Incorrect border on bar at the bottom of the accounts list in Settings
Version 1.0.0-beta.6
🚀 New
- Support for decoding application/ms-tnef (winmail.dat) attachments
✨ Improved
- Allow entering plain-text patterns in Filter address fields (e.g. with *, boolean operators, etc)
🔧 Fixed
- Profile notification schedule time pickers don't appear on initial load
- Messages with illegal Content-Type headers don't display content
Version 1.0.0-beta.5
🚀 New
- Banner prompt to make Mimestream the default email reader
🔧 Fixed
- Crash when adding a 5th profile with an unread count
- Clicking message from menu extra doesn't bring main window forward
- Unable to expand the sidebar after disabling profiles
- Animation glitch in the Upgrader view on macOS 12
- Inconsistent padding in the Filter creation sheet
- Misaligned spinner next to the activation code field
- Animation glitch when signing out of Mimestream account
🧹 Cleanup
- Improves menu item casing to follow the HIG
- Renames some settings for consistency with the system
- Removes code supporting macOS 11
Version 1.0.0-beta.3
🚀 New
- Setting to choose the default email client
- Label drafts in the compose window using the ⌘L shortcut or the Message > Label menu
✨ Improved
- Crash-loop detection and a “safe mode” to check for available updates
- Support “Open in Background” for browsers other than Safari on macOS 13.2+
- Confirmation prompt before enabling Importance markers for the first time, to avoid user confusion
🔧 Fixed
- Menu bar extra message rows are zoomed
- Clicking on a message in the menu bar extra menu doesn't work if the app isn't active
- No-color radio button is misaligned
- The compose window’s signature reverts to the initial signature when the “insert signature before quoted text” setting is changed
🧹 Cleanup
- Improve horizontal balance of the “What’s New in Mimestream” screen
- Activation window scrolls to pre-selected account on load
- Links in activation window errors messages are now clickable
- Reset trial period for all users
Version 1.0.0-beta.2
🔧 Fixed
- Device names aren't correctly synced with the licensing portal's Active Devices list
- The Trial banner doesn't show the available special offer correctly
🧹 Cleanup
- Improved error handling for Gmail API responses
Version 1.0.0-beta.1
🔧 Fixed
- Mimestream crashes due to a Gmail API change
- The Menu bar extra shows messages with uneven label sizes
- Open Link in Background is not offered for Firefox
- Focusing the "Other" text field in the Activation Window doesn't update the selection
🧹 Cleanup
- Use the new Mimestream Price API to show special offers
- The onboarding window now allows restoration of purchases
- The “Buy Now” button in the Trial header doesn't open the beta user special offer
Version 1.0.0-beta
Early Access to Mimestream 1.0 is here! This update introduces paid licensing and 8 new features.
🚀 New
- Separate accounts into Profiles like “Work” and “Personal”
- Assign a unique color to accounts
- Create and manage server-side filters
- Manage your server-side vacation responder
- Google contact colors synced for monogram profile images
- Optional system menu bar extra to quickly view unread messages
- Star and label drafts from the compose window
- Select messages in the conversation view
- Support for paid licensing and activation
✨ Improved
- Setting to choose “Stable” or “Latest” app updates
- Revised app update availability header UI
🔧 Fixed
- Delayed unsnooze operations after system sleep
- Incorrect snooze suggestion on Mondays for “Next Week”
- Open Link in Background not offered for Firefox
Version 0.41.6
We’re putting the final finishing touches on Mimestream 1.0! Until then, this update fixes regressions introduced by macOS 13.3, and is compatible with macOS 11+.
🔧 Fixed
- (macOS 13.3) Changing the font size in the compose window doesn't work
- (macOS 13.3) Spacebar doesn't scroll conversation view
Version 0.41.5
🔧 Fixed
- Mimestream crashes due to a Gmail API change
Version 0.41.4
✨ Improved
- Revised appearance for the “Draft” indicator in the message list
- Mentions can now autocomplete contacts from the Workspace directory
- Better user-facing alerts when encountering authorization errors
- Preparations for the upcoming 1.0-beta.1 build
🔧 Fixed
- Addresses sometimes don't tokenize after pressing tab
- Mentions don't work if there is a “+” earlier on the line
🧹 Cleanup
- Inform macOS 11 users that subsequent updates will require macOS 12+
- Tweak alignment of Google service checkboxes
- Tweak sizing of header buttons
Version 0.41.2
🔧 Fixed
- Crash when displaying messages without a From header
- Label picker sometimes doesn't have keyboard focus when opened
Version 0.41.0
We’ve been busy getting Mimestream 1.0 ready – details coming soon! In the meantime, we have some assorted improvements and bug fixes.
✨ Improved
- New appearance for “Draft” messages in list
- Cycle through Unified folder subfolders by repeating the shortcut
- Show the Templates toolbar button for feature discoverability
- Revised recipient autocomplete suggestion scoring algorithm
🔧 Fixed
- (macOS 13) Visual artifacts when swiping on a message list row
- (macOS 13) Text in the Label picker is misaligned
- Crash when displaying messages without a From header
- Copy Gmail URL doesn't copy the URL
- Snoozed messages sometimes don't unsnooze at the correct time
- Mid-sentence mentions don't work
- Cannot scroll with keyboard arrow keys in the standalone window
- Category folder added to Favorites doesn't have a “Remove from Favorites” button
- After renaming a label, the window title isn't updated
- Signature popup sometimes doesn't update when changing the From account
- Highlight label colors on hover in menus and picker popovers
- Expanded folder shows badge count on refresh
- Localization doesn't work for the “Prevent Tracking” preference
- Settings panes can wrap incorrectly in non-English localizations
- Broken selection restoration when no folder was selected
- Error message lacks detail when app doesn't have permission to access Contacts
- Crash when selecting “Don't Allow” access to Contacts
- Broken appearance after copying text from messages that support dark mode
- Search field shouldn't allow formatting of text via shortcuts
🧹 Cleanup
- Improvements and bug fixes for alpha features
Version 0.40.2
✨ Improved
- Improved performance of the Mentions completion menu
🔧 Fixed
- (macOS 13) Crash when accessing contacts without authorization
- (macOS 13) Show contact card popover appears empty
- Unread count missing on expanded parent labels
- Crash in background syncing message deletions
- Accounts list disappears when clicking on empty area
- Enabling Importance markers temporarily shows incorrect values
- “Search with Google” doesn't appear when Safari is the default browser
- Memory leak may occur after opening a standalone window
- Memory leak after closing the preferences window
- Copied Gmail URLs paste twice in the Messages app
- Signature name sometimes doesn't change when the “Compose From” account is changed
- Layout of message list rows may shift when adding labels in dark mode
🧹 Cleanup
- The “Compose From” preference now shows address display names
- Improvements and bug fixes for alpha features
Version 0.40.1
🔧 Fixed
- Labs Snooze feature got disabled on upgrade to 0.40.0
- Newly-added accounts associated with a random profile
- The Go menu doesn't update when accounts are disabled
- Multi-line labels in Settings get clipped to 1 line
- Mention suggestions incorrect when trailing spaces are typed
- Mention tokens can be partially deleted by word deletion
- Deleting duplicated mentions doesn't remove recipient
Version 0.40.0
🚀 New
- Calendar banner support for “Proposed Times”
- Calendar banner support for 1-click joining Google Meet, Microsoft Teams, and Skype events
- Preference to hide “More” sections from the sidebar
✨ Improved
- Quick-open and context menus now show colors for system labels
🔧 Fixed
- (macOS 13) Crash when adding a sender to contacts
- Dropping zip files on the dock icon / sharing doesn't work
- Calendar banner date is incorrect for certain invitations
- Calendar banner response buttons don't wrap in some localizations
- Calendar banner doesn't show multiple events in the right order
- Signature may be added on reply even when the preference is set to None
- Dragged-in attachment can't be dropped on a focused Subject field
- Settings window doesn't resize height when View settings are changed
- Emoji substitution should require a leading space
🧹 Cleanup
- Improved logging for snooze actions
- Fixed border on Accounts settings tab list
- Don't show “Open Link in Background” when the default browser doesn’t support it
- Add tooltips to calendar banner response badges
Version 0.39.0
✨ Improved
- Mentions now prioritize participants from the draft
- Allow entering a custom email address when signing up for the newsletter
🔧 Fixed
- “Cocoa Error 132001” sometimes appears when deleting a label or removing an account
- The Add-account sheet in the main window keeps re-appearing after adding an account
- Calendar banner RSVP buttons don't fit in some localizations
- Snooze shortcut `b` doesn't work in Gmail shortcuts mode
- Categorized Inbox folder sometimes doesn't show account suffix when needed
- Toolbar items are sometimes grayed out when there's a multiple selection
- Duplicated “Me, me” shown in participant list
- Account ordering changes when dragging a folder to Favorites
- Quoted text prints too light and is difficult to read
- Message list label backgrounds aren't tall enough and clip text descenders
Version 0.38.1
🧹 Cleanup
- Remove references to incomplete features
Version 0.38.0
✨ Improved
- Accounts can now be renamed from the sidebar context menu
🔧 Fixed
- App hangs on launch when upgrading from older versions
- Inline images can get stretched upon reply
- Aliases aren’t grouped by account
- Crash when dragging to the starred folder of the wrong account
- Selection quoting doesn't work when the reply button in the header is used
- Calendar Banner: Some events are shown with an incorrect timezone
- Calendar Banner: All-day recurring events don't show the correct date
- Calendar Banner: Recurring events don't properly wrap correctly
- Clicking “Not Spam” in the header banner is not undoable
- Popovers for “Move to” and “Label” can overlap each other
- After removing the last account, the status tray still shows “Login Failed”
🧹 Cleanup
- The Unread and Star toolbar buttons now update to show their current state
- Snooze times shouldn't be scheduled with the current second count
- Logging added to track down some elusive bugs
- Accounts preference pane is too tall
- Don’t allow account “More” folders to be added to Favorites
Version 0.37.3
🔧 Fixed
- Searches fail to complete when any account is disabled
- Dragging address tokens between To/Cc/Bcc fields sometimes removes adjacent tokens
- Attachments in the message list sometimes overlap other text
- When renaming a label, clicking another label doesn't exit edit mode
- Some screenshots can't be shared through Mimestream
🧹 Cleanup
- (macOS 13) Rename Preferences to Settings
Version 0.37.2
✨ Improved
- Show account login failures in Preferences
- Improve key view loop (tab ordering) when “Full Keyboard Access” is enabled
🔧 Fixed
- Crash when collapsing parent folders in the sidebar
- Single messages are unnecessarily scrollable
- All-day calendar events may fail to load
- Accepting a proposed meeting change can trigger meeting cancellation in some cases
- Unable to share videos to Mimestream
- Content in the “Add Favorite” sheet can get truncated
- Inbox missing from the default Favorites set when a disabled account has categories enabled
- Mentions are sometimes incorrectly triggered
🧹 Cleanup
- Hide the “Search with Google” WebKit menu item when Safari isn't the default browser
- Skip the notification permission request step during onboarding if permissions are already granted
Version 0.37.1
🔧 Fixed
- Crash when viewing some messages with calendar event (ICS) attachments
- The dock unread count includes disabled accounts
Version 0.37.0
✨ Improved
- Use Authentication Services to Sign into Google (macOS 12.4+ only)
- Option to disable mentions in the substitutions menu
🔧 Fixed
- Mentions can erase newlines from text
- Mentions can insert extra-tall recipient tokens
- Mentions shouldn't trigger for numeric prefixes (like +1)
- Mentions duplicate recipients already on the CC line
- Mentions being removed shouldn't remove a previously-existing recipient
- Mention suggestions menu temporarily disappears when typing a space in a name
- Unsnooze notifications are sometimes delayed
- Unsnooze notifications should only appear for the newest message in a conversation
- Exiting the template picker sometimes moves the cursor to the start of the message
- Replying to a message with a tiny inline jpeg may make the image very large
- Memory leak when closing a standalone window
- Accounts list in preferences should support swipe actions
- Autocomplete should work for nicknames
- Cannot moved trashed sent message back to sent
- Window title not updated when de-selecting a folder
- Calendar banner shows incorrectly formatted time when system is set to 24-hour time
- Calendar banner fails to parse certain events
- Google Contacts integration isn't activated after signing into a Workspace account
- URLs in the status bar are sometimes rendered with the wrong color
- Can't scrub on video controls without triggering a drag of the video
- The snooze time picker can be shown on the wrong window
- Some subjects are blank if they have RFC2047-encoded newlines
- Undo send shouldn't work when the feature is diabled
- Endless spinner when messages are search offline
- Some user actions may not automaticaly execute after recovering from a network failure
- The compose window sometimes doesn't show the image size popup
- Clicking on a notification only selects the message if the containing folder is in the Favorites section
- Shared HEIC images should be attached as files, rather than inline images
- Emoji substitutions should defer to system text substitutions first
- The “Request Access” button remains grayed out, even after enabling system notification access
🧹 Cleanup
- Converted Accounts preferences to SwiftUI
- Some strings weren't properly localized
- Calendar banner loads faster
- Calendar banner shows unknown organizer
- Calendar banner has revised UI for cancelled events
- Fix light scrollbar in release notes when using dark mode
- Show icons for inbox categories in preferences
- After adding an account, the name text field should be focused
- Restore default “Compose From” preference if the previously-selected account is removed
Version 0.36.2
🔧 Fixed
- Upgrading to 0.36 caused Inbox category settings (e.g. Promotions) to be reset
Version 0.36.1
🔧 Fixed
- Message header shows "%ld more" instead of count
- Unsnooze notifications aren't dismissed once the message is re-read
- Replies sometimes unnecessarily show the "Subject:" header line
- Signature popup shows "None" when signature has accented text
- Disable accidentally-enabled experimental editing type feature
- Fix broken localizability of preferences panes
- Toggling from inline code to code block style doesn't work
- Pasting a URL on top of an existing URL sometimes doesn't replace the text
Version 0.36.0
Message Snoozing Labs
Snoozing has been one of the most popular feature requests for Mimestream, but we’ve held off on implementation due to lack of Gmail API support for snoozing.
However, in response to overwhelming demand, today we are introducing a new “Labs” tab in Preferences where you can opt-in to client-side snoozing. Once you have enabled snoozing, there are a few ways to snooze messages:
- Use the message context menu to pick a date/time to unsnooze.
- Use the ⌥⌘S keyboard shortcut, and type the date/time to unsnooze.
- Control-click the window toolbar, customize it, and drag the snooze toolbar item into your toolbar.
At the unsnooze time, a system notification will appear, and the message will be moved to the top of your Inbox.
There are several important caveats to this feature: it can’t sync to Gmail, and the snooze state only shows within Mimestream (the message is left in the Inbox on the server). Viewing your inbox from Gmail, Gmail iOS, or Apple Mail (macOS or iOS) is not expected to reflect the Mimestream-only snooze state. In addition, if you have multiple Macs, the snooze state does not sync between them yet (this is planned for a future update).
@ Mentions
When replying to a thread, sometimes you need to quickly add another person. With the new @/+ mention syntax, you do this with a natural keyboard-based workflow. Just type “@First” (or “+First”) into the editor to get an autocompletion menu, and use the arrow keys to select a recipient. This will add them to the To
field, and also insert a clickable link for their name.
The inserted link behaves as a token. If you press delete with your cursor in front of it, the entire token is deleted. The To
field automatically reacts to this change, and the address is deleted there too.
Link Status Bar
Before clicking a link, it’s helpful to know exactly where you’re going to. Previously, Mimestream had a tooltip UI for links, but this was slow to trigger and displayed on top of the content under your mouse.
Now, link destinations are displayed in a status bar at the bottom of the conversation view, enabling you to more quickly see the destination of a link before you click on it.
Calendar Banner Invitee Status
To help you make more informed decisions when reviewing event invitations, the calendar banner has been updated to show the acceptance status besides each invitee, so you can see the current attendance.
In addition, the daily agenda view no longer shows events you’ve declined, and clearly marks events you’ve responded “Maybe” to.
Enable/Disable Accounts
Maybe you’re on vacation and you want to disconnect from work email. Or maybe you just have some junk accounts you don’t want to use every day.
Whatever the reason, you can now temporarily disable an account by unchecking the “Enable account” checkbox in Preferences.
🚀 Other New Features
- Preference to disable automatic From address selection (choose “Selected Account” for “Compose From”)
- Preference to enable/disable the selected-text quoting feature
- Formatting bar in Signature preferences
- Disconnect Google services (Contacts, Calendar, etc) for an account if no longer desired (in Preferences)
- Add an address to Apple Contacts from the token context menu
✨ Improved
- Attachments are now opened in a non-temporary directory
- Added an option to “Save to Downloads” added to attachment context menus
- Overhauled and rearranged Preferences window (mostly rewritten with SwiftUI)
- Improved UI for handling connection and login errors
- Improved automatic From address selection logic
- Attachments now show file size in the compose window
🔧 Fixed
- Calendar banner fails to load rescheduled events
- Calendar banner agenda should not show declined events
- Several dark mode messages (e.g. from WSJ) have gray backgrounds
- Replying to a Gmail-sent message with inline images breaks images in quoted text
- Server-side signatures sometimes have corrupted images or characters
- Signatures are replaced upon resumption of drafts
- New labels created on the server initially sync and display with an internal label name (Label_12345)
- Changing Label colors doesn't update in the message list or conversation view
- After resuming a draft, the Signature popup says “None” even if there is a signature
- Child labels aren't deleted when a parent label is deleted
- Some images in messages are displayed with an incorrect aspect ratio
- Drafts don't autosave if an embedded image fails to load
- New messages with no labels don't sync via push
- Already-open compose windows should update when Signatures are edited
- Can't tab from Subject to Body when attachments are added
- Changing signatures can cause the cursor to jump
- Can't undo the addition of a signature
- Cc/Bcc field text is misaligned on macOS 12.4
- JS exception when updating the signature on a partial-selection bottom post reply
- Labels in the search suggestions menu don't show colors
- Changing the “Mark Messages Read” preference causes a shift in the rest of the preferences pane
- Forwarding a message with a Subject header containing a RFC2047 encoded newline causes a sync error
- The ”Open in Separate Window” context menu item is sometimes incorrected disabled
- Sync error when creating a new label with the reserved name “Todo”
- Some HTML entities in message preview text are not decoded correctly
- Automatic emoji substitution should work for Enter too, not just Space
- Can't add signature after typing at the beginning of a message
- Crash on pasting image copied from Telegram
- Images are sometimes resized without option to undo resize
- Pressing enter in the new label sheet with an invalid name shouldn't dismiss sheet
🧹 Cleanup
- When changing the selected signature in preferences, the editor sometimes flashes a previously-selected sigmnature
- Don't show “After Today” as a search suggestion
- Calendar banner time formats now follow system customizations
- Don't show “Hide from Sidebar” for Favorite folders
- Replace “No Accounts” alert with the add-account sheet
- Added backoff and limits to Gmail API query re-try logic
- Improved calendar banner logging
- Some messages are unnecessarily encoded with multipart/related
- Don't show message size in the compose window when there's only 1 non-inline attachment
Version 0.35.6
🔧 Fixed
- Windows don't open on macOS Catalina after the beta build expiration date
Version 0.35.5
This final update for macOS 10.15 Catalina disables the beta build expiration.
Future updates to Mimestream will only be available on macOS 11 or newer.
Version 0.35.4
🔧 Fixed
- Slow receipt of new email and battery drain for some Google Workspace accounts due to an infinite synchronization loop
- Can't tab from subject to body (when there are no signatures)
- Body text gets erased when changing From (or signature) (when using the preference to place signatures below quoted text)
- Crash when replying to messages with duplicated images
- Crash when using the message list filter on macOS 11
- Crash when displaying some Apple calendar events in the invitation banner
- Crash when entering specific non-ASCII text into the search field
- The signatures popup can be misaligned (with only 1 account)
- The header of the compose window sometimes has extra padding
- Hiding the Drafts label from the sidebar immediately reverts
Version 0.35.0
🚀 New
- Create multiple alternate signatures
- Per-account “Categorized Inbox” settings
- Emoji substitutions when composing
- Send to labels/groups from Google Contacts
- Template subjects, To/Cc/Bcc fields, and formatting
- Forward messages as attachments
- Date suggestions in the search field
- Show the Apple Contacts card for an address token
- Configure which calendars from Apple Calendar are displayed in the invitation banner
- Swipe action options for “Label” and “Move To”
- Reorder attachments in the compose window via drag and drop
✨ Improved
- The “Mark all as Read” button is now shown even when the message list is filtered
- Added a “Not Spam” context menu item to the message list
- Sharing images now inserts them inline, so they can be resized
- The Calendar banner now shows recurring event details
- The Calendar banner now has meeting-join links
- Improved autocomplete suggestion orderings
- When selected, the Trash and Spam folders now have context menu items to permanently erase all items
- Ability to drag messages and drop onto a label with the option key to add that label
- When replying and quoting only selected text, default to a bottom-post initial cursor position
- Templates can now substitute more variables
- New “Account Added” view prompting input of an account name
🔧 Fixed
- (macOS 10.15 only) The ellipsis button to expand quoted text doesn't work
- The message list filter sometimes gets enabled automatically after changing folders
- The calendar banner can't load events if the “Add invitations to my calendar” Google Calendar setting isn't set to “From everyone”
- The calendar banner shows declined events as conflicts
- Replying to a message sometimes only quotes attachment name
- The “Edit Labels” popover doesn't work if the selection is scrolled out of view
- Inserting attachments with certain MIME types (e.g. fonts) fails
- Labels named “Personal” sometimes disappear from the sidebar
- Can't attach files over 20MB even though the Gmail limit is 25MB
- When replying to a message, images in the quoted text aren't resized by default
- Unread counts aren't updated correctly for child labels in the favorites section
- Can't share screenshots to Mimestream from the macOS screenshot markup window
- Can't autocomplete to a Reply-To address from received email
- Changing the From address in a “Send Again” compose window can delete non-signature text content
- Crash on launch restoring a reply window when the parent message has been permanently deleted
- GitHub notification threads randomly change subject/snippet in the message list after being read
- Sharing from Apple Maps/News results in duplicate compose windows
- The “Go > Next Category Inbox” menu item switches in random order
- Blank compose windows don't restore after relaunch with state restoration
- Automatic next row selection doesn't happen when deleting or archiving multiple rows
- Can't drag attachments out of the compose window header
- Autocomplete should prioritize Apple/Google Contacts display names for addresses
- Signing into Google Contacts doesn't dismiss the sign-in sheet
- The Gmail Template warning's “More Info” button doesn't work
- The filter toolbar button doesn't update state immediately when switching folders
- Clicking in padding of a collapsed message doesn't expand it
- The Image Size popup shouldn't allow selecting sizes that have no effect
- Show “Sending” and other activities above login failure errors in the status tray
- Non-inline attachments list shouldn't show a .gif file that was attached inline
- Handle Calendar API authentication failures and prompt to re-authenticate
- Automatic insertion of a numbered list shouldn't change the starting number of a previous list
- Enforce the attachment size limit for the “Insert from File…” option
- The calendar banner sometimes shows duplicate attendees
- The calendar banner should not show for messages sent to aliases, because these events can't be loaded from the Calendar API
- The calendar banner doesn't immediately update after connecting Apple Calendar
🧹 Cleanup
- Revised Account connection screen, showing checkmarks for already-connected services instead of grayed-out switches
- Improved Calendar banner error messages
- The “& N More” recipient list truncation text is now a clickable link
- Fixed incorrect “Redo” menu item title after moving messages
- Image size popup menu items should have tooltips on hover to show size
- Fixed clipping of label text descenders in the color selection grid
- The filter toolbar button should become filled when enabled
- Don't show the image resizing menu if all images are already smaller than the minimum threshold
- Show a (+) icon cursor when dragging a message into a folder that doesn't support a move
- Forwarding results in an extra newline aboe the signature compared to Reply
- Clean up calendar banner segmented control dividers
- Make the calendar banner load with a consistent agenda width
Version 0.34.2
🔧 Fixed
- Crash when syncing messages with a malformed Received header
- Crash when updating the Move-To submenu if no message is selected
Version 0.34.1
🔧 Fixed
- Signatures are sometimes inserted without a blank line above them
- The forgotten attachments reminder sometimes doesn't work
- The Move-To menu doesn't show system folders
- Duplicate autocomplete suggestions can be shown for an address
🧹 Cleanup
- Show and log an error message when failing to parse calendar events
Version 0.34.0
🚀 New
- Forgotten attachments reminder
✨ Improved
- Calendar banner now shows the "Where" field
- Calendar banner now shows cancellation status for invites
🔧 Fixed
- macOS 12.3: Inbox zero confetti pop animation displays in wrong spot
- The Inbox Zero animation shouldn't show in response to synced changes
- Exception error alert shown when inserting a quote block at the start of a message
- Replying to some messages causes a "No application set to open" alert to repeatedly appear
- Sometimes draft updates fail, server reports that the draft is no longer available
- Typing an email address blockquotes the entire line
- After closing inline code with backtick, non-space characters are typed inside the inline code element
- Pasting a URL onto a blank line doesn't work
- The "Move To" popover doesn't move messages when creating a new label at the same time
- After resuming a draft, changing the signature may erase typed text
- Clicking "Install" on the update banner sometimes doesn't work
- After removing the 2nd-to-last account, the sidebar refreshes with incorrect names
- Signatures can be inserted in the wrong spot after changing the account
- Address suggestions from Apple Contacts don't have a display name
- Crash when using the "g+i" shortcut to cycle between multiple inboxes
- Markdown substitutions still happen even after disabling markdown
🧹 Cleanup
- The "View > Show with Light Background" menu item doesn't update for compose windows
- Wait to request Contacts access until the first time a compose window is opened
- The update availability banner shows deactivated updates
- Dragging categorized inboxes shouldn't show a reordering drop target line
- Categorized inboxes should not be able to be removed from the sidebar
Version 0.33.7
🔧 Fixed
- Calendar banner doesn't load events if they are updates of a recurrence
- Calendar banner agenda doesn't show recurring events
- Calendar banner sometimes shows incorrect events in the agenda
- Calendar banner shouldn't show events from shared calendars in Apple Calendar
- Using the Gmail navigation shortcuts can crash the app if Favorites were customized
- Validating menu items sometimes has significant lag
- Search sometimes doesn't show results when the All Mail scope is selected
Version 0.33.6
🔧 Fixed
- Crash when using Go menu shortcuts
- Clicking to select certain image/media in a message collapses entire message instead
- Can't move some conversations with sent messages
- Option + Up/Down arrow keys don't work in the message list
- Modifying a label with a legacy color gets immediately reverted
- Incorrect time for some agenda events in the Calendar banner
- Event titles with commas shown incorrectly in the Calendar banner
🧹 Cleanup
- Clarified Calendar banner error messages
- Added logging for use of the Google Calendar API
- Improve alignment of agenda events in the Calendar banner
- Eliminate internal tooltip on quoted text expansion button
Version 0.33.5
✨ Improved
- Category Inboxes are a separate sidebar section again
- Category Inboxes no longer have an “Inbox:” prefix
🔧 Fixed
- Incorrect synchronization of Category label visibility settings for older Gmail accounts
- Changing label visibility in Gmail doesn't immediately sync and update sidebar
- Expanding trimmed/collapsed quoted text doesn't work
- Dragged-in favorites are dropped at the wrong position
- More folders shouldn't show unread counts
- Some calendar events aren't displayed in the daily agenda
- Calendar banners sometimes duplicated on first load
- Inserting templates loses formatting
- macOS 11: Broken filter criteria pop-up button
🧹 Cleanup
- Calendar banner appearance tweaks
- Remove the Personal category label (because visibility settings cannot be changed)
- Show an alert when automatically enabling “Show Importance Marker”
Version 0.33.0
🚀 New
- Google Calendar integration to accept/decline invitations
- Configurable “Favorites” section in the sidebar
- Support for the Important label
- Support for the account-wide Category labels
- Ability to include original attachments when replying (via menu)
- Ability to open individual messages in a separate window
- Change filter criteria directly from the message list header
- Japanese localization (thanks Katagaki, Shota, and Keisuke!)
✨ Improved
- Overhauled sync error UI for Drafts
- Faster addressing and search suggestions
- Update availability is now shown in the message list header
- New account sign-in flow, allowing multiple services to be connected at once
- Find/replace support in the compose window
🔧 Fixed
- macOS 12+: Gmail shortcuts don't work for non-US keyboard layouts (e.g. Move to Trash is 3 instead of #)
- macOS 12.3+: Messages flash white when loading in dark mode
- Opening attachments in MS Office apps allows saving to a temporary directory, losing edits on reboot if saved in-place
- Some messages render too wide (e.g. recent TidBITS newsletter)
- Profile photos from a Google/Apple Contact should trump Other Contact and Directory photos
- Sidebar unread counts of collapsed labels with children doesn't update to reflect child updates
- The “Label” and “Move To” menus aren't populated correctly when the main window isn't active
- Colored labels in the sidebar don't dim when the window is inactive
- Sharing from Safari should include webpage title as subject
- Messages with HTML from older versions of MS Outlook render with excess spacing (compared to Gmail)
- Signatures can have excess whitespace
- Searching messages in the spam folder shows "No Subject"
- Memory leak when presenting SwiftUI views as sheets
- Clicking in the padding area on a collapsed message doesn't expand it
- Dragging a child folder shows the unread count on the unified parent
- Inline code formatting gets stuck after pressing enter
- Can't insert spaces at the end of inline code at the end of a line
- Closing inline code with markdown syntax deletes next line
- Numbered list automatic insertion doesn't update starting list number
- The “Insert from iPhone” feature doesn't attach the photo.
- macOS 11: Can't drag images in the compose window
- Wrong initial focus when replying with the tab bar visible
- Can't paste HTML or Email addresses into a code block
- Can't switch an existing list between types
- Automatic list insertion shoudln't push text to the next line
🧹 Cleanup
- Request Notification Center access during onboarding
- Support the “More” section in the “Move To” and “Label” menus
- Adopt Google's newly-required “Sign In With Google” button
- Clicking the “More” folder should immediately expand it
- Support pressing the Enter key to advance through the Onboarding flow
- Hide the Report Spam message context menu item when not applicable
- Prevent moving messages from Sent/Drafts, as the Gmail API will reject it.
- Account names are now resizable in message list cells
- Prevent automatic selection of unselectable folders in the sidebar
- Increase default window size
- Override default style for "MsoNormal" class to match Gmail
Version 0.32.4
✨ Improved
- Last-selected search scope is now remembered
- Added "Share" to the Attachment context menu
- Added ability to attach files by pasting them in the compose window body
🔧 Fixed
- Search suggestions menu gets stuck and doesn't dismiss
- Shift-tab doesn't work from compose window body back to subject
- At smaller text sizes, messages render too wide
- With image scaling enabled, inserted images have the wrong size (macOS 12 only)
- Trashing from a standalone window doesn't close window with conversations disabled
- Reconnect prompts not shown after user account migration
- Some HTML messages render too wide and off-center
- Can't paste multiple lines into a code block
- Inline code markdown substitution triggers autocorrect
- Typing "- " deletes all text on the line before it
- Forms in message body content can't be submitted
- Drafts sometimes fail to save in dark mode
- Error pops up after clicking Signatures or Templates tabs in Preferences
- Labels popover shouldn't show labels from Spam/Trash messages
- Viewing conversations in Spam/Trash shouldn't show non-Spam/Trash messages
🧹 Cleanup
- Italicized text doesn't have a trailing space in the text/plain alternative
Version 0.32.1
🔧 Fixed
- When replying, focus is in the To field if the tab bar is visible
- Every opened compose window leaks memory (macOS 12 only)
- Sometimes the Inbox label isn't visible in the message list (invalid data returned by the Gmail API)
- Sometimes the compose button doesn't appear in main window's toolbar
- Links to anchors within a message don't work
- Some images have a blank document drag image
🧹 Cleanup
- Viewing a thread in Spam or Trash should only show Spam/Trash messages
Version 0.32.0
🚀 New
- Switch between "Reply" and "Reply All" when composing
- Pick alternate addresses for recipient address tokens
- See profile photos for "From" accounts in the compose window
✨ Improved
- Press enter in the search field to move focus to the message list
- Receive an alert if quitting while messages are still being sent
- Switch list styles from the Format > Lists menu
🔧 Fixed
- Changing signatures duplicates text in dark mode
- Some messages have a gray background in dark mode
- Crash pasting multiple addresses copied from Excel or raw source
- Search results scope bar doesn't work in full-screen mode
- Emailing Groups from Apple Contacts doesn't work
- Google Calendar invitiation emails show duplicated ICS attachments
- Address autocomplete should allow for partial word matches
- Sharing to Mimestream doesn't work from Safari
- Creating a new sublabel should automatically populate the parent label
- Message still marked read after de-selection (when delay pref is on)
- Message with a meta refresh in HTML automatically opens the browser
- Reply should omit other account aliases from the Cc list
- BCC recipients get dropped when toggling between Reply and Reply All
- Searching doesn't initially show the progress indicator
- An infinite caching loop can occur if there are multiple messages with the same server-ID
- Pasting into token fields should strip leading/trailing whitespace
- Crash when dragging text within an address token field
- Crash when pasting certain content in the compose window
- Crash when clicking on the Reply/Forward toolbar item if it's collapsed
- Template text can be inserted in the wrong location when using the toolbar button
- Images can be added to signatures and appear broken in new messages
- Linked images can't be clicked if they're loaded from a cid scheme URL
- Standalone window for a Spam message stays open even after deleting the message
- Remotely-updated drafts aren't reloaded in conversation view
- Saving raw source for messages sometimes doesn't work (8bit/binary CTE)
🧹 Cleanup
- Sent copies of messages now have generated text/plain alternatives (actually-sent messages to recipients already do)
- The Reply All menu item is disabled unless the Draft had multiple recipients
- After switching from Reply All to Reply, the CC row is now re-collapsed
Version 0.31.5
✨ Improved
- Added a plus button to the account sidebar section header for creating new labels (macOS 11+ only)
🔧 Fixed
- Blank compose window when replying to or forwarding some messages
- Automatic From address updates shouldn't occur when replying to or forwarding messages
- The "More" label section double-counts unread threads
- Bold markdown substitutions don't work
- Blockquote markdown substitutions should only occur at the start of a line
- Regression where Mailboxes section may not be shown at top of sidebar
🧹 Cleanup
- Creating a new label shouldn't navigate to it
- Tweaks to automatic from address selection
Version 0.31.3
✨ Improved
- Add categorized inboxes to the "Move To" popover and menu
- Allow drag+drop of labels in/out of the "More" section in the sidebar
🔧 Fixed
- Crash when using the "Move To" popover
- Cannot insert a space at the beginning of a line in the compose window
- App freezes after a "Mark all messages read" operation failure
- Markdown substitutions should not occur in the middle of words
- Plus characters wrapping text should not result in a markdown italics substitution
- Dashed list inserted at start of document inserts bulleted list instead
- Pasting in a code block no longer pastes as plain text
- "Remove formatting" sometimes doesn't work
- Contact photos can get clipped at non-default text sizes
- Some contact photos don't fill the entire circle
Version 0.31.1
🚀 New
- Quick navigation panel (shortcut: ⇧⌘O)
- Show/hide labels in sidebar and message list (synced with Gmail)
- Share files via Mimestream
- Markdown substitutions when composing (bold, italics, code, etc.)
- Support for dashed lists
- Automatic selection of the best "From" address when composing
✨ Improved
- Address suggestions now consider frequency (and recency)
- Dark mode reformatting improved with numerous bug fixes
- Fuzzy matching support in label pickers (e.g. "a b" matches "Apple/Banana")
🔧 Fixed
- Upon reply, sometimes initial focus isn't in the body
- Dragging an address tokens between fields loses part of the name if there is a comma
- Error trying to open an attachment that hasn't finished downloading
- Changing the From account of a new draft sometimes results in a sync error
- Pressing ⇧⌘⏎ doesn't Send+Archive if cursor is inside a list
- Sometimes image resizing doesn't reduce file size
- Indentated text blocks turn into quotes after pressing enter
- Pasting a URL over an existing URL doesn't result in replacement
- Pasting into a quote block inserts unnecessary newline
- Automatic list insertion can delete text before cursor
- Text color shown in the format bar can be incorrect in dark mode
- Label message list visibility is incorrectly synced for labels originally created via IMAP
🧹 Cleanup
- Showing a context menu doesn't always update first responder in the conversation view
- Drag image for inline images is sometimes misaligned or blurry
- Lazy refreshing of autocomplete caches to reduce background CPU utilization
- Delete key behavior no longer automatically updated when keyboard shortcut set changed
- Drafts with sync errors are now prevented from being sent
Version 0.30.5
✨ Improved
- Typing three backticks begins a code block
🔧 Fixed
- With remote image loading disabled, replying still loads the images in the compose window
- Unread counts drift out of sync with server when there is a draft sync error
- Drafts can't be updated if they had a sync error during creation
- Crash when dragging an inline image from a message with mislabeled Content-Type header
- Crash when starting a search if message list is scrolled down
- Copying text from a quote block and pasting doesn't preserve the quote bar
- Toggling between Reply and Reply All doesn't work for reopened drafts
- Autocomplete suggestions from Google Other Contacts shouldn't be limited to the current From account
- Autocomplete suggestions aren't presented after pasting text into the token field
- Inline code can occasionally fail to get inserted
- Can't delete empty code blocks by backspacing
- "Remove formatting" often doesn't remove all formatting
- Dark mode message reformatting doesn't work on tables in quirks-mode HTML messages
- Dark mode message reformatting doesn't work on messages with a special "apple-mail-implicit-dark-support" class recognized by Apple Mail
🧹 Cleanup
- Compose windows now have UI to show the current sync error associated with a draft
- Selected inline image focus ring gets clipped by adjacent images
- Connect to Google Contacts bar is misaligned on macOS 10.15
- Message snippets now have leading/trailing whitespace trimmed
Version 0.30.3
🔧 Fixed
- macOS 12: Multiple lines of address tokens aren't visible until mouse-over
- macOS 12: Onboarding window isn't centered on screen
- Dark mode: Messages with html elements styled to have text color don't reformat correctly
- Dark mode: Messages with small background images don't reformat correctly
- Copying from one code block and pasting into another causes nested code blocks
- Selection jumps to end of document when typing inside inline code in dark mode
- Copied Gmail URLs sometimes can't be pasted
Version 0.30.2
🔧 Fixed
- Incorrect key equivalent on the "Mark as Read/Unread" menu item when Gmail shortcuts are enabled
- Unread state of messages can get out of sync with Gmail when the Gmail API temporarily returns errors when modifying a message
- The Gmail shortcuts navigation timeout is too short
Version 0.30.1
✨ Improved
- Additional Gmail shortcuts supported: g+l, ⇧I, [, and ]
- Code blocks now preserve indentation when inserting newlines
- The subject field now supports spell checking
🔧 Fixed
- Autocomplete doesn't provide suggestions for recent recipients
- Messages sent with Front look broken and unstyled
- Significant energy use when typing in the compose window
- Emailing participants from Calendar fails if attendee names have "@" in them
- Replying to a message without a Subject header splits the thread
- Can't insert multiple newlines in a code block
- Toggling code block back on leaves an outline and broken selection
- After backspacing over inline code, newly typed text has background color
- Label sorting order is inconsistent with Gmail
🧹 Cleanup
- Header attachment drag image is misaligned
- Revert change to always show the labels section for accounts without labels
- Added a menu item for Show/Hide Format Bar
Version 0.30.0
🚀 New
- Compatibility updates for macOS 12 Monterey
- Code formatting options (inline and block style)
- Inline images can now be selected, quick looked, and saved
- Switch between Reply and Reply All when composing (using the Message menu)
✨ Improved
- Additional Gmail shortcuts supported, such as g+i, z, and ⇧i
- Syncing optimizations to significantly reduce number of Gmail API queries
🔧 Fixed
- Lag updating unread counts when messages marked as read (or trash/spam is emptied)
- Labels on drafts are lost after editing or sending
- Some messages render blank
- Messages can have a received date in the future
- Can't insert a tab character when composing
- Wrong image attachment displayed (when multiple messages in a conversation re-use the same Content-ID header for attachments)
- Inline images dragged out always have "untitled.png" file name
- Autocomplete suggestions shouldn't give priority to personal aliases
- Crash removing an account when the Unified Inbox is selected in the sidebar
- Shift+Tab should decrease indentation or return focus to the Subject field
- Changing From account leaves a phantom cursor where the signature was replaced
- The Format bar's font popup goes blank when editor loses focus
- The "Compose From" preference doesn't work if multiple accounts share the same address
- Opening attachments can result in Mimestream spinning
- The Go menu items don't work when the main window isn't active
- The Go menu's "Next/Previous Categorized Inbox" doesn't work when a non-Inbox folder is selected
- The Go menu should update dynamically to show available categorized inboxes
- The Go menu items should cycle amongst children when repeatedly selected
- When conversations are disabled, Inbox unread count updates can be laggy
- Clicking in the middle of a long reply automatically scrolls to the top
- When the toolbar is hidden, it should be temporarily shown for searches
- Messages shouldn't be editable in conversation view, even if contenteditable attribute is present in source
- Selecting Garamond or Georgia font shows as "Serif" in the format bar
- Label color picker swatches get clipped and stuck in hovered states
🧹 Cleanup
- Single messages are now stretched to fill the entire conversation view height (for full-bleed background colors)
- Show account labels section even if account has no labels to reduce user confusion
- Add non-key appearance for selected images in conversation view
- Fixed misaligned source frames when dragging or quick looking inline images
- Reduced size of system mailbox tags in message headers
- Reduced new message mark-read delay from 5s to 4s
- Improve reporting of Gmail API errors to users
- Reduced verbosity of identity-syncing logs
Version 0.29.2
✨ Improved
- Support Gmail's shortcut (backtick) to switch category inboxes (see Go > Next/Previous Category Inbox)
🔧 Fixed
- Crash when opening a compose window if a default web-safe font option isn't installed on the system
- Label removal (x) buttons in the conversation header sometimes don't work
- When composing, pressing Tab dismisses text input overlays
- Pressing enter in the Subject field doesn't move focus to the body
🧹 Cleanup
- Existing label color and name is now shown in the color submenu
Version 0.29.1
🚀 New
- Links and attachments now have an "Open With" context menu item
- Preference for a default composing font
- Simplified Chinese localization (thanks, Eryou!)
✨ Improved
- Long lists of recipients are initially collapsed to 2 lines
- Syncing optimizations to reduce number of queries
- Additional email tracking services are now blocked
🔧 Fixed
- Crash after removing an account
- Copying from a message in dark mode and pasting into the compose window results in black text
- Video elements embedded in messages do not play
- Pasting a code block hangs the compose window's editor
- Wrong signature may get inserted when changing the From address
- Crash replying to messages with certain types of image attachments
- Pressing Tab in the compose window editor doesn't insert tabs
- Replying to a message sent by yourself sometimes doesn't populate the right To recipient(s)
- Crash when selecting black in the color picker panel
- Dragging an attachment to the Desktop sometimes results in a textClipping getting written
- Attachment drag image has incorrect source frame at non-default text sizes
- Images aren't droppable in the editor after the last line of text
🧹 Cleanup
- Fixed unlocalized SwiftUI buttons in the Onboarding window
- Fixed incorrect margin after the media tray
- Fixed shifting of expand/collapse button in conversation view when opening a standalone window
- Rename the "Prompt for Action" Delete Key preference
- Extend beta build expirations from 45 days to 60 days
Version 0.28.1
🚀 New
- Configure a reply-only signature
- Override the server-defined new messages signature
- Russian localization (thanks Leonid, Mike, Juris, and Светлана!)
✨ Improved
- The "Move To" popover now offers system labels (Inbox, Spam, and Trash)
🔧 Fixed
- Arrowing up/down in the search field suggestions menu skips items
- Toggling star from the message header isn't undoable
- Long recipient lists sometimes don't truncate
- Labels have incorrect height at non-default text sizes
- Printed messages shouldn't show the unified label list
- Unified labels list shouldn't include Drafts
🧹 Cleanup
- Attachment picker button title is unlocalized
- Subject shifts when labels are added or removed
- Subject spacing inconsistent between singletons and conversations
- New button style for banner buttons
- Tweak spacing in message header
- Text in search field suggestions sometimes misaligned with image
Version 0.27.1
✨ Improved
- Add the ability to dismiss the "Connect to Google Contacts" prompt in the compose window
- Add a remove button to labels in the conversation header
🔧 Fixed
- Dragging attachments to Finder sometimes writes text clippings
- The compose window's format bar visibility isn't remembered
- Autocompleting to Apple Contacts groups doesn't work
- New or updated Google Contacts sometimes stop syncing
🧹 Cleanup
- Autocomplete suggestions now favor Apple Contacts over Google Contacts
Version 0.27.0
🚀 New
- See Google profile photos for people you've previously emailed
- Autocomplete suggestions from your entire server-side sent email history
- Autocomplete suggestions from Google Contacts and the Workspace Directory
- Unified labels list in conversation view
- Redesigned onboarding UI, rewritten with SwiftUI
✨ Improved
- Add ability to copy (⌘C) attachments from message headers
- Revised UI for adding additional accounts
🔧 Fixed
- Bottom-posted replies are sometimes incorrectly collapsed
- Pressing ⌘⌫ in the search field deletes/archives selected message instead of clearing text
- Links in messages with base URLs don't work (e.g. Bugzilla notifications)
- After trashing a draft with an attachment, thread row in Inbox is too tall (as if the thread had an attachment)
- Video/Audio attachments can't be selected or dragged out
🧹 Cleanup
- Add drag tolerance to attachments in conversation view
- Prevent existing windows from restoring if the onboarding window is required
- Revise appearance of labels in dark mode
- Reduce the number of Oauth scopes requested during onboarding
Version 0.26.2
🔧 Fixed
- Compose windows are abandoned in memory if sent
- After pressing delete, sometimes more than 1 row gets archived/trashed
- Random Login failed / reconnect prompts displayed (if token refresh network requests time out)
- Signature gets duplicated when changing the From account in dark mode
- Printed messages should have a job title for saving to PDF
- Printed messages should show absolute dates, not relative ones
- Printed messages should show remote images if previously loaded
🧹 Cleanup
- Logging improvements
- Tweak date format in conversation view
Version 0.26.0
🚀 New
- Print a conversation or individual message
- Export a conversation or individual message as PDF
✨ Improved
- The last-selected Image Size is now remembered
- Participant lists now use the term "me" when appropriate
- View > Show with Light Background now works for compose windows
🔧 Fixed
- Newly-arrived messages sometimes don't get automatically marked as read when viewing
- Warning when adding attachments that are too large doesn't work anymore
- Incorrect message size calculation when pasting images
- Resized Retina screenshots become blurry (non-Retina)
- Deleted drafts can get duplicated if an update action was in flight when the deletion occurred
- Sync error when simultaneously deleting the same large batch of messages in both Mimestream and in Gmail
- Pressing Spacebar on a selected attachment sometimes scrolls instead of starting Quick Look
🧹 Cleanup
- Reduced the maximum dimensions for all image size settings
- Improved the over-archive bug trap
Version 0.25.0
🚀 New
- "Undo Send" with a configurable cancellation period
🔧 Fixed
- Renaming a parent label should rename all child labels
- Replying to a sent message shortly after sending it results in a split thread for the recipient
- Resizing JPEG images with embedded thumbnails can have blurry output
- Resizing JPEG images can incorrectly result in PNG output
- Quick Look window goes blank when switching focus to the compose window
🧹 Cleanup
- Improved speed of JPEG image resizing
Version 0.24.1
🔧 Fixed
- Sync error after changing the from account for a draft
- Replies sent from a different account don't thread together for the recipient
- The subject field shouldn't allow for file URL drops
Version 0.24.0
✨ Improved
- New unread messages in the conversation view are automatically marked read (after being actively viewed)
- Support selecting and dragging multiple attachments from the message header
- Added a warning banner for drafts that may be Gmail Templates
🔧 Fixed
- Sync error when sending a draft message
- Pressing enter in the subject text field of the compose window should advance to the body
- Account profile photos no longer sync
- Pasting a mailto link into an address field should extract the address
- Text in the search field becomes white after switching from Dark to Light mode
- The Quick Look window should allow viewing all selected attachments
- Support drag images for non-inline images in the media tray
Version 0.23.2
🔧 Fixed
- Sync error after entering an invalid address (ending in a period) into the compose window
- Changing the "From" address doesn't replace the existing signature (in dark mode)
- Crash when exiting search mode if the filter was previously active
- Pasting into the search field should remove style of pasted text
- Replies split from the original thread, even if any subject edits are undone
- The "Copy address" context menu item for address tokens in the compose window doesn't work
Version 0.23.1
✨ Improved
- Unified Inboxes are automatically expanded once to improve feature discoverability
🔧 Fixed
- Crash when address field autocomplete suggestions have a Contacts group where no member has an email address
- Selecting a Contacts group suggestion doesn't insert member addresses into the address field
- Can't move Sent messages into the Inbox
- Clicking a non-inline image in conversation view doesn't select it
🧹 Cleanup
- Add View menu item to show/hide message account, disabled by default
Version 0.23.0
🚀 New
- Search field tokens to construct complex searches
- Search suggestions added for labels, attributes (unread, starred, important), and attachment types (presentation, document, spreadsheet)
- Inline image resizing in the compose window
- Message size calculation in the compose window
- Account names are shown in the message list for Unified folders
- Ability to show size in the message list (View > Show Message Size)
- Czech localization (thanks Vladimír and Jakub!)
✨ Improved
- Support for embedded message/rfc822 parts
- Added a sheet to create a new label and easily select the parent
- Added an "Add Link" context menu item to text in the compose window
- Autocomplete suggestions now match domains
🔧 Fixed
- Crash in background after a date change
- Crash when trying to attach a package
- The expand/collapse button's initial state can be incorrect
- Links without a URL scheme don't work when clicked
- The Search field suggestions menu should dismiss when the parent window is resized
- Clicking on blank space in the sidebar shouldn't exit search
- Double-clicking a non-inline image attachment in conversation view should open it
- Address token fields shouldn't tokenize on left-arrow
- Fix unnecessary <div> re-wrapping when editing templates
- Suggestions menus aren't deallocated after closing
🧹 Cleanup
- Tweaked appearance of addresses in suggestions menus
- Tweaked appearance of labels in the message list
- Add logging around template persistence
- Rename "G Suite" to "Workspace" to reflect updated branding
- Move Link-related context menu items to the top level so they're easier to find
- Fix occasionally incorrect text baseline alignment in address token fields
Version 0.22.0
🚀 New
- Preference to adjust the delay when automatically marking messages read
✨ Improved
- Allow pasting a URL over selected text to easily create a link
- Option to insert a remote image from URL into a composed message
🔧 Fixed
- Message list filter doesn't show old unread messages
- Replies to complex HTML messages sometimes have no margins
- Changing the From account can lose user-typed text when the signature is replaced
- Templates with more than one substitution don't work correctly
- Replies are sometimes incorrectly inserted at the top of a conversation
- The Subject header is shown unnecessarily for first message selected after launch
- Command-clicking a link in the compose window should open it in the background
Version 0.21.1
🔧 Fixed
- Initially unread messages aren't preserved in a filtered message list when conversation are disabled
- Buttons in conversation view don't work (macOS 11.5 Beta only)
Version 0.21.0
🚀 New
- Preference to disable conversations
✨ Improved
- Added a banner for draft messages with an "Open Draft" button
- Added a trash button to the header of draft messages
- Added the ability to mark a single message read/unread in conversation view
- Revised design for banners and icons in message headers
🔧 Fixed
- Can't undo drag and drop of messages
- Changing the subject of a reply/forward should fork the thread (like Gmail)
- Subject changes should be displayed in conversation view
🧹 Cleanup
- Disallow opening of trashed drafts
- Increase tracking area size for message list star
Version 0.20.3
✨ Improved
- Account profile photo synced from Gmail
🔧 Fixed
- Address token fields erase contents/suggestions when becoming multiple lines long
- Inline images sent at full-size without a max-width
- Font size very large after pressing enter on an emoji-only line
- Template variable substituion fails with smart quotes present
- Attachments in messages sent to yourself sometimes don't appear in iOS Mail
Version 0.20.2
🚀 New
- German localization (Thanks, Mike!)
🔧 Fixed
- Crash clicking the Labels toolbar button in a standalone window
- Crash opening sidebar if there is a sync error
- Search suggestions menu should not have an initial selection
- Forwarding message with inline images makes them non-inline
- New labels don't start editable on macOS 11.3+
- Shouldn't show search suggestions from Spam or Trash
- Some search suggestion query strings need to be quoted
- Some labels cannot be dragged out to be at the top level of the account
🧹 Cleanup
- The un-star swipe action now uses a crossed-out star icon
Version 0.20.0
🚀 New
- Suggestions in the search field
- Spanish localization (Thanks, Sergio!)
- Dutch localization (Thanks, Guido!)
✨ Improved
- Refinements to address autocomplete suggestion ordering
- Added a search progress indicator
- Added "Insert File…" to the inline image toolbar item menu
- Improvements to server-side search performance
🔧 Fixed
- Crash on launch restoring an already-deleted draft
- Compose button is not visible when sidebar is narrow
- Width of address suggestions menu is not always wide enough to avoid truncation
🧹 Cleanup
- Internal project restructuring
Version 0.19.2
✨ Improved
- Use the arrow keys to expand a collapsed sidebar
- Added an insert image toolbar button to open the system media browser
- ⇧⌘V is now an alternate shortcut for Paste & Match Style (in addition to the standard ⇧⌥⌘V)
🔧 Fixed
- Occasional "Login Failed" errors
- Sent messages sometimes have a "noname" attachment when viewed in Gmail
- Images get stuck showing loading spinners on macOS 11.3 or newer
- Text typed into a draft doesn't save on 10.15.3 and below
- Pasting newline-separated email addresses in address fields doesn't work
- Gradients in messages are not inverted correctly in dark mode
- Open compose windows don't immediately reflect preferences changes as they are made
- Pressing the quote button doesn't work when cursor is in a list
- Shift+Enter should insert a newline inside a list
- Pressing ⌘← in the label picker incorrectly creates a new label
🧹 Cleanup
- Updates to French and Italian translations
- Offer a checkbox to suppress the outdated OS alert (resets on Mimestream upgrade)
- Support the name parameter for the Content-Type header
- Tidied up message HTML construction
- Added defaults to enable additional debugging of specific user issues
Version 0.19.1
🔧 Fixed
- Filter out uninteresting attachments (no filename, S/MIME signatures, etc) in the message list
- Message list attachment icons have no color and are misaligned on Big Sur 11.0
- Crash when collapsing a section in the sidebar
- Crash when changing the "Compose From" preference
- The "Insert signature before quoted text" preference can't be changed
🧹 Cleanup
- Internal persistence format changes (not backwards-compatible with older versions of the app)
Version 0.19.0
🚀 New
- Attachments shown in the message list (Big Sur only)
- Preference to adjust the message list row style/height
- Italian localization (Thanks, Marco!)
✨ Improved
- Automatically convert inline images from HEIC to PNG for compatibility
- Added option to disable Smart Lists
- Initial sync optimizations to download more messages more efficiently
- Added "Move To" toolbar item to the standalone window
🔧 Fixed
- Image markup doesn't work on Big Sur 11.3 or newer
- List row heights occasionally incorrect with small text size
- Messages should not show the attachment indicator for small image attachments in a signature
- The "Edit Labels" and "Move To" shortcuts don't work in the standalone window
- Lag opening label picker with many labels
- Clicking label with color in the label picker doesn't select it
- Undoing insertion of dragged-in inline image doesn't work
- Paragraph writing direction menu items are always disabled
- Selected text's font is not reflected in the format bar
- Incorrect initial background color in the format bar
🧹 Cleanup
- Trim whitespace when pasting into address fields
- Image markup panel presents from incorrect position
- Standalone window default toolbar items now matches the main window
- Default all non-Inbox/All searches to the current label's scope (like Gmail)
- Revert change to not mark messages read on auto-selection
- Fix alignment of unread indicator in list cell
- Warn users when running Mimestream on an outdated version of macOS Catalina (which can result in serious bugs)
- Separate address context menu items for "Copy Address" and "Copy Name and Address" in the compose window
Version 0.18.0
🚀 New
- Keyboard arrow navigation between split view panes
- Image markup integration in the compose window
✨ Improved
- Composing emoji-only lines of text now have a larger font size (like Messages)
- Scrolling to the bottom of the message list now loads twice as many messages from the server
🔧 Fixed
- Local cache gets out of sync with the server when the server cannot return history
- Deleting over 1000 messages causes a sync error
- Actions from message header menu should be undoable
- Shrink inline videos to fit the width of the viewing pane
- Infinite loop attempting to cache messages when offline
- Mimestream should not become the default handler for generic files
- Deleted inline images are sometimes not removed from the draft (if dragged in without focus)
- Automatic list insertion may not work when replacing a line of text
- Format bar's text color well does not update when transitioning between light and dark
- Format bar's color wells can now be accessed with full keyboard access enabled
- Format bar's quote toggle button doesn't highlight or un-quote on repeat click
- Format bar's color wells should invert selected colors when composing in dark mode
🧹 Cleanup
- Revised appearance of the format bar's color wells
- Revised appearance of the format bar's text alignment control on Big Sur
- Revised spacing of controls on the format bar
- Revised alignment of text in the font family & size pop-ups
- Update French localization with new translations
- Eliminate unnecessary redundant message fetching
- Eliminate Go > Previous/Next menu items (since arrow key navigation is now supported)
- Message list table row views now use the table's reuse queue to avoid memory bloat
- Background caching of message content is now limited to a 7-day window
Version 0.17.0
🚀 New
- Text and background color pickers in the format bar
- Continuity Camera support (insert picture, sketch, or scan from iPhone/iPad)
🔧 Fixed
- Text pasted with black color in dark mode (macOS Catalina only)
- Some mailto: URIs with percent encoding aren't properly handled
- Autocomplete suggestions should de-duplicate case-insensitive addresses
- Autocomplete suggestions to Google Groups should not include 'via' senders
- Focus should return to the message list after selecting an item in the sidebar
Version 0.16.1
🔧 Fixed
- "Move To" doesn't work when moving to a label already on the message
- "Move To" from Sent should not remove Sent label
- Broken main window key view loop (can't shift-tab from list to sidebar)
- Spacebar sometimes doesn't scroll with focus in conversation view
- Replying to a thread of forwarded messages might select the wrong target message
- Inline videos referencing remote files don't play correctly
- Address token context menu now shows both copy options
- Viewing raw source of a draft sometimes doesn't work
- Custom link colors in messages are not respected
- Compose editor's context menu has broken font actions
- Clicking an image in a reopened draft doesn't select the image for quicklook
🧹 Cleanup
- Onboarding window is now centered on screen
- Inline images are now sent with `max-width: 100%` inline style so they shrink-to-fit in Gmail
Version 0.16.0
🚀 New
- Inline find support in conversation view
- Expand or collapse all messages in conversation view
✨ Improved
- Quicklook support for inline images in the compose window
- Revised appearance of popups in format bar on Big Sur
- Address token context menu now shows both copy options
Version 0.15.1
🚀 New
- Address suggestions now include Groups from Apple Contacts
✨ Improved
- Address suggestions prefer recently-sent addresses over Contacts
- Added context menu items to add/edit/remove links when composing
- Added polling for accounts with IMAP disabled (IMAP is used for push)
🔧 Fixed
- Incorrect date received (in the future) shown for some messages
- Messages should not be marked read when restoring selection (switching folders, launching app, etc.)
- Reconnect prompt not displayed in response to some authentication failures
- Underline and Strikethrough buttons in formatting bar don't update when de-activated
🧹 Cleanup
- Message list row heights animate on app launch (with non-default text size)
Version 0.14.4
🔧 Fixed
- Messages sent without inline image attachments (Catalina only)
- Compose window formatting options don't work (Catalina only)
- Message list does not expand to full width of window
- Email address not displayed if name starts with a ZWJ character
- "Remove Link" in link edit sheet does not work
🧹 Cleanup
- Message list row heights animate on app launch
Version 0.14.3
✨ Improved
- Prompt for delete key behavior (Archive or Trash)
🔧 Fixed
- Cut+paste and delete+undo of inline image results in missing attachment data
- Text background occasionally turns gray when editing in dark mode
- Crash after emptying trash or deleting all spam messages with a selected message
- Crash on launch if web-safe fonts aren't installed
- Selecting font size sometimes jumps to size 48
- Drag and drop of text in dark mode doesn't work
🧹 Cleanup
- The notification action button now mirrors the delete key behavior
- Pressing enter in a blockquote can result in a JavaScript stack overflow
Version 0.14.2
🚀 New
- Send Again (create a new draft from an existing message)
✨ Improved
- Text size of message list is now adjustable
- Web-safe font family options added to the formatting bar
🔧 Fixed
- Typing in the search field is laggy
- Inline images appear blank in quoted content
- Don't restore scroll position when reopening a label
- Anchor tags without href should not be styled link-blue
- Forwarding messages with attachments results in auto-saved drafts (before user interaction)
- Label filtering behavior does not match Gmail behavior with "-" separators
- Font size changes sometimes automatically revert
- Dark reformatting: Text with remote fonts not reformatted
- Dark reformatting: Border colors not darkened
- Dark reformatting: Gradient backgrounds not darkened
- Dark reformatting: Skip reformatting elements with background images
- Dark reformatting: Non-grayscale background colors not reformatted
- Dark reformatting: Text in tables in quirks mode document not reformatted
- Dark reformatting: Copying and pasting text elsewhere results in white text
- Dark reformatting: Invisible black cursor when pasting content with caret-color style
- Dark reformatting: Pasted text is sometimes black, but then changes to white after a few seconds
🧹 Cleanup
- Show progress indicators for image attachments instead of question marks
- Only offer the Archive notification action on Big Sur to avoid the options menu
- Additional email tracking services blocked
- The "Copy Address" token context menu now includes the display name (hold option to copy without name)
Version 0.13.1
🔧 Fixed
- Dark mode reformatting fails on some messages with tables rendered in quirks mode
- Window size is not restored after zooming (work around an AppKit regression)
- Drafts sent within a few seconds of creation may be sent with no subject
- Changing font size doesn't work if selected text has multiple sizes
- Multiple spaces in subjects are not displayed correctly in conversation view
- Underscores in header fields can be encoded incorrectly as spaces
- Window toolbar becomes compact style when window size is small
- Show Sidebar menu item is always disabled on Catalina
- Labels popover filtering doesn't work if search phrase contains spaces
- Rollover highlight stops working in the address field suggestions menu after scrolling
- Inbox Zero text not shown on launch
- Zero bottom marging in the compose window's editor
🧹 Cleanup
- When a user label is selected, search now begins scoped to that label
- Always show separator for composing section in Preferences
Version 0.13.0
🚀 New
- Preference to show entire address when composing
✨ Improved
- Address autocomplete sorts recently used addresses first
- Address autocomplete shows source of suggested address
🔧 Fixed
- Toolbar customization to show icon and text lost after relaunch
- Relative dates in message headers don't update after day changes
- Prevent Tabbed Space toolbar items from appearing on Big Sur
- Multi-line addresses get covered by completion menu
- Crash when undoing text entry in address field
- Address autocomplete menu doesn't reappear after deleting characters
🧹 Cleanup
- Label popover search behaviors updated to match Gmail
- Pressing right-arrow on an address suggestion now selects it
Version 0.12.1
✨ Improved
- The View menu now has a "Show/Hide Viewing Pane" item
- Drop files on the Dock icon to compose a new message with it attached
🔧 Fixed
- Incorrect font size displayed in format bar with a non-default text size preference
- "Remove Formatting" doesn't work in dark mode
- Titles reappear in small main windows on app launch
🧹 Cleanup
- Allow directory creation in the Save Attachments panel
Version 0.12.0
🚀 New
- Create labels from the Labels and Move-To popovers
- Ability to collapse the conversation view pane
- Automatic smart links in the compose window
✨ Improved
- The Labels popover supports a "mixed" state for labels applied to some, but not all, messages
- Improved text wrapping behaviors
🔧 Fixed
- Template picker sometimes doesn't activate
- Automatic writing direction should not modify pre-existing or quoted content
- Automatic writing direction should default to previous paragraph's direction
- Dark mode reformatting fails on some messages
- Cannot quicklook saved .eml files (incorrect line endings)
- Crash on exception when clicking outside table view in labels/move-to popovers
- Multi-line address completions are covered by address completion menu
🧹 Cleanup
- Improved clarity of account deletion text
Version 0.11.2
✨ Improved
- Add a "Move to Inbox" menu item
🔧 Fixed
- Regression: Text size preference broken in compose window
- Inline style of <body> tag in quoted message affects composed reply text
- Moving messages from All Mail or Search should remove the Inbox label
- Automatic link detection should work on URLs without schemes
🧹 Cleanup
- Support dark mode in the Acknowledgements
Version 0.11.1
🚀 New
- Templates library for frequent replies
✨ Improved
- Automatic LTR/RTL writing direction on a per-paragraph basis
- Labels popover now shows colors of selected labels
- Default font size increased to 13px
🔧 Fixed
- Changing font size clears other formatting
- Formatting shortcuts (e.g. ⌘B) sometimes don't de-activate style
- Selecting address completion with comma in display name doesn't work
- Account aliases sometimes get duplicated
- Load images banner sometimes shown unnecessarily (e.g. GitHub notifications)
- Clicking "New Message" from the dock menu should activate the app
- Drafts sometimes don't push the latest content to the server
- Crash quick-looking attachments from compose header
- Messages with <pre> tags don't wrap the way they do in Gmail
- Code block sometimes incorrectly inserted when tabbing into compose window's body editor
- Double-clicking inline attachment in compose window should open it
🧹 Cleanup
- Go menu now uses SF Symbols on Big Sur
- "Copy Server ID" and "Copy Gmail URL" now primary items in the message header menu
- Fixed casing of first address completion suggestion
- Whitespace handling in snippet/preview text now matches Gmail
- Fixed clipping in Accounts and Signatures preferences tables
- Address fields automatically scroll to current cursor position
- Refactored compose editor view into a separate Swift package
- Reformatted acknowledgements file
Version 0.10.2
🔧 Fixed
- Pasting non-address text into an address field doesn't work
- Text disappears when editing an token in address field
- Dragging multiple tokens between address fields doesn't work
- Pasting comma-separated addresses in fields doesn't work
- Copying and pasting tokens results in a move instead of a copy
- Can't paste, enter, or move addresses with quotes in display name
- Dragging address token to a different field removes duplicate copies
🧹 Cleanup
- Pressing Tab in label picker view should autocomplete the selected label
- Pressing enter in an address field now moves focus to the next field
- Fix unnecessary horizontal scrolling in address fields
- Fix incorrect (green +) cursor shown when dragging address between fields
Version 0.10.1
🚀 New
- Drag and drop labels in the sidebar to create hierarchies
✨ Improved
- Account Notifications preference now affects Dock badge count
🔧 Fixed
- Rare sync error when sending a draft (newly-recorded server ID reverted due to race condition)
- Search automatically exits if results from server contain a legacy label
🧹 Cleanup
- Restore default Paste and Match Style shortcut for Gmail Shortcuts
- Labels can have illegible text in dark mode if they use a legacy color
Version 0.9.2
🚀 New
- French localization (Thanks, Stéphan!)
🔧 Fixed
- Opening a mailto: link should respect the "Compose From" preference
🧹 Cleanup
- Fixed many assorted localizability issues
- Removed unsupported Format menu items
Version 0.9.0
🚀 New
- Configure notifications separately for each account
- Configure notifications by type: Inbox, Primary Inbox, or None
✨ Improved
- Autocomplete now completes email addresses and last names
🔧 Fixed
- Autocomplete capitalizes first letter of input
- Clicking suggestion in autocomplete menu should immediately tokenize
- Some messages (e.g. USPS Receipts) don't render
🧹 Cleanup
- Refactored token field and token picker into a separate swift package
- Trash conversation prompt should have Trash button highlighted by default
Version 0.8.6
🔧 Fixed
- Reply doesn't work on forwarded messages
- Deleting labels shows error message
- Creating new label should begin editing of placeholder label name
🧹 Cleanup
- Revised formatting bar icons for indent/outdent
Version 0.8.5
🔧 Fixed
- High CPU utilization continuously redrawing message list
- Search field loses focus after deleting all text
- Sidebar loses focus after changing selection
- Collapsing a sidebar item results in no selection
🧹 Cleanup
- Improvements to diagnostics script
- Search now sets window title
- Reverse indent/outdent buttons in the formatting bar reversed to match other apps
Version 0.8.4
🚀 New
- "Move to" toolbar button, popover, and shortcut (⌘⇧M or 'V' in Gmail shortcuts)
✨ Improved
- Focus now returns to message list whenever a "next selection" occurs
🔧 Fixed
- Labels popover doesn't respond to clicks when filtered
- Labels popover changes anchoring edge as results are filtered
- Labels popover doesn't resize width to fit long label names
- Labels popover can have duplicate entries for labels
- Labels popover doesn't find labels if search contains "/" character
- Labels submenu doesn't show mixed state when multiple conversations with different labels are selected
- Crash moving message to a new label while offline
- Crash when quicklook window is open, but conversation changes
- Reply/Forward toolbar button sometimes targets incorrect message
- Label unread counts don't aggregate from 2+ levels of children
- Search field should allow horizontal scrolling
🧹 Cleanup
- Labels popover now has menu-like padding
- Labels popover is now positioned to the right of message list rows
- Labels popover now has correct initial token field size
- Labels popover prevents multiple instances from showing
- Message list header margins now match the toolbar margins
Version 0.8.3
🔧 Fixed
- Crash when waking system from sleep
- Crash on launch (parsing certain messages)
- "Move to" context menu item acts on selected conversation, rather than clicked conversation if focus isn't in list
Version 0.8.2
🚀 New
- Added a "Move to" submenu to the Message menu
🔧 Fixed
- Sync error alert with a "Too many open files" message
- Push connections stop working after a few sleep/wake cycles
- Quoted text in replies sometimes omits portions of content
- Incorrect date received on emails imported by Gmail from a POP account
🧹 Cleanup
- Add a bottom margin to messages
- Disable send buttons when the compose window isn't key
Version 0.8.1
🔧 Fixed
- Cannot archive messages in All Mail or while searching
- Memory leak after closing compose window
- Entire conversation deletion prompt should ignore messages already in Trash
- Allow confirmation of emptying Trash or Spam via keyboard
- Incorrect ordering of mailboxes in Go menu
🧹 Cleanup
- Improve logging to help track down various sync errors
Version 0.8.0
🚀 New
- Standalone windows now have all toolbar buttons (e.g. Archive, Trash, etc.)
✨ Improved
- Send and Archive automatically selects the next row
- Undo support added to standalone window actions
- Star added back as an optional toolbar item
- Trashing a conversation now moves all messages to trash (with a warning)
🔧 Fixed
- Label popover can apply new labels to the wrong messages if popover dismissal action changes selection
- Notifications should be grouped together in Notification Center
- Undo stack should not clear when changing folders
- Sync error when renaming a label with a legacy color
- Report Spam should not remove non-Inbox labels
- Mailbox counts don't appear at narrow sidebar widths
- Clicking a link with a missing href results in an error
- Crash on launch restoring compose window for already-Sent message
- Duplicate Filter items when customizing toolbar
- Pasting URL with newline into link edit sheet fails
- Incorrect app version embedded in Mime-Version header
- Archiving a conversation sometimes results in two rows getting removed and the view out of sync with the list
🧹 Cleanup
- Refactored model API layer for more robust undo support
- Correct version of Mimestream now embedded in Mime-Version header
Version 0.7.7
✨ Improved
- Address token context menu now has a "New Message" option
- New toolbar icon for Send and Archive on Big Sur (SF Symbol)
🔧 Fixed
- Crash archiving/deleting messages from context menu
- Crash on reply to message with invalid HTML formatting
- Push connection stops working with "too many files" error
- Threads subject and preview text flickers (some GitHub notifications)
- Some inline images sent by Apple Mail do not resize proportionally
🧹 Cleanup
- Fixed compose header spacing inconsistencies
- Adopt new destructive action style for Delete buttons
- Revised toolbar item labels on Big Sur
Version 0.7.6
✨ Improved
- Address fields now resize and scroll to fit more recipients
🔧 Fixed
- Onboarding window doesn't appear during first launch on Big Sur
- Compose window attachment spacing issues on Big Sur
- Dock icon sometimes 1px too high on Big Sur
- Signature images hosted by Google sometimes don't appear in compose window
- Mailto links with BCC don't work
- Crash when dragging address tokens between fields
🧹 Cleanup
- Set preferred initial split view divider positions when running on Catalina
- Shorter toolbar item labels on Big Sur
Version 0.7.5
🔧 Fixed
- Spacing and alignment issues in the compose window on Big Sur
- Opening 2nd standalone or compose window reverts to default window size
- Conversation view flickers rapidly after exiting screensaver
- Broken mailto: link handling (failure to remove percent encoding)
- Message counts in message list should exclude Spam/Trash
- Formatting bar font size popup shows incorrect size with non-default Text Size preference
- Collapsing Cc/Bcc rows loses recipients
- Resizing the conversation view results in content shaking
🧹 Cleanup
- Prevent attachments over the size limit from being added to a draft
- Sort labels with a localized ordering to put Emojis at top
- Tweaks to the Sync Error alert, requesting users to report a bug
Version 0.7.4
🔧 Fixed
- Push connection sometimes fails to resume
- Can't paste multiple addresses into recipient fields
- Crash when creating new labels
- Deleting forwarded attachments deletes original message's attachments
- Draft with attachment is duplicated on re-open and close
- Attaching directories appears to work, but doesn't
- Rendering HTML tables in quirks mode sometimes has broken text wrapping
- Messages from eBay render incorrectly with vertical row of single characters
- Repeated crash on launch in ThreadListResultsController.objectAtIndex()
- Opening an attachment should open a pristine copy of the original, not a previously-edited copy
🧹 Cleanup
- Added signature configuration instructions as placeholder text
Version 0.7.3
✨ Improved
- Adopted Cocoa UI Preservation to preserve open windows after a restart
🔧 Fixed
- Crash renaming a sidebar item: More layout window passes than views
- Cannot trash local-only search result
- Search scope bar sometimes shows when not in search
- Dark mode reformatting fails on tables in quirks mode
- Dark mode reformatting fails on elements with transition styles
- Dark mode reformatting fails on elements with parent background
- Dark mode reformatting fails on background colors with low alpha values
- Clicking already-selected sidebar item should exit search
- Pressing Esc in search mode should exit search
- Folder navigation shortcuts should exit search
🧹 Cleanup
- Incorrect background style on labels in message list
Version 0.7.2
🔧 Fixed
- Collapsed messages sometimes expand unnecessarily tall
- Sent attachments sometimes appear as "noname" in Gmail iOS
- File extensions are repeated when saving all attachments
- Conversation view stuck scrolled halfway after changing screens
- Unread indicators in message list sometimes don't update
- Relative dates need to update after date/clock/timezone changes
- Blurry mark unread toolbar icon on 1x displays
- Clicking the dock icon should restore main window if not open
🧹 Cleanup
- New windows should cascade
- Restore Archive as first toolbar item above message list
Version 0.7.1b
🚀 New
- Filter message list by unread or starred
✨ Improved
- Clickable star in message list
- Faster undo operations
- Delete Key preference can now be Remove Label, Archive, or Trash
🔧 Fixed
- Sync error when updating drafts
- Automatic linkification sometimes leaves semicolon
- Crash clicking Empty Trash or Delete Spam in header
- Crash unstarring or removing labels from messages
- Crash when syncing new mail in background
- Sync fails if draft with attachment was updated on server
- Messages sometimes render slightly clipped
- Esc no longer refocuses on message list in Big Sur
- List selection gets out of sync with conversation view
- Reply to self-sent message shouldn't populate Cc recipients
🧹 Cleanup
- In Labels, Archive is now a primary menu item instead of an alternate
- Drafts repositioned to be above Sent
- Eliminate GitHub-based bug reporting option
Version 0.7.0c
🚀 New
- Ready for macOS Big Sur (adopted new UI)
- Ready to run on Apple Silicon
✨ Improved
- Added setting for account's preferred reply alias
- Swipe action threshold reduced
🔧 Fixed
- Wrong image attachments displayed for message
- Dark reformatting fails on messages with inline SVGs
- Corrupted collapsed message if preview begins with '>'
- Lag when selecting all messages in the list
🧹 Cleanup
- Added default key binding for Remove Style: ⌘\
- Unhandled exceptions now generate crash logs
Version 0.6.26
🚀 New
- Feature Roadmap – vote on features and submit new ideas (see Help menu)
🔧 Fixed
- Repeated crash on launch when an expected token isn't in the keychain
- Changing From account of a reply results in a sync error
- Signature images hosted on Google Drive sometimes do not appear
- Date on drafts is not updated after initial creation
- App sometimes hangs with lots of contacts in address book
- Some conversation subjects appear corrupted
- Gmail shortcuts mode should map Command-Shift-V to Paste and Match Style
- Reply to message with empty subject doesn't place cursor in body
🧹 Cleanup
- Bugs can now be submitted via GitHub (see Help menu)
- Added a confirmation sheet when deleting accounts
Version 0.6.25
🚀 New
- Added "Mark Unread from Here" to conversation view message menu
- Added (optional) "Send and Archive" button to compose window toolbar
✨ Improved
- Address autocompletion now prioritizes contacts and aliases
🔧 Fixed
- Signature images display as question-mark (too many loads result in 403 responses)
- Deleting several messages can crash in ThreadListResultsController.canArchive()
- Candywheeling main thread blocked on contacts refreshing
- Changing signatures in a reply with content doesn't work
- Sidebar section header context menu "New Label" action doesn't work
- Dates are incorrect for imported/migrated mail
- Mark Unread should work like Gmail and mark all messages in thread unread
🧹 Cleanup
- Fixed positioning of Star toolbar button in standalone window on Big Sur
- Improved draft syncing logging
Version 0.6.24b
🔧 Fixed
- Crash on exception: More layout window passes than views
- Drafts can load blank if opened before original body content has synced
- Broken conversation view layout when messages have Resent-Date header
- Double vertical scrollers sometimes shown when scrollers are visible
- Horizontal scroller floats above bottom of window
- Mimestream constantly using a lot of CPU at narrow message list widths
- Permanently deleting individual messages doesn't work
- Messages fail to send if identity's display name has a newline
- Label popover search should match individual words of label names
- Replying to a thread selects an old message
🧹 Cleanup
- Added No Subject placeholder text
- Long attachment names are now truncated in message headers
- Cleaned up margins in conversation view
- Message bodies no longer bounce when scrolling horizontally
- Added to blocked email trackers list
- Prevent trimmed message content toggle buttons from being selected
Version 0.6.23c
🚀 New
- Preference to reverse order of conversation view
✨ Improved
- Open button added to drafts in conversation view
- Revised appearance for contact photo monogram placeholders
- Esc restores focus to the message list
🔧 Fixed
- Push sometimes stops working
- Incorrect image attachment loads (if Content-ID was reused)
- Delete key doesn't work when focus is in viewing pane
- Gmail j/k shortcuts don't work when focus is in viewing pane
- Respect Reply-To header when message is from an owned account/alias
- Ordered list start numbering doesn't work
- Conversation action buttons show internal URL tooltips
🧹 Cleanup
- Present warning if sending message without a subject
- Draft messages always expanded in conversation view
- Message action buttons now have a clicked state
- Holding down Option exposes alternate "Copy Gmail URL" action (instead of "Open in Gmail")
Version 0.6.22
✨ Improved
- URLs are now shown in tooltips when hovering over links
🔧 Fixed
- Drafts sometimes fail to update/send (race with push-originated sync)
- Non-ASCII text sometimes rendered incorrectly in other email clients (missing charset parameter)
- Crash when using table row swipe actions
- Calendar invitation .ics attachments are not shown
- Opening/Quick-looking attachments in compose window can open the wrong attachment
- Main window doesn't maximize when double-clicking tabbed space
- Shrink-to-fit inline images sent by Apple Mail
- Automatic list numbering sometimes incorrect
🧹 Cleanup
- Clarified language in label deletion prompt
Version 0.6.21
🚀 New
- "Remove Formatting" button in formatting bar
✨ Improved
- Cc/Bcc toggle buttons are now sticky
- Cc/Bcc can now be toggled via the View menu, with keyboard shortcuts
- Clicking a mailto: link stays within Mimestream, irrespective of the default email client
🔧 Fixed
- Unread messages should not be shown collapsed in thread view
- Typing into subject field is laggy
- Shift-tab does not go back to subject field
- Attachment filenames with non-ASCII characters are not encoded correctly
- Selected row in message list can skid upwards if a new message arrives
- When editing labels, initial cursor position shoudl be end of list
🧹 Cleanup
- Compose window token fields are now baseline-aligned with labels
- Updated incorrect tooltip on "Remove Label" toolbar button
- Additional email tracking services detected and blocked
Version 0.6.20
🚀 New
- Dark mode for all messages
✨ Improved
- Better address autocomplete results from recent email
🔧 Fixed
- Notifications are shown during search for unread results
- Address autocomplete menu selects incorrect address
- Spell check re-enabled even if disabled
- Retina screenshot attachments are shown blown up
- Forwarding from standalone window opened from search doesn't work
🧹 Cleanup
- Warning if attaching files that are too large to send (until Google Drive support can be added)
- FAQs added to the Help menu
Version 0.6.19c
🚀 New
- Added "Search for _" to sender context menu
- Added more swipe action options (None and a combined Trash/Spam)
- Added "Open in Gmail" to Message menu (with shortcut)
✨ Improved
- Forwarding messages now picks the best address/alias
- Opening a message in a standalone window marks it read immediately
- Clicking Cc/Bcc buttons sets focus in the token field
- Archive toolbar button swaps to "Remove Label" when in a label
🔧 Fixed
- Trashing/Deleting from search results leaves empty/blank rows
- Crash after leaving search results
- Dragging messages to Sent produces infinite error loop
- Newly-created labels are set to "hidden" in Gmail
- Search scope toggle sometimes doesnt work right
- Sometimes, "Delete Permanently" doesn't proceed with deletion
- Command-Shift-N should not create new label when using Apple Mail shortcuts
🧹 Cleanup
- Inconsistencies in Archive menu item titles when using Apple Mail shortcuts
- Add Print menu item that explains the feature is coming, and redirects to open in Gmail
Version 0.6.18
🚀 New
- Preference to mark messages read immediately, after a delay, or manually
- Preference to auto-select row above, below, or none (when deleting/archiving)
✨ Improved
- Add "Remove Current Label" option when in a Label
- Support "Y" Gmail shortcut to archive or remove current label
- Allow Delete key to be changed for Apple Mail and Gmail shortcuts
- Add "Trash" option to in-conversation message header menu
- Deleting a label now shows a confirmation sheet
🔧 Fixed
- Crash when marking all messages as read
- Trashing messages sometimes shows "Archiving" instead of "Trashing"
- Incorrect alias selected for some replies
- Trashing messages from search and quickly exiting can result in trash operation failing
- Incorrect tooltip on quote button
🧹 Cleanup
- Tweaked padding on ordered/unordered lists when composing
- "Change Labels" menu retitled to "Edit Labels" for consistency with Finder
- Removed always-disabled tab menu items from main window
Version 0.6.17
🚀 New
- Change label colors from context menu
- Newsletter signup added to onboarding flow
- "Save All Attachments" option added to message header menu
✨ Improved
- Sent messages now have a progress spinner until they have sent
- Messages that failed to send now have a red (!) icon
- Saving an attachment to Downloads now bounces the Downloads stack
- Added "Open Draft" context menu item to draft messages in conversation view
🔧 Fixed
- Attachment quicklook by spacebar sometimes doesn't work
- Cannot deselect attachment in header by clicking in message body
- Reply didn't thread with original thread (incomplete References header)
🧹 Cleanup
- Selected attachments in conversation view now have a non-key appearance
Version 0.6.16b
🚀 New
- macOS 11 icon enabled at runtime on Big Sur beta
✨ Improved
- Categorized inboxes are separated into a top-level Inboxes section
- Allow clipping/shrinking of formatting bar
- Added shortcuts to jump between mailboxes (⌘1, ⌘2, etc)
- Added shortcut to mark all messages as read
- Support Gmail list shortcuts
🔧 Fixed
- Blank reply windows should not be autosaved
- Deleting a dragged-in image attachment doesn't remove it from a draft
- Forwarding a message differs from Gmail, doesn't include in same threads
- Message list launches blank when sidebar is collapsed
- Message with explicit dark formatting should not be reformatted
- Crash in ThreadListResultsController.objectAtIndex()
- Main window can fail to load, invalid constraint
🧹 Cleanup
- New, wider thread list default width
- Default sort order for accounts should be order-added
Version 0.6.15
🚀 New
- "Smart List" insertion when composing
- Quote button in formatting bar
- Preferences to control Starred/Spam/Drafts badge counts
✨ Improved
- Attachment indicator added to message header
- Unread indicator added to message header
- Search scope now shows full mailbox path, e.g. "Inbox – Gmail"
- Show address in to compose window address token context menu
- Tab/Shift-Tab can now be used to adjust list levels
🔧 Fixed
- Deleting inline images doesn't always delete from message
- Flash of white (in dark mode) when pasting image into compose window
🧹 Cleanup
- Diagnostics script now collects more information
- Refactored message editing logic into reusable editor component
- Refactored framework-level preferences
- Simplified logic in ThreadListResultsController
Version 0.6.14
🔧 Fixed
- HTML code snippets aren't viewable (automatic linkification loses HTML entities)
- Font family popup should update when cursor position changes
- "Open Link" in the compose window should not open inline
- Sending a message can result in an error (when the server hasn't finished copying the message to Sent, and Mimestream's post-send message resync gets a 404 response)
- Repeated crash-on-launch when processing an invalid draft-send user action
- After deleting a label, it can be temporarily resurrected during a racing sync
- Address autocomplete fails when the address display name contains the '@' character
🧹 Cleanup
- The diagnostics script now collects all 'error' log entries for the Mimestream process
- Refactored app upgrade logic
Version 0.6.13
🚀 New
- Message menu option to "Open in Gmail"
✨ Improved
- Handle authentication failures and present recovery UI
- Starred and Spam folder counts removed to match Gmail iOS
- Gmail search results are now merged with local results, allowing for prefix local results
🔧 Fixed
- Status tray stuck showing "Deleting…" when deleting draft during update
- Crash opening preferences shortly after app launch
- Deleting an identity from Gmail does not sync locally
- Thumbnail images pasted into a compose window appear blank
- Labels from trashed messages should not be shown on Inbox thread
- "Open Gmail Settings" now goes to the select account's settings
🧹 Cleanup
- Fixed clipping of labels in general preferences
- Tweaked dark mode colors for collapsed threads
- Tweaked unread toolbar icon
- Tweaked alignment of Inbox category descriptions in preferences
Version 0.6.12
🚀 New
- Unread and Spam buttons added to toolbar
✨ Improved
- Revamped dark mode message reformatting without use of invert filter
- Move "Show with Light Background" to the View menu and make it reversible
- Compose formatting bar now uses standard-sized controls
🔧 Fixed
- Deleting draft does not immediately update count on Drafts mailbox
- Send button sometimes not active after entering address
- Pressing tab in compose window should insert tab, not jump back to To field
- Some signatures don't appear in compose window
- Some attachments do not display (Inline-disposition under multipart/related, but not referenced by text/html)
- Some inline attachments should not be listed (Non-inline-disposition and not multipart/related, referenced by a text/html part anyways)
- Crash viewing messages with relative-path text/html resources
- Crash removing star from last message in Starred folder
Version 0.6.11
🚀 New
- Formatting bar in compose window
✨ Improved
- Address group names are now displayed in thread content view
- Inserted lists are now styled to have no margin
- Thread content view star is now gold
🔧 Fixed
- Replying on Big Sur results in disabled Send button
- Compose window toolbar icons are now vertically centered on Big Sur
- Infinite loop in web process linkifying text (adopt anchorme.js for better linkification)
- Reply to message adds "Endif]-->" to text
- Inbox Zero sound and animation aren't synced well with each other
- Notification Trash action should not remove all labels
Version 0.6.10
🚀 New
- New mail, sent mail, and inbox zero sounds
✨ Improved
- Significantly improved performance with multiple accounts
- Added "/" Gmail shortcut for search
🔧 Fixed
- Clicking on partially-synced conversation results in uncollapsed messages
- Activity pane gets stuck showing Sending...
- Don't prompt to save a draft with no content
- Need to exclude Spam and Trash from most folders
- Trashed messages don't show their labels
- Handle multiple categories applied to a message
- Assertion failure when re-dispatching throttled queries
Version 0.6.8
✨ Improved
- Support building as a Universal app
- Full-screen compose windows now float atop main window
- mailto: URLs can now be pasted in compose window
🔧 Fixed
- Crash closing newly opened compose window
- Crash switching from identity in compose window
- Crash deleting label created offline
- Status tray got stuck showing "Deleting"
- Standard key bindings should apply to compose window save alert
- Address token context menu is sometimes unclickable
- Messages with pre-formatted text have extra newlines
Version 0.6.7
🚀 New
- Inbox Zero confetti pop animation
- Updated appearance for unread messages
✨ Improved
- Added a Toolbar item to toggle the Sidebar
- Performance optimizations when displaying conversations
- Enabled spellcheck by default in the compose window
🔧 Fixed
- Date/time received is incorrect
- Content view actions are too small on non-retina screens
- Repeated crash on launch syncing a draft update
- Crash when un-starring all messages in Starred folder
- No auto-selection after unstarring a message in Starred folder
Version 0.6.6
🚀 New
- Prevent tracking when viewing messages
- Notifications now have Archive and Trash buttons
🔧 Fixed
- Apple Mail shortcut set should match for Delete and Archive
- Broken conversation view scroll position when window resized with Magnet
- New messages failed to sync after partially-failed history-based sync
- Crash when viewing raw source
Version 0.6.5
🚀 New
- Label popover filtering and type-select support
✨ Improved
- Pressing Esc key now exits search mode
🔧 Fixed
- Crash when closing reply window and choosing "Delete"
- Crash when loading thread list contents
Version 0.6.4
🚀 New
- Added prompt to save or delete a draft when closing a compose window
- Quoted text is now visually differentiated from primary text
- Autocomplete for addresses now searches past To and Cc fields, not just From.
✨ Improved
- Local results are now initially presented when scoping search to a folder
🔧 Fixed
- Occasional crash when switching folders or exiting search
- Search scope header buttons sometimes don't show selected state
- Gmail compose 'c' shortcut doesn't work
- Attribution lines are missing email addresses
- Message without a From header totally breaks syncing
- Display of plain text emails does not preserve runs of whitespace
- Email address with specific character in display name renders blank
Version 0.6.3
✨ Improved
- Sent folder now shows To/Cc recipient names in message list, not your name
- Performance improvements for address autocompletion
- Added context menu to address tokens in compose window with edit/remove/copy options
🔧 Fixed
- Double-clicking token in compose window should allow editing
- Dragging tokens between address fields should move, not copy
- Address autocompletion should not consider messages in Spam
- Address autocompletion should work on combinations of name components
- Address autocompletion should present primary identities first
- Address autocompletion should work on middle name and nickname
- Address autocompletion should be diacritic-insensitive
- Flash when opening standalone window, after switching between dark/light appearance
- Thread incorrectly remains displayed after exiting search
- Split view divider draws incorrectly at fractional widths
🧹 Cleanup
- Compose window's initial responder is now the subject field if empty
Version 0.6.2
🚀 New
- Preference to use Gmail or Apple Mail shortcuts
- Menu item and shortcut to expand all messages in conversation
- Mark All Read message list header in categorized inboxes
✨ Improved
- Added tabbed space to align toolbar buttons with message list
- Empty grid is no longer drawn in message list
🔧 Fixed
- Forwarding message with inline PDF doesn't include attachment
- Unified folders should not show badge counts when disclosed
- Labels with children should show cumulative badge counts when collapsed
- File > Open menu item is always grayed out
- Exception when closing link edit sheet
- Message list header view doesn't update if there is a full results controller reload
Version 0.6.1
🚀 New
- Support drag and drop of file attachments into compose window
- Add ability to quick look attached file in compose window
- Add ability to open attached file in compose window
✨ Improved
- Application dock menu now has "New Message" option
- Updated compose window header attachment selection highlight
- Message list header buttons updated to use the rounded rect style
🔧 Fixed
- Incorrect initial scroll position of message list with header
- Message shows garbled header (need to properly escape addresses)
- Reply to a sent message doesn't thread with rest of thread
- Inconsistent message list grid color
Version 0.6.0
🚀 New
- Search header to change scope between current folder and All Mail
- Spam folders now have a Delete All header
- Trash folders now have an Empty Trash header
- Menu item and keyboard shortcut to mark message as spam
✨ Improved
- Search speed improvements
- Selection is now cleared when entering search, and restored when exiting search
- Pressing Esc from search field now returns focus to message list
🔧 Fixed
- Sometimes expanding range of search results doesn't work
- Message list context menu should not have shortcuts
- Message list separators drawn with incorrect style in rubber-banding area
🧹 Cleanup
- Refactoring of data source objects for threaded message list results controller
Version 0.5.9
🚀 New
- Preference to insert signatures below quoted text with "--" separator
✨ Improved
- Middle-button clicking a link now opens in background
- Added quick look to attachment context menu
- Added "Copy Server ID" menu item
🔧 Fixed
- Drafts sometimes show garbled text in recipient fields
- Sometimes To field does not display contents
- Zooming out in thread content view causes scrollbar to appear
Version 0.5.8
🚀 New
- Preference to set the default "From" address when composing
- Option to "Send and Archive"
- Signatures tab in preferences
✨ Improved
- Split view positions in the main window are now persisted
- Improved performance with a large number of labels
- Localized strings and resources, in preparation for translation
🔧 Fixed
- Archiving from a label is inconsistent with Gmail Web UI
- Sometimes mark-all-as-read doesn't work
- Crash when creating a new label
- Crash when un-minimizing a compose window
- Incorrect tooltips
- From popup in compose window should update with ordering changes
Version 0.5.7
🚀 New
- Sent message animation
✨ Improved
- Preference added to always view conversations in Light theme
- Clicked links now open in background if the Command key is pressed
- Updated message list cell layout with a yellow star indicator
- Standalone window's initial size is now bigger
🔧 Fixed
- The main window is restored when clicking a notification to activate the app
- labels.get API errors when syncing a large number of labels
- Mailbox popover sometimes doesn't accept text input
- Folder list scrolls when reloading
Version 0.5.6
🚀 New
- Open conversations in standalone pop-out windows
✨ Improved
- Categorized Inbox settings are now part of onboarding
- Enabled categories are synced from server during onboarding
- Accounts can be reordered by dragging in preferences
🔧 Fixed
- Unread count is -1
- Replying to a Sent message should reply to original recipients
- Preferences window title should match active tab
- Preferences window should remember previously selected tab
- Pressing delete key should beep if nothing happened
Version 0.5.5
✨ Improved
- Added key equivalent for New Label
🔧 Fixed
- Message with single PDF attachment and no body text does not show content
- Crash on Exception 'NSTableViewException', reason: 'Row -1 out of row range [0--1] for rowViewAtRow:createIfNeeded:'
- Reply All to message didn't CC all recipients, failure to encode email address correctly
- Non-user mailboxes should not be editable
- When setting the Delete Key action to Trash, Control-Command-A should be the key equivalent for Archive
- Toolbar configurations should autosave
- If Trash is a swipe action, Archive swipe action should not fallback to Trash
- Support forward delete for archiving/trashing messages
- High CPU utilization while typing replies
- Monogram in thread content view flickers/flashes when typing a reply
- Labels popover / menu should use a case-insensitive sort
Version 0.5.4
🚀 New
- Message > Label submenu and context menu
✨ Improved
- Added menu item to reopen the main window
🔧 Fixed
- Copy/pasting in compose window can result in black text in dark mode
- Crash on exception: "Attempt to add script message handler with name 'showAddressContextMenu' when one already exists"
- Crash performing @selector(openInWindowWithSender:)
- Updated app copyright year
Version 0.5.3
🔧 Fixed
- Duplicate copies of messages synced, account gets duplicated
- From popup does not display addresses with diacritics in name
- Crash when creating a draft if account name has diacritics
- Address tokens don't work if display name has diacritics
- Address tokens don't work at 1.0 scale factor
- Can't select address from autocomplete menu if name has diacritics
🧹 Cleanup
- Bumped persistence version to force a resync and clean up invalid data
- Tweaked app icon shadows
- Added support for colored mailboxes in demo mode
Version 0.5.2
🚀 New
- Label colors are synced from Gmail
✨ Improved
- Refined App Icon
- Refined Reply / Reply All / Forward icons
- Allow closing of label popover by pressing enter in token field
- Label popover now hugs contents and only expands to needed size
🔧 Fixed
- Incorrect sorting of mailbox tags
- Clicking message list row to dismiss labels popover applies labels to wrong message
🧹 Cleanup
- Prevent invalid label names from being entered in the label popover
- Added precondition checks to prevent incorrect mailboxes from being added to a message
Version 0.5.1
🚀 New
- Text size preference for thread content view and compose body view
- Zooming support in thread content view
✨ Improved
- Inbox preferences moved to a new Inboxes tab
🔧 Fixed
- Infinite sync loop when marking messages as read
Version 0.5.0
🚀 New
- Labeling support
✨ Improved
- New icons for labels
🔧 Fixed
- Infinite loop syncing when marking all messages as read, but new message arrived
- Reply All should not include your own address, even if display name is different
Version 0.4.11
🔧 Fixed
- Remotely-deleted drafts do not get deleted locally
- Regression, oversized padding in compose window's body
Version 0.4.10
🚀 New
- Add ability to open links in background
- Add ability to save message as .eml from raw source window
🔧 Fixed
- Infinite caching loop with duplicated message in persistence
- HTML messages should show without margin around body
- Flash in thread list when searching across multiple accounts
- Incorrect positioning of message body loading spinner
- Don't show Sender: if address is the same as From:
🧹 Cleanup
- Added "Add Account" to Mimestream menu
- Added multiple account support to demo-mode persistence manager
Version 0.4.9
🚀 New
- Add ability to increase/decrease quote level
- Add ability to paste as quotation
✨ Improved
- Added an "Attach Files" menu item and key equivalent
🔧 Fixed
- Links in some messages are not clickable
- Text fields in thread list jiggle during refresh
- Replies should go to the Reply-To address if present
- PSD attachments show a broken ? in the media tray
Version 0.4.8
🚀 New
- Mark as read works beyond the synchronized range
✨ Improved
- Added a menu item (with key equivalent) to begin a message search
🔧 Fixed
- When entering search, All Mail's last selected thread should not be displayed in the content view
- Paging in additional results during a search refreshed entire list to top
- Incorrect alignment of paper clip attachment icon in thread list
🧹 Cleanup
- Added new logging and removed some verbose logs that were unlikely to be needed
- Adopted Swift Package Manager for a dependency
- Reorganize project to use a single target/branch for both Beta and AppStore-Release builds with custom configs
- Resolved some log warnings
Version 0.4.7
🔧 Fixed
- Regression, thread list shows no contents after exiting search and then scrolling to page in additional results
Version 0.4.6
🚀 New
- Rewritten server-side search implementation
🔧 Fixed
- Search queries are PII and should not be logged
- Bad alignment of thread content view placeholder text
Version 0.4.5
🔧 Fixed
- Message failed to send, racing update and creation actions
- Unread bar lags in disappearing when clicking a message
- Thread content view has an initial flash of white when launching app in Dark mode
- Compose window can show incorrect background color if system appearance was changed after app launch
🧹 Cleanup
- Switched "Help > Report a Bug…" to open a new message with template, rather than directing to a Google Form
Version 0.4.4
🚀 New
- Add option to view raw source to message-specific context menu in thread content view
🔧 Fixed
- Old messages appear after newest message in thread content view
- Inline videos do not play
- "BMW of Alexandria" short name is "Of" in thread list
- Recipient monogram is backwards for many promotional messages
- Handle HTTP 502 errors as temporary errors
- Message header does not show attachment filetype icon on first load
- Message media tray does not update when attachments are just-in-time downloaded
- "Download linked file" context menu item doesn't work
- Fix broken context menu on inline images
- Non-inline images should not be referenced by bodyHTML
🧹 Cleanup
- Refactored MediaType out of ContentType in MIME parser
Version 0.4.3
🚀 New
- Support pasting inline image attachments in the compose window
🔧 Fixed
- When opening a new compose window in dark mode, body momenteraily flashes white
- Clicking unread count in mailbox list should not act like a button
- Drop zone for inline image attachments is too small, should be entire view
- Diagnostics script should use a temporary directory
Version 0.4.2
🚀 New
- Attachments in thread content view support quick look
- Undo support for Archive, Trash, Mark Read/Unread, and Star/Unstar
✨ Improved
- Threads with drafts now show Draft tag in message list
- Updated drag image for message list
🔧 Fixed
- Pressing delete while content view is in focus may randomly show previously-displayed message content.
- Archiving message in All Mail should not autoselect the next message
Version 0.4.1
🚀 New
- Labels are displayed in the message list
🔧 Fixed
- Crash when creating a new label
- Displayed swipe actions should disappear after archiving
Version 0.4.0
✨ Improved
- Re-architecture of history-based syncing to close race conditions
- Significantly faster batch query support when processing user actions
- Faster synchronization on app launch
- Add a no-selection and multiple-selection placeholder in the thread content view
🔧 Fixed
- Unread count is temporarily incorrect when marking all messages read
- Messages that failed to send should return to Drafts
- Resumed drafts don't autosave when edited
- Sync error continues to show even after a draft was updated
Version 0.3.16
🔧 Fixed
- Synchronization failing because the Gmail API began enforcing the 100 inner query limit for batch queries
- Thread content view stuck scrolled down page when app taken full-screen
- Toolbar items should have tooltips
- Thread content view inline action buttons need tooltips
- Drafts and Starred folders incorrectly enable "Mark all messages as read" context menu items
- Compose window title is just "Window", should be the draft's subject
- Minimum window size is too small
- Label name in thread content view shuold not show text selection cursor on hover
Version 0.3.15
🚀 New
- Ability to view the raw source of a message
✨ Improved
- Support for multipart/related when sending inline image attachments
- Add experimental default to reverse autoselection direction
Version 0.3.14
✨ Improved
- Performance improvements when syncing messages within a label
- Pressing spacebar while focus is in message list now scrolls content view
- Standard key bindings can now be used to navigate message list up/down
🔧 Fixed
- Image attachments in compose window should be resized to fit width of window
Version 0.3.13
✨ Improved
- New drag image for message list with badge count
- Tweaks and new artwork for onboarding window
🔧 Fixed
- Archived threads temporarily "pop back" in message list
Version 0.3.12
🚀 New
- Tokens can now be dragged between compose address token fields
🔧 Fixed
- First address completion suggestion should be auto-selected
- Address completion should search last name
- Address completion should conduct anchored searches on name components
- Address completion should not suggest automated sender previous recipient addresses
- Unread message strip needs a highlighted appearance
Version 0.3.11
🔧 Fixed
- Pressing CMD+R with focus in message body doesn't work
- Fixed issue where synchronization activity fails to complete
- Pressing return inside a quote block should break quote and outdent response
- Replies with new text inline in quote block should not be collapsed
🧹 Cleanup
- Tweaks to improve usability of on-boarding screen
- Status tray now displays offline status
Version 0.3.10
🚀 New
- Refreshed installer .dmg image background art
✨ Improved
- Improved diagnostics collection
🔧 Fixed
- Status tray can get stuck showing status when multiple actions are executed at once
- Already-deleted messages should not be re-persisted during sync
- On-boarding screen can re-display even if accounts are already added
- On-boarding flow can get stuck if adding an additional account is aborted
- Large query batches split incorrectly, significantly slowing down many sync operations.
- Use maximum allowable page size (500) when counting threads for categorized Inboxes to sync counts 5x faster
Version 0.3.9
🔧 Fixed
- Unedited draft should not be created when closing compose window
- Viewing draft in dark mode reverts to light after edit
- Sync error for mailbox user actions that stuck around after the mailbox was deleted
- Sync error when replaying change of message Unread/Flagged state, but message has already been deleted off server
🧹 Cleanup
- Clean up mailbox user actions that are in an invalid state
- Retrieve update availability from new Jekyll-generated XML file
Version 0.3.8
🚀 New
- Automatic linkification of URLs and email addresses in the content view
🔧 Fixed
- Racing when multiple user actions were concurrently being executed for same message/mailbox
- Some swipe action and banner icons broken
- Sometimes user action replay gets jammed if SC reachability change notification doesn't come as expected
Version 0.3.7
🔧 Fixed
- Infinite synchronization loop trying to cache messages already deleted from server
🧹 Cleanup
- Toolbar and sidebar icon tweaks
Version 0.3.6
🚀 New
- Custom toolbar icons
✨ Improved
- Improved logging to better understand reported issues
Version 0.3.5
🚀 New
- Custom shaded sidebar icons
✨ Improved
- Improved logging to better understand reported issues
Version 0.3.4
✨ Improved
- Hide unread count on Sent mailboxes
- Improved logging to better understand reported issues
Version 0.3.3
🚀 New
- Refreshed on-boarding UI
✨ Improved
- Optimizations to improve synchronization performance
- Accounts without sufficient OAuth scopes are now prevented from being added
🔧 Fixed
- Status tray re-appears unnecessarily after waking from sleep
Version 0.3.2
🚀 New
- Mimestream is now a Google-verified Gmail API client
🔧 Fixed
- Sending message failed when duplicate update actions were executed
- Sending message failed when synchronization action temporarily failed
- Status tray sometimes does not display sync errors
Version 0.3.1
🚀 New
- Status tray in sidebar shows user-initiated synchronization activity
✨ Improved
- Support RFC 2047 encoding in Subject and Recipient fields, to allow for Emoji and other non-ASCII character
🔧 Fixed
- Delete, CMD+Delete keyboard shortcuts sometimes don't work
Version 0.3.0
Version 0.3 contains a significant overhaul of the synchronization stack, focused on error handling support.
🚀 New
- Add preference to control remote image loading
- Add preference to configure swipe action
- Add preference to control delete key behavior
✨ Improved
- Trash and Draft label are now always shown on messages in content view
- Thread count no longer reflects message in Trash
- When in Trash, the thread count only reflects the messages in Trash
- Deleting a draft now closes any already-open compose windows
🔧 Fixed
- Silent failure to send a message without presenting error
- Draft creation fails with error: The data couldn't be read because it isnt in the correct format.
- Crash sending message with Emoji in the subject
- Crash when moving messages
- Drafts sometimes resurrect after being deleted
- Crash when replaying deletion of already-deleted-from-server message
- Memory leak when closing a compose window
- Unstarring swipe action doesn't work if starred message isnt in current folder
🧹 Cleanup
- Add Advanced submenu with diagnostic and repair options
- Persist journaled actions that failed to complete, so they can be presented even after relaunch
Version 0.2.12
🔧 Fixed
- Crash on reply when there is more than 1 contact for a specific email address
- Refresh thread content view when changing folders, even if the thread is the same
- Incorrect placement of cursor after reply with signature
- When handling mailto: links, the body text should not be placed below the signature
Version 0.2.11
🚀 New
- Support for drag and drop of image attachments when composing
- Consolidated Mailboxes section in sidebar
- Updated layout for star and attachment icons in thread list cell
🔧 Fixed
- Thread list should update after toggling enabled state of categories
- Generated Content-ID header may be invalid
- Long lines of attachment files in thread content view should wrap
- .txt attachments lose filenames when sent
- .txt attachments cannot be opened
- Message with attachment disposition .txt attachment shouldn't display text inline
- Selecting attachments in header is not reliable
🧹 Cleanup
- Don't show hand cursor for message action buttons
- Avoid reload of entire table view when beyond prepared range
Version 0.2.10
🔧 Fixed
- Crash when creating a new label
- Reply all should show Cc recipient row by default
- Mailto link with body loses newlines in compose window
- Messages downloaded due to thread content display appear uncollapsed in thread content view
- Broken dark formatting for message selected on launch
- Message should not be collapsed when second message in thread is a deleted message
🧹 Cleanup
- Add logging to help track down crash on Reply on some systems
Version 0.2.9
🚀 New
- Fetch full name from Gmail, not the macOS user account
- Preserve selected thread within each folder
🔧 Fixed
- Content view should clear when thread list content disappears
🧹 Cleanup
- Sidebar now refuses first responder on mouse click events
Version 0.2.8
🚀 New
- Display contact photo in message header
✨ Improved
- Delete key now Trashes rather than Archives
- Clicking a different mailbox in sidebar now exits search mode
- Starred messages are no longer collapsed in the thread view
- Messages marked as Spam no longer appear in other mailboxes
🔧 Fixed
- App sometimes continuously resets persistence on launch
- Duplicate "Label 098" label in sidebar after initial sync
- Broken "Revert Dark Formatting" link
Version 0.2.7
✨ Improved
- Improve GmailService throttling logic to avoid exceeding per-second quota limits on accounts with many labels
- Increase size of window initially synced for primary Inbox
- Don't sync disabled message categorized inboxes
- Don't show mailbox tag for backing mailbox in message header
🔧 Fixed
- Broken decoding of newlines in text/plain message parts when Content-Transfer-Encoding is base64
🧹 Cleanup
- Hide action buttons for collapsed messages
- Remove nonfunctional printing menus until printing is supported
- Improved folder selection restoration after persistence is reset
- Fix default account selection for compose to match the account display order
Version 0.2.6
🚀 New
- Collapse messages in thread view for long threads
- Add BCC field to compose headers
- Validate recipients before allowing send of compose window
- Add icons to message banners
✨ Improved
- Fix sorting of mailbox labels in header
- Optimize conversation loading by avoiding preload of unnecessary iframes
- Remove currently unimplemented photo browser button from compose window toolbar
Version 0.2.5
🚀 New
- Add ability to reply to specific message in thread view
- Add ability to star specific message in thread view
✨ Improved
- Collapse quoted text in messages sent with Windows Outlook
- Normalize formatting of messages sent with Windows Outlook
- Search speed improvements
- Double-clicking already-open draft now orders existing window to front
🔧 Fixed
- Mailbox labels sometimes shown even if they don't need to be
Version 0.2.4
🚀 New
- Support magnification in thread view
- Add Drag & Drop support to attachments in thread content view
- Clicking a notification now selects the message in the main window
✨ Improved
- Forwarding messages now includes attachments
- Faster initialization of the Load Images banner
- Improve thread loading speed by loading CSS and Javascript assets by URL, allowing WebKit to cache these resources
🔧 Fixed
- Subject prefixes sometimes duplicated on replies/forwards
- Assorted thread content view bugs in dark mode
🧹 Cleanup
- Clean up thread view context menus
Version 0.2.3
🚀 New
- Automatic update support
✨ Improved
- Added validation for e-mail addresses entered into compose window
🔧 Fixed
- Reply messages do not threading together