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 |
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
|
2b6c2eb5ba
|
Create a PasteboardWriterOwner protocol and an NSPasteboard extension that references it.
|
2018-02-11 21:55:32 -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
|
863de80281
|
Add convenience method to Set<Article> for just getting unread articles.
|
2018-02-10 13:21:43 -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
|
c77866c4d7
|
Add takeItems: method to a new NSMenu extension.
|
2018-02-09 22:10:36 -08:00 |
Brent Simmons
|
dcf758acc5
|
Pass menuForEvent: to the enclosing tableview. This gets contextual menus to appear in e timeline.
|
2018-02-09 21:40:09 -08:00 |
Brent Simmons
|
839780303f
|
Add needed cast to return value in rs_enclosingTableView.
|
2018-02-09 21:39:33 -08:00 |
Brent Simmons
|
1b09d35c77
|
Add rs_enclosingTableView method as NSView category.
|
2018-02-09 21:33:13 -08:00 |
Brent Simmons
|
a6db249ab6
|
Add ArticleFetcher protocol. Add Feed and Folder extensions for it.
|
2018-02-04 10:57:41 -08:00 |
Brent Simmons
|
50dcf436d9
|
Change Cocoa imports to AppKit imports, because we don’t need CoreData imported (which Cocoa imports).
|
2018-02-02 22:51:32 -08:00 |
Olof Hellman
|
e038fb0fb5
|
convert Evergreen frameworks projects to use .xcconfig files.
|
2018-02-02 03:24:13 -08:00 |
Daniel Jalkut
|
56a39042f3
|
Remove Garbage-Collection-specific finalize method overrides, which were flagged by new deprecated OBJC methods warning.
|
2018-01-29 11:20:38 -05:00 |
Daniel Jalkut
|
3507313f84
|
Accept Xcode 9.3 recommended build settings.
|
2018-01-29 11:20:30 -05:00 |
Daniel Jalkut
|
68a8437ea2
|
It appears that libxml/parser.h must be explicitly imported as of Xcode 9.3.
|
2018-01-29 11:20:24 -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
|
fb45ae11eb
|
Add URLPasteboardWriter to RSCore. It takes a string and writes a URL (if possible) and a string to the pasteboard.
|
2018-01-28 16:08:38 -08:00 |
Brent Simmons
|
ef8f508ee4
|
Add NSOutlineView extension methods: canSelectItem and selectItemAndScrollToVisible.
|
2018-01-27 12:34:53 -08:00 |