Commit Graph

16423 Commits

Author SHA1 Message Date
Morgan Pretty f1027ca92b
Merge pull request #663 from oxen-io/dev
2.0.2 Release
2022-08-16 14:02:38 +10:00
Morgan Pretty b53ad0c5ed
Merge pull request #657 from mpretty-cyro/fix/use-yyimageview-only-when-needed
Only use YYImage for Gif/WebP images
2022-08-16 14:01:07 +10:00
Morgan Pretty d0177c3cee
Merge pull request #662 from mpretty-cyro/fix/hidden-mods-admins-not-recognised
Fixed an issue where hidden mods/admins wouldn't be properly recognised
2022-08-16 14:00:53 +10:00
Morgan Pretty 3ab8bdec77 Fixed an issue where hidden mods/admins wouldn't be properly recognised
Added an isHidden flag to the GroupMember
Reset the OpenGroup 'infoUpdates' value to force a re-fetch of the data and fix users affected by this bug
Fixed the broken unit tests
2022-08-16 13:56:40 +10:00
Morgan Pretty 6c5d138bd6
Merge pull request #661 from mpretty-cyro/fix/deleted-messages-read-state
Fixed a bug where deleted incoming messages could incorrectly be counted as unread
2022-08-16 12:39:11 +10:00
Morgan Pretty fe393e4b93
Merge pull request #660 from mpretty-cyro/fix/deleted-messages-read-state
Fixed a bug where deleted incoming messages could incorrectly be counted as unread
2022-08-16 12:37:37 +10:00
Morgan Pretty 9f4d1a678a Fixed a bug where deleted incoming messages could incorrectly be counted as unread 2022-08-16 11:44:11 +10:00
Morgan Pretty e2ab10caf2
Merge pull request #659 from oxen-io/dev
Release 2.0.2
2022-08-15 16:12:40 +10:00
Morgan Pretty 06dce5708d
Merge pull request #658 from mpretty-cyro/fix/open-group-polling-deletions
Fixed an issue where the open group seqNo wasn't updated for deletions
2022-08-15 16:11:38 +10:00
Morgan Pretty 0ce96976bf Fixed an issue where the open group seqNo wasn't updated for deletions 2022-08-15 16:04:07 +10:00
Morgan Pretty 6d6d45b283 Updated the ProfilePictureView to only use YYImage for Gif and WebP images
Added support for animated OpenGroup images
2022-08-15 10:35:52 +10:00
Morgan Pretty 08a2eb7662
Merge pull request #654 from oxen-io/dev
Version increase for bug fix release
2022-08-13 10:32:15 +10:00
Morgan Pretty eca075f717
Merge pull request #653 from mpretty-cyro/version-increase
Increased the version and build numbers
2022-08-13 10:31:11 +10:00
Morgan Pretty d0acaa9c3a Increased the version and build numbers 2022-08-13 10:30:15 +10:00
Morgan Pretty 7a6d6fe2aa
Merge pull request #652 from mpretty-cyro/fix/outgoing-disappearing-messages
Fixed a bug where disappearing messages weren't working for local outgoing messages
2022-08-13 10:27:19 +10:00
Morgan Pretty 8021f8e61a
Merge pull request #651 from mpretty-cyro/fix/outgoing-disappearing-messages
Fixed a bug where disappearing messages weren't working for local outgoing messages
2022-08-13 10:25:31 +10:00
Morgan Pretty e007870c34 Fixed a bug where disappearing messages weren't working for local outgoing messages 2022-08-12 08:32:31 +10:00
Morgan Pretty e6691b515f
Merge pull request #650 from oxen-io/dev
2.0.0
2022-08-09 15:25:36 +10:00
Morgan Pretty b40752dc78
Merge pull request #649 from mpretty-cyro/fix/background-fetch-timeout
Fix/background fetch timeout
2022-08-09 15:24:53 +10:00
Morgan Pretty 201c59fd2b Updated the logic for the background fetch timeout
Updated the logic for the background fetch timeout to happen in the AppDelegate and be based on a system property to avoid a few edge-cases
Removed the ID Blinding error handling 'e' suffix (as it's not actually part of the error)
2022-08-09 15:18:57 +10:00
Morgan Pretty f2cda62882 Merge remote-tracking branch 'upstream/dev' into dev 2022-08-08 15:15:38 +10:00
Morgan Pretty 0596e81fd9
Merge pull request #648 from oxen-io/dev
2.0.0
2022-08-08 15:14:32 +10:00
Morgan Pretty 7ec48baffa
Merge pull request #612 from mpretty-cyro/feature/database-refactor
Database refactor
2022-08-08 15:11:29 +10:00
Morgan Pretty 09f2b41242 Updated the build number 2022-08-08 15:10:33 +10:00
Morgan Pretty 2025fd2638 Fixed a crash and the SOGS deletion logic to continue to support the deprecated approach for the time being
Fixed an issue where the app could crash when entering the background during migration
Added the old 'messageServerIdsToRemove' code back for the time being to support the deprecated deletion behaviour
2022-08-08 13:56:11 +10:00
Morgan Pretty 3f63a44c31 Increased the build number 2022-08-05 17:11:14 +10:00
Morgan Pretty 1224e539ea Reduced unneeded DB write operations and fixed a few minor UI bugs
Updated the database to better support the application getting suspended (0xdead10cc crash)
Updated the SOGS message handling to delete messages based on a new 'deleted' flag instead of 'data' being null
Updated the code to prevent the typing indicator from needing a DB write block as frequently
Updated the code to stop any pending jobs when entering the background (in an attempt to prevent the database suspension from causing issues)
Removed the duplicate 'Capabilities.Capability' type (updated 'Capability.Variant' to work in the same way)
Fixed a bug where a number of icons (inc. the "download document" icon) were the wrong colour in dark mode
Fixed a bug where the '@You' highlight could incorrectly have it's width reduced in some cases (had protection to prevent it being larger than the line, but that is a valid case)
Fixed a bug where the JobRunner was starting the background (which could lead to trying to access the database once it had been suspended)
Updated to the latest version of GRDB
Added some logic to the BackgroundPoller process to try and stop processing if the timeout is triggered (will catch some cases but others will end up logging a bunch of "Database is suspended" errors)
Added in some protection to prevent future deferral loops in the JobRunner
2022-08-05 17:10:01 +10:00
Morgan Pretty ecbded3819 Cleaned up the poller logic a bit 2022-08-04 18:09:03 +10:00
Morgan Pretty f8b2f73f7b Fixed a few issues found during QA
Fixed an issue where quotes containing images wouldn't send
Fixed an issue where a MessageSend job could get stuck in an infinite retry loop if it had an attachment in an invalid state
Fixed an issue where quotes containing non-media files wouldn't contain the correct data
Fixed an issue where the quote thumbnail was getting the wrong content mode set
Fixed an issue where the local disappearing messages config wasn't getting generated correctly
Fixed an issue where the format parameters for the disappearing message info message were the wrong way around in one case
Updated the AttachmentUploadJob to try to support images which haven't completed downloading (untested as it's not supported via the UI)
2022-08-04 13:25:46 +10:00
Morgan Pretty d8103ede12 Updated the build number 2022-08-03 09:12:01 +10:00
Morgan Pretty 5f1039b39e Updated the PushNotificationAPI to use V4 onion requests instead of V2
Fixed a crash which could occur when handling 'loadMedia' edge cases in the MediaView (was running on non-main thread)
2022-08-03 09:10:20 +10:00
Morgan Pretty 8f3e7fc36a Removed the debug code and added a migration to remove the old YDB
Fixed a typo
2022-08-01 16:53:05 +10:00
Morgan Pretty b468efc33b Updated the GarbageCollectionJob to log the number of files it removes 2022-08-01 10:05:30 +10:00
Morgan Pretty fde19efc13 Fixed a duplicate dependency issue 2022-07-29 15:29:20 +10:00
Morgan Pretty 775cc4f156 Increased build number 2022-07-29 15:27:53 +10:00
Morgan Pretty 4d5ded7557 Fixed a few bugs with media attachment handling, added webp support
Updated the OpenGroupManager to create a BlindedIdLookup for messages within the `inbox` (validating that the sessionId does actually match the blindedId)
Added support for static and animated WebP images
Added basic support for HEIC and HEIF images
Fixed an issue where the file size limit was set to 10,000,000 bytes instead of 10,485,760 bytes (which is actually 10Mb)
Fixed an issue where attachments uploaded by the current user on other devices would always show a loading indicator
Fixed an issue where media attachments that don't contain width/height information in their protos weren't updating the values once the download was completed
Fixed an issue where the media view could download an invalid file and endlessly appear to be downloading
2022-07-29 15:26:24 +10:00
Morgan Pretty c022f7cda2 Added an exponential back-off to polling open groups when they fail to poll 2022-07-28 18:26:22 +10:00
Morgan Pretty ae4999c3a7 Fixed a couple of crashes and a couple of other bugs
Fixed a crash due to database re-entrancy
Fixed an issue where interacting with a push notification wouldn't open the conversation in some cases
Added code to prevent a user from being able to start a DM with a blinded id
Updated some open group polling logs to be clearer
2022-07-28 15:36:56 +10:00
Morgan Pretty aed1b73185 Fixed a few additional issues uncovered
Added a explicit "timeout" error to make debugging a little easier
Added code to prevent the AttachmentUploadJob from continuing to try to upload if it's associated interaction has been deleted
Updated the getDefaultRoomsIfNeeded to make an unauthenticated sequence all to get both capabilities and rooms (so we will know if the server is blinded and retrieve the room images using blinded auth)
Fixed a bug where the notification badge wouldn't get cleared when removing data from a device
Fixed a bug where adding an open group could start with an invalid 'infoUpdates' value resulting in invalid data getting retrieved
Fixed a bug where under certain circumstances the PagedDatabaseObserver was filtering out updates (noticeable when restoring a device, would happen if the currentCount of content was smaller than the pageSize)
2022-07-26 11:36:32 +10:00
Morgan Pretty 9859cf95a4 Attempted to fix the notification & call reporting issues
Fixed an issue where fileIds weren't correctly getting sent along with open group messages
Fixed an issue where the screens could miss updates if the device was locked with the app in the foreground and then later unlocked after receiving notifications
Added an optimisation to prevent attempting to send a message after it has been deleted
Added logic to report fake calls if the code goes down an invalid code path when handling a call (to prevent Apple blocking the app)
Delayed the core which clears notifications to increase the time the app has to handle interactions (just in case it was a race condition)
2022-07-25 17:03:09 +10:00
Morgan Pretty 3df3114bee Fixed the broken unit tests 2022-07-19 09:22:15 +10:00
Morgan Pretty 44e7a2dfa4 Added defensive coding to prevent some crashes
Added some defensive coding to prevent path selection from being able to crash due to being empty
Fixed a crash where the MediaDetailViewController could access UI on a non-main thread
Updated the BackgroundPoller to no longer retry the users or closed group swarms and to "cancel" and return immediately if we hit 25 seconds of run time (OS will kill the process if we hit 30 seconds)
2022-07-18 17:40:32 +10:00
Morgan Pretty 0d80678a77 Updated the message request approval process to run asynchronously
Fixed a bug where the MessageRequestsViewController wouldn't page properly in certain cases
2022-07-18 12:32:46 +10:00
Morgan Pretty d730ce3e62 Reverted the logic to only download attachments when opening a conversation (new flag in future)
Fixed a minor bug where the UpdateProfilePictureJob could get stuck in a "defer loop"
2022-07-18 10:08:26 +10:00
Morgan Pretty 9fff4dce20 Fixed a number of bugs found during QA
Fixed a bug where the "Block user" toggle wasn't correctly reflecting the current users state
Fixed a bug where the "Blocked banner" wasn't showing the "unblock this user" alert.
Fixed a bug where the "Blocked banner" wouldn't re-appear if you re-block a user after unblocking them.
Fixed a bug where the conversation screen unblocking logic wasn't actually unblocking the user.
Fixed a bug where some settings options were disabled in open groups because the code thought the user had left the group.
Fixed a bug where the settings button wouldn't appear after accepting a message request.
2022-07-18 09:54:23 +10:00
Morgan Pretty 3c07a2d044 Added linting for the localized strings, updated the quote & mention behaviour for the current user
Added a script and build step to error if we have localised a string in code bug don't have an entry in the localisable files
Added the logic and UI to replace the current users public key (or blinded key) with 'You' in mentions and quotes
Cleaned up some duplicate & missing localised strings
Fixed a bug where new closed groups weren't getting setup locally correctly
Updated the id truncating behaviour to always truncate from the middle
2022-07-15 18:15:28 +10:00
Morgan Pretty 5b6be3912d Fixed an edge-case crash, a couple of minor bugs and made future-proofing tweaks
Fixed a bit of the OnionRequest error handling to better send through server error messages for debugging
Fixed a bug where the initial offset could be negative if the number of messages was less than the page size resulting in a crash
Fixed a crash due to a code path which was thought to be impossible exiting but is actually possible (so just erroring)
Added the 'expire' SnodeAPI endpoint
Removed the 'openGroupServerTimestamp' property (was unused and just added confusion)
Updated the logic to always handle the 'fileId' for uploads/downloads as a string instead of casting it to an Int64
Updated the OpenGroup room parsing to support either Int or String values for image ids
2022-07-12 17:43:52 +10:00
Morgan Pretty b4ab521713 Fixed a bug with the message request UI and with recurring job retrying
Fixed a bug where jobs that recur on launch or active could end up endlessly retrying if they failed once
Fixed a bug where the message request UI would appear for outgoing message requests
2022-07-11 14:26:23 +10:00
Morgan Pretty fd76438686 Fixed an issue where the 'message trimming' setting wouldn't get set to on by default if there was no legacy database 2022-07-11 09:57:06 +10:00
Morgan Pretty 9b10944567 Increased build number 2022-07-08 17:54:07 +10:00