Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to run filters against existing emails #257

Closed
ghost opened this issue Feb 17, 2020 · 7 comments
Closed

Ability to run filters against existing emails #257

ghost opened this issue Feb 17, 2020 · 7 comments

Comments

@ghost
Copy link

ghost commented Feb 17, 2020

It'd be awesome if ElectronMail implemented an option to run filters against existing emails; whether they're the filters native of the email provider or a custom filtering feature. ProtonMail is only able to run filters the moment the emails are received or sent, and there's no way to apply them to the emails already in the account.

I've more-or-less been able to sort out this limitation by using Thunderbird's filters; however they're pretty archaic (they treat labels as folders), and Thunderbird + Bridge is an incredibly slow combination and it has been a very frustrating task to keep my messages organized.

If ElectronMail had a similar feature, it'd help the service compensate for another basic feature that most email providers offer and this one is still lacking.

@vladimiry
Copy link
Owner

It sounds like the search capabilities need to be enchanted by adding there more filters. Currently the filters list includes only only folder/label + full-text search keyword (see #92).

@ghost
Copy link
Author

ghost commented Feb 17, 2020

Yes, adding some advanced search options to ElectronMail along with the ability to select all messages matching the query (and not only the ones in view like in ProtonMail's web client, where you can only select batches of 50 mails at a time) would already be a huge plus. The filtering feature could then be built on top of this as it'd merely be an automation of searches + actions.

@vladimiry
Copy link
Owner

It's technically possible to enable requested features but the task is huge. Not planned for the near future.

The filtering feature could then be built on top of this as it'd merely be an automation of searches + actions.

One example of such action is already here, see make all read button enabled since https://github.com/vladimiry/ElectronMail/releases/tag/v3.8.0. The button works with the whole mails list loaded in the offline/local database view mode, including the full-text search result list.

@vladimiry
Copy link
Owner

The next app release is going to enable two more full-text search filters, "sentDateAfter" and "hasAttachments".

full-text search filters

@vladimiry
Copy link
Owner

Picked from #380:

The workaround is to export all the emails to EML files (in the app can be done in 2 mouse clicks), then import them to any mature mail app or EML viewer and run the search there.

vladimiry added a commit that referenced this issue Mar 21, 2021
* filter function typed in TypeScript
* Monaco Editor used as a code editor
@vladimiry
Copy link
Owner

vladimiry commented Mar 21, 2021

Implemented and planned for next release.

  • Enabled support for JavaScript-based / programmatic messages search filters (Ability to run filters against existing emails #257, aaf0235). This basically enables the unlimited capabilities for messages filtering. Notice that the code editor is enhanced by highlighting the syntax and it understands the email message data model (thanks to TypeScript). The simplest way to get a better idea about the message data model is to export some message to JSON and then review the file structure (exporting to JSON enabled since v4.11.0, see Export to JSON #160). The feature comes with a simple filtering code snippets library which in new releases might get transformed into a per-account and user-editable library. The feature requires the local store option to be enabled for the email account.
    js-search

@vladimiry
Copy link
Owner

vladimiry added a commit that referenced this issue Mar 22, 2021
vladimiry added a commit that referenced this issue May 10, 2021
* Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
* The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 11, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 11, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 12, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 12, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 19, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 20, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 20, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 20, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
vladimiry added a commit that referenced this issue May 20, 2021
Ensuring "encrypted search" unavailability:
  * Enabling @ProtonMail's "encrypted search" feature in the app doesn't make sense since the app goes with in-memory only browser storages (including "indexedDb" storage). So the app will start with a clean in-browser storages on every start.
  * The app comes with its own full-text search capabilities, see "local store" point in https://github.com/vladimiry/ElectronMail/wiki/FAQ. The app also supports the code-based search which allows unlimited messages scanning capabilities, see #257.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant