Commit graph

27 commits

Author SHA1 Message Date
mac-github
279278179b store ServerModelParsedInstances in offline db
Co-authored-by: nig <nig@tutao.de>
Co-authored-by: abp <abp@tutao.de>
Co-authored-by: jhm <17314077+jomapp@users.noreply.github.com>
Co-authored-by: das <das@tutao.de>
2025-05-06 18:45:27 +02:00
Kinan
edbf281b88
switch to typeIds and attrIds, add SystemMV126, TutanotaMV86, BaseMV2
Refactor our instance deserialization/serialization pipeline, both on
TypeScript and on Rust [sdk] to use typeId and attributeIds instead of
typeNames and attributeNames. We furthermore ignore cardinalities
on associations until the instance layer and always
store associations as arrays. This commit introduces **eventual
consistency** on the client, i.e. we are from now on always storing data
in the newest schema format (activeApplicationVersionsForWritingSum)
which ensures that all data is already available on the client after
updating the client to a newer version. This removes the need for
offline migrations on the client and also removes backward migrations
on the server. Furthermore, the server model types are now available
on the client, retrievable through the ApplicationTypesFacade. This is
our first step towards FastSync.

Co-authored-by: nig <nig@tutao.de>
Co-authored-by: abp <abp@tutao.de>
Co-authored-by: jomapp <17314077+jomapp@users.noreply.github.com>
Co-authored-by: map <mpfau@users.noreply.github.com>
Co-authored-by: sug <sug@tutao.de>
Co-authored-by: Kinan <104761667+kibibytium@users.noreply.github.com>
2025-04-28 12:44:35 +02:00
mab
2d35ab0d6e Introduce key verification (squash) 2025-03-19 09:29:34 +01:00
ivk
fb9882a1af Fix invalid MailSetEntry ranges in offline db
fix #8603
2025-03-05 16:26:35 +01:00
abp
95791bef7f
add SystemModelV121 and V122
We adjust the client to the system model cleanup done on versions 121
by adjusting:
- whiteLabelRegistrationDomain on GlobalSettingsViewer.ts
- Offline database migration sys-v121. This migration is a empty
migration as there are no usages of this type.

Co-authored-by: sug <sug@tutao.de>-
2025-02-13 17:22:22 +01:00
abp
84d4c125f0
remove legacy MailFolders and add TutanotaModelV83
Co-authored-by: jhm <17314077+jomapp@users.noreply.github.com>
2025-02-11 16:53:52 +01:00
sas
34a5586c7e
Generate distribution key pairs, AdminGroupKeyRotationService PUT
tutadb#1912
2025-02-06 09:26:00 +01:00
ivk
c6eee5c49e Add migration for system model 119 2025-02-02 14:03:07 +01:00
ivk
cc748dd092 [build, ci] Fix offline db migrations check 2025-02-02 14:02:21 +01:00
paw
3933d255d2 Optimize blob downloading
Use archive tokens when downloading blobs when possible

Try to split requests by archive

Closes #8069

Co-authored-by: ivk <ivk@tutao.de>
Co-authored-by: BijinDev <bir@tutao.de>
2025-01-27 12:04:17 +01:00
paw
23bf023d28 Add MailExportFacade
Add a facade that handles mail exporting requests and tokens.

Closes #7953

Co-authored-by: BijinDev <bir@tutao.de>
Co-authored-by: ivk <ivk@tutao.de>
2025-01-27 12:02:44 +01:00
mup
046cb5cb9a Handles model changes for Advanced Repeat Rules
Co-authored-by: André Dias <and@tutao.de>
2025-01-15 09:20:37 +01:00
nig
bd361ef678
[desktop] fix mailboxes with wrong values with an offline migration
it's possible for users to miss an entity update to these instances
if they used an old client when correct value was set on the server.
2025-01-07 12:01:23 +01:00
nig
cf42135be8 add mail import
eml and mbox file import in desktop client
pause/resume functionality
chunking for mails and attachments to reduce server requests
testing for imap import source

