Commit graph

30 commits

Author SHA1 Message Date
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
youkwhd
81ccfb419f
Replace deprecated substr()
See:
    - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substr
    - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring#differences_between_substring_and_slice
2024-11-21 17:12:19 +01:00
mup
bbb0b62e3b Moves common functions between worker and app
This commit moves some functions that are used in both App and Worker.
Also renames CommonMailUtils to SharedMailUtils.ts because there share
functionalities between both apps and creates a new file CommonMailUtils
to store functions that are common between app and worker.
2024-07-30 14:27:45 +02:00
mup
3e0b50c95a Fixes build dir 2024-07-30 14:04:12 +02:00
mup
e5a284ed72 Add separated ESBuild for calendar build
This commit adds an argument to ESBuild allowing to choose between
mail app or calendar app
2024-07-29 14:44:20 +02:00
mup
b7d04d191b Adds RollUp config for Calendar build
This commit implements the production build script of Calendar's webapp.

Calendar app contains user management, so this commit also moves
settings page files that are related to it to the common chunk.
2024-07-29 14:44:19 +02:00
ivk
30a04b7ded
[desktop] Fix dist build for custom server
Fix picking IP address for URL when private IP address does not start
with 192.168.

Use different update url path for local and custom server install.
2024-07-18 18:36:26 +02:00
ivk
3bf53aa5c2 [ci] Use cached better-sqlite3 in github actions 2023-12-01 12:41:55 +01:00
jat
8096e3ed6b Add support for universal architecture on macOS
`electron-builder` has undocumented support for building universal
binaries with `electron/universal`.
It's mentioned in `electron-builder`'s change logs & in
/packages/app-builder-lib/src/macPackager.ts#L109 inside
`electron-builder`'s repo.
2023-11-27 13:37:36 +00:00
jat
38a70be346 Fix desktop script building both x86_64 and arm64 at the same time
Added a new flag `-a` which allows the developer to set the architecture
of the built client. It causes an error when an unsupported combination
of platform & architecture is used. By default, it uses the architecture
the installed node binary uses.
2023-11-27 13:37:36 +00:00
arm
b58f43ffc0 Change application name, #5960 2023-11-06 15:16:57 +01:00
nig
4e6cf85640 [build] cleanup build for desktop client
re-create the artifacts folder before starting to use it
2023-10-19 17:14:11 +02:00
nig
3dfff9913b [android] remove dist buildType
we now put the dist and the dev build just in
tutanota-3/build

#5637
2023-10-18 12:12:10 +02:00
nig
e60e78c9c4 move dist build to just ./build 2023-10-18 12:12:10 +02:00
nig
b710ce8488 use app.tuta.com for the mail app domain
leaves references to the https://tutanota.com domain alone
2023-10-18 12:12:10 +02:00
ivk
58721df61a Introduce domain configs to support 2FA across domains
#5638
2023-10-18 10:16:11 +02:00
nig
978d9780c2 fix linter errors for missing node: protocol
close #4367
2023-05-05 11:29:09 +02:00
nig
32aa68abef [ci] explicitly process.exit from desktop.js 2023-01-30 12:10:11 +01:00
ivk
50b23ebd1b Run prettier on the whole project 2022-12-27 16:08:23 +01:00
jom
ca177b74f5
Add framework for migrating offline database
When there is a model change on the server that would conflict with
the entities stored in the offline database, we need to do a migration
We generate some model diffs with the code generator and use them
for a compile-time check.

Co-authored-by: ivk <ivk@tutao.de>
2022-05-25 16:30:34 +02:00
jom
d044ddbf5d [build] fix desktop build 2022-05-06 09:30:36 +02:00
jom
86ee7e54a5 [build] fix desktop build 2022-05-06 09:10:45 +02:00
jom
c6d5f96f15 [build] fix desktop.js 2022-05-06 08:37:27 +02:00
jom
904ed0a7e2 [build] fix desktop.js 2022-05-06 08:23:21 +02:00
jom
d0ccf8355b [build] fix desktop.js 2022-05-06 08:05:58 +02:00
ivk
b0066f98ef
[build, desktop] Fix building better-sqlite3 on Windows, fix #4089
- Fix unpacking .node file form .asar
 - Update to correct build of better_sqlite3
 - Fix passing correct path to better_sqlite3
2022-05-05 18:00:59 +02:00
jom
636501198b [maintenance] update commander to v9 2022-05-03 15:57:33 +02:00
jom
591554aa51 [build] Build better-sqlite3 on windows during Jenkins CI
This commit not only sets up the build for windows on jenkins,
it also consolidates how we get prebuilt binaries for native modules i.e. keytar and better-sqlite3
and generally has some refactorings
2022-03-07 10:26:06 +01:00
jom
4c274e5ee1 [build] fix desktop dist build
The dist build was refactored in commit:

916ee1ed1d

The format of the desktop options was changed from a raw object to a map,
but the usages in DesktopBuilder weren't adapted. This change adapts them
and also tidies it up a bit.

reviewed with sas
2022-02-21 15:31:03 +01:00
thp
916ee1ed1d Refactor dist.js #3221
Split dist.js (desktop.js, webapp.js)
  Simplify command line interface for dist builds
  Extract utilities used from dist builds
  Extract fetching and publishing dictionaries into its own build step
  Extract signing installers into its own build step
  Extract .deb packaging and publishing into its own build step
  Add some documentation, verbosity and general improvements to the code
2022-02-18 10:52:52 +01:00