[CLOSED][APP][5.0+] FairEmail - Fully featured, open source, privacy oriented email app

Status
Not open for further replies.
Search This thread

Dark_Eyes_

Recognized Developer / Recognized Contributor
Sep 19, 2013
2,804
10,830
@M66B if I remember correctly, messages won't be classified out of the Spam folder. If that's really the case, maybe the option to classify messages should be hidden in the Spam folder options to avoid confusion?
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
@M66B if I remember correctly, messages won't be classified out of the Spam folder. If that's really the case, maybe the option to classify messages should be hidden in the Spam folder options to avoid confusion?
Classification works by comparing the likelihood of classes, which means you'll always needs a counter class. If somebody want to filter spam, the comparison is if a message has an higher probability to belong in the inbox or in the spam folder.

Therefore classification for the spam folder is important, even though no messages will be moved out of the span folder.

Related FAQ:
https://github.com/M66B/FairEmail/blob/master/FAQ.md#user-content-faq163
 

Dark_Eyes_

Recognized Developer / Recognized Contributor
Sep 19, 2013
2,804
10,830
Classification works by comparing the likelihood of classes, which means you'll always needs a counter class. If somebody want to filter spam, the comparison is if a message has an higher probability to belong in the inbox or in the spam folder.

Therefore classification for the spam folder is important, even though no messages will be moved out of the span folder.

Related FAQ:
https://github.com/M66B/FairEmail/blob/master/FAQ.md#user-content-faq163

Thanks, it makes sense. In this case maybe it should always be on and disabled (no user action possible) in Inbox and Spam, because turning it off will hinder the classification? Or hidden completely for that matter.

People might think (I did at some point) that there are 2 options, one to move messages out and one to move messages in. I don't know how exactly but I feel this could be improved a bit. Maybe the "learning mode" could be hidden and only tied to misc and in each folder you would have the option to move in and move out? I know it would force learning mode for all user folders and Inbox and Spam.

I'll inspect the code to try and come up with a better idea.
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
Thanks, it makes sense. In this case maybe it should always be on and disabled (no user action possible) in Inbox and Spam, because turning it off will hinder the classification? Or hidden completely for that matter.

People might think (I did at some point) that there are 2 options, one to move messages out and one to move messages in. I don't know how exactly but I feel this could be improved a bit. Maybe the "learning mode" could be hidden and only tied to misc and in each folder you would have the option to move in and move out? I know it would force learning mode for all user folders and Inbox and Spam.

I'll inspect the code to try and come up with a better idea.
If somebody want to use classification for user folders only and not for spam filtering, classification for the spam folder can and should be turned off.

Maybe I will add a separate classifier configuration screen later with a main switch and two columns of checkboxes to enable/disable classification and auto classification for each folder.
 

Dark_Eyes_

Recognized Developer / Recognized Contributor
Sep 19, 2013
2,804
10,830
If somebody want to use classification for user folders only and not for spam filtering, classification for the spam folder can and should be turned off.

Maybe I will add a separate classifier configuration screen later with a main switch and two columns of checkboxes to enable/disable classification and auto classification for each folder.

I agree. It's not easy to make, but the easiest thing for the end user would be for example to have only one switch in Spam, which should automatically turn on listening mode for both Inbox and Spam and allow classified messages to be moved in the Spam folder. Classification in the Inbox appears useless (the only messages that don't go there automatically are Spam messages which can't be moved out by the classifier).

It gets more complicated with user folders though. Can the classifier automatically move messages between 2 user folders? That would be weird because if I move it to folder A on purpose, classifier shouldn't move it to folder B because it thinks it belongs there. I decided it belongs in A lol. So again, maybe only one switch in the user folders that would automatically turn on learning mode for Inbox and that User folder and allow messages to be moved in that User folder.

Then again the classifier could benefit from learning from other user folders as well. Damn there's no easy way to do it, other than forcinh learning mode on all user folders. Would that be an option? I know with statistics, the more data the better.
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
I agree. It's not easy to make, but the easiest thing for the end user would be for example to have only one switch in Spam, which should automatically turn on listening mode for both Inbox and Spam and allow classified messages to be moved in the Spam folder. Classification in the Inbox appears useless (the only messages that don't go there automatically are Spam messages which can't be moved out by the classifier).

The local spam filter switch in the report spam dialog (warning triangle just above the message text) does exactly this.

It gets more complicated with user folders though. Can the classifier automatically move messages between 2 user folders? That would be weird because if I move it to folder A on purpose, classifier shouldn't move it to folder B because it thinks it belongs there. I decided it belongs in A lol. So again, maybe only one switch in the user folders that would automatically turn on learning mode for Inbox and that User folder and allow messages to be moved in that User folder.

