Commit graph

30 commits

Author SHA1 Message Date
sug
f11e59672e
improve inbox rule handling and run spam prediction after inbox rules
Instead of applying inbox rules based on the unread mail state in the
inbox folder, we introduce the new ProcessingState enum on
the mail type. If a mail has been processed by the leader client, which
is checking for matching inbox rules, the ProcessingState is
updated. If there is a matching rule the flag is updated through the
MoveMailService, if there is no matching rule, the flag is updated
using the ClientClassifierResultService. Both requests are
throttled / debounced. After processing inbox rules, spam prediction
is conducted for mails that have not yet been moved by an inbox rule.
The ProcessingState for not matching ham mails is also updated using
the ClientClassifierResultService.

This new inbox rule handing solves the following two problems:
 - when clicking on a notification it could still happen,
   that sometimes the inbox rules where not applied
 - when the inbox folder had a lot of unread mails, the loading time did
   massively increase, since inbox rules were re-applied on every load

Co-authored-by: amm <amm@tutao.de>
Co-authored-by: Nick <nif@tutao.de>
Co-authored-by: das <das@tutao.de>
Co-authored-by: abp <abp@tutao.de>
Co-authored-by: jhm <17314077+jomapp@users.noreply.github.com>
Co-authored-by: map <mpfau@users.noreply.github.com>
Co-authored-by: Kinan <104761667+kibibytium@users.noreply.github.com>
2025-10-22 09:40:45 +02:00
das
d76fcc6775
Add tensorflow.js library
Reviewed by jhm, abp, das.

The library is added to support training a spam classification model on
client. A custom rollupTensorFlow was created to only use the needed
methods on the final file, which also has multiple stubs which remove
code which is unwanted such as Requests.

Co-authored-by: jhm <17314077+jomapp@users.noreply.github.com>
Co-authored-by: abp <abp@tutao.de>
2025-10-22 09:25:20 +02:00
toj
7cf815dd46 ignore git patch on win32
Co-authored-by: yoy <yoy@tutao.de>
2025-09-09 16:55:43 +02:00
toj
fb0e3feb4b Add BotD Library and implement clientside webdriver detection.
Co-authored-by: yoy <yoy@tutao.de>
Co-authored-by: nig <nig@tutao.de>
Co-authored-by: toj <toj@tutao.de>
2025-09-08 16:21:14 +02:00
paw
1e53ef7c5e Remove winreg, use WindowsRegistryFacade
We use the REG command to manipulate/query the Windows registry.

Also adds CommandExecutor so that we have a nice, unit-testable way to
execute commands.

Closes #9398
2025-08-29 10:26:11 +02:00
wrd
d03bdc36b1 Change DomPurify source to mjs file
Close: #6763
2025-07-18 11:14:59 +02:00
ivk
62a6dd4eca Update dependencies
Update terser to support new undici

Fix invalid desktop build settings
2025-07-18 10:01:00 +02:00
ivk
fba2b284ec [desktop] Use @signalapp/sqlcipher fork for db
Co-authored-by: paw <paw-hub@users.noreply.github.com>
2025-06-04 10:37:52 +02:00
hrb-hub
45bbfe3135 Bump linkifyjs and linkify-html to 4.3.1
This version has a fix for breaking mails that contain HTML comments
closed with +2 dashes.

HTML comments closed with more than two dashes weren't handled correctly
by linkify. Causing the comments' closing `>` to be escaped and replaced
by `&gt;`
This resulted in actual markup being commented out.

Example:
`<div><!--comment--->Actual markup</div>`
becomes
`<div><!--comment---&gt;Actual markup&lt;/div&gt;-->`
2025-05-15 11:36:46 +02:00
mab
7e78fccce1 Fix key verification dependencies for prod build 2025-03-19 15:01:40 +01:00
ivk
7f15a755e3
Cache wasm2js output. Switch dist builds to esm. 2025-01-13 10:05:18 +01:00
ivk
2ed48135a8
Replace esbuild with Rolldown
- switch desktop build to esm
 - convert mithril to esm
 - run worker as esm module
 - fix dependency from DesktopAlarmScheduler to calendar app
 - switch napi-rs cli to 3.0
 - fix mimimi imports
 - remove hacky method on generated dispatcher
 - refactor native rollup plugins

 Co-authored-by: bir <bir@tutao.de>
2025-01-13 10:05:18 +01:00
paw
d2cfafbb03
Update libs, fix updateLibs
Co-authored-by: ivk <ivk@tutao.de>
2024-09-03 16:09:15 +02:00
ivk
a42907e55a [build] Add type checking to buildSrc
It isn't invoked automatically anywhere but the editors should pick it
up and it can also be run manually.

It also fixes few little issues, e.g. getPrebuiltNativeModuleForWindows
was getting called with the right arguments.
2024-08-06 16:00:04 +02:00
ivk
a498a13362
Update vendored libs on install 2024-07-18 18:36:32 +02:00
nig
212ce6720f remove keytar 2024-01-18 14:23:01 +01:00
nig
abce92d41f upgrade dependencies 2023-12-13 13:56:49 +01:00
nig
1d4afc6891 vendor undici 5.27.2
fix 803bbf05b0
close #6150
#6053
2023-11-14 13:00:20 +01:00
nig
28ad7dc417 vendor winreg
fix #5836
2023-09-05 13:04:36 +02:00
nig
1adc36e08e [build] vendor electron-updater
* according to rollups type definitions, the output option property is
 ignored by rollup.rollup, so it moved to bundle.write
* we don't use commonjs deps in the desktop bundle anymore, so the
  commonjs plugin can go away from DesktopBuilder

[build] remove some unnecessary rollup plugins

[build] unify the native plugins

[build] vendor keytar

[build] vendor better-sqlite3 deps and restrict module resolution

it's now checked in and can be updated with buildSrc/updateLibs.js

close #4213
2023-08-30 16:38:00 +02:00
nig
978d9780c2 fix linter errors for missing node: protocol
close #4367
2023-05-05 11:29:09 +02:00
nig
0dd3cd40db update updateLibs.js for new squire 2023-03-27 08:46:35 +00:00
ivk
0b4533f933 Update luxon to 3.2.1
also switched to es6 version

close #3339
2023-02-03 15:24:18 +01:00
ivk
50b23ebd1b Run prettier on the whole project 2022-12-27 16:08:23 +01:00
sas
7cb4828c56 Introduce persistent cache for desktop, close #3823 2022-02-15 09:54:54 +01:00
ivk
a1622722d4 Use ESM export for linkifyjs 2022-01-25 13:29:48 +01:00
ivk
7293ada9a9 [model] Implement WebAuthentication support for web, close #2140
Includes system model v71
2021-12-20 18:16:08 +01:00
ivk
dd976592d9 Replace fromCallback, remove the rest of Bluebird, close #2725 2021-08-11 11:23:35 +02:00
jom
224996a2d1 use linkify 2021-06-16 14:00:09 +02:00
ivk
0b621701e9
Update libs, close #2666 2021-03-30 11:50:45 +02:00