Commit Graph

166 Commits

Author SHA1 Message Date
Brent Simmons 783477c58e Merge branch 'mac-candidate' 2019-07-07 15:07:21 -07:00
Brent Simmons 36791fc3ad Make fetching article IDs async — use a callback rather than a fetch sync and a returned value. 2019-07-07 15:05:36 -07:00
Brent Simmons 424daa0a5c Merge branch 'mac-candidate' 2019-07-07 14:26:05 -07:00
Brent Simmons 597c57e61c Remove references to DispatchQueue.main.sync and assert that we’re on the main thread. 2019-07-07 14:24:50 -07:00
Brent Simmons a5bf148d82 Make Transport callbacks run on the main thread, which is consistent with NetNewsWire’s general pattern for these types of callbacks. This helps avoid situations where we touch model objects (which are main-thread-only) on a background thread. 2019-07-07 13:42:24 -07:00
Brent Simmons 3999c7b3c5 Merge branch 'mac-candidate' 2019-07-05 22:42:01 -07:00
Brent Simmons 7a204ad6ed Run database fetches async, in the timeline, when appropriate — for instance, when All Unread is selected and new articles come in. 2019-07-05 20:06:31 -07:00
Maurice Parker 9653befb94 Retrieve credentials if necessary. On iOS credentials aren't always available when the delegate initializes. 2019-06-23 13:56:11 -05:00
Maurice Parker 1ac1144b2d Reduce footprint of Account credentials API 2019-06-20 11:19:15 -05:00
Maurice Parker 2756e8f204 Ensure that invalid username/password combinations throw an error 2019-06-20 11:18:09 -05:00
Maurice Parker 74f84dc000 Restrict OPML import for Account types that don't support it 2019-06-19 17:50:32 -05:00
Jeremy Beker 15ae97f7c9
Merge branch 'master' into google_reader_compatible_syncing 2019-06-19 13:53:30 -04:00
Maurice Parker f6677367ec use refresh indicator to track all network activity. Issue #759 2019-06-16 14:48:50 -05:00
Jeremy Beker f54bc3569b
Merge branch 'master' into google_reader_compatible_syncing
# Conflicts:
#	Frameworks/Account/Account.swift
#	submodules/RSWeb
2019-06-15 12:34:50 -04:00
Maurice Parker 17c04b2aef Show the refresh progress bar when an OPML import starts. Issue #732 2019-06-10 16:17:54 -05:00
Maurice Parker f4e0cfaf2b Fix folder renaming issue that occurs for Feedbin when the tag doesn't exist at Feedbin. Issue #724 2019-06-07 05:03:54 -05:00
Maurice Parker e7ec59f31f
Merge pull request #725 from tgt/tgt/feedbin-fixes
Various Minor Feedbin Fixes
2019-06-06 15:27:06 -05:00
Maurice Parker 1cfc3bceef Fixed restore folder functionality for Feedbin. 2019-06-06 15:22:25 -05:00
Tom Grimwood-Taylor b0a24b6f17 Revert "Fix updating local feed list when no remote feeds."
cd85e52fdd
2019-06-06 14:23:06 +01:00
Tom Grimwood-Taylor 534da0bca6 Move call to sendArticleStatus to delegate. 2019-06-06 14:22:29 +01:00
Tom Grimwood-Taylor ac9057299a Remove edited name when remote feed name changes. 2019-06-06 10:31:00 +01:00
Tom Grimwood-Taylor 3c1b84dd73 Fix a Feedbin subscriptionID going out of sync.
If, for example, a user deleted a feed and recreated it on the server
without a sync in between, the subscription ID for the feed would update
on the server, but remain unchanged locally. If the user then wanted to
delete or rename the feed they'd get a 404 error.
2019-06-06 10:31:00 +01:00
Tom Grimwood-Taylor cd85e52fdd Fix updating local feed list when no remote feeds.
When there were no remote feeds the logic to remove local
feeds was skipped.
2019-06-03 17:09:17 +01:00
Maurice Parker 8e0c857810 Update the extract page number function to make it more readable 2019-05-31 13:38:33 -05:00
Jeremy Beker 98c32b9987
Merge branch 'master' into google_reader_compatible_syncing 2019-05-31 09:54:25 -04:00
Maurice Parker fec3c69f4a Remove Feedbin api workaround for unpropagated mode=extended parameter 2019-05-31 07:54:12 -05:00
Maurice Parker 10296a1b74 Clear the feed metadata on Feedbin feed delete 2019-05-31 07:47:05 -05:00
Maurice Parker d602f894f6 Fix link parsing bug that causes crash 2019-05-31 07:22:28 -05:00
Maurice Parker 30c21bb125 Enable folders to be dropped in a move or copy between accounts 2019-05-30 14:36:21 -05:00
Maurice Parker 1352dda8aa Modify Feedbin feed deletes so that they emulate how the local account feed deletes work. 2019-05-30 10:12:34 -05:00
Maurice Parker 51284b5aa4 Rename deleteFeed to removeFeed to be more consistent with other API's 2019-05-29 21:04:44 -05:00
Maurice Parker 527e677934 Rename deleteFolder to removeFolder to make the API more consistent 2019-05-29 20:53:00 -05:00
Maurice Parker f4bc17c8f1 Refactor addFeed and removeFeed usages to be more consistent 2019-05-29 20:47:52 -05:00
Maurice Parker 5e3fcfd955 Correct how feeds were deleted so that only the feed in the correct container was deleted 2019-05-29 17:56:26 -05:00
Jeremy Beker aa6dfe8a08
Rework to store endpoint URL in metadata
Endpoint URL did not belong with credentials. This breaks it out and stores it in the account metadata. Updates validation code to take it as a parameter.
2019-05-29 15:16:09 -04:00
Jeremy Beker 0df86e5761
Authentication working
* Updates to use new API style per discussion with Maurice
* Credential validation functioning
2019-05-29 10:54:52 -04:00
Maurice Parker 0648053417 Enforce tag specific drop validation (can't copy to the account level) 2019-05-28 17:42:19 -05:00
Maurice Parker cf016c5d7d Prevent Feedbin in account copy from putting a feed in both the root account and a folder at the same time. 2019-05-28 13:38:40 -05:00
Maurice Parker 493abbb609 Refactor create feed functionality to increase code reuse and encapsulation 2019-05-28 09:45:02 -05:00
Maurice Parker 61f9a66d74 Change so that we fire off status update immediately if the number of pending status changes exceeds 100. Issue #658 2019-05-27 12:03:12 -05:00
Maurice Parker 886b82f3bd Fix issue where unread and unstar statuses were getting lost if there wasn't already an article. Issue #708 2019-05-26 21:05:05 -05:00
Maurice Parker 7e6db47956 Add extended mode for Feedbin entries to get avatar url. Issue #669 2019-05-26 18:35:54 -05:00
Maurice Parker 32712533d1 Fixed duplicate adds for local account folder feed adds. Issue #701 2019-05-26 12:17:38 -05:00
Maurice Parker c61949bc04 Add account name to network error messages and prevent background iOS errors from displaying alerts 2019-05-26 11:54:32 -05:00
Maurice Parker 5f98f0d2fc Correct usage of weak self in completion handlers 2019-05-22 15:40:34 -05:00
Maurice Parker a406fa9d4d Enhance error handling to make syncing more resilient to network failures. 2019-05-21 19:15:24 -05:00
Maurice Parker 8816de4a0e Fix issue where new Feeds added to a folder also got left in the account container. 2019-05-21 10:26:11 -05:00
Maurice Parker d9458c8980 Make progress indicator more accurate 2019-05-21 08:34:05 -05:00
Maurice Parker 31cc3b609c Make delete animation correct for deletes and restores by wrapping them in BatchUpdates. Issue #667 2019-05-20 18:05:28 -05:00
Maurice Parker 48e19c23a7 Set content type for Feedbin OPML Import. 2019-05-19 18:19:08 -05:00
Brent Simmons 7bd4520746 Remove unused weak self. (Was causing warning in Xcode.) 2019-05-19 11:33:48 -07:00
Maurice Parker c7f02150f9 Make sure we go and get missing articles when we add a new feed. 2019-05-19 10:43:45 -05:00
Maurice Parker 9c159d21f6 Retrieve articles when we have a status but don't have an article on full refresh. 2019-05-17 14:56:27 -05:00
Maurice Parker 0a9bf2aef0 Prevent more than one OPML import from being run at the same time. 2019-05-17 10:44:22 -05:00
Maurice Parker b89f088917 Switch to using the new OPML import service 2019-05-17 10:04:13 -05:00
Maurice Parker 87512a64a5 Removed old TODO and update to latest RSWeb 2019-05-16 11:01:44 -05:00
Maurice Parker d8e6355b1e Fix bug where restoring a feed in a folder could leave the feed in the account container 2019-05-16 10:33:58 -05:00
Maurice Parker 5f65fba9e2 Fix bug that prevented last unread or last unstrap from changing correctly. 2019-05-16 06:01:10 -05:00
Maurice Parker 6be6c6a682 Add send sync database contents to Feedbin 2019-05-15 11:52:56 -05:00
Maurice Parker b1303661b2 Save article statuses to new sync database as they are created 2019-05-14 18:24:19 -05:00
Maurice Parker f449ed9608 Make sure progress gets cleared incase the last page adjustment is inaccurate 2019-05-14 17:39:55 -05:00
Maurice Parker 30273795a8 Delegate article marking functionality to the account delegate 2019-05-14 15:34:05 -05:00
Maurice Parker 1984af4664 Add download progress for Feedbin accounts 2019-05-14 13:10:07 -05:00
Maurice Parker e31e1a4d60 Save article statuses from articles we have not received yet 2019-05-14 10:06:29 -05:00
Maurice Parker 62d154d0f2 Add download syncing of article statuses 2019-05-14 06:20:53 -05:00
Maurice Parker 39a337d096 Stub out syncing article state 2019-05-13 17:04:12 -05:00
Maurice Parker eede1cc7eb Add initial feed download for Feedbin. 2019-05-13 11:18:54 -05:00
Maurice Parker ccac456d77 Change to use the entries.json service for Feedbin instead of the per feed one 2019-05-13 10:29:34 -05:00
Maurice Parker c4ce93e96a Set default read state for Feedbin articles to read when syncing 2019-05-13 08:32:03 -05:00
Maurice Parker 20388eff46 Change how completion handlers work for refreshArticles so that we can tell for sure when all the articles have been downloaded and updated in the database 2019-05-13 06:34:27 -05:00
Maurice Parker 2684b92a67 Added service calls for unread and starred entries 2019-05-13 03:13:06 -05:00
Maurice Parker f4510e57e5 store last article fetch time in account metadata 2019-05-12 19:17:16 -05:00
Maurice Parker 9c676f29f8 add articles download for Feedbin 2019-05-12 18:32:32 -05:00
Maurice Parker 4ed1b8a66a Move ConditionalGetKeys as they are account type specific 2019-05-12 08:47:27 -05:00
Maurice Parker 60895fc7fa Restrict Feedbin to a maximum of 1 concurrent connection to keep us under Feedbin's 250 requests per second rate limit 2019-05-12 07:22:33 -05:00
Maurice Parker 51c2527da2 Add OPML import for Feedbin. 2019-05-11 16:07:27 -05:00
Maurice Parker 6f92cd1a73 Refactor to differentiate between loading the Subscriptions.opml file and importing an external OPML file as they now need separate behaviors 2019-05-11 12:26:23 -05:00
Maurice Parker 5200e49175 Capture 401 http status codes as already subscribed error when creating a Feedbin subscription 2019-05-10 10:40:02 -05:00
Maurice Parker fe70723eb4 Use best feed specifier code to determine which Feedbin option to use when creating a feed 2019-05-10 10:14:24 -05:00
Maurice Parker 75fbd9e3eb Add folder delete undo support 2019-05-09 18:20:09 -05:00
Maurice Parker 23b43ecc07 Add undo for feeds 2019-05-09 16:09:21 -05:00
Maurice Parker d4bfab2da6 Fix delete folder bug 2019-05-09 13:35:40 -05:00
Maurice Parker cda8acc66c Add the ability to move feeds between folders for Feedbin 2019-05-09 13:31:18 -05:00
Maurice Parker 50d3a5799c added subscription delete 2019-05-09 07:25:45 -05:00
Maurice Parker 49116fd8e3 Add subscription id to Feed so that we can correctly rename Feedbin subscriptions 2019-05-08 18:13:54 -05:00
Maurice Parker 43d32b1281 Add create Feedbin feed 2019-05-08 17:41:19 -05:00
Maurice Parker 72c92587d2 Keep feedID and feedURL better separated 2019-05-08 09:54:55 -05:00
Maurice Parker f12494cc31 Add some debug logging 2019-05-08 08:20:29 -05:00
Maurice Parker e52dc84f13 added create subscription service 2019-05-08 06:56:15 -05:00
Maurice Parker c5b0bfcd91 Save feed folder relationship identifier 2019-05-07 18:34:45 -05:00
Maurice Parker 52e5e43d10 Add download feed to folder relationships syncing 2019-05-07 17:41:32 -05:00
Maurice Parker ae61d36c7d Change FeedbinAccountDelegate to use BatchUpdate 2019-05-07 11:10:00 -05:00
Maurice Parker 7f9055fe78 Add download subscriptions and faviconURLs 2019-05-07 10:51:41 -05:00
Maurice Parker d6ae740305 Added folder (tag) delete for Feedbin 2019-05-06 17:34:41 -05:00
Maurice Parker b7e2df1a68 Add Folder rename for Feedbin 2019-05-06 10:53:20 -05:00
Maurice Parker 51a1562e4b make slight change to how not modified responses are handled 2019-05-06 05:28:02 -05:00
Maurice Parker 18f2c7b723 Fix bug that prevented http caching from working 2019-05-05 17:46:53 -05:00
Maurice Parker 15a0ba89d7 Add folder syncing for Feedbin account 2019-05-05 15:41:20 -05:00
Maurice Parker 29f9cf83b1 Add HTTP Caching for Feedbin (conditional get) 2019-05-05 08:44:57 -05:00
Maurice Parker 35160aaf75 Rename AccountSettings to AccountMetadata to show that more than settings are stored in it and that it is analogous to FeedMetadata 2019-05-05 07:49:59 -05:00