<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/FreshRSS.php, branch edge</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=edge</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=edge'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2025-09-30T20:59:41+00:00</updated>
<entry>
<title>Add hook enums (#8036)</title>
<updated>2025-09-30T20:59:41+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2025-09-30T20:59:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=72884813e13596d211471482ffdc6d723ed678c9'/>
<id>urn:sha1:72884813e13596d211471482ffdc6d723ed678c9</id>
<content type='text'>
- add an enum to handle hook types (enum are available since PHP 8.1)
- change hook calls from string value to enum value
</content>
</entry>
<entry>
<title>Add option for CSP frame-ancestors (#7857)</title>
<updated>2025-09-21T11:29:58+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2025-09-21T11:29:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=bc3e4c8fa4bae9591166e12caa3fb6bf73893102'/>
<id>urn:sha1:bc3e4c8fa4bae9591166e12caa3fb6bf73893102</id>
<content type='text'>
* Add option for CSP frame-ancestors
https://github.com/FreshRSS/FreshRSS/discussions/7856

* Revert contentSelectorPreviewAction

* Same for f.php and api

* Fix double init in f.php

* No sandbox for API page</content>
</entry>
<entry>
<title>Put CSP everywhere (#7810)</title>
<updated>2025-08-11T17:35:54+00:00</updated>
<author>
<name>Inverle</name>
<email>inverle@proton.me</email>
</author>
<published>2025-08-11T17:35:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=7df6c201f2e6a6521d20718dfd8d9794c7437d1f'/>
<id>urn:sha1:7df6c201f2e6a6521d20718dfd8d9794c7437d1f</id>
<content type='text'>
* Puts CSP everywhere in `p/api`
   * including the HTML query page ❗
   * Also in `p/ext.php`
* Puts `X-Content-Type-Options: nosniff` everywhere
* Fixes custom icon configuration not showing `blob:` icon in statsController (idle feeds)
   * Also removes `style-src 'unsafe-inline'` since it doesn't seem to be needed
* Improves CSP of `p/f.php`

* Add `sandbox` directive
</content>
</entry>
<entry>
<title>Show warning when unsafe CSP policy is in use (#7804)</title>
<updated>2025-08-09T19:47:39+00:00</updated>
<author>
<name>Inverle</name>
<email>inverle@proton.me</email>
</author>
<published>2025-08-09T19:47:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=2b85a50ed72982ab0c0f9ef98c7ed1e15f21bf5f'/>
<id>urn:sha1:2b85a50ed72982ab0c0f9ef98c7ed1e15f21bf5f</id>
<content type='text'>
* Show warning when unsafe CSP policy is in use

* Fix bare markdown URL

* i18n: fr

* Minor i18n: fr

* Add target="_blank" to i18n strings

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>PHPStan booleansInConditions (#6793)</title>
<updated>2024-09-11T15:14:53+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-09-11T15:14:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=dfac9f5813df7d4c7c812c381364c8898333f559'/>
<id>urn:sha1:dfac9f5813df7d4c7c812c381364c8898333f559</id>
<content type='text'>
* PHPStan booleansInConditions

* Uniformisation</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>Minz remove use of deprecated variable (#6132)</title>
<updated>2024-03-01T09:08:05+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-03-01T09:08:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=96484d22a145fdef1d9002dc323f02e3b8ed2135'/>
<id>urn:sha1:96484d22a145fdef1d9002dc323f02e3b8ed2135</id>
<content type='text'>
and related improvements to clarify inheritance
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/6130</content>
</entry>
<entry>
<title>New feature: shareable user query  (#6052)</title>
<updated>2024-02-26T08:01:03+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-02-26T08:01:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=39cc1c11ec596176e842cc98e6a54337e3c04d7e'/>
<id>urn:sha1:39cc1c11ec596176e842cc98e6a54337e3c04d7e</id>
<content type='text'>
* New feature: shareable user query
Share the output of a user query by RSS / HTML / OPML with other people through unique URLs.
Replaces the global admin token, which was the only option (but unsafe) to share RSS outputs with other people.
Also add a new HTML output for people without an RSS reader.

fix https://github.com/FreshRSS/FreshRSS/issues/3066#issuecomment-648977890
fix https://github.com/FreshRSS/FreshRSS/issues/3178#issuecomment-769435504

* Remove unused method

* Fix token saving

* Implement HTML view

* Update i18n for master token

* Revert i18n get_favorite

* Fix missing i18n for user queries from before this PR

* Remove irrelevant tests

* Add link to RSS version

* Fix getGet

* Fix getState

* Fix getSearch

* Alternative getSearch

* Default getOrder

* Explicit default state

* Fix test

* Add OPML sharing

* Remove many redundant SQL queries from original implementation of user queries

* Fix article tags

* Use default user settings

* Prepare public search

* Fixes

* Allow user search on article tags

* Implement user search

* Revert filter bug

* Revert wrong SQL left outer join change

* Implement checkboxes

* Safe check of OPML

* Fix label

* Remove RSS button to favour new sharing method
That sharing button was using a global admin token

* First version of HTTP 304

* Disallow some recusrivity
fix https://github.com/FreshRSS/FreshRSS/issues/6086

* Draft of nav

* Minor httpConditional

* Add support for offset for pagination

* Fix offset pagination

* Fix explicit order ASC

* Add documentation

* Help links i18n

* Note about deprecated master token

* Typo

* Doc about format</content>
</entry>
<entry>
<title>Fix notifications (#5959)</title>
<updated>2023-12-22T10:03:32+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-12-22T10:03:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=c7a3281a73839590bfa9d8a9e73c41fc35fc2847'/>
<id>urn:sha1:c7a3281a73839590bfa9d8a9e73c41fc35fc2847</id>
<content type='text'>
The notification about wrong login was not working. Noticed while working on https://github.com/FreshRSS/FreshRSS/pull/5955
This was due to timing of when the notification is retrieved.
Simplified code to make the logic easier and more robust.</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>
</feed>
