<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/CategoryDAO.php, branch 1.19.1</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.19.1</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.19.1'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2021-03-23T21:31:48+00:00</updated>
<entry>
<title>Fix DB lock bug during refresh (MariaDB) (#3559)</title>
<updated>2021-03-23T21:31:48+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2021-03-23T21:31:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=90a0028d494405bc20c1409a7810246ebdd1bc75'/>
<id>urn:sha1:90a0028d494405bc20c1409a7810246ebdd1bc75</id>
<content type='text'>
#fix https://github.com/FreshRSS/FreshRSS/issues/3552</content>
</entry>
<entry>
<title>Travis: Enforce phpcs line length + whitespace (#3488)</title>
<updated>2021-02-28T11:26:24+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2021-02-28T11:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=947e918f05d70d5dce4efa4ef403e593581c3fa9'/>
<id>urn:sha1:947e918f05d70d5dce4efa4ef403e593581c3fa9</id>
<content type='text'>
* Update Travis line length

* Also check whitespace in CSS files

* Fix line length ext.php

* More syntax, string templates

* Fix exclude-pattern

* Test JS files as well</content>
</entry>
<entry>
<title>Fix null array index bug for PHP 7.4 (#2780)</title>
<updated>2020-01-20T18:28:13+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2020-01-20T18:28:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=e537bcc3978cd56679b69a3eb75b8a39412d20cd'/>
<id>urn:sha1:e537bcc3978cd56679b69a3eb75b8a39412d20cd</id>
<content type='text'>
Fix https://github.com/FreshRSS/FreshRSS/issues/2775
Especially for PHP 7.4+ "Array-style access of non-arrays"
https://php.net/migration74.incompatible</content>
</entry>
<entry>
<title>Fix adding categories in MySQL 5.5 (#2672)</title>
<updated>2019-11-18T18:46:38+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-11-18T18:46:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1ddf98c50b2e0388c76386202bd8be3442640418'/>
<id>urn:sha1:1ddf98c50b2e0388c76386202bd8be3442640418</id>
<content type='text'>
Fix https://github.com/FreshRSS/FreshRSS/issues/2670 (from
https://github.com/FreshRSS/FreshRSS/pull/2335 )
Tested with MySQL 5.5.40, the oldest version on Docker Hub
Debian 8.0 Jessie ships MySQL 5.5.43</content>
</entry>
<entry>
<title>More reset default category name (#2639)</title>
<updated>2019-11-06T19:49:04+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-11-06T19:49:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6d596e9e54308297d423b23bf65338d62eebc415'/>
<id>urn:sha1:6d596e9e54308297d423b23bf65338d62eebc415</id>
<content type='text'>
Improve https://github.com/FreshRSS/FreshRSS/pull/2638</content>
</entry>
<entry>
<title>Fix name of default category (#2638)</title>
<updated>2019-11-06T18:49:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-11-06T18:49:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=61878794a944d47bd3098ce0f18eaa303174fc67'/>
<id>urn:sha1:61878794a944d47bd3098ce0f18eaa303174fc67</id>
<content type='text'>
Fix https://github.com/FreshRSS/FreshRSS/issues/2637</content>
</entry>
<entry>
<title>Fix categories sorting (#2616)</title>
<updated>2019-10-31T11:33:18+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2019-10-31T11:33:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4058898de2006cb4ee3b4565bd3e0235b4d0f0d9'/>
<id>urn:sha1:4058898de2006cb4ee3b4565bd3e0235b4d0f0d9</id>
<content type='text'>
I had a bug when some articles in a category were unread. Sometimes,
filtering the category displayed all the articles, even with the "Adjust
showing" option.

A reasonably good guess was to look the last commits that impacted the
categories and, indeed, it was introduced by the new category sorting
system.

The sort function (`usort`) doesn't keep the index association, which is
important here. I must admit I don't understand exactly why (I didn't
search), but the keys are probably used somewhere. Another fix would be
to not rely on these keys anymore.

The bug was introduced in 042fcd5e93884690efdd2f957ca02751958c0724

- Ref PR: https://github.com/FreshRSS/FreshRSS/pull/2592
- Ref usort: https://www.php.net/manual/en/function.usort.php
- Ref uasort: https://www.php.net/manual/en/function.uasort.php</content>
</entry>
<entry>
<title>Add category order (#2592)</title>
<updated>2019-10-26T11:16:15+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2019-10-26T11:16:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f6e10579f2e78dc6403141351e41e2db9a2b6e97'/>
<id>urn:sha1:f6e10579f2e78dc6403141351e41e2db9a2b6e97</id>
<content type='text'>
* Add category order

Each category has a new 'priority' attribute. It is used to sort categories in
views. Categories with the same priority are sorted alphabetically. Categories
with no priority are displayed after those with one.

For example, if we have the following categories:
- A (priority: 2)
- B (no priority)
- C (priority: 1)
- D (priority: 2)
- E (no priority)
- F (priority: 1)

They will be displayed in the following order:
- C
- F
- A
- D
- B
- E

See #190

* Shorten help text

It took too much room and will not be so necessary once we have drag &amp;
drop
</content>
</entry>
<entry>
<title>Workaround for MySQL limitation 1093 (#2586)</title>
<updated>2019-10-23T00:12:49+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-10-23T00:12:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=fdfd8ce9be182943e73d20ec3bff4d560c5b7503'/>
<id>urn:sha1:fdfd8ce9be182943e73d20ec3bff4d560c5b7503</id>
<content type='text'>
* Workaround for MySQL limitation 1093
https://github.com/FreshRSS/FreshRSS/pull/2335#issuecomment-545194606
including minor Travis fixes</content>
</entry>
<entry>
<title>Feature/new archiving (#2335)</title>
<updated>2019-10-22T22:52:15+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2019-10-22T22:52:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=cc0db9af4f980829faa4bf0960617807b32fb4fa'/>
<id>urn:sha1:cc0db9af4f980829faa4bf0960617807b32fb4fa</id>
<content type='text'>
* Change archiving config page layout

I've changed some wording and moved actions into a
maintenance section.

* Update purge action

Now we have more control on the purge action. The configuration allows
us to choose what to keep and what to discard in a more precise way.
At the moment, the configuration applies for all feeds.

* Add purge configuration on feed level

Now the extend purge configuration is available on feed level.
It is stored as attributes and will be used in the purge action.

* Update purge action

Now the purge action uses the feed configuration if it exists and
defaults on user configuration if not.

* Add empty option in period list

* Fix configuration warnings

* Add archiving configuration on categories

See #2369

* Add user info back

* Add explanations in UI

* Fixes for SQLite + error + misc.

* Fix invalid feed reference

* Short array syntax

Only for new code, so far

* Fix prefix error

* Query performance, default values

Work in progress

* Fix default values and confirm before leaving

Form cancel and confirm changes before leaving were broken.
And start taking advantage of the short echo syntax `&lt;?= ?&gt;` as we have
moved to PHP 5.4+

* More work

* Tuning SQL

* Fix MariaDB + performance issue

* SQL performance

* Fix SQLite bug

* Fix some attributes JSON encoding bugs

Especially for SQLite export/import

* More uniform, fix bugs

More uniform between global, category, feed settings

* Drop special cases for old articles during refresh

Instead will use lastSeen date with the new archiving logic.
This was generating problems anyway
https://github.com/FreshRSS/FreshRSS/issues/2154

* Draft drop index keep_history

Not needed anymore

* MySQL typo

Now properly tested with MySQL, PostgreSQL, SQLite

* More work for legacy values

Important to avoid overriding user's preference and risking deleting
data erroneously

* Fix PHP 7.3 / 7.4 warnings

@aledeg "Trying to use values of type null, bool, int, float or resource
as an array (such as $null["key"]) will now generate a notice. "
https://php.net/migration74.incompatible

* Reintroduce min articles and take care of legacy parameters

* A few changes forgotten

* Draft of migration + DROP of feed.keep_history

* Fix several errors

And give up using const for SQL to allow multiple database types (and we
cannot redefine a const)

* Add keep_min to categories + factorise archiving logic

* Legacy fix

* Fix bug yield from

* Minor: Use JSON_UNESCAPED_SLASHE for attributes

And make more uniform

* Fix sign and missing variable

* Fine tune the logic
</content>
</entry>
</feed>
