mirror of
https://github.com/FreshRSS/FreshRSS.git
synced 2026-01-20 11:17:56 -05:00
* Complete PHPStan Level 6 Fix https://github.com/FreshRSS/FreshRSS/issues/4112 And initiate PHPStan Level 7 * PHPStan Level 6 for tests * Use phpstan/phpstan-phpunit * Update to PHPStan version 1.10 * Fix mixed bug * Fix mixed return bug * Fix paginator bug * Fix FreshRSS_UserConfiguration * A couple more Minz_Configuration bug fixes * A few trivial PHPStan Level 7 fixes * A few more simple PHPStan Level 7 * More files passing PHPStan Level 7 Add interface to replace removed class from https://github.com/FreshRSS/FreshRSS/pull/5251 * A few more PHPStan Level 7 preparations * A few last details
31 lines
886 B
PHP
Executable File
31 lines
886 B
PHP
Executable File
#!/usr/bin/env php
|
|
<?php
|
|
require(__DIR__ . '/_cli.php');
|
|
|
|
performRequirementCheck(FreshRSS_Context::$system_conf->db['type'] ?? '');
|
|
|
|
$params = [
|
|
'user:',
|
|
'filename:',
|
|
];
|
|
|
|
$options = getopt('', $params);
|
|
|
|
if (!validateOptions($argv, $params) || empty($options['user']) || empty($options['filename']) || !is_string($options['user']) || !is_string($options['filename'])) {
|
|
fail('Usage: ' . basename(__FILE__) . ' --user username --filename /path/to/db.sqlite');
|
|
}
|
|
|
|
$username = cliInitUser($options['user']);
|
|
$filename = $options['filename'];
|
|
|
|
if (pathinfo($filename, PATHINFO_EXTENSION) !== 'sqlite') {
|
|
fail('Only *.sqlite files are supported!');
|
|
}
|
|
|
|
echo 'FreshRSS exporting database to SQLite for user “', $username, "”…\n";
|
|
|
|
$databaseDAO = FreshRSS_Factory::createDatabaseDAO($username);
|
|
$ok = $databaseDAO->dbCopy($filename, FreshRSS_DatabaseDAO::SQLITE_EXPORT);
|
|
|
|
done($ok);
|