<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/EntryDAO.php, branch 0.9.1</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.9.1</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.9.1'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2014-09-19T01:15:20+00:00</updated>
<entry>
<title>Refactor code for strict unread message display</title>
<updated>2014-09-19T01:15:20+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>github@ainw.org</email>
</author>
<published>2014-09-19T01:06:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=71617080e224b8d3a3397a27b78e1f509499431c'/>
<id>urn:sha1:71617080e224b8d3a3397a27b78e1f509499431c</id>
<content type='text'>
Before, when you choose the show unread message option and the hide categories and feeds options, the categories and feeds weren't hidden. Now it is working properly.
Before, the unread filter icon was not selected with the previous way of using the constants. Now, the filter is highlighted when selected in strict mode.

See #619
</content>
</entry>
<entry>
<title>Add a new configuration option</title>
<updated>2014-09-06T15:32:52+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>github@ainw.org</email>
</author>
<published>2014-09-06T15:32:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=83832a39c4651bd3e4bfa007f75c91d040db79d3'/>
<id>urn:sha1:83832a39c4651bd3e4bfa007f75c91d040db79d3</id>
<content type='text'>
Before, when you selected the option to display only unread articles, it shows read articles if no unread article were found.
Now, this option is renamed to include information on fallback behavior and a new option is created to have the "only unread" behavior

See #551

It is missing the german translation
</content>
</entry>
<entry>
<title>Fix bug add favorite entry</title>
<updated>2014-08-23T20:02:22+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-08-23T20:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1316ada15260e8f2fdb486595d5953bef9badc50'/>
<id>urn:sha1:1316ada15260e8f2fdb486595d5953bef9badc50</id>
<content type='text'>
See https://github.com/marienfressinaud/FreshRSS/issues/494
</content>
</entry>
<entry>
<title>Improvement for ASC order</title>
<updated>2014-08-19T18:58:18+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-08-19T18:58:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=50075bfbdcd6a7be010eb82ce1fffac0ea283de7'/>
<id>urn:sha1:50075bfbdcd6a7be010eb82ce1fffac0ea283de7</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/495
</content>
</entry>
<entry>
<title>First bug for old articles first</title>
<updated>2014-08-07T09:29:19+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-08-07T09:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=65d6796e9244bbc94f5d04cf47723a533b6a5351'/>
<id>urn:sha1:65d6796e9244bbc94f5d04cf47723a533b6a5351</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/495
</content>
</entry>
<entry>
<title>Fix bugs in import/export</title>
<updated>2014-07-23T21:56:16+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-07-23T21:56:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=d5d3f6dcfa21e7defb26f3d470289e957bdb3dde'/>
<id>urn:sha1:d5d3f6dcfa21e7defb26f3d470289e957bdb3dde</id>
<content type='text'>
- EntryDAO.php: add a missing "FreshRSS_EntryDAO::"
- Fix htmlspecialchars in opml export
</content>
</entry>
<entry>
<title>SQL: Bug with order ASC</title>
<updated>2014-07-17T09:56:15+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-17T09:56:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3403af30501cc0df75290372bc111430e0f8e70a'/>
<id>urn:sha1:3403af30501cc0df75290372bc111430e0f8e70a</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/538
</content>
</entry>
<entry>
<title>SQL: MySQL speed optimisation</title>
<updated>2014-07-10T13:49:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-10T13:49:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6c83264f83221dcaa41d58e0b35b9925cde130e4'/>
<id>urn:sha1:6c83264f83221dcaa41d58e0b35b9925cde130e4</id>
<content type='text'>
Would be nice to test with other versions of MySQL too.

Comparison before/after:

mysql&gt; EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority &gt; 0 AND
(e1.id &gt;= 1381615200000000 OR e1.is_read=0 OR e1.is_favorite=1 OR
(f.keep_history &lt;&gt; 0)) ORDER BY e1.id DESC LIMIT 31) e2 ON e2.id=e.id
ORDER BY e.id DESC;

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
| id | select_type | table      | type   | possible_keys
| key      | key_len | ref           | rows | Extra
|

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
|  1 | PRIMARY     | &lt;derived2&gt; | ALL    | NULL
| NULL     | NULL    | NULL          |   31 | Using temporary; Using
filesort              |
|  1 | PRIMARY     | e          | eq_ref | PRIMARY
| PRIMARY  | 8       | e2.id         |    1 |
|
|  2 | DERIVED     | f          | range  | PRIMARY,priority,keep_history
| priority | 1       | NULL          |  137 | Using where; Using
temporary; Using filesort |
|  2 | DERIVED     | e1         | ref    |
PRIMARY,id_feed,is_favorite,is_read | id_feed  | 2       | freshrss.f.id
|  452 | Using where                                  |

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
4 rows in set (3.50 sec)

mysql&gt; EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority &gt; 0 AND e1.id
&lt;=9000000000000000 AND (e1.id &gt;= 1381615200000000 OR e1.is_read=0 OR
e1.is_favorite=1 OR (f.keep_history &lt;&gt; 0)) ORDER BY e1.id DESC LIMIT 31)
e2 ON e2.id=e.id ORDER BY e.id DESC;

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
| id | select_type | table      | type   | possible_keys
| key     | key_len | ref                 | rows  | Extra
|

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
|  1 | PRIMARY     | &lt;derived2&gt; | ALL    | NULL
| NULL    | NULL    | NULL                |    31 | Using temporary;
Using filesort |
|  1 | PRIMARY     | e          | eq_ref | PRIMARY
| PRIMARY | 8       | e2.id               |     1 |
|
|  2 | DERIVED     | e1         | range  |
PRIMARY,id_feed,is_favorite,is_read | PRIMARY | 8       | NULL
| 70084 | Using where                     |
|  2 | DERIVED     | f          | eq_ref | PRIMARY,priority,keep_history
| PRIMARY | 2       | freshrss.e1.id_feed |     1 | Using where
|

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
4 rows in set (0.01 sec)
</content>
</entry>
<entry>
<title>SQL: removed superfluous transactions to avoid some dead locks</title>
<updated>2014-07-08T12:14:02+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-08T12:14:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0f842c1aea74792d9b6f7e41e374c5aa0ec745fb'/>
<id>urn:sha1:0f842c1aea74792d9b6f7e41e374c5aa0ec745fb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>SQL: improved performance for adding new articles</title>
<updated>2014-07-07T16:25:48+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-07T16:25:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=439a0e2991231db51232646736a4bf78cfb2bffd'/>
<id>urn:sha1:439a0e2991231db51232646736a4bf78cfb2bffd</id>
<content type='text'>
</content>
</entry>
</feed>
