Updated the message send/receive pipelines to better handle config and updated group messages
Changed the hard-coded 'WebSocketRequestMessage' proto wrapper to not have random data
Removed the old 'SharedConfigMessage' (deprecated and removed within 'libSession')
Started refactored some logic to make it easier for unit testing
Started updating SnodeAPI calls with prepared requests
Fixed some issues with the PreparedRequest 'map' and 'handleEvents' functions
Genericised common pre-request behaviours for SnodeAPI calls
Added a work around for getting an SQLite Busy exception on startup (should only be caused by edge-cases, unsure what the impact of the workaround will be if the db is actually busy)
Updated the auth to work for updated groups
Cleaned up group creation to seemingly work properly (not syncing for some reason)
Started writing up wrappers and unit tests for group config types
Refactored some duplicate batch & prepared request code to be more generic and reusable
Renamed a number of legacy closed group functions to have the term 'legacy' in them for ease of coding
Added a nicer mechanism for using table aliases
Fixed a bug where the quote preview view close button could overlap the content
Fixed a bug where an outgoing quote wouldn't show it's thumbnail in some cases
Fixed a bug where quoting a link preview wouldn't show the link preview attachment
Added the ability to define requirements for migrations (in case some data or state needs to be loaded for a migration to be able to be performed correctly)
Fixed a bug where the migration would throw because the user config might not have loaded it's state yet
Fixed a bug where the migration would throw if the user didn't exist yet
Commented out some logic in the ConfigSyncJob that could be problemmatic
Cleaned up the Dependencies so that tests can run synchronously without having to custom set queues as much
Sorted out the crypto and network dependencies to avoid needing weird dependency inheritance
Fixed the flaky tests so they are no longer flaky
Fixed some unexpected JobRunner behaviours
Updated the CI config to use a local build directory for derivedData (now works with build tweaks)
Updated to the 1.0.0 release of libSession
Set the User Config feature flag to July 31st 10am AEST
Shifted quote thumbnail generation out of the DBWrite thread
Stopped the CurrentUserPoller from polling the user config namespaces if the feature flag is off
Fixed an issue where the scrollToBottom behaviour could be a little buggy when an optimistic update is replaced with the proper change
Fixed an issue where the 'attachmentsNotUploaded' error wouldn't result in a message entering an error state
Fixed a bug where sync messages with attachments weren't being sent
Reworked the way libSession-util builds to use a static library and be less hacky
Updated to the latest version of WebRTC-lib (no longer includes bitcode)
Removed the 'skip_web_rtc_re_rsync' patch as it's no longer an issue since the bitcode was removed so the framework is much smaller
Fixed a busted version comparison
Fixed an issue where the config dump population wasn't setting the 'created' timestamp for contacts
Fixed an issue where the 'SyncPushTokensJob' could run logic on the wrong thread
Fixed a bug where the 'scroll to bottom' button wouldn't initial be visible in some cases
Fixed a bug where the 'scroll to bottom' button would fade out when there were subsequent pages
Fixed a bug where an open group image might not get downloaded in some cases
Fixed an issue where we would incorrectly append a wildcard character to the end of a search term that ended in a quotation mark
Finished refactoring the OpenGroupAPI to use PreparedSendData
Added copy for an unrecoverable startup case
Added some additional logs to better debug ValueObservation query errors
Increased the pageSize to 20 on iPad devices (to prevent it immediately loading a second page)
Cleaned up a bunch of threading logic (try to avoid overriding subscribe/receive threads specified at subscription)
Consolidated the 'sendMessage' and 'sendAttachments' functions
Updated the various frameworks to use 'DAWRF with DSYM' to allow for better debugging during debug mode (at the cost of a longer build time)
Updated the logic to optimistically insert messages when sending to avoid any database write delays
Updated the logic to avoid sending notifications for messages which are already marked as read by the config
Fixed an issue where multiple paths could incorrectly get built at the same time in some cases
Fixed an issue where other job queues could be started before the blockingQueue finishes
Fixed a potential bug with the snode version comparison (was just a string comparison which would fail when getting to double-digit values)
Fixed a bug where you couldn't remove the last reaction on a message
Fixed the broken media message zoom animations
Fixed a bug where the last message read in a conversation wouldn't be correctly detected as already read
Fixed a bug where the QuoteView had no line limits (resulting in the '@You' mention background highlight being incorrectly positioned in the quote preview)
Fixed a bug where a large number of configSyncJobs could be scheduled (only one would run at a time but this could result in performance impacts)