yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] M66B:
Version 1.1933 is available on GitHub now and in the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases

All reported bugs have been fixed and a few new features were added.

Does the internet have a 1 star review problem?

I think it has. Yesterday there was an English 1 star rating for an error message, as if the world is perfect. The frustrating thing is that this rare error was already solved, but a new version with this fix isn't released yet. Note that the release frequency for the Play store version is about every month because I am pretty tired of 1 star ratings for "too many updates".

Some more humanity would be nice, but it seems hard business is the norm. It doesn't make things nicer in any case and it is also a bit of a spiral down.
[Android Apps and Games] de_Wolf:
In my opinion, you are "only" looking at the spiral downwards, but not at the spiral upwards... :-)

The users who give a review don't think about the person behind it, the developer, they only think about themselves and the product.
[Android Apps and Games] M66B:
Maybe it is subjective, but a few decades ago (I am that old?) people were more friendly and understanding in my experience. Today it sometimes seems 8 billion people on 8 billion islands. I also meant this broader than reviews only.
[Android Apps and Games] de_Wolf:
Yes, you're right, that was the case.

When I read in the newspaper every day about the trivialities for which people are physically attacked, I wonder how far this will go and I am very worried about my children. Because if this spiral continues to go downwards, humanity will be completely lost.

But it helps me to see that there is still humanity and maybe a virus will emerge one day that will replant humanity in everyone's hearts (I know that this is not realistic).
[Android Apps and Games] jpl90:
Hi,

I've been a loyal pro user for many years now. I'm very glad and grateful this app exists. Really.

I've used it many years in an Oneplus 5T without any issues, great sync, etc. Now, in an Oneplus 9 pro sometimes the sync seems to be "forgotten" , even though I did deactivate battery optimisation, etc as suggested for this manufacturer (and the app itself says it should be fine).

Any suggestions, ideas, user experience, where to look? I'm using of course the same email providers I was using before, and I feel sync works fine for a few hours but then I need to manually trigger it.

Thanks in advance!
[Android Apps and Games] M66B:
Maybe you can find a solution here:

Don’t kill my app!

Hey Android vendors, don’t kill my app!

dontkillmyapp.com
[Android Apps and Games] jpl90:
Thanks for the extremely quick answer!

Actually that's what I meant I did, I got that link from the app too (even though I couldn't find it anymore after the app was saying it was already ok), but I have just seen the Auto-Launch was activated (again?). Either I configured that incorrectly or it was restored in the last update, I can't say tbh.

I'll try again and see if it's now solved.

Thanks again, have a nice weekend!
[Android Apps and Games] M66B:
It appears the already verified Gmail OAuth app can be used for a web OAuth flow too.

Thanks to some hints of @cketti (author of K9 mail) this works now.

Test version:

https://bitbucket.org/M66B/fairemail-test/downloads/FairEmail-v1.1933a-github-gmail-oauth-release.apk

I wish Google was able to communicate more clearly ...
[Android Apps and Games] mkasimd:
I just tested the webflow. I get the following error message:

The email server said: '[AUTHENTICATIONFAILED] Invalid credentials (Failure)'

I don't know whether it's related to the new "Google (OAuth)" option, or just something wrong on my end. Just going to switch back to app passwords, but letting you know before the next release in case there's an issue.
[Android Apps and Games] M66B:
Can you please try to configure a new account, instead of updating an existing account? Does that make a difference?

In any case the OAuth flow worked because this error message means that logging into the email server was not possible.
[Android Apps and Games] M66B:
@mkasimd can you please try again with this test version?

https://bitbucket.org/M66B/fairemail-test/downloads/FairEmail-v1.1933a-github-gmail-oauth-2-release.apk
[Android Apps and Games] mkasimd:
Adding a new account using OAuth worked with the previous APK already. Now re-authorizing an already existing account works with this latest APK.

No other issues detected so far.
[Android Apps and Games] M66B:
Thanks for testing.

There was a bug in switching the authentication type, the OAuth provider name wasn't updated, which is fixed now ;-)
[Android Apps and Games] O_DoC:
Hi,

