<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Utils, branch 1.24.3</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.3</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.24.3'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2024-07-17T22:35:13+00:00</updated>
<entry>
<title>JSON Dot Notation allow string conversion (#6631)</title>
<updated>2024-07-17T22:35:13+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-07-17T22:35:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f21a164c055a5e88b430fa86dce14fc31bfd1afb'/>
<id>urn:sha1:f21a164c055a5e88b430fa86dce14fc31bfd1afb</id>
<content type='text'>
Allow fetching a string from string-friendly types.
Fix https://github.com/FreshRSS/FreshRSS/discussions/6626</content>
</entry>
<entry>
<title>Fix JSON Dot direct array (#6476)</title>
<updated>2024-05-22T21:21:16+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-05-22T21:21:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=c0e87f6a5c9b07cdde82e4c1876e19b8bf98d543'/>
<id>urn:sha1:c0e87f6a5c9b07cdde82e4c1876e19b8bf98d543</id>
<content type='text'>
* Fix JSON Dot direct array
Allow consuming a JSON array in which entries are top level
https://github.com/FreshRSS/FreshRSS/issues/6474

* Allow $ as root</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>i18n improved: dotted path -&gt; dot-notation (#6317)</title>
<updated>2024-04-18T12:00:17+00:00</updated>
<author>
<name>maTh</name>
<email>1645099+math-GH@users.noreply.github.com</email>
</author>
<published>2024-04-18T12:00:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3261b7bafbb8e7cd0003c0cfbf26e4d4a4b65def'/>
<id>urn:sha1:3261b7bafbb8e7cd0003c0cfbf26e4d4a4b65def</id>
<content type='text'>
* dotted path -&gt; dot-notation

* dot-notation -&gt; dot notation

* rename json_dotpath =&gt; json_dotnotation

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;

* Rename corresponding class

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;
Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;</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>PHPStan prepare exceptions (#6037)</title>
<updated>2024-01-15T09:36:30+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-01-15T09:36:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=314077a457f04cc2f0472e036af029e2676fbf02'/>
<id>urn:sha1:314077a457f04cc2f0472e036af029e2676fbf02</id>
<content type='text'>
Take advantage of
https://phpstan.org/blog/bring-your-exceptions-under-control

Minimum changes to pass `tooWideThrowType` and `implicitThrows`.

Revert some mistakes from:
https://github.com/FreshRSS/FreshRSS/pull/5504
Preparation needed before new PRs of the same type:
https://github.com/FreshRSS/FreshRSS/pull/5962

Fix several wrong PHPDocs and catches:

&gt; Method ... has ...Exception in PHPDoc @throws tag but it's not thrown.

&gt; Dead catch - ...Exception is never thrown in the try block.</content>
</entry>
<entry>
<title>Fix PHP 7.4 compatibility (#6038)</title>
<updated>2024-01-13T16:02:39+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2024-01-13T16:02:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=74ed1e6c5772338f8a18f4cbf63bdfcf2ef9baaf'/>
<id>urn:sha1:74ed1e6c5772338f8a18f4cbf63bdfcf2ef9baaf</id>
<content type='text'>
Some recent PRs have broken PHP 7.4 compatibility due to `mixed` typing.</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>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>
</feed>
