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
|
c47fee2384
|
Delete unused parameters (dead code)
|
2019-05-13 07:17:50 -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
|
1b22abbbfc
|
Make sure a refresh happens after an OPML import.
|
2019-05-12 19:31:29 -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
|
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
|
268a5453ad
|
Convert Articles to Swift 5.
|
2019-03-31 16:09:32 -07:00 |
Brent Simmons
|
cd77dd1bcf
|
Convert ArticlesDatabase to Swift 5.
|
2019-03-31 16:06:57 -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
|
dd39e3a0fe
|
Delete unused code in Author.
|
2019-03-12 21:52:21 -07:00 |
Brent Simmons
|
4c6d3807cb
|
Remove unused settingsTable.
|
2019-03-03 21:35:04 -08:00 |
Brent Simmons
|
08110044ea
|
Create database index on searchRowID, which should make searching slightly faster.
|
2019-03-03 12:30:58 -08:00 |
Brent Simmons
|
ef9f2b1cdd
|
Remove extraneous semicolon.
|
2019-03-03 12:11:16 -08:00 |
Brent Simmons
|
9b05c7185e
|
Remove unneeded self.
|
2019-03-03 12:05:34 -08:00 |
Brent Simmons
|
a9751d5a51
|
Get searchRowID by column index 0, since it’s a single-column query. This should make searching imperceptibly faster.
|
2019-03-03 12:02:26 -08:00 |
Brent Simmons
|
e04250f1b3
|
Use DatabaseDictionary instead of NSDictionary. Work around a Swift memory leak with NSDictionary.
|
2019-03-02 16:17:06 -08:00 |
Brent Simmons
|
1950b0ab47
|
Remove extra resultSet.close().
|
2019-02-25 21:01:20 -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
|
b957753f5c
|
Revise fetchArticlesMatching function to use FTS.
|
2019-02-24 18:37:13 -08:00 |
Brent Simmons
|
e9c76e8ac0
|
Index articles using SQLite FTS.
|
2019-02-24 15:34:10 -08:00 |
Brent Simmons
|
44edbc7b09
|
Add search index to database. Move create-table statements into ArticlesDatabase since we can do big strings.
|
2019-02-22 22:17:05 -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
|
8a5428c1cf
|
Discard future dates. Fix #538.
|
2019-02-08 21:54:45 -08:00 |
Brent Simmons
|
1466f7e919
|
Fix bug getting unread count for the Today smart feed — it would skip articles with no pubDate, but that did arrive today (and thus should be considered as part of Today).
|
2019-02-08 21:05:55 -08:00 |
Brent Simmons
|
7f82f9d607
|
Fix a bug where articles with changed dates wouldn’t update in the database. Make the code a bit more clear, too.
|
2019-02-08 20:41:46 -08: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
|
a8ec3b9d58
|
Switch skip-install to Yes for Articles.framework.
|
2019-01-28 20:44:09 -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
|
142774f5ae
|
Use hash(into…) instead of a hashValue instance variable.
|
2018-12-27 21:07:34 -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
|
33fe733a8e
|
Redo the database indexes, after some trial and error, to get some significant speed boosts in fetching articles and unread counts.
|
2018-09-25 22:48:47 -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
|
6e6f64321b
|
fixed unintended developement team change
|
2018-09-07 13:50:34 -05:00 |