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
0ddb47aa32
Refactor feed finder to make it threadsafe
2019-05-30 17:35:08 -05:00
Jeremy Beker
46e21f57e8
Decoding of tags working.
2019-05-30 16:01:56 -04: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
Jeremy Beker
fdc0374c4f
Ensure credentials are available for use
...
Need to load metadad first
2019-05-30 07:48:34 -04:00
Maurice Parker
7bec55c90b
Add missing completion call that was causing restored feeds to not show
2019-05-29 21:39:53 -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
Jeremy Beker
84dbdf25e2
Google Reader API Account Provider and initial integration
...
* Creation of account classes (based on FeedBin)
* Integration on Mac side into account dialog
* Initial authentication call works and extracts auth token, but no where to put it right now.
2019-05-28 13:08:15 -04:00
Maurice Parker
493abbb609
Refactor create feed functionality to increase code reuse and encapsulation
2019-05-28 09:45:02 -05:00
Maurice Parker
c7b61f7d87
Enable copy between local accounts.
2019-05-27 18:01:24 -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
Brent Simmons
e974d788ff
Wrap OPML import in BatchUpdate. This makes it pretty much instant. Fix #653 .
2019-05-26 14:45:09 -07: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
d289bbea94
Fix crashing bug caused by nesting update statements.
2019-05-21 17:59:33 -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
8e7b1c8454
Make sure the statuses get updated before the unread count query executes. Issue #670
2019-05-20 17:08:16 -05:00
Maurice Parker
a5d6e5403e
Add additional sql check to ensure we don't pick up deleted articles when querying for missing articles
2019-05-20 13:55:26 -05:00
Maurice Parker
59ea5cadec
Add status syncing to iOS
2019-05-20 13:51:08 -05:00
Phil Viso
1f8463d091
Merge branch 'master' of https://github.com/brentsimmons/NetNewsWire into iPadPopover
...
# Conflicts:
# iOS/Settings/AddLocalAccountViewController.swift
# iOS/Settings/DetailAccountViewController.swift
# iOS/Settings/Settings.storyboard
2019-05-19 19:03:50 -05:00
Maurice Parker
48e19c23a7
Set content type for Feedbin OPML Import.
2019-05-19 18:19:08 -05:00
Phil Viso
bce45d28e4
Updated all iOS references to default local account new to be device specific
2019-05-19 16:52:21 -05:00
Maurice Parker
80e1888244
Rename AccountsDidChangeNotification to AccountsDidChange to match other notification names.
2019-05-19 15:51: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
3986e00bf7
Fix bug where account unread counts weren't changing with async api calls
2019-05-16 09:54:19 -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
6882b152d9
Add timer to trigger article status sync process.
2019-05-15 17:21:58 -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
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
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
0e5051b060
Fix a major performance regression with article fetching/creation by not using implicit hashing — use explicit and simpler hashValue that will still provide high quality.
2018-09-02 12:36:46 -07: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
30972ef435
Use synthesized init, Equatable, Hashable.
2018-08-25 16:29:11 -07:00
Brent Simmons
d274b4eac1
Use new hash-into instead of hashValue. WIP on #402 .
2018-08-25 12:52:48 -07:00
Brent Simmons
a3a9e9c9bd
Use new hash-into over hashValue in Articles.framework. WIP on #402 .
2018-08-25 12:05:47 -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
6d49cd4620
Unignore IDEWorkspaceChecks.plist.
2018-08-25 11:33:09 -07:00
Brent Simmons
f621f8fff7
Fix missing setting for Articles.framework — fixes bug doing Release build. (Didn’t affect Debug builds.)
2018-08-19 15:32:19 -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
Brent Simmons
ce0d2450b8
Get the app building with Xcode 10 beta 3.
2018-07-15 12:05:00 -07:00
Brent Simmons
74e07521ea
Build still broken. De-framework-ized FeedFinder.
2018-06-23 11:35:55 -07:00
Brent Simmons
b61df8c185
Rename RSFeedFinder references to FeedFinder.
2018-06-21 13:18:28 -07:00
Brent Simmons
168f6138ac
Rename RSFeedFinder.h to FeedFinder.h.
2018-06-21 13:07:31 -07:00
Brent Simmons
375bef6d44
Break build. Rename RSFeedFinder on disk to FeedFinder.
2018-06-21 13:06:13 -07:00
Brent Simmons
fdda92e4c2
Break build. Remove local copy of DB5.framework.
2018-06-21 13:04:26 -07:00
Brent Simmons
ecfee69fdf
Break the build. Continue switch to submodules. Remove local copy of RSDatabase.
2018-06-18 16:59:22 -07:00
Brent Simmons
72a89dd048
Break the build. Continue switch to submodules. Remove local copy of RSParser.
2018-06-18 16:52:24 -07:00
Brent Simmons
2927422f1f
Break the build. Continue switch to submodules. Remove local copy of RSWeb.
2018-06-18 16:45:29 -07:00
Brent Simmons
d597631bd6
Break the build. Continue switch to submodules. Remove local copy of RSTree.
2018-06-18 16:39:16 -07:00
Brent Simmons
993d584731
Break the build. Switching to submodules. Delete local copy of RSCore.
2018-06-18 16:34:11 -07:00
Brent Simmons
a1374d5420
Remove no-longer-used RSTextDrawing.framework.
2018-06-18 16:31:08 -07:00
Olof Hellman
3dd74ce148
better logic for rs_normalizedURLString
2018-04-29 19:36:40 -07:00
Olof Hellman
c91f4621e1
Merge remote-tracking branch 'brentsimmons/master'
2018-03-04 18:43:49 -08:00
Brent Simmons
6e6eefab27
Make Node.childNodes non-optional.
2018-02-25 22:01:09 -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
b39bcd9a77
Remove RSTextDrawing and all references to it.
2018-02-19 22:06:36 -08:00
Brent Simmons
389f04bcfb
Make the selected text in the timeline white.
2018-02-19 21:49:32 -08:00
Brent Simmons
6342eaeb00
Add mactories.net to the JSON special case list with titles.
2018-02-19 21:23:58 -08:00
Brent Simmons
6d46b44e22
Remove no-longer-used RSSingleLineView and RSSingleLineRenderer.
2018-02-19 16:00:26 -08:00
Brent Simmons
c887cd7921
Fix bug in existingItemWithIdentifier.
2018-02-17 20:46:20 -08:00
Brent Simmons
5ffe3bb948
Move existingToolbarItem function to NSToolbar category in RSCore.
2018-02-17 20:45:15 -08:00
Brent Simmons
2325e7edbc
Move the isOpen property from specific window controllers to the NSWindowController extension in RSCore.
2018-02-17 18:22:57 -08:00
Brent Simmons
8e7863c66d
Add isDisplayingSheet calculated readonly property to NSWindow and NSWindowController.
2018-02-17 18:14:24 -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
3a94cf9a51
Create CoalescingQueue.standard, a shared instance.
2018-02-17 17:42:57 -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
4e7fc8efcb
Remove rs_performSelectorCoalesced, since it’s been replaced by the CoalescingQueue.
2018-02-17 15:18:42 -08:00
Brent Simmons
d9cba50c89
Remove DiskSave from RSCore, since it’s unused.
2018-02-17 15:17:08 -08:00
Brent Simmons
0951b525f1
Add CoalescingQueue, a FIFO queue of target/selector pairs, used for things like updating table row cells — things that should be coalesced and can be delayed minimally.
2018-02-17 15:14:00 -08:00
Brent Simmons
0e2e0f7eea
Do a case-insensitive match when checking for special-case feed URLs.
2018-02-16 13:15:20 -08:00
Brent Simmons
891416e7b7
Add a special case to the JSON Feed parser for feeds that include HTML entities in their titles. At the moment this is used for kottke.org and pxlnv.com. More could be added later, and these feeds could be removed if fixed.
2018-02-16 13:13:00 -08:00
Brent Simmons
f8f78810ef
When detecting and parsing a potential JSON Feed, allow for the version URL to have the wrong scheme, as it does (at this writing) in https://pxlnv.com/feed/json/
...
Fix #347 .
2018-02-14 20:56:02 -08:00
Brent Simmons
2f21dbf6be
Remove extraneous get { from a bunch of read-only accessors.
2018-02-14 13:14:25 -08:00