Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								02a2c3224f 
								
							 
						 
						
							
							
								
								Discard unused feature flag constants/mocking.  
							
							 
							
							
							
						 
						
							2020-10-04 10:48:42 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								fc05529574 
								
							 
						 
						
							
							
								
								Let MessagePersister manage its own worker thread.  
							
							 
							
							
							
						 
						
							2020-10-03 11:43:34 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								76665dd56e 
								
							 
						 
						
							
							
								
								Retry Redis commands that time out.  
							
							 
							
							
							
						 
						
							2020-10-01 17:17:07 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								885fa6beae 
								
							 
						 
						
							
							
								
								Add tests for Device#isEnabled.  
							
							 
							
							
							
						 
						
							2020-10-01 12:54:35 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								65cdd5fcbe 
								
							 
						 
						
							
							
								
								Drop the 365-day check when deciding if an account is enabled.  
							
							 
							
							
							
						 
						
							2020-10-01 12:54:35 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								0c6f05f34a 
								
							 
						 
						
							
							
								
								Add a (failing!) test for sending a sealed-sender message after a non-sealed-sender message.  
							
							 
							
							
							
						 
						
							2020-10-01 11:06:43 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								57d2ef8740 
								
							 
						 
						
							
							
								
								Return queues to the "to persist" list if something goes wrong during persistence.  
							
							 
							
							
							
						 
						
							2020-09-30 10:39:56 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								a97e0982e3 
								
							 
						 
						
							
							
								
								Add an integration test for message persistence.  
							
							 
							
							
							
						 
						
							2020-09-30 10:39:56 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								eaa2060d84 
								
							 
						 
						
							
							
								
								Fix an incorrect locking key and some previously-suppressed lock contention issues.  
							
							 
							
							
							
						 
						
							2020-09-30 10:39:56 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								c7230ccbb0 
								
							 
						 
						
							
							
								
								Remove messages from the cache in bulk.  
							
							 
							
							
							
						 
						
							2020-09-29 10:58:02 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								fc71ced660 
								
							 
						 
						
							
							
								
								Persist messages in batches.  
							
							 
							
							
							
						 
						
							2020-09-29 10:58:02 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								599cd766e1 
								
							 
						 
						
							
							
								
								Let Dropwizard manage persister thread lifecycles.  
							
							 
							
							
							
						 
						
							2020-09-29 10:58:02 -04:00  
						
					 
				
					
						
							
							
								 
								Alan Evans
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								e64c8007c0 
								
							 
						 
						
							
							
								
								Detect GV2 capability in non-gcm Android devices  
							
							 
							
							
							
						 
						
							2020-09-28 15:54:10 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								e6d4620af1 
								
							 
						 
						
							
							
								
								Only allow linking desktop clients if they support the third-generation GV2 capability.  
							
							 
							
							
							
						 
						
							2020-09-25 17:08:32 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								656e6db846 
								
							 
						 
						
							
							
								
								Only consider desktop devices GV2-capable if they send the third-gen GV2 capability.  
							
							 
							
							
							
						 
						
							2020-09-25 17:08:32 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								30474e3a2b 
								
							 
						 
						
							
							
								
								Add a test for message ordering.  
							
							 
							
							
							
						 
						
							2020-09-25 11:41:58 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								a553eba574 
								
							 
						 
						
							
							
								
								Add an API endpoint for deleting accounts.  
							
							 
							
							
							
						 
						
							2020-09-25 11:39:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								61f515670c 
								
							 
						 
						
							
							
								
								Add plumbing for deleting accounts and all associated data.  
							
							 
							
							
							
						 
						
							2020-09-25 11:39:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								789af0f8a6 
								
							 
						 
						
							
							
								
								Add support for deleting keys associated with an account.  
							
							 
							
							
							
						 
						
							2020-09-25 11:39:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								86fae58c96 
								
							 
						 
						
							
							
								
								Add support for deleting account entities from the database.  
							
							 
							
							
							
						 
						
							2020-09-25 11:39:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								66a04ed730 
								
							 
						 
						
							
							
								
								Don't explicitly notify clients when messages get persisted.  
							
							 
							
							
							
						 
						
							2020-09-23 14:51:02 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								7e14a0bc30 
								
							 
						 
						
							
							
								
								Drop pub/sub operations from WebsocketConnection.  
							
							 
							
							
							
						 
						
							2020-09-23 14:51:02 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								77de0f86dc 
								
							 
						 
						
							
							
								
								Require desktop clients to send the new gv2-2 capability flag.  
							
							 
							
							
							
						 
						
							2020-09-23 12:05:58 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								e9e18afb4a 
								
							 
						 
						
							
							
								
								Add a (failing) integration test demonstrating an infinite loop.  
							
							 
							
							
							
						 
						
							2020-09-22 10:21:33 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								62c31eb202 
								
							 
						 
						
							
							
								
								Revert "Revert keyspace delivery for all messages"  
							
							 
							
							... 
							
							
							
							This reverts commit 4dc49604b6 . 
							
						 
						
							2020-09-22 10:21:33 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								5986145282 
								
							 
						 
						
							
							
								
								Add a second-generation GV2 capability and ignore the old capability for iOS devices.  
							
							 
							
							
							
						 
						
							2020-09-21 18:57:53 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								83f9eacac4 
								
							 
						 
						
							
							
								
								Refactor UserAgentTagUtil to parse UA strings with UserAgentUtil.  
							
							 
							
							
							
						 
						
							2020-09-21 12:24:08 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								baab6b951b 
								
							 
						 
						
							
							
								
								Add a general utility class for parsing user-agent strings.  
							
							 
							
							
							
						 
						
							2020-09-21 12:24:08 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								ebc3a251b7 
								
							 
						 
						
							
							
								
								Drop the UUID addressing capability flag entirely.  
							
							 
							
							
							
						 
						
							2020-09-14 15:36:29 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								4dc49604b6 
								
							 
						 
						
							
							
								
								Revert keyspace delivery for all messages  
							
							 
							
							... 
							
							
							
							* Revert "Send all messages via keyspace notifications when a feature flag is enabled."