Then again the classifier could benefit from learning from other user folders as well. Damn there's no easy way to do it, other than forcinh learning mode on all user folders. Would that be an option? I know with statistics, the more data the better.

The classifier could move messages between user folders, but since new messages generally arrive in the inbox, this won't happen in practice. Also, a message which was already classified, won't be classified again to prevent loops and other unwanted behavior (on moving, etc).

Summarized, there are two folder options:
  • Classify new messages in this folder: this will only enable classification for the folder, which could be for comparison reasons only, in other words to prevent that the message would be classified for another folder.
  • Automatically move classified messages to this folder: this will cause messages in other folders which were classified for this folder to be moved to this folder.
I do appreciate that you are thinking this through with me :)
 
  • Like
Reactions: wimstefan

Dark_Eyes_

Recognized Developer / Recognized Contributor
Sep 19, 2013
2,804
10,830
The local spam filter switch in the report spam dialog (warning triangle just above the message text) does exactly this.



The classifier could move messages between user folders, but since new messages generally arrive in the inbox, this won't happen in practice. Also, a message which was already classified, won't be classified again to prevent loops and other unwanted behavior (on moving, etc).

Summarized, there are two folder options:
  • Classify new messages in this folder: this will only enable classification for the folder, which could be for comparison reasons only, in other words to prevent that the message would be classified for another folder.
  • Automatically move classified messages to this folder: this will cause messages in other folders which were classified for this folder to be moved to this folder.
I do appreciate that you are thinking this through with me :)

I like to think things through, I guess it's my physicist background :), but you are clearly a couple steps ahead so I apologize if I'm slowing you down.

What I question really is the usefulness of the Classify new messages in this folder. If I understand correctly, this serves 2 purposes, 1) move news messages in this folder to other, more appropriate folders and 2) train the classifier.

1) is about only useful for the Inbox, so maybe it could be enabled by default with the misc option and hidden from the end user.

2) could apply to all folders, even trash, archive, user folders, etc in my humble opinion because it is used to help decide on which folder is the better fit. Then again, maybe it could be turned on for all folders with the master switch in misc and hidden from the end user? Would that generate too much data?

Doing that would leave only the option to Automatically move classified messages to this folder. It would be simpler and avoid confusion. But I'm probably missing something.

I agree fine-grained control over which folder should be used to train the classifier is even better when you know exactly what you are doing, but I think it's a bit too much for the average end user who won't even read the FAQ. Or maybe add an option to have fine-grained control over the classifier, off by default? Fine-grained could include the min probability and min difference too btw.

Anyway, I trust you to come up with the most elegant solution. I'm only trying to help so I hope that's helpful lol.
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
I like to think things through, I guess it's my physicist background :), but you are clearly a couple steps ahead so I apologize if I'm slowing you down.

What I question really is the usefulness of the Classify new messages in this folder. If I understand correctly, this serves 2 purposes, 1) move news messages in this folder to other, more appropriate folders and 2) train the classifier.

1) is about only useful for the Inbox, so maybe it could be enabled by default with the misc option and hidden from the end user.

2) could apply to all folders, even trash, archive, user folders, etc in my humble opinion because it is used to help decide on which folder is the better fit. Then again, maybe it could be turned on for all folders with the master switch in misc and hidden from the end user? Would that generate too much data?

Doing that would leave only the option to Automatically move classified messages to this folder. It would be simpler and avoid confusion. But I'm probably missing something.

I agree fine-grained control over which folder should be used to train the classifier is even better when you know exactly what you are doing, but I think it's a bit too much for the average end user who won't even read the FAQ. Or maybe add an option to have fine-grained control over the classifier, off by default? Fine-grained could include the min probability and min difference too btw.

Anyway, I trust you to come up with the most elegant solution. I'm only trying to help so I hope that's helpful lol.
Classify new messages in this folder will enable classification for the folder only (=training), but not move messages. To actually move messages Automatically move classified messages to this folder needs to be enabled.

Since classification depends on comparison, it won't work if it is enabled for one folder only.

Classification is by default enabled for the inbox.

I have changed behavior of the folder options to make this a little more clear.

https://github.com/M66B/FairEmail/commit/bc2c89d3394313d3284696771e9ee5033964bdae

Basically, download is required for classification (the text is needed) and classification is required for auto moving.
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
Version 1.1458 is available on GitHub now.

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

This version fixes an odd connectivity issue caused by a bug in EMUI, which affects in any case the Huawei P30 Pro. The symptom is that switching to mobile data doesn't result in FairEmail to reconnect. The cause is that on receiving the Android connectivity event the active network isn't updated yet, so for FairEmail there is no network available. To workaround this, a message (runnable) is queued to process the connectivity event a bit later.

