<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models, branch 0.7.3</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.7.3</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.7.3'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2014-07-19T00:35:03+00:00</updated>
<entry>
<title>Add statistics support for Sqlite</title>
<updated>2014-07-19T00:35:03+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>github@ainw.org</email>
</author>
<published>2014-07-19T00:35:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=68c0a827d221eeb398774d558f3d23b6e1c9e76c'/>
<id>urn:sha1:68c0a827d221eeb398774d558f3d23b6e1c9e76c</id>
<content type='text'>
Add statistics support for Sqlite by tweeking one query and rewrite an other. The rewrite implied a complete refactor of the MySql query as well.
Now the code is more flexible and make less queries to the database.

See #527
</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>Add base-theme in p/themes</title>
<updated>2014-07-10T15:42:42+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-07-10T15:42:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=f56dd400b7175ef95232fc57bf276812494b3186'/>
<id>urn:sha1:f56dd400b7175ef95232fc57bf276812494b3186</id>
<content type='text'>
This base theme is not visible by default (no name). You can use it
to create new theme.
Fix https://github.com/marienfressinaud/FreshRSS/issues/533 (comment)
</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>Coding style header.phtml + possibility to change logo</title>
<updated>2014-07-09T17:39:21+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-07-09T17:39:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=c1728fe0d776ccdedc20efd3120da599ac4157ed'/>
<id>urn:sha1:c1728fe0d776ccdedc20efd3120da599ac4157ed</id>
<content type='text'>
See https://github.com/marienfressinaud/FreshRSS/issues/532
</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>Add a configuration parameter</title>
<updated>2014-07-07T23:34:47+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>github@ainw.org</email>
</author>
<published>2014-07-07T23:21:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=21d8c03ac969d93b9a0d29ee5cb8cd2f5630bdb8'/>
<id>urn:sha1:21d8c03ac969d93b9a0d29ee5cb8cd2f5630bdb8</id>
<content type='text'>
Add a parameter to choose wether or not the user want to display a confirmation dialog when clicking on "mark all as read" actions.
</content>
</entry>
<entry>
<title>SQL: SQLite syntax uniformisation</title>
<updated>2014-07-07T19:12:13+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-07T19:12:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=e358c5e2e1f39ebc2b580fdd31f085d3423e9401'/>
<id>urn:sha1:e358c5e2e1f39ebc2b580fdd31f085d3423e9401</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/commit/805c91da98c2f582e279f3c853fba9e43f572419#diff-101042bec0ff3ac9d691b2e77fca3313R7
</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>
<entry>
<title>Prepare statistics for SQLite</title>
<updated>2014-07-06T09:54:00+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-06T09:54:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3bbd0e446f6a1a0c41a4db36d2841db36dc34004'/>
<id>urn:sha1:3bbd0e446f6a1a0c41a4db36d2841db36dc34004</id>
<content type='text'>
Temporarily disable 30-day statistics for SQLite
https://github.com/marienfressinaud/FreshRSS/issues/100
https://github.com/marienfressinaud/FreshRSS/issues/90
</content>
</entry>
</feed>
