returnClientError => throwClientException
returnServerError => throwServerException
New convenience function: throwRateLimitException
Old functions are kept but deprecated.
* Fix PHP 8.4 deprecation
Implicitly marking parameter as nullable is deprecated, the explicit nullable type must be used instead
* [github workflow] Add additional php versions
libcurl-impersonate was not being used properly, as the code was
overriding the headers set by it to prevent detection.
- update the libcurl-impersonate to an actively managed lexiforest
fork
- impersonate Chrome 131
- move the defaultHttpHeaders to http.php, where it belongs
- only set defaultHttpHeaders if curl-impersonate is not detected
- make useragent ini setting optional and disabled by default
- add necessary documentation updates
* FeedExpander: Remove tailing content in XML
- Move preprocessing code into overridable preprocessXml()
- Auto-remove trailing data after root xml node
* FeedExpander: Add PR reference with use case
* FeedExpander: Code linting
* [FeedExpander] Keep content at end of document for now
Will add back later if more sites have the same issue
* [FeedExpander] prepareXml: Add type hints
* [CentreFranceBridge] Add bridge
* [CentreFranceBridge] Fix bridge
* [CentreFranceBridge] Fix bridge
* [CentreFranceBridge] Improved icon choice
* [CentreFranceBridge] Fetch additional data from articles
* [CentreFranceBridge] New parameter to allow client to control how many articles to fetch
* [CentreFranceBridge] Improve bridge name based on existing parameters
* [CentreFranceBridge] Fixed some edge cases
* refactor: reorder
* fix
---------
Co-authored-by: Dag <me@dvikan.no>
* refactor XPathAbstract, keep all functionality intact
* fix linter errors
* further simplify code
* set default value for raw item content to true, avoiding escaping of html tags in feed item contents by default