Upstream changes
- Merge branch 'weblate-integration' into 'master'
- Update translation files
- rebase translations
- also deal with The Oatmeal posts, not just comics
- add af_comics filter for The Oatmeal
- Merge branch 'bugfix/feedparser-rdf-type' into 'master'
- Add+use FeedParser::FEED_UNKNOWN
- Fix RDF feed support in FeedParser.
- API: allow catchup for search results (bumps api level to 22)
- Merge branch 'feature/php8-str-funcs' into 'master'
- Use PHP 8 'str_' functions.
- Merge branch 'feature/php8-match' into 'master'
- Use match expressions in some places.
- allow nullable password in auto_create_user for backwards compatibility
- Merge branch 'getfiltertree-eldritch-horrors' into 'master'
- Merge branch 'feature/php8-union-types' into 'master'
- make filter search properly case-insensitive
- Use native union types in most places.
- simplify resulting tree root object
- getfiltertree: switch to ORM and simplify code
- collapse actions summary list in filter tree if 'toggle rule display' is disabled, remove label-specific icon display, simplify markup
- Merge branch 'filter-fixes' into 'master'
- fix text-muted being set to default text foreground color in light mode, adjust styling of filter actions list
- show cumulative score adjustment (if any) and up to 3 actions total in filter tree
- update usage of deprecated function
- bump minimum required php version to 8.0 & remove some deprecated code
- use select_many() without _expr
- adjust indent
- switch filters _get_rules_list() to ORM
- pass resulting action description through gettext
- set type hint for $action_descriptions
- fix _get_name failing on filters without any rules because of wrong type of JOIN
- get filter action descriptions on pref_filters class init instead of doing it all the time, use ORM in _get_action_name
- fix action params not hiding in edit action dialog if param-less action was initially selected
- pref_filters - refactor _get_name to use ORM, show cumulative score in tree filter description