Nylas Mail Versions Save

:love_letter: An extensible desktop mail app built on the modern web. Forks welcome!

2.0.31

7 years ago

Update from the Maintainers

Nylas Mail was officially sunset in August and re-licensed under MIT. Nylas is no longer maintaining Nylas Mail, and 2.0.31 is the last public release. For a maintained version of the app, consider checking out one of it's successors:

  • Mailspring: One of the original developers is continuing Nylas Mail as Mailspring. Mailspring includes the same Pro features and a new C++ sync engine built on Mailcore2, which is faster, uses less RAM, and fixes many provider-related bugs.

  • Nylas Mail Lives: A group of community members forked Nylas Mail to keep it alive, accept contributions from the community and publish new releases that fix bugs and add features.

2.0.31 (4/28/2017)

  • Fixes:
    • Fix invalid credentials error when sending on Gmail. This error will happen sporadically, and was introduced in version 2.0.28

2.0.28

7 years ago

2.0.28 (4/26/2017)

  • Fixes:
    • Fix send later with open/link tracking

2.0.27 (4/26/2017)

  • Fixes:
    • Don't throw error when search query has trailing whitespace

2.0.26 (4/26/2017)

  • Fixes:

    • Fix self-triggering in open and link tracking
    • Speed up sending per recipient
    • Fix open and link tracking when sending per recipient
  • Development:

    • Consolidate TrackingUtils & better documentation

2.0.23 (4/25/2017)

  • Fixes:
    • Properly retry retryable errors in syncback tasks

2.0.21 (4/24/2017)

  • Fixes:
    • Fix throwing errors inside Interruptible
    • Fix sending on Gmail with large attachments (caused by conflict with syncing sent folder)
    • Increment max size for attachments

2.0.20 (4/24/2017)

  • Fixes:
    • Correctly pass connSettings to convertSmtpError
    • Fix attachment previews
    • Fix link editor jumping away from you in composer
    • Fix certificate error msg
    • Detect smtp cert errors and relax condition to detect them

2.0.19 (4/21/2017)

  • Features:

    • Allow users to select custom folder mappings for Sent and Trash folders
    • Move messages out of db into compressed flat files for better space efficiency
  • Performance:

    • 10x speed improvement for sending messages
    • Improve performance of all syncback tasks by 500ms
  • Fixes:

    • Correctly cleanup orphaned messages during sync
  • Development:

    • Refactor sending code and remove cruft
    • Fix the specs

2.0.18

7 years ago

2.0.18 (4/21/2017)

  • Fixes:
    • Correctly track all auth errors & correlate to email
    • Add more IMAP provider settings from Mozilla's ISPDB
    • Allow bypassing of invalid certificates during authentication
    • Don't double report auth errors

2.0.17 (4/19/2017)

  • Fixes:

    • Record auth error location to Mixpanel
    • Show proper auth error messages to users
    • Correctly identify more certificate errors
    • Fix offline notification behind proxies
    • Fix attachment filename encodings
  • Development

    • Prevent from running daily when untracked files present in working dir
    • Fixup auth helpers

2.0.16

7 years ago

2.0.16 (4/18/2017)

  • Fixes:

    • Better handling of startup errors
    • Fix occasional EPERM issues on boot on Windows
    • Reduce CPU limits for historical sync
    • Fix search parser to handle nested queries properly
    • Update copy that still referenced N1 to Nylas Mail
  • Development:

    • Fix benchmark mode

1.0.30

7 years ago

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

7 years ago

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

2.0.15

7 years ago

2.0.15 (4/17/2017)

  • Correctly handle and inform users about database malformed errors that can occur both in main process and/or window processes

2.0.14

7 years ago

2.0.14 (4/14/2017)

  • Fixes:
    • Prevent from adding duplicate accounts and sync workers due to account id changes
    • Correctly remove sync worker reference when destroying it
    • Correctly initialize SyncProcessManager with Identity
    • Fix contact ranking runtime error

2.0.13

7 years ago

2.0.13 (4/13/2017)

  • Fixes:
    • Upload nupkg with correct name for win32 autoupdater to work
    • Correctly handle window.unhandledrejection events

2.0.12 (4/13/2017)

  • Fixes:
    • Prevent NM from overwriting N1 binary on windows
    • Fix runtime error in sync process
    • Prevent old N1 config from getting wiped when installing Nylas Mail

2.0.11 (4/12/2017)

  • Fixes:
    • Dispose of mail listener connection before getting new one. This will prevent sync process from leaking Imap connections and getting stuck.
    • Fix performance regression when polling for gmail attribute changes from
    • Don't double report unhandled rejections
    • Fix unhandled rejection handling (fix ipc parse error)
    • Fix regression when processing messages under a transaction
    • Rate limit database malformed error reports to sentry

2.0.10

7 years ago

2.0.10 (4/11/2017)

  • Fixes:

    • Fix missing UID error when archiving threads after sending
    • Ensure all mail folder exists before trying to access it
    • Fix SyncbackMetadataTask dependency
  • Development:

    • Don't report stuck sync processes to Sentry
    • MessageFactory -> MessageUtils, SendUtils -> ModelUtils

2.0.9 (4/11/2017)

  • Features:

    • Re-add imap to the onboarding accounts page
  • Fixes:

    • Correctly detect changes in labels, starred and unread for Gmail accounts
    • Fix delta streaming connection retries
    • Handle weird MIME edge case with @ symbol
  • Performance:

    • Wrap message processing in transaction for better performance
    • Increase sqlite page_size and cache_size
  • Cloud:

    • Improve performance of reminders worker
    • Add DataDog StatsD for heartbeats
    • Restart automatically on unhandeld rejections
  • Development:

    • Add benchmark mode

2.0.8 (4/7/2017)

  • Fixes:

    • Revamp SSL options during authentication to be able to properly auth against SMTP and prevent sending failures
    • Ensure IMAPConnnectionPool uses updated account credentials
    • Always fetch and update identity regardless of environment
    • Properly handle serialization errors for JSON columns in database
  • Cloud:

    • Switch MySQL charset to utf8mb4
    • Add exponential backoff for cloud worker jobs when encountering errors
    • Use IMAP connection pool in cloud workers to limit number of connections
    • Properly generate metadata deltas when clearing expiration field
    • Increment default imap connection socket timeout in cloud workers
  • Plugins:

    • Correctly syncback metadata for send later
    • Delete drafts after they are sent later
    • Correctly ensure messages in sent folder for send later in gmail
    • Fix send reminders version conflict error
    • Correctly set metadata values for send reminders
    • Fix imap folder names in send-reminders
    • Fix send later access token refresh
  • Development:

    • Add view of CloudJobs in n1.nylas.com/admin
    • Ensure daily script grabs current version after pulling latest changes

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
  • 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
  • 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