<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/Category.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>Fix feed ordering (#4841)</title>
<updated>2022-11-20T13:50:27+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2022-11-20T13:50:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=02b906549edee298e1986efd2b25e28dda726e89'/>
<id>urn:sha1:02b906549edee298e1986efd2b25e28dda726e89</id>
<content type='text'>
Before, the feeds were not ordered every time there was a change in the category
feed list. This behavior was causing discrepancies in the displayed list.
Now, the feeds are ordered every time there is a change in the category feed list.

See #4790</content>
</entry>
<entry>
<title>Fix path_entries encoding (#4823)</title>
<updated>2022-11-07T07:34:12+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-11-07T07:34:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=5897487f2f29cd3f29b538919c57988f118461e7'/>
<id>urn:sha1:5897487f2f29cd3f29b538919c57988f118461e7</id>
<content type='text'>
* Fix path_entries encoding
#fix https://github.com/FreshRSS/FreshRSS/issues/4815

* Fix preview</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>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>Refactor OPML export categories (#4356)</title>
<updated>2022-05-12T20:31:31+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-05-12T20:31:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=da0a333b941efecd0dcfe04346ce0241b42345cf'/>
<id>urn:sha1:da0a333b941efecd0dcfe04346ce0241b42345cf</id>
<content type='text'>
* Refactor OPML export categories
Simplify code to comply with types hints.
And renamed a property to plural.

* Link to OPML namespace</content>
</entry>
<entry>
<title>Fix Fever 32 bit ID issue + more PHP type hints (#4201)</title>
<updated>2022-02-06T13:31:36+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2022-02-06T13:31:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1c5cf718599f698836fef3f8f88748757a7e85b5'/>
<id>urn:sha1:1c5cf718599f698836fef3f8f88748757a7e85b5</id>
<content type='text'>
* Fix Fever 32 bit ID issue + more PHP type hints
#fix https://github.com/FreshRSS/FreshRSS/issues/4200
Follow up and fix regression from https://github.com/FreshRSS/FreshRSS/pull/4110

* More PHP type hints with PHPStan

* Fix pull problem

* Avoid more nulls</content>
</entry>
<entry>
<title>Fix feed sort order (#3466)</title>
<updated>2021-02-19T23:33:33+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2021-02-19T23:33:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4313c09e68056fe0c4cf9ddb9dc8d9ad5c92f1d9'/>
<id>urn:sha1:4313c09e68056fe0c4cf9ddb9dc8d9ad5c92f1d9</id>
<content type='text'>
Before, the feeds in the list weren't properly ordered. Uppercase
values were before lowercase values.
Now, the feed order is forced to ignore the case.

See #3228</content>
</entry>
<entry>
<title>Fever integer type for numbers (#2946)</title>
<updated>2020-05-03T11:39:16+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2020-05-03T11:39:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b1aac20839f6e1f3e733774eeb5984ce7b08c246'/>
<id>urn:sha1:b1aac20839f6e1f3e733774eeb5984ce7b08c246</id>
<content type='text'>
* Fever integer type for feed ID

#Fix
https://github.com/FreshRSS/FreshRSS/issues/2940#issuecomment-623022435

* Fix feed_id

* Ensure string for entry ID

To be compatible with 32-bit platforms.
Before, the type was inconsistent depending on architecture + database

* Integer for entry count functions</content>
</entry>
<entry>
<title>tec: Fix test suite (#2721)</title>
<updated>2019-12-23T10:00:22+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2019-12-23T10:00:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=8f5d8af72f91e3fa1d47717379570964fe970069'/>
<id>urn:sha1:8f5d8af72f91e3fa1d47717379570964fe970069</id>
<content type='text'>
* Rework the travis file to enable PHPUnit

I realized that unit tests weren't executed on Travis. While working on
this file to enable these tests, I started to think we could simplify
it.

I separated jobs so:

- PHP linter and tests are only performed on PHP 7.3
- Translations are tested separatly so they can fail (it was already the
  case but it was hard to understand the way it was done)
- PHP 5.6 only checks syntax issues
- the last job checks css, js, etc. (it didn't change)

PHPUnit is not executed on 5.6 because only the version 5 is available
while the latest version is the 8 (https://phpunit.de/supported-versions.html).

I think it's easier to read (each job is more explicit) but I'm not a
Travis expert so maybe there's some room for improvements.

* Fix failing tests

The category `_name` regression was introduced in commit b323ed084.

I wasn't able to understand when and why Search tests was wrong.

The rest is about upgrade of PHPUnit.
</content>
</entry>
</feed>