Fortunately, I know how this works within Android due to my work on XPrivacy/Lua!
 
Last edited:

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
Version 1.1459 is available on GitHub now and will be available in the Play store test program after Google's approval, which mostly takes a few hours.

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

Somebody suggested to add an option to switch the keyboard to incognito mode for which there appears to a flag since Android Oreo. You can find this new option in the privacy settings. It is disabled by default.
 
Version 1.1459 is available on GitHub now and will be available in the Play store test program after Google's approval, which mostly takes a few hours.

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

Somebody suggested to add an option to switch the keyboard to incognito mode for which there appears to a flag since Android Oreo. You can find this new option in the privacy settings. It is disabled by default.
On a Samsung s10 plus,
Stock Android 10 Rom, and using SwiftKey Keyboard...... I turned on the switch for the incognito keyboard. But, when I try to compose an email, the regular keyboard, not the incognito one appears.
 

M66B

Recognized Developer
Aug 1, 2010
26,751
57,997
On a Samsung s10 plus,
Stock Android 10 Rom, and using SwiftKey Keyboard...... I turned on the switch for the incognito keyboard. But, when I try to compose an email, the regular keyboard, not the incognito one appears.
I can only tell that FairEmail request an incognito keyboard. A keyboard app can ignore this. So, the question is if SwiftKey supports the IME_FLAG_NO_PERSONALIZED_LEARNING flag, which is optional.
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 256
    ic_launcher.png

    FairEmail
    Open source, privacy friendly email app for Android

    banner7_long.png


    See here for a description:
    https://github.com/M66B/open-source-email/

    See here for screenshots:
    https://email.faircode.eu/#screenshots

    Downloads:
    https://github.com/M66B/open-source-email#user-content-downloads

    Frequently asked questions:
    https://github.com/M66B/open-source-email/blob/master/FAQ.md

    Please read this before requesting a new feature:
    https://github.com/M66B/FairEmail/blob/master/FAQ.md#user-content-get-support

    This XDA thread is about using the latest version of FairEmail.

    For support on authorizing an account, you should consult the documentation of your provider, see also here.

    Off-topic comments are allowed as long they are related to FairEmail and are in the general interest of the followers of this thread.

    Discussion of purchases is not allowed here, please contact me via here instead.
    69
    How was the call with Google today, Marcel?

    Google was pretty friendly and cooperative and told me the favicons are indeed the problem, and it can/should be fixed by updating in the privacy policy to "disclose how your app accesses, collects, uses, and shares user data":

    Privacy Policy​

    All apps must post a privacy policy in both the designated field in Play Console and within the app itself. The privacy policy must, together with any in-app disclosures, comprehensively disclose how your app accesses, collects, uses, and shares user data, not limited by the data disclosed in the Data Safety section. This must include:
    • developer information and a privacy point of contact or a mechanism to submit inquiries
    • disclosing the types of personal and sensitive user data your app accesses, collects, uses, and shares; and any parties with which any personal or sensitive user data is shared
    • secure data handling procedures for personal and sensitive user data
    • the developer’s data retention and deletion policy
    • clear labeling as a privacy policy (e.g., listed as “privacy policy” in title)
    The entity (e.g., developer, company) named in the app’s Google Play listing must appear in the privacy policy or the app must be named in the privacy policy. Apps that do not access any personal and sensitive user data must still submit a privacy policy.

    Please make sure your privacy policy is available on an active URL (no PDFs) and is non-editable.

    So, I have updated the privacy policy and added this new table:

    https://github.com/M66B/FairEmail/blob/master/PRIVACY.md#summary-of-shared-data

    I am not sure if it covers everything, so feedback is more than welcome. @mkasimd maybe you can take a look?

    Note that I have also enabled BIMI, Gravatars, Libravatars and favicons for the Play store version again.

    The short term goal is to release a Play store test version (and associated GitHub version) and to get the update approved. I will think about the next steps after this has been accomplished. Given the huge number of supportive messages I received (much appreciated!) the project will be continued in some form in any case.
    50
    Version 1.1900 is available on GitHub now and in the Play store test program after Google's approval (which is the main goal of this release).

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

    My girlfriend is slowly recovering too :)
    48
    It is time for a new, modern, open source, privacy friendly email client for Android.

    I have just released a first alpha version for feedback on the design and features.

    Not for production use yet!

    Most of the stuff basically works, but be prepared for crashes and error notifications.


    Safe email is a working name, but it is for several reasons not a convenient name, so suggestions for a name are welcome.
    37
    I have just released alpha version 0.15

    Changelog/download:
    https://github.com/M66B/open-source-email/releases

    With a bit of luck the next version can be a beta version.

    I am putting a lot of effort into this project, so thanks are appreciated.