<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Controllers/importExportController.php, 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-01-18T09:12:21+00:00</updated>
<entry>
<title>tec: Update the lib_opml (#4403)</title>
<updated>2023-01-18T09:12:21+00:00</updated>
<author>
<name>berumuron</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2023-01-18T09:12:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=daaa391e33c5d92e3dd91bb0b81ac420abed7097'/>
<id>urn:sha1:daaa391e33c5d92e3dd91bb0b81ac420abed7097</id>
<content type='text'>
* fix: Fix undefined GLOB_BRACE on Alpine

The manual states that:

&gt; Note: The GLOB_BRACE flag is not available on some non GNU systems,
&gt; like Solaris or Alpine Linux.

This generated an error on Alpine.

Reference: https://www.php.net/manual/function.glob.php

* fix: List details of feeds for OPML exportation

The details are necessary to export the XPath information, the CSS full
content path and read actions filters.

* Update LibOpml to 0.4.0

* Refactor OPML importation to be more robust

First, it fixes two regressions introduced by the update of lib_opml:

- title attribute is used when text attribute is missing;
- the OPML category attribute is used as a fallback for feeds categories.

In a related way, if also fixes a problem when a feed had both a parent
category outline and a category attribute. Before, it only considered the
attribute as its category, but now it considers the parent outline.

Then, it counts category limit correctly by not increasing
`$nb_categories` if the category already exists.

* Exclude lib_opml from the CodeSniffer

* Fix variable names when logging some errors

* Fix catch of LibOpml Exception

* Make sure to declare the category

* Exclude lib_opml from PHPStan analyze

* Disable markdownlint for lib_opml

* Fix typos

* Use auto-loading and allow updates via Composer

* Fix broken links to lib_opml

* Bring back the ability to import the OPML frss:opmlUrl attribute

* Refactor the logs of OPML errors

* Update lib_opml to the version 0.5.0

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Refactor entry-to-GReader API format (#4490)</title>
<updated>2022-08-08T10:04:02+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-08-08T10:04:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=82ac1d1e676f93b1567eba608c00c6edaf401a9e'/>
<id>urn:sha1:82ac1d1e676f93b1567eba608c00c6edaf401a9e</id>
<content type='text'>
* Refactor entry to GReader API format
Some code was copied in two locations and not completely uniform.
Cleaning of related variables and functions (e.g. better types for entries and categories as objects vs. as IDs).
Usecase: I need to call the same GReader-compatible serialization from an extension

* Fixed some edge cases

* Keep summary instead of content
`summary` and `content` seems to be used interchangeably in the Google Reader API. We have been using `summary` for our client API and  `content` in our export/import, so stick to that.</content>
</entry>
<entry>
<title>Add database field attributes for entries (#4444)</title>
<updated>2022-07-19T13:17:08+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-07-19T13:17:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0866fdaee85bc8530437436abe7f8536b8b0f4f0'/>
<id>urn:sha1:0866fdaee85bc8530437436abe7f8536b8b0f4f0</id>
<content type='text'>
* Add database field attributes for entries
Just like we already have for categories, feeds, etc.
No core use yet, but allows in particular extensions to save per-entry data

* Fix PHPStand

* Fix wrong variable</content>
</entry>
<entry>
<title>Dynamic OPML (#4407)</title>
<updated>2022-07-04T07:53:26+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-07-04T07:53:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=509c8cae6381ec46af7c8303eb92fda6ce496a4a'/>
<id>urn:sha1:509c8cae6381ec46af7c8303eb92fda6ce496a4a</id>
<content type='text'>
* Dynamic OPML draft
#fix https://github.com/FreshRSS/FreshRSS/issues/4191

* Export dynamic OPML
http://opml.org/spec2.opml#1629043127000

* Restart with simpler approach

* Minor revert

* Export dynamic OPML also for single feeds

* Special category type for importing dynamic OPML

* Parameter for excludeMutedFeeds

* Details

* More draft

* i18n

* Fix update

* Draft manual import working

* Working manual refresh

* Draft automatic update

* Working Web refresh + fixes

* Import/export dynamic OPML settings

* Annoying numerous lines in SQL logs

* Fix minor JavaScript error

* Fix auto adding new columns

* Add require

* Add missing 🗲

* Missing space

* Disable adding new feeds to dynamic categories

* Link from import

* i18n typo

* Improve theme icon function

* Fix pink-dark</content>
</entry>
<entry>
<title>Compat import JSON milliseconds (#4186)</title>
<updated>2022-01-31T23:03:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-01-31T23:03:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=05ca0517bbcc782a45692dcde0f9258d3165f6bc'/>
<id>urn:sha1:05ca0517bbcc782a45692dcde0f9258d3165f6bc</id>
<content type='text'>
#fix https://github.com/FreshRSS/FreshRSS/issues/4185</content>
</entry>
<entry>
<title>Use typographic quotes (#4133)</title>
<updated>2022-01-08T20:58:55+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-01-08T20:58:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1acd3ab09be1b65bfd6122ee351490c3b5527bb8'/>
<id>urn:sha1:1acd3ab09be1b65bfd6122ee351490c3b5527bb8</id>
<content type='text'>
* Use typographic quotes

* A few fixes

* Fix

* Fix not saved

* Implement feedback

* Detail

* Revert spoken English fixes
Left for a future dedicated discussion

* More reverts

* Final reverts

* Final minor</content>
</entry>
<entry>
<title>Fix various typos and spelling errors in documentation, comments and code. (#4134)</title>
<updated>2022-01-08T15:25:17+00:00</updated>
<author>
<name>Thomas Renes</name>
<email>thomas@renesweb.nl</email>
</author>
<published>2022-01-08T15:25:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=916df412f5b6f7fb9bcfb705a3c8c23e35304410'/>
<id>urn:sha1:916df412f5b6f7fb9bcfb705a3c8c23e35304410</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Optimise Minz_ModelPdo::class (#4119)</title>
<updated>2022-01-07T09:05:09+00:00</updated>
<author>
<name>Luc SANCHEZ</name>
<email>4697568+ColonelMoutarde@users.noreply.github.com</email>
</author>
<published>2022-01-07T09:05:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=ed19445f74c30854c60873cd1df1c38e15fc316b'/>
<id>urn:sha1:ed19445f74c30854c60873cd1df1c38e15fc316b</id>
<content type='text'>
* - Fix typo,
- remove unnecessary null in property,
- remove unused property,
- add phpDoc,
- add ext PDO in composer.json,
- use strict comparison,
- indentation

* Translate

* Update lib/Minz/ModelPdo.php

Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;

* The code is more explicite

* Fix phpstan

* Fix phpstan expect one

* Fix phpstan

* Return in back...

* make fix-all

* Fix exception and more types

* Fix more types

* Remove ext- in composer.json

Co-authored-by: Luc SANCHEZ &lt;l.sanchez-ext@ubitransport.com&gt;
Co-authored-by: Frans de Jonge &lt;fransdejonge@gmail.com&gt;
Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>PHPStan level 5 (#4110)</title>
<updated>2022-01-04T12:59:09+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-01-04T12:59:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1335a0e3cf11a0d4248e9eaaf748b89e6df741ef'/>
<id>urn:sha1:1335a0e3cf11a0d4248e9eaaf748b89e6df741ef</id>
<content type='text'>
* Fix most PHPDocs errors
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103
https://phpstan.org/writing-php-code/phpdoc-types

* Avoid func_get_args
Use variadic syntax instead https://php.net/manual/functions.arguments#functions.variable-arg-list
And avoid dynamic functions names when possible to more easily identify calls and unused functions.
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103

* PHPStan level 3

* PHPStand level 4

* Update default to PHPStan level 4

* Towards level 5

* Fix level 4 regression

* Towards level 5

* Pass PHPStan level 5

* Towards level 6

* Remove erronenous regression from changelog
https://github.com/FreshRSS/FreshRSS/pull/4116</content>
</entry>
<entry>
<title>Add PHPStan (#4021)</title>
<updated>2021-12-31T16:00:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2021-12-31T16:00:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=77e9877316fcfacb26799afdf32d94c8411da80e'/>
<id>urn:sha1:77e9877316fcfacb26799afdf32d94c8411da80e</id>
<content type='text'>
* Add PHPStan
#fix https://github.com/FreshRSS/FreshRSS/issues/4016
https://phpstan.org/

```sh
composer run-script phpstan
```

* More fixes

* Fix global variables

* Add .phtml

* Fix merge
https://github.com/FreshRSS/FreshRSS/pull/4090

* Fix more warnings

* Fix view errors and enable in CI

* ReturnTypeWillChange

* Dynamic view type

* Fix Minz static/self bug</content>
</entry>
</feed>
