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
|
fd8a973084
|
Add already subscribed error to LocalAccountDelegate and updated iOS to work with latest Account API
|
2019-05-10 10:22:28 -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
|
06626f10a7
|
Add feed rename
|
2019-05-08 17:55:53 -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 |
Maurice Parker
|
6e7477fd89
|
Modify AccountSettings so that it works like FeedMetadata and can be leveraged by the AccountDelegates
|
2019-05-05 07:21:26 -05:00 |
Maurice Parker
|
d12a056ca3
|
Pass stored credentials to the delegate when updated
|
2019-05-05 06:02:28 -05:00 |
Maurice Parker
|
fc7b6f2c6b
|
refactor how Credentials work
|
2019-05-05 03:25:21 -05:00 |
Maurice Parker
|
aaa4342494
|
Add encrypted credential storage
|
2019-05-04 15:14:49 -05:00 |
Maurice Parker
|
595db517a7
|
change func signitures to use Credentials protocol from RSWeb instead of username/password
|
2019-05-04 11:48:48 -05:00 |
Maurice Parker
|
38202ece8d
|
Made credentials verification errors more descriptive.
|
2019-05-04 09:18:14 -05:00 |
Maurice Parker
|
bb42e46887
|
Update to use latest webservice network layer in RSWeb
|
2019-05-04 08:54:07 -05:00 |
Maurice Parker
|
5a852c1615
|
validate Feedbin account credentials and add Feedbin account
|
2019-05-02 18:17:52 -05:00 |
Maurice Parker
|
e0efcfa847
|
Update unread counts for activate/inactivate and delete account
|
2019-05-02 08:41:22 -05:00 |
Maurice Parker
|
137f061169
|
Prevent delete while refresh in progress
|
2019-05-02 06:50:35 -05:00 |
Maurice Parker
|
636468bbf0
|
Implement active account processing functionality
|
2019-05-02 06:01:30 -05:00 |
Maurice Parker
|
747079157b
|
Implement account state UI
|
2019-05-02 05:41:44 -05:00 |
Maurice Parker
|
f5523dd610
|
Add delete from disk
|
2019-05-01 19:22:07 -05:00 |
Maurice Parker
|
93630a7b72
|
Load accounts from disk
|
2019-05-01 13:13:53 -05:00 |
Maurice Parker
|
f4180424e1
|
Add multiple local accounts
|
2019-05-01 12:37:13 -05:00 |
Maurice Parker
|
4edffa488d
|
Rename classes to match naming convention
|
2019-05-01 11:05:55 -05:00 |
Maurice Parker
|
fe8e825c0d
|
Add account add UI
|
2019-05-01 10:28:13 -05:00 |
Maurice Parker
|
4bc7611721
|
Rename AccountManageer.localAccount to AccountManager.defaultAccount to make it different from other local accounts
|
2019-05-01 05:53:18 -05:00 |
Maurice Parker
|
ba57a27a35
|
Make local account display names changeable
|
2019-04-30 06:38:18 -05:00 |
Maurice Parker
|
ae63805479
|
Change property to have correct swift naming convention name
|
2019-04-27 16:16:46 -05:00 |
Maurice Parker
|
9400ea361e
|
Add notification for downloaded article(s).
|
2019-04-27 13:54:52 -05:00 |
Maurice Parker
|
e10bfde6d9
|
Rollback code created to support background downloads that are no longer needed
|
2019-04-26 14:21:17 -05:00 |
Maurice Parker
|
f5941fda64
|
Add AccountRefreshMode to be able to choose between background and foreground download sessions
|
2019-04-25 09:25:13 -05:00 |
Maurice Parker
|
f3c2d8c1f8
|
Updated to lastest RSWeb
|
2019-04-25 07:13:14 -05:00 |
Maurice Parker
|
f4c0fca6a8
|
Implement background downloading of feeds
|
2019-04-24 07:30:35 -05:00 |
Maurice Parker
|
17caa31ee5
|
Added device specific local account names.
|
2019-04-17 13:01:26 -05:00 |
Maurice Parker
|
b9f2a500a1
|
cleared the code signing identity
|
2019-04-15 17:14:47 -05:00 |
Maurice Parker
|
6b8524b70d
|
Made frameworks cross platform and got generated iOS app to compile.
|
2019-04-15 13:30:10 -05:00 |
Brent Simmons
|
0e44c135ae
|
Convert Account to Swift 5.
|
2019-03-31 16:12:17 -07:00 |
Brent Simmons
|
10cdc1553e
|
Post display name did change notification when an Account’s name changes.
|
2019-03-31 16:12:03 -07:00 |
Brent Simmons
|
2819403d62
|
Store the account name in a settings file. Set a default name based on the account type.
|
2019-03-27 22:10:14 -07:00 |
Brent Simmons
|
c84f273b92
|
Continue work on accounts UI in Preferences.
|
2019-03-20 22:10:22 -07:00 |
Brent Simmons
|
70bc4a7b45
|
Pay attention to the changed key when handling feed setting change notifications.
|
2019-03-17 13:54:30 -07:00 |
Brent Simmons
|
5f1bdb29ec
|
Give the .FeedSettingsDidChange notification a userInfo with the key of the setting that changed. This way observers can ignore changes they don’t care about.
|
2019-03-17 12:47:04 -07:00 |
Brent Simmons
|
80bee5b487
|
Do minor formatting changes in Feed.swift.
|
2019-03-17 11:24:21 -07:00 |
Brent Simmons
|
6a8ee9a2fb
|
Perform minor cleanups in Account.
|
2019-03-16 17:30:30 -07:00 |
Brent Simmons
|
908ae515c0
|
Remove unneeded import RSDatabase from Account.
|
2019-03-16 17:12:09 -07:00 |
Brent Simmons
|
cb45897256
|
Remove unused markEverywhereAsRead.
|
2019-03-16 16:48:14 -07:00 |
Brent Simmons
|
1d484220eb
|
Skip setting feed.editedName on OPML import. It’s not necessarily true that the name in the OPML file is an editedName.
|
2019-03-16 16:42:51 -07:00 |
Brent Simmons
|
e11fc1dfad
|
Make feed.init and FeedMetadata internal.
|
2019-03-16 16:39:16 -07:00 |
Brent Simmons
|
3e52bb9c24
|
Make feed.metadata no longer an optional.
|
2019-03-16 12:08:31 -07:00 |
Brent Simmons
|
4d727ce094
|
Continue removing old code for pre-OPML subscriptions.
|
2019-03-15 13:27:01 -07:00 |
Brent Simmons
|
8de36d8282
|
Start removing old code for pulling settings from a plist.
|
2019-03-15 13:17:37 -07:00 |
Brent Simmons
|
7335c65ecb
|
Remove last ODB stuff. Feed metadata is now entirely stored in FeedMetadata.plist.
|
2019-03-14 22:59:07 -07:00 |
Brent Simmons
|
1d52a1229b
|
Pull editedName from OPML when feed.editedName == nil.
|
2019-03-14 22:34:22 -07:00 |
Brent Simmons
|
79a6d5f761
|
Continue transition from ODB to FeedMetadata.plist. It’s simpler and uses less memory.
|
2019-03-13 23:41:43 -07:00 |
Brent Simmons
|
d498c3f19d
|
Create FeedMetadata. Not actually used just yet. (Soon.)
|
2019-03-12 22:40:11 -07:00 |
Brent Simmons
|
4c6d3807cb
|
Remove unused settingsTable.
|
2019-03-03 21:35:04 -08:00 |
Brent Simmons
|
0a45dda375
|
Create SearchFeedDelegate. Make searching synchronous, since it’s fast enough.
|
2019-02-24 19:22:16 -08:00 |
Brent Simmons
|
efe8a4ab15
|
Implement search — fetch articles matching a search string from the database.
|
2019-02-18 22:29:43 -08:00 |
Daniel Jalkut
|
ddb0ee21b6
|
Quiet warnings/errors from Xcode 10.2 about redundant public attributes on methods implemented inside public extensions.
|
2019-02-12 10:05:51 -05:00 |
Brent Simmons
|
6f41b2a728
|
Queue saving to disk, in Account, even during refresh.
|
2019-02-07 21:29:05 -08:00 |
Brent Simmons
|
eb3c69f4d0
|
Don’t write "Untitled" to Subscriptions.opml when a feed lacks a name or editedName — “Untitled” is a localizable, display-only string, not something to store in OPML. Fix #527.
|
2019-02-06 21:18:22 -08:00 |
Brent Simmons
|
aadf4ec09f
|
Don’t set feed.editedName when importing OPML in Account.
|
2019-02-06 21:17:17 -08:00 |
Brent Simmons
|
ddccbdf610
|
Add addFeed and addFeeds to the Container protocol. This was confusing before. Now you can add directly to a Folder or Account.
|
2019-02-05 21:48:32 -08:00 |
Brent Simmons
|
448293a836
|
Set feed.title from the OPML — don’t just leave it blank.
|
2019-02-02 18:08:01 -08:00 |
Brent Simmons
|
30324c8ec0
|
Make sure that feed.editedName is never "". Treat it as nil.
|
2019-02-02 17:46:15 -08:00 |
Brent Simmons
|
f5d6e7e8fa
|
Fix bug where empty folders would be lost between runs of the app.
|
2019-01-27 21:42:58 -08:00 |
Brent Simmons
|
b900cbc0b7
|
Make Feed and Folder conform to Renewable.
|
2018-11-22 13:57:49 -08:00 |
Brent Simmons
|
485bde7ff2
|
Complete (probably) work on Feedbin sync data types.
|
2018-10-14 18:38:33 -07:00 |
Brent Simmons
|
cd6e6daf31
|
Continue work on Feedbin sync data types.
|
2018-10-14 18:10:07 -07:00 |
Brent Simmons
|
d69058c10c
|
Fix a couple first-run startup bugs.
|
2018-09-26 22:05:35 -07:00 |
Brent Simmons
|
7026eae899
|
Skip writing OPML file to disk during startup. Structure-changed notices happen during startup as the object graph is created, but it doesn’t mean that there’s a change that requires saving to disk.
|
2018-09-16 20:02:24 -07:00 |
Brent Simmons
|
1c3dca4d9b
|
Update unreadCount for an Account only when one of its feeds changes its unreadCount.
|
2018-09-16 19:07:07 -07:00 |
Brent Simmons
|
a914b3949b
|
Made launch performance *much* faster for large (thousands of feeds) subscriptions list. Also: split container.children in container.topLevelFeeds and container.folders. This simplifies a bunch of things, and makes some things faster.
|
2018-09-16 17:54:42 -07:00 |
Brent Simmons
|
6b6d393b3d
|
Delete some dead code.
|
2018-09-16 13:08:44 -07:00 |
Brent Simmons
|
3d45231494
|
Stop using urlToFeedDictionary. Feeds don’t have to be uniqued.
|
2018-09-16 13:04:42 -07:00 |
Brent Simmons
|
f8d6cb48dc
|
Remove instance where Feed equality was expected to be pointer equality, which is no longer true.
|
2018-09-16 12:46:50 -07:00 |
Brent Simmons
|
4010b4cb2a
|
On startup, import from AccountData.plist one last time, then rename it to AccountData-old.plist. On subsequent startups, import using Subscriptions.opml.
|
2018-09-16 12:42:46 -07:00 |
Brent Simmons
|
823d83c942
|
Write to disk on display-name-change only if it’s a Folder, since Feed names are stored in ODB.
|
2018-09-15 12:08:57 -07:00 |
Brent Simmons
|
d0df791b93
|
Skip writing to disk when feed setting changes, since we’re writing OPML now and storing feed settings in ODB.
|
2018-09-15 12:06:19 -07:00 |
Brent Simmons
|
abd8fb2236
|
Store feed.name and feed.editedName in ODB.
|
2018-09-15 11:45:01 -07:00 |
Brent Simmons
|
ce1fe6ed1f
|
Store feed.editedName in ODB.
|
2018-09-15 11:39:33 -07:00 |
Brent Simmons
|
0f59b904ef
|
Store feed.authors in ODB. Make Author Codable.
|
2018-09-15 11:16:05 -07:00 |
Brent Simmons
|
904feb9950
|
Store feed.homePageURL in ODB.
|
2018-09-14 22:23:30 -07:00 |
Brent Simmons
|
fb9590de98
|
Make feedID and accountID the things that determine hashing and equality for a Feed.
|
2018-09-14 22:15:22 -07:00 |
Brent Simmons
|
47cf018143
|
Store feed.unreadCount with the Account rather than the feed. This is part of making it so that feeds no longer have to be uniqued.
|
2018-09-14 22:06:03 -07:00 |
Brent Simmons
|
28d084e246
|
Store iconURL and faviconURL in ODB.
|
2018-09-14 21:51:05 -07:00 |
Brent Simmons
|
6d2bb123e3
|
Save conditional GET info in ODB.
|
2018-09-14 19:33:47 -07:00 |
Brent Simmons
|
3f1f4fd24c
|
Write Subscriptions.opml to disk.
|
2018-09-14 13:25:38 -07:00 |
Brent Simmons
|
b8546d8e8b
|
Don't store account.unreadCount in Settings.odb. Don’t rewrite AccountData.plist when feed.contentHash changes.
|
2018-09-14 13:12:55 -07:00 |
Brent Simmons
|
13fbad12a5
|
Store feed.contentHash in Settings.odb.
|
2018-09-13 22:52:34 -07:00 |
Brent Simmons
|
679e6f6c0b
|
Give Feed a weak account rather than accountID.
|
2018-09-13 22:37:40 -07:00 |
Brent Simmons
|
b5b42b8df6
|
Stop storing unreadCount for Feed and Folder objects on disk, since they’re fast to fetch at startup. Also, give Feed an ODBRawValueTable for metadata storage.
|
2018-09-13 22:25:10 -07:00 |
Brent Simmons
|
b7e9fbf2a6
|
Stop saving account’s unread count to disk — no need. It gets calculated at startup plenty fast enough.
|
2018-09-13 21:25:35 -07:00 |
Brent Simmons
|
4bc6c7d5db
|
Start using ODB code with Account. Store the unread count in the settings database.
|
2018-09-12 22:28:21 -07:00 |
Brent Simmons
|
25ff76e1e5
|
Fix a performance bug when fetching all unread articles. When validating unread counts, it was looping through the entire set of articles once per feed. Now it loops through articles just once, for a major performance boost with lots of feeds and/or lots of unread articles.
|
2018-09-10 22:08:38 -07:00 |
Maurice Parker
|
808715892f
|
Changed project and framework projects to default to using tabs per the coding guidelines. Also corrected previously committed files with spaces used incorrectly.
|
2018-09-07 13:46:00 -05:00 |
Brent Simmons
|
fdb159a61b
|
Normalize homePageURL in its setter. Fix #397.
|
2018-09-02 12:14:04 -07:00 |
Brent Simmons
|
5d2a3e9142
|
Normalize homePageURL on init-ing Feed.
|
2018-09-02 12:08:35 -07:00 |
Brent Simmons
|
141ae5cc2f
|
Continue rename to NetNewsWire.
|
2018-08-28 22:18:24 -07:00 |
Brent Simmons
|
9263ffcb79
|
Use synthesized init.
|
2018-08-25 17:07:55 -07:00 |
Brent Simmons
|
cfb3bd706e
|
Use new hash-into function instead of calculating hashValue. WIP on #402.
|
2018-08-25 11:54:58 -07:00 |
Brent Simmons
|
b16112ad56
|
Remove deleted frameworks from Account.
|
2018-07-28 17:30:12 -07:00 |
Brent Simmons
|
fc338d5371
|
Move Feed from Articles.framework to Account.framework.
|
2018-07-28 12:16:14 -07:00 |
Brent Simmons
|
b7575c687c
|
Rename Data.framework to Articles.framework. Rename Database.framework to ArticlesDatabase.framework.
|
2018-07-23 18:29:08 -07:00 |
Olof Hellman
|
c91f4621e1
|
Merge remote-tracking branch 'brentsimmons/master'
|
2018-03-04 18:43:49 -08:00 |
Brent Simmons
|
7def2ae8d0
|
Fix bug where deleting from the sidebar would not stick across runs of the app sometimes — whatever you deleted could come back.
|
2018-02-24 15:54:32 -08:00 |
Olof Hellman
|
71005b56af
|
support for "make new feed"
|
2018-02-20 00:26:46 -08:00 |
Brent Simmons
|
c80e3e86de
|
Don’t save an Account to disk during a refresh session. Wait till it’s over.
|
2018-02-17 18:02:40 -08:00 |
Brent Simmons
|
64647c73c6
|
Use a coalescing queue (instead of a Timer) in Account for saving to disk.
|
2018-02-17 15:38:54 -08:00 |
Brent Simmons
|
2f21dbf6be
|
Remove extraneous get { from a bunch of read-only accessors.
|
2018-02-14 13:14:25 -08:00 |
Brent Simmons
|
192439abe7
|
Make Folder watch for children-did-change notifications — when its own children change, update the unread count. Fix #322.
|
2018-02-12 22:22:06 -08:00 |
Brent Simmons
|
a13d21395e
|
Fetch starred articles for the Starred smart feed.
|
2018-02-11 12:07:55 -08:00 |
Brent Simmons
|
5aeb914ab6
|
Fetch articles for the Today smart feed.
|
2018-02-10 17:37:47 -08:00 |
Brent Simmons
|
00cf3934e5
|
Add fetchUnreadArticles method to Account, which will be used by the All Unread smart feed.
|
2018-02-10 13:00:16 -08:00 |
Brent Simmons
|
a6db249ab6
|
Add ArticleFetcher protocol. Add Feed and Folder extensions for it.
|
2018-02-04 10:57:41 -08:00 |
Olof Hellman
|
e038fb0fb5
|
convert Evergreen frameworks projects to use .xcconfig files.
|
2018-02-02 03:24:13 -08:00 |
Daniel Jalkut
|
3507313f84
|
Accept Xcode 9.3 recommended build settings.
|
2018-01-29 11:20:30 -05:00 |
Daniel Jalkut
|
d7f13ca4be
|
Change from flatMap to new compactMap rename in Xcode 9.3.
|
2018-01-29 11:19:54 -05:00 |
Brent Simmons
|
cf0d5cdc51
|
Remove unwanted debugging print statement.
|
2018-01-24 21:48:20 -08:00 |
Brent Simmons
|
f109237bfa
|
Handle feed renames in the inspector. Handle multiple selection. Fix #137.
|
2018-01-23 21:49:33 -08:00 |
Brent Simmons
|
2cf0dbd96e
|
Extend Notification.Name, not NSNotification.Name.
|
2018-01-22 22:00:01 -08:00 |
Brent Simmons
|
02ad70097e
|
Send a Notification when a Folder’s name changes.
|
2018-01-22 21:59:13 -08:00 |
Brent Simmons
|
6b059671f5
|
Make progress on reloading timeline when feed updates.
|
2018-01-17 17:28:09 -08:00 |
Olof Hellman
|
775dbf0852
|
basic readonly scripting support for account, feed, folder
|
2018-01-11 00:51:25 -08:00 |
Brent Simmons
|
8f9575ee84
|
Remove assertion that wasn’t valid in some situations. Fix #283.
|
2017-12-29 10:13:11 -08:00 |
Brent Simmons
|
0b2d7c6733
|
Validate unread counts on fetching articles. Fix #274.
|
2017-12-26 11:27:55 -08:00 |
Brent Simmons
|
23769bc391
|
Add AccountDelegate.accountDidInitialize method, so that the delegate can set the account’s nameForDisplay before anything else happens. Fix #247.
|
2017-12-19 17:48:30 -08:00 |
Brent Simmons
|
5b01f04afe
|
Save to disk right after importing OPML. Fix #249.
|
2017-12-18 21:46:35 -08:00 |
Brent Simmons
|
3eb95ce63d
|
Fix OPML import performance regression. Fix #238.
|
2017-12-11 23:12:54 -08:00 |
Brent Simmons
|
0b4a9f143e
|
Parse Feedbin articles.
|
2017-12-11 13:36:16 -08:00 |