aboutsummaryrefslogtreecommitdiff
path: root/lib/SimplePie
AgeCommit message (Collapse)Author
2023-03-13Merge SimplePie 747 (#5199)Gravatar Alexandre Alapetite
* Merge SimplePie 747 #fix https://github.com/FreshRSS/FreshRSS/issues/5195 Upstream https://github.com/simplepie/simplepie/pull/747 * Syntax error
2023-03-04SimplePie use single constant for default HTTP Accept header (#5083)Gravatar Alexandre Alapetite
* Use single constant for default SimplePie HTTP Accept And add missing headers in `SimplePie_Locator::body()` Follow-up of https://github.com/simplepie/simplepie/commit/5d966b9f64a6034f89b019152d7cad9059f8819f * Update SimplePie default HTTP Accept Fix https://github.com/FreshRSS/FreshRSS/pull/5079#issuecomment-1421619176 The `*/*` breaks Mastodon content negotiation * Revert "Update SimplePie default HTTP Accept" This reverts commit 13a5a5cb3b2fa6bdd57be8b3f84dc37ed814ccf6. * Same as upstream
2023-02-03Remove -x on some files not needing it (#5065)Gravatar Alexandre Alapetite
2023-01-06Better enclosures (#4944)Gravatar Alexandre Alapetite
* Better enclosures #fix https://github.com/FreshRSS/FreshRSS/issues/4702 Improvement of https://github.com/FreshRSS/FreshRSS/pull/2898 * A few fixes * Better enclosure titles * Improve thumbnails * Implement thumbnail for HTML+XPath * Avoid duplicate enclosures #fix https://github.com/FreshRSS/FreshRSS/issues/1668 * Fix regex * Add basic support for media:credit And use <figure> for enclosures * Fix link encoding + simplify code * Fix some SimplePie bugs Encoding errors in enclosure links * Remove debugging syslog * Remove debugging syslog * SimplePie fix multiple RSS2 enclosures #fix https://github.com/FreshRSS/FreshRSS/issues/4974 * Improve thumbnails * Performance with yield Avoid generating all enclosures if not used * API keep providing enclosures inside content Clients are typically not showing the enclosures to the users (tested with News+, FeedMe, Readrops, Fluent Reader Lite) * Lint * Fix API output enclosure * Fix API content strcut * API tolerate enclosures without a type
2022-09-05SimplePie fix base (#4565)Gravatar Alexandre Alapetite
* SimplePie fix base #fix https://github.com/FreshRSS/FreshRSS/issues/4562 See `<xml:base>` example in https://datatracker.ietf.org/doc/html/rfc4287#section-1.1 First uses item `<xml:base>` if it exists, or the item own link, or the feed's base URL rules (feed URL, or Web site URL) * Minor formatting
2022-04-02SimplePie fix status_code type (#4301)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/4299
2022-03-22SimplePie fix parsing of HTTP Links (#4283)Gravatar Alexandre Alapetite
* SimplePie fix parsing of HTTP Links * https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Link * https://datatracker.ietf.org/doc/html/rfc8288 Before, SimplePie was not able to parse something like ``` Link: <https://pubsubhubbub.appspot.com>; rel="hub", <https://pubsubhubbub.superfeedr.com>; rel=hub, <https://websubhub.com/hub>; rel="hub" ```
2022-02-28Implement Web scraping "HTML + XPath" (#4220)Gravatar Alexandre Alapetite
* More PHP type hints for Fever Follow-up of https://github.com/FreshRSS/FreshRSS/pull/4201 Related to https://github.com/FreshRSS/FreshRSS/issues/4200 * Detail * Draft * Progress * More draft * Fix thumbnail PHP type hint https://github.com/FreshRSS/FreshRSS/issues/4215 * More types * A bit more * Refactor FreshRSS_Entry::fromArray * Progress * Starts to work * Categories * Fonctional * Layout update * Fix relative URLs * Cache system * Forgotten files * Remove a debug line * Automatic form validation of XPath expressions * data-leave-validation * Fix reload action * Simpler examples * Fix column type for PostgreSQL * Enforce HTTP encoding * Readme * Fix get full content * target="_blank" * gitignore * htmlspecialchars_utf8 * Implement HTML <base> And fix/revert `xml:base` support in SimplePie https://github.com/simplepie/simplepie/commit/e49c578817aa504d8d05cd7f33857aeda9d41908 * SimplePie upstream PR merged https://github.com/simplepie/simplepie/pull/723
2022-02-05Improved: Fetch articles with selector but do not delete the class ↵Gravatar maTh
attribute. (Simplepie: new method: rename_attribute) (#4175) * added to simplepie: rename_attributes * rename the class attribute * Update lib/SimplePie/SimplePie/Sanitize.php Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> * added 'id' as attribute to rename to 'data-sanitized-id' * Update lib_rss.php * source code in sync with simplepie upstream * fixed parameters Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2022-01-08Fix various typos and spelling errors in documentation, comments and code. ↵Gravatar Thomas Renes
(#4134)
2022-01-02SimplePie 1.5.8 manual upgrade (#4113)Gravatar Alexandre Alapetite
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/4011 Instead of https://github.com/FreshRSS/FreshRSS/pull/4102 * https://github.com/simplepie/simplepie/commit/bea5de77afc274dc7c36cac39cdf53de346a5b50 * https://github.com/simplepie/simplepie/commit/5aab77e105d4384c9bb1a747010f380c0506f7a2 * https://github.com/simplepie/simplepie/commit/76be63e72ea6867d9982bf9bd97ba706b196d602
2021-12-01Manual update SimplePie (#4011)Gravatar Alexandre Alapetite
* https://github.com/simplepie/simplepie/commit/417a1661b2610448bd8e1835d6d4160a0aff9a97 * https://github.com/simplepie/simplepie/commit/ebdd0643ee927edfcaf40bfd27ab23ce9c975120 * https://github.com/simplepie/simplepie/commit/941412027a46979b4f1d29e53edf91829788d781 * https://github.com/simplepie/simplepie/commit/f58a23730f01f26bbcfe02ff9266e337c241be88
2021-05-08Merge upstream SimplePie PR details (#3614)Gravatar Alexandre Alapetite
https://github.com/simplepie/simplepie/pull/681 https://github.com/simplepie/simplepie/pull/680 https://github.com/simplepie/simplepie/pull/675
2021-04-17Merge SimplePie changes (#3588)Gravatar Alexandre Alapetite
Related to https://github.com/simplepie/simplepie/pull/676 from https://github.com/FreshRSS/FreshRSS/pull/1087
2021-04-08Fix wrong SimplePie type hint (#3578)Gravatar Alexandre Alapetite
`SimplePie_Cache` also exists but is something else.
2021-03-28SimplePie fix old regression during manual merge (#3568)Gravatar Alexandre Alapetite
Bug from https://github.com/FreshRSS/FreshRSS/pull/2136 Related upstream PR https://github.com/simplepie/simplepie/pull/676
2021-03-26Suport standard HTTP 410 Gone (#3561)Gravatar Alexandre Alapetite
When a feed returns an HTTP 410 Gone, mute the corresponding feed, i.e. stop refreshing it. Example of such feed, Les Décodeurs (Libération) https://rss.liberation.fr/rss/100893/
2021-03-23SimplePie fix PHP8 uncatched error (#3547)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/pull/3546 When `loadHTML()` is given a null or empty string. ``` PHP Fatal error: Uncaught ValueError: DOMDocument::loadHTML(): Argument #1 ($source) must not be empty in /var/www/freshrss/lib/SimplePie/SimplePie/Locator.php:83 ```
2021-03-09SimplePie prevent cache pollution (#3502)Gravatar Alexandre Alapetite
* SimplePie prevent cache polution #fix https://github.com/FreshRSS/FreshRSS/pull/3367#issuecomment-766250249 #fix https://github.com/FreshRSS/FreshRSS/pull/3494#issuecomment-790113663 * Fix bug * Minor improvement * Update cache filename in FreshRSS (1/2) * cacheFilename temp * New SimplePie get_cache_filename() * Fix typos * Update lib/SimplePie/SimplePie.php Typo * Include user-agent and timeout * fix array_merge * Declaration * force_feed was lost in a commit
2021-02-20Manual update to SimplePie 1.5.6 (#3469)Gravatar Alexandre Alapetite
* Manual update to SimplePie 1.5.6 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/3206 (1.5.5) Differences https://github.com/simplepie/simplepie/compare/692e8bc19bc4aca20b57474cca2a1d234ce89d63...155cfcfacdbf7ee4e9cbb837e70564cdd6a40ac0 Related to https://github.com/FreshRSS/FreshRSS/pull/3416 , https://github.com/FreshRSS/FreshRSS/pull/3404 * Typo
2021-02-17Fix: handle very big feed (#3416)Gravatar Kiblyn11
* fix: handle big xml files which cause out of memory exceptions by working with chunks in cleanMd5 function (because of preg_replace) and parse (because of xml_parse) * Review * Fixes in error handling (case of the last call to xml_parse, case of error during fopen, break in case of XML error...) * Takes advantage of the chunking for computing the cache hash * Larger chunks of 1MB Co-authored-by: e <bokes74743@tjuln.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2021-02-06Fix return type for broken feeds (#3423)Gravatar Alexandre Alapetite
Fix a rare error when an invalid feed is forced to be added again. FreshRSS code (not upstream)
2021-01-31PHP8: SimplePie wrong use of isset (#3404)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3401 (crash with PHP 8+) `ceil()` crashes in PHP8+ in case of invalid input such as empty string. `intval()` fixes the problem with almost identical behaviour than `ceil()` in PHP7- (except for floating point values) #fix FreshRSS/FreshRSS#3401 (crash with PHP 8+) Example with feed http://podcast.hr2.de/derTag/podcast.xml ```xml <enclosure url="https://mp3podcasthr-a.akamaihd.net:443/mp3/podcast/derTag/derTag_20210129_87093232.mp3" length="" type="audio/mpeg"/> ``` `isset("")` passes and then `ceil("")` crashes due to wrong type in PHP8+: ``` Uncaught TypeError: ceil(): Argument #1 ($num) must be of type int|float, string given in ./SimplePie/SimplePie/Item.php:2871 ``` Upstream patch https://github.com/simplepie/simplepie/pull/670
2020-10-03Update SimplePie (PHP8) (#3206)Gravatar Alexandre Alapetite
Contributes to https://github.com/FreshRSS/FreshRSS/issues/3082 Includes https://github.com/FreshRSS/FreshRSS/pull/3180 Differences: https://github.com/simplepie/simplepie/compare/aaad78e6da098e14bec4fec552b3a2dbca7a2d45...692e8bc19bc4aca20b57474cca2a1d234ce89d63
2020-09-17SimplePie: Fix HTTP 301 permanent redirection (#3180)Gravatar Alexandre Alapetite
* SimplePie: Fix HTTP 301 permanent redirection When adding feeds it worked fine, but detecting permanent redirects for existing feeds was sometimes broken (only when PHP open_basedir was not set). Indeed, using the built-in CURLOPT_FOLLOWLOCATION instead of the manual method in SimplePie hides the list of HTTP redirects along the way, and prevents the distinction of e.g. 301 vs. 302 redirects. This patch disables CURLOPT_FOLLOWLOCATION in SimplePie, and fixes the manual method at the same time. The use of CURLOPT_FOLLOWLOCATION was nevertheless not systematic (only when open_basedir was not set), so now there is only one logic independent of open_basedir. I will send a PR upstream to SimplePie. How to test: pick a feed with 301 redirection such as HTTP to HTTPS, e.g. http://ing.dk/rss/term/341 Manually change back to previous address (to simulate a feed that is changing address) Refresh feed and observe whether the 301 redirect is obeyed. * Wrong blank
2020-04-01Minor SimplePie merge (#2870)Gravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/pull/2852 was merged upstream https://github.com/simplepie/simplepie/pull/643 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/2814
2020-03-28SimplePie use distint cache for force_feed (#2852)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/2524 In general, we should avoid using the same cache for feeds that are fetched with distinct parameters / settings.. PR upstream to SimplePie https://github.com/simplepie/simplepie/pull/643
2020-02-29SimplePie 1.5.4 (#2814)Gravatar Alexandre Alapetite
https://github.com/simplepie/simplepie/compare/1.5.3..a72e1dfafe7870affdae3edf0d9a494e4fa31bc6 Follow up of the update to 1.5.3 https://github.com/FreshRSS/FreshRSS/pull/2702 Requires PHP 5.6+ https://github.com/FreshRSS/FreshRSS/pull/2527#issuecomment-592952451
2019-12-06Manual update to SimplePie 1.5.3 (#2702)Gravatar Craig Andrews
2019-04-06SimplePie 604 (#2350)Gravatar Alexandre Alapetite
Cherry-pick https://github.com/simplepie/simplepie/pull/604
2018-11-18Manual update to SimplePie 1.5.2 (#2136)Gravatar Alexandre Alapetite
2018-06-06Support for media: tags (#1920)Gravatar Alexandre Alapetite
* Support for media: tags https://github.com/FreshRSS/FreshRSS/issues/944 E.g. YouTube * Fix for medium attribute * Changelog 944 https://github.com/FreshRSS/FreshRSS/issues/944 https://github.com/FreshRSS/FreshRSS/pull/1920 * enclosure styling * Compatibility old enclosure content
2018-05-31Suppress XML error during conversion attempt (#1909)Gravatar Alexandre Alapetite
Using LIBXML_NOERROR. Seems to be necessary for newer PHP versions because the at sign does not suppress warnings. In a FreshRSS-specific SimplePie section. Warning: DOMDocument::loadXML(): Namespace prefix media on content is not defined in Entity, line: 42 in /..../FreshRSS/lib/SimplePie/SimplePie/Parser.php on line 144
2018-05-22SimplePie fix for Atom feeds using namespace for type (#1893)Gravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1892
2018-05-20Strip credentials from HTTP Referer (#1891)Gravatar Alexandre Alapetite
https://github.com/simplepie/simplepie/blob/0edf39018709c0d66cfa6d9b972907bb92461efb/library/SimplePie/File.php#L109 Candidate for pull-request upstream to SimplePie
2017-05-28Manual merge upstream SimplePieGravatar Alexandre Alapetite
2017-05-09Add syslog_enabled in one more file create callGravatar Jonas Östanbäck
2017-05-09Add syslog_enabled when creating new simplepie_fileGravatar Jonas Östanbäck
2017-03-26SimplePie light manual updateGravatar Alexandre Alapetite
2016-10-20Add support for UTF-8 BOM in SimplePie feed_or_html()Gravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1336
2016-09-25Fix SimplePie autodiscovery for text/xml HTML pagesGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1264
2016-08-28SimplePie better messageGravatar Alexandre Alapetite
2016-08-28SimplePie error message XML PCREGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1227
2016-04-30SimplePie trimGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1142
2016-03-01SimplePie force HTTPS simplifie codeGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1083 https://github.com/FreshRSS/FreshRSS/pull/1087
2016-03-01SimplePie force HTTPS bug with sub-domainsGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1083
2016-02-29SimplePie force HTTPS for enclosuresGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1083 https://github.com/FreshRSS/FreshRSS/pull/1087
2016-02-29SimplePie HTTPS updated commentsGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1083
2016-02-29HTTPS search tree: simplify codeGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1083
2016-02-28SimplePie Force HTTPS custom list domainsGravatar Alexandre Alapetite
Load from data/force-https.default.txt and data/force-https.txt Efficient tree structure to search the domains https://github.com/FreshRSS/FreshRSS/pull/1087