Question in my mind :

If one's have the choice between App password and OAuth, which should be preferred ? (Maybe not as binary as it's look...)

Personally I'll go for App password, but just by ''instinct'' and couldn't come up with a tangible argument for myself.

If you willing to share, thanks in advance.
[Android Apps and Games] mkasimd:
I'd call OAuth as the better option as you see the scope of data you permit an app access to, and also the app receives a new token periodically instead of a static password. Plus, configuring it easier than typing down a long app password.

That said, Google's app passwords are sufficiently secure against brute forcing or dictionary attacks, so they are safe to use either. In fact, it shouldn't be a problem as long as you do not share it with others.
[Android Apps and Games] M66B:
In addition, refreshing the OAuth token hourly requires connecting to the OAuth server. This means using a little extra battery power every time (not much, but it all adds up) and it is an extra step which could fail due to connectivity issues.
[Android Apps and Games] M66B:
The next version of the app will use the MaterialDings font, except for the three emoticons (smiling, neutral, frowning face).

GitHub - Accusoft/MaterialDings: A modern take on a classic, MaterialDings recreates the legendary Wingdings font using Material Design guidelines.

A modern take on a classic, MaterialDings recreates the legendary Wingdings font using Material Design guidelines. - Accusoft/MaterialDings

github.com

Previous versions of the app replaced Wingdings characters by Unicode characters because the Wingdings font isn't free to use (or at least the license status in unclear). This worked okay, but most symbols were an approximate match only. The MaterialDings font solves this and IMHO it looks pretty nice.

There are still plenty of old Outlook clients which sends messages with the Microsoft proprietary Wingdings font!

Use MaterialDings, except for emoticons · M66B/FairEmail@e35659e

Fully featured, open source, privacy friendly email app for Android - Use MaterialDings, except for emoticons · M66B/FairEmail@e35659e

github.com
[Android Apps and Games] M66B:
This is a test version with the changes since version 1.1933 so far:

https://bitbucket.org/M66B/fairemail-test/downloads/FairEmail-v1.1933a-github-wingdings-release.apk

You can download an EML file to see/test Windings here:

https://raw.githubusercontent.com/M66B/FairEmail/master/eml/wingdings.eml
[Android Apps and Games] mkasimd:
Looks nice and suits well to email messages. Especially as all characters are recognized now instead of showing empty or crossed out rectangles. To see the difference on how it was before and how it is in this version, I have attached a screenshot on both:
[Android Apps and Games] M66B:
This is an updated test version with a series of Wingdings replaced by similar Unicode characters having a color, so they look like before:

https://bitbucket.org/M66B/fairemail-test/downloads/FairEmail-v1.1933a-github-wingdings-2-release.apk

Without this change some people will inevitably complain. In fact looking into this was triggered by a complaint.

The test EML file contained a small error, which has been corrected.

Edit: please feel free to suggest other Unicode characters. There are several websites providing character tables. This is one of them:

https://unicode-table.com/en/emoji/
[Android Apps and Games] Utini:
Just a quick question:

Having 2x gmail account with all "Battery optimiziations" done according to the wiki, do the stats in my screenshots look fine?
[Android Apps and Games] M66B:
5% battery usage compared to 7% for Telegram seems pretty okay to me.
[Android Apps and Games] chris122380:
I have about 1.5% battery usage with 9 accounts (2 Gmail accounts). That does seem a little high to me.
[Android Apps and Games] M66B:
Battery usage depends on the efficiency of the device, the stability of the internet connection and server quirks.
[Android Apps and Games] M66B:
Version 1.1934 is available on GitHub now and in the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases

One of the reasons for this release is:

"Ur *beep* app can't enter email ur app trash, stop updating every *beep* day without testing moron

Video with bug: <link removed>

DO YOU *BEEP* EVEN TESTING IT BEFORE *BEEP* POSTING??????"

This was when I was with my mother in the hospital today. Thanks ...
[Android Apps and Games] de_Wolf:
These seem to me to be the usual candidates to frustrate/provoke you. The whole formulation is unobjective and if you can, don't take it personally.

