<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Controllers/entryController.php, branch 1.25.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.25.0</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.25.0'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2024-10-17T08:38:25+00:00</updated>
<entry>
<title>Add move to next unread Label on mark as read. (#6886)</title>
<updated>2024-10-17T08:38:25+00:00</updated>
<author>
<name>Mike</name>
<email>mtalexan@users.noreply.github.com</email>
</author>
<published>2024-10-17T08:38:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=24a4fcb5c3a001ee9810d7140f107160472fc1d5'/>
<id>urn:sha1:24a4fcb5c3a001ee9810d7140f107160472fc1d5</id>
<content type='text'>
* Add move to next unread Label on mark as read.

The Labels, unlike the Feeds and Categories, don't move to the next
unread when "move to next unread on mark all as read" user feature is
enabled.
Labels are more complex than Feeds and Categories because Entries can be
in more than Label at a time. So when marking all Entries in the Label
as read, it can cause other Labels to end up with all their Entries
marked as read as well. The calculation of what the next
Label/Feed/Category is to jump to normally happens when generating the
link for the "Mark as Read" buttons, but it can't for Labels.

To address the problem for Labels, use a placeholder value during the
pre-calculation of the "Mark as Read" button link. When that placeholder
value is encountered during the "Mark as Read" action, the next Label
with unread Entries will be calculated immediately after the mark as
read action has been processed.

Fix all the translations of the 'jump_next' text to remove the '(feed or
categories' part that no longer applies.
Attempt to fix the inconsistent Russian, Italian, and Polish
translations of 'jump_next' text, which phrased the '(feed or
categories)' part differently.

* Minor code formattting

* Fixes

* Optimize next label lookup.

Only get the tag list once, and actually error check that it returned successfully.
Fix a typo in a comment as well.

* Fix fallback when all Labels are read.

Fix the missing check for whether we're in the fallback case or not.

* Update app/i18n/ru/conf.php

* Update app/Controllers/entryController.php

* Minor changes

* One more minor

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Fix mark-as-read from user query (#6738)</title>
<updated>2024-08-27T13:33:45+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-08-27T13:33:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=7ba880ca1c74beef164065b9da912c54eee09f51'/>
<id>urn:sha1:7ba880ca1c74beef164065b9da912c54eee09f51</id>
<content type='text'>
fix https://github.com/FreshRSS/FreshRSS/issues/6732</content>
</entry>
<entry>
<title>Minor update whitespace PHPCS rules (#6666)</title>
<updated>2024-08-01T18:31:40+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-08-01T18:31:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=d2247221bbf23a8fe19f66ea4ad7d0a59ffaa5b4'/>
<id>urn:sha1:d2247221bbf23a8fe19f66ea4ad7d0a59ffaa5b4</id>
<content type='text'>
* Minor update whitespace PHPCS rules
To simplify our configuration, apply more rules, and be clearer about what is added or removed compared with PSR12.
Does not change our current conventions, but just a bit more consistent.

* Forgotten *.phtml

* Sort exclusion patterns + add a few for Extensions repo

* Relaxed some rules</content>
</entry>
<entry>
<title>Strong type array parameter helper (#6661)</title>
<updated>2024-07-29T12:48:17+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-07-29T12:48:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=5c8369ce38c67fba7dd39d68626534c7e61eb24c'/>
<id>urn:sha1:5c8369ce38c67fba7dd39d68626534c7e61eb24c</id>
<content type='text'>
Also useful for extensions (including one I am writing)</content>
</entry>
<entry>
<title>Pass PHPStan level 9 (#6544)</title>
<updated>2024-06-09T18:32:12+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-06-09T18:32:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=5b28a35003a015e29770094932157f13a3f7f5c0'/>
<id>urn:sha1:5b28a35003a015e29770094932157f13a3f7f5c0</id>
<content type='text'>
* More PHPStan

* More, passing

* 4 more files

* Update to PHPStan 1.11.4
Needed for fixed bug: Consider numeric-string types after string concat
https://github.com/phpstan/phpstan/releases/tag/1.11.4

* Pass PHPStan level 9
Start tracking booleansInConditions

* Fix mark as read

* Fix doctype

* ctype_digit</content>
</entry>
<entry>
<title>PHP 8.3 #[\Override] (#6273)</title>
<updated>2024-04-10T13:33:43+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-04-10T13:33:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=350edf398c55b472e19a3017de9b4d2d3420b9e4'/>
<id>urn:sha1:350edf398c55b472e19a3017de9b4d2d3420b9e4</id>
<content type='text'>
* PHP 8.3 #[\Override]
https://php.watch/versions/8.3/override-attr

With PHPStan `checkMissingOverrideMethodAttribute` https://phpstan.org/config-reference#checkmissingoverridemethodattribute

And modified the call to phpstan-next on the model of https://github.com/FreshRSS/Extensions/pull/228 (more robust than the find method, which gave some strange errors)

* Update extension example accordingly</content>
</entry>
<entry>
<title>Pass PHPStan level 8 (#5946)</title>
<updated>2023-12-18T16:59:16+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-12-18T16:59:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=a80a5f48a16e7d232168a7aaa68e9a1804235ce1'/>
<id>urn:sha1:a80a5f48a16e7d232168a7aaa68e9a1804235ce1</id>
<content type='text'>
* Pass PHPStan level 8
And prepare for PHPStan level 9 https://phpstan.org/user-guide/rule-levels

* Revert wrong replace in comment

* Fix PHPStan level 8

* Update PHPStan and other dev dependencies

* Remove obsolete comment

* noVariableVariables and towards bleedingEdge
https://github.com/phpstan/phpstan-strict-rules
https://phpstan.org/blog/what-is-bleeding-edge

* More bleedingEdge

* A bit more PHPStan level 9

* More PHPStan level 9

* Prepare for booleansInConditions
Ignore int and null

* Revert wrong line

* More fixes

* Fix keep_max_n_unread

* Stricter attribute functions

* Stricter callHooks and more PHPStan level 9

* More typing

* A tiny more</content>
</entry>
<entry>
<title>Use strict_types (#5830)</title>
<updated>2023-11-16T21:43:00+00:00</updated>
<author>
<name>Luc SANCHEZ</name>
<email>4697568+ColonelMoutarde@users.noreply.github.com</email>
</author>
<published>2023-11-16T21:43:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=30c7a61a9b410f023c56ef19b9389a61647d8768'/>
<id>urn:sha1:30c7a61a9b410f023c56ef19b9389a61647d8768</id>
<content type='text'>
* Little's optimisations and booleans in conditions

* Apply strict type

* Apply strict type

* Apply strict type

* Fix multiple bugs with PHP 8.2 and 8.3

* Many declares missing, more errors fixed

* Apply strict type

* Another approach

* Stronger typing for Minz_Session

* Fix case of SQLite

---------

Co-authored-by: Luc &lt;sanchezluc+freshrss@gmail.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>New feature important feeds (#5782)</title>
<updated>2023-11-08T19:23:54+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-11-08T19:23:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=348028a29043b7d1d0f80544c44f0454b2c375c3'/>
<id>urn:sha1:348028a29043b7d1d0f80544c44f0454b2c375c3</id>
<content type='text'>
* New feature important feeds

* Fix PHPStan

* Initial style for important feeds + keep unread

* Change UI order

* Count important unread

* Never mark as read important feeds during scroll

* Fix i18n conf.iew.normal regression

* Fix reader view

* More fix reader view

* Create important.svg

* Fix title

* Fix counter

* Account for important during  mark-all-as-read

* Fix underline colour

* 📌

* Changelog

---------

Co-authored-by: math-gh &lt;&gt;
Co-authored-by: maTh &lt;1645099+math-GH@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Require PHP 7.4+ (#5720)</title>
<updated>2023-10-30T19:47:27+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-10-30T19:47:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=06d00995049db9c7b915f67cfd4a5708aace458f'/>
<id>urn:sha1:06d00995049db9c7b915f67cfd4a5708aace458f</id>
<content type='text'>
* Require PHP 7.4+
https://github.com/FreshRSS/FreshRSS/discussions/5474

* Update Docker oldest
Alpine 3.13 with PHP 7.4.26

* Add missing packets to Docker oldest

* Update to typed properties
https://php.net/migration74.new-features#migration74.new-features.core.typed-properties

* More types</content>
</entry>
</feed>
