1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-07-07 12:25:46 +02:00
bitwarden-browser/apps/desktop
Matt Gibson 3340af8084
PM-3585 Improve state migrations (#5009)
* WIP: safer state migrations

Co-authored-by: Justin Baur <justindbaur@users.noreply.github.com>

* Add min version check and remove old migrations

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>

* Add rollback and version checking

* Add state version move migration

* Expand tests and improve typing for Migrations

* Remove StateMigration Service

* Rewrite version 5 and 6 migrations

* Add all but initial migration to supported migrations

* Handle stateVersion location in migrator update versions

* Move to unique migrations directory

* Disallow imports outside of state-migrations

* Lint and test fixes

* Do not run migrations if we cannot determine state

* Fix desktop background StateService build

* Document Migration builder class

* Add debug logging to migrations

* Comment on migrator overrides

* Use specific property names

* `npm run prettier` 🤖

* Insert new migration

* Set stateVersion when creating new globals object

* PR comments

* Fix migrate imports

* Move migration building into `migrate` function

* Export current version from migration definitions

* Move file version concerns to migrator

* Update migrate spec to reflect new version requirements

* Fix import paths

* Prefer unique state data

* Remove unnecessary async

* Prefer to not use `any`

---------

Co-authored-by: Justin Baur <justindbaur@users.noreply.github.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2023-08-30 17:57:20 +00:00
..
.vscode Multi root workspace tweaks (#2858) 2022-06-13 21:39:36 -05:00
config [EC-272] Web workers using EncryptionService (#3532) 2022-10-28 07:38:54 +10:00
desktop_native Revert "Update cargo minor (#5671)" (#6080) 2023-08-21 13:54:04 -05:00
native-messaging-test-runner Update dependency uuid to v9 (#5960) 2023-08-21 16:58:21 +00:00
resources Update Plist files for MAS (#2951) 2022-06-22 15:10:21 -04:00
scripts [DEVOPS-1438] Migrate our mac os desktop notary tool (#5741) 2023-08-17 10:33:07 +02:00
src PM-3585 Improve state migrations (#5009) 2023-08-30 17:57:20 +00:00
stores Update year in copyrights (#4325) 2022-12-28 21:59:23 +01:00
.eslintrc.json [EC-184] Desktop cleanup (#2553) 2022-05-05 19:03:56 +02:00
.gitignore Simplify our gitignore files (#2925) 2022-06-17 15:33:51 +02:00
crowdin.yml Fix Crowdin Pull workflow (#2667) 2022-05-10 10:20:32 -04:00
electron-builder.json [DEVOPS-1438] Migrate our mac os desktop notary tool (#5741) 2023-08-17 10:33:07 +02:00
installer.nsh Add NSIS custom installer script for UAC fix on Windows (#2856) 2022-06-08 08:47:10 -04:00
jest.config.js [PM-2328] Fix jest deprecations (#5483) 2023-05-22 20:19:16 +02:00
package.json Bumped desktop version to 2023.8.3 (#6131) 2023-08-28 16:35:34 -04:00
postcss.config.js [PM-2237] Add tailwind to desktop & browser (#5326) 2023-07-14 15:03:42 -04:00
README.md Update urls to match the contributing docs (#4192) 2022-12-06 11:20:27 +01:00
sign.js
tailwind.config.js [PM-2237] Add tailwind to desktop & browser (#5326) 2023-07-14 15:03:42 -04:00
test.setup.ts [SG-397] Configure jest for Desktop and add simple tests (#3467) 2022-09-15 12:31:15 -04:00
tsconfig.json [PM-3587] create @bitwarden/vault lib (#6083) 2023-08-22 10:02:48 -04:00
tsconfig.renderer.json Add support for migrated jslib (#2826) 2022-06-03 18:01:07 +02:00
tsconfig.spec.json [SG-397] Configure jest for Desktop and add simple tests (#3467) 2022-09-15 12:31:15 -04:00
webpack.main.js Automatically load SIMD binary for argon2 (#4921) 2023-06-12 13:59:59 -05:00
webpack.renderer.js [PM-2237] Add tailwind to desktop & browser (#5326) 2023-07-14 15:03:42 -04:00

Github Workflow build on master Crowdin Join the chat at https://gitter.im/bitwarden/Lobby

Bitwarden Desktop Application

Platforms

The Bitwarden desktop app is written using Electron and Angular. The application installs on Windows, macOS, and Linux distributions.

Desktop Vault

Documentation

Please refer to the Desktop section of the Contributing Documentation for build instructions, recommended tooling, code style tips, and lots of other great information to get you started.