mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-11-12 04:25:31 +08:00
21 KiB
21 KiB
Nylas Mail Changelog
2.0.8 (4/7/2017)
- [client-app] Ensure SyncbackMetadataTask dependency to prevent version conflicts
- Revert [client-app] Fix version conflict with send-reminders
- [client-private-plugins] Reminders: make sure accountId query isn't null
2.0.7 (4/6/2017)
- [cloud-workers] [send-later] Fix send later token expiration
- [client-plugins] Correctly scope categories by acct when setting reminder
- [iso-core, cloud-*] catch JSON parse errors in DB columns
- [cloud-workers] rename ExpiredDataWorker -> CloudWorker & rearrange src
- [cloud-*] Fix options for setting MySQL connection charset
- [cloud-*] Switch MySQL charset to utf8mb4
2.0.6 (4/6/2017)
- [client-plugins] Delete drafts after they are sent later
- [cloud-workers] fix connection typo
- [cloud-api] change worker admin color
- [cloud-workers][send-later] 🔪 with 🔥 duplicate sent messages
- [cloud-workers] add a retryAt field to do exponential backoffs
- [client-app] Fix version conflict with send-reminders
- [cloud-workers] implement IMAP connection pool
- [dev] Ensure daily script grabs current version after pulling latest changes
- [cloud-workers] Fix runtime error trying to iterate over undefined
- [cloud-workers] Properly generate metadata deltas when clearing expiration
- [client-app] Always fetch and update identity regardless of env
2.0.5 (4/6/2017)
- [cloud-workers] Don't use bulk updates in foreman in order to generate deltas
- [cloud-workers] Increment default imap conn socket timeout in cloud workers
- [cloud-*] add account to logging & fix typo
- [cloud-workers] make send later not retryable after successful send
- [iso-core, cloud-*] move generate XOAuth2 & fix first auth usage
- [cloud-workers] fix stauts -> status
- [cloud-workers] adjust retry constants & fix orphan cleanup
- [isomorphic-core] Ensure IMAPConnPool uses updated account credentials
2.0.4 (4/5/2017)
- [client-plugins] Correctly syncback metadata for send later
2.0.3 (4/5/2017)
- [*] Revamp SSL options (including user-facing)
2.0.2 (4/5/2017)
- [client-app] Updates to feature limiting
- [client-app] Some final benchmark fixes
- [cloud-api] basic view of CloudJobs
- [client-sync] Fix syncWorker arg
- [cloud-workers] fixes to metadata on workers
- [client-sync] Fix runtime error when getting sync activity for account
2.0.1 (4/5/2017)
-
Features:
- Limit search to focused perspective
-
Fixes:
- IMAPConnectionPool now correctly disposes connections
- Ensure we use refreshed access token for all imap connections during sync
- Prevent IMAP connection leaking in sync worker
- Fix send later button saving state and sending action
- Fix inline images for send later
- Correctly enable plugins on 2.0.1
- Make sure app can update even after signing out of NylasID
- Don't make any requests when NylasID isn't present
-
Cloud:
- Make cloud workers more robust
- Remove old SignalFX reporter & add docs
- Log errors according to bunyan specs
-
Development:
- Add script to run benchmarks once per day at specified time
- Add script to upload benchmark data to Google Sheets
- Add better logging when restarting stuck sync worker
2.0.0 (4/4/2017)
Introducing Nylas Mail Pro
-
Features:
- Enable snooze, send later, and send reminders
- Add feature limits to reminders and send later
-
Fixes
- Don't assign duplicate folder roles
- Re-setup IdentityStore in new window
-
Development:
- Fix sqlite build for older versions of clang
- Remove rogue scripts-tmp folder
- Remove unecessary db setup for mail rules
1.0.55 (3/31/2017)
- Fixes
- Ensure open/link tracking work when sending multiple consecutive emails
- Fix performance of contact rankings database query
- Fix performance of thread search index database queries
- Fix performance of ANALYZE queries
1.0.54 (3/31/2017)
-
Features:
- Add search support for
has:attachment
- Add search support for
-
Fixes:
- Reduce database thrashing caused by thread search indexing
- Interrupt long-running syncback tasks
- Fix performance of contact rankings db query
- Don't hit contact rankings endpoint until account is ready
- Ensure sync worker is stopped correctly when removing accounts or when restarting it
-
Metrics:
- Report metrics about SyncbackTask runs
-
Perf:
- Delay building new hot window to improve win perf
-
Development:
- Add script to benchmarks new commits
- Add DEBUG flag to be able to log all query activity for both databases
- Add
DatabaseStore.write
which doesn't use Transactions - Metadata test fixes
1.0.52 (3/29/2017)
-
Fixes:
- Fix open and link tracking:
- No longer triggers your own opens & link clicks
- Link tracking indicator is now always present in sent messages
- Fix regression in DB query execution which would delay all queries in the system.
- Reduce max retry backoff for DB queries, which could hold a query open for too long
- Fix thread reindexing issues, which should help performance and correctly index threads for search
- Fix
in:
search syntax for non-gmail search - Fix references to RetryableError imports
- Fix open and link tracking:
-
Development:
- Add initial sync benchmarking script
- Clean up logging in DatabaseStore: differentiate background queries from regular queries in the logs, only log queries that actually take more than 100ms.
- Point the billing server URL to staging by default for easier development, and allow it to be overriden
- Add index to expiration field on Metadata
1.0.51 (3/28/2017)
-
Features:
- Restore contact rankings feature for better contact predictions in composer recipient fields
-
Fixes:
- Correctly listen for new mail in between sync loops
- Verify SMTP credentials in /auth endpoint
- Also prioritize sent label for initial Gmail sync
- Properly relaunch windows on autoupdate
- Properly set up local /health endpoint by making sure to attach route files ending in .es6 to local-api
-
Perf:
- Don't throttle while syncing first 500 threads
-
Metrics:
- Report battery state changes to Mixpanel
-
Development:
- Make deploy-it say what it's doing instead of hanging silently
- Make deploy-it print link to the EB console
- Make help message better on deploy-it
- Add
SHOW_HOT_WINDOW
env for prod debugging of window launches - Correctly ignore
node_modules
in .ebignore for faster deploys - Only bootstrap specific pkgs in postinstall for faster npm installs
1.0.50 (3/28/2017)
- Fixes:
- Fix SyncActivity errors introduced in 1.0.49
1.0.49 (3/27/2017)
-
Fixes:
- Ensure sync process does not get stuck
- Ensure the worker window is always available
- Retry database operations when encountering locking issues
-
Metrics:
- Detect and report when the worker window is unavailable
- Detect and report when a sync process is stuck
-
Development:
- Windows autoupdater fixes
- Add better documentation for windows autoupdater
- Remap windows dev shortcuts to match the ones used on darwin and linux
- When building app, only re-install for optional dependencies on darwin
-
Cloud:
- Timeout streaming API connections every 15 minutes
- Add missing database indexes from SQL review
1.0.48 (3/27/2017)
- Fixes:
- Reindex threads when they're updated
- Don't try to restart sync on every IdentityStore change
- Correctly remove inline images with x button
1.0.47 (3/23/2017)
-
Fixes:
- Report hard crashes using Electron's built-in crash reporter
-
Development:
- Don't handle IMAP timeouts in the connection pool
- Record file download times
1.0.46 (3/22/2017)
-
Fixes:
- Ensure files get transferred in forwarded messages
- Correctly sign out of NylasID
- Don't report non-reportable errors in delta connection
- Fix S3 attachment upload for send later
-
Development:
- Rename downloadDataForFile(s) -> getDownloadDataForFile(s)
- Switch type of Metadata value column
- Fix build condition
- Fix DraftFactory specs
- Refactor sync worker IMAPConnectionPool callbacks
1.0.45 (3/21/2017)
- Fixes:
- Correctly report unhandled errors caught in window.
- Fix passing cursor to delta streams
1.0.44 (3/20/2017)
- Fixes:
- Add error handling when creating syncback requests
- Fix path for tmp dir in daily script
1.0.43 (3/17/2017)
- Fixes:
- Revert nodemailer to previous version
- Creating a folder no longer creates a non-existent duplicate subfolder
- Don't bump threads to the top of list when a message is sent: only update lastReceivedDate if the message was actually received
1.0.42 (3/16/2017)
- Fixes:
- Fix spellchecker regression (Don't exclude source maps in build)
1.0.41 (3/16/2017)
- Development:
- Upgrade nodemailer to latest version
1.0.40 (3/15/2017)
-
Features:
- Add support for attachments in send later
-
Development:
- Improve build time
- Windows Autoupdater fixes
1.0.39 (3/14/2017)
-
Fixes:
- Fix missing depedency for imap-provider-settings
-
Development:
- Only upload 7 characters of the commit hash for Windows build
1.0.38 (3/13/2017)
- Fixes:
- Restart sync when computer awakes from sleep
- Fix issue that made users log out of NylasID, restart, and then force them to log out and restart again in a loop (#3325)
- Don't start sync or delta connections without an identity
- Development:
- Restore windows build
- Remove specs from production build
- Fix arc lint
- Specify Content-Type in developer bar curl commands
1.0.37 (3/10/2017)
- Fixes:
- Fix regression introduced in 1.0.36 in the message processor
- Correctly show auth error when we can't connect to n1cloud
- Fix error thrown sometimes when handling send errors
1.0.36 (3/10/2017)
-
Fixes:
- Increase the IMAP connection pool size
- Shim sequelize to timeout after 1 minute on every database operation. This is a safeguard to prevent unresolved db promises from halting the sync loop.
- Better error handling to prevent the message processor from halting sync
-
Development:
- Measure and report inline composer open times
- Refactor MessageProcessor to be more robust to errors
1.0.35 (3/9/2017)
-
Fixes:
- Make sure delta connection is restarted when an account is re-authed
- More defensive error handling to prevent sync from halting
- Prevent delta streaming connection from retrying too much
- Fix error when attempting to report a fetch id error
- Prevent error restart loop when database is malformed
- Correctly cancel search when the search perspective is cleared
- When many search results are returned from the server, don't try to sync them all at once, otherwise would slow down the main sync process.
- When restarting the app, don't try to continue syncing search results from an old search
-
Development:
- Consolidate delta connection stores, remove
internal_package/deltas
- Rename NylasSyncStatusStore to FolderSyncProgressStore
- Consolidate APIError status code that we should not report
- Don't report incorrect username or password to Sentry
- Rate limit error reporting for message processing errors
- Fix circular reference error when reporting errors
- Refactor file download IMAPConnectionPool usage
- Don't focus the Console tab in dev tools every time an error is logged
- Correctly set process title
- Consolidate delta connection stores, remove
1.0.34 (3/8/2017)
-
Fixes:
- Sync should not get stuck anymore due to sequelize
- Delta Streaming connections now correctly retry after they are closed or an error occurs
- Handle errors when opening imap box correctly
-
Development:
- Add script/daily
- Provide better info to Sentry on sending errors
- Refactor and clean up delta streaming code
- Refactor message processing throttling
1.0.33 (3/8/2017)
-
Features:
- Add intitial support for send later
-
Fixes:
- Fetch unknown message uids returned in search results
- Don't throttle message processing when syncing specific UIDs
-
Development:
- Better grouping for APIError by URL also
- Don't generate sourceMapCache in prod mode
- Upload a next-version to S3 for autoupdate testing
- Windows build fixes
1.0.32 (3/7/2017)
-
Development:
- Report provider when reporting remove-from-threads-from-list
- Report provider when reporting send perf metrics
1.0.31 (3/6/2017)
-
Fixes:
- Improve initial sync speed by scaling number of messages synced based on folder SELECT duration
- Immediately restore sync process when app comes back online after being disconnected from the internet.
- Can now reply from within notifications again
-
Development:
- Add basic rate limiting to Sentry
- Report all search performance metrics
- Prevent noisy uncaught errors when closing long connection
- Improve reporting of refresh access token errors
- Don't double report refresh access token API errors
- Replace
setImmediate
withsetTimeout
as Promise scheduler - Use new Bluebird preferred
longStackTraces
syntax - NylasAPIRequest refactored and cleaned up
- Search refactors and improvements
- Protect from operating on IMAP connection while opening a box
- Enable logging in prod builds
- Make deploy-it support -h/--help
- Restore cloud testing environments
1.0.30 (2/28/2017)
-
Fixes:
- Can properly add signatures and select them as default for different accounts.
- Can now correctly reply to a thread and immediately archive it or move it to another folder without throwing an error (#3290)
- Correctly fix IMAP connection timeout issues (#3232)
- Nylas Mail no longer opens an increasing number of IMAP connections which caused some users to reach IMAP server connection limits (#3228)
- Fix memory leak while syncing which caused sync process to restart sometimes.
- Correctly handle IMAP connections ending unexpectedly
- Correctly detect retryable IMAP errors during sync + detect more retryable errors
- Correctly catch more authentication errors when sending
- Improve speed of processing messages during sync
- Prevent unnecessary re-renders of the thread list
-
Development:
- Report performance metrics
- More Coffeescript to Javascript conversions
1.0.29 (2/21/2017)
-
Fixes:
- You can now click inline images in messages to open them
- More IMAP errors have been identified as retryable, which means users will see less errors when syncing an account
- Improve performance of thread search indexing queries
- Correctly catch Invalid Login errors when sending
-
Development:
- Developer bar in Worker window now shows single delta connection
- More code converted to Javascript
1.0.28 (2/16/2017)
-
Fixes:
- Fix offline notification bug that caused api outage
- We now properly handle gmail auth token errors in the middle of the sync loop. This means less red boxes for users!
- Less battery usage when initial sync has completed!
- No more errors when saving sent messages to sent folders (
auth or accountId
errors) - No more
Lingering tasks in progress marked as failed errors
- Syncback tasks will continue retrying even after closing app
- Syncback tasks retry more aggressively
- Detect more offline errors when sending, sending is more reliable
- Imap connection pooling (yet to land)
- More retryable IMAP errors, means less red boxes for users
- Offline notification now shows itself when we’re actually offline, shows countdown for next reconnect attempt
-
Development:
- More tests
- Don't use breadcrumbs in dev mode
- Add a better reason when waking sync for syncback in the logs
- BackoffScheduler, BatteryManager added for reusability
1.0.27 (2/14/17)
-
Fixes:
- Offline notification fixes
1.0.26 (2/10/17)
-
Fixes:
- Downloads retry if they fail
- NylasID doesn't intermittently log out or throw errors
- Fix initial sync for Inbox Zero Gmail accounts
1.0.25 (2/10/17)
-
Fixes:
- When replying to a thread, properly add it to the sent folder
-
Development:
- Can now once again run Nylas Mail test suite
1.0.24 (2/9/17)
-
Fixes:
- Fix error reporter when reporting an error without an identity (this would crash the app)
-
Development:
- Fix logging inside local-sync api requests
- Stop reporting handled API errors to Sentry
- Report thread-list perf metrics
1.0.23 (2/8/17)
-
Fixes:
- Fix emails occasionally being sent with an incomplete body (#3269)
- Correctly thread messages together when open/link tracking is enabled
- Fix
Mailbox does not exist
error for iCloud users (#3253) - When adding account, correctly remove whitespace from emails
- Fix link in update notification to point to latest changelog
-
Performance:
- Thread list actions no longer sporadically lag for ~1sec (this is especially noticeable when many accounts have been added)
- No longer slow down sync process when more than 100,000 threads have been synced
-
Development:
- Better logging in worker window
- You can now run a development build of Nylas Mail alongside a production build
1.0.22 (2/7/17)
-
Fixes:
- New mail notification sounds on startup are combined when multiple new messages have arrived
- You can now correctly select threads using
cmd
andshift
- Improve message fetching by making sure we always fetch the most recent messages first.
- Improve IMAP connection timeouts by incrementing the socket timeout (#3232)
- When adding a Google account, make sure to show the Account Chooser
-
Development:
- Nylas Identity is no longer stored in config.json
1.0.21 (2/3/17)
-
Fixes:
- Fixed an issue where Nylas Mail could delete all accounts (addresses #3231)
- Correctly delete and archive threads when they contain sent messages (addresses #2706)
- Improve performance and prevent crashes when running several sync actions
- Improve error handling when sync actions fail
- Fix JSON serialization issue which could cause sync process to error.
1.0.20 (2/1/17)
-
Fixes:
- Properly clean up broken replies
1.0.19 (1/31/17)
-
Fixes:
- Replies on threads won't create duplicate-looking emails. This began to happen on midnight February 1 UTC due to a date parsing bug
- Improve error handling in sync
- Better retrying of certain syncback actions
-
Development:
- Now using Electron 1.4.15
1.0.18 (1/30/17)
-
Performance:
- 60% reduction of CPU usage during initial sync due to optimizing unnecessary rendering
-
Fixes:
- New composer stays in "to" field when initially typing
-
Development:
- Better documentation for Nylas Mail SDKs
- GitHub repository renamed from nylas/N1 to nylas/nylas-mail
master
branch now has Nylas Mail (1.0.x)n1-pro
branch now has Nylas Pro (1.5.x)
1.0.17 (1/27/17)
-
Fixes:
- Fix send and archive: Can now archive after sending without errors
- Local search now includes more thread results
- Contact autocomplete in composer participant fields now includes more results
1.0.16 (1/27/17)
-
Performance:
- Improved typing performance in the composer, especially with misspelled words
-
Fixes:
- Nylas Mail plugins install properly
- Fix undo and occasional archive & move tasks failing due to not having uids
- Fix logging for auth
- Properly clean up after file downloads
- Properly recover from IMAP uid invalidity
1.0.15 (1/25/17)
-
Features:
- Improve CPU performance of idle windows
-
Fixes:
- Correctly detect initial battery status for throttling.
- Correctly allow auth for Custom IMAP accounts only #3185
1.0.14 (1/25/17)
-
Features:
- Improved spellchecker
-
Fixes:
- Correctly update attributes like starred and unread when syncing folders. Marking as read or starred will no longer bounce back.
- Correctly detect new mail while syncing Gmail inbox.
1.0.13 (1/25/17)
-
Fixes:
- Messages immediately appear in sent folder. No bouncing back.
- Login more likely to succeed. Waits longer for IMAP
- Doesn't allow invalid form submission
- Correctly handles token refresh failing
- Auto updater says "Nylas Mail" properly
- Sync drafts correctly on Gmail
-
Development:
- Local sync account API deprecated
- Silence noisy queries in the logs
1.0.12 (1/24/17)
-
Features:
- New 'Debug' sync button that opens up the console
- Faster search
- Message processing now throttles when on battery
- Analytics for change mail tasks
-
Fixes:
- Archive, Mark as Unread, and Move to trash don't "bounce back"
- Adding a new account is now smoother
- Improved threading
- Drafts are no longer in the inbox
1.0.11 (1/19/17)
-
Features:
- Nylas Mail's installer on Mac uses a DMG
-
Fixes:
- Fixed app being occasionally unresponsive
- Decreased odds of failed logins (by bumping connection timeout value)
- Sync erroring notification no longer tripped by timeouts
1.0.10 (1/19/17)
-
Features:
- "Contact Support" button now auto-fills information
- Actions reach providers faster
-
Fixes:
- Show errors on the GMail auth screen
- Show draft sending errors
- Can now correctly search threads via
from:
andto:
- Other error management improvements
- The database will now be reset if malformed
- Improve the offline notification
-
Development:
- Update Thread indexing
- Add loadFromColumm option to Attribute
1.0.9 (1/17/17)
-
Fixes:
- All Fastmail domains now use the correct credentials
- Offline notification more reliable
- Fix error logging
1.0.8 (1/17/17)
- Introducing Nylas Mail Basic! Read more about it here