Allow deriving keys with it if the server requests it, but do not use it
by default to create new keys.
tutadb#1559
Co-authored-by: @vitoreiji, @paw-hub, @charlag
Building packages is a part of most build invocations. Our old approach
during dev builds was to
1. Invoke npm once to run build-packages
2. Invoke npm per each package to run tsc.
Unfortunately, npm is very slow. Additionally, the old approach was
leading to tsc re-checking some packages multiple times because of
dependencies between them. This would only worsen with time.
In our new approach we
1. invoke tsc only once
2. try to avoid invoking npm as much as possible
Unfortunately there is still one case where we invoke npx because we
can't be sure that the location of node_modules/.bin is stable as we
are sometimes used as a package. Without this we could reduce the time
even further.
5.3.0 couldn't handle windows machines with a restricted powershell.
6.0.0 fixed that, but the alpha that's currently available does not
work on linux because it's opening the child process wrong.
We manually merged the contents of branch `password-generator-thesis`
onto a new branch, because the typescript migration changes broke the
mergeability of the existing implementation
#327
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>
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