Commit Graph

141 Commits (ef6a0c1162cbaae3463b5654933eeb3ab80e888d)

Author SHA1 Message Date
Daniel Gasienica 195e9b777c Rename `willHaveAttachmentsSavedOnFileSystemDuringUpgrade`
New name: `willAttachmentsGoToFileSystemOnUpgrade`
8 years ago
Daniel Gasienica 4c4443390a Rename `createImporter` to `createAttachmentDataWriter` 8 years ago
Daniel Gasienica 5ea1a305a6 Clarify error origin 8 years ago
Daniel Gasienica 9dcb64b53c Initialize schema version upon import 8 years ago
Daniel Gasienica cfad983d08 Consistently use `ciphertext` instead of `encrypted` 8 years ago
Daniel Gasienica a61c905146 Impliclity decrypt data if `key` is present 8 years ago
Daniel Gasienica 94c75762b5 Add `Message.createAttachmentLoader` 8 years ago
Daniel Gasienica 43ab320d31 Load attachments before writing them upon export 8 years ago
Daniel Gasienica 7eeabb5b1a Add precondition for `writeAttachment` 8 years ago
Daniel Gasienica 0faaf52b71 Import and upgrade messages upon save 8 years ago
Daniel Gasienica cf7355bd2f Rename `backupToDirectory` to `exportToDirectory`
For symmetry reasons.
8 years ago
Daniel Gasienica bf67254cc5 Add `Message.createImporter` 8 years ago
Daniel Gasienica efd673083d Rename `writeAttachmentData` to `writeNewAttachmentData` 8 years ago
Daniel Gasienica ce8fe0d345 Add `Signal.Startup` module 8 years ago
Daniel Gasienica 8474f3cf7f Use `create*` prefix to clarify curried functions 8 years ago
Daniel Gasienica 12cdeee7ec Rename `count` to `numMessagesPerBatch` 8 years ago
Daniel Gasienica 38ac9972e8 Improve termination condition 8 years ago
Daniel Gasienica 5b1a0c45df Replace `getAll` with cursor
This reduces the likelihood of IPC message size error.
8 years ago
Daniel Gasienica ed77378293 Fix bug in termination condition 8 years ago
Daniel Gasienica 052fb841f6 Allow database name override in migrations 8 years ago
Daniel Gasienica 1e04083813 Support database upgrades in `Database.open` 8 years ago
Daniel Gasienica f50ac1c99e Reduce excessive logging about database status 8 years ago
Daniel Gasienica 77b1f3c505 Replace startup with attachment background migration
Iterates through `Message::id` index.
8 years ago
Daniel Gasienica 057762806e Add support for attachment background migration without index 8 years ago
Daniel Gasienica 2e4893f4c1 Clarify implications of introducing new migrations 8 years ago
Daniel Gasienica 7413b787b6 Make `migrations` private 8 years ago
Daniel Gasienica b07c66eaa7 Generate attachments from local files
This ensures our benchmarking is closer to real-world usage, e.g. images, video,
etc. that are not compressible.
8 years ago
Daniel Gasienica 064a40544c Fix error message formatting 8 years ago
Daniel Gasienica 442f5d7295 Use `done` to match JavaScript iterators
See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators
8 years ago
Daniel Gasienica a4f0c5242f Document why batch size is one 8 years ago
Daniel Gasienica 805031ade8 Conditionally run post-attachment migrations
Introduce placeholder migrations for Backbone models so they never implicitly
run migrations whenever they are `fetch`ed. We prefer to run our migrations
explicitly upon app startup and then let Backbone models be (slightly) dumb(er)
models, without inadvertently triggering migrations.
8 years ago
Daniel Gasienica bfbeedab5c Temporarily disable post-attachment migration migrations 8 years ago
Daniel Gasienica d9be6a0f94 Destructure Lodash `require`s 8 years ago
Daniel Gasienica b7b6195cfc Extract IIFE into separate function 8 years ago
Daniel Gasienica 11f98474ba Capture how many messages we have to process 8 years ago
Daniel Gasienica 0fdc1140dd Add `Database.getCount` function 8 years ago
Daniel Gasienica 1f8556b049 Remove unused `createCollection` 8 years ago
Daniel Gasienica c67c2a858a Remove Backbone references for attachment migration
It has to run without any other migrations interfering.
8 years ago
Daniel Gasienica 0c40f35623 Document disadvantage of fetching messages without index 8 years ago
Daniel Gasienica d3c9de4712 Add debug module
Lets us generate large conversations with large attachments.
8 years ago
Daniel Gasienica 30037e5308 Reduce attachment migration batch size to 1
This prevents ‘Maximum IPC message size exceeded’ due to IDB `getAll` operation.

- https://github.com/zincbase/zincdb/issues/17
- https://cs.chromium.org/chromium/src/content/browser/indexed_db/indexed_db_database.cc?q=%22Maximum+IPC+message+size+exceeded%22&sq=package:chromium&l=1160
8 years ago
Daniel Gasienica 21147a20a0 Add `sleep` module 8 years ago
Daniel Gasienica 08f73b8420 Remove last processed index after attachment migration 8 years ago
Daniel Gasienica 696a144ab7 Add `settings.deleteItem` 8 years ago
Daniel Gasienica 5910f84af4 Remove outdated documentation 8 years ago
Daniel Gasienica efe3cd67fc Allow attachment migration run on higher database version 8 years ago
Daniel Gasienica 921c3dba7c Skip migrations that have already been applied 8 years ago
Daniel Gasienica 417511ffd2 Add `database.getVersion` 8 years ago
Daniel Gasienica c5c94bc3ab Extract `getMigrationVersions` 8 years ago
Daniel Gasienica 6aea36240d Rename `closeDatabase` to `closeDatabaseConnection` 8 years ago