Brent Simmons
a82cee29b8
Make RSParsedArticle calculate a unique ID only when there’s no guid. Otherwise use the guid. Do not attempt to create a globally-unique ID — that’s out of scope for the parser and should be (and is) handled at the app’s model layer.
2017-12-19 10:59:24 -08:00
Brent Simmons
7ccb531f0c
Parse Atom enclosures. However, I couldn’t find any in the wild, so there are no tests yet.
2017-12-19 10:17:09 -08:00
Brent Simmons
fb9a1d610c
Parse enclosures in RSS.
2017-12-18 15:35:50 -08:00
Brent Simmons
de883ce082
Define string constants in JSONFeedParser rather than using literals all over the place. Also: remove a no-longer-needed do/try/catch.
2017-12-10 13:56:40 -08:00
Brent Simmons
cc3f77571b
Make JSONTypes public. Add JSONUtilities.
2017-12-10 13:53:00 -08:00
Brent Simmons
3d72ba4b44
Add case for detecting < https://www.natashatherobot.com/feed/ > as an RSS feed.
...
It’s missing the opening <rss> tag, but it has enough other distinct markers that we can detect it as RSS.
Add two tests to make sure it’s detected and that the parser handles it.
2017-12-07 20:05:58 -08:00
Brent Simmons
179c889d9b
Fix typo.
2017-12-02 21:35:02 -08:00
Brent Simmons
f99cd162bb
Add support for RSS 1.0 (RDF) feeds. Added so we can handle Pinboard feeds. (Not sure if anyone else is still using RSS 1.0.) Fix #231 .
2017-12-02 16:37:24 -08:00
Brent Simmons
f28d921aff
Avoid skipping parsing Dr. Drang’s JSON Feed, which can’t be detected that it’s a JSON Feed with only partial data, since it has the version element at the end. Add a test for this.
2017-12-01 13:19:30 -08:00
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
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
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
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
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
ca081c41a9
Decode HTML entities in the JSON Feed parser for content_html. Fix #176 .
2017-11-18 12:41:15 -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
2bb0cdb0ba
Fix build failures in OPMLTests. Tests all still pass in RSParser.
2017-11-04 10:25:13 -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
649f62207f
Fix OPML importing.
2017-10-21 21:00:21 -07:00
Brent Simmons
ca611623aa
Simplify Container and its function implementations.
2017-10-07 21:41:21 -07:00
Brent Simmons
199dd0e247
Fix bug loading feeds from disk.
2017-10-05 21:08:27 -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
b28a849af6
Continue march toward non-optional article.status.
2017-09-18 22:00:35 -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
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
1e856b7924
Convert RSParser to Swift 4. Now using Xcode 9. Buid still broken.
2017-07-08 12:21:29 -07:00
Brent Simmons
d47c60e6de
Work on getting Database.framework to build.
2017-07-03 11:20:14 -07:00
Brent Simmons
944f05c71e
Commit major surgery but leave it unfinished. Everything is broken.
2017-07-01 17:22:19 -07:00
Brent Simmons
483e00b2da
Add more tests to RSParser.
2017-06-27 06:56:03 -07:00
Brent Simmons
c32e1a3933
Fix bug finding channel element in RSS-in-JSON parser.
2017-06-26 19:51:01 -07:00
Brent Simmons
49a5e58ff2
Move feedType function to FeedType.swift. Add a few more cases to FeedParserTypeTests.
2017-06-26 19:37:30 -07:00
Brent Simmons
3bb9887513
Add HTML tests to RSParser.
2017-06-25 18:11:38 -07:00
Brent Simmons
a53a0c4697
Add RSDateParserTests to RSParser.
2017-06-25 17:46:48 -07:00
Brent Simmons
67279b6796
Turn on more errors/warnings for RSParser, including treat-warnings-as-errors.
2017-06-25 17:42:30 -07:00
Brent Simmons
53574284dc
Add OPMLTests to RSParser.
2017-06-25 17:34:48 -07:00
Brent Simmons
c56f887ab4
Start adding RSParser tests.
2017-06-25 17:15:47 -07:00
Brent Simmons
b939d91da0
Get RSParser.framework building again.
2017-06-25 16:40:29 -07:00
Brent Simmons
e9c19e427a
Make it build. Add a README.
2017-06-25 16:32:07 -07:00