Even if there was a bug in the app, you can point it out in a friendly manner and ask for it to be fixed. I have been a COBOL application developer and at least everyone who has been involved in software development knows that it is sometimes quite difficult to test all eventualities.
[Android Apps and Games] chris122380:
Sounds like a user who has no idea how to use or set up an email app. I wouldn't take it personally. It's just an incompetent user.

1. I have sent and received emails with no problems.

2. I have been using this as my primary email app for the last three or four months and the app has never crashed on me.

3. I know many of us are testing it but I'm pretty sure you probably use your own email app on a daily basis.

4. I don't like rude people. What makes them think it's going to get their issue resolved any quicker. Being polite and respectful will get you further along and quicker than being rude and likely if they try this with other developers they'll just be ignored.
[Android Apps and Games] M66B:
Fully agreed.

The bug was real and annoying and also reported by somebody else, which is why I fixed it at the first possible opportunity. The provided video was useful to reproduce the problem.

Anyway, I told this person that I do my best, but that it is a complex app and that things like this sometimes happen.

Rudeness like this says more about the sender of the message than the receiver of the message ...
[Android Apps and Games] m0d:
Quietly in commits and changelog - https://github.com/M66B/FairEmail/commit/c10abc0db0bdcefb919eb4e805c68d2d853fd308

Thank you for the great around the clock development, even though most of us who have been seeing the development since the beginning have been urging you to relax. 😜🤪😝

wishing you the best.

In regards to the new gmail authorization method,

it is only accessible through Wizard?

So you cant change exiting identity in fairemail to use it?

Because it creates a new identity, without all the previous folder property changes

Is their a way to update an existing account?

As I cant seem to find it:
[Android Apps and Games] M66B:
Just run the quick setup wizard again and you can update the authentication method of an existing account (and related identities). I already anticipated that at least some people would want to switch ;-)
[Android Apps and Games] m0d:
I did.

But, it created a new identity.

Either I did something wrong, or having identity disabled may be the culprit, if so use-case needs to be taken into account:

Gmail OAuth,

Authorize an existing account,
[Android Apps and Games] m0d:
I tried wizard with account enabled and it created a new identity.

So I must be doing something wrong.

Edit:

I think I found the problem,

The username for my gmail account that I set up previously is

Username without @gmail.com

So it might be this?

@M66B

UsernameXxX is not being matched because it does not have @gmail.com ?

🙆🤦🤷💁
[Android Apps and Games] M66B:
I tested this a few dozen times (possible more times even), with and without an existing account, so I am pretty sure this works as expected (never 100% sure though).

Are you using the latest GitHub version? Is the used email address the same as the already configured account?

In any case, if a new identity is created, a new account will be created to. So, you should not look at the identity, but at the account.
[Android Apps and Games] mkasimd:
Did you also cover the following edge cases during testing?

* Account added but disabled

* Account enabled, but identity disabled

* Account disabled & identity disabled

* Account enabled, but identity deleted (is that even possible?)

* Account disabled and identity deleted (am not sure if that's possible either)

I can very well imagine that unusual cases like those could change the behavior. Depending on how the app checks whether the account already exists or not.
[Android Apps and Games] m0d:
@M66B

Could it be this?

Somehow I configured gmail account without the @gmail.com for username
[Android Apps and Games] M66B:
Enabled/disabled and deleted or not doesn't play a role in this.
[Android Apps and Games] M66B:
No, Gmail accounts without @gmail.com are common and besides that I tested with such an account.
[Android Apps and Games] M66B:
The username of a Gmail account always includes the domain part (@gmail.com, etc), else it won't work.

In any case, the app can't match the account this way.
[Android Apps and Games] M66B:
The next version will allow editing the name, order (a new field) and color of saved searches.

I needed this myself ;-)
[Android Apps and Games] m0d:
But in account settings, provider is set to custom?
[Android Apps and Games] M66B:
It looks like you've set up the account manually with other than the usual server addresses.

My suggestion is to delete this account and to add it again with the quick setup wizard to prevent problems later on.
[Android Apps and Games] m0d:
Yes I set up manually because I was using passwords.

