<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/Feed.php, branch 1.15.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.15.2</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.15.2'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2019-10-22T22:52:15+00:00</updated>
<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>
<entry>
<title>PDO refactoring for code simplification (#2522)</title>
<updated>2019-09-29T14:22:50+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-09-29T14:22:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=e3e5954394f4523850c78e80e496f1b916622677'/>
<id>urn:sha1:e3e5954394f4523850c78e80e496f1b916622677</id>
<content type='text'>
* PDO refactor

* Automatic prefix when using the syntax `_tableName`
* Uniformity: MySQL is now PDO::ATTR_EMULATE_PREPARES = false just like SQLite and PostgreSQL, with consequences such as only one statement per query
* Use PDO methods exec(), query(), prepare() + execute() in a more efficient way
* Remove auto-update SQL code for versions older than FreshRSS 1.5 (3 years old)
* The name of the default category is set in PHP instead of in the DB (simplies SQL and allows changing the name according to the FreshRSS language)
* Rename `-&gt;bd` to `-&gt;pdo` (less of a frenshism, and more informative)
* Fix some requests, which were not compatible with MySQL prepared statements

* Whitespace

* Fix syntax for PostgreSQL sequences

+ MySQL install

* Minor formatting

* Fix lastInsertId for PostgreSQL

* Use PHP 5.6+ const

Take advantage of https://github.com/FreshRSS/FreshRSS/pull/2527
https://www.php.net/manual/en/migration56.new-features.php

* A bit of forgotten PHP 5.6 simplification for cURL

* Forgotten $s

* Mini fix custom user config

https://github.com/FreshRSS/FreshRSS/pull/2490/files#r326290346

* More work on install.php but not finished

* install.php working

* More cleaning of PDO in install

* Even more simplification

Take advantage of PDO-&gt;exec() to run multiple statements

* Disallow changing the name of the default category

https://github.com/FreshRSS/FreshRSS/pull/2522#discussion_r326967724
</content>
</entry>
<entry>
<title>Filter actions (#2275)</title>
<updated>2019-03-23T21:52:47+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-03-23T21:52:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1804c0e0bc095487b9a1ad13cbc9f55f6cef2a2a'/>
<id>urn:sha1:1804c0e0bc095487b9a1ad13cbc9f55f6cef2a2a</id>
<content type='text'>
* Draft of filter actions

* Travis

* Implement UI + finish logic

* Travis
</content>
</entry>
<entry>
<title>Update naming to WebSub (#2184)</title>
<updated>2018-12-16T16:02:03+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-12-16T16:02:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=512d047f02b601dcf21f8c807117ea154967e58f'/>
<id>urn:sha1:512d047f02b601dcf21f8c807117ea154967e58f</id>
<content type='text'>
Instead of PubSubHubbub / PuSH</content>
</entry>
<entry>
<title>Minor additional WebSub debug</title>
<updated>2018-11-15T16:07:05+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-11-15T16:07:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6122a45d9a60fb52cbb83cb649dbf928c6446149'/>
<id>urn:sha1:6122a45d9a60fb52cbb83cb649dbf928c6446149</id>
<content type='text'>
</content>
</entry>
<entry>
<title>API encoding tuning (#2120)</title>
<updated>2018-11-12T08:03:20+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-11-12T08:03:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0fce9892ff2b03083706b4f78495539861db98aa'/>
<id>urn:sha1:0fce9892ff2b03083706b4f78495539861db98aa</id>
<content type='text'>
Use only minimal XML-&gt;Unicode encoding for articles title.
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/2093</content>
</entry>
<entry>
<title>Tweaks for Vienna RSS (#2093)</title>
<updated>2018-11-11T16:31:50+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-11-11T16:31:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b672fc190d7df163449e91400c6d6a08a3775835'/>
<id>urn:sha1:b672fc190d7df163449e91400c6d6a08a3775835</id>
<content type='text'>
* Tweaks for Vienna RSS

https://github.com/FreshRSS/FreshRSS/issues/2091
https://github.com/ViennaRSS/vienna-rss/issues/1197

* Fix get feed by URL

* Fix get item ids returning starred elements

* API add item ids by feed URL

* Add API filter `it`

https://feedhq.readthedocs.io/en/latest/api/reference.html#stream-items-ids

* API add `nt=` filter + refactoring

* No ; prefix for author

https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435562495

* Add id long form prefix and accept short id form

https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435631259

* Fix quote problem

https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435683930

* Isolate bug fix for News+

https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-435687041

* Rework encoding conventions

https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-437441834

* Unicode escaping alternative

Alternative approach to encode XML special characters and other
problematic characters into their Unicode fullwidth version when we
cannot use HTML-encoding because clients disagree wether they should
HTML-decode or not.
https://github.com/FreshRSS/FreshRSS/issues/2091#issuecomment-436059559
</content>
</entry>
<entry>
<title>Option to force clear cache (#2052)</title>
<updated>2018-10-17T16:03:50+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-10-17T16:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0aecf442946f7aa618fcc759f79807cd81346dc4'/>
<id>urn:sha1:0aecf442946f7aa618fcc759f79807cd81346dc4</id>
<content type='text'>
https://github.com/FreshRSS/FreshRSS/issues/1020#issuecomment-428515868</content>
</entry>
<entry>
<title>Improve authors (#2025)</title>
<updated>2018-09-16T08:46:27+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-09-16T08:46:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b323ed084620cac2222fe1c93ec05b9773eb81e6'/>
<id>urn:sha1:b323ed084620cac2222fe1c93ec05b9773eb81e6</id>
<content type='text'>
* Links for authors and multiple authors

Favour ';' as a separator instead of ',' to better cope with
multi-author scientific articles.
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/1997 ,
https://github.com/FreshRSS/FreshRSS/issues/1968,
https://github.com/FreshRSS/FreshRSS/pull/2023

* Change i18n authors

* Update layout

* Unicode-compatible search

Example for `author:Loïc`

* author &lt;em&gt; styling

* Final details

* Minor spacing
</content>
</entry>
<entry>
<title>Tags split improvement (#2023)</title>
<updated>2018-09-15T11:06:29+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2018-09-15T11:06:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=af27b6d300723883f1110eee103eb892ddf1056d'/>
<id>urn:sha1:af27b6d300723883f1110eee103eb892ddf1056d</id>
<content type='text'>
* Tags split improvement

Some feeds use a single category with comma-separated tags.
Better handling of tags containing a space

* Handle spaces in searches with +

Can now search in tags containing spaces

* Fix searches with spaces for title and author
</content>
</entry>
</feed>
