Brent Simmons
|
efcc4fedaa
|
Add tests for Dr. Drang’s JSON Feed.
|
2017-11-30 13:19:22 -08:00 |
Brent Simmons
|
1e528ee8b0
|
Fix bug detecting Macworld’s RSS feed as an RSS feed. The feed doesn’t start with the standard XML header.
|
2017-11-28 21:29:09 -08:00 |
Brent Simmons
|
6c36107320
|
Prefer Apple touch icons to other feed icons.
|
2017-11-26 20:40:07 -08:00 |
Brent Simmons
|
82dace2acc
|
Start FeedIconDownloader.
|
2017-11-26 13:48:40 -08:00 |
Brent Simmons
|
bfccda8c88
|
Get twitter:image:src from HTML metadata.
|
2017-11-26 11:49:01 -08:00 |
Brent Simmons
|
ff7695c290
|
Parse Open Graph images when parsing metadata from an HTML page.
|
2017-11-26 11:38:03 -08:00 |
Brent Simmons
|
18f6b177e9
|
Fix typo.
|
2017-11-25 20:24:12 -08:00 |
Brent Simmons
|
e026e159d1
|
Rebuild the feed dictionary at appropriate times. Fix #169.
|
2017-11-25 18:05:20 -08:00 |
Brent Simmons
|
1047fa5a02
|
Use the proper index sets and so on to make deleting work from the sidebar again. Fix #192.
|
2017-11-25 17:44:54 -08:00 |
Brent Simmons
|
7d579733f0
|
Add tests to HTMLFeedFinder for finding the best feed from a web page.
|
2017-11-25 16:48:42 -08:00 |
Brent Simmons
|
fce95bb5b6
|
Pull JSON feed from web page metadata (along with RSS and Atom, which already worked).
|
2017-11-25 16:48:13 -08:00 |
Brent Simmons
|
23af6b4d29
|
Adjust scoring in FeedSpecifier to slightly prefer JSON feeds.
|
2017-11-25 16:47:36 -08:00 |
Brent Simmons
|
489cf8e29b
|
Start redoing HTMLFeedFinderTests.
|
2017-11-25 16:34:40 -08:00 |
Brent Simmons
|
50f4e46913
|
Add 'json' as possible-feed match string.
|
2017-11-25 16:34:20 -08:00 |
Brent Simmons
|
68c01491fc
|
Note when feed settings change and update the sidebar cells.
|
2017-11-25 13:48:14 -08:00 |
Brent Simmons
|
9865bd8e51
|
Fix a crash on startup — detect when there are no feeds and don’t hit database.
|
2017-11-25 13:11:19 -08:00 |
Brent Simmons
|
97079108be
|
Add Atom parser test for getting the home page link. It passed, which means the bug I’m currently hunting (no favicon for Dr. Drang) is somewhere else.
|
2017-11-25 13:02:21 -08:00 |
Brent Simmons
|
0b5f470654
|
Check "icon" as well as "shortcut icon" when finding the favicon link in a web page. (See Macdrifter.com, for instance.)
|
2017-11-25 13:01:20 -08:00 |
Brent Simmons
|
55166e0979
|
Update a Feed with settings taken from the raw feed. (Some Feeds had no homePageURL set, which meant, in most cases, no favicons.)
|
2017-11-25 12:17:49 -08:00 |
Brent Simmons
|
bd8b7c6ed9
|
Implement debugDropConditionalGetInfo command. Fix #197.
|
2017-11-25 11:13:15 -08:00 |
Brent Simmons
|
e4008b677f
|
Fix two typos in JSONFeedParser which kept the parser from getting the feed’s favicon and icon URLs. Also added a test for this.
|
2017-11-25 10:34:48 -08:00 |
Brent Simmons
|
32973c4c85
|
Fix an ambiguous call to download in DownloadWithCacheManager. I’m honestly not sure what function would have been called.
|
2017-11-24 13:11:41 -08:00 |
Brent Simmons
|
e4f65000b2
|
Replace Objective-C RSBinaryCache with Swift BinaryDiskCache in RSCore.
|
2017-11-24 13:10:22 -08:00 |
Brent Simmons
|
3282f0ec09
|
Create NSImage on background queue.
|
2017-11-23 12:15:33 -08:00 |
Brent Simmons
|
b4ff1785ab
|
Switch from download to downloadUsingCache where appropriate.
|
2017-11-23 10:29:00 -08:00 |
Brent Simmons
|
c9610f1f8e
|
Create DownloadWithCacheManager, for when it’s a good idea to use a cache.
|
2017-11-23 10:24:36 -08:00 |
Brent Simmons
|
ca4f4d408f
|
Create downloadUsingCache method — so we don’t download a home page several times in succession, for instance.
|
2017-11-22 13:37:07 -08:00 |
Brent Simmons
|
86907f6aab
|
Create ThreadSafeCache, which FaviconDownloader uses.
|
2017-11-19 23:58:35 -08:00 |
Brent Simmons
|
1864f60e0b
|
Save iconURL and faviconURL in Feed when found in ParsedFeed.
|
2017-11-19 22:38:42 -08:00 |
Brent Simmons
|
0284117bc3
|
Save and restore iconURL in Feed.
|
2017-11-19 22:37:59 -08:00 |
Brent Simmons
|
f457694922
|
Save and restore faviconURL in Feed.
|
2017-11-19 21:24:19 -08:00 |
Brent Simmons
|
ffaa55c50c
|
Implement mark-everywhere-as-read.
|
2017-11-19 16:28:26 -08:00 |
Brent Simmons
|
9c571271e6
|
Create SmartFeed class. It’s for Unread and Starred pseudo-feeds — and will also be used later on by predicate-based smart feeds.
|
2017-11-19 15:40:02 -08:00 |
Brent Simmons
|
83cee90929
|
Fix a couple bugs in PseudoFeed. Make callback for fetching unread count @escaping.
|
2017-11-19 12:45:35 -08:00 |
Brent Simmons
|
19673f5c8a
|
Add methods for fetching unread count since a certain date to Database.framework.
|
2017-11-19 12:44:17 -08:00 |
Brent Simmons
|
e681007bbe
|
Add TodayFeedDelegate. Start work on fetching unread count for Today pseudo-feed.
|
2017-11-19 12:12:43 -08:00 |
Brent Simmons
|
1cc532faa1
|
Add startOfToday and nullability annotations to NSCalendar+RSCore.
|
2017-11-19 12:11:56 -08:00 |
Brent Simmons
|
911e992b76
|
Use a Swift name for rs_performSelectorCoalesced — make it performSelectorCoalesced:with:delay:.
|
2017-11-19 11:42:22 -08:00 |
Brent Simmons
|
200ff61f6a
|
Fix code formatting nit in DisplayNameProvider.
|
2017-11-19 11:41:27 -08:00 |
Brent Simmons
|
eff6acba94
|
Create index on statuses (read) for performance reasons.
|
2017-11-19 11:40:45 -08:00 |
Brent Simmons
|
23ae585b12
|
Add a group-style row for accounts.
|
2017-11-18 16:56:36 -08:00 |
Brent Simmons
|
ca081c41a9
|
Decode HTML entities in the JSON Feed parser for content_html. Fix #176.
|
2017-11-18 12:41:15 -08:00 |
Brent Simmons
|
828075454e
|
Skip calculating a zero size for empty RSSingleLineView and RSSingleLineRenderer.
|
2017-11-16 21:10:44 -08:00 |
Brent Simmons
|
0e5b400a0c
|
Show Error Log window from Window menu.
|
2017-11-15 22:40:49 -08:00 |
Brent Simmons
|
1d2fe4623b
|
Add Inspector to RSCore. Show/hide inspector via Info command in Window menu.
|
2017-11-15 22:33:35 -08:00 |
Brent Simmons
|
1e713e3bfd
|
Update Account unread count when BatchUpdate did perform.
|
2017-11-15 13:26:10 -08:00 |
Brent Simmons
|
38954448cb
|
Move BatchUpdate.swift to RSCore.
|
2017-11-15 13:25:43 -08:00 |
Brent Simmons
|
3612469954
|
Make LogItem not crash on init.
|
2017-11-15 13:13:19 -08:00 |
Brent Simmons
|
48ca636796
|
Make progress on LogWindowController.
|
2017-11-14 22:04:14 -08:00 |
Brent Simmons
|
887e562716
|
Post a notification when a LogItem is added.
|
2017-11-14 21:39:24 -08:00 |
Brent Simmons
|
60ee139451
|
Add ability to log items to AppDelegate.
|
2017-11-14 21:31:17 -08:00 |
Brent Simmons
|
bf45c3bdd9
|
Rename Logger to Log.
|
2017-11-14 21:19:12 -08:00 |
Brent Simmons
|
7e2420700c
|
Add Logger and LogItem. Start work on log window.
|
2017-11-14 21:15:06 -08:00 |
Brent Simmons
|
0bc84aa50c
|
Show the Keyboard Shortcuts menu via its new Window menu command. The window’s HTML content remains to be done, though.
|
2017-11-13 18:33:23 -08:00 |
Brent Simmons
|
5d781d1657
|
Add method to display contents of file in WebViewWindowController.
|
2017-11-13 18:19:25 -08:00 |
Brent Simmons
|
773f660601
|
Create WebViewWindow, which holds a WKWebView. To be used for keyboard shortcuts and whatever else needs a plain web view in a window.
|
2017-11-13 13:23:22 -08:00 |
Brent Simmons
|
9f56030b79
|
Calculate the Account’s unread count by looking at the set of flattened feeds — this way a given feed (which can occur more than once) is counted only once. Fix #101.
|
2017-11-11 19:34:10 -08:00 |
Brent Simmons
|
0fe8cbd360
|
Remove redundant check to see if feed is probably XML.
|
2017-11-11 14:27:56 -08:00 |
Brent Simmons
|
a593661ba9
|
Add feed detection test for DCRainmaker feed. Make sure it’s detected as RSS. Fix #146.
|
2017-11-11 10:37:28 -08:00 |
Brent Simmons
|
2982109f9b
|
Check that data is not XML, rather than that it is HTML, when determining feed type. Fix #144.
|
2017-11-11 10:30:01 -08:00 |
Brent Simmons
|
9818278c9b
|
Make undo deleting feeds/folders work.
|
2017-11-05 12:14:36 -08:00 |
Brent Simmons
|
57296279e4
|
Switch back to AnyObject from AnyHashable, because of http://openradar.appspot.com/34824398
|
2017-11-04 23:05:20 -07:00 |
Brent Simmons
|
e16911b363
|
Make deleting work. Can’t undo yet. But now everything is messed-up because of an AnyHashable casting bug. Don’t run this build.
|
2017-11-04 22:51:14 -07:00 |
Brent Simmons
|
66c02a6fe1
|
Fix build errors.
|
2017-11-04 19:29:43 -07:00 |
Brent Simmons
|
17e22fb91a
|
Upgrade to recommended settings everywhere.
|
2017-11-04 19:16:07 -07:00 |
Brent Simmons
|
ad3020f13f
|
Upgrade to recommend changes for Data.
|
2017-11-04 19:14:55 -07:00 |
Brent Simmons
|
5c984cbd23
|
Upgrade to recommend changes for RSTextDrawing.
|
2017-11-04 19:14:38 -07:00 |
Brent Simmons
|
9886ac110a
|
Upgrade to recommend changes for RSFeedFinder.
|
2017-11-04 19:14:16 -07:00 |
Brent Simmons
|
ef303c0c38
|
Make progress on deleting and especially undoing delete.
|
2017-11-04 19:03:47 -07:00 |
Brent Simmons
|
c08bbaa970
|
Use AnyHashable instead of AnyObject as representedObject for tree nodes.
|
2017-11-04 15:27:32 -07:00 |
Brent Simmons
|
ef1d95341b
|
Show feeds in Feed Directory sidebar.
|
2017-11-04 14:53:21 -07:00 |
Brent Simmons
|
2bb0cdb0ba
|
Fix build failures in OPMLTests. Tests all still pass in RSParser.
|
2017-11-04 10:25:13 -07:00 |
Brent Simmons
|
911e6b0879
|
Do some refactoring.
|
2017-11-01 22:40:28 -07:00 |
Brent Simmons
|
17b84ec57c
|
Rename MarkAllReadCommand to MarkReadOrUnreadCommand and make it handle both cases.
|
2017-10-29 12:09:56 -07:00 |
Brent Simmons
|
f9b3eeb4d7
|
Switch macOS deployment target to 10.13. Get MarkAllReadCommand working as an undoable command.
|
2017-10-29 11:14:10 -07:00 |
Brent Simmons
|
d16f83c99a
|
Start UndoableCommand as part of undo support.
|
2017-10-24 09:28:58 -07:00 |
Brent Simmons
|
c101d9dd04
|
Maintain url-to-feed and feedID-to-feed dictionaries to make lookups faster. This makes OPML importing very fast.
|
2017-10-22 11:08:51 -07:00 |
Brent Simmons
|
649f62207f
|
Fix OPML importing.
|
2017-10-21 21:00:21 -07:00 |
Brent Simmons
|
8d5e568cde
|
Make folder.account weak and optional.
|
2017-10-21 16:37:40 -07:00 |
Brent Simmons
|
d512908b6f
|
Use @discardableResult with addFeed.
|
2017-10-21 16:32:29 -07:00 |
Brent Simmons
|
7bf1847588
|
Send notification on adding a feed to a folder. Also: Update ToDo.
|
2017-10-21 16:27:06 -07:00 |
Brent Simmons
|
c237aed5b8
|
Rejigger the find-feed scoring to handle bitsplitting.org — we were getting the podcast feed just because it had “RSS” in the title. But we want the blog feed to get the best score.
|
2017-10-21 16:23:51 -07:00 |
Brent Simmons
|
da1b7a6c7b
|
Post children-did-change notification after adding a feed.
|
2017-10-21 16:06:25 -07:00 |
Brent Simmons
|
edea37dba6
|
Add TreeController.normalizeSelectedNodes and supporting functions in Node.
|
2017-10-21 12:14:15 -07:00 |
Brent Simmons
|
702559cfb1
|
Define kDeleteKeyCode for use in key handling.
|
2017-10-21 10:54:59 -07:00 |
Brent Simmons
|
aca8acea7c
|
Update sidebar when adding a folder.
|
2017-10-19 13:27:59 -07:00 |
Brent Simmons
|
3812c216b2
|
Show unread count in window title.
|
2017-10-18 21:53:45 -07:00 |
Brent Simmons
|
2383ecd480
|
Implement ensureFolder — it actually creates and adds a folder and makes sure account is saved to disk.
|
2017-10-18 19:46:35 -07:00 |
Brent Simmons
|
31947854c0
|
Add AccountDelegate methods for reading and writing a userInfo dictionary that’s stored on disk in the same file as the rest of the Account info. Save account unreadCount with the disk dictionary. Mark an account as dirty when any descendant changes an unread count.
|
2017-10-18 19:14:40 -07:00 |
Brent Simmons
|
39599a43f3
|
Make hasAtLeastOneFeed() a Container protocol function with a default implementation. Scrap Account’s feedIDDictionary, since it’s not needed. (Well, profiling may tell us later to bring it back.)
|
2017-10-18 18:45:09 -07:00 |
Brent Simmons
|
fe29ccd2ed
|
Show unread count in dock badge. Force-update unread counts at startup.
|
2017-10-18 18:37:45 -07:00 |
Brent Simmons
|
324f330a3b
|
Use localizedStandardCompare when sorting Account names. It’s likely I got the order backwards, but I won’t know until we have accounts other than the local account. (I always get this backwards, even knowing that I always get it backwards.)
|
2017-10-18 18:21:36 -07:00 |
Brent Simmons
|
f90bf3bea1
|
Rename childrenContainsFeed to childrenContain. Add assertionFailure — expecting pointer equality.
|
2017-10-18 18:13:49 -07:00 |
Brent Simmons
|
3ea60cb461
|
Handle unread count change notifications in Folder. Update the unread count when needed.
|
2017-10-13 06:58:15 -07:00 |
Brent Simmons
|
505f4bcdba
|
Handle unread count did change notification in Account.
|
2017-10-13 06:50:33 -07:00 |
Brent Simmons
|
4897181909
|
Avoid a compiler bug with constrained Set extensions. Add a notification observation to Account when unread count changes.
|
2017-10-12 21:02:27 -07:00 |
Brent Simmons
|
165e74a3f3
|
Refactor status change handling in Account.
|
2017-10-10 13:23:12 -07:00 |
Brent Simmons
|
f5a5bf91b2
|
Update unread counts for feeds when statuses change.
|
2017-10-09 21:54:08 -07:00 |
Brent Simmons
|
77042f67b5
|
Include updated feeds in StatusesDidChange notification, so that updating unread counts will work.
|
2017-10-08 22:25:33 -07:00 |
Brent Simmons
|
6572631866
|
Update the timeline cell when an article’s status changes.
|
2017-10-08 21:06:25 -07:00 |
Brent Simmons
|
8a6b8bde9b
|
Remove some inaccurate assertions about the main thread.
|
2017-10-08 19:33:37 -07:00 |
Brent Simmons
|
8aa3746cb8
|
Add code for fetching articles for the timeline. Doesn’t actually work yet, though, for some reason.
|
2017-10-08 18:58:15 -07:00 |
Brent Simmons
|
4b662efe15
|
Comment-out some debugging code.
|
2017-10-08 01:56:18 -07:00 |
Brent Simmons
|
1b44591692
|
Save new and updated articles to the database.
|
2017-10-08 01:54:37 -07:00 |
Brent Simmons
|
ca611623aa
|
Simplify Container and its function implementations.
|
2017-10-07 21:41:21 -07:00 |
Brent Simmons
|
7f6f6f9061
|
Set the account to dirty upon updating some Feed properties.
|
2017-10-07 20:25:17 -07:00 |
Brent Simmons
|
c52eb024ab
|
Avoid resetting the save timer so often during a refresh session. Instead just remove it (if refreshing) and add it back when the refresh session ends.
|
2017-10-07 20:24:58 -07:00 |
Brent Simmons
|
0ba557736e
|
Avoid saving account to disk during a refresh session. Reschedule the timer and do it later.
|
2017-10-07 20:11:17 -07:00 |
Brent Simmons
|
d8e723db46
|
Fix typo — send correct notification on account finishing refresh.
|
2017-10-07 18:31:34 -07:00 |
Brent Simmons
|
ade76d6405
|
Save to disk when needed. Coalesce writing, so it doesn’t happen over and over during a refresh session.
|
2017-10-07 18:15:42 -07:00 |
Brent Simmons
|
bed43dd3d6
|
Call the completion block in Account.update, so the refresher can do its thing properly. Also: update ToDo.
|
2017-10-07 17:53:37 -07:00 |
Brent Simmons
|
c6f683c34c
|
Make Account, rather than its delegate, watch for refresh progress changes. This way the delegate doesn’t have to be inited with its Account.
|
2017-10-07 17:43:10 -07:00 |
Brent Simmons
|
b77569f38b
|
Create and use CombinedRefreshProgress, which reports refresh progress across all accounts. Used by the status view.
|
2017-10-07 17:20:19 -07:00 |
Brent Simmons
|
5d8aa94dc3
|
Keep track of refresh beginning and finishing. Validate the refreshAll command (menu, toolbar).
|
2017-10-07 14:40:14 -07:00 |
Brent Simmons
|
ab82febb9a
|
Move Account/Local folder to Account/LocalAccount, to make it easier to spot (since LocalAccount is its name). Also: wire up refreshing. Make organization changes to LocalAccountRefresher.
|
2017-10-07 12:40:14 -07:00 |
Brent Simmons
|
f7c5919674
|
Send DownloadProgressDidChange notification only when numberOfTasks or numberRemaining actually change.
|
2017-10-07 12:37:11 -07:00 |
Brent Simmons
|
1bffbb7312
|
Use new UserAgent.headers() function. Reorganize — API up top, with extensions for protocol conformances.
|
2017-10-07 12:36:09 -07:00 |
Brent Simmons
|
6888ad6d00
|
Use UserAgent.headers() function.
|
2017-10-07 12:35:11 -07:00 |
Brent Simmons
|
07e6ff5572
|
Add UserAgent.headers() function — otherwise that code was duplicated in a couple places.
|
2017-10-07 12:34:12 -07:00 |
Brent Simmons
|
6a1c39d8a3
|
Remove Notifications.swift from Data.framework. Clean up UnreadCountProvider.
|
2017-10-07 11:56:22 -07:00 |
Brent Simmons
|
12ea6e6a9f
|
Fix a second bug loading feeds. Feeds now appear in the sidebar.
|
2017-10-05 21:17:50 -07:00 |
Brent Simmons
|
199dd0e247
|
Fix bug loading feeds from disk.
|
2017-10-05 21:08:27 -07:00 |
Brent Simmons
|
c258a9da5c
|
Rewrite and move BatchUpdate.swift.
|
2017-10-05 20:34:29 -07:00 |
Brent Simmons
|
c80c6c30f8
|
Fix builder errors, mostly in RSParser.
|
2017-10-04 13:28:48 -07:00 |
Brent Simmons
|
83231ed373
|
Fix some build errors.
|
2017-10-02 13:15:07 -07:00 |
Brent Simmons
|
cb4027a951
|
Fix some build errors.
|
2017-10-01 11:28:44 -07:00 |
Brent Simmons
|
04612049f5
|
Make progress on adding feeds.
|
2017-10-01 10:59:35 -07:00 |
Brent Simmons
|
a910841c65
|
Add createFeed method.
|
2017-09-30 16:56:48 -07:00 |
Brent Simmons
|
1f677ca600
|
Edit some access permissions in Folder.
|
2017-09-30 11:00:18 -07:00 |
Brent Simmons
|
5ae70758fb
|
Perform a minor refactoring in Folder.swift.
|
2017-09-28 13:34:16 -07:00 |
Brent Simmons
|
3a4e545e22
|
Fix build errors in Account.framework.
|
2017-09-28 13:16:47 -07:00 |
Brent Simmons
|
1ec3484a95
|
Init Folder with an Account rather than an accountID.
|
2017-09-28 06:53:01 -07:00 |
Brent Simmons
|
48543bcfd6
|
Make progress reading/writing Account feeds and folders to disk.
|
2017-09-27 13:29:05 -07:00 |
Brent Simmons
|
55967f8731
|
Fix some build errors.
|
2017-09-26 21:43:40 -07:00 |
Brent Simmons
|
f187f6a9ef
|
Make Feed provide a disk dictionary.
|
2017-09-26 13:32:02 -07:00 |
Brent Simmons
|
9b566dd10d
|
Init feed with a disk dictionary.
|
2017-09-26 13:26:28 -07:00 |
Brent Simmons
|
8d9c9217dc
|
Make HTTPConditionalGetInfo serializable via a dictionary.
|
2017-09-26 13:16:46 -07:00 |
Brent Simmons
|
2978d4420b
|
Start work on adding feeds and folders.
|
2017-09-25 13:31:36 -07:00 |
Brent Simmons
|
21080a97fc
|
Start work on feed importing.
|
2017-09-24 22:35:57 -07:00 |
Brent Simmons
|
4d677b2055
|
Fix a bunch of build errors.
|
2017-09-24 12:24:44 -07:00 |
Brent Simmons
|
1ab282c23a
|
Do some cleanups on app code.
|
2017-09-23 12:17:14 -07:00 |
Brent Simmons
|
0843c10bc5
|
Remove accountInfo references. This was speculative anyway. I’ll figure out later what we actually need. (Which might be accountInfo after all, and might not be.)
|
2017-09-22 08:06:06 -07:00 |
Brent Simmons
|
6bb1deaa9e
|
Start Database unit tests with a blank file.
|
2017-09-21 18:23:42 -07:00 |
Brent Simmons
|
a7063f7a5d
|
Simplify filterIncomingArticles.
|
2017-09-21 18:14:37 -07:00 |
Brent Simmons
|
d9f0e53312
|
Switch to using DatabaseArticle over article dictionaries.
|
2017-09-21 13:25:14 -07:00 |
Brent Simmons
|
19e65dd076
|
Create DatabaseArticle to use instead of that article dictionary thing.
|
2017-09-21 12:59:08 -07:00 |
Brent Simmons
|
93db92d611
|
Use temporary article dictionaries when fetching articles.
|
2017-09-20 13:29:21 -07:00 |
Brent Simmons
|
f0eea49179
|
Start working of moving from stubArticles to article dictionaries.
|
2017-09-19 13:36:13 -07:00 |
Brent Simmons
|
8767aa3178
|
Continue work on non-optional article.status.
|
2017-09-19 08:07:06 -07:00 |
Brent Simmons
|
b28a849af6
|
Continue march toward non-optional article.status.
|
2017-09-18 22:00:35 -07:00 |
Brent Simmons
|
6db993075b
|
Make progress on making ArticleStatus a reference type and on making article.status non-optional.
|
2017-09-18 13:17:30 -07:00 |
Brent Simmons
|
ab43db7761
|
Get Data.framework building again.
|
2017-09-18 13:01:36 -07:00 |
Brent Simmons
|
622fd51d50
|
Make ArticleStatus a reference type. Make article.status non-optional.
|
2017-09-18 12:59:42 -07:00 |
Brent Simmons
|
54ca352a70
|
Continue fixing build errors.
|
2017-09-17 17:56:04 -07:00 |
Brent Simmons
|
92a60d8f06
|
Continue fixing build errors.
|
2017-09-17 17:03:58 -07:00 |
Brent Simmons
|
0336e30b0d
|
Continue to fix build errors.
|
2017-09-17 16:30:45 -07:00 |
Brent Simmons
|
6631a9c2f8
|
Continue fixing build errors.
|
2017-09-17 13:07:55 -07:00 |
Brent Simmons
|
c0ce68e64b
|
Fix some build errors.
|
2017-09-17 12:54:08 -07:00 |
Brent Simmons
|
1b391c262e
|
Continue working on build errors.
|
2017-09-17 12:34:10 -07:00 |
Brent Simmons
|
1c63e868c9
|
Delete dead code.
|
2017-09-17 12:20:59 -07:00 |
Brent Simmons
|
121fbf3c27
|
Move AccountManager to Account.framework.
|
2017-09-17 12:20:32 -07:00 |
Brent Simmons
|
e78fc0d696
|
Get Account.framework building.
|
2017-09-17 12:08:50 -07:00 |
Brent Simmons
|
306836766a
|
Fix build error in RSWeb.
|
2017-09-17 11:37:22 -07:00 |
Brent Simmons
|
4bb0325c45
|
Delete superseded code.
|
2017-09-17 11:32:58 -07:00 |
Brent Simmons
|
ba8d2c81e8
|
Create AccountDelegate. The actual implementation for each different type of Account will conform to AccountDelegate.
|
2017-09-16 15:30:26 -07:00 |
Brent Simmons
|
5715d2f221
|
Move Folder and Container from Data to Account.
|
2017-09-16 15:25:38 -07:00 |
Brent Simmons
|
1f35892791
|
Make AttachmentsTable use default implementation of save.
|
2017-09-16 13:10:03 -07:00 |
Brent Simmons
|
db757bcdb9
|
Implement marking statuses.
|
2017-09-16 11:04:29 -07:00 |
Brent Simmons
|
90c11bb687
|
Delete some unused code.
|
2017-09-16 10:38:54 -07:00 |
Brent Simmons
|
66129841a5
|
Use UnreadCountDictionary instead of UnreadCountTable.
|
2017-09-16 10:21:39 -07:00 |
Brent Simmons
|
72cfc84001
|
Cache statuses when fetching articles — since articles are fetched using a join statement with the statuses table.
|
2017-09-14 13:32:06 -07:00 |
Brent Simmons
|
80c8a848e9
|
Slightly simplify related-object adding code.
|
2017-09-13 21:52:11 -07:00 |
Brent Simmons
|
7563906f9b
|
Create Articles with attached objects.
|
2017-09-13 21:41:01 -07:00 |
Brent Simmons
|
57cf5a25d7
|
Fix some build errors.
|
2017-09-13 17:40:25 -07:00 |
Brent Simmons
|
1cfa11d032
|
Move save-using-cache code to DatabaseRelatedObjectsTable. Fix some build errors.
|
2017-09-13 13:29:52 -07:00 |
Brent Simmons
|
d284bf3757
|
Remove cache from Author since it’s now in AuthorsTable.
|
2017-09-12 22:27:36 -07:00 |
Brent Simmons
|
8f01e7e3b6
|
Fix build error.
|
2017-09-12 22:06:59 -07:00 |
Brent Simmons
|
8f12df8f5b
|
Move fetchObjectsWithIDs from AttachmentsTable to default protocol implementation since AuthorsTable needs the exact same thing.
|
2017-09-12 21:47:04 -07:00 |
Brent Simmons
|
9341515926
|
Save and fetch attachments. Use a cache.
|
2017-09-12 21:19:45 -07:00 |
Brent Simmons
|
b32c96c912
|
Prune DatabaseLookupTable some more. Get RSDatabase building again.
|
2017-09-11 21:58:22 -07:00 |
Brent Simmons
|
d77c4d763f
|
Add comment to RelatedObjectsMap.
|
2017-09-11 13:16:30 -07:00 |
Brent Simmons
|
45063d2d96
|
Remove cache from DatabaseLookupTable because it made the code too complex. If profiling says we need caching, we can add it back later.
|
2017-09-11 13:15:12 -07:00 |
Brent Simmons
|
258abab9f6
|
Rename *LookupTable data structures to *Map.
|
2017-09-11 13:11:29 -07:00 |
Brent Simmons
|
5ee58458a2
|
Make progress on related objects.
|
2017-09-11 06:46:32 -07:00 |
Brent Simmons
|
07a44f7af0
|
Fix some build errors in Database.framework.
|
2017-09-10 11:36:28 -07:00 |
Brent Simmons
|
2943fca8e3
|
Make ParsedAttachment require a URL.
|
2017-09-10 11:21:49 -07:00 |
Brent Simmons
|
9ad83e58b3
|
Make tags and attachments sets instead of arrays.
|
2017-09-10 11:18:15 -07:00 |
Brent Simmons
|
b1bd1ac75a
|
Use a Set<ParsedAuthor> instead of [ParsedAuthor] array.
|
2017-09-10 11:02:05 -07:00 |
Brent Simmons
|
9a45ab7996
|
Marked ParsedFeed.hubs a Set<ParsedHub>.
|
2017-09-10 10:53:24 -07:00 |
Brent Simmons
|
7415131e8d
|
Make ParsedFeed.items a Set<ParsedItem>. Fix some build errors in Database.framework.
|
2017-09-09 18:46:58 -07:00 |
Brent Simmons
|
7680760537
|
Fix some Database.framework build errors. Add Author cache.
|
2017-09-09 12:57:24 -07:00 |
Brent Simmons
|
4d816850d6
|
Delete some dead code.
|
2017-09-09 12:24:30 -07:00 |
Brent Simmons
|
3c47b23b8b
|
Add article.changesFrom() to get changes in an Article.
|
2017-09-09 12:09:48 -07:00 |
Brent Simmons
|
54b5100b09
|
Call saveUpdatedRelatedObjects when saving updated articles.
|
2017-09-09 11:10:15 -07:00 |
Brent Simmons
|
f3406088f3
|
Use a KeyPath to generalize code for checking for tags, attachments, and authors changes.
|
2017-09-09 11:02:02 -07:00 |
Brent Simmons
|
f40b400dd5
|
Make progress on saving updated articles.
|
2017-09-08 13:36:30 -07:00 |
Brent Simmons
|
9ee20ee270
|
Get Data.framework building again.
|
2017-09-07 21:00:30 -07:00 |
Brent Simmons
|
75603eefdc
|
Deal with fallout from moving Account to its own framework.
|
2017-09-07 20:51:51 -07:00 |
Brent Simmons
|
6a4fd38056
|
Continue mess-making. Start Account framework.
|
2017-09-07 20:41:25 -07:00 |
Brent Simmons
|
a92492eb91
|
Make further progress on saving articles from feeds.
|
2017-09-06 13:33:04 -07:00 |
Brent Simmons
|
d84c65c66f
|
Continue work on saving articles.
|
2017-09-05 08:53:45 -07:00 |
Brent Simmons
|
dadb4a4cd0
|
Continue to make a mess. Switching computers so I can sit with my laptop in the living room and wait for the Pagliacci Pizza guy to knock.
|
2017-09-04 18:29:02 -07:00 |
Brent Simmons
|
b0cb01a68e
|
Make a mess of things. Article and ArticleStatus are now immutable structs.
|
2017-09-04 17:10:02 -07:00 |
Brent Simmons
|
fb121f8a8c
|
Make more progress on saving/updating articles.
|
2017-09-02 16:08:02 -07:00 |
Brent Simmons
|
d33d8a0330
|
Make progress toward saving/updating articles.
|
2017-09-02 14:19:42 -07:00 |
Brent Simmons
|
d017536d58
|
Make AttachmentsTable, AuthorsTable, and TagsTable classes instead of structs.
|
2017-09-02 10:13:37 -07:00 |
Brent Simmons
|
b783d1c062
|
Create and use a DatabaseRelatedObjectsTable protocol, which clarifies the relationships between different table types.
|
2017-09-02 10:11:19 -07:00 |
Brent Simmons
|
a00ac9c2ac
|
Implement database.fetchUnreadCounts.
|
2017-09-01 13:31:27 -07:00 |
Brent Simmons
|
66ae62233f
|
Start work on fetching unread counts.
|
2017-08-31 13:35:48 -07:00 |
Brent Simmons
|
f3bfa8811d
|
Implement marking statuses in memory and in database.
|
2017-08-29 13:32:36 -07:00 |
Brent Simmons
|
baabf842e1
|
Progress.
|
2017-08-27 13:03:15 -07:00 |
Brent Simmons
|
3c43732e25
|
Delete some commented-out code that has been superseded.
|
2017-08-26 16:44:39 -07:00 |
Brent Simmons
|
2d1c63403d
|
Make progress fetching articles.
|
2017-08-26 15:37:15 -07:00 |
Brent Simmons
|
2cefb87f20
|
Create ArticleCache, which wraps a weak-to-weak NSMapTable. An article is cached for as long as there’s an external (outside-the-cache) reference to the article.
|
2017-08-23 21:30:28 -07:00 |
Brent Simmons
|
cdb8446c86
|
Make Articles table own the various related and lookup tables.
|
2017-08-23 13:23:12 -07:00 |
Brent Simmons
|
becbf3d7b0
|
Fix Account-Database init method.
|
2017-08-22 07:45:09 -07:00 |
Brent Simmons
|
5860f774bd
|
Make Database.framework build. Doesn’t work, but it builds.
|
2017-08-21 13:31:14 -07:00 |
Brent Simmons
|
4010011b5a
|
Progress toward getting Database.framework to build. Mostly just commented stuff out.
|
2017-08-20 22:43:46 -07:00 |
Brent Simmons
|
9ddaaf5f5d
|
Decide on preliminary public API for Database.swift. Stub-out everything.
|
2017-08-20 21:23:17 -07:00 |
Brent Simmons
|
c164c29cde
|
Make attachments use a DatabaseLookupTable.
|
2017-08-20 17:46:15 -07:00 |
Brent Simmons
|
213b1d7a6f
|
Turn ObjectCache into DatabaseObjectCache — rather than a generic with a keypath, it works with DatabaseObject, which has a known databaseID property.
|
2017-08-20 16:03:09 -07:00 |
Brent Simmons
|
2ce577e9d4
|
Make progress on Database surgery.
|
2017-08-20 15:56:58 -07:00 |
Brent Simmons
|
54cfaefd81
|
Finish DatabaseLookupTable — well, except for testing and seeing if it actually works.
|
2017-08-20 15:03:05 -07:00 |
Brent Simmons
|
dccc44c920
|
Make progress saving relationships in DatabaseLookupTable.
|
2017-08-20 12:41:33 -07:00 |
Brent Simmons
|
e76beee988
|
Progress on relationships.
|
2017-08-19 22:07:31 -07:00 |
Brent Simmons
|
2d915a890e
|
Start DatabaseLookupTableCache.
|
2017-08-19 16:30:55 -07:00 |
Brent Simmons
|
0186aeffa2
|
Added Swift compile time check setting. Fixed issue, and then Xcode stopped beachballing, which means I can move back from my laptop to my iMac. Whew.
|
2017-08-19 12:27:54 -07:00 |
Brent Simmons
|
8d5d94e1a9
|
Checking in to switch computers BECAUSE XCODE IS JUST BEACHBALLING ON MY IMAC GODDAMNIT.
|
2017-08-19 11:43:52 -07:00 |
Brent Simmons
|
e7897e21d9
|
Start ToDo.ooutline. (OmniOutliner outline.)
|
2017-08-14 13:33:50 -07:00 |
Brent Simmons
|
177667d639
|
Remove one of the caches from DatabaseLookupTable.
|
2017-08-14 13:16:52 -07:00 |
Brent Simmons
|
a4b27075a7
|
More work on relationships.
|
2017-08-14 12:54:57 -07:00 |
Brent Simmons
|
7f5277f3e0
|
Using LookupTable.
|
2017-08-08 20:10:02 -07:00 |
Brent Simmons
|
2fe6b0e2a6
|
LookupTable.
|
2017-08-07 22:09:10 -07:00 |
Brent Simmons
|
67cb2c57d7
|
Make LookupTable not a DatabaseTable.
|
2017-08-07 20:03:38 -07:00 |
Brent Simmons
|
7f573c2b14
|
Continue progress on relationships.
|
2017-08-07 20:00:46 -07:00 |
Brent Simmons
|
7edc76cd6e
|
More progress on relationships.
|
2017-08-07 19:37:31 -07:00 |
Brent Simmons
|
4223808c74
|
Make progress on relationships.
|
2017-08-06 21:46:47 -07:00 |
Brent Simmons
|
570d70d8fe
|
Progress on lookup tables.
|
2017-08-06 21:16:13 -07:00 |
Brent Simmons
|
4503f771da
|
Attach authors.
|
2017-08-06 12:37:47 -07:00 |
Brent Simmons
|
c30e7eeb99
|
Get StatusesTable compiling.
|
2017-08-05 11:12:45 -07:00 |
Brent Simmons
|
9d37d88c2f
|
Make progress on Database.framework.
|
2017-08-03 21:10:01 -07:00 |
Brent Simmons
|
2ace9ec0d2
|
Get Data.framework building again.
|
2017-08-03 19:22:54 -07:00 |
Brent Simmons
|
b756f39cbe
|
Do things. I forget what, since it was yesterday or whatever. Progress, anyway.
|
2017-07-31 18:39:42 -07:00 |
Brent Simmons
|
c76d42b42f
|
Make progress on getting StatusTable to compile.
|
2017-07-30 11:55:46 -07:00 |
Brent Simmons
|
031617809f
|
Add uniquedObjects to ObjectCache.
|
2017-07-30 11:36:27 -07:00 |
Brent Simmons
|
32ae8ab1d8
|
Create ObjectCache and start using it.
|
2017-07-30 11:22:21 -07:00 |
Brent Simmons
|
bf11f88ea7
|
Continue moving functions to DatabaseTable.
|
2017-07-29 12:50:23 -07:00 |
Brent Simmons
|
77ba434878
|
Start moving common functions to DatabaseTable.
|
2017-07-29 12:29:05 -07:00 |
Brent Simmons
|
da9a974dff
|
Give DatabaseTable an RSDatabaseQueue.
|
2017-07-29 12:13:38 -07:00 |
Brent Simmons
|
02174012ec
|
Rename Manager to Table. Conform to DatabaseTable protocol.
|
2017-07-29 12:08:10 -07:00 |