But servers are standard, dic not make any changes to it.

🙆🤷🤦
[Android Apps and Games] m0d:
When I change providor in account settings it always resets back to custom.

But, when I changed username to include @gmail.com

Now when I created new gmail through the Wizard it gives authentication error:

Worked!

But, why does fE insist on setting provider back to Custom when I am saving it manually?

So in the end having the @gmail.com was the culprit for the mismatch...

Providor type did not matter

Thank you both for your time
[Android Apps and Games] M66B:
Regarding the dark theme for original messages:

Google Issue Tracker

issuetracker.google.com

(Requires a Google login)
[Android Apps and Games] mkasimd:
You do not have to add an account manually to use app passwords. You can use the wizard -> "other provider" instead.

You should very rarely ever need to add an IMAP account manually. The wizard works with pretty much any serious provider. So, always try "other provider" if you don't want to use OAuth.
[Android Apps and Games] m0d:
I added account manually because I wanted to set up advanced settings to synchronize manually.

Also, Google wizard would not work as I do not use google libraries.

Did not think about "Other Provider" as gmail was in the list but did not work as it used device accounts which needs google blobs.

And, OAuth was not available.

App passwords for gmail requires 2FA, which requires phone number.

Gmail does not support authentication apps like Aegis, and andOTP, etc.

So, I was using Enable less secure option.

Which was a hassle because it blocks access to gmail if you travel.

Google is horrible. Terrible. All the nasty words...

Even outlook allows App Passwords without any other criteria.

I had no problem setting up manually. Until google pulled the plug on less secure logins.

Now with OAuth working in fE, all is perfect.

I wanted OAuth from before, as github uses same procedure I believe. It works well.

It just would not match accounts because I did not have "@gmail.com" in my username in identities. Since gmail does not care.

After adding @gmail.com to username in settings manually and setting it up through wizard, my old identity was matched and authentication switched correctly to OAuth.
[Android Apps and Games] mkasimd:
Well, Gmail does have its own demands and you have to comply when you use their services.

It doesn't matter what non-OAuth method supported by your email provider you use (app password, less secure app enabled or account password) the "other provider" option always works for as long as the email provider is recognized. This is the case for almost all email providers around.

So in the future, remember to always use the wizard first. It should rarely ever not work. And it also saves you the hassle of entering everything manually.

If it doesn't work and it's your own domain, feel free to look here on how to ensure the wizard will work:

FairEmail/FAQ.md at master · M66B/FairEmail

Fully featured, open source, privacy friendly email app for Android - M66B/FairEmail

github.com

Auto Discover

.${1}

doc.ld-online.net
[Android Apps and Games] nubla:
Mhh you sure about this?

