<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Controllers/importExportController.php, branch 1.18.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.18.0</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=1.18.0'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2021-02-28T11:26:24+00:00</updated>
<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>Change zip handling methods (#3470)</title>
<updated>2021-02-20T23:51:53+00:00</updated>
<author>
<name>Alexis Degrugillier</name>
<email>aledeg@users.noreply.github.com</email>
</author>
<published>2021-02-20T23:51:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=fd803875410cf056242a786260fb8ed62a733c06'/>
<id>urn:sha1:fd803875410cf056242a786260fb8ed62a733c06</id>
<content type='text'>
Before, we were using zip function but they are marked as deprecated as of
PHP 8.0. It's not safe to use them anymore since they can be removed at any
given time.
Now, we are using the ZipArchive class to handle our zip methods. It's safe
to use it since it's available for PHP 5.2 and higher.

See #3460</content>
</entry>
<entry>
<title>API implement OPML import/export (#3424)</title>
<updated>2021-02-06T11:43:30+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2021-02-06T11:43:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4a87f34bcff6afe28e33692e40dcbfb1f663f75a'/>
<id>urn:sha1:4a87f34bcff6afe28e33692e40dcbfb1f663f75a</id>
<content type='text'>
#fix https://github.com/FreshRSS/FreshRSS/issues/3421</content>
</entry>
<entry>
<title>Better OPML import of feeds in multiple categories (#3286)</title>
<updated>2020-12-26T16:23:23+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2020-12-26T16:23:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=4f742151992d3a56aea5780bbd062ba18fd8a14b'/>
<id>urn:sha1:4f742151992d3a56aea5780bbd062ba18fd8a14b</id>
<content type='text'>
#fix https://github.com/FreshRSS/FreshRSS/issues/3284
Helps https://github.com/FreshRSS/FreshRSS/issues/1989

In OPMLs files in which feeds are listed several times, favour the
version in a category instead of in no category.</content>
</entry>
<entry>
<title>tec: Refactor the export feature (#3045)</title>
<updated>2020-06-13T17:36:24+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2020-06-13T17:36:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=15505a03779326f9497644e9827477cdcc26c2d2'/>
<id>urn:sha1:15505a03779326f9497644e9827477cdcc26c2d2</id>
<content type='text'>
Even if the issue #3035 seemed pretty simple at a first glance, it was
more complicated than I expected. Because we send CSP headers AFTER
running the controller actions, it means we can't "echo" any content
from the controller. It's in fact a good practice, but it was easier at
the time we developed the feature.

To fix that, the only thing I had to do was to move the `print()` and
`readfile()` function into the view. The problem was that we needed to
output the content from the CLI too. Then, things became more
complicated. I decided to extract the export-related methods in a
`FreshRSS_Export_Service` class, in order to use it from both the
controller and the CLI. It was an opportunity to refactor the whole
feature in order to make it a bit more linear and easy to read.

Reference: https://github.com/FreshRSS/FreshRSS/issues/3035</content>
</entry>
<entry>
<title>Fix filenames for files exported with CLI (#2932)</title>
<updated>2020-04-30T10:11:51+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2020-04-30T10:11:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=8f188ffa8498424653a3e6086ef99bbe1745cd29'/>
<id>urn:sha1:8f188ffa8498424653a3e6086ef99bbe1745cd29</id>
<content type='text'>
Filenames were created with the username of the current user. However,
when we export the files with the CLI, the current user is "_".

This commit makes the username always required in the `exportFile`
method so we make sure to always manipulate a real value. Consequently,
the filenames can be formatted correctly.

Obviously, this has absolutely no impacts since the CLI doesn't consider
the HTTP headers. It just makes things a bit more clear. It's a first
step to remove the concept of "default user".</content>
</entry>
<entry>
<title>Increase import size (#2563)</title>
<updated>2019-10-08T18:52:03+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-10-08T18:52:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=077e3cff458e4c36b364c065397d524025ee3de1'/>
<id>urn:sha1:077e3cff458e4c36b364c065397d524025ee3de1</id>
<content type='text'>
* Increase import size

This is merely a temporary workaround to allow at least some medium size
imports
https://framateam.org/freshrss/pl/7wbt4tcyetrfmris9xdcbq7uuw
The import module should be rewritten to process files one by one and as
data streams instead of loading multiple copies of the whole dataset in
memory as is the case now :-(
https://github.com/FreshRSS/FreshRSS/issues/1890
Note that the new SQLite export/import is distinct from this case.

* Use parameter
</content>
</entry>
<entry>
<title>CLI to export/import any database to/from SQLite (#2496)</title>
<updated>2019-09-15T19:36:53+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-09-15T19:36:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=c76a318193cda63064625b2d92c719b7150d7d64'/>
<id>urn:sha1:c76a318193cda63064625b2d92c719b7150d7d64</id>
<content type='text'>
* CLI to export/import any database to/from SQLite

Require PHP 5.5+ https://github.com/FreshRSS/FreshRSS/pull/2495

* Travis

* Execution rights

* Fix wrong static fields

* Fix MySQL bad default buffering

https://stackoverflow.com/questions/6895098/pdo-mysql-memory-consumption-with-large-result-set/6935271#6935271
https://php.net/manual/ref.pdo-mysql

* Fix count on progression

* Avoid static DB information

To ease working with two DBs at the same time

* Less static, simplify

Needs some testing

* Small corrections

* Special case for SQLite to SQLite

* Modify special case for SQLite

* Remove special case for SQLite

More uniform logic for the 3 databases.
Fix wrong DROP TABLE for SQLite.

* Drop indexes

* Revert "Drop indexes"

This reverts commit f28d2bae0935745c1c74ea38f2ee083f3fd4bf9d.

* Fix deletion

* Fix classic export

* Update cli/README.md

Co-Authored-By: Marien Fressinaud &lt;dev@marienfressinaud.fr&gt;

* Addressing part of review

* Remove goto :cry:

* Travis

* Comment for SQLite case

* Fix missing fields when inserting
</content>
</entry>
<entry>
<title>Allow to change the view layout (#2467)</title>
<updated>2019-08-02T09:40:57+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2019-08-02T09:40:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=49e1a2c579757994ae4ed5994339bd58a09238db'/>
<id>urn:sha1:49e1a2c579757994ae4ed5994339bd58a09238db</id>
<content type='text'>
The `_useLayout` function is marked as deprecated, replaced by a more
powerful `_layout` function.</content>
</entry>
<entry>
<title>No old ID (#2276)</title>
<updated>2019-03-19T19:14:31+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2019-03-19T19:14:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=834ffacce22ff6a2c0f1459476dc4a45e8ea06f9'/>
<id>urn:sha1:834ffacce22ff6a2c0f1459476dc4a45e8ea06f9</id>
<content type='text'>
* No old ID

https://github.com/FreshRSS/FreshRSS/issues/2273

* PostgreSQL insert or ignore
</content>
</entry>
</feed>
