Daniel Gasienica
|
417511ffd2
|
Add database.getVersion
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
c5c94bc3ab
|
Extract getMigrationVersions
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
6aea36240d
|
Rename closeDatabase to closeDatabaseConnection
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
016432826b
|
Extract database and settings modules
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
5bea894abd
|
Close database connection via Backbone IDB adapter
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
f50e9ae364
|
Log closing connection of database
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
4ff8bc3357
|
Use camelCase for non-constructors
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
3720c3f3bb
|
Improve log message
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
ce5b450fdb
|
Log targetSchemaVersion
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
f7f24b5822
|
Log total number of processed messages
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
eca930770c
|
Remove hard-coded database connection settings
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
1df6dc8378
|
Abort processing if there are no more messages
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
d5d0eabdfd
|
Remove usage of storage module
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
8966e80284
|
Improve identifier names
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
3e2d575506
|
Document MessageDataMigrator module design
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
3c57dbfb56
|
Extract NUM_MESSAGES_PER_BATCH
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
85788d3c4a
|
Match items storage format to Backbone adapter
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
7de7fcf561
|
Avoid no-param-reassign violation
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
070235b59b
|
Implement MessageDataMigrator.processAll
Upgrades schema of all messags upon startup.
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
178a3cc262
|
Reduce work for verifying transaction completion
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
b6e978f74c
|
Implement MessagesDataMigrator.processAll
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
457bf7ab9d
|
Add createCollection function
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
8ea257ad4d
|
Use double quotes for identifiers in error messages
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
172616ca4f
|
Add log message for dummy migration 18
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
579b01283e
|
Replace wrapDeferred with deferredToPromise
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
40c40c800a
|
Prefer exports
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
da144edc56
|
Manually close database connection after migration
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
106ce21c49
|
Remove redundant log message
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
fcd30cd919
|
Close database after migration
This is not 100% reliable as database connections are closed in a separate
thread according to the documentation:
- https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/close
- https://stackoverflow.com/a/18639298
- 80c7a06d5c/backbone-indexeddb.js (L558-L565)
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
c765422fa1
|
Extract deferredToPromise
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
e2f1339ab9
|
Explicitly run post-attachment migrations
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
d7c8d33edb
|
Extract runMigrations
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
d16178638e
|
Split database migrations into pre- and post-attachment migration
- Run light-weight migrations before attachment migration.
- Run regular migrations after attachments have been moved to disk.
|
2018-04-02 12:17:36 -04:00 |
|
Daniel Gasienica
|
90de9d85a3
|
Remove type annotation
|
2018-03-26 16:56:37 -04:00 |
|
Daniel Gasienica
|
4c10fcfa17
|
Reduce threshold until optimization appears to 1s
|
2018-03-26 16:56:37 -04:00 |
|
Daniel Gasienica
|
add19aa732
|
Add initialization view
|
2018-03-26 16:56:37 -04:00 |
|
Daniel Gasienica
|
9b112489cd
|
Upgrade 2 messages every 30 seconds
This results in 4 messages per minute or 240 messages per hour.
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
7c2fde4433
|
Add Signal.Workflow namespace
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
4a7cc22de3
|
🎨 Use window.requestIdleCallback
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
4651cbc2eb
|
Improve `Message.upgradeSchema preconditions
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
ca28f3030b
|
Add MessageMigration module
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
8e762797c0
|
Remove attachment validation
Turns out `fileName` is optional and maybe even `contentType`. We should revisit
this at a later point in time.
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
09ee2d4ea2
|
Switch to using requestIdleCallback
Example:
https://developer.mozilla.org/en-US/docs/Web/API/Background_Tasks_API#Example
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
d13668544d
|
Rename IdleListener to IdleDetector
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
3140e4d66d
|
Implement basic IdleListener
|
2018-03-26 16:49:21 -04:00 |
|
Daniel Gasienica
|
867f73b80a
|
Use double quotes for identifiers in error messages
|
2018-03-26 16:38:34 -04:00 |
|
Daniel Gasienica
|
70cdd2b350
|
Add stringToArrayBuffer utility
This way we can avoid an extra dependency.
|
2018-03-26 16:38:34 -04:00 |
|
Daniel Gasienica
|
2ad0fd7db6
|
Use Lodash omit instead of delete
|
2018-03-26 16:38:34 -04:00 |
|
Daniel Gasienica
|
279b3f81c7
|
Add Attachment.deleteData
|
2018-03-26 16:38:34 -04:00 |
|
Daniel Gasienica
|
9a540d6d18
|
Load attachment data before sending message
|
2018-03-26 16:38:34 -04:00 |
|