Commit Graph

933 Commits

Author SHA1 Message Date
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
Maurice Parker 2017a2138f Change to only send the unread counts init notification once during program load. Issue #1772 2020-02-03 10:28:34 -08:00
Brent Simmons 0b2ec6473a Call the correct fetchUnreadCounts methd. 2020-02-01 15:16:24 -08:00
Brent Simmons 3f4c84e442 Use the new FetchUnreadCountsForFeedsOperation. 2020-02-01 15:01:47 -08:00
Brent Simmons 30cf8c6a08 Add, as a micro-optimization, a custom hash function for FeedIdentifier. 2020-02-01 15:00:36 -08:00
Kiel Gillard b87882a919 Log failures attempting to add new feeds to a Feedly account to help debug #1691 2020-01-31 17:00:30 +11:00
Kiel Gillard e5e7163f8e Improve the test coverage and add some documentation. 2020-01-31 07:55:50 +11:00
Kiel Gillard a339b05bf8 Santizes right to left div elements from Feedly content. 2020-01-31 07:55:50 +11:00
Brent Simmons dc4850b777 Merge branch 'ios-candidate' of https://github.com/Ranchero-Software/NetNewsWire into ios-candidate 2020-01-29 23:09:44 -08:00
Brent Simmons 35adaa7a8c Fetch the unread count for just one feed when that’s all that’s needed. Helps performance. 2020-01-29 23:09:38 -08:00
Maurice Parker b53cbfcf2c Make sure completion handler is called when there are no active accounts. Issue #1727 2020-01-28 16:24:35 -07:00
Brent Simmons dc9243dcc7 Make fetching all unread counts an operation. Cancel it when the account is suspending. Turning things like this into operations goes to fixing the dreaded 0xdead10cc crashes. 2020-01-27 23:00:48 -08:00
Nate Weaver b9bba7b614 Update RSWeb 2020-01-27 23:02:01 -06:00
Maurice Parker 118ecd01b0 Fix option set bug in AccountBehaviors. 2020-01-27 20:05:07 -07:00
Brent Simmons 61ccf6fa1f Replace use of Dictionary(uniqueKeysWithValues) with a separate function that can handle duplicate keys without crashing. Fix #1671. 2020-01-21 22:03:33 -08:00
Kiel Gillard fb69a2bc54 Fix the logging of Feedly errors. #1628. 2020-01-21 18:31:41 +11:00
Brent Simmons bca3c4216c Merge branch 'ios-candidate' of https://github.com/Ranchero-Software/NetNewsWire into ios-candidate 2020-01-19 22:25:13 -08:00