そのバグは、
- Mail.app 「環境設定」の
- 「アカウントタブ」から
- 「IMAPの詳細設定」へ入り
- 「セキュリティ保護されていない認証を許可」のチェックボックスを有効にした後
- 「OK」を押しても
- 「セキュリティ保護されていない認証を許可」の設定が反映されない
というものです。
Mail.app はユーザ名やパスワードなどを変更すると、その設定が正しいかどうかをサーバへ問い合わせて検証を行い、正常な接続を確認できた場合にのみ、設定を保存する仕組みになっています。
そのため、「セキュリティ保護されていない認証を許可」の設定が反映されない場合、SSL の有効になっていないメイルサーバへの設定変更は検証が成功しないため、保存ができない、ということになってしまいます。
多くの IMAP サーバは SSL に対応していると思われるので、このバグで悩む人は少ないとは思いますが、私が私的に使っているIMAP サーバは SSL 非対応のため、非常に困ってしまいました。
そこで Mail.app が使っている ~/Library/Accounts/Accounts4.sqlite を直接操作するアプリ「Accounts4Fixer」を作成しました。v1.0.0 の Release バイナリも作成してあります。
内容は単純で、直接データベースの当該要素を変更してるだけです。Mail.app は CoreData を使ってデータベースアクセスをしているようですが、このアプリでは SQLite ライブラリを使って直接データベースを書き換えています。
アカウントに関するデータベースを変更する都合上、変更が 失敗した場合、最悪 macOS へログインすらできなくなってしまうかもしれません。その点をよく理解頂いた上で、自己責任でご利用ください(事前にバックアップを作成することをお薦めします)。
なお、この Mail.app のバグは、macOS Mojave では直っているようです。例年通りであれば、恐らく一ヶ月程度で Mojave がリリースされると思われるので、もしそれまで待てるのであれば、また、Mojave へアップデートする予定であれば、Mojave リリースを待つのも良い案だと思います。