Commit Graph

1081 Commits

Author SHA1 Message Date
Maurice Parker 26041a067f Serialize renewing the access token 2020-05-07 02:33:43 -05:00
Maurice Parker 48ceb655d6 Decode Twitter and Reddit on a background queue. 2020-05-07 02:17:01 -05:00
Maurice Parker 2324d652cd Add Twitter API rate limiting 2020-05-07 02:10:54 -05:00
Maurice Parker 44476c5d6d Implement Reddit API rate limiting 2020-05-07 01:58:43 -05:00
Maurice Parker 15dfd159da Add support for cross posts 2020-05-06 22:19:06 -05:00
Maurice Parker 9429f36095 Don't image zoom any previews that are just links out 2020-05-06 21:56:01 -05:00
Maurice Parker 0f06618c1f Changed video source so that we have audio track included 2020-05-06 21:40:20 -05:00
Maurice Parker a4560b6f99 Remove figure tags from images since they were unneeded 2020-05-06 13:59:09 -05:00
Maurice Parker 366d24711a Exclude imgur from embedded media object output 2020-05-06 13:40:13 -05:00
Maurice Parker 9e235564af Change media embed priority to be lower than video previews 2020-05-06 13:21:37 -05:00
Maurice Parker 73f9d750b7 Shorten link out URL's 2020-05-06 12:39:58 -05:00
Maurice Parker a8f6b27c48 Don't link to redd.it 2020-05-05 21:42:20 -05:00
Maurice Parker cce420b31d Add link out URL for link only reddit articles 2020-05-05 21:23:42 -05:00
Maurice Parker 6c698c5b94 Use video preview if available 2020-05-05 21:08:51 -05:00
Maurice Parker 00cb83559c Prefer media embed except for imgur.com 2020-05-05 20:42:34 -05:00
Maurice Parker 11bdc23bdf Make use of preview images and link out to originals. 2020-05-05 20:33:48 -05:00
Maurice Parker ceb0a0c423 Add image previews and size to videos. 2020-05-05 20:17:46 -05:00
Maurice Parker 97817cb13c Sync the homePageURL since we don't refigure it for all feeds 2020-05-05 18:25:33 -05:00
Maurice Parker 8c61a7a602 Change Feed Providers so that they supply a homePageURL now 2020-05-05 17:55:27 -05:00
Maurice Parker 9cf338f2d9 Simplify icon path parsing logic 2020-05-05 17:14:23 -05:00
Maurice Parker 2bb20832f8 Add support for media embed support 2020-05-04 19:57:35 -05:00
Maurice Parker 7d1820483f Add support for hosted videos 2020-05-04 19:42:10 -05:00
Maurice Parker 143c102454 Add support for Reddit feed icons 2020-05-04 18:13:15 -05:00
Maurice Parker cd4b3260b7 Created reusable fetch method instead of coding a new one for each Reddit fetch 2020-05-04 16:32:28 -05:00
Maurice Parker baf970745e Make RedditUser fetch reusable 2020-05-04 16:08:55 -05:00
Maurice Parker e8a2b54184 Add support for basic Reddit articles 2020-05-04 14:42:34 -05:00
Maurice Parker d763ca93f6 Delete commented code 2020-05-04 14:28:17 -05:00
Maurice Parker d3d246f8cb Make url parsing work better and request raw json. 2020-05-04 08:35:14 -05:00
Maurice Parker 10b24d92c5 Add basic get support for a hardcoded URL 2020-05-04 01:16:27 -05:00
Maurice Parker 018597aeef Specify correct NNW user agent on Feed Provider requests 2020-05-03 14:35:12 -05:00
Maurice Parker 5f05e945a8 Added Reddit extension point enablement 2020-05-03 14:10:21 -05:00
Maurice Parker ccd600b880 Make authorize endpoint async 2020-05-03 13:23:36 -05:00
Maurice Parker 578d22f3c2 Prevent newly added sync status records from being deleted and process them incrementally 2020-05-02 22:52:13 -05:00
Maurice Parker e681fd6402 Stub out Reddit Feed Provider / Extension Point 2020-05-02 19:38:57 -05:00
Maurice Parker da8482a53a Correct localized string comment for unknown error 2020-05-02 18:57:32 -05:00
Maurice Parker 19b01679f0 Change how statuses are processed 2020-05-02 14:54:09 -05:00
Maurice Parker 9d7d09a2a2 Notify on background thread to prevent main thread deadlock 2020-05-02 14:44:40 -05:00
Maurice Parker 7e86f3dec3 Show status sooner for importing OPML 2020-05-02 14:39:28 -05:00
Maurice Parker 85f7adaa0a Use MainThreadOperation to prevent article status updates from interleaving 2020-05-02 10:02:58 -05:00
Maurice Parker d7a9fc6de4 Fix not authenticated message 2020-05-02 08:17:20 -05:00
Maurice Parker 55eea27c8d Implement since id as a parameter to limit the number returned 2020-05-02 08:12:05 -05:00
Maurice Parker c2d418c9ed Make sure completion get called if our our database code errors out. 2020-05-01 16:50:18 -05:00
Maurice Parker 83e7975080 Changed to show article send status on progress bar when part of the sync process. 2020-04-30 17:42:56 -05:00
Maurice Parker eedcfd88d4 Don't send new articles that aren't really new to the account to the cloud. 2020-04-30 16:58:41 -05:00
Maurice Parker efda39dda3 Log the end of sending the statuses if we don't send any. 2020-04-30 15:55:02 -05:00
Maurice Parker 91a4c46003 Pull status single run code 2020-04-30 01:18:52 -05:00
Maurice Parker e01b34f9c9 Handle database getting suspended while processing articles 2020-04-30 00:54:41 -05:00
Maurice Parker 32a334bb1c Record article deletes that can happen when receiving article statuses from the cloud 2020-04-30 00:05:37 -05:00
Maurice Parker c9ad5fe4c0 Remove initial send status since we do it at the end now 2020-04-29 23:56:50 -05:00
Maurice Parker d27b0cb2a0 Don't try to insert if there are no articles. 2020-04-29 20:06:14 -05:00
Maurice Parker e83694ceb0 Prevent deletes if there are no records to delete 2020-04-29 19:17:02 -05:00
Maurice Parker 095c8575f3 Add CloudKit deletes 2020-04-29 19:13:50 -05:00
Maurice Parker 0b49acfabc Made sync status sequential so that we stop losing statuses when we automatically send them on exceeding 100 statuses 2020-04-29 16:14:18 -05:00
Maurice Parker f193b6da1a Prevent deadlocks by notifying group completion on background thread 2020-04-29 15:36:28 -05:00
Maurice Parker fbdbc19d0b Remove extra fetch zone changes call 2020-04-29 11:07:24 -05:00
Maurice Parker bedce4946f Allow for multiple sync status records in sync database. 2020-04-29 05:24:35 -05:00
Maurice Parker 41727a3ffd Restrict status sync so that new ones can't start while a long running one is in progress. 2020-04-28 12:31:53 -05:00
Maurice Parker 4f749cb381 Also chunk deleted record ids if limit exceeded for CloudKit modify 2020-04-28 12:17:11 -05:00
Maurice Parker 128fcbae5d Remove save if new process that was throwing us out of sync 2020-04-28 11:19:33 -05:00
Maurice Parker 616597231e Fix log formatting for wait message. 2020-04-28 10:59:01 -05:00
Maurice Parker beb63b289e Fix retry delay cast 2020-04-28 10:52:08 -05:00
Maurice Parker b1cced22c4 Send article statuses and articles at the end of refreshing 2020-04-27 23:50:03 -05:00
Maurice Parker aa383a8814 Modify updated records, not add them 2020-04-27 23:39:08 -05:00
Maurice Parker 06af9ef041 Send the status records when creating a feed 2020-04-27 23:22:49 -05:00
Maurice Parker 55cf36b8a1 Make sure updated content gets sync'd if it is unread or starred. 2020-04-27 23:12:57 -05:00
Maurice Parker 2766f118d3 Add status records on feed restore 2020-04-27 23:09:45 -05:00
Maurice Parker 3509d1a6f6 Delete the article not the status on read items 2020-04-27 19:34:33 -05:00
Maurice Parker 1ce63860cf Reset any sync statuses that may be left around after a crash or force quit 2020-04-27 19:21:49 -05:00
Maurice Parker 0944264326 Fix article status delete 2020-04-27 19:07:14 -05:00
Maurice Parker 5e18b2b569 Return back on the main thread 2020-04-27 19:06:50 -05:00
Maurice Parker bdc02f0b0b Switch back to having separate article and status records 2020-04-27 18:09:10 -05:00
Maurice Parker 6870133d60 Enhance SyncStatus so that it can communicate new, updated, and deleted 2020-04-27 16:41:45 -05:00
Maurice Parker e6b42a8e0a Call completion on feed restore 2020-04-27 02:18:49 -05:00
Maurice Parker 1381b5b24e Delete all the articles when a feed is deleted. 2020-04-27 02:11:20 -05:00
Maurice Parker 85fe4abc78 Only log errors for restore of articles as they aren't fatal 2020-04-27 01:28:00 -05:00
Maurice Parker 81d82aea78 Requery the database on feed adds in case the feed was previously added. 2020-04-27 01:17:15 -05:00
Maurice Parker b3b1dab522 Restore unread and starred articles to iCloud on webbed restore. 2020-04-27 01:04:38 -05:00
Maurice Parker ab69846e41 Split updated record processing from new record processing. 2020-04-27 00:52:53 -05:00
Maurice Parker 60e5ea1946 Remove debugging code that is probably throwing off the sync state 2020-04-26 17:15:31 -05:00
Maurice Parker b168cef88b Chunk the new articles in advance of sending them to the zone so that we can count them in the progress bar. 2020-04-26 14:05:57 -05:00
Maurice Parker 2efa939f25 Do a combined refresh on the initial refresh to get read article content. 2020-04-26 11:37:12 -05:00
Maurice Parker 48dbc4958f Rebuild the import OPML and initial device add processes. 2020-04-26 11:26:41 -05:00
Maurice Parker 09addec369 Correct number of download items to tick 2020-04-26 10:05:26 -05:00
Maurice Parker e68383da09 Don't send full article for updated articles if already read 2020-04-26 09:37:36 -05:00
Maurice Parker 4e2e4ef348 Don't try to sync article statuses if a sync is already in progress. 2020-04-26 06:23:40 -05:00
Maurice Parker e4f0a87a64 Fetch zone changes immediately after making them to keep us better in sync 2020-04-26 06:03:07 -05:00
Maurice Parker 4f54a21084 Ensure that no deleted articles are in the new and updated articles 2020-04-26 05:46:43 -05:00
Maurice Parker d0ace82d02 Add updated articles from the local account refresher 2020-04-26 05:35:35 -05:00
Maurice Parker 6cde860701 Include updated articles in those being synced 2020-04-26 05:05:26 -05:00
Maurice Parker cf2bed1e69 Delete all articles when the feed is deleted. 2020-04-26 04:54:39 -05:00
Maurice Parker 71788d8f69 Collapse the articles and statuses into a single CKRecord 2020-04-26 04:28:42 -05:00
Maurice Parker 9eef9ea8dc Delete or send article records based on article status 2020-04-26 03:19:20 -05:00
Maurice Parker 5de778f82c Added func documentation 2020-04-26 02:28:19 -05:00
Maurice Parker 4c499c2e98 Mark account as being refreshed when doing an initial refresh. 2020-04-26 02:21:34 -05:00
Maurice Parker 1d7cc4d828 Store article content in CloudKit 2020-04-25 20:20:56 -05:00
Maurice Parker 4b54f19a38 Refactor CloudKit specific feed refreshing out into a standalone class 2020-04-25 15:09:03 -05:00
Maurice Parker 4a3205d74f Removed Test build configuration 2020-04-24 17:08:10 -05:00
Maurice Parker d1ca2cac79 Remove username from WebFeed and put it in the URL 2020-04-24 13:33:43 -05:00
Maurice Parker dedb207cae Fix Untitled feed bug 2020-04-23 19:20:35 -05:00
Maurice Parker f6a81c07fb Implement article status deleting for Feed Providers 2020-04-23 19:13:57 -05:00