Files
docker-configs/freshRSS/data/cache/ede07d211341f46bbd207580aaafeec1fc5ab52e.spc

1090 lines
185 KiB
Plaintext
Executable File

a:6:{s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"feed";a:1:{i:0;a:6:{s:4:"data";s:46:"
";s:7:"attribs";a:1:{s:36:"http://www.w3.org/XML/1998/namespace";a:1:{s:4:"lang";s:5:"en-US";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:5:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:65:"tag:github.com,2008:https://github.com/FreshRSS/FreshRSS/releases";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:2:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:4:"type";s:9:"text/html";s:3:"rel";s:9:"alternate";s:4:"href";s:45:"https://github.com/FreshRSS/FreshRSS/releases";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}i:1;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:4:"type";s:20:"application/atom+xml";s:3:"rel";s:4:"self";s:4:"href";s:50:"https://github.com/FreshRSS/FreshRSS/releases.atom";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:27:"Release notes from FreshRSS";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-12-30T16:17:00Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"entry";a:10:{i:0;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.23.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-12-31T13:32:24Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.23.1";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.23.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:3662:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.23.1">Milestone</a></li>
</ul>
<p>This is a bug-fix release for the <a href="https://github.com/FreshRSS/FreshRSS/releases/tag/1.23.0">1.23.0 release</a>, addressing several regressions.</p>
<p>This release has been made by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/andris155/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/andris155">@andris155</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/math-GH/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/math-GH">@math-GH</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yzqzss/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yzqzss">@yzqzss</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zhzy0077/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zhzy0077">@zhzy0077</a></p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.23.1/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Bug fixing
<ul>
<li>Fix crash regression with the option <em>Max number of tags shown</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5978" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5978/hovercard">#5978</a></li>
<li>Fix crash regression when enabling extensions defined by old FreshRSS installations <a href="https://github.com/FreshRSS/FreshRSS/pull/5979" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5979/hovercard">#5979</a></li>
<li>Fix crash regression during export when using MySQL <a href="https://github.com/FreshRSS/FreshRSS/pull/5988" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5988/hovercard">#5988</a></li>
<li>More robust assignment of categories to feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/5986" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5986/hovercard">#5986</a></li>
<li>Fix <code>base_url</code> being cleared when saving settings <a href="https://github.com/FreshRSS/FreshRSS/pull/5992" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5992/hovercard">#5992</a></li>
<li>Fix unwanted button in UI of update page <a href="https://github.com/FreshRSS/FreshRSS/pull/5999" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5999/hovercard">#5999</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Exclude more folders with <code>.dockerignore</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5996" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5996/hovercard">#5996</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Improve simplified Chinese <a href="https://github.com/FreshRSS/FreshRSS/pull/5977" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5977/hovercard">#5977</a></li>
<li>Improve Hungarian <a href="https://github.com/FreshRSS/FreshRSS/pull/6000" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/6000/hovercard">#6000</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:1;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.23.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-12-31T13:32:14Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.23.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.23.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:17099:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.23.0">Milestone</a></li>
<li><a href="https://github.com/FreshRSS/FreshRSS/discussions/5963" data-hovercard-type="discussion" data-hovercard-url="/FreshRSS/FreshRSS/discussions/5963/hovercard">Discussion</a> 🎄</li>
</ul>
<p>A few highlights ✨:</p>
<ul>
<li>New <em>Important feeds</em> group in the main view, with corresponding new priority level for feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/5782" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5782/hovercard">#5782</a>
<ul>
<li>Entries from important feeds are not marked as read during <em>scroll</em>, during <em>focus</em>, nor during <em>Mark all as read</em></li>
</ul>
</li>
<li>Add filter actions (auto mark as read) at category level and at global levels <a href="https://github.com/FreshRSS/FreshRSS/pull/5942" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5942/hovercard">#5942</a></li>
<li>Increase SQL fields length to maximum possible <a href="https://github.com/FreshRSS/FreshRSS/pull/5788" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5788/hovercard">#5788</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5570" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5570/hovercard">#5570</a></li>
<li>Many bug fixes</li>
</ul>
<p>Breaking changes 💥:</p>
<ul>
<li>Require PHP 7.4+</li>
<li>Soft require Apache 2.4+ (but repair minimal compatibility with Apache 2.2)</li>
<li>Use GitHub Actions to build Docker images, offering architectures <code>amd64</code>, <code>arm32v7</code>, <code>arm64v8</code> with automatic detection <a href="https://github.com/FreshRSS/FreshRSS/pull/5808" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5808/hovercard">#5808</a>
<ul>
<li>So no <code>-arm</code> suffix anymore</li>
</ul>
</li>
<li>Upgraded extensions require FreshRSS 1.23.0+ <a href="https://github.com/FreshRSS/Extensions/pull/181" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/Extensions/pull/181/hovercard">Extensions#181</a></li>
</ul>
<p>This release has been made by several contributors: <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ColonelMoutarde/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ColonelMoutarde">@ColonelMoutarde</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FireFingers21/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FireFingers21">@FireFingers21</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Frenzie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Frenzie">@Frenzie</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/KasimirCash/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/KasimirCash">@KasimirCash</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/andris155/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/andris155">@andris155</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/b-reich/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/b-reich">@b-reich</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/foux/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/foux">@foux</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jaden/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jaden">@jaden</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jan-vandenberg/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jan-vandenberg">@jan-vandenberg</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/joestump/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/joestump">@joestump</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jtracey/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jtracey">@jtracey</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mark-monteiro/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mark-monteiro">@mark-monteiro</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/martinrotter/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/martinrotter">@martinrotter</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/math-GH/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/math-GH">@math-GH</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/passbe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/passbe">@passbe</a></p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.23.0/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Features
<ul>
<li>New <em>Important feeds</em> group in the main view, with corresponding new priority level for feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/5782" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5782/hovercard">#5782</a>
<ul>
<li>Entries from important feeds are not marked as read during <em>scroll</em>, during <em>focus</em>, nor during <em>Mark all as read</em></li>
</ul>
</li>
<li>Add filter actions (auto mark as read) at category level and at global levels <a href="https://github.com/FreshRSS/FreshRSS/pull/5942" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5942/hovercard">#5942</a></li>
<li>Improve reliability of <em>Max number of articles to keep unread</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5905" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5905/hovercard">#5905</a></li>
<li>New option to mark entries as read when focused from keyboard shortcut <a href="https://github.com/FreshRSS/FreshRSS/pull/5812" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5812/hovercard">5812</a></li>
<li>New display option to hide <em>My labels</em> in article footers <a href="https://github.com/FreshRSS/FreshRSS/pull/5884" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5884/hovercard">#5884</a></li>
<li>Add support for more thumbnail types in feeds enclosures <a href="https://github.com/FreshRSS/FreshRSS/pull/5806" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5806/hovercard">#5806</a></li>
<li>Support for favicons with non-absolute paths <a href="https://github.com/FreshRSS/FreshRSS/pull/5839" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5839/hovercard">#5839</a></li>
<li>Increase SQL (<code>VARCHAR</code>) text fields length to maximum possible <a href="https://github.com/FreshRSS/FreshRSS/pull/5788" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5788/hovercard">#5788</a></li>
<li>Increase SQL date fields to 64-bit to be ready for year 2038+ <a href="https://github.com/FreshRSS/FreshRSS/pull/5570" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5570/hovercard">#5570</a></li>
</ul>
</li>
<li>Compatibility
<ul>
<li>Require PHP 7.4+, and implement <em>typed properties</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5720" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5720/hovercard">#5720</a></li>
<li>Require Apache 2.4+ (but repair minimal compatibility with Apache 2.2) <a href="https://github.com/FreshRSS/FreshRSS/pull/5791" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5791/hovercard">#5791</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5804" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5804/hovercard">#5804</a></li>
</ul>
</li>
<li>Bug fixing
<ul>
<li>Fix regression in Docker <code>CRON_MIN</code> if any environment variable contains a single quote <a href="https://github.com/FreshRSS/FreshRSS/pull/5795" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5795/hovercard">#5795</a></li>
<li>Improve filtering of cron environment variables <a href="https://github.com/FreshRSS/FreshRSS/pull/5898" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5898/hovercard">#5898</a></li>
<li>Fix the <code>TRUSTED_PROXY</code> environment variable used in combination with <em>trusted sources</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5853" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5853/hovercard">#5853</a></li>
<li>Fix regression in marking as read if an identical title already exists <a href="https://github.com/FreshRSS/FreshRSS/pull/5937" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5937/hovercard">#5937</a></li>
<li>Fix JavaScript regression in label dropdown <a href="https://github.com/FreshRSS/FreshRSS/pull/5785" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5785/hovercard">#5785</a></li>
<li>Fix regression when renaming a label <a href="https://github.com/FreshRSS/FreshRSS/pull/5842" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5842/hovercard">#5842</a></li>
<li>Fix API for adding feed with a title <a href="https://github.com/FreshRSS/FreshRSS/pull/5868" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5868/hovercard">#5868</a></li>
<li>Fix regression in UI of update page <a href="https://github.com/FreshRSS/FreshRSS/pull/5802" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5802/hovercard">#5802</a></li>
<li>Fix XPath encoding <a href="https://github.com/FreshRSS/FreshRSS/pull/5912" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5912/hovercard">#5912</a></li>
<li>Fix notifications, in particular during login <a href="https://github.com/FreshRSS/FreshRSS/pull/5959" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5959/hovercard">#5959</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Use GitHub Actions to build Docker images, offering architectures <code>amd64</code>, <code>arm32v7</code>, <code>arm64v8</code> with automatic detection <a href="https://github.com/FreshRSS/FreshRSS/pull/5808" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5808/hovercard">#5808</a></li>
<li>Docker alternative image updated to Alpine 3.19 with PHP 8.2.13 and Apache 2.4.58 <a href="https://github.com/FreshRSS/FreshRSS/pull/5383" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5383/hovercard">#5383</a></li>
</ul>
</li>
<li>Extensions
<ul>
<li>Upgrade extensions code to PHP 7.4+ <a href="https://github.com/FreshRSS/FreshRSS/pull/5901" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5901/hovercard">#5901</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5957" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5957/hovercard">#5957</a></li>
<li>Breaking change: upgraded extensions require FreshRSS 1.23.0+ <a href="https://github.com/FreshRSS/Extensions/pull/181" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/Extensions/pull/181/hovercard">Extensions#181</a></li>
<li>Pass FreshRSS version to JavaScript client side for extensions <a href="https://github.com/FreshRSS/FreshRSS/pull/5902" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5902/hovercard">#5902</a></li>
<li>Add GitHub Actions and PHPStan for automatic testing of the Extensions repository <a href="https://github.com/FreshRSS/Extensions/pull/185" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/Extensions/pull/185/hovercard">Extensions#185</a></li>
</ul>
</li>
<li>API
<ul>
<li>Improve handling of new lines in enclosure descriptions (e.g., YouTube video descriptions) <a href="https://github.com/FreshRSS/FreshRSS/pull/5859" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5859/hovercard">#5859</a></li>
</ul>
</li>
<li>Security
<ul>
<li>Avoid printing exceptions in favicons <a href="https://github.com/FreshRSS/FreshRSS/pull/5867" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5867/hovercard">#5867</a></li>
<li>Remove unneeded execution permissions on some files <a href="https://github.com/FreshRSS/FreshRSS/pull/5831" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5831/hovercard">#5831</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Ensure that enough articles are loaded on window resize <a href="https://github.com/FreshRSS/FreshRSS/pull/5815" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5815/hovercard">#5815</a></li>
<li>Improve <em>Nord</em> theme <a href="https://github.com/FreshRSS/FreshRSS/pull/5885" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5885/hovercard">#5885</a></li>
<li>Do not show message <em>Add some feeds</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5827" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5827/hovercard">#5827</a></li>
<li>Various UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/5886" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5886/hovercard">#5886</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Fix font priority for languages using Han characters <a href="https://github.com/FreshRSS/FreshRSS/pull/5930" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5930/hovercard">#5930</a></li>
<li>Improve Dutch <a href="https://github.com/FreshRSS/FreshRSS/pull/5796" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5796/hovercard">#5796</a></li>
<li>Improve Hungarian <a href="https://github.com/FreshRSS/FreshRSS/pull/5918" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5918/hovercard">#5918</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Increase PHPStan from Level 7 to <a href="https://phpstan.org/user-guide/rule-levels" rel="nofollow">Level 8</a> <a href="https://github.com/FreshRSS/FreshRSS/pull/5946" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5946/hovercard">#5946</a></li>
<li>Compatibility PHP 8.2+ for running automated tests <a href="https://github.com/FreshRSS/FreshRSS/pull/5826" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5826/hovercard">#5826</a></li>
<li>Use PHP <a href="https://php.net/language.types.declarations#language.types.declarations.strict" rel="nofollow"><code>declare(strict_types=1);</code></a> <a href="https://github.com/FreshRSS/FreshRSS/pull/5830" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5830/hovercard">#5830</a></li>
<li>Better stack trace for SQL errors <a href="https://github.com/FreshRSS/FreshRSS/pull/5916" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5916/hovercard">#5916</a></li>
<li>Code improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/5511" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5511/hovercard">#5511</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5945" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5945/hovercard">#5945</a></li>
<li>Update dev dependencies <a href="https://github.com/FreshRSS/FreshRSS/pull/5787" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5787/hovercard">#5787</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:2;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.22.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-10-30T18:54:34Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.22.1";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.22.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:6407:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.22.1">Milestone</a></li>
</ul>
<p>This release contains mostly some bug fixes for the recent <a href="https://github.com/FreshRSS/FreshRSS/releases/tag/1.22.0">1.22.0</a>.<br>
This version 1.22.x is also the last to support PHP 7.2 before requiring PHP 7.4+.</p>
<p>A few highlights ✨:</p>
<ul>
<li>Fix regression in extensions translations (i18n)</li>
<li>Better identification of proxied client IP</li>
<li>Better support of environment variables in K8s setups</li>
<li>And more!</li>
</ul>
<p>This release has been made by several contributors: <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Frenzie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Frenzie">@Frenzie</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MHketbi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MHketbi">@MHketbi</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/XtremeOwnageDotCom/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/XtremeOwnageDotCom">@XtremeOwnageDotCom</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/math-GH/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/math-GH">@math-GH</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mossroy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mossroy">@mossroy</a></p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.22.1/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Bug fixing
<ul>
<li>Fix regression in i18n English fallback for extensions <a href="https://github.com/FreshRSS/FreshRSS/pull/5752" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5752/hovercard">#5752</a></li>
<li>Fix identification of thumbnails <a href="https://github.com/FreshRSS/FreshRSS/pull/5750" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5750/hovercard">#5750</a></li>
<li>OpenID Connect compatibility with colon <code>:</code> in <code>OIDC_SCOPES</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5753" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5753/hovercard">#5753</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5764" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5764/hovercard">#5764</a></li>
<li>Avoid a warning on non-numeric <code>TRUSTED_PROXY</code> environment variable <a href="https://github.com/FreshRSS/FreshRSS/pull/5733" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5733/hovercard">#5733</a></li>
<li>Better identification of proxied client IP with <code>RemoteIPInternalProxy</code> in Apache <a href="https://github.com/FreshRSS/FreshRSS/pull/5740" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5740/hovercard">#5740</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Export all environment variables to cron (to allow custom environment variables such as for Kubernetes) <a href="https://github.com/FreshRSS/FreshRSS/pull/5772" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5772/hovercard">#5772</a></li>
<li>Docker: Upgraded Alpine dev image <code>freshrss/freshrss:newest</code> to PHP 8.3 <a href="https://github.com/FreshRSS/FreshRSS/pull/5764" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5764/hovercard">#5764</a></li>
</ul>
</li>
<li>Compatibility
<ul>
<li>Test compatibility with PHP 8.3 <a href="https://github.com/FreshRSS/FreshRSS/pull/5764" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5764/hovercard">#5764</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Improve <em>Origine</em> theme (dark mode) <a href="https://github.com/FreshRSS/FreshRSS/pull/5745" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5745/hovercard">#5745</a></li>
<li>Improve <em>Nord</em> theme <a href="https://github.com/FreshRSS/FreshRSS/pull/5754" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5754/hovercard">#5754</a></li>
<li>Various UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/5737" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5737/hovercard">#5737</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5765" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5765/hovercard">#5765</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5773" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5773/hovercard">#5773</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5774" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5774/hovercard">#5774</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Better i18n string for feed submenu for mark as read <a href="https://github.com/FreshRSS/FreshRSS/pull/5762" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5762/hovercard">#5762</a></li>
<li>Improve Dutch <a href="https://github.com/FreshRSS/FreshRSS/pull/5759" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5759/hovercard">#5759</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Move to GitHub Actions for our GitHub Pages <a href="https://github.com/FreshRSS/FreshRSS/pull/5681" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5681/hovercard">#5681</a></li>
<li>Update dev dependencies and use <code>stylelint-stylistic</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5766" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5766/hovercard">#5766</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:3;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.22.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-10-27T21:32:51Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.22.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.22.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:47565:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.22.0">Milestone</a></li>
</ul>
<p>In this release, besides adding some initial support for OpenID Connect, the focus has been on increasing the quality rather than adding new features (which will have more focus again in the next release).<br>
This version 1.22.x is also the last to support PHP 7.2 before requiring PHP 7.4+.</p>
<p>A few highlights ✨:</p>
<ul>
<li>Add support for OpenID Connect (only in our Debian-based Docker image for <code>x86_64</code>, not Alpine, and not ARM) through <a href="https://github.com/OpenIDC/mod_auth_openidc"><code>libapache2-mod-auth-openidc</code></a>. See <a href="https://freshrss.github.io/FreshRSS/en/admins/16_OpenID-Connect.html" rel="nofollow">our documentation</a></li>
<li>Rework trusted proxies</li>
<li>Improve scaling with many feeds and long processes, reduce database locks</li>
<li>Fix many bugs and regressions</li>
<li>Improve themes <em>Origine</em> (also with automatic dark mode), <em>Nord</em>, etc.</li>
<li>Several UI / UX improvements</li>
<li>New languages Hungarian, Latvian, Persian</li>
<li>Docker default image updated to Debian 12 Bookworm with PHP 8.2</li>
<li>Increase our code base from PHPStan level 5 to <a href="https://phpstan.org/user-guide/rule-levels" rel="nofollow">level 7</a></li>
<li>And more!</li>
</ul>
<p>This release has been made by several contributors: <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alwaysin/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alwaysin">@Alwaysin</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ColonelMoutarde/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ColonelMoutarde">@ColonelMoutarde</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Exerra/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Exerra">@Exerra</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/FromTheMoon85/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/FromTheMoon85">@FromTheMoon85</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/LleanaRuv/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/LleanaRuv">@LleanaRuv</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Marjani/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Marjani">@Marjani</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/NaeiKinDus/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/NaeiKinDus">@NaeiKinDus</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Rufubi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Rufubi">@Rufubi</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/V-E-O/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/V-E-O">@V-E-O</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aaronschif/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aaronschif">@aaronschif</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/acbgbca/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/acbgbca">@acbgbca</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aledeg/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aledeg">@aledeg</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/andris155/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/andris155">@andris155</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/becdetat/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/becdetat">@becdetat</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/belidzs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/belidzs">@belidzs</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kemayo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kemayo">@kemayo</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kgraefe/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kgraefe">@kgraefe</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marienfressinaud/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marienfressinaud">@marienfressinaud</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/math-GH/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/math-GH">@math-GH</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/msdlr/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/msdlr">@msdlr</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/obrenckle/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/obrenckle">@obrenckle</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/otaconix/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/otaconix">@otaconix</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/robertdahlem/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/robertdahlem">@robertdahlem</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sad270/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sad270">@sad270</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/samc1213/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/samc1213">@samc1213</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/squaregoldfish/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/squaregoldfish">@squaregoldfish</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/vrachnis/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/vrachnis">@vrachnis</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/witchcraze/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/witchcraze">@witchcraze</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yubiuser/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yubiuser">@yubiuser</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zhaofengli/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zhaofengli">@zhaofengli</a></p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.22.0/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Features
<ul>
<li>Add support for OpenID Connect (only in our default Debian-based Docker image for <code>x86_64</code>, not Alpine) through <a href="https://github.com/OpenIDC/mod_auth_openidc"><code>libapache2-mod-auth-openidc</code></a><br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5351" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5351/hovercard">#5351</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5463" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5463/hovercard">#5463</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5481" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5481/hovercard">#5481</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5523" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5523/hovercard">#5523</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5646" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5646/hovercard">#5646</a></li>
<li>Allow sharing in anonymous mode <a href="https://github.com/FreshRSS/FreshRSS/pull/5261" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5261/hovercard">#5261</a></li>
<li>Support Unix socket for MySQL / MariaDB <a href="https://github.com/FreshRSS/FreshRSS/pull/5166" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5166/hovercard">#5166</a></li>
<li>Use proxy settings also for fetching favicons <a href="https://github.com/FreshRSS/FreshRSS/pull/5421" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5421/hovercard">#5421</a></li>
<li>Add mutual exclusion semaphore for better scaling of actualize script <a href="https://github.com/FreshRSS/FreshRSS/pull/5235" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5235/hovercard">#5235</a></li>
<li>Better reporting of XPath failures <a href="https://github.com/FreshRSS/FreshRSS/pull/5317" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5317/hovercard">#5317</a></li>
<li>Add sharing with Buffer.com <a href="https://github.com/FreshRSS/FreshRSS/pull/5286" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5286/hovercard">#5286</a></li>
<li>Add sharing with Omnivore <a href="https://github.com/FreshRSS/FreshRSS/pull/5477" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5477/hovercard">#5477</a></li>
<li>Improve sharing with Linkding <a href="https://github.com/FreshRSS/FreshRSS/pull/5433" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5433/hovercard">#5433</a></li>
<li>Do not automatically update feeds after import, to better support multiple imports <a href="https://github.com/FreshRSS/FreshRSS/pull/5629" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5629/hovercard">#5629</a></li>
<li>Compatibility for servers disabling <code>set_time_limit()</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5675" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5675/hovercard">#5675</a></li>
<li>New configuration constant <code>CLEANCACHE_HOURS</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5144" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5144/hovercard">#5144</a></li>
</ul>
</li>
<li>Bug fixing
<ul>
<li>Fix cache refresh <a href="https://github.com/FreshRSS/FreshRSS/pull/5562" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5562/hovercard">#5562</a></li>
<li>Fix and improvement of hash of articles using <em>load full content</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5576" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5576/hovercard">#5576</a></li>
<li>Fix case of falsy GUIDs <a href="https://github.com/FreshRSS/FreshRSS/pull/5412" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5412/hovercard">#5412</a></li>
<li>Fix and improve JSON export/import <a href="https://github.com/FreshRSS/FreshRSS/pull/5332" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5332/hovercard">#5332</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5626" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5626/hovercard">#5626</a></li>
<li>Fix enclosures in RSS output <a href="https://github.com/FreshRSS/FreshRSS/pull/5540" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5540/hovercard">#5540</a></li>
<li>Fix parenthesis escaping bug in searches <a href="https://github.com/FreshRSS/FreshRSS/pull/5633" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5633/hovercard">#5633</a></li>
<li>Fix regression in Fever API enclosures <a href="https://github.com/FreshRSS/FreshRSS/pull/5214" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5214/hovercard">#5214</a></li>
<li>Fix regression in Fever API mark-all-as-read <a href="https://github.com/FreshRSS/FreshRSS/pull/5185" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5185/hovercard">#5185</a></li>
<li>Fix regression in OPML export of single feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/5238" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5238/hovercard">#5238</a></li>
<li>Fix warning during OPML export with empty attributes <a href="https://github.com/FreshRSS/FreshRSS/pull/5559" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5559/hovercard">#5559</a></li>
<li>Fix extensions in <em>actualize script</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5243" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5243/hovercard">#5243</a></li>
<li>Fix link to configuration (system or user) for extensions <a href="https://github.com/FreshRSS/FreshRSS/pull/5394" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5394/hovercard">#5394</a></li>
<li>Fix <em>mark as read upon gone</em> option in some conditions <a href="https://github.com/FreshRSS/FreshRSS/pull/5315" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5315/hovercard">#5315</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5382" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5382/hovercard">#5382</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5404" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5404/hovercard">#5404</a></li>
<li>Fix <em>mark selection as unread</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5367" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5367/hovercard">#5367</a></li>
<li>Fix warning in articles repartition statistics <a href="https://github.com/FreshRSS/FreshRSS/pull/5228" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5228/hovercard">#5228</a></li>
<li>Fix count entries with some databases <a href="https://github.com/FreshRSS/FreshRSS/pull/5368" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5368/hovercard">#5368</a></li>
<li>Fix MariaDB database size calculation <a href="https://github.com/FreshRSS/FreshRSS/pull/5655" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5655/hovercard">#5655</a></li>
<li>Fix feed position attribute <a href="https://github.com/FreshRSS/FreshRSS/pull/5203" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5203/hovercard">#5203</a></li>
<li>Fix warning when tagging entries <a href="https://github.com/FreshRSS/FreshRSS/pull/5221" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5221/hovercard">#5221</a></li>
<li>Fix labels in anonymous mode <a href="https://github.com/FreshRSS/FreshRSS/pull/5650" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5650/hovercard">#5650</a></li>
<li>Fix bug not allowing strings for tags in XPath <a href="https://github.com/FreshRSS/FreshRSS/pull/5653" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5653/hovercard">#5653</a></li>
<li>Fix get and order when saving user query <a href="https://github.com/FreshRSS/FreshRSS/pull/5515" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5515/hovercard">#5515</a></li>
<li>Fix search using user queries <a href="https://github.com/FreshRSS/FreshRSS/pull/5669" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5669/hovercard">#5669</a></li>
<li>Fix regression of access to logs even when auto-update is disabled <a href="https://github.com/FreshRSS/FreshRSS/pull/5577" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5577/hovercard">#5577</a></li>
<li>Fix access to Apache logs from Dev Container <a href="https://github.com/FreshRSS/FreshRSS/pull/5660" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5660/hovercard">#5660</a></li>
<li>Fix malformed HTTP header in case of internal fatal error <a href="https://github.com/FreshRSS/FreshRSS/pull/5699" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5699/hovercard">#5699</a></li>
<li>Fix rare exception for HTML notifications <a href="https://github.com/FreshRSS/FreshRSS/pull/5690" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5690/hovercard">#5690</a></li>
</ul>
</li>
<li>UI
<ul>
<li>New option to display website name and/or favicon of articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4969" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4969/hovercard">#4969</a></li>
<li>Support <code>&lt;meta name="theme-color" .../&gt;</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5105" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5105/hovercard">#5105</a></li>
<li>Config user settings in slider <a href="https://github.com/FreshRSS/FreshRSS/pull/5094" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5094/hovercard">#5094</a></li>
<li>Improve theme selector <a href="https://github.com/FreshRSS/FreshRSS/pull/5281" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5281/hovercard">#5281</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5688" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5688/hovercard">#5688</a></li>
<li>Improve <em>share to clipboard</em> with animation and icon <a href="https://github.com/FreshRSS/FreshRSS/pull/5295" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5295/hovercard">#5295</a></li>
<li>Allow <em>share to clipboard</em> even for localhost and without HTTPS <a href="https://github.com/FreshRSS/FreshRSS/pull/5606" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5606/hovercard">#5606</a></li>
<li>Feedback when tag with same name as category already exists <a href="https://github.com/FreshRSS/FreshRSS/pull/5181" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5181/hovercard">#5181</a></li>
<li>Show <em>base URL</em> in configuration <a href="https://github.com/FreshRSS/FreshRSS/pull/5656" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5656/hovercard">#5656</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5657" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5657/hovercard">#5657</a></li>
<li>Show <em>Terms of Service</em> in config menu <a href="https://github.com/FreshRSS/FreshRSS/pull/5215" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5215/hovercard">#5215</a></li>
<li>Show <em>Terms of Service</em> in footer <a href="https://github.com/FreshRSS/FreshRSS/pull/5222" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5222/hovercard">#5222</a></li>
<li>Improve <em>about</em> page <a href="https://github.com/FreshRSS/FreshRSS/pull/5192" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5192/hovercard">#5192</a></li>
<li>Improve <em>update</em> page <a href="https://github.com/FreshRSS/FreshRSS/pull/5420" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5420/hovercard">#5420</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5636" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5636/hovercard">#5636</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5647" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5647/hovercard">#5647</a></li>
<li>Improve Step 1 of install process <a href="https://github.com/FreshRSS/FreshRSS/pull/5350" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5350/hovercard">#5350</a></li>
<li>Improve <em>Global view</em> on mobile <a href="https://github.com/FreshRSS/FreshRSS/pull/5297" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5297/hovercard">#5297</a></li>
<li>Reduce network overhead for Global view <a href="https://github.com/FreshRSS/FreshRSS/pull/5496" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5496/hovercard">#5496</a></li>
<li>Fix <em>Global view</em>: Stick the article to the top when opened <a href="https://github.com/FreshRSS/FreshRSS/pull/5153" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5153/hovercard">#5153</a></li>
<li>Fix configuration views that are using a slider <a href="https://github.com/FreshRSS/FreshRSS/pull/5469" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5469/hovercard">#5469</a></li>
<li>Fix highlight next/prev article while using shortcuts <a href="https://github.com/FreshRSS/FreshRSS/pull/5211" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5211/hovercard">#5211</a></li>
<li>Fix regression in statistics column name <em>% of total</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5232" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5232/hovercard">#5232</a></li>
<li>Fix macOS feed title meta-click behaviour <a href="https://github.com/FreshRSS/FreshRSS/pull/5492" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5492/hovercard">#5492</a></li>
<li>Improve themes
<ul>
<li><em>Origine</em> (dark mode) <a href="https://github.com/FreshRSS/FreshRSS/pull/5229" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5229/hovercard">#5229</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5288" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5288/hovercard">#5288</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5437" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5437/hovercard">#5437</a></li>
<li><em>Alternative Dark</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5206" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5206/hovercard">#5206</a></li>
<li><em>Ansum</em> / <em>Mapco</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5453" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5453/hovercard">#5453</a></li>
<li><em>Dark</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5280" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5280/hovercard">#5280</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5439" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5439/hovercard">#5439</a></li>
<li><em>Flat</em> (un-deprecated) <a href="https://github.com/FreshRSS/FreshRSS/pull/5316" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5316/hovercard">#5316</a></li>
<li><em>Nord</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5689" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5689/hovercard">#5689</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5719" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5719/hovercard">#5719</a></li>
</ul>
</li>
<li>Delete previously deprecated themes: <em>BlueLagoon</em>, <em>Screwdriver</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5374" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5374/hovercard">#5374</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5694" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5694/hovercard">#5694</a></li>
<li>Various UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/5147" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5147/hovercard">#5147</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5216" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5216/hovercard">#5216</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5303" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5303/hovercard">#5303</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5304" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5304/hovercard">#5304</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5397" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5397/hovercard">#5397</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5398" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5398/hovercard">#5398</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5400" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5400/hovercard">#5400</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5603" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5603/hovercard">#5603</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5695" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5695/hovercard">#5695</a></li>
</ul>
</li>
<li>Security
<ul>
<li>Rework trusted proxies (especially with Docker) <a href="https://github.com/FreshRSS/FreshRSS/pull/5549" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5549/hovercard">#5549</a></li>
<li>Automatic trusted sources during install <a href="https://github.com/FreshRSS/FreshRSS/pull/5358" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5358/hovercard">#5358</a></li>
<li>Show remote IP address in case of HTTP Basic Auth error <a href="https://github.com/FreshRSS/FreshRSS/pull/5314" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5314/hovercard">#5314</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Docker listen on all interfaces by default, including IPv6 <a href="https://github.com/FreshRSS/FreshRSS/pull/5180" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5180/hovercard">#5180</a></li>
<li>Docker default image updated to Debian 12 Bookworm with PHP 8.2.7 and Apache 2.4.57 <a href="https://github.com/FreshRSS/FreshRSS/pull/5461" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5461/hovercard">#5461</a></li>
<li>Docker alternative image updated to Alpine 3.18 with PHP 8.1.23 and Apache 2.4.58 <a href="https://github.com/FreshRSS/FreshRSS/pull/5383" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5383/hovercard">#5383</a></li>
<li>Docker quiet Apache <code>a2enmod</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5464" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5464/hovercard">#5464</a></li>
<li>Docker: Add <code>DATA_PATH</code> to cron env <a href="https://github.com/FreshRSS/FreshRSS/pull/5531" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5531/hovercard">#5531</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Fix i18n for automatic dark mode configuration <a href="https://github.com/FreshRSS/FreshRSS/pull/5168" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5168/hovercard">#5168</a></li>
<li>Clarify that maximum number to keep is per feed <a href="https://github.com/FreshRSS/FreshRSS/pull/5458" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5458/hovercard">#5458</a></li>
<li>Add Hungarian <a href="https://github.com/FreshRSS/FreshRSS/pull/5589" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5589/hovercard">#5589</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5593" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5593/hovercard">#5593</a></li>
<li>Add Latvian <a href="https://github.com/FreshRSS/FreshRSS/pull/5254" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5254/hovercard">#5254</a></li>
<li>Add Persian <a href="https://github.com/FreshRSS/FreshRSS/pull/5571" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5571/hovercard">#5571</a></li>
<li>Remove unneeded quotes in feed warning <a href="https://github.com/FreshRSS/FreshRSS/pull/5480" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5480/hovercard">#5480</a></li>
<li>Improve German <a href="https://github.com/FreshRSS/FreshRSS/pull/5171" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5171/hovercard">#5171</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5468" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5468/hovercard">#5468</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5640" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5640/hovercard">#5640</a></li>
<li>Improve Spanish <a href="https://github.com/FreshRSS/FreshRSS/pull/5408" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5408/hovercard">#5408</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5436" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5436/hovercard">#5436</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5609" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5609/hovercard">#5609</a></li>
</ul>
</li>
<li>Extensions
<ul>
<li>Fix fallback to English for extensions <a href="https://github.com/FreshRSS/FreshRSS/pull/5426" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5426/hovercard">#5426</a></li>
<li>Allow deep-link to extension configuration <a href="https://github.com/FreshRSS/FreshRSS/pull/5449" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5449/hovercard">#5449</a></li>
<li>New extension hook <code>entry_auto_read</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5505" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5505/hovercard">#5505</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5561" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5561/hovercard">#5561</a></li>
<li>Simplify extension method <a href="https://github.com/FreshRSS/FreshRSS/pull/5234" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5234/hovercard">#5234</a></li>
<li>Remove obsolete core extensions <em>Google Group</em> and <em>Tumblr</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5457" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5457/hovercard">#5457</a></li>
</ul>
</li>
<li>SimplePie
<ul>
<li>Fix <code>error_reporting</code> for PHP 8.1+ <a href="https://github.com/FreshRSS/FreshRSS/pull/5199" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5199/hovercard">#5199</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Reduce database locks <a href="https://github.com/FreshRSS/FreshRSS/pull/5576" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5576/hovercard">#5576</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5625" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5625/hovercard">#5625</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5648" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5648/hovercard">#5648</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5649" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5649/hovercard">#5649</a></li>
<li>Improve MySQL / MariaDB performance for updating cached SQL values <a href="https://github.com/FreshRSS/FreshRSS/pull/5648" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5648/hovercard">#5648</a></li>
<li>Increase time limit import OPML <a href="https://github.com/FreshRSS/FreshRSS/pull/5231" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5231/hovercard">#5231</a></li>
<li>Save SQL attributes as native Unicode <a href="https://github.com/FreshRSS/FreshRSS/pull/5371" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5371/hovercard">#5371</a></li>
<li>Remove old SQL auto-updates <a href="https://github.com/FreshRSS/FreshRSS/pull/5625" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5625/hovercard">#5625</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5649" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5649/hovercard">#5649</a></li>
<li>Improve Dev Container (update to Alpine 3.18, use <code>DATA_PATH</code> environment variable) <a href="https://github.com/FreshRSS/FreshRSS/pull/5423" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5423/hovercard">#5423</a></li>
<li>Update <code>lib_opml</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5188" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5188/hovercard">#5188</a></li>
<li>Update <code>lib/http-conditional</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5277" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5277/hovercard">#5277</a></li>
<li>Update <em>PHPMailer</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/5389" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5389/hovercard">#5389</a></li>
<li>Use typed access to request parameters <a href="https://github.com/FreshRSS/FreshRSS/pull/5267" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5267/hovercard">#5267</a></li>
<li>Typed view model classes <a href="https://github.com/FreshRSS/FreshRSS/pull/5380" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5380/hovercard">#5380</a></li>
<li>Remove <code>ConfigurationSetter</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5251" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5251/hovercard">#5251</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5580" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5580/hovercard">#5580</a></li>
<li>Ignore <code>./data.back/</code> in <code>.gitignore</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5359" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5359/hovercard">#5359</a></li>
<li>Composer dev command compatibility with macOS <a href="https://github.com/FreshRSS/FreshRSS/pull/5379" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5379/hovercard">#5379</a></li>
<li>Code improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/5089" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5089/hovercard">#5089</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5212" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5212/hovercard">#5212</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5213" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5213/hovercard">#5213</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5362" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5362/hovercard">#5362</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5470" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5470/hovercard">#5470</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5501" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5501/hovercard">#5501</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5504" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5504/hovercard">#5504</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5667" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5667/hovercard">#5667</a></li>
<li>Increase PHPStan from Level 5 to <a href="https://phpstan.org/user-guide/rule-levels" rel="nofollow">level 7</a> <a href="https://github.com/FreshRSS/FreshRSS/issues/4112" data-hovercard-type="issue" data-hovercard-url="/FreshRSS/FreshRSS/issues/4112/hovercard">#4112</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5064" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5064/hovercard">#5064</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5087" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5087/hovercard">#5087</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5090" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5090/hovercard">#5090</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5106" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5106/hovercard">#5106</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5108" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5108/hovercard">#5108</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5230" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5230/hovercard">#5230</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5239" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5239/hovercard">#5239</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5258" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5258/hovercard">#5258</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5263" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5263/hovercard">#5263</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5264" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5264/hovercard">#5264</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5269" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5269/hovercard">#5269</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5272" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5272/hovercard">#5272</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5275" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5275/hovercard">#5275</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5279" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5279/hovercard">#5279</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5282" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5282/hovercard">#5282</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5283" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5283/hovercard">#5283</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5289" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5289/hovercard">#5289</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5290" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5290/hovercard">#5290</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5291" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5291/hovercard">#5291</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5292" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5292/hovercard">#5292</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5299" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5299/hovercard">#5299</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5305" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5305/hovercard">#5305</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5307" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5307/hovercard">#5307</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5309" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5309/hovercard">#5309</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5313" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5313/hovercard">#5313</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5318" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5318/hovercard">#5318</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5319" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5319/hovercard">#5319</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5327" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5327/hovercard">#5327</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5328" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5328/hovercard">#5328</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5352" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5352/hovercard">#5352</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5353" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5353/hovercard">#5353</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5354" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5354/hovercard">#5354</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5361" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5361/hovercard">#5361</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5366" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5366/hovercard">#5366</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5370" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5370/hovercard">#5370</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5373" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5373/hovercard">#5373</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5376" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5376/hovercard">#5376</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5384" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5384/hovercard">#5384</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5388" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5388/hovercard">#5388</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5393" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5393/hovercard">#5393</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5400" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5400/hovercard">#5400</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5406" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5406/hovercard">#5406</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5429" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5429/hovercard">#5429</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5431" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5431/hovercard">#5431</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5434" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5434/hovercard">#5434</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5578" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5578/hovercard">#5578</a></li>
<li>Update dev dependencies <a href="https://github.com/FreshRSS/FreshRSS/pull/5336" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5336/hovercard">#5336</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5339" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5339/hovercard">#5339</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5478" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5478/hovercard">#5478</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5513" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5513/hovercard">#5513</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5541" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5541/hovercard">#5541</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5691" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5691/hovercard">#5691</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5693" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5693/hovercard">#5693</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:4;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.21.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2023-03-08T14:31:02Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.21.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.21.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:26007:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.21.0">Milestone</a></li>
</ul>
<p>A few highlights ✨:</p>
<ul>
<li>Require PHP 7.2+ (drop support for PHP 7.0 and 7.1) <a href="https://github.com/FreshRSS/FreshRSS/pull/4848" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4848/hovercard">#4848</a></li>
<li>New <em>XML+XPath</em> mode for fetching XML documents when there is no RSS/ATOM feed <a href="https://github.com/FreshRSS/FreshRSS/pull/5076" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5076/hovercard">#5076</a></li>
<li>Better support of feed enclosures (image / audio / video attachments) <a href="https://github.com/FreshRSS/FreshRSS/pull/4944" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4944/hovercard">#4944</a></li>
<li>User-defined time-zone <a href="https://github.com/FreshRSS/FreshRSS/pull/4906" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4906/hovercard">#4906</a></li>
<li>New CLI script <code>cli/sensitive-log.sh</code> to help e.g. Apache clear logs for sensitive information such as credentials <a href="https://github.com/FreshRSS/FreshRSS/pull/5001" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5001/hovercard">#5001</a>
<ul>
<li>See also <a href="https://github.com/FreshRSS/FreshRSS/security/advisories/GHSA-8vvv-jxg6-8578">CVE-2023-22481</a></li>
</ul>
</li>
<li>Mark some themes as tentatively deprecated: <em>BlueLagoon</em>, <em>Flat</em>, <em>Screwdriver</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4807" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4807/hovercard">#4807</a>
<ul>
<li>🙋 <a href="https://github.com/FreshRSS/FreshRSS/issues/4295" data-hovercard-type="issue" data-hovercard-url="/FreshRSS/FreshRSS/issues/4295/hovercard">Reach out</a> if you disagree, especially if you are interested in helping maintaining one of them</li>
</ul>
</li>
<li>Many UI improvements</li>
</ul>
<p>This release has been made by several new contributors <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/axeleroy/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/axeleroy">@axeleroy</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hippothomas/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hippothomas">@hippothomas</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mincerafter42/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mincerafter42">@mincerafter42</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sad270/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sad270">@sad270</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/zhzy0077/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/zhzy0077">@zhzy0077</a>, in addition to our regular contributors <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ColonelMoutarde/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ColonelMoutarde">@ColonelMoutarde</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Frenzie/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Frenzie">@Frenzie</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/myuki/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/myuki">@myuki</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aledeg/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aledeg">@aledeg</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/marienfressinaud/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/marienfressinaud">@marienfressinaud</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/math-GH/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/math-GH">@math-GH</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/miicat/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/miicat">@miicat</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nicofrand/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nicofrand">@nicofrand</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/yzqzss/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/yzqzss">@yzqzss</a> ... Thank you!</p>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.20.2...1.21.0">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.21.0/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Features
<ul>
<li>New <em>XML+XPath</em> mode for fetching XML documents when there is no RSS/ATOM feed <a href="https://github.com/FreshRSS/FreshRSS/pull/5076" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5076/hovercard">#5076</a></li>
<li>Better support of feed enclosures (image / audio / video attachments) <a href="https://github.com/FreshRSS/FreshRSS/pull/4944" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4944/hovercard">#4944</a></li>
<li>User-defined time-zone <a href="https://github.com/FreshRSS/FreshRSS/pull/4906" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4906/hovercard">#4906</a></li>
<li>Improve HTML+XPath mode by allowing HTML content <a href="https://github.com/FreshRSS/FreshRSS/pull/4878" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4878/hovercard">#4878</a></li>
<li>Search only on full tag names and not on parts of tag names <a href="https://github.com/FreshRSS/FreshRSS/pull/4882" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4882/hovercard">#4882</a></li>
<li>Allows searching for parentheses with <code>\(</code> or <code>\)</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4989" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4989/hovercard">#4989</a></li>
<li>Firefox-compatible sharing service for <code>mailto:</code> links for webmail services <a href="https://github.com/FreshRSS/FreshRSS/pull/4680" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4680/hovercard">#4680</a></li>
<li>Add sharing to <a href="https://archive.org/" rel="nofollow">archive.org</a> <a href="https://github.com/FreshRSS/FreshRSS/pull/5096" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5096/hovercard">#5096</a></li>
<li>Increase max HTTP timeout to 15 minutes <a href="https://github.com/FreshRSS/FreshRSS/pull/5074" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5074/hovercard">#5074</a></li>
</ul>
</li>
<li>Compatibility
<ul>
<li>Require PHP 7.2+ (drop support for PHP 7.0 and 7.1) <a href="https://github.com/FreshRSS/FreshRSS/pull/4848" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4848/hovercard">#4848</a></li>
<li>Workaround disabled <code>openlog()</code> or <code>syslog()</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/5054" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5054/hovercard">#5054</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Docker default image (Debian 11 Bullseye) updated to PHP 7.4.33</li>
<li>Docker: alternative image updated to Alpine 3.17 with PHP 8.1.16 and Apache 2.4.55 <a href="https://github.com/FreshRSS/FreshRSS/pull/4886" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4886/hovercard">#4886</a></li>
<li>More uniform time-zone behaviour <a href="https://github.com/FreshRSS/FreshRSS/pull/4903" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4903/hovercard">#4903</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4905" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4905/hovercard">#4905</a></li>
<li>New CLI script <code>cli/sensitive-log.sh</code> to help e.g. Apache clear logs for sensitive information such as credentials <a href="https://github.com/FreshRSS/FreshRSS/pull/5001" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5001/hovercard">#5001</a></li>
<li>New CLI script <code>cli/access-permissions.sh</code> to help apply file permissions correctly <a href="https://github.com/FreshRSS/FreshRSS/pull/5062" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5062/hovercard">#5062</a></li>
<li>Improve file permissions on <code>./extensions/</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4956" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4956/hovercard">#4956</a></li>
<li>Update Apache mime type <code>font/woff</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4894" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4894/hovercard">#4894</a></li>
<li>Re-added a git <code>latest</code> branch (instead of a tag) to track the latest FreshRSS stable releases <a href="https://github.com/FreshRSS/FreshRSS/pull/5148" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5148/hovercard">#5148</a></li>
</ul>
</li>
<li>Bug fixing
<ul>
<li>Fix allow disabling curl proxy for specific feed, when proxy is defined globally <a href="https://github.com/FreshRSS/FreshRSS/pull/5082" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5082/hovercard">#5082</a></li>
<li>NFS-friendly <code>is_writable()</code> checks <a href="https://github.com/FreshRSS/FreshRSS/pull/4780" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4780/hovercard">#4780</a></li>
<li>Fix error handling when updating feed URL <a href="https://github.com/FreshRSS/FreshRSS/pull/5039" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5039/hovercard">#5039</a></li>
<li>Fix feed favicon after editing feed URL <a href="https://github.com/FreshRSS/FreshRSS/pull/4975" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4975/hovercard">#4975</a></li>
<li>Fix allow <kbd>Ctrl</kbd>+<kbd>Click</kbd> to open <em>Manage feeds</em> in new tab <a href="https://github.com/FreshRSS/FreshRSS/pull/4980" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4980/hovercard">#4980</a></li>
<li>Fix empty window opened when pressing space after page load <a href="https://github.com/FreshRSS/FreshRSS/pull/5146" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5146/hovercard">#5146</a></li>
<li>Fix keep current view when searching <a href="https://github.com/FreshRSS/FreshRSS/pull/4981" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4981/hovercard">#4981</a></li>
<li>Fix mobile view: scroll main area again after closing slider <a href="https://github.com/FreshRSS/FreshRSS/pull/5092" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5092/hovercard">#5092</a></li>
<li>Fix change confirmation when leaving sharing service config <a href="https://github.com/FreshRSS/FreshRSS/pull/5098" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5098/hovercard">#5098</a></li>
<li>Fix sharing to Lemmy <a href="https://github.com/FreshRSS/FreshRSS/pull/5020" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5020/hovercard">#5020</a></li>
</ul>
</li>
<li>Security
<ul>
<li>API avoid logging passwords <a href="https://github.com/FreshRSS/FreshRSS/security/advisories/GHSA-8vvv-jxg6-8578">CVE-2023-22481</a></li>
<li>Remove execution rights on some files not needing it <a href="https://github.com/FreshRSS/FreshRSS/pull/5065" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5065/hovercard">#5065</a></li>
<li>More robust application of file access permissions <a href="https://github.com/FreshRSS/FreshRSS/pull/5062" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5062/hovercard">#5062</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Improve search box <a href="https://github.com/FreshRSS/FreshRSS/pull/4994" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4994/hovercard">#4994</a></li>
<li>Improve navigation menu structure <a href="https://github.com/FreshRSS/FreshRSS/pull/4937" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4937/hovercard">#4937</a></li>
<li>More consistent sorting of feeds alphabetically <a href="https://github.com/FreshRSS/FreshRSS/pull/4841" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4841/hovercard">#4841</a></li>
<li>Improve reader view on mobile screen <a href="https://github.com/FreshRSS/FreshRSS/pull/4868" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4868/hovercard">#4868</a></li>
<li>Various UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4681" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4681/hovercard">#4681</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4794" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4794/hovercard">#4794</a><br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4800" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4800/hovercard">#4800</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4850" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4850/hovercard">#4850</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4865" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4865/hovercard">#4865</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4872" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4872/hovercard">#4872</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4874" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4874/hovercard">#4874</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4889" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4889/hovercard">#4889</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4890" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4890/hovercard">#4890</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4891" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4891/hovercard">#4891</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4897" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4897/hovercard">#4897</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4899" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4899/hovercard">#4899</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4910" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4910/hovercard">#4910</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4923" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4923/hovercard">#4923</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4927" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4927/hovercard">#4927</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4960" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4960/hovercard">#4960</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4985" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4985/hovercard">#4985</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4998" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4998/hovercard">#4998</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5034" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5034/hovercard">#5034</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5040" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5040/hovercard">#5040</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5055" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5055/hovercard">#5055</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5058" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5058/hovercard">#5058</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5097" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5097/hovercard">#5097</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5100" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5100/hovercard">#5100</a></li>
</ul>
</li>
<li>Themes
<ul>
<li>Dark mode for <em>Origine</em> and <em>Origine compact</em> themes <a href="https://github.com/FreshRSS/FreshRSS/pull/4843" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4843/hovercard">#4843</a></li>
<li>Improve <em>Ansum</em> and <em>Mapco</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4938" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4938/hovercard">#4938</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4959" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4959/hovercard">#4959</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4967" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4967/hovercard">#4967</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4983" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4983/hovercard">#4983</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4995" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4995/hovercard">#4995</a></li>
<li>Improve <em>Dark pink</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4881" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4881/hovercard">#4881</a></li>
<li>Improve <em>Nord theme</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4892" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4892/hovercard">#4892</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4979" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4979/hovercard">#4979</a></li>
<li>Improve <em>Origine</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4893" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4893/hovercard">#4893</a></li>
<li>Improve <em>Origine compact</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4873" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4873/hovercard">#4873</a></li>
<li>Improve <em>Pafat</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4909" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4909/hovercard">#4909</a></li>
<li>Improve <em>Swage</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4875" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4875/hovercard">#4875</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4922" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4922/hovercard">#4922</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4936" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4936/hovercard">#4936</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5029" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5029/hovercard">#5029</a></li>
<li>Mark some themes as tentatively deprecated: <em>BlueLagoon</em>, <em>Flat</em>, <em>Screwdriver</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4807" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4807/hovercard">#4807</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Improve Chinese <a href="https://github.com/FreshRSS/FreshRSS/pull/4853" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4853/hovercard">#4853</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4856" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4856/hovercard">#4856</a></li>
</ul>
</li>
<li>SimplePie
<ul>
<li>No URL Decode for enclosure links <a href="https://github.com/simplepie/simplepie/pull/768" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/768/hovercard">#768</a></li>
<li>Fix case of multiple RSS2.0 enclosures <a href="https://github.com/simplepie/simplepie/pull/769" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/769/hovercard">#769</a></li>
<li>Sanitize thumbnail URL <a href="https://github.com/simplepie/simplepie/pull/770" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/770/hovercard">#770</a></li>
<li>Use single constant for default HTTP Accept header <a href="https://github.com/simplepie/simplepie/pull/784" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/784/hovercard">#784</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Increase max feed URL length and drop unicity in database <a href="https://github.com/FreshRSS/FreshRSS/pull/5038" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5038/hovercard">#5038</a></li>
<li>New support of <a href="https://containers.dev" rel="nofollow">Development Containers</a> / <a href="https://github.com/features/codespaces">GitHub Codespaces</a> to ease development <a href="https://github.com/FreshRSS/FreshRSS/pull/4859" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4859/hovercard">#4859</a></li>
<li>Update library <code>lib_opml</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4403" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4403/hovercard">#4403</a></li>
<li>Code improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4232" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4232/hovercard">#4232</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4651" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4651/hovercard">#4651</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5024" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5024/hovercard">#5024</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5025" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5025/hovercard">#5025</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5028" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5028/hovercard">#5028</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5032" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5032/hovercard">#5032</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5158" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5158/hovercard">#5158</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5045" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5045/hovercard">#5045</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/5049" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5049/hovercard">#5049</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5063" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5063/hovercard">#5063</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5084" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5084/hovercard">#5084</a></li>
<li>Update dev dependencies <a href="https://github.com/FreshRSS/FreshRSS/pull/4993" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4993/hovercard">#4993</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5006" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5006/hovercard">#5006</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/5109" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/5109/hovercard">#5109</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:5;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.20.2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2022-12-09T22:05:59Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.20.2";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.20.2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:1677:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.20.2">Milestone</a></li>
</ul>
<p>This is a security release for a regression since FreshRSS 1.18.0.</p>
<p>A few highlights ✨:</p>
<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/security/advisories/GHSA-hvrj-5fwj-p7v6">CVE-2022-23497</a> Fix security vulnerability in <code>ext.php</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4928" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4928/hovercard">#4928</a> reported by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/c3l3si4n/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/c3l3si4n">@c3l3si4n</a></li>
</ul>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.20.1...1.20.2">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.20.2/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Fix security vulnerability in <code>ext.php</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4928" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4928/hovercard">#4928</a> fixed by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Alkarex/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Alkarex">@Alkarex</a></li>
<li>Apache <code>TraceEnable Off</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4863" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4863/hovercard">#4863</a></li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:6;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.20.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2022-11-14T13:26:10Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.20.1";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.20.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:17743:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.20.1">Milestone</a></li>
<li><a href="https://github.com/FreshRSS/FreshRSS/discussions/4837" data-hovercard-type="discussion" data-hovercard-url="/FreshRSS/FreshRSS/discussions/4837/hovercard">Discussion</a></li>
</ul>
<p>A few highlights ✨:</p>
<ul>
<li>Focusing mostly on bug-fixes of 1.20.0</li>
<li>Several UI / themes improvements</li>
<li>Improved and new translations (Greek, Indonesian)</li>
</ul>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.20.0...1.20.1">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.20.1/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Features
<ul>
<li>Add support for custom XPath date/time format <a href="https://github.com/FreshRSS/FreshRSS/pull/4703" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4703/hovercard">#4703</a></li>
<li>Add default redirect when authenticating <a href="https://github.com/FreshRSS/FreshRSS/pull/4778" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4778/hovercard">#4778</a></li>
<li>Force default user before rendering login page <a href="https://github.com/FreshRSS/FreshRSS/pull/4620" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4620/hovercard">#4620</a></li>
</ul>
</li>
<li>API
<ul>
<li>Minor Google Reader API improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4763" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4763/hovercard">#4763</a></li>
</ul>
</li>
<li>Bug fixing
<ul>
<li>Fix SQL transaction rollbacks during auto-update <a href="https://github.com/FreshRSS/FreshRSS/pull/4622" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4622/hovercard">#4622</a></li>
<li>Fix <code>opcache</code> bug during Web update <a href="https://github.com/FreshRSS/FreshRSS/pull/4629" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4629/hovercard">#4629</a>, <a href="https://github.com/FreshRSS/update.freshrss.org/pull/4" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/update.freshrss.org/pull/4/hovercard">update.freshrss.org#4</a></li>
<li>Fix export bug <a href="https://github.com/FreshRSS/FreshRSS/pull/4822" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4822/hovercard">#4822</a></li>
<li>Fix OPML import of special feed attributes <a href="https://github.com/FreshRSS/FreshRSS/pull/4708" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4708/hovercard">#4708</a></li>
<li>Fix JavaScript bug with remembering opened categories <a href="https://github.com/FreshRSS/FreshRSS/pull/4827" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4827/hovercard">#4827</a></li>
<li>Fix <code>curlopt</code> options for HTML+XPath <a href="https://github.com/FreshRSS/FreshRSS/pull/4759" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4759/hovercard">#4759</a></li>
<li>Fix charset bug for HTML+XPath <a href="https://github.com/FreshRSS/FreshRSS/pull/4623" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4623/hovercard">#4623</a></li>
<li>Fix HTML-encoding of CSS selectors <a href="https://github.com/FreshRSS/FreshRSS/pull/4707" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4707/hovercard">#4707</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4823" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4823/hovercard">#4823</a></li>
<li>Fix some broken author links <a href="https://github.com/FreshRSS/FreshRSS/pull/4743" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4743/hovercard">#4743</a></li>
<li>Fix show settings page after adding new feed <a href="https://github.com/FreshRSS/FreshRSS/pull/4631" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4631/hovercard">#4631</a></li>
<li>Fix login page when user does not exist <a href="https://github.com/FreshRSS/FreshRSS/pull/4621" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4621/hovercard">#4621</a></li>
<li>Fix feed manage link on stats page <a href="https://github.com/FreshRSS/FreshRSS/pull/4768" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4768/hovercard">#4768</a></li>
<li>Fix minor layout bugs <a href="https://github.com/FreshRSS/FreshRSS/pull/4830" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4830/hovercard">#4830</a></li>
<li>Fix minor UI bugs with Safari <a href="https://github.com/FreshRSS/FreshRSS/pull/4643" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4643/hovercard">#4643</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Change some default settings related to marking articles as read <a href="https://github.com/FreshRSS/FreshRSS/pull/4736" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4736/hovercard">#4736</a></li>
<li>Improve scrollbar when slider is open <a href="https://github.com/FreshRSS/FreshRSS/pull/4692" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4692/hovercard">#4692</a></li>
<li>Improve Subscription Management: Show the category position number <a href="https://github.com/FreshRSS/FreshRSS/pull/4679" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4679/hovercard">#4679</a></li>
<li>Improve Reader view: Mark article as read while scrolling <a href="https://github.com/FreshRSS/FreshRSS/pull/4652" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4652/hovercard">#4652</a></li>
<li>Improve sharing / integration page <a href="https://github.com/FreshRSS/FreshRSS/pull/4774" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4774/hovercard">#4774</a></li>
<li>Improve article summary text cut <a href="https://github.com/FreshRSS/FreshRSS/pull/4666" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4666/hovercard">#4666</a></li>
<li>Improve HTML semantics for some boxes <a href="https://github.com/FreshRSS/FreshRSS/pull/4665" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4665/hovercard">#4665</a></li>
<li>Change dynamic OPML icon <a href="https://github.com/FreshRSS/FreshRSS/pull/4673" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4673/hovercard">#4673</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4810" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4810/hovercard">#4810</a></li>
<li>Improve box layout for global view <a href="https://github.com/FreshRSS/FreshRSS/pull/4791" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4791/hovercard">#4791</a></li>
<li>Improve logs layout <a href="https://github.com/FreshRSS/FreshRSS/pull/4594" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4594/hovercard">#4594</a></li>
<li>Improve Feed configuration: number of articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4625" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4625/hovercard">#4625</a></li>
<li>Improve drop-down menus <a href="https://github.com/FreshRSS/FreshRSS/pull/4597" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4597/hovercard">#4597</a></li>
<li>Show tile with explanation when hovering empty feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/4617" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4617/hovercard">#4617</a></li>
<li>Added bottom nav padding for iOS <a href="https://github.com/FreshRSS/FreshRSS/pull/4741" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4741/hovercard">#4741</a></li>
</ul>
</li>
<li>Themes
<ul>
<li>Implement CSS variables for easy colour customisation <a href="https://github.com/FreshRSS/FreshRSS/pull/4641" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4641/hovercard">#4641</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4693" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4693/hovercard">#4693</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4789" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4789/hovercard">#4789</a></li>
<li>Improve CSS line height <a href="https://github.com/FreshRSS/FreshRSS/pull/4671" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4671/hovercard">#4671</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4782" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4782/hovercard">#4782</a></li>
<li>Improved reader view with framed articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4663" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4663/hovercard">#4663</a></li>
<li>Improve themes<br>
Alternative Dark <a href="https://github.com/FreshRSS/FreshRSS/pull/4635" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4635/hovercard">#4635</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4797" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4797/hovercard">#4797</a>;<br>
Blue Lagon <a href="https://github.com/FreshRSS/FreshRSS/pull/4786" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4786/hovercard">#4786</a>;<br>
Dark <a href="https://github.com/FreshRSS/FreshRSS/pull/4806" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4806/hovercard">#4806</a>;<br>
Mapco <a href="https://github.com/FreshRSS/FreshRSS/pull/4648" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4648/hovercard">#4648</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4709" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4709/hovercard">#4709</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4711" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4711/hovercard">#4711</a>;<br>
Origine <a href="https://github.com/FreshRSS/FreshRSS/pull/4842" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4842/hovercard">#4842</a>;<br>
Origine Compact <a href="https://github.com/FreshRSS/FreshRSS/pull/4636" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4636/hovercard">#4636</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4735" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4735/hovercard">#4735</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4787" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4787/hovercard">#4787</a>;<br>
Pafat <a href="https://github.com/FreshRSS/FreshRSS/pull/4783" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4783/hovercard">#4783</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4792" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4792/hovercard">#4792</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4793" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4793/hovercard">#4793</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4796" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4796/hovercard">#4796</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4811" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4811/hovercard">#4811</a>;<br>
Swage <a href="https://github.com/FreshRSS/FreshRSS/pull/4799" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4799/hovercard">#4799</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4828" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4828/hovercard">#4828</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4829" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4829/hovercard">#4829</a></li>
<li>Rename <code>template.css</code> to <code>frss.css</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4644" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4644/hovercard">#4644</a></li>
<li>Misc. <a href="https://github.com/FreshRSS/FreshRSS/pull/4596" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4596/hovercard">#4596</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4619" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4619/hovercard">#4619</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4696" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4696/hovercard">#4696</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Rename <em>tag</em> to <em>label</em> in some languages <a href="https://github.com/FreshRSS/FreshRSS/pull/4770" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4770/hovercard">#4770</a></li>
<li>Improve typographic quotes <a href="https://github.com/FreshRSS/FreshRSS/pull/4714" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4714/hovercard">#4714</a></li>
<li>Remove invalid i18n string <a href="https://github.com/FreshRSS/FreshRSS/pull/4844" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4844/hovercard">#4844</a></li>
<li>Add Greek <a href="https://github.com/FreshRSS/FreshRSS/pull/4718" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4718/hovercard">#4718</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4754" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4754/hovercard">#4754</a></li>
<li>Add Indonesian <a href="https://github.com/FreshRSS/FreshRSS/pull/4706" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4706/hovercard">#4706</a></li>
<li>Improve Brazilian Portuguese <a href="https://github.com/FreshRSS/FreshRSS/pull/4669" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4669/hovercard">#4669</a></li>
<li>Improve Czech <a href="https://github.com/FreshRSS/FreshRSS/pull/4670" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4670/hovercard">#4670</a></li>
<li>Improve Italian <a href="https://github.com/FreshRSS/FreshRSS/pull/4803" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4803/hovercard">#4803</a></li>
<li>Improve Japanese <a href="https://github.com/FreshRSS/FreshRSS/pull/4668" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4668/hovercard">#4668</a></li>
<li>Improve Russian <a href="https://github.com/FreshRSS/FreshRSS/pull/4719" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4719/hovercard">#4719</a></li>
<li>Improve Spanish <a href="https://github.com/FreshRSS/FreshRSS/pull/4676" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4676/hovercard">#4676</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4725" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4725/hovercard">#4725</a></li>
<li>Improve Turkish <a href="https://github.com/FreshRSS/FreshRSS/pull/4715" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4715/hovercard">#4715</a></li>
<li>Improve i18n tools <a href="https://github.com/FreshRSS/FreshRSS/pull/4742" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4742/hovercard">#4742</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4756" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4756/hovercard">#4756</a></li>
</ul>
</li>
<li>Compatibility
<ul>
<li>Compatibility PHP 8.1+ <code>strip_tags()</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4688" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4688/hovercard">#4688</a></li>
<li>Fix <code>GLOB_BRACE</code> is not available on all platforms <a href="https://github.com/FreshRSS/FreshRSS/pull/4628" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4628/hovercard">#4628</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Docker default image (Debian 11 Bullseye) updated to PHP 7.4.33</li>
<li>Docker: alternative image (Alpine 3.16) updated to PHP 8.0.25</li>
</ul>
</li>
<li>Misc.
<ul>
<li>Added <em>Linkding</em> as a sharing method <a href="https://github.com/FreshRSS/FreshRSS/pull/4721" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4721/hovercard">#4721</a></li>
<li>Exclude <code>.git/</code> from tests <a href="https://github.com/FreshRSS/FreshRSS/pull/4824" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4824/hovercard">#4824</a></li>
<li>Exclude <code>extensions/</code> from eslint and stylelint tests <a href="https://github.com/FreshRSS/FreshRSS/pull/4606" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4606/hovercard">#4606</a></li>
<li>Update GitHub Actions version <a href="https://github.com/FreshRSS/FreshRSS/pull/4717" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4717/hovercard">#4717</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:7;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.20.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2022-09-10T15:02:25Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.20.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.20.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:34090:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.20.0">Milestone</a></li>
<li><a href="https://github.com/FreshRSS/FreshRSS/discussions/4517" data-hovercard-type="discussion" data-hovercard-url="/FreshRSS/FreshRSS/discussions/4517/hovercard">Discussion</a></li>
</ul>
<p>A few highlights ✨:</p>
<ul>
<li>New Web scraping feature <em>HTML+XPath</em> for Web pages without any RSS/ATOM feed <a href="https://github.com/FreshRSS/FreshRSS/pull/4220" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4220/hovercard">#4220</a></li>
<li>Add support for <em>Dynamic OPML</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4407" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4407/hovercard">#4407</a></li>
<li>New search engine supporting (nested) parentheses, also with negation <a href="https://github.com/FreshRSS/FreshRSS/pull/4378" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4378/hovercard">#4378</a></li>
<li>Allow many (50k+) feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/4347" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4347/hovercard">#4347</a> and other performance improvements</li>
<li>New option to exclude some DOM elements with a CSS Selector when retrieving an article full content <a href="https://github.com/FreshRSS/FreshRSS/pull/4501" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4501/hovercard">#4501</a></li>
<li>New option to automatically mark as read gone articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4426" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4426/hovercard">#4426</a></li>
<li>2 new themes and plenty of UI improvements</li>
<li>Supported by <a href="https://hyliu.me/fluent-reader-lite/" rel="nofollow">Fluent Reader Lite</a> client on Android and iOS <a href="https://github.com/FreshRSS/FreshRSS/pull/4595" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4595/hovercard">#4595</a></li>
<li>Several bug fixes</li>
<li>1.20.x will be the last release(s) to support PHP 7.0 before requiring PHP 7.2+</li>
</ul>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.19.2...1.20.0">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.20.0/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Features
<ul>
<li>New Web scraping feature <em>HTML+XPath</em> for Web pages without any RSS/ATOM feed <a href="https://github.com/FreshRSS/FreshRSS/pull/4220" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4220/hovercard">#4220</a></li>
<li>Add support for <em>Dynamic OPML</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4407" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4407/hovercard">#4407</a>
<ul>
<li>Subscriber: Ability for a category to be dynamically populated with a list of feeds provided by a remote OPML</li>
<li>Publisher: Ability to dynamically export a FreshRSS view (all, feed, category) into a dynamic OPML</li>
</ul>
</li>
<li>New search engine supporting (nested) parentheses <a href="https://github.com/FreshRSS/FreshRSS/pull/4378" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4378/hovercard">#4378</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4503" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4503/hovercard">#4503</a>
<ul>
<li><code>(author:Alice OR intitle:hello) (author:Bob OR intitle:world)</code></li>
<li>also with negation: <code>!((author:Alice intitle:hello) OR (author:Bob intitle:world))</code></li>
<li>and supporting calling user queries from the search field by name: <code>search:"My query"</code> or <code>search:QueryA</code>, or by ID: <code>S:3</code></li>
</ul>
</li>
<li>Allow many (50k+) feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/4347" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4347/hovercard">#4347</a>
<ul>
<li>Note: only for new users or after an export/import or a manual database update</li>
<li>See also <a href="https://github.com/FreshRSS/FreshRSS/pull/4357" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4357/hovercard">#4357</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4353" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4353/hovercard">#4353</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4417" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4417/hovercard">#4417</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4502" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4502/hovercard">#4502</a></li>
</ul>
</li>
<li>New option to exclude some DOM elements with a CSS Selector when retrieving an article full content <a href="https://github.com/FreshRSS/FreshRSS/pull/4501" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4501/hovercard">#4501</a></li>
<li>New option to automatically mark as read gone articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4426" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4426/hovercard">#4426</a></li>
<li>New OPML export/import of some proprietary FreshRSS attributes <a href="https://github.com/FreshRSS/FreshRSS/pull/4342" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4342/hovercard">#4342</a></li>
<li>Tolerate the import of some invalid OPML files <a href="https://github.com/FreshRSS/FreshRSS/pull/4591" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4591/hovercard">#4591</a></li>
<li>New feed settings to allow cookies and HTTP redirects <a href="https://github.com/FreshRSS/FreshRSS/pull/4470" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4470/hovercard">#4470</a></li>
<li>Performance: Easier <a href="https://freshrss.github.io/FreshRSS/en/admins/DatabaseConfig.html" rel="nofollow">text search indexes</a> for fast searches with PostgreSQL <a href="https://github.com/FreshRSS/FreshRSS/pull/4505" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4505/hovercard">#4505</a>
<ul>
<li>The indexes must be manually added for now. Using GIN <code>pg_trgm</code></li>
</ul>
</li>
<li>Easier definition of default user queries for new users in <code>data/config-user.custom.php</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4360" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4360/hovercard">#4360</a></li>
<li>New sharing through standard <a href="https://www.w3.org/TR/web-share/" rel="nofollow">Web Share API</a> <a href="https://github.com/FreshRSS/FreshRSS/pull/4271" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4271/hovercard">#4271</a></li>
<li>New sharing with Xing, Reddit, Pinterest, WhatsApp <a href="https://github.com/FreshRSS/FreshRSS/pull/4270" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4270/hovercard">#4270</a></li>
<li>New sharing with <a href="https://archive.ph/" rel="nofollow"><code>archive.today</code></a> <a href="https://github.com/FreshRSS/FreshRSS/pull/4530" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4530/hovercard">#4530</a></li>
</ul>
</li>
<li>SimplePie
<ul>
<li>New method <code>rename_attribute()</code> instead of removing attributes to better be able to style/hide content of articles <a href="https://github.com/FreshRSS/FreshRSS/pull/4175" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4175/hovercard">#4175</a>,<br>
<a href="https://github.com/simplepie/simplepie/pull/717" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/717/hovercard">simplepie#717</a></li>
<li>Fix parsing of HTTP Links <a href="https://github.com/simplepie/simplepie/pull/729" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/729/hovercard">simplepie#729</a></li>
<li>Fix <code>status_code</code> type for PHP 8.1+ <a href="https://github.com/simplepie/simplepie/pull/728" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/728/hovercard">simplepie#728</a></li>
<li>Fix relative URLs <a href="https://github.com/simplepie/simplepie/pull/744" data-hovercard-type="pull_request" data-hovercard-url="/simplepie/simplepie/pull/744/hovercard">simplepie#744</a></li>
</ul>
</li>
<li>Bug fixing
<ul>
<li>Fix last update &amp; archive logic (especially for very long feeds, for which some old items were marked as unread) <a href="https://github.com/FreshRSS/FreshRSS/pull/4422" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4422/hovercard">#4422</a></li>
<li>Fix regression with Fever API on 32-bit platforms <a href="https://github.com/FreshRSS/FreshRSS/pull/4201" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4201/hovercard">#4201</a></li>
<li>Fix read-when-same-title bug <a href="https://github.com/FreshRSS/FreshRSS/pull/4206" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4206/hovercard">#4206</a></li>
<li>Fix some search expressions such as <code>"ab cd"</code> and <code>ab-cd</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4277" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4277/hovercard">#4277</a></li>
<li>Fix auto-load of more articles when using shortcuts <a href="https://github.com/FreshRSS/FreshRSS/pull/4532" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4532/hovercard">#4532</a></li>
<li>Fix <kbd>space</kbd> shortcut <a href="https://github.com/FreshRSS/FreshRSS/pull/4581" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4581/hovercard">#4581</a></li>
<li>WebSub: Use hash instead of base64 to handle long URLs <a href="https://github.com/FreshRSS/FreshRSS/pull/4282" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4282/hovercard">#4282</a></li>
<li>Fix handling of authors with ampersand <code>&amp;</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4287" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4287/hovercard">#4287</a></li>
<li>Fix lazy loading images containing a quote <code>'</code> in the address <a href="https://github.com/FreshRSS/FreshRSS/pull/4330" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4330/hovercard">#4330</a></li>
<li>Fix database size calculation for PostgreSQL <a href="https://github.com/FreshRSS/FreshRSS/pull/4249" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4249/hovercard">#4249</a></li>
<li>Fix HTTP root redirection in some cases (trailing slash with a proxy) <a href="https://github.com/FreshRSS/FreshRSS/pull/4167" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4167/hovercard">#4167</a></li>
<li>Fix <code>htmlspecialchars()</code> warnings with PHP 8.1+ <a href="https://github.com/FreshRSS/FreshRSS/pull/4411" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4411/hovercard">#4411</a></li>
<li>Fix OPML category encoding <a href="https://github.com/FreshRSS/FreshRSS/pull/4427" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4427/hovercard">#4427</a></li>
<li>Fix one category of favicon update problem <a href="https://github.com/FreshRSS/FreshRSS/pull/4358" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4358/hovercard">#4358</a></li>
<li>Fix rare mark-as-read bug <a href="https://github.com/FreshRSS/FreshRSS/pull/4456" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4456/hovercard">#4456</a></li>
<li>Add missing extension hook <code>freshrss_user_maintenance</code> in CLI <a href="https://github.com/FreshRSS/FreshRSS/pull/4495" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4495/hovercard">#4495</a></li>
<li>Rename conflicting function <code>errorMessage()</code> which exists on some platforms <a href="https://github.com/FreshRSS/FreshRSS/pull/4289" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4289/hovercard">#4289</a></li>
<li>Fix remain of bookmarklet <a href="https://github.com/FreshRSS/FreshRSS/pull/4240" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4240/hovercard">#4240</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Performance: Automatic simplification of layout for 1000+ feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/4357" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4357/hovercard">#4357</a></li>
<li>Performance: New option <em>icons-as-emojis</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4353" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4353/hovercard">#4353</a></li>
<li>Manage feed configuration using a dynamic slider view <a href="https://github.com/FreshRSS/FreshRSS/pull/4226" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4226/hovercard">#4226</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4297" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4297/hovercard">#4297</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4394" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4394/hovercard">#4394</a></li>
<li>New option for custom HTML logo/title in the main Web UI view <a href="https://github.com/FreshRSS/FreshRSS/pull/4369" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4369/hovercard">#4369</a></li>
<li>Show errored, empty, muted feeds in statistics <a href="https://github.com/FreshRSS/FreshRSS/pull/4276" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4276/hovercard">#4276</a></li>
<li>Improve configuration of registration form <a href="https://github.com/FreshRSS/FreshRSS/pull/3932" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/3932/hovercard">#3932</a></li>
<li>Improve subscription list drag &amp; drop <a href="https://github.com/FreshRSS/FreshRSS/pull/3953" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/3953/hovercard">#3953</a></li>
<li>Improve extension manager <a href="https://github.com/FreshRSS/FreshRSS/pull/4181" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4181/hovercard">#4181</a></li>
<li>Improve idle feeds list <a href="https://github.com/FreshRSS/FreshRSS/pull/4192" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4192/hovercard">#4192</a></li>
<li>Improve feed link in normal view <a href="https://github.com/FreshRSS/FreshRSS/pull/4006" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4006/hovercard">#4006</a></li>
<li>Improve browser notification for unread message <a href="https://github.com/FreshRSS/FreshRSS/pull/4193" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4193/hovercard">#4193</a></li>
<li>Improve notification banner <a href="https://github.com/FreshRSS/FreshRSS/pull/4023" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4023/hovercard">#4023</a></li>
<li>Improve new article banner <a href="https://github.com/FreshRSS/FreshRSS/pull/4037" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4037/hovercard">#4037</a></li>
<li>Improve pagination + <em>load more</em> button <a href="https://github.com/FreshRSS/FreshRSS/pull/4125" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4125/hovercard">#4125</a></li>
<li>Improve log view <a href="https://github.com/FreshRSS/FreshRSS/pull/4204" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4204/hovercard">#4204</a></li>
<li>Improve unread articles counter in normal view <a href="https://github.com/FreshRSS/FreshRSS/pull/4166" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4166/hovercard">#4166</a></li>
<li>Automatically set the category when adding a feed from an existing category <a href="https://github.com/FreshRSS/FreshRSS/pull/4333" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4333/hovercard">#4333</a></li>
<li>Better PWA colours for mobile <a href="https://github.com/FreshRSS/FreshRSS/pull/4254" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4254/hovercard">#4254</a></li>
<li>Improve article footer <a href="https://github.com/FreshRSS/FreshRSS/pull/4306" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4306/hovercard">#4306</a></li>
<li>Various UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4205" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4205/hovercard">#4205</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4212" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4212/hovercard">#4212</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4218" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4218/hovercard">#4218</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4238" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4238/hovercard">#4238</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4455" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4455/hovercard">#4455</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4298" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4298/hovercard">#4298</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4383" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4383/hovercard">#4383</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4452" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4452/hovercard">#4452</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4455" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4455/hovercard">#4455</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4466" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4466/hovercard">#4466</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4471" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4471/hovercard">#4471</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4472" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4472/hovercard">#4472</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4474" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4474/hovercard">#4474</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4498" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4498/hovercard">#4498</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4502" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4502/hovercard">#4502</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4504" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4504/hovercard">#4504</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4558" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4558/hovercard">#4558</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4546" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4546/hovercard">#4546</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4541" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4541/hovercard">#4541</a></li>
</ul>
</li>
<li>Themes
<ul>
<li>New theme <em>Dark pink</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4311" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4311/hovercard">#4311</a></li>
<li>New theme <em>Nord</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4400" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4400/hovercard">#4400</a></li>
<li>Improve themes <em>Alternative Dark</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4587" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4587/hovercard">#4587</a>;<br>
<em>Ansum</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4538" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4538/hovercard">#4538</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4549" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4549/hovercard">#4549</a>;<br>
<em>Flat</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4575" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4575/hovercard">#4575</a>;<br>
<em>Mapco</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4491" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4491/hovercard">#4491</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4491" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4491/hovercard">#4491</a>;<br>
<em>Swage</em> <a href="https://github.com/FreshRSS/FreshRSS/pull/4493" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4493/hovercard">#4493</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4512" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4512/hovercard">#4512</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4566" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4566/hovercard">#4566</a></li>
</ul>
</li>
<li>Extensions
<ul>
<li>Allow extensions using <code>entry_before_insert</code> to change <code>entry-&gt;isRead()</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4331" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4331/hovercard">#4331</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Improve i18n CLI <a href="https://github.com/FreshRSS/FreshRSS/pull/4197" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4197/hovercard">#4197</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4199" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4199/hovercard">#4199</a></li>
<li>Add Chinese (Traditional) <a href="https://github.com/FreshRSS/FreshRSS/pull/4578" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4578/hovercard">#4578</a></li>
<li>Improve Chinese (Simplified) <a href="https://github.com/FreshRSS/FreshRSS/pull/4332" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4332/hovercard">#4332</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4337" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4337/hovercard">#4337</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4379" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4379/hovercard">#4379</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4509" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4509/hovercard">#4509</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4577" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4577/hovercard">#4577</a></li>
<li>Improve English <a href="https://github.com/FreshRSS/FreshRSS/pull/4450" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4450/hovercard">#4450</a></li>
<li>Improve German <a href="https://github.com/FreshRSS/FreshRSS/pull/4525" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4525/hovercard">#4525</a></li>
<li>Improve Korean <a href="https://github.com/FreshRSS/FreshRSS/pull/4572" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4572/hovercard">#4572</a></li>
<li>Improve Occitan <a href="https://github.com/FreshRSS/FreshRSS/pull/4548" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4548/hovercard">#4548</a></li>
<li>Improve Polish <a href="https://github.com/FreshRSS/FreshRSS/pull/4363" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4363/hovercard">#4363</a></li>
<li>Improve Russian <a href="https://github.com/FreshRSS/FreshRSS/pull/4385" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4385/hovercard">#4385</a></li>
<li>Improve Slovak <a href="https://github.com/FreshRSS/FreshRSS/pull/4524" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4524/hovercard">#4524</a></li>
</ul>
</li>
<li>API
<ul>
<li>Restrict maximum length of item content length for clients compatibility <a href="https://github.com/FreshRSS/FreshRSS/pull/4583" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4583/hovercard">#4583</a></li>
<li>Supported by <a href="https://hyliu.me/fluent-reader-lite/" rel="nofollow">Fluent Reader Lite</a> <a href="https://github.com/FreshRSS/FreshRSS/pull/4595" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4595/hovercard">#4595</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Docker: Performance: entrypoint fix buffering, problematic when importing large OPMLs during install <a href="https://github.com/FreshRSS/FreshRSS/pull/4417" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4417/hovercard">#4417</a></li>
<li>Docker default image (Debian 11 Bullseye) updated to PHP 7.4.30 and Apache 2.4.54</li>
<li>Docker: alternative image updated to Alpine 3.16 with PHP 8.0.22 and Apache 2.4.54 <a href="https://github.com/FreshRSS/FreshRSS/pull/4391" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4391/hovercard">#4391</a>
<ul>
<li>Add PHP extensions <code>php-openssl</code> (used by PHPMailer) and <code>php-xml</code> (used by SimplePie) <a href="https://github.com/FreshRSS/FreshRSS/pull/4420" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4420/hovercard">#4420</a></li>
</ul>
</li>
<li>Docker: Upgraded dev image <code>freshrss/freshrss:newest</code> to PHP 8.2 <a href="https://github.com/FreshRSS/FreshRSS/pull/4420" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4420/hovercard">#4420</a></li>
<li>Include PHP extensions in Composer for easier automated deployment <a href="https://github.com/FreshRSS/FreshRSS/pull/4497" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4497/hovercard">#4497</a></li>
<li>Improved trimming of <code>base_url</code> to avoid some common configuration bugs, especially via Docker / CLI <a href="https://github.com/FreshRSS/FreshRSS/pull/4423" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4423/hovercard">#4423</a></li>
</ul>
</li>
<li>CLI
<ul>
<li>Allow empty DB prefix <a href="https://github.com/FreshRSS/FreshRSS/pull/4488" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4488/hovercard">#4488</a></li>
</ul>
</li>
<li>Compatibility
<ul>
<li>Initial support for PHP 8.2+ <a href="https://github.com/FreshRSS/FreshRSS/pull/4420" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4420/hovercard">#4420</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4421" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4421/hovercard">#4421</a></li>
</ul>
</li>
<li>Security
<ul>
<li>Improved error page, properly returning HTTP 500 and CSP <a href="https://github.com/FreshRSS/FreshRSS/pull/4465" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4465/hovercard">#4465</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Replace <code>lib_phpQuery</code> by <a href="https://github.com/PhpGt/CssXPath"><code>PhpGt/CssXPath</code></a> library for full content retrieval <a href="https://github.com/FreshRSS/FreshRSS/pull/4261" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4261/hovercard">#4261</a>
<ul>
<li>Add support for star CSS Selectors such as <code>a[href*="example"]</code> <a href="https://github.com/PhpGt/CssXPath/pull/181" data-hovercard-type="pull_request" data-hovercard-url="/PhpGt/CssXPath/pull/181/hovercard">CssXPath#181</a></li>
</ul>
</li>
<li>Performance: Do not render irrelevant HTML for Ajax calls <a href="https://github.com/FreshRSS/FreshRSS/pull/4310" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4310/hovercard">#4310</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4366" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4366/hovercard">#4366</a></li>
<li>Performance: New limit option when reloading a feed <a href="https://github.com/FreshRSS/FreshRSS/pull/4370" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4370/hovercard">#4370</a></li>
<li>Optional possibility to use Composer to update some libraries <a href="https://github.com/FreshRSS/FreshRSS/pull/4329" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4329/hovercard">#4329</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4368" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4368/hovercard">#4368</a>
<ul>
<li>Update to PHPMailer 6.6.0 <a href="https://github.com/FreshRSS/FreshRSS/pull/4329" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4329/hovercard">#4329</a></li>
</ul>
</li>
<li>Use <code>.gitattributes</code> <code>export-ignore</code> <a href="https://github.com/FreshRSS/FreshRSS/pull/4415" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4415/hovercard">#4415</a></li>
<li>Remove HTTP Referer for HTML download <a href="https://github.com/FreshRSS/FreshRSS/pull/4372" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4372/hovercard">#4372</a></li>
<li>Add database field <code>attributes</code> (JSON) for entries <a href="https://github.com/FreshRSS/FreshRSS/pull/4444" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4444/hovercard">#4444</a></li>
<li>Improve dev automated checks <a href="https://github.com/FreshRSS/FreshRSS/pull/4209" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4209/hovercard">#4209</a></li>
<li>Update dev dependencies <a href="https://github.com/FreshRSS/FreshRSS/pull/4173" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4173/hovercard">#4173</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4203" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4203/hovercard">#4203</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4241" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4241/hovercard">#4241</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4419" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4419/hovercard">#4419</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4424" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4424/hovercard">#4424</a></li>
<li>Fix extension list warning when offline<a href="https://github.com/FreshRSS/FreshRSS/pull/4571" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4571/hovercard">#4571</a></li>
<li>Code improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4130" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4130/hovercard">#4130</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4194" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4194/hovercard">#4194</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4201" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4201/hovercard">#4201</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4202" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4202/hovercard">#4202</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4258" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4258/hovercard">#4258</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4263" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4263/hovercard">#4263</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4356" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4356/hovercard">#4356</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4436" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4436/hovercard">#4436</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4489" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4489/hovercard">#4489</a>,<br>
<a href="https://github.com/FreshRSS/FreshRSS/pull/4490" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4490/hovercard">#4490</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4496" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4496/hovercard">#4496</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:8;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.19.2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2022-02-04T14:27:57Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.19.2";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.19.2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:6834:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.19.2">Milestone</a></li>
<li><a href="https://github.com/FreshRSS/FreshRSS/issues/4179" data-hovercard-type="issue" data-hovercard-url="/FreshRSS/FreshRSS/issues/4179/hovercard">Discussion</a></li>
</ul>
<p>A few highlights:</p>
<ul>
<li>Improve dropdown menus on mobile view <a href="https://github.com/FreshRSS/FreshRSS/pull/4141" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4141/hovercard">#4141</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4128" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4128/hovercard">#4128</a></li>
<li>Fix regression regarding keeping read state after seeing favourites / labels <a href="https://github.com/FreshRSS/FreshRSS/pull/4178" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4178/hovercard">#4178</a></li>
<li>Lots of code improvements, including improved support of PHP 8.1</li>
<li>And more!</li>
</ul>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.19.1...1.19.2">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.19.2/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Bug fixing
<ul>
<li>Fix regression regarding keeping read state after seeing favourites / labels <a href="https://github.com/FreshRSS/FreshRSS/pull/4178" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4178/hovercard">#4178</a></li>
<li>Fix migration system on Synology and systems adding custom files to folders <a href="https://github.com/FreshRSS/FreshRSS/pull/4163" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4163/hovercard">#4163</a></li>
<li>Fix wrong dropdown triangle UI for labels <a href="https://github.com/FreshRSS/FreshRSS/pull/4174" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4174/hovercard">#4174</a></li>
<li>Fix minor UI bugs <a href="https://github.com/FreshRSS/FreshRSS/pull/4169" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4169/hovercard">#4169</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4189" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4189/hovercard">#4189</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4188" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4188/hovercard">#4188</a></li>
<li>Fix minor SCSS details for the themes Ansum and Mapco <a href="https://github.com/FreshRSS/FreshRSS/pull/4146" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4146/hovercard">#4146</a></li>
</ul>
</li>
<li>UI
<ul>
<li>Improve dropdown menus on mobile view <a href="https://github.com/FreshRSS/FreshRSS/pull/4141" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4141/hovercard">#4141</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4128" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4128/hovercard">#4128</a></li>
<li>Improve menu icons <a href="https://github.com/FreshRSS/FreshRSS/pull/4004" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4004/hovercard">#4004</a></li>
</ul>
</li>
<li>Features
<ul>
<li>Support JSON import with date in milliseconds (e.g., Feedly) <a href="https://github.com/FreshRSS/FreshRSS/pull/4186" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4186/hovercard">#4186</a></li>
</ul>
</li>
<li>Deployment
<ul>
<li>Docker: development image <code>:newest</code> updated to PHP 8.1.1 and Apache 2.4.52 <a href="https://github.com/FreshRSS/FreshRSS/pull/3666" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/3666/hovercard">#3666</a></li>
</ul>
</li>
<li>i18n
<ul>
<li>Improve i18n CLI <a href="https://github.com/FreshRSS/FreshRSS/pull/4131" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4131/hovercard">#4131</a></li>
<li>Use typographic quotes <a href="https://github.com/FreshRSS/FreshRSS/pull/4133" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4133/hovercard">#4133</a></li>
<li>Improve message regarding forced feeds <a href="https://github.com/FreshRSS/FreshRSS/pull/4145" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4145/hovercard">#4145</a></li>
<li>Improve Czech <a href="https://github.com/FreshRSS/FreshRSS/pull/4151" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4151/hovercard">#4151</a></li>
<li>Improve English <a href="https://github.com/FreshRSS/FreshRSS/pull/4161" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4161/hovercard">#4161</a></li>
</ul>
</li>
<li>Misc.
<ul>
<li>Increase PHPStan to <a href="https://phpstan.org/user-guide/rule-levels" rel="nofollow">level 5</a> for code quality, also fixing several PHP 8.1 warnings <a href="https://github.com/FreshRSS/FreshRSS/pull/4110" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4110/hovercard">#4110</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4123" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4123/hovercard">#4123</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4119" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4119/hovercard">#4119</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4182" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4182/hovercard">#4182</a></li>
<li>Clean temporary files generated by automated tests <a href="https://github.com/FreshRSS/FreshRSS/pull/4177" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4177/hovercard">#4177</a></li>
<li>Add automated spell checking of the code using <a href="https://github.com/crate-ci/typos">typos</a> <a href="https://github.com/FreshRSS/FreshRSS/pull/4138" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4138/hovercard">#4138</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4134" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4134/hovercard">#4134</a></li>
<li>Enforce code style <em>opening brace on same line</em> in PHPCS <a href="https://github.com/FreshRSS/FreshRSS/pull/4122" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4122/hovercard">#4122</a></li>
<li>Remove broken GitHub Action automatically adding the <code>latest</code> tag to git <a href="https://github.com/FreshRSS/FreshRSS/pull/4135" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4135/hovercard">#4135</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}i:9;a:6:{s:4:"data";s:38:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:2:{s:27:"http://www.w3.org/2005/Atom";a:6:{s:2:"id";a:1:{i:0;a:5:{s:4:"data";s:45:"tag:github.com,2008:Repository/6322699/1.19.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"updated";a:1:{i:0;a:5:{s:4:"data";s:20:"2022-01-02T18:24:15Z";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:3:"rel";s:9:"alternate";s:4:"type";s:9:"text/html";s:4:"href";s:56:"https://github.com/FreshRSS/FreshRSS/releases/tag/1.19.1";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:15:"FreshRSS 1.19.1";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:7:"content";a:1:{i:0;a:5:{s:4:"data";s:3202:"<ul>
<li><a href="https://github.com/FreshRSS/FreshRSS/milestones/1.19.1">Milestone</a></li>
<li><a href="https://github.com/FreshRSS/FreshRSS/pull/4116" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4116/hovercard">Discussion</a></li>
</ul>
<p>Detailed <a href="https://github.com/FreshRSS/FreshRSS/compare/1.19.0...1.19.1">tracked changes</a>.</p>
<p>Full <a href="https://github.com/FreshRSS/FreshRSS/blob/1.19.1/CHANGELOG.md">changelog</a>:</p>
<ul>
<li>Bug fixing
<ul>
<li>Fix some filters for automatic article actions (e.g., <code>!pubdate:P3d</code>) <a href="https://github.com/FreshRSS/FreshRSS/pull/4092" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4092/hovercard">#4092</a></li>
</ul>
</li>
<li>Features
<ul>
<li>New search operator on article IDs (useful to show a single article, extensions) <a href="https://github.com/FreshRSS/FreshRSS/pull/4058" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4058/hovercard">#4058</a>
<ul>
<li>Entry (article) ID: <code>e:1639310674957894</code> or multiple entry IDs (<em>or</em>): <code>e:1639310674957894,1639310674957893</code></li>
</ul>
</li>
</ul>
</li>
<li>UI
<ul>
<li>Fix left navigation with long category names <a href="https://github.com/FreshRSS/FreshRSS/pull/4055" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4055/hovercard">#4055</a></li>
<li>Show <em>My labels</em> menu also when empty <a href="https://github.com/FreshRSS/FreshRSS/pull/4065" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4065/hovercard">#4065</a></li>
<li>Improve category titles on global view <a href="https://github.com/FreshRSS/FreshRSS/pull/4059" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4059/hovercard">#4059</a></li>
<li>Disable dynamic favicon for browser / extensions blocking canvas <a href="https://github.com/FreshRSS/FreshRSS/pull/4098" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4098/hovercard">#4098</a></li>
<li>Minor UI and style improvements <a href="https://github.com/FreshRSS/FreshRSS/pull/4061" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4061/hovercard">#4061</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4067" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4067/hovercard">#4067</a>, <a href="https://github.com/FreshRSS/FreshRSS/pull/4085" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4085/hovercard">#4085</a></li>
</ul>
</li>
<li>SimplePie
<ul>
<li>Manual update to SimplePie 1.5.8 <a href="https://github.com/FreshRSS/FreshRSS/pull/4113" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4113/hovercard">#4113</a></li>
</ul>
</li>
<li>Code improvements
<ul>
<li>Add PHPStan <a href="https://phpstan.org/user-guide/rule-levels" rel="nofollow">level 1</a> for code quality <a href="https://github.com/FreshRSS/FreshRSS/pull/4021" data-hovercard-type="pull_request" data-hovercard-url="/FreshRSS/FreshRSS/pull/4021/hovercard">#4021</a></li>
</ul>
</li>
</ul>";s:7:"attribs";a:1:{s:0:"";a:1:{s:4:"type";s:4:"html";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}s:6:"author";a:1:{i:0;a:6:{s:4:"data";s:12:"
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";s:5:"child";a:1:{s:27:"http://www.w3.org/2005/Atom";a:1:{s:4:"name";a:1:{i:0;a:5:{s:4:"data";s:7:"Alkarex";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}s:29:"http://search.yahoo.com/mrss/";a:1:{s:9:"thumbnail";a:1:{i:0;a:5:{s:4:"data";s:0:"";s:7:"attribs";a:1:{s:0:"";a:3:{s:6:"height";s:2:"30";s:5:"width";s:2:"30";s:3:"url";s:56:"https://avatars.githubusercontent.com/u/1008324?s=60&v=4";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:5:"en-US";}}}}}}}}}}}}s:4:"type";i:512;s:7:"headers";a:16:{s:6:"server";s:10:"GitHub.com";s:4:"date";s:29:"Thu, 25 Apr 2024 20:54:47 GMT";s:12:"content-type";s:35:"application/atom+xml; charset=utf-8";s:4:"vary";s:93:"X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With";s:4:"etag";s:36:"W/"c61a19ee944acfabea8cca38514efc26"";s:13:"cache-control";s:35:"max-age=0, private, must-revalidate";s:25:"strict-transport-security";s:44:"max-age=31536000; includeSubdomains; preload";s:15:"x-frame-options";s:4:"deny";s:22:"x-content-type-options";s:7:"nosniff";s:16:"x-xss-protection";s:1:"0";s:15:"referrer-policy";s:26:"no-referrer-when-downgrade";s:23:"content-security-policy";s:2822:"default-src 'none'; base-uri 'self'; child-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com api.githubcopilot.com objects-origin.githubusercontent.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/";s:10:"set-cookie";s:639:"_gh_sess=H8viqsRHvFKlBVJNDMYSBpGWZHssSoNN93eXe4%2Ffb6JzEdA3n%2B339VWENZmQBLMFk%2F8r4Co6CjVf6fUdoS9zbx6OA7YqrTK4CviomZOVpUZOYVEl93OOvlg%2BZe4AY%2BiiAJH7osRVAmnfYygZfsTjDAeNE8o1vo4zyxmOm%2FeYD1iyLcWqlxEMGB6K6lWptpph%2FzZOjqVMUC2%2B57IzyXjBo33O%2Bx1vYI2x2Ad0M0yDWuAGrMfw92Qm5tWW96N%2FFM5RekbzBR98JjGelp%2FT0we4dA%3D%3D--8IeUKv3REnHaCQ42--S7Vuxpyl%2BdmUzCktq8KrjQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax, _octo=GH1.1.409532355.1714078486; Path=/; Domain=github.com; Expires=Fri, 25 Apr 2025 20:54:46 GMT; Secure; SameSite=Lax, logged_in=no; Path=/; Domain=github.com; Expires=Fri, 25 Apr 2025 20:54:46 GMT; HttpOnly; Secure; SameSite=Lax";s:13:"accept-ranges";s:5:"bytes";s:14:"content-length";s:6:"215774";s:19:"x-github-request-id";s:33:"4583:65CD8:43493F:446A7B:662AC316";}s:5:"build";s:14:"20231231133248";s:5:"mtime";i:1714078487;s:3:"md5";s:32:"1420a0e5f5c7f6ccdc4233ad29292ab9";}