Updated Index library.
This commit is contained in:
parent
9025435dff
commit
6dc0ccd9bf
6 changed files with 72 additions and 64 deletions
108
composer.lock
generated
108
composer.lock
generated
|
@ -58,11 +58,11 @@
|
|||
},
|
||||
{
|
||||
"name": "flashwave/index",
|
||||
"version": "v0.2410.51409",
|
||||
"version": "v0.2410.191603",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://patchii.net/flash/index.git",
|
||||
"reference": "c43c6eb334f85edf8fa7b5e4058b3ba35a27d960"
|
||||
"reference": "17cdb4d1c239241200d7e30968122a8cd8b26509"
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
|
@ -83,6 +83,14 @@
|
|||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/Cache/ArrayCache/_ndx.php",
|
||||
"src/Cache/Memcached/_ndx.php",
|
||||
"src/Cache/Valkey/_ndx.php",
|
||||
"src/Db/MariaDb/_ndx.php",
|
||||
"src/Db/NullDb/_ndx.php",
|
||||
"src/Db/Sqlite/_ndx.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Index\\": "src"
|
||||
}
|
||||
|
@ -101,7 +109,7 @@
|
|||
],
|
||||
"description": "Composer package for the common library for my projects.",
|
||||
"homepage": "https://railgun.sh/index",
|
||||
"time": "2024-10-05T14:10:08+00:00"
|
||||
"time": "2024-10-19T16:04:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "guzzlehttp/psr7",
|
||||
|
@ -221,28 +229,28 @@
|
|||
},
|
||||
{
|
||||
"name": "jean85/pretty-package-versions",
|
||||
"version": "2.0.6",
|
||||
"version": "2.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Jean85/pretty-package-versions.git",
|
||||
"reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4"
|
||||
"reference": "3c4e5f62ba8d7de1734312e4fff32f67a8daaf10"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/f9fdd29ad8e6d024f52678b570e5593759b550b4",
|
||||
"reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4",
|
||||
"url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/3c4e5f62ba8d7de1734312e4fff32f67a8daaf10",
|
||||
"reference": "3c4e5f62ba8d7de1734312e4fff32f67a8daaf10",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-runtime-api": "^2.0.0",
|
||||
"php": "^7.1|^8.0"
|
||||
"composer-runtime-api": "^2.1.0",
|
||||
"php": "^7.4|^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"friendsofphp/php-cs-fixer": "^3.2",
|
||||
"jean85/composer-provided-replaced-stub-package": "^1.0",
|
||||
"phpstan/phpstan": "^1.4",
|
||||
"phpunit/phpunit": "^7.5|^8.5|^9.4",
|
||||
"vimeo/psalm": "^4.3"
|
||||
"phpunit/phpunit": "^7.5|^8.5|^9.6",
|
||||
"vimeo/psalm": "^4.3 || ^5.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
|
@ -274,9 +282,9 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/Jean85/pretty-package-versions/issues",
|
||||
"source": "https://github.com/Jean85/pretty-package-versions/tree/2.0.6"
|
||||
"source": "https://github.com/Jean85/pretty-package-versions/tree/2.1.0"
|
||||
},
|
||||
"time": "2024-03-08T09:58:59+00:00"
|
||||
"time": "2024-11-18T16:19:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/http-factory",
|
||||
|
@ -537,16 +545,16 @@
|
|||
},
|
||||
{
|
||||
"name": "sentry/sentry",
|
||||
"version": "4.9.0",
|
||||
"version": "4.10.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/getsentry/sentry-php.git",
|
||||
"reference": "788ec170f51ebb22f2809a1e3f78b19ccd39b70d"
|
||||
"reference": "2af937d47d8aadb8dab0b1d7b9557e495dd12856"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/getsentry/sentry-php/zipball/788ec170f51ebb22f2809a1e3f78b19ccd39b70d",
|
||||
"reference": "788ec170f51ebb22f2809a1e3f78b19ccd39b70d",
|
||||
"url": "https://api.github.com/repos/getsentry/sentry-php/zipball/2af937d47d8aadb8dab0b1d7b9557e495dd12856",
|
||||
"reference": "2af937d47d8aadb8dab0b1d7b9557e495dd12856",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -564,12 +572,12 @@
|
|||
},
|
||||
"require-dev": {
|
||||
"friendsofphp/php-cs-fixer": "^3.4",
|
||||
"guzzlehttp/promises": "^1.0|^2.0",
|
||||
"guzzlehttp/promises": "^2.0.3",
|
||||
"guzzlehttp/psr7": "^1.8.4|^2.1.1",
|
||||
"monolog/monolog": "^1.6|^2.0|^3.0",
|
||||
"phpbench/phpbench": "^1.0",
|
||||
"phpstan/phpstan": "^1.3",
|
||||
"phpunit/phpunit": "^8.5.14|^9.4",
|
||||
"phpunit/phpunit": "^8.5|^9.6",
|
||||
"symfony/phpunit-bridge": "^5.2|^6.0|^7.0",
|
||||
"vimeo/psalm": "^4.17"
|
||||
},
|
||||
|
@ -610,7 +618,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/getsentry/sentry-php/issues",
|
||||
"source": "https://github.com/getsentry/sentry-php/tree/4.9.0"
|
||||
"source": "https://github.com/getsentry/sentry-php/tree/4.10.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -622,7 +630,7 @@
|
|||
"type": "custom"
|
||||
}
|
||||
],
|
||||
"time": "2024-08-08T14:40:50+00:00"
|
||||
"time": "2024-11-06T07:44:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/deprecation-contracts",
|
||||
|
@ -693,16 +701,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/mime",
|
||||
"version": "v7.1.5",
|
||||
"version": "v7.1.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/mime.git",
|
||||
"reference": "711d2e167e8ce65b05aea6b258c449671cdd38ff"
|
||||
"reference": "caa1e521edb2650b8470918dfe51708c237f0598"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/mime/zipball/711d2e167e8ce65b05aea6b258c449671cdd38ff",
|
||||
"reference": "711d2e167e8ce65b05aea6b258c449671cdd38ff",
|
||||
"url": "https://api.github.com/repos/symfony/mime/zipball/caa1e521edb2650b8470918dfe51708c237f0598",
|
||||
"reference": "caa1e521edb2650b8470918dfe51708c237f0598",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -757,7 +765,7 @@
|
|||
"mime-type"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/mime/tree/v7.1.5"
|
||||
"source": "https://github.com/symfony/mime/tree/v7.1.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -773,20 +781,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-20T08:28:38+00:00"
|
||||
"time": "2024-10-25T15:11:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/options-resolver",
|
||||
"version": "v7.1.1",
|
||||
"version": "v7.1.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/options-resolver.git",
|
||||
"reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55"
|
||||
"reference": "85e95eeede2d41cd146146e98c9c81d9214cae85"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/47aa818121ed3950acd2b58d1d37d08a94f9bf55",
|
||||
"reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55",
|
||||
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/85e95eeede2d41cd146146e98c9c81d9214cae85",
|
||||
"reference": "85e95eeede2d41cd146146e98c9c81d9214cae85",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -824,7 +832,7 @@
|
|||
"options"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/options-resolver/tree/v7.1.1"
|
||||
"source": "https://github.com/symfony/options-resolver/tree/v7.1.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -840,7 +848,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-05-31T14:57:53+00:00"
|
||||
"time": "2024-09-25T14:20:29+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-ctype",
|
||||
|
@ -1243,16 +1251,16 @@
|
|||
},
|
||||
{
|
||||
"name": "twig/html-extra",
|
||||
"version": "v3.13.0",
|
||||
"version": "v3.15.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/twigphp/html-extra.git",
|
||||
"reference": "8229e750091171c1f11801a525927811c7ac5a7e"
|
||||
"reference": "2086023d3ffc4bae2b1115f715d17f97fd013665"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/twigphp/html-extra/zipball/8229e750091171c1f11801a525927811c7ac5a7e",
|
||||
"reference": "8229e750091171c1f11801a525927811c7ac5a7e",
|
||||
"url": "https://api.github.com/repos/twigphp/html-extra/zipball/2086023d3ffc4bae2b1115f715d17f97fd013665",
|
||||
"reference": "2086023d3ffc4bae2b1115f715d17f97fd013665",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1295,7 +1303,7 @@
|
|||
"twig"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/twigphp/html-extra/tree/v3.13.0"
|
||||
"source": "https://github.com/twigphp/html-extra/tree/v3.15.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -1307,20 +1315,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-03T13:08:40+00:00"
|
||||
"time": "2024-09-30T06:41:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "twig/twig",
|
||||
"version": "v3.14.0",
|
||||
"version": "v3.15.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/twigphp/Twig.git",
|
||||
"reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72"
|
||||
"reference": "2d5b3964cc21d0188633d7ddce732dc8e874db02"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/twigphp/Twig/zipball/126b2c97818dbff0cdf3fbfc881aedb3d40aae72",
|
||||
"reference": "126b2c97818dbff0cdf3fbfc881aedb3d40aae72",
|
||||
"url": "https://api.github.com/repos/twigphp/Twig/zipball/2d5b3964cc21d0188633d7ddce732dc8e874db02",
|
||||
"reference": "2d5b3964cc21d0188633d7ddce732dc8e874db02",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1374,7 +1382,7 @@
|
|||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/twigphp/Twig/issues",
|
||||
"source": "https://github.com/twigphp/Twig/tree/v3.14.0"
|
||||
"source": "https://github.com/twigphp/Twig/tree/v3.15.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -1386,22 +1394,22 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-09T17:55:12+00:00"
|
||||
"time": "2024-11-17T15:59:19+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "phpstan/phpstan",
|
||||
"version": "1.12.5",
|
||||
"version": "1.12.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpstan/phpstan.git",
|
||||
"reference": "7e6c6cb7cecb0a6254009a1a8a7d54ec99812b17"
|
||||
"reference": "0d1fc20a962a91be578bcfe7cf939e6e1a2ff733"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/7e6c6cb7cecb0a6254009a1a8a7d54ec99812b17",
|
||||
"reference": "7e6c6cb7cecb0a6254009a1a8a7d54ec99812b17",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/0d1fc20a962a91be578bcfe7cf939e6e1a2ff733",
|
||||
"reference": "0d1fc20a962a91be578bcfe7cf939e6e1a2ff733",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1446,7 +1454,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-26T12:45:22+00:00"
|
||||
"time": "2024-11-17T14:08:01+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
namespace Seria;
|
||||
|
||||
use Index\Config\Fs\FsConfig;
|
||||
use Index\Db\DbTools;
|
||||
use Index\Db\DbBackends;
|
||||
|
||||
define('SERIA_STARTUP', microtime(true));
|
||||
define('SERIA_ROOT', __DIR__);
|
||||
|
@ -32,7 +32,7 @@ if($cfg->hasValues('sentry:dsn'))
|
|||
});
|
||||
})($cfg->scopeTo('sentry'));
|
||||
|
||||
$db = DbTools::create($cfg->getString('database:dsn', 'null:'));
|
||||
$db = DbBackends::create($cfg->getString('database:dsn', 'null:'));
|
||||
$db->execute('SET SESSION time_zone = \'+00:00\', sql_mode = \'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\';');
|
||||
|
||||
$seria = new SeriaContext($db, $cfg);
|
||||
|
|
|
@ -4,7 +4,7 @@ namespace Seria;
|
|||
use InvalidArgumentException;
|
||||
use Index\CsrfToken;
|
||||
use Index\Config\Config;
|
||||
use Index\Db\DbTransactions;
|
||||
use Index\Db\DbConnection;
|
||||
use Index\Db\Migration\{DbMigrationManager,DbMigrationRepo,FsDbMigrationRepo};
|
||||
use Index\Templating\TplEnvironment;
|
||||
use Seria\Auth\AuthInfo;
|
||||
|
@ -12,7 +12,7 @@ use Seria\Torrents\TorrentsContext;
|
|||
use Seria\Users\UsersContext;
|
||||
|
||||
final class SeriaContext {
|
||||
private DbTransactions $dbConn;
|
||||
private DbConnection $dbConn;
|
||||
private Config $config;
|
||||
private ?TplEnvironment $templating = null;
|
||||
|
||||
|
@ -24,7 +24,7 @@ final class SeriaContext {
|
|||
private TorrentsContext $torrentsCtx;
|
||||
private UsersContext $usersCtx;
|
||||
|
||||
public function __construct(DbTransactions $dbConn, Config $config) {
|
||||
public function __construct(DbConnection $dbConn, Config $config) {
|
||||
$this->dbConn = $dbConn;
|
||||
$this->config = $config;
|
||||
|
||||
|
@ -35,7 +35,7 @@ final class SeriaContext {
|
|||
$this->usersCtx = new UsersContext($dbConn);
|
||||
}
|
||||
|
||||
public function getDbConn(): DbTransactions {
|
||||
public function getDbConn(): DbConnection {
|
||||
return $this->dbConn;
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ use Exception;
|
|||
use InvalidArgumentException;
|
||||
use RuntimeException;
|
||||
use Index\Bencode\Bencode;
|
||||
use Index\Db\{DbTools,DbTransactions};
|
||||
use Index\Db\DbConnection;
|
||||
use Seria\Users\UserInfo;
|
||||
|
||||
class TorrentBuilder {
|
||||
|
@ -101,12 +101,12 @@ class TorrentBuilder {
|
|||
return hash('sha1', Bencode::encode($info), true);
|
||||
}
|
||||
|
||||
public function create(DbTransactions $dbConn, TorrentsContext $torrentsCtx): string {
|
||||
public function create(DbConnection $dbConn, TorrentsContext $torrentsCtx): string {
|
||||
$torrents = $torrentsCtx->getTorrents();
|
||||
$pieces = $torrentsCtx->getPieces();
|
||||
$files = $torrentsCtx->getFiles();
|
||||
|
||||
$dbConn->beginTransaction();
|
||||
$tx = $dbConn->beginTransaction();
|
||||
|
||||
try {
|
||||
$infoHash = $this->calculateInfoHash();
|
||||
|
@ -121,9 +121,9 @@ class TorrentBuilder {
|
|||
foreach($this->pieces as $piece)
|
||||
$pieces->createPiece($torrentId, $piece);
|
||||
|
||||
$dbConn->commit();
|
||||
$tx->commit();
|
||||
} catch(Exception $ex) {
|
||||
$dbConn->rollBack();
|
||||
$tx->rollback();
|
||||
throw $ex;
|
||||
}
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ namespace Seria\Torrents;
|
|||
use Exception;
|
||||
use RuntimeException;
|
||||
use Index\CsrfToken;
|
||||
use Index\Db\DbTransactions;
|
||||
use Index\Db\DbConnection;
|
||||
use Index\Http\Routing\{HttpGet,HttpMiddleware,HttpPost,RouteHandler,RouteHandlerTrait};
|
||||
use Index\Templating\TplEnvironment;
|
||||
use Seria\Auth\AuthInfo;
|
||||
|
@ -14,7 +14,7 @@ class TorrentCreateRouting implements RouteHandler {
|
|||
use RouteHandlerTrait;
|
||||
|
||||
public function __construct(
|
||||
private DbTransactions $dbConn,
|
||||
private DbConnection $dbConn,
|
||||
private AuthInfo $authInfo,
|
||||
private TorrentsContext $torrentsCtx,
|
||||
private CsrfToken $csrfp,
|
||||
|
|
|
@ -5,7 +5,7 @@ use InvalidArgumentException;
|
|||
use RuntimeException;
|
||||
use Index\XString;
|
||||
use Index\Colour\Colour;
|
||||
use Index\Db\{DbConnection,DbStatementCache,DbTools};
|
||||
use Index\Db\{DbConnection,DbStatementCache};
|
||||
|
||||
class Users {
|
||||
private DbStatementCache $cache;
|
||||
|
|
Loading…
Reference in a new issue