Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	5910f84af4  
						 
						
							
							
								
								
								Remove outdated documentation  
							
							
							
						 
						
							2018-04-02 12:17:36 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	efe3cd67fc  
						 
						
							
							
								
								
								Allow attachment migration run on higher database version  
							
							
							
						 
						
							2018-04-02 12:17:36 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	921c3dba7c  
						 
						
							
							
								
								
								Skip migrations that have already been applied  
							
							
							
						 
						
							2018-04-02 12:17:36 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
								
							 
						 
						
							
							
								
							
							
	85490fbc98  
						 
						
							
							
								
								
								Disable JSHint for background.js  
							
							... 
							
							
							
							It doesn’t recognize `async` and I couldn’t figure out how to ignore a top-level
`async` without cascading errors. 
							
						 
						
							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 
								
							 
						 
						
							
							
								
							
							
	b8a0bc3423  
						 
						
							
							
								
								
								Run attachment to disk migration on 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 
								
							 
						 
						
							
							
								
							
							
	b24dad23ea  
						 
						
							
							
								
								
								Fix search view conversation reset bug  
							
							... 
							
							
							
							When searching for an existing conversation using a phone number, it’s possible
to click on ‘Start conversation…’ and have that new dummy entry overwrite the
existing conversation.
This change ensures we are always showing a dummy conversation model that is not
part of the conversation collection. Adding it is always idempotent as it goes
through `getOrCreateAndWait`. 
							
						 
						
							2018-03-27 19:54:35 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	08f6886f3e  
						 
						
							
							
								
								
								Strengthen precondition of ConversationController.getOrCreate  
							
							
							
						 
						
							2018-03-27 19:52:18 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	83c979fb84  
						 
						
							
							
								
								
								Rename createTemporary to dangerouslyCreateAndAdd  
							
							... 
							
							
							
							Class: `ConversationController`.
This function should not be used in application code as it creates potentially
invalid `Conversation` instances in our global conversation collection. We keep
making it available for testing purposes. 
							
						 
						
							2018-03-27 19:52:17 -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 
								
							 
						 
						
							
							
								
							
							
	dede0f1e25  
						 
						
							
							
								
								
								Improve user messaging during initialization  
							
							... 
							
							
							
							- We first show a localized loading message.
- If initialization takes longer than a certain threshold, we show a different
  ‘optimization’ message.
- If initialization is below the threshold the message change is canceled right
  before the regular loading screen. 
							
						 
						
							2018-03-26 16:56:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	add19aa732  
						 
						
							
							
								
								
								Add initialization view  
							
							
							
						 
						
							2018-03-26 16:56:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Daniel Gasienica 
								
							 
						 
						
							
							
								
							
							
	f253fef5c6  
						 
						
							
							
								
								
								Explicitly make onDestroy have void return type  
							
							
							
						 
						
							2018-03-26 16:49:21 -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 
								
							 
						 
						
							
							
								
							
							
	5c9f18e1ae  
						 
						
							
							
								
								
								Wire up background message migration  
							
							
							
						 
						
							2018-03-26 16:49:21 -04:00