I chose the Authenticator app option for 2FA, and chose the "Can't scan it" option at the QR code screen, which then reveals the 16 digit key. This key can be entered in any TOTP authenticator app, KeePassXC in my case, but Aegis, etc should be no different.
[Android Apps and Games] nubla:
@M66B Google really likes interacting with you. This happened when trying the new Gmail (Oauth) wizard:
[Android Apps and Games] M66B:
That's pretty problematic because people can't setup new Gmail accounts anymore like this:-(

I requested a rate increase, but this will be problematic too. Last time it took me weeks just to convince Google that the number of users has grown over time.
[Android Apps and Games] nubla:
Yes, quite problematic, and I dread to think of the support requests due to this..

Does this OAuth rate limit affect FairEmail if used with an Android Google account too?

I noticed that since a few hours ago my Gmail account failed to connect with a credential error (no changes made), and that's what prompted me to try adding a new account with the new OAuth method.
[Android Apps and Games] M66B:
This won't affect existing accounts.

Google will probably not response this week anymore (five business days is being mentioned), so this is going to cause a lot of 1 star ratings. Since there are lots of Gmail users, this can become a huge problem, with as end result me giving up.
[Android Apps and Games] M66B:
There is nothing wrong with using (refreshing) OAuth tokens, so I don't understand why there are so many new tokens being created (=login new user). Maybe this is an error at the side of Google. Another theory is a denial of service (DoS) attack.

In any case, this needs to be solved quickly, but I am afraid Google won't respond soon and I can't do much myself.

For now I have pulled the app from the Play store, to prevent many 1 star rating from new users. The app won't return in the Play store until this has been resolved.

Edit: documented here now:

FairEmail in the Play Store

Status and frequently asked questions

faircode.eu

And also here:

FairCode - contact

FairEmail, NetGuard, XPrivacyLua support

contact.faircode.eu
[Android Apps and Games] mkasimd:
You actually can scan the QR code with FreeOTP or other OTP apps. I have added FreeOTP+ on my Google account a while ago and it works just fine
[Android Apps and Games] M66B:
The token grant limit is currently just below the maximum (60,000 for which I had to argue a lot). My guess is that this is because Google is denying service for the app currently.

I will keep monitoring this and if the token grant limit is back at a normal level (~37,000) I will make the app available in the Play store again.

If this doesn't happen and Google doesn't raise the limit either, the project is finished. This sounds dramatic and you may call me drama queen for this, but there is simply no point in continuing the project if this doesn't get resolved because so many people use a Gmail account.
[Android Apps and Games] M66B:
Version 1.1935 is available on GitHub now and via the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases

Although it shouldn't be necessary, this safeguard was added:

Enforce minimum token refresh rate · M66B/FairEmail@6afe0a2

Fully featured, open source, privacy friendly email app for Android - Enforce minimum token refresh rate · M66B/FairEmail@6afe0a2

github.com
[Android Apps and Games] deechte:
Can we please not go there again Marcel? Please realise that it was you who decided to implement that Oath stuff. Nobody forced you. You could have refrained from implementing new features (as you often threaten to do, but never actually do). I for example don't use Gmail, so why should I have to worry about losing the app again, because of this. Just remove the bloody feature and relax.
[Android Apps and Games] M66B:
I understand what you are saying, but I am not sure if the new OAuth flow is responsible for this. After all the same verified OAuth cloud app is being used. The only difference is how the OAuth token is being fetched, either via the Android account manager or via logging in via the web.

The underlying problem is that Google is limiting logins with as argument "security". IMHO this is nonsense and limiting logins for an app is simply antitrust. If there are illegal logins, this is a problem for Google and not for app developers.

The bottom line is that it is hard to work with Google, but that an app like FairEmail can't exist either without this.

Edit: I can remove this in a blink of an eye by changing one "true" into "false", but I think this will make a number of people rather unhappy. Also, because people don't want to give a phone number to Google when using an app password, this feature was asked a lot for!
[Android Apps and Games] M66B:
The good news is that the token grant rate decreased faster than it increased and is now at ~50,000 grants/day, well below the maximum of 60,000/day. Give the shape of the graph, this looks like a DoS.
[Android Apps and Games] de_Wolf:
Which brings us to the fundamental question of why so many people have an @Gmail account in the first place. For data protection reasons, I would never open an email account with this data octopus.

The users have already passed on so much data to G***le that the telephone number is no longer relevant. You can probably also leave an invalid number.
[Android Apps and Games] M66B:
Version 1.1936 is available on GitHub now and via the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases

Since the OAuth token grant rate is increasing rapidly again, I have disable the Gmail OAuth web flow completely. If the token grant rate comes above 60,000 again, I will remove the app from the Play store again and not reinstate it until this problem has been resolved.
[Android Apps and Games] M66B:
@deechte please understand that this is rather stressful for me because this can escalate pretty fast if the app stops synchronizing messages of Gmail accounts. The fact is that a significant number of people use Gmail accounts, also with FairEmail, and that one day of no service can therefore completely "destroy" the average Play store rating. If the average rating drops below 4.0 the project is finished, simply because most people will skip the app for this reason and it will be hard, not to say impossible, to come back from this.

So, you can say "I don't use Gmail", but this can still affect you because you are not the only person using the app.
[Android Apps and Games] M66B:
Current situation:

There seems to be stabilization just above 50,000 tokes/day.