Fastmail: App passwords are always rejected

Description

After hitting #2216, I generated an IMAP password for fastmail, but my credentials are always rejected.

To Reproduce…

Steps to reproduce the behavior:

  1. Open mailspring.
  2. Log into a mailspring account.
  3. Select fastmail as a provider.
  4. Visit Fastmail.
  5. Generate an app password (IMAP, read-only: false).
  6. Provide that password to mailspring.

Expected Behavior

App password should work

Actual Behavior

The password is rejected. I’ve generated it a few times, and both copy-pasted and manually typed, just to make sure there’s not dumb issues like that.

The log file provided says (there’s some weird encoding issues in the file, but I don’t think that’s relevant):

----------IMAP----------
connect <mailcore::IMAPSession:0x7fff2cf29e10>
* OK IMAP4 ready
ssl connect imap.fastmail.com 993 2
OpenSSL version: OpenSSL 1.1.0f  25 May 2017
1 CAPABILITY
* CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ENABLE UIDPLUS SASL-IR NAMESPACE CONDSTORE SORT LIST-EXTENDED QRESYNC MOVE SPECIAL-USE CREATE-SPECIAL-USE IDLE AUTH=PLAIN
1 OK completed
connect ok
login
2 LOGIN "hugo@barrera.io" *********
2 NO Incorrect username or password.

Screenshots

Setup

  • OS and Version: ArchLinux
  • Mailspring Version: 1.7.8-13635bcf

(Originally posted by WhyNotHugo on GitHub.)

Hey folks! Thanks for reporting this - I’ve been trying to reproduce this one but things seem to be working. Here’s what I’ve tried so far:

  1. Created a new Fastmail account on their 30-day free trial of the Standard plan. NOTE: It seems the basic $3/mo plan no longer supports IMAP. (Fastmail)

  2. Created an app password on Fastmail. NOTE: This required that I verify my phone number, which is pretty intense. I wonder if everyone needs to have a phone listed here for IMAP to work? Fastmail

  3. I put the app password into the Mailspring sign in panel and it was able to connect to my account.

Any ideas? I wonder if they’ve made the requirements stricter for IMAP recently and there’s a step that is subtly required now…

I’m having the same problem (1/22/22). I was able to get one device working (after many, many tries), but the others aren’t. I’ve tried changing their permission settings. That didn’t work. So far I’ve literally spent 5 hrs. trying to figure out what is going on.

My best (so far) guess is that maybe it takes them a VERY long time for new app passwords to propagate to their servers.

BTW, it is quite unusual for any app to have one userid (email user name) and have different permissions based on the password. To me that is bizarre.