This reverts commit fadcf62166 .
* Revert "Consolidate semaphore release logic."
This reverts commit c02b255766 .
* Revert "Represent stored message state as an enumeration rather than a collection of booleans."
This reverts commit 89788fa665 .
* Revert "Refactor: collapse state into semaphores/atomic booleans."
This reverts commit a052e2ee8f .
* Revert "Refactor: move sendNextMessagePage into its own method."
This reverts commit 158e5004b7 .
* Revert "Avoid querying the database if we think all new messages are in the cache."
This reverts commit 6f9ff3be37 .
* Revert "Query for more stored messages if an update happens while we're already processing a batch."
This reverts commit f766c57743 .
* Revert "Only send the "queue cleared" message once per websocket session."
This reverts commit 8f53152c3e .
* Revert "Let processStoredMessages handle requery logic."
This reverts commit 7bbc88d716 .
* Revert "Only allow one thread to process stored messages at a time."
This reverts commit 68256d2343 . 
							
						 
						
							2020-09-14 15:35:10 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								fadcf62166 
								
							 
						 
						
							
							
								
								Send all messages via keyspace notifications when a feature flag is enabled.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								a052e2ee8f 
								
							 
						 
						
							
							
								
								Refactor: collapse state into semaphores/atomic booleans.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								6f9ff3be37 
								
							 
						 
						
							
							
								
								Avoid querying the database if we think all new messages are in the cache.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								f766c57743 
								
							 
						 
						
							
							
								
								Query for more stored messages if an update happens while we're already processing a batch.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								8f53152c3e 
								
							 
						 
						
							
							
								
								Only send the "queue cleared" message once per websocket session.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								7bbc88d716 
								
							 
						 
						
							
							
								
								Let processStoredMessages handle requery logic.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								68256d2343 
								
							 
						 
						
							
							
								
								Only allow one thread to process stored messages at a time.  
							
							 
							
							
							
						 
						
							2020-09-11 13:12:17 -04:00  
						
					 
				
					
						
							
							
								 
								Ehren Kret
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								f88c440c48 
								
							 
						 
						
							
							
								
								Automatically retry when Twilio returns unreachable ( #190 )  
							
							 
							
							... 
							
							
							
							* Parse and log the Twilio error code
* Automatically retry without sender ID when Twilio returns unreachable
* Remove attempt count and pass around whether or not sender id was used 
							
						 
						
							2020-09-10 13:58:39 -05:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								2c6b646d87 
								
							 
						 
						
							
							
								
								Enforce no capability downgrade on device verification  
							
							 
							
							
							
						 
						
							2020-09-09 16:05:00 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								e7572094b5 
								
							 
						 
						
							
							
								
								Require all enabled devices to support GV2.  
							
							 
							
							
							
						 
						
							2020-09-09 16:05:00 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								fdef21a871 
								
							 
						 
						
							
							
								
								Record and listen for ephemeral messages in a separate queue.  
							
							 
							
							
							
						 
						
							2020-09-09 14:42:09 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								d40cff8a99 
								
							 
						 
						
							
							
								
								Revert "Add a system for storing, retrieving, and notifying listeners about ephemeral (online) messages."  
							
							 
							
							... 
							
							
							
							This reverts commit 06754d6158 . 
							
						 
						
							2020-09-08 15:55:09 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								06754d6158 
								
							 
						 
						
							
							
								
								Add a system for storing, retrieving, and notifying listeners about ephemeral (online) messages.  
							
							 
							
							
							
						 
						
							2020-09-08 11:14:42 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								1d5087374e 
								
							 
						 
						
							
							
								
								Jettison UUID-or-E164 plumbing in favor of UUID-only.  
							
							 
							
							
							
						 
						
							2020-09-08 09:30:47 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								8356264fe0 
								
							 
						 
						
							
							
								
								Rename RedisClusterMessagesCache and related classes to just MessagesCache.  
							
							 
							
							
							
						 
						
							2020-09-08 09:30:47 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								18ecd748dd 
								
							 
						 
						
							
							
								
								Entirely discard the old message cache machinery.  
							
							 
							
							
							
						 
						
							2020-09-08 09:30:47 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								5c04f2634a 
								
							 
						 
						
							
							
								
								Use a dedicated executor service for dispatching keyspace notifications.  
							
							 
							
							
							
						 
						
							2020-09-03 11:04:48 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								81e8143a43 
								
							 
						 
						
							
							
								
								Rely solely on the clustered message cache.  
							
							 
							
							
							
						 
						
							2020-09-02 11:57:33 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								8409986ef5 
								
							 
						 
						
							
							
								
								Mirror persistence operations from the new persister to the old persister.  
							
							 
							
							
							
						 
						
							2020-09-02 11:02:40 -04:00  
						
					 
				
					
						
							
							
								 
								Jon Chambers
							
						 
						
							 
							
							
							
							
								
							
							
								2b50367d7f 
								
							 
						 
						
							
							
								
								Put message persisters behind feature flags.  
							
							 
							
							
							
						 
						
							2020-09-02 11:02:40 -04:00