Commit Graph

949 Commits

Author SHA1 Message Date
Maurice Parker 815cf31ab8 Make sure the network is reachable before trying to sync iCloud accounts. 2020-04-11 16:45:31 -05:00
Maurice Parker e6c5d2f199 Merge branch 'ios-release' 2020-04-11 15:59:37 -05:00
Maurice Parker 6f682aa3cd
Merge pull request #1981 from abilops/master
Avoid cached response when adding new feed
2020-04-11 12:30:05 -05:00
Maurice Parker d6a4005336 Separate refreshers so that we don't send out duplicate unread statuses for new records. 2020-04-11 12:22:28 -05:00
abilops 00d3249c86 Avoid cached response when adding new feed 2020-04-11 05:18:17 +05:30
Maurice Parker 6ec11119f8 Add external web feed to status so that it can prompt receiving system to pull down new articles. 2020-04-10 18:10:54 -05:00
Maurice Parker a8dcf3eeee Add the unread statuses on receipt to CloudKit. 2020-04-10 17:23:39 -05:00
Maurice Parker 983138366f Add code to process new article entries. 2020-04-10 16:25:58 -05:00
Maurice Parker 4418a4bb02 Add completion block that returns new status records when we are marking statuses asynchronously. 2020-04-10 15:19:33 -05:00
Maurice Parker 63c4d53ee9 Change LocalAccountRefresher to use a delegate so that it can better handle duplicate feed requests 2020-04-10 11:20:35 -05:00
Maurice Parker 3ba9ca8c8a Added new Secrets framework project 2020-04-09 21:07:56 -05:00
Maurice Parker e32af77e39 Merge branch 'master' into feed-provider 2020-04-09 19:30:49 -05:00
Maurice Parker 47cdef5c07 Fix hashable implementation that could have in theory had collisions. 2020-04-09 11:20:53 -05:00
Maurice Parker ae091afb18 Allow for error on query when looking for existing starred records. 2020-04-07 19:02:25 -05:00
Maurice Parker e4b03eebc2 Add FeedProvider project. 2020-04-06 17:05:47 -05:00
Maurice Parker 5ab62d3aad Gated the database suspend and resume calls so that the Mac app will compile. 2020-04-06 09:18:20 -05:00
Maurice Parker a4c9a4b65f Remove bad download progress indicator tick. 2020-04-06 02:18:42 -05:00
Maurice Parker 6364539608 Handle edge case where the user deletes the iCloud data. 2020-04-06 02:15:28 -05:00
Maurice Parker bada18a412 Make sure a scheduled refresh can't stack on top on one happening right for CloudKit only. 2020-04-05 15:23:11 -05:00
Maurice Parker 390173dcb4 Remove centralized CloudKit syncing code. 2020-04-05 15:05:08 -05:00
zgjie bcfd75ff68 Replace the `firstElementPassingTest` function come from RSCore with the native function `first(where:)`. 2020-04-06 02:06:24 +08:00
Maurice Parker 116a346b87 Make the remove feed process manage the progress indicator better. 2020-04-05 11:49:29 -05:00
Maurice Parker 449085b84a Fix bug that was causing duplicate downloads on OPML import. 2020-04-05 11:26:21 -05:00
Maurice Parker f289735b50 Rework how feed subscriptions are managed. 2020-04-05 10:49:15 -05:00
Maurice Parker 0b87acec1e Add subscriptions to OPML imports. 2020-04-04 17:35:09 -05:00
Maurice Parker 5273187033 Put update to UserDefaults on main thread. 2020-04-04 16:05:52 -05:00
Maurice Parker 2a6e1078aa Add batch update so that feeds stop adding to the sidebar without their names populated. 2020-04-04 15:12:59 -05:00
Maurice Parker 3a228be142 Add user web feed subscription management. 2020-04-04 15:04:38 -05:00
Maurice Parker 231e3a12e2 Change web feed key to be an md5 has of the url. 2020-04-04 13:36:54 -05:00
Maurice Parker 71b5c8bc86 Add user feed subscription management. 2020-04-04 13:33:49 -05:00
Maurice Parker 79adb1f34a Stub out add subscription 2020-04-04 05:15:43 -05:00
Maurice Parker adefcc7c3f Stub out subscription delete 2020-04-04 05:02:33 -05:00
Maurice Parker cceec096a9 Added the public default zone. 2020-04-04 02:33:41 -05:00
Maurice Parker 4834399b8d Beefed up CloudKit error handling. 2020-04-03 21:20:55 -05:00
Maurice Parker 6daedbf6e2 Removed extraneous batch update end. 2020-04-03 21:06:20 -05:00
Maurice Parker 4d3e9b068f Add user deleted zone checks. 2020-04-03 20:39:50 -05:00
Maurice Parker fc020c06e8 Make sure we clear the refresh progress on local accounts when it completes. 2020-04-03 20:25:21 -05:00
Maurice Parker 850577d6bc Change so that we only attempt to subscribe when creating new account. 2020-04-03 20:01:29 -05:00
Maurice Parker 4a2760ade3 Fix bug that could cause the progress indicator to not finish. 2020-04-03 17:29:26 -05:00
Maurice Parker c454aa88b8 Fix feed handling that was causing starred article sharing to bug out. 2020-04-03 14:19:31 -05:00
Maurice Parker 260551ebb1 Added missing init param to test case. 2020-04-03 13:52:37 -05:00
Maurice Parker f75e3e5ebf Added new initialization parameter for Parsed Items. 2020-04-03 13:42:59 -05:00
Maurice Parker 10a87ccfb6 Refactored starred article passing to make it more reliable 2020-04-03 13:26:08 -05:00
Maurice Parker f143248e08 Enable passing starred articles between devices. 2020-04-03 11:25:01 -05:00
Maurice Parker d6b094b37e Save starred articles to iCloud. 2020-04-02 18:06:47 -05:00
Maurice Parker f97194b9be Removed long running operations support as I don't think we need it. 2020-04-02 14:13:57 -05:00
Maurice Parker ef6a79489a Add missing completion block calls. 2020-04-02 12:25:23 -05:00
Maurice Parker 2924c0e6cc Rework download progress so that the delegate always manages it to make for smoother progress bar progressions. 2020-04-02 12:00:10 -05:00
Maurice Parker 40ea5243c6 Removed notification we no longer needed to use to refresh the Feeds and Sidebar. 2020-04-01 20:31:32 -05:00
Maurice Parker ea78b5683d Fix background notification processing of CloudKit changes. 2020-04-01 20:21:14 -05:00
Maurice Parker 850d6b5623 Format code fix. 2020-04-01 17:15:00 -05:00
Maurice Parker def48546a3 Change how initial refresh is triggered. 2020-04-01 16:45:29 -05:00
Maurice Parker b3cf7ccdb7 Remove batch update blocks that were causing more harm than good. 2020-04-01 15:39:29 -05:00
Maurice Parker 39aecd84fe Fixed chunked record handling. 2020-04-01 15:39:07 -05:00
Maurice Parker 7e8892cda5 Beef up error handling for fetches. 2020-04-01 14:55:40 -05:00
Maurice Parker 9ffaa41d35 Add missing post sync database updates. 2020-04-01 14:55:22 -05:00
Maurice Parker 694be77e96 Add CloudKit status syncing 2020-04-01 14:10:07 -05:00
Maurice Parker 1ab21bd3e3 Added batch update capabilities. 2020-04-01 12:22:59 -05:00
Maurice Parker 44231937cd Add send statuses to CloudKit. 2020-04-01 11:46:37 -05:00
Maurice Parker 9a1b7f5225 Update precondition to make sure iCloud doesn't call the wrong update method. 2020-04-01 09:19:51 -05:00
Maurice Parker 9e2ba8a36b Delete dead code. 2020-04-01 08:00:24 -05:00
Maurice Parker 0ce1bf5ebc Added sync database integration 2020-03-31 20:56:34 -05:00
Maurice Parker c3b5d337c5 Change to use 0 and 1 for boolean. 2020-03-31 20:42:39 -05:00
Maurice Parker 3f82a28d21 Add import OPML for CloudKit. 2020-03-31 18:10:35 -05:00
Maurice Parker 0cafee7f59 Renamed old name left over from refactoring. 2020-03-31 16:47:02 -05:00
Maurice Parker cdde8e4b09 Refactored the OPML load code so that the normalization step is separate from the add step. 2020-03-31 15:21:53 -05:00
Maurice Parker 31e06cd24a Add batch update block to fetch to prevent the Feeds list from dancing around. 2020-03-31 11:18:52 -05:00
Maurice Parker 1be5dc8a54 Implemented feed and folder restore so that undo works. 2020-03-31 11:07:54 -05:00
Maurice Parker 218df326f4 Fix issue where out of order records was dropping web feeds. 2020-03-31 10:32:04 -05:00
Maurice Parker 90376dac03 Implement add, move, delete folder operations for feeds. 2020-03-31 03:30:53 -05:00
Maurice Parker df1faa368f Refactored add feed code to be more reliable. 2020-03-31 02:20:47 -05:00
Maurice Parker 203b83d64d Enable adding feeds to folders. 2020-03-30 21:11:57 -05:00
Maurice Parker 6d3e6914df Fix account container lookup so that it doesn't keep creating records. 2020-03-30 18:14:07 -05:00
Maurice Parker 1ee3c3d85a Made sure the special account container didn't get created locally. 2020-03-30 18:03:56 -05:00
Maurice Parker 766eb507bf Add container handling code 2020-03-30 15:15:45 -05:00
Maurice Parker 53e947ee4c Rename addFolder to createFolder to be more consistent. 2020-03-30 13:35:02 -05:00
Maurice Parker f68d523a15 Merge branch 'ios-release' 2020-03-30 11:50:58 -05:00
Maurice Parker 187121298e Added support for CloudKit push notifications (subscriptions). 2020-03-30 02:48:25 -05:00
Brent Simmons cf98ff49ea Implement retention policy for feed-based accounts (local, iCloud). 2020-03-29 23:20:01 -07:00
Brent Simmons 85b24ff92d Add parentheses in the right places to make Xcode 11.4 happy with our tuples. 2020-03-29 18:53:15 -07:00
Brent Simmons 2c4ee99dc2 Create and use ArticlesDatabase.RetentionStyle enum. 2020-03-29 18:51:03 -07:00
Maurice Parker e2d8db6f26 Added feed rename sync to iCloud. 2020-03-29 17:53:11 -05:00
Maurice Parker 4f425c9c86 Implement web feed sync between devices. 2020-03-29 17:12:34 -05:00
Maurice Parker c0e1fbfff3 Add external id lookups for folders and web feeds. 2020-03-29 12:07:54 -05:00
Maurice Parker 2afdd26c9d Change function names using the find suffix to use the existing suffix to match precedent. 2020-03-29 12:00:02 -05:00
Maurice Parker 3b31f2562d Stub out fetching feed changes. 2020-03-29 11:53:52 -05:00
Maurice Parker 573cee0fd6 Added delete feed functionality. 2020-03-29 08:52:59 -05:00
Maurice Parker 6ce82fc28b Implement CloudKit feed add. 2020-03-29 03:43:20 -05:00
Maurice Parker f59d6f712f Simplify record handling. 2020-03-28 08:53:03 -05:00
Maurice Parker fe2297213d Add automatic zone creation. 2020-03-28 08:30:25 -05:00
Maurice Parker f288e3d5d8 More infrastructure work on CloudKit. 2020-03-27 13:59:42 -05:00
Maurice Parker d0680bcc73 Merge branch 'ios-release' 2020-03-24 12:21:32 -05:00
Brent Simmons fb4f72ad18 Save articles from multiple web feeds at once — rather than doing it feed-by-feed — when syncing. (This makes syncing faster.) Fix #1794. 2020-03-22 19:25:53 -07:00
Maurice Parker 8105756ccb Add some work in progress for CloudKit syncing 2020-03-22 16:35:03 -05:00
Anh Do bdbeced5d2
Initial feed download now retrieves entries in the last 90 days 2020-03-22 01:11:00 -04:00
Anh Do cfaacd0ada
Fix starred story hashes being parsed incorrectly 2020-03-22 00:47:33 -04:00
Anh Do 59f3fb4b3d
Handle account-level folder when syncing 2020-03-22 00:47:33 -04:00
Anh Do f0fe308c7b
Update last article fetch time 2020-03-22 00:47:33 -04:00
Anh Do a784b11d1c
Fix feeds being returned without corresponding folder 2020-03-22 00:47:33 -04:00
Anh Do 1e5033febe
Restore feed and folder 2020-03-22 00:47:32 -04:00
Anh Do 1e66860f34
Move feed 2020-03-22 00:47:32 -04:00
Anh Do fe7cbe3bd3
Fix feed deletion in folder triggering unexpected deletes 2020-03-22 00:47:32 -04:00
Anh Do a9615560ae
Fix feed not showing up at account-level if it's also in another folder 2020-03-22 00:47:32 -04:00
Anh Do 51a4a2b3c8
Rename subscriptionID to externalID 2020-03-22 00:47:32 -04:00
Anh Do 20ff053335
Rename, delete web feed, fix adding feed directly under account not working 2020-03-22 00:47:31 -04:00
Anh Do 70302a425c
Refactoring, fix folder changes not working, add new web feed 2020-03-22 00:47:31 -04:00
Anh Do ec855364bc
Remove feeds in folder 2020-03-22 00:47:31 -04:00
Anh Do e6659eea10
Rename and remove folder 2020-03-22 00:47:31 -04:00
Anh Do 494ce5bab9
Add folder 2020-03-22 00:47:31 -04:00
Anh Do 08339606e9
Use secure version of story images 2020-03-22 00:47:30 -04:00
Anh Do fb07cfe187
Handle refresh progress 2020-03-22 00:47:30 -04:00
Anh Do 0479bbd9f5
Parse story image and tags 2020-03-22 00:47:30 -04:00
Anh Do 1d3073c593
Add missing story fetching 2020-03-22 00:47:30 -04:00
Anh Do bde6a607ba
Fix starred story parsing using incorrect JSON field 2020-03-22 00:47:30 -04:00
Anh Do b7e7e17656
Update unread/starred status 2020-03-22 00:47:29 -04:00
Anh Do b8c7e8c1c6
Fix typo 2020-03-22 00:47:29 -04:00
Anh Do e1d5288d3d
Implement status change 2020-03-22 00:47:29 -04:00
Anh Do 8f64f7230d
Add network suspension support 2020-03-22 00:47:29 -04:00
Anh Do bf1a732e8f
Add missing story fetching handler 2020-03-22 00:47:29 -04:00
Anh Do 299619703c
Ignore "everything" folder 2020-03-22 00:47:29 -04:00
Anh Do a913b65700
Fix failing login when credentials include &= 2020-03-22 00:47:28 -04:00
Anh Do 7453e397d5
Read published date from timestamp directly 2020-03-22 00:47:28 -04:00
Anh Do 6b38c07654
Put feeds in folders (code taken from Feedbin) 2020-03-22 00:47:28 -04:00
Anh Do 8e99f8deea
Display flat feed list 2020-03-22 00:47:28 -04:00
Anh Do f4a0c56a54
Use NewsBlur terminologies in models (Feed, Story) 2020-03-22 00:47:28 -04:00
Anh Do 175cd0e798
Parse articles from story river 2020-03-22 00:47:27 -04:00
Anh Do d37f70d2dd
Add unread story hashes query 2020-03-22 00:47:27 -04:00
Anh Do 9727219b09
Add feed list query 2020-03-22 00:47:27 -04:00
Anh Do b7fe991b7b
Retrieve session id for later requests 2020-03-22 00:47:27 -04:00
Anh Do 034aabbfff
Add login/logout support 2020-03-22 00:47:26 -04:00
Maurice Parker f2d9552c85 Renamed subscriptionID to externalD on WebFeed so that it matches what we did with Folder. 2020-03-21 11:33:13 -05:00
Maurice Parker 0d56226146 Fix delegate name. 2020-03-20 17:48:57 -05:00
Maurice Parker e3d46960fd Add CloudKit syncing add account UI. 2020-03-18 15:48:44 -05:00
Maurice Parker 5b5eaf6bb7 Merge branch 'ios-release' 2020-03-14 17:13:25 -05:00
Nate Weaver 1a930c4407 Simplify .utf8 2020-03-14 12:09:00 -05:00
Nate Weaver 6ad6fe46ad Make sure POST body is properly URL-encoded 2020-03-14 12:09:00 -05:00
Maurice Parker 8384725b01
Revert "Make sure POST body is properly URL-encoded" 2020-03-14 02:48:37 -05:00
Nate Weaver aed6858043 Simplify .utf8 2020-03-13 22:16:24 -05:00
Nate Weaver 3af70f5c7c Make sure POST body is properly URL-encoded 2020-03-13 22:12:36 -05:00
Maurice Parker cc0fd50ea2 Make podcast URL's have a lower priority than other URL's. Issue #1897 2020-03-13 12:57:43 -05:00
Maurice Parker fe31ca8076 Normalize the URL if it was found in the HTML metadata. Issue #1896 2020-03-13 12:15:35 -05:00
Maurice Parker 229aada857 Normalize the URL if it was found in the HTML metadata. 2020-03-13 12:11:38 -05:00
Maurice Parker 7d8feba24b Remove file coordinator usage from account files. Issue #1821 2020-03-03 11:39:04 -08:00
Maurice Parker 0e72811429 Implement mark as unread window for accounts that need it. Issue #1407 2020-02-18 13:49:29 -08:00
Maurice Parker 2ae021960b Move account files to the documents directory and out of the shared container. Issue #1784 2020-02-12 16:21:48 -08:00
Nate Weaver 4ac8107f27 Don't unwrap now-non-optionals, and unwrap now-explicit optionals 2020-02-08 18:22:35 -06:00
Brent Simmons c679d92e09 Make the Feedly tests build again — fix references to addOperation. 2020-02-05 22:37:43 -08:00
Brent Simmons 01fc60916e Move the operation queue from Account to ArticlesDatabase, which is the rightful owner. 2020-02-05 22:17:32 -08:00
Brent Simmons d40eaed1f5 Begin moving the MainThreadOperationQueue from Account to ArticlesDatabase. 2020-02-05 21:23:23 -08:00
Brent Simmons 2d33de1205 Fix references to addOperation, which is now just add. 2020-02-05 21:18:29 -08:00