wisely designed in the alps

Co-authored-by: map <mpfau@users.noreply.github.com>
Co-authored-by: jhm <17314077+jomapp@users.noreply.github.com>
Co-authored-by: Kinan <104761667+kibibytium@users.noreply.github.com>
Co-authored-by: kitsugo <hayashi.jiro@kitsugo.com>
Co-authored-by: nif <nif@tutao.de>
Co-authored-by: sug <sug@tutao.de>
2025-01-02 16:52:08 +01:00
wrd
9848287b64 migrations for tutanota-v79.ts and sys-v116.ts 2024-12-12 15:59:08 +01:00
mup
277d6fef7c Adds App Store payment support on Calendar App
Co-authored-by: André Dias <and@tutao.de>
2024-12-09 12:26:46 +01:00
ivk
dd3a50764b
Fix TutanotaProperties migration in tutanota-v77
Co-authored-by: bir <bir@tutao.de>

Close #8022
2024-11-26 10:38:14 +01:00
ivk
fa4b486149
Add offline migration for system model 114 2024-11-25 14:17:09 +01:00
paw
2e52bf2bcf
Add color to MailSets, add MailSetKind.LABEL, add label services
isLabel is no longer needed.

Closes #7752
2024-11-21 14:38:11 +01:00
paw
995939655e Add migrations for sys-v112 and tutanota-v76
Co-authored-by: BijinDev <BijinDev@users.noreply.github.com>
2024-10-18 12:37:17 +02:00
vis
e36f75320a
Add user group key rotation
tutadb#1844
2024-10-07 11:01:14 +02:00
and
cc7c97c95b [Calendar] Subscribing to External Calendars
This commit adds a new functionality which allows users to subscribe
to an external calendar by providing a URL for a public calendar.

Co-authored-by: mup <34790144+murilopereirame@users.noreply.github.com>
2024-09-23 16:49:22 +02:00
mup
0d14919a20 Update model version according to server 2024-08-28 10:05:12 +02:00
map
2d24bab6f9 MailSet support (static mail listIds)
In order to allow importing of mails we replace legacy MailFolders
(non-static mail listIds) with new MailSets (static mail listIds).
From now on, mails have static mail listIds and static mail elementIds.
To move mails between new MailSets we introduce MailSetEntries
("entries" property on a MailSet), which are index entries sorted by
the received date of the referenced mails (customId). This commit adds
support for new MailSets, while still supporting legacy MailFolders
(mail lists) to support migrating gradually.

* TutanotaModelV74 adds:
  * MailSet support
  * and defaultAlarmList on GroupSettings

* SystemModelV107 adds model changes for counter (unread mails) updates

* Adapt mail list to show MailSet and legacy mails
  The list model is now largely unaware about listIds since it can
  display mails from multiple MailBags. MailBags are static mailLists
  from which a mail is only removed from when the mail is permanently
  deleted.

* Adapt offline storage for mail sets
  Offline storage gained the ability to provide cached entities
  from a list of ids.
2024-08-20 16:19:58 +02:00
vis
8088c8a9b8
handle customer and team group key rotations
Resolve group key using adminEncGroupKey if not possible via membership because  is theoretically possible that the user has a team group they are not a member of.

 adapt to model changes in the data transfer type

tutadb#1820
2024-07-31 10:41:25 +02:00
wrd
4919979a7c sys-v105 Model changes for calendar app notifications
Co-authored-by: mup <34790144+murilopereirame@users.noreply.github.com>

Also moves the new isDraft function to CommonMailUtils
and other code clean-up
2024-07-26 17:42:25 +02:00
wrd
8ab3b14edd Move files to new folder structure
Co-authored-by: @rih-tutao
2024-07-26 16:42:13 +02:00
Renamed from src/api/worker/offline/OfflineStorageMigrator.ts (Browse further)