<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/EntryDAOSQLite.php, branch 1.24.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.24.0</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.24.0'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2024-04-10T13:33:43+00:00</updated>
<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>Compatibility PHP 8.2 for running automated tests (#5826)</title>
<updated>2023-11-07T12:15:48+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-11-07T12:15:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=85345559c7c66787ad9474da8a63de24e6484843'/>
<id>urn:sha1:85345559c7c66787ad9474da8a63de24e6484843</id>
<content type='text'>
https://php.net/pdo.errorinfo has slightly changed signature</content>
</entry>
<entry>
<title>SQL: Same updateCacheUnreads for all DBs (#5648)</title>
<updated>2023-09-12T11:44:17+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-09-12T11:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0bf33abac8cf83dfece4ccd7f3146c373effae2c'/>
<id>urn:sha1:0bf33abac8cf83dfece4ccd7f3146c373effae2c</id>
<content type='text'>
* SQL: Same updateCacheUnreads for all DBs
Use same SQL update request for MySQL / MariaDB than the one we already used for PostgreSQL / SQLite (i.e. using a sub-query).

Testing on a DB of 688MB with 270k entries, 199 feeds, 19 categories, using MySQL 8.1.0.

The new SQL update using a sub-query took in average 0.02s, while the old SQL update using a join took in average 0.05s. SQL cache was properly invalidated between each run. The new SQL request is thus about twice faster.

Another advantage of the SQL update using a sub-query is that it works identically in PostgreSQL, SQLite, MariaDB, MySQL, so we do need different versions anymore.

Contributes to https://github.com/FreshRSS/FreshRSS/issues/5008#issuecomment-1709755370

* Force USE INDEX

* Use same SQL methods also for markReadEntries, markReadCat</content>
</entry>
<entry>
<title>SQL: clean old auto-updates (#5649)</title>
<updated>2023-09-12T08:43:14+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-09-12T08:43:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f050a94b48499286abfb4b69f3bcb3dee5f9ea2d'/>
<id>urn:sha1:f050a94b48499286abfb4b69f3bcb3dee5f9ea2d</id>
<content type='text'>
Should help with some DB lock issues.

Complete https://github.com/FreshRSS/FreshRSS/pull/3558 after https://github.com/FreshRSS/FreshRSS/pull/5625 already cherry-picked from it.

* Removed auto-update of MySQL GUID case sensitivity
https://github.com/FreshRSS/FreshRSS/pull/2078
  * Contributed to a DB lock in https://github.com/FreshRSS/FreshRSS/issues/5008

Also removed the following non-problematic auto-updates, simply because they were older than the above ones
* Auto-create custom labels (1.12.0) https://github.com/FreshRSS/FreshRSS/pull/2027
* Auto-add JSON column for feeds (1.11.0) https://github.com/FreshRSS/FreshRSS/pull/1838
* Auto-create temporary tables (1.7.0) https://github.com/FreshRSS/FreshRSS/pull/1470</content>
</entry>
<entry>
<title>Chore/processing of depreciations and updating code to php72 minimum (#5504)</title>
<updated>2023-07-07T20:36:27+00:00</updated>
<author>
<name>Luc SANCHEZ</name>
<email>4697568+ColonelMoutarde@users.noreply.github.com</email>
</author>
<published>2023-07-07T20:36:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f8f163d054110f7e0ff6650fca146b474335f4bd'/>
<id>urn:sha1:f8f163d054110f7e0ff6650fca146b474335f4bd</id>
<content type='text'>
* processing of depreciations and updating of code to php7.2 minimum

* Autoformat many strange array indenting
And revert a few unwanted changes

---------

Co-authored-by: Luc &lt;sanchezluc+freshrss@gmail.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>A few additional PHPStan rules (#5388)</title>
<updated>2023-05-11T11:02:04+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-05-11T11:02:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6e2f2f1c1e98ecd86aa89c6547beb742d7385d18'/>
<id>urn:sha1:6e2f2f1c1e98ecd86aa89c6547beb742d7385d18</id>
<content type='text'>
A subset of
https://github.com/phpstan/phpstan-strict-rules</content>
</entry>
<entry>
<title>PHPStan Level 7 for more DAO PDO (#5328)</title>
<updated>2023-04-28T12:01:11+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-04-28T12:01:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=c72914bba2363e436574204b3d6093a6f3cfce89'/>
<id>urn:sha1:c72914bba2363e436574204b3d6093a6f3cfce89</id>
<content type='text'>
* PHPStan Level 7 for more DAO PDO
With new function to address common type and check problems

* A bit more

* PHPStan Level 7 for FreshRSS_Entry</content>
</entry>
<entry>
<title>Complete PHPStan Level 6 (#5305)</title>
<updated>2023-04-17T06:30:21+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-04-17T06:30:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f3760f138dcbaf7a2190336a0378cf1b2190c9f5'/>
<id>urn:sha1:f3760f138dcbaf7a2190336a0378cf1b2190c9f5</id>
<content type='text'>
* Complete PHPStan Level 6
Fix https://github.com/FreshRSS/FreshRSS/issues/4112
And initiate PHPStan Level 7

* PHPStan Level 6 for tests
* Use phpstan/phpstan-phpunit
* Update to PHPStan version 1.10

* Fix mixed bug

* Fix mixed return bug

* Fix paginator bug

* Fix FreshRSS_UserConfiguration

* A couple more Minz_Configuration bug fixes

* A few trivial PHPStan Level 7 fixes

* A few more simple PHPStan Level 7

* More files passing PHPStan Level 7
Add interface to replace removed class from https://github.com/FreshRSS/FreshRSS/pull/5251

* A few more PHPStan Level 7 preparations

* A few last details</content>
</entry>
</feed>
