<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/tests, branch 1.28.0</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.28.0</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.28.0'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2025-12-24T00:19:06+00:00</updated>
<entry>
<title>Fix serialisation of dates in searches (#8341)</title>
<updated>2025-12-24T00:19:06+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-24T00:19:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=00c61cf34c3f9a59b4dc16a4accd7cf85945a5a6'/>
<id>urn:sha1:00c61cf34c3f9a59b4dc16a4accd7cf85945a5a6</id>
<content type='text'>
Dates should not be expanded/resolved in string serialisations of search expressions, as it otherwise break relative user queries such as `P30D`.
Fix of https://github.com/FreshRSS/FreshRSS/pull/8293
</content>
</entry>
<entry>
<title>Fix parsing of literal "or" in regex (#8338)</title>
<updated>2025-12-23T10:58:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-23T10:58:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6d57a9de47be4bb80a2121b6c4b8ebf278b93d70'/>
<id>urn:sha1:6d57a9de47be4bb80a2121b6c4b8ebf278b93d70</id>
<content type='text'>
fix https://github.com/FreshRSS/FreshRSS/issues/7879
</content>
</entry>
<entry>
<title>Use native PHP #[Deprecated] (#8325)</title>
<updated>2025-12-17T09:11:18+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-17T09:11:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=00cd5df294c875ea1e00ab2f645a338a6bd92c8e'/>
<id>urn:sha1:00cd5df294c875ea1e00ab2f645a338a6bd92c8e</id>
<content type='text'>
https://php.watch/versions/8.4/Deprecated
And enfore it with PHPUnit + PHPStan.
Especially useful for extensions.</content>
</entry>
<entry>
<title>Rework encoding of search filters (#8324)</title>
<updated>2025-12-17T09:07:52+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-17T09:07:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4bd503591469f47e710f1afbf0b5883f7770065d'/>
<id>urn:sha1:4bd503591469f47e710f1afbf0b5883f7770065d</id>
<content type='text'>
Rework:
* https://github.com/FreshRSS/FreshRSS/pull/8222

now that we have:
* https://github.com/FreshRSS/FreshRSS/pull/8293

Follow-up of:
* https://github.com/FreshRSS/FreshRSS/pull/8311

* More simplification

* Deprecate getRawInput
</content>
</entry>
<entry>
<title>Fix search encoding and quoting (#8311)</title>
<updated>2025-12-13T10:31:34+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-13T10:31:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=a8a544a2a205b42d2009b5c52d8939e8bc36263c'/>
<id>urn:sha1:a8a544a2a205b42d2009b5c52d8939e8bc36263c</id>
<content type='text'>
Revised the encoding approach for searches: the HTML encoding is done just before its use for DB search.
Fix also some cases with wrong quoting.
Fix https://github.com/FreshRSS/FreshRSS/pull/8306#issuecomment-3643865439
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8293
</content>
</entry>
<entry>
<title>Add functions to modify a search expression (#8293)</title>
<updated>2025-12-10T21:41:45+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-10T21:41:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=394411677ea9b3e5bb520c39db6e39f751c35e28'/>
<id>urn:sha1:394411677ea9b3e5bb520c39db6e39f751c35e28</id>
<content type='text'>
* Allows easier modifications of the search expression.
* Add proper `__toString()` instead of just returning the raw input string. Allows in particular showing the result of the actual parsing of the raw input string in the UI.

Needed for https://github.com/FreshRSS/FreshRSS/pull/8294
</content>
</entry>
<entry>
<title>PHP 8.5: Remove ReflectionProperty::setAccessible (#8284)</title>
<updated>2025-12-05T06:17:10+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-12-05T06:17:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=9a3945487811f95f19b77ecc9e82428182263d36'/>
<id>urn:sha1:9a3945487811f95f19b77ecc9e82428182263d36</id>
<content type='text'>
https://php.net/reflectionproperty.setaccessible
&gt; As of PHP 8.1.0, calling this method has no effect; all properties are accessible by default.
&gt; This function has been DEPRECATED as of PHP 8.5.0.</content>
</entry>
<entry>
<title>Add new translate action: `move`, `make i18n-move-key` (#8214)</title>
<updated>2025-11-16T17:44:07+00:00</updated>
<author>
<name>Inverle</name>
<email>inverle@proton.me</email>
</author>
<published>2025-11-16T17:44:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b9abe706902c666d85cf60eb828a72c4f3062297'/>
<id>urn:sha1:b9abe706902c666d85cf60eb828a72c4f3062297</id>
<content type='text'>
So that renaming something like `conf.shortcut.toggle_sidebar` to `conf.shortcut.toggle_aside` can be done easily even after already having added `conf.shortcut.toggle_sidebar` and translated it in multiple languages.

Example of usage:
```console
./cli/manipulate.translation.php -a move -k conf.shortcut.toggle_sidebar -n conf.shortcut.toggle_aside
```
```console
make i18n-move-key key="conf.shortcut.toggle_sidebar" new-key="conf.shortcut.toggle_aside"
```

The key will be moved and all values/states will be kept.</content>
</entry>
<entry>
<title>Mark as read 1 or 7 days based on publication date (#8163)</title>
<updated>2025-10-28T18:07:14+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-10-28T18:07:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=49a92c2437d3be9fba8c6af2d3f328ae525d81c6'/>
<id>urn:sha1:49a92c2437d3be9fba8c6af2d3f328ae525d81c6</id>
<content type='text'>
Allow the UI for marking as read articles older than 1 or 7 days to also work when sorting by publication date (in which case, the publication date is used).

&lt;img width="382" height="229" alt="image" src="https://github.com/user-attachments/assets/a630dec8-1e18-4766-8392-59fb593dd73d" /&gt;
</content>
</entry>
<entry>
<title>PostgreSQL: compatibility with PCRE word boundary (#8141)</title>
<updated>2025-10-22T19:21:17+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-10-22T19:21:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1282d3a2709064cb847b8757409a7153449faa9d'/>
<id>urn:sha1:1282d3a2709064cb847b8757409a7153449faa9d</id>
<content type='text'>
Allow the use of regex `\b` for word boundary (and `\B` for the opposite) even when using PostgreSQL.
Follow up of:
* https://github.com/FreshRSS/FreshRSS/pull/6706

For instance, `intitle:/\bnew\B/` will find *newest* but not *new* nor *renewal*.

Useful in particular to minimise the differences between PHP and database in:
* https://github.com/FreshRSS/FreshRSS/pull/7959
</content>
</entry>
</feed>
