<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models, branch 1.21.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.21.0</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.21.0'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2023-03-04T09:06:30+00:00</updated>
<entry>
<title>Safer updateCachedValues (#5158)</title>
<updated>2023-03-04T09:06:30+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-03-04T09:06:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=44f72889a589758da1b026a5288e23987a525095'/>
<id>urn:sha1:44f72889a589758da1b026a5288e23987a525095</id>
<content type='text'>
#fix https://github.com/FreshRSS/FreshRSS/issues/5156</content>
</entry>
<entry>
<title>XML+XPath (#5076)</title>
<updated>2023-02-09T12:57:20+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-02-09T12:57:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=05ae1b0d2684cea4eda664c5ea1a995cb9f0c4b9'/>
<id>urn:sha1:05ae1b0d2684cea4eda664c5ea1a995cb9f0c4b9</id>
<content type='text'>
* XML+XPath
#fix https://github.com/FreshRSS/FreshRSS/issues/5075
Implementation allowing to take an XML document as input using an XML parser (instead of an HTML parser for HTML+XPath)

* Remove noise from another PR

* Better MIME for XML

* And add glob *.xml for cache cleaning

* Minor syntax

* Add glob json for clean cache</content>
</entry>
<entry>
<title>code improvement for phpstan and humans ;) (#5084)</title>
<updated>2023-02-09T12:52:55+00:00</updated>
<author>
<name>Luc SANCHEZ</name>
<email>4697568+ColonelMoutarde@users.noreply.github.com</email>
</author>
<published>2023-02-09T12:52:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b9a62a6aaacf2763c45f503ed5602ba43bedfce0'/>
<id>urn:sha1:b9a62a6aaacf2763c45f503ed5602ba43bedfce0</id>
<content type='text'>
* code improvement for phpstan and humans ;)

* code improvement for phpstan and humans ;)

* code improvement for phpstan and humans ;)

* code improvement for phpstan and humans ;)

* PHPSTAN level 6

* PHPStan level 9

* Avoid return mixed

---------

Co-authored-by: Luc &lt;sanchezluc+freshrss@gmail.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>More robust application of access permissions (#5062)</title>
<updated>2023-02-06T14:42:53+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-02-06T14:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=e899e4edd97c296a29b2a8da2c2e3b598622c36e'/>
<id>urn:sha1:e899e4edd97c296a29b2a8da2c2e3b598622c36e</id>
<content type='text'>
* More robust application of access permissions
We were in particular missing directory traversal `+X` in our current recommendations.
Extracted to own shell script so it can easily be invoked.
Update access permissions in Docker to account to be more robust.
#fix https://github.com/FreshRSS/FreshRSS/discussions/5037

* Minor simplification

* Restrict mkdir permissions
Default mkdir permissions are 0777, which is not good for security, so downgrade to 0770.</content>
</entry>
<entry>
<title>Type hinting and doc (#5063)</title>
<updated>2023-02-03T13:35:59+00:00</updated>
<author>
<name>Luc SANCHEZ</name>
<email>4697568+ColonelMoutarde@users.noreply.github.com</email>
</author>
<published>2023-02-03T13:35:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=40aa8b9264f1918cb48a0e2f6fc00455181a004a'/>
<id>urn:sha1:40aa8b9264f1918cb48a0e2f6fc00455181a004a</id>
<content type='text'>
* Type hinting and doc

* fix cs

* Remove declare strict

* Remove declare strict

* Pass PHPStan level 9
Revert too boolean syntax

* Minor wording

* Fix revert typo

---------

Co-authored-by: Luc &lt;sanchezluc+freshrss@gmail.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>PHPStan level 9 for ./p/ and lib_rss.php (#5049)</title>
<updated>2023-01-29T17:53:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-01-29T17:53:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4f316b2ed397bb331ef89f2cd2d8ce92a725ccba'/>
<id>urn:sha1:4f316b2ed397bb331ef89f2cd2d8ce92a725ccba</id>
<content type='text'>
And app/FreshRSS.php
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4112</content>
</entry>
<entry>
<title>Fix types hint in UserQuery.php (#5045)</title>
<updated>2023-01-28T12:37:09+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-01-28T12:37:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=e617830e966862006e7f64eb83a733deb4549e29'/>
<id>urn:sha1:e617830e966862006e7f64eb83a733deb4549e29</id>
<content type='text'>
* Fix types hint in UserQuery.php
In particular, we had a mix of strings and integers for the query state
Pass PHPStan level 9

* Unneeded null check</content>
</entry>
<entry>
<title>Fix error handling when updating URL (#5039)</title>
<updated>2023-01-26T07:59:34+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-01-26T07:59:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=07efaf71eac19934d858df678576823da131d1bb'/>
<id>urn:sha1:07efaf71eac19934d858df678576823da131d1bb</id>
<content type='text'>
Fix 3 related error handling when updating the feed URL with an invalid URL. Previously leading to unclear 500 page with additional PHP errors.</content>
</entry>
<entry>
<title>Increase max feed URL length and drop unicity (#5038)</title>
<updated>2023-01-26T07:13:38+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-01-26T07:13:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=2f027545226eca238a6a80021cb3ac0e60b51696'/>
<id>urn:sha1:2f027545226eca238a6a80021cb3ac0e60b51696</id>
<content type='text'>
* Increase max feed URL length and drop unicity
#fix https://github.com/FreshRSS/FreshRSS/issues/4338
Drop the unicity constraint on our feed URL. In practice, this did not add much value as identical feeds could have different URLs. And it generated several problems, for instance during renaming or automatic redirections such as from HTTP to HTTPS, with collisions for which we dot not have any elegant handling.
I have kept a high limit of 32768 because cURL does not seem to have any limit except memory, which might lead to memory problems. This is the highest server-side value reported by https://www.sistrix.com/ask-sistrix/technical-seo/site-structure/url-length-how-long-can-a-url-be

* Same for Web site URL
For consistency</content>
</entry>
<entry>
<title>Safer timezone set (#5021)</title>
<updated>2023-01-19T17:26:04+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-01-19T17:26:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=dbdb7869c47ab8c9e3a42384401a7e29599e192f'/>
<id>urn:sha1:dbdb7869c47ab8c9e3a42384401a7e29599e192f</id>
<content type='text'>
* Safer timezone set
Add missing tzdata in Docker :newest
Fallback to UTC if no timezone is defined at all
#fix https://github.com/FreshRSS/FreshRSS/pull/4906#issuecomment-1386747169

* Better refactoring
Show fallback timezone everywhere</content>
</entry>
</feed>
