<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/docs/en/developers, branch 1.24.2</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.2</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.24.2'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2024-08-14T19:54:34+00:00</updated>
<entry>
<title>Update about running tests (#6709)</title>
<updated>2024-08-14T19:54:34+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-08-14T19:54:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=692e30465dd0b0dcd302eccc26af34148d17667b'/>
<id>urn:sha1:692e30465dd0b0dcd302eccc26af34148d17667b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add core extensions: UserCSS, UserJS (#6267)</title>
<updated>2024-06-05T18:58:19+00:00</updated>
<author>
<name>hkcomori</name>
<email>hkcomori@gmail.com</email>
</author>
<published>2024-06-05T18:58:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=99b1d551e61adb5cbd014677f151f443b0c6c35f'/>
<id>urn:sha1:99b1d551e61adb5cbd014677f151f443b0c6c35f</id>
<content type='text'>
* Copy CustomCSS and CustomJS

Original: FreshRSS/Extensions@9f21984

* Rename CustomCSS -&gt; UserCSS

* Rename CustomJS -&gt; UserJS

* Change metadata

The name is used for the directory where the configuration
is stored and should not contain spaces.
Since the name was changed, I reset the version number and
changed to semantic versioning.

* Change data directory

Changed the location of the configuration file to
the user data directory, because it is not `static`.
That way, the user's configurations are gathered
in the user directory, which makes it easier to backup them.

* Edit documentations

Remove procedures to install the extension
because it is no longer necessary.

* Fix wrong variables in the configuration page

Remove permission error indication because the storage location
is now in the user data directory managed by the application.

* Remove the `xExtension-` prefix for core extensions

* Set version to 1.0.0 for UserCSS, UserJS

* Refactoring

* Remove unused variables

* Remove version 0.0.1 in Changelog

Version 0.0.1 will not be merged, so only version 1.0.0 will remain.

* public getFileUrl

* Revert more protected

* Use entrypoint for extension user path instead of name

* Add space to extension name

* Add `#[\Override]`

* Add explains of User CSS and User JS to docs

* Remove README of User CSS and User JS

* Add migration code for extension user path

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Correct casing for GitHub (#6460)</title>
<updated>2024-05-15T06:58:10+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-05-15T06:58:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=2ed91026fcfef83ce5ef466a15e078229a106a6f'/>
<id>urn:sha1:2ed91026fcfef83ce5ef466a15e078229a106a6f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactoring: Rename dotpath into dotnotation (#6369)</title>
<updated>2024-04-25T06:28:42+00:00</updated>
<author>
<name>maTh</name>
<email>1645099+math-GH@users.noreply.github.com</email>
</author>
<published>2024-04-25T06:28:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=154a36700c80191121afec00b026daba5ff97dc8'/>
<id>urn:sha1:154a36700c80191121afec00b026daba5ff97dc8</id>
<content type='text'>
* KIND_JSON_DOTPATH -&gt; KIND_JSON_DOTNOTATION

* TYPE_JSON_DOTPATH =&gt; TYPE_JSON_DOTNOTATION

* json_dotpath =&gt; json_dotnotation

* dotPathsForStandardJsonFeed =&gt; dotNotationForStandardJsonFeed

* TYPE_JSON_DOTNOTATION = 'JSON+DotPath' =&gt; 'JSON+DotNotation'

* documentation: OPML.md

* convertJsonToRss()

* $dotpaths =&gt; $dotnotations

* FreshRSS_Feed_Exception

* comment

* Compatibility TYPE_JSON_DOTPATH

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</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>Add a way to modify CSP rules within an extension (#6246)</title>
<updated>2024-03-30T17:09:44+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2024-03-30T17:09:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=7da0e70a7221a42fb8ff6534fc339b18f8e2daa1'/>
<id>urn:sha1:7da0e70a7221a42fb8ff6534fc339b18f8e2daa1</id>
<content type='text'>
This will allow to change CSP rules to authorize the use of external scripts.
We might need to add some safeguard since it will be virtually possible to
load any script even malicious one.</content>
</entry>
<entry>
<title>Add Read You (#4633)</title>
<updated>2024-01-21T12:56:08+00:00</updated>
<author>
<name>th0mcat</name>
<email>37344783+th0mcat@users.noreply.github.com</email>
</author>
<published>2024-01-21T12:56:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=79bf7d496788d9c36bd276aa6c9a0543189f4688'/>
<id>urn:sha1:79bf7d496788d9c36bd276aa6c9a0543189f4688</id>
<content type='text'>
* Add Read You

* Update README.fr.md

* Add Read You

* Add Read You

* Add Read You

* Add Read You

* Beta version ready
https://github.com/Ashinch/ReadYou/pull/536
https://github.com/Ashinch/ReadYou/discussions/478
https://github.com/Ashinch/ReadYou/discussions/542

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>JSONFeeds, JSON scraping, and POST requests for feeds (#5662)</title>
<updated>2024-01-10T07:23:45+00:00</updated>
<author>
<name>eta-orionis</name>
<email>3466670+eta-orionis@users.noreply.github.com</email>
</author>
<published>2024-01-10T07:23:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=9c97d8ca729e3cfb067445c0d3c9ad8284132aeb'/>
<id>urn:sha1:9c97d8ca729e3cfb067445c0d3c9ad8284132aeb</id>
<content type='text'>
* allow POST requests for feeds

* added json dotpath and jsonfeed subscriptions. No translation strings yet

* debug and fix jsonfeed parser

* bugfix params saved when editing feed

* added translations for JSON features

* Update docs for web scraping

* make fix-all
and revert unrelated changes, plus a few manual fixes, but there are still several type errors

* Fix some i18n

* refactor json parsing for both feed types

* cleanup unnecessary comment

* refactored generation of SimplePie for XPath and JSON feeds

* Fix merge error

* Update to newer FreshRSS code

* A bit of refactoring

* doc, whitespace

* JSON Feed is in two words

* Add support for array syntax

* Whitespace

* Add OPML export/import

* Work on i18n

* Accept application/feed+json

* Rework POST

* Fix update

* OPML for cURL options

* Fix types

* Fix Typos

---------

Co-authored-by: Erion Elmasllari &lt;elmasllari@factorsixty.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>API add unsubscribe example (#5965)</title>
<updated>2023-12-23T10:07:14+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-12-23T10:07:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=ac5980231b5433a18620e9502174fffde4a4e883'/>
<id>urn:sha1:ac5980231b5433a18620e9502174fffde4a4e883</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Changelog</title>
<updated>2023-11-25T11:44:52+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2023-11-25T11:44:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=7e1f549eb47850457b6828be57af332f7042d1cd'/>
<id>urn:sha1:7e1f549eb47850457b6828be57af332f7042d1cd</id>
<content type='text'>
</content>
</entry>
</feed>
