From 18d296dcd61a8638cb423b480b354f0db031f6dc Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 14 Apr 2021 10:10:04 -0400 Subject: [PATCH 01/18] Clean up CS fixer rules --- .php_cs.dist => .php-cs-fixer.dist.php | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .php_cs.dist => .php-cs-fixer.dist.php (100%) diff --git a/.php_cs.dist b/.php-cs-fixer.dist.php similarity index 100% rename from .php_cs.dist rename to .php-cs-fixer.dist.php From 73731fa9dbeb4297d3d337bafef8dfd116567142 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 14 Apr 2021 11:16:36 -0400 Subject: [PATCH 02/18] Fix up CS config file --- .php-cs-fixer.dist.php | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index c276167..b545600 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; const BASE = __DIR__.DIRECTORY_SEPARATOR; @@ -13,7 +14,10 @@ $paths = [ BASE."arsse.php", BASE."RoboFile.php", BASE."lib", - BASE."tests", + BASE."tests/cases", + BASE."tests/lib", + BASE."tests/bootstrap.php", + BASE."tests/server.php", ]; $rules = [ // house rules where PSR series is silent @@ -35,6 +39,7 @@ $rules = [ 'no_blank_lines_after_phpdoc' => true, 'no_empty_comment' => true, 'no_empty_phpdoc' => true, + 'no_empty_statement' => true, 'no_extra_blank_lines' => true, // this could probably use more configuration 'no_mixed_echo_print' => ['use' => "echo"], 'no_short_bool_cast' => true, @@ -52,22 +57,7 @@ $rules = [ 'unary_operator_spaces' => true, 'yoda_style' => false, // PSR standard to apply - '@PSR2' => true, - // PSR-12 rules; php-cs-fixer does not yet support PSR-12 natively - 'compact_nullable_typehint' => true, - 'declare_equal_normalize' => ['space' => "none"], - 'function_typehint_space' => true, - 'lowercase_cast' => true, - 'lowercase_static_reference' => true, - 'no_alternative_syntax' => true, - 'no_empty_statement' => true, - 'no_leading_import_slash' => true, - 'no_leading_namespace_whitespace' => true, - 'no_whitespace_in_blank_line' => true, - 'return_type_declaration' => ['space_before' => "none"], - 'single_trait_insert_per_statement' => true, - 'short_scalar_cast' => true, - 'visibility_required' => ['elements' => ["const", "property", "method"]], + '@PSR12' => true, // house exceptions to PSR rules 'braces' => ['position_after_functions_and_oop_constructs' => "same"], 'function_declaration' => ['closure_function_spacing' => "none"], @@ -82,4 +72,4 @@ foreach ($paths as $path) { $finder = $finder->in($path); } } -return \PhpCsFixer\Config::create()->setRiskyAllowed(true)->setRules($rules)->setFinder($finder); +return (new \PhpCsFixer\Config)->setRiskyAllowed(true)->setRules($rules)->setFinder($finder); From 4080b2d09dd43fe23e14c16abbfef062755ee4de Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 14 Apr 2021 11:17:01 -0400 Subject: [PATCH 03/18] Apply new rules --- arsse.php | 1 + lib/AbstractException.php | 1 + lib/Arsse.php | 1 + lib/CLI.php | 1 + lib/Conf.php | 1 + lib/Conf/Exception.php | 1 + lib/Context/Context.php | 1 + lib/Context/ExclusionContext.php | 1 + lib/Database.php | 1 + lib/Db/AbstractDriver.php | 1 + lib/Db/AbstractResult.php | 1 + lib/Db/AbstractStatement.php | 1 + lib/Db/Driver.php | 1 + lib/Db/Exception.php | 1 + lib/Db/ExceptionInput.php | 1 + lib/Db/ExceptionRetry.php | 1 + lib/Db/ExceptionTimeout.php | 1 + lib/Db/MySQL/Driver.php | 1 + lib/Db/MySQL/ExceptionBuilder.php | 1 + lib/Db/MySQL/PDODriver.php | 1 + lib/Db/MySQL/PDOStatement.php | 1 + lib/Db/MySQL/Result.php | 1 + lib/Db/MySQL/Statement.php | 1 + lib/Db/PDODriver.php | 1 + lib/Db/PDOError.php | 1 + lib/Db/PDOResult.php | 1 + lib/Db/PDOStatement.php | 1 + lib/Db/PostgreSQL/Dispatch.php | 1 + lib/Db/PostgreSQL/Driver.php | 1 + lib/Db/PostgreSQL/PDODriver.php | 1 + lib/Db/PostgreSQL/PDOResult.php | 2 +- lib/Db/PostgreSQL/PDOStatement.php | 1 + lib/Db/PostgreSQL/Result.php | 1 + lib/Db/PostgreSQL/Statement.php | 1 + lib/Db/Result.php | 1 + lib/Db/ResultAggregate.php | 1 + lib/Db/ResultEmpty.php | 1 + lib/Db/SQLState.php | 1 + lib/Db/SQLite3/AbstractPDODriver.php | 1 + lib/Db/SQLite3/Driver.php | 1 + lib/Db/SQLite3/ExceptionBuilder.php | 1 + lib/Db/SQLite3/PDODriver.php | 1 + lib/Db/SQLite3/PDOStatement.php | 1 + lib/Db/SQLite3/Result.php | 1 + lib/Db/SQLite3/Statement.php | 1 + lib/Db/Statement.php | 1 + lib/Db/Transaction.php | 1 + lib/Exception.php | 1 + lib/ExceptionFatal.php | 1 + lib/ExceptionType.php | 1 + lib/Factory.php | 1 + lib/Feed.php | 1 + lib/Feed/Exception.php | 1 + lib/ImportExport/AbstractImportExport.php | 1 + lib/ImportExport/Exception.php | 1 + lib/ImportExport/OPML.php | 1 + lib/Lang.php | 1 + lib/Lang/Exception.php | 1 + lib/Misc/Date.php | 1 + lib/Misc/HTTP.php | 1 + lib/Misc/Query.php | 1 + lib/Misc/URL.php | 2 +- lib/Misc/ValueInfo.php | 17 +- lib/REST.php | 1 + lib/REST/AbstractHandler.php | 1 + lib/REST/Exception.php | 1 + lib/REST/Exception501.php | 1 + lib/REST/Fever/API.php | 1 + lib/REST/Fever/User.php | 1 + lib/REST/Handler.php | 1 + lib/REST/Miniflux/ErrorResponse.php | 1 + lib/REST/Miniflux/Status.php | 1 + lib/REST/Miniflux/Token.php | 3 +- lib/REST/Miniflux/V1.php | 1 + lib/REST/NextcloudNews/V1_2.php | 1 + lib/REST/NextcloudNews/Versions.php | 1 + lib/REST/TinyTinyRSS/API.php | 1 + lib/REST/TinyTinyRSS/Exception.php | 1 + lib/REST/TinyTinyRSS/Icon.php | 1 + lib/REST/TinyTinyRSS/Search.php | 1 + lib/Rule/Exception.php | 1 + lib/Rule/Rule.php | 1 + lib/Service.php | 1 + lib/Service/Driver.php | 1 + lib/Service/Serial/Driver.php | 1 + lib/Service/Subprocess/Driver.php | 1 + lib/User.php | 1 + lib/User/Driver.php | 1 + lib/User/Exception.php | 1 + lib/User/ExceptionConflict.php | 1 + lib/User/ExceptionInput.php | 1 + lib/User/ExceptionSession.php | 1 + lib/User/Internal/Driver.php | 1 + tests/bootstrap.php | 1 + tests/cases/CLI/TestCLI.php | 1 + tests/cases/Conf/TestConf.php | 1 + tests/cases/Database/AbstractTest.php | 1 + tests/cases/Database/SeriesArticle.php | 1 + tests/cases/Database/SeriesCleanup.php | 1 + tests/cases/Database/SeriesFeed.php | 1 + tests/cases/Database/SeriesFolder.php | 1 + tests/cases/Database/SeriesIcon.php | 1 + tests/cases/Database/SeriesLabel.php | 1 + tests/cases/Database/SeriesMeta.php | 1 + tests/cases/Database/SeriesMiscellany.php | 1 + tests/cases/Database/SeriesSession.php | 1 + tests/cases/Database/SeriesSubscription.php | 5 +- tests/cases/Database/SeriesTag.php | 1 + tests/cases/Database/SeriesToken.php | 1 + tests/cases/Database/SeriesUser.php | 1 + tests/cases/Database/TestDatabase.php | 1 + tests/cases/Db/BaseDriver.php | 1 + tests/cases/Db/BaseResult.php | 1 + tests/cases/Db/BaseStatement.php | 1 + tests/cases/Db/BaseUpdate.php | 1 + tests/cases/Db/MySQL/TestCreation.php | 1 + tests/cases/Db/MySQL/TestDatabase.php | 1 + tests/cases/Db/MySQL/TestDriver.php | 1 + tests/cases/Db/MySQL/TestResult.php | 1 + tests/cases/Db/MySQL/TestStatement.php | 1 + tests/cases/Db/MySQL/TestUpdate.php | 1 + tests/cases/Db/MySQLPDO/TestCreation.php | 1 + tests/cases/Db/MySQLPDO/TestDatabase.php | 1 + tests/cases/Db/MySQLPDO/TestDriver.php | 1 + tests/cases/Db/MySQLPDO/TestResult.php | 1 + tests/cases/Db/MySQLPDO/TestStatement.php | 1 + tests/cases/Db/MySQLPDO/TestUpdate.php | 1 + tests/cases/Db/PostgreSQL/TestCreation.php | 1 + tests/cases/Db/PostgreSQL/TestDatabase.php | 1 + tests/cases/Db/PostgreSQL/TestDriver.php | 1 + tests/cases/Db/PostgreSQL/TestResult.php | 1 + tests/cases/Db/PostgreSQL/TestStatement.php | 1 + tests/cases/Db/PostgreSQL/TestUpdate.php | 1 + tests/cases/Db/PostgreSQLPDO/TestCreation.php | 1 + tests/cases/Db/PostgreSQLPDO/TestDatabase.php | 1 + tests/cases/Db/PostgreSQLPDO/TestDriver.php | 1 + tests/cases/Db/PostgreSQLPDO/TestResult.php | 1 + .../cases/Db/PostgreSQLPDO/TestStatement.php | 1 + tests/cases/Db/PostgreSQLPDO/TestUpdate.php | 1 + tests/cases/Db/SQLite3/TestCreation.php | 1 + tests/cases/Db/SQLite3/TestDatabase.php | 1 + tests/cases/Db/SQLite3/TestDriver.php | 1 + tests/cases/Db/SQLite3/TestResult.php | 1 + tests/cases/Db/SQLite3/TestStatement.php | 1 + tests/cases/Db/SQLite3/TestUpdate.php | 1 + tests/cases/Db/SQLite3PDO/TestCreation.php | 1 + tests/cases/Db/SQLite3PDO/TestDatabase.php | 1 + tests/cases/Db/SQLite3PDO/TestDriver.php | 1 + tests/cases/Db/SQLite3PDO/TestResult.php | 1 + tests/cases/Db/SQLite3PDO/TestStatement.php | 1 + tests/cases/Db/SQLite3PDO/TestUpdate.php | 1 + tests/cases/Db/TestResultAggregate.php | 5 + tests/cases/Db/TestResultEmpty.php | 5 + tests/cases/Db/TestTransaction.php | 1 + tests/cases/Exception/TestException.php | 1 + tests/cases/Feed/TestException.php | 1 + tests/cases/Feed/TestFeed.php | 1 + tests/cases/Feed/TestFetching.php | 1 + tests/cases/ImportExport/TestFile.php | 1 + tests/cases/ImportExport/TestImportExport.php | 1 + tests/cases/ImportExport/TestOPML.php | 2 +- tests/cases/Lang/TestBasic.php | 1 + tests/cases/Lang/TestComplex.php | 1 + tests/cases/Lang/TestErrors.php | 1 + tests/cases/Misc/TestContext.php | 1 + tests/cases/Misc/TestDate.php | 1 + tests/cases/Misc/TestFactory.php | 1 + tests/cases/Misc/TestHTTP.php | 1 + tests/cases/Misc/TestQuery.php | 1 + tests/cases/Misc/TestRule.php | 1 + tests/cases/Misc/TestURL.php | 2 +- tests/cases/Misc/TestValueInfo.php | 2 +- tests/cases/REST/Fever/PDO/TestAPI.php | 1 + tests/cases/REST/Fever/TestAPI.php | 2 +- tests/cases/REST/Fever/TestUser.php | 3 +- tests/cases/REST/Miniflux/PDO/TestToken.php | 1 + tests/cases/REST/Miniflux/PDO/TestV1.php | 1 + .../cases/REST/Miniflux/TestErrorResponse.php | 1 + tests/cases/REST/Miniflux/TestStatus.php | 1 + tests/cases/REST/Miniflux/TestToken.php | 1 + tests/cases/REST/Miniflux/TestV1.php | 1 + .../cases/REST/NextcloudNews/PDO/TestV1_2.php | 1 + tests/cases/REST/NextcloudNews/TestV1_2.php | 1 + .../cases/REST/NextcloudNews/TestVersions.php | 1 + tests/cases/REST/TestREST.php | 4 +- tests/cases/REST/TinyTinyRSS/PDO/TestAPI.php | 1 + tests/cases/REST/TinyTinyRSS/TestAPI.php | 4 +- tests/cases/REST/TinyTinyRSS/TestIcon.php | 1 + tests/cases/REST/TinyTinyRSS/TestSearch.php | 1 + tests/cases/Service/TestSerial.php | 1 + tests/cases/Service/TestService.php | 2 +- tests/cases/Service/TestSubprocess.php | 1 + tests/cases/TestArsse.php | 1 + tests/cases/User/TestInternal.php | 1 + tests/cases/User/TestUser.php | 13 +- tests/lib/AbstractTest.php | 22 +-- tests/lib/Database.php | 1 + tests/lib/DatabaseDrivers/MySQL.php | 1 + tests/lib/DatabaseDrivers/MySQLPDO.php | 1 + tests/lib/DatabaseDrivers/PostgreSQL.php | 1 + tests/lib/DatabaseDrivers/PostgreSQLPDO.php | 1 + tests/lib/DatabaseDrivers/SQLite3.php | 1 + tests/lib/DatabaseDrivers/SQLite3PDO.php | 1 + tests/lib/Lang/Setup.php | 1 + tests/lib/Misc/StrClass.php | 1 + tests/lib/PDOTest.php | 1 + tests/lib/Result.php | 1 + tests/lib/Service.php | 1 + tests/server.php | 1 + vendor-bin/csfixer/composer.json | 2 +- vendor-bin/csfixer/composer.lock | 163 +++++------------- 211 files changed, 287 insertions(+), 165 deletions(-) diff --git a/arsse.php b/arsse.php index 8b6d1fd..efd7193 100644 --- a/arsse.php +++ b/arsse.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; const BASE = __DIR__.DIRECTORY_SEPARATOR; diff --git a/lib/AbstractException.php b/lib/AbstractException.php index d2cb0d5..4a2aaeb 100644 --- a/lib/AbstractException.php +++ b/lib/AbstractException.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; abstract class AbstractException extends \Exception { diff --git a/lib/Arsse.php b/lib/Arsse.php index 84223cb..b8c33f8 100644 --- a/lib/Arsse.php +++ b/lib/Arsse.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class Arsse { diff --git a/lib/CLI.php b/lib/CLI.php index f892bdd..ddb4117 100644 --- a/lib/CLI.php +++ b/lib/CLI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\REST\Fever\User as Fever; diff --git a/lib/Conf.php b/lib/Conf.php index dfe35e2..04cd582 100644 --- a/lib/Conf.php +++ b/lib/Conf.php @@ -5,6 +5,7 @@ /** Conf class */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\Misc\ValueInfo as Value; diff --git a/lib/Conf/Exception.php b/lib/Conf/Exception.php index 3b3247e..cdc3a81 100644 --- a/lib/Conf/Exception.php +++ b/lib/Conf/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Conf; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Context/Context.php b/lib/Context/Context.php index 8e1b699..d49b19d 100644 --- a/lib/Context/Context.php +++ b/lib/Context/Context.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Context; class Context extends ExclusionContext { diff --git a/lib/Context/ExclusionContext.php b/lib/Context/ExclusionContext.php index e7323ea..fa3adbc 100644 --- a/lib/Context/ExclusionContext.php +++ b/lib/Context/ExclusionContext.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Context; use JKingWeb\Arsse\Misc\ValueInfo; diff --git a/lib/Database.php b/lib/Database.php index 776b46d..435906b 100644 --- a/lib/Database.php +++ b/lib/Database.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\DrUUID\UUID; diff --git a/lib/Db/AbstractDriver.php b/lib/Db/AbstractDriver.php index 2a6a973..055fe94 100644 --- a/lib/Db/AbstractDriver.php +++ b/lib/Db/AbstractDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/AbstractResult.php b/lib/Db/AbstractResult.php index 4ae62bb..dfdd5d3 100644 --- a/lib/Db/AbstractResult.php +++ b/lib/Db/AbstractResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; abstract class AbstractResult implements Result { diff --git a/lib/Db/AbstractStatement.php b/lib/Db/AbstractStatement.php index dab1e03..8bcb329 100644 --- a/lib/Db/AbstractStatement.php +++ b/lib/Db/AbstractStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; use JKingWeb\Arsse\Misc\Date; diff --git a/lib/Db/Driver.php b/lib/Db/Driver.php index 09f16e7..9ca1b7f 100644 --- a/lib/Db/Driver.php +++ b/lib/Db/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; interface Driver { diff --git a/lib/Db/Exception.php b/lib/Db/Exception.php index d72b83f..89b4ab0 100644 --- a/lib/Db/Exception.php +++ b/lib/Db/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Db/ExceptionInput.php b/lib/Db/ExceptionInput.php index 9cafb56..0a6cdb1 100644 --- a/lib/Db/ExceptionInput.php +++ b/lib/Db/ExceptionInput.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class ExceptionInput extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Db/ExceptionRetry.php b/lib/Db/ExceptionRetry.php index be4769a..86b4f7c 100644 --- a/lib/Db/ExceptionRetry.php +++ b/lib/Db/ExceptionRetry.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class ExceptionRetry extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Db/ExceptionTimeout.php b/lib/Db/ExceptionTimeout.php index 205f162..9edc5d1 100644 --- a/lib/Db/ExceptionTimeout.php +++ b/lib/Db/ExceptionTimeout.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class ExceptionTimeout extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Db/MySQL/Driver.php b/lib/Db/MySQL/Driver.php index d2c538b..ca6df17 100644 --- a/lib/Db/MySQL/Driver.php +++ b/lib/Db/MySQL/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/MySQL/ExceptionBuilder.php b/lib/Db/MySQL/ExceptionBuilder.php index 8f5be9c..31de853 100644 --- a/lib/Db/MySQL/ExceptionBuilder.php +++ b/lib/Db/MySQL/ExceptionBuilder.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; use JKingWeb\Arsse\Db\Exception; diff --git a/lib/Db/MySQL/PDODriver.php b/lib/Db/MySQL/PDODriver.php index e669fca..be42c5b 100644 --- a/lib/Db/MySQL/PDODriver.php +++ b/lib/Db/MySQL/PDODriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/MySQL/PDOStatement.php b/lib/Db/MySQL/PDOStatement.php index dd405a2..a4e5d2b 100644 --- a/lib/Db/MySQL/PDOStatement.php +++ b/lib/Db/MySQL/PDOStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; class PDOStatement extends \JKingWeb\Arsse\Db\PDOStatement { diff --git a/lib/Db/MySQL/Result.php b/lib/Db/MySQL/Result.php index 45e8225..b51a802 100644 --- a/lib/Db/MySQL/Result.php +++ b/lib/Db/MySQL/Result.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; class Result extends \JKingWeb\Arsse\Db\AbstractResult { diff --git a/lib/Db/MySQL/Statement.php b/lib/Db/MySQL/Statement.php index 057225a..9f511f1 100644 --- a/lib/Db/MySQL/Statement.php +++ b/lib/Db/MySQL/Statement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\MySQL; class Statement extends \JKingWeb\Arsse\Db\AbstractStatement { diff --git a/lib/Db/PDODriver.php b/lib/Db/PDODriver.php index df01bac..bb93741 100644 --- a/lib/Db/PDODriver.php +++ b/lib/Db/PDODriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; trait PDODriver { diff --git a/lib/Db/PDOError.php b/lib/Db/PDOError.php index 0303551..2b37aab 100644 --- a/lib/Db/PDOError.php +++ b/lib/Db/PDOError.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; trait PDOError { diff --git a/lib/Db/PDOResult.php b/lib/Db/PDOResult.php index 6702301..e5759fa 100644 --- a/lib/Db/PDOResult.php +++ b/lib/Db/PDOResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class PDOResult extends AbstractResult { diff --git a/lib/Db/PDOStatement.php b/lib/Db/PDOStatement.php index 4425093..e4590f2 100644 --- a/lib/Db/PDOStatement.php +++ b/lib/Db/PDOStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; abstract class PDOStatement extends AbstractStatement { diff --git a/lib/Db/PostgreSQL/Dispatch.php b/lib/Db/PostgreSQL/Dispatch.php index 220dda2..9d43400 100644 --- a/lib/Db/PostgreSQL/Dispatch.php +++ b/lib/Db/PostgreSQL/Dispatch.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; trait Dispatch { diff --git a/lib/Db/PostgreSQL/Driver.php b/lib/Db/PostgreSQL/Driver.php index c22f096..1f176ed 100644 --- a/lib/Db/PostgreSQL/Driver.php +++ b/lib/Db/PostgreSQL/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/PostgreSQL/PDODriver.php b/lib/Db/PostgreSQL/PDODriver.php index 93daf66..29490e3 100644 --- a/lib/Db/PostgreSQL/PDODriver.php +++ b/lib/Db/PostgreSQL/PDODriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/PostgreSQL/PDOResult.php b/lib/Db/PostgreSQL/PDOResult.php index 4920776..81631d4 100644 --- a/lib/Db/PostgreSQL/PDOResult.php +++ b/lib/Db/PostgreSQL/PDOResult.php @@ -4,10 +4,10 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; class PDOResult extends \JKingWeb\Arsse\Db\PDOResult { - // This method exists to transparent handle byte-array results public function valid() { diff --git a/lib/Db/PostgreSQL/PDOStatement.php b/lib/Db/PostgreSQL/PDOStatement.php index 9929579..a3a9f12 100644 --- a/lib/Db/PostgreSQL/PDOStatement.php +++ b/lib/Db/PostgreSQL/PDOStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; use JKingWeb\Arsse\Db\Result; diff --git a/lib/Db/PostgreSQL/Result.php b/lib/Db/PostgreSQL/Result.php index 7200ac3..7682902 100644 --- a/lib/Db/PostgreSQL/Result.php +++ b/lib/Db/PostgreSQL/Result.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; class Result extends \JKingWeb\Arsse\Db\AbstractResult { diff --git a/lib/Db/PostgreSQL/Statement.php b/lib/Db/PostgreSQL/Statement.php index 4472e8e..1a0b00c 100644 --- a/lib/Db/PostgreSQL/Statement.php +++ b/lib/Db/PostgreSQL/Statement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\PostgreSQL; class Statement extends \JKingWeb\Arsse\Db\AbstractStatement { diff --git a/lib/Db/Result.php b/lib/Db/Result.php index 88c908b..c464a8f 100644 --- a/lib/Db/Result.php +++ b/lib/Db/Result.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; interface Result extends \Iterator { diff --git a/lib/Db/ResultAggregate.php b/lib/Db/ResultAggregate.php index 06dd764..f728239 100644 --- a/lib/Db/ResultAggregate.php +++ b/lib/Db/ResultAggregate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class ResultAggregate extends AbstractResult { diff --git a/lib/Db/ResultEmpty.php b/lib/Db/ResultEmpty.php index f0f23de..a10d228 100644 --- a/lib/Db/ResultEmpty.php +++ b/lib/Db/ResultEmpty.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class ResultEmpty extends AbstractResult { diff --git a/lib/Db/SQLState.php b/lib/Db/SQLState.php index 30d9f2c..c82696b 100644 --- a/lib/Db/SQLState.php +++ b/lib/Db/SQLState.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; trait SQLState { diff --git a/lib/Db/SQLite3/AbstractPDODriver.php b/lib/Db/SQLite3/AbstractPDODriver.php index bc7ea61..e8fa5e8 100644 --- a/lib/Db/SQLite3/AbstractPDODriver.php +++ b/lib/Db/SQLite3/AbstractPDODriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; abstract class AbstractPDODriver extends Driver { diff --git a/lib/Db/SQLite3/Driver.php b/lib/Db/SQLite3/Driver.php index 3445b89..1a99af1 100644 --- a/lib/Db/SQLite3/Driver.php +++ b/lib/Db/SQLite3/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/SQLite3/ExceptionBuilder.php b/lib/Db/SQLite3/ExceptionBuilder.php index 22d1723..3f14375 100644 --- a/lib/Db/SQLite3/ExceptionBuilder.php +++ b/lib/Db/SQLite3/ExceptionBuilder.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; use JKingWeb\Arsse\Db\Exception; diff --git a/lib/Db/SQLite3/PDODriver.php b/lib/Db/SQLite3/PDODriver.php index 506c46a..ee753a7 100644 --- a/lib/Db/SQLite3/PDODriver.php +++ b/lib/Db/SQLite3/PDODriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; use JKingWeb\Arsse\Arsse; diff --git a/lib/Db/SQLite3/PDOStatement.php b/lib/Db/SQLite3/PDOStatement.php index eb4fdfe..169980c 100644 --- a/lib/Db/SQLite3/PDOStatement.php +++ b/lib/Db/SQLite3/PDOStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; class PDOStatement extends \JKingWeb\Arsse\Db\PDOStatement { diff --git a/lib/Db/SQLite3/Result.php b/lib/Db/SQLite3/Result.php index ad8aa05..73716f8 100644 --- a/lib/Db/SQLite3/Result.php +++ b/lib/Db/SQLite3/Result.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; class Result extends \JKingWeb\Arsse\Db\AbstractResult { diff --git a/lib/Db/SQLite3/Statement.php b/lib/Db/SQLite3/Statement.php index c97b1d8..8e97e05 100644 --- a/lib/Db/SQLite3/Statement.php +++ b/lib/Db/SQLite3/Statement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db\SQLite3; class Statement extends \JKingWeb\Arsse\Db\AbstractStatement { diff --git a/lib/Db/Statement.php b/lib/Db/Statement.php index 44e9cd2..e4a27bb 100644 --- a/lib/Db/Statement.php +++ b/lib/Db/Statement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; interface Statement { diff --git a/lib/Db/Transaction.php b/lib/Db/Transaction.php index 39cc7a9..7ab8cd3 100644 --- a/lib/Db/Transaction.php +++ b/lib/Db/Transaction.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Db; class Transaction { diff --git a/lib/Exception.php b/lib/Exception.php index afd0b97..90610e4 100644 --- a/lib/Exception.php +++ b/lib/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class Exception extends AbstractException { diff --git a/lib/ExceptionFatal.php b/lib/ExceptionFatal.php index 78895cd..04516b4 100644 --- a/lib/ExceptionFatal.php +++ b/lib/ExceptionFatal.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class ExceptionFatal extends AbstractException { diff --git a/lib/ExceptionType.php b/lib/ExceptionType.php index a9a97cf..633380e 100644 --- a/lib/ExceptionType.php +++ b/lib/ExceptionType.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class ExceptionType extends AbstractException { diff --git a/lib/Factory.php b/lib/Factory.php index 0dfcea8..2e6ffeb 100644 --- a/lib/Factory.php +++ b/lib/Factory.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class Factory { diff --git a/lib/Feed.php b/lib/Feed.php index ce4ab4c..e27e19e 100644 --- a/lib/Feed.php +++ b/lib/Feed.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\Misc\Date; diff --git a/lib/Feed/Exception.php b/lib/Feed/Exception.php index 113d405..069bed9 100644 --- a/lib/Feed/Exception.php +++ b/lib/Feed/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Feed; use GuzzleHttp\Exception\BadResponseException; diff --git a/lib/ImportExport/AbstractImportExport.php b/lib/ImportExport/AbstractImportExport.php index 6f0496f..098d449 100644 --- a/lib/ImportExport/AbstractImportExport.php +++ b/lib/ImportExport/AbstractImportExport.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\ImportExport; use JKingWeb\Arsse\Arsse; diff --git a/lib/ImportExport/Exception.php b/lib/ImportExport/Exception.php index 888cfca..050b1b5 100644 --- a/lib/ImportExport/Exception.php +++ b/lib/ImportExport/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\ImportExport; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/ImportExport/OPML.php b/lib/ImportExport/OPML.php index 85d136c..fe9dfa7 100644 --- a/lib/ImportExport/OPML.php +++ b/lib/ImportExport/OPML.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\ImportExport; use JKingWeb\Arsse\Arsse; diff --git a/lib/Lang.php b/lib/Lang.php index fa8232b..37ffb6f 100644 --- a/lib/Lang.php +++ b/lib/Lang.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; class Lang { diff --git a/lib/Lang/Exception.php b/lib/Lang/Exception.php index 4b6d775..3210a4c 100644 --- a/lib/Lang/Exception.php +++ b/lib/Lang/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Lang; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Misc/Date.php b/lib/Misc/Date.php index 6384f4f..f6232c4 100644 --- a/lib/Misc/Date.php +++ b/lib/Misc/Date.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Misc; abstract class Date { diff --git a/lib/Misc/HTTP.php b/lib/Misc/HTTP.php index 15bfce9..5f5c305 100644 --- a/lib/Misc/HTTP.php +++ b/lib/Misc/HTTP.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Misc; use Psr\Http\Message\MessageInterface; diff --git a/lib/Misc/Query.php b/lib/Misc/Query.php index a2965dc..ab08ff9 100644 --- a/lib/Misc/Query.php +++ b/lib/Misc/Query.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Misc; class Query { diff --git a/lib/Misc/URL.php b/lib/Misc/URL.php index df16e6f..8c3d131 100644 --- a/lib/Misc/URL.php +++ b/lib/Misc/URL.php @@ -4,13 +4,13 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Misc; /** * A collection of functions for manipulating URLs */ class URL { - /** Returns whether a URL is absolute i.e. has a scheme */ public static function absolute(string $url): bool { return (bool) strlen((string) parse_url($url, \PHP_URL_SCHEME)); diff --git a/lib/Misc/ValueInfo.php b/lib/Misc/ValueInfo.php index 688a394..0488617 100644 --- a/lib/Misc/ValueInfo.php +++ b/lib/Misc/ValueInfo.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Misc; use JKingWeb\Arsse\ExceptionType; @@ -107,7 +108,7 @@ class ValueInfo { if ($strict && !$drop) { throw new ExceptionType("strictFailure", $type); } - return (!$drop) ? (int) $value->getTimestamp(): null; + return (!$drop) ? (int) $value->getTimestamp() : null; } elseif ($value instanceof \DateInterval) { if ($strict && !$drop) { throw new ExceptionType("strictFailure", $type); @@ -159,7 +160,7 @@ class ValueInfo { if ($strict && !$drop) { throw new ExceptionType("strictFailure", $type); } - return (!$drop) ? (float) $value->getTimestamp(): null; + return (!$drop) ? (float) $value->getTimestamp() : null; } elseif ($value instanceof \DateInterval) { if ($drop) { return null; @@ -203,13 +204,13 @@ class ValueInfo { if ($value->days) { $dateSpec = $value->days."D"; } else { - $dateSpec .= $value->y ? $value->y."Y": ""; - $dateSpec .= $value->m ? $value->m."M": ""; - $dateSpec .= $value->d ? $value->d."D": ""; + $dateSpec .= $value->y ? $value->y."Y" : ""; + $dateSpec .= $value->m ? $value->m."M" : ""; + $dateSpec .= $value->d ? $value->d."D" : ""; } - $timeSpec .= $value->h ? $value->h."H": ""; - $timeSpec .= $value->i ? $value->i."M": ""; - $timeSpec .= $value->s ? $value->s."S": ""; + $timeSpec .= $value->h ? $value->h."H" : ""; + $timeSpec .= $value->i ? $value->i."M" : ""; + $timeSpec .= $value->s ? $value->s."S" : ""; $timeSpec = $timeSpec ? "T".$timeSpec : ""; if (!$dateSpec && !$timeSpec) { return "PT0S"; diff --git a/lib/REST.php b/lib/REST.php index 1552277..c02256c 100644 --- a/lib/REST.php +++ b/lib/REST.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\Misc\URL; diff --git a/lib/REST/AbstractHandler.php b/lib/REST/AbstractHandler.php index 2dadfa9..107a886 100644 --- a/lib/REST/AbstractHandler.php +++ b/lib/REST/AbstractHandler.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/Exception.php b/lib/REST/Exception.php index 245dc25..feb46c7 100644 --- a/lib/REST/Exception.php +++ b/lib/REST/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/REST/Exception501.php b/lib/REST/Exception501.php index 77d1e30..b19e6b4 100644 --- a/lib/REST/Exception501.php +++ b/lib/REST/Exception501.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST; class Exception501 extends \Exception { diff --git a/lib/REST/Fever/API.php b/lib/REST/Fever/API.php index 20e6c35..06f28a6 100644 --- a/lib/REST/Fever/API.php +++ b/lib/REST/Fever/API.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Fever; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/Fever/User.php b/lib/REST/Fever/User.php index b702ae4..a8354ea 100644 --- a/lib/REST/Fever/User.php +++ b/lib/REST/Fever/User.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Fever; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/Handler.php b/lib/REST/Handler.php index 3b2c88e..664c0d7 100644 --- a/lib/REST/Handler.php +++ b/lib/REST/Handler.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST; use Psr\Http\Message\ServerRequestInterface; diff --git a/lib/REST/Miniflux/ErrorResponse.php b/lib/REST/Miniflux/ErrorResponse.php index 1cf467e..9afdcc6 100644 --- a/lib/REST/Miniflux/ErrorResponse.php +++ b/lib/REST/Miniflux/ErrorResponse.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Miniflux; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/Miniflux/Status.php b/lib/REST/Miniflux/Status.php index 367a7a6..e220019 100644 --- a/lib/REST/Miniflux/Status.php +++ b/lib/REST/Miniflux/Status.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Miniflux; use Psr\Http\Message\ServerRequestInterface; diff --git a/lib/REST/Miniflux/Token.php b/lib/REST/Miniflux/Token.php index 8052c50..5bb491e 100644 --- a/lib/REST/Miniflux/Token.php +++ b/lib/REST/Miniflux/Token.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Miniflux; use JKingWeb\Arsse\Arsse; @@ -28,4 +29,4 @@ class Token { } return $out; } -} \ No newline at end of file +} diff --git a/lib/REST/Miniflux/V1.php b/lib/REST/Miniflux/V1.php index 4c55fbc..6078faf 100644 --- a/lib/REST/Miniflux/V1.php +++ b/lib/REST/Miniflux/V1.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\Miniflux; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/NextcloudNews/V1_2.php b/lib/REST/NextcloudNews/V1_2.php index 111cf2f..833c5da 100644 --- a/lib/REST/NextcloudNews/V1_2.php +++ b/lib/REST/NextcloudNews/V1_2.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\NextcloudNews; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/NextcloudNews/Versions.php b/lib/REST/NextcloudNews/Versions.php index 8337736..cf9c340 100644 --- a/lib/REST/NextcloudNews/Versions.php +++ b/lib/REST/NextcloudNews/Versions.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\NextcloudNews; use Psr\Http\Message\ServerRequestInterface; diff --git a/lib/REST/TinyTinyRSS/API.php b/lib/REST/TinyTinyRSS/API.php index 60c4e3b..f148a7a 100644 --- a/lib/REST/TinyTinyRSS/API.php +++ b/lib/REST/TinyTinyRSS/API.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\TinyTinyRSS; use JKingWeb\Arsse\Feed; diff --git a/lib/REST/TinyTinyRSS/Exception.php b/lib/REST/TinyTinyRSS/Exception.php index da5a3c8..9af6c7e 100644 --- a/lib/REST/TinyTinyRSS/Exception.php +++ b/lib/REST/TinyTinyRSS/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\TinyTinyRSS; class Exception extends \Exception { diff --git a/lib/REST/TinyTinyRSS/Icon.php b/lib/REST/TinyTinyRSS/Icon.php index 9e7c7ec..038d901 100644 --- a/lib/REST/TinyTinyRSS/Icon.php +++ b/lib/REST/TinyTinyRSS/Icon.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\TinyTinyRSS; use JKingWeb\Arsse\Arsse; diff --git a/lib/REST/TinyTinyRSS/Search.php b/lib/REST/TinyTinyRSS/Search.php index ea3dbe6..ac7b13d 100644 --- a/lib/REST/TinyTinyRSS/Search.php +++ b/lib/REST/TinyTinyRSS/Search.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\REST\TinyTinyRSS; use JKingWeb\Arsse\Context\Context; diff --git a/lib/Rule/Exception.php b/lib/Rule/Exception.php index 1239e37..825a29d 100644 --- a/lib/Rule/Exception.php +++ b/lib/Rule/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Rule; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/Rule/Rule.php b/lib/Rule/Rule.php index c8d4189..409c371 100644 --- a/lib/Rule/Rule.php +++ b/lib/Rule/Rule.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Rule; abstract class Rule { diff --git a/lib/Service.php b/lib/Service.php index a69b12c..f5e65bf 100644 --- a/lib/Service.php +++ b/lib/Service.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\Misc\Date; diff --git a/lib/Service/Driver.php b/lib/Service/Driver.php index e2dcf92..578ba7b 100644 --- a/lib/Service/Driver.php +++ b/lib/Service/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Service; interface Driver { diff --git a/lib/Service/Serial/Driver.php b/lib/Service/Serial/Driver.php index dc2c74f..fd7adce 100644 --- a/lib/Service/Serial/Driver.php +++ b/lib/Service/Serial/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Service\Serial; use JKingWeb\Arsse\Arsse; diff --git a/lib/Service/Subprocess/Driver.php b/lib/Service/Subprocess/Driver.php index 0986f2c..b92280b 100644 --- a/lib/Service/Subprocess/Driver.php +++ b/lib/Service/Subprocess/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Service\Subprocess; use JKingWeb\Arsse\Arsse; diff --git a/lib/User.php b/lib/User.php index 4bf8e36..da8718c 100644 --- a/lib/User.php +++ b/lib/User.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; use JKingWeb\Arsse\Misc\ValueInfo as V; diff --git a/lib/User/Driver.php b/lib/User/Driver.php index fcf2010..eb5e8e5 100644 --- a/lib/User/Driver.php +++ b/lib/User/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User; interface Driver { diff --git a/lib/User/Exception.php b/lib/User/Exception.php index 33e3757..0123a8e 100644 --- a/lib/User/Exception.php +++ b/lib/User/Exception.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User; class Exception extends \JKingWeb\Arsse\AbstractException { diff --git a/lib/User/ExceptionConflict.php b/lib/User/ExceptionConflict.php index 4fa1bbf..2d899cf 100644 --- a/lib/User/ExceptionConflict.php +++ b/lib/User/ExceptionConflict.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User; class ExceptionConflict extends Exception { diff --git a/lib/User/ExceptionInput.php b/lib/User/ExceptionInput.php index aea8c13..5662b4d 100644 --- a/lib/User/ExceptionInput.php +++ b/lib/User/ExceptionInput.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User; class ExceptionInput extends Exception { diff --git a/lib/User/ExceptionSession.php b/lib/User/ExceptionSession.php index a7fdbee..8996c18 100644 --- a/lib/User/ExceptionSession.php +++ b/lib/User/ExceptionSession.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User; class ExceptionSession extends Exception { diff --git a/lib/User/Internal/Driver.php b/lib/User/Internal/Driver.php index 80f16bb..5674d00 100644 --- a/lib/User/Internal/Driver.php +++ b/lib/User/Internal/Driver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\User\Internal; use JKingWeb\Arsse\Arsse; diff --git a/tests/bootstrap.php b/tests/bootstrap.php index e066b24..27ad8f5 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; const NS_BASE = __NAMESPACE__."\\"; diff --git a/tests/cases/CLI/TestCLI.php b/tests/cases/CLI/TestCLI.php index ff62c75..29ee42b 100644 --- a/tests/cases/CLI/TestCLI.php +++ b/tests/cases/CLI/TestCLI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\CLI; use GuzzleHttp\Exception\ClientException; diff --git a/tests/cases/Conf/TestConf.php b/tests/cases/Conf/TestConf.php index 088746b..3a138b7 100644 --- a/tests/cases/Conf/TestConf.php +++ b/tests/cases/Conf/TestConf.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Conf; use JKingWeb\Arsse\Conf; diff --git a/tests/cases/Database/AbstractTest.php b/tests/cases/Database/AbstractTest.php index ef1f0d7..76fbb05 100644 --- a/tests/cases/Database/AbstractTest.php +++ b/tests/cases/Database/AbstractTest.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Test\Database; diff --git a/tests/cases/Database/SeriesArticle.php b/tests/cases/Database/SeriesArticle.php index eace73a..18ca1a2 100644 --- a/tests/cases/Database/SeriesArticle.php +++ b/tests/cases/Database/SeriesArticle.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Database; diff --git a/tests/cases/Database/SeriesCleanup.php b/tests/cases/Database/SeriesCleanup.php index d863a64..3ec32ac 100644 --- a/tests/cases/Database/SeriesCleanup.php +++ b/tests/cases/Database/SeriesCleanup.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesFeed.php b/tests/cases/Database/SeriesFeed.php index 5cc0d84..783e432 100644 --- a/tests/cases/Database/SeriesFeed.php +++ b/tests/cases/Database/SeriesFeed.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesFolder.php b/tests/cases/Database/SeriesFolder.php index 4c488ce..6b0a0f5 100644 --- a/tests/cases/Database/SeriesFolder.php +++ b/tests/cases/Database/SeriesFolder.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesIcon.php b/tests/cases/Database/SeriesIcon.php index 667651f..31faf17 100644 --- a/tests/cases/Database/SeriesIcon.php +++ b/tests/cases/Database/SeriesIcon.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesLabel.php b/tests/cases/Database/SeriesLabel.php index 4a4fac6..dc5193a 100644 --- a/tests/cases/Database/SeriesLabel.php +++ b/tests/cases/Database/SeriesLabel.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesMeta.php b/tests/cases/Database/SeriesMeta.php index b1d1974..8037dcb 100644 --- a/tests/cases/Database/SeriesMeta.php +++ b/tests/cases/Database/SeriesMeta.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Test\Database; diff --git a/tests/cases/Database/SeriesMiscellany.php b/tests/cases/Database/SeriesMiscellany.php index 5bc1092..102f56a 100644 --- a/tests/cases/Database/SeriesMiscellany.php +++ b/tests/cases/Database/SeriesMiscellany.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesSession.php b/tests/cases/Database/SeriesSession.php index 1db319f..a22c1d3 100644 --- a/tests/cases/Database/SeriesSession.php +++ b/tests/cases/Database/SeriesSession.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesSubscription.php b/tests/cases/Database/SeriesSubscription.php index 625ac39..f32102d 100644 --- a/tests/cases/Database/SeriesSubscription.php +++ b/tests/cases/Database/SeriesSubscription.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use GuzzleHttp\Exception\ClientException; @@ -45,8 +46,8 @@ trait SeriesSubscription { ], 'arsse_icons' => [ 'columns' => [ - 'id' => "int", - 'url' => "str", + 'id' => "int", + 'url' => "str", 'data' => "blob", ], 'rows' => [ diff --git a/tests/cases/Database/SeriesTag.php b/tests/cases/Database/SeriesTag.php index 1f2ea9c..707bede 100644 --- a/tests/cases/Database/SeriesTag.php +++ b/tests/cases/Database/SeriesTag.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesToken.php b/tests/cases/Database/SeriesToken.php index 7a14ed0..249d245 100644 --- a/tests/cases/Database/SeriesToken.php +++ b/tests/cases/Database/SeriesToken.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/SeriesUser.php b/tests/cases/Database/SeriesUser.php index b56a64d..3a64437 100644 --- a/tests/cases/Database/SeriesUser.php +++ b/tests/cases/Database/SeriesUser.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Database/TestDatabase.php b/tests/cases/Database/TestDatabase.php index 00838b3..5c915ef 100644 --- a/tests/cases/Database/TestDatabase.php +++ b/tests/cases/Database/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Database; use JKingWeb\Arsse\Database; diff --git a/tests/cases/Db/BaseDriver.php b/tests/cases/Db/BaseDriver.php index 89a2600..422e002 100644 --- a/tests/cases/Db/BaseDriver.php +++ b/tests/cases/Db/BaseDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db; use JKingWeb\Arsse\Db\Statement; diff --git a/tests/cases/Db/BaseResult.php b/tests/cases/Db/BaseResult.php index 3cfc5bb..027743d 100644 --- a/tests/cases/Db/BaseResult.php +++ b/tests/cases/Db/BaseResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db; use JKingWeb\Arsse\Db\Result; diff --git a/tests/cases/Db/BaseStatement.php b/tests/cases/Db/BaseStatement.php index bb8630e..278870b 100644 --- a/tests/cases/Db/BaseStatement.php +++ b/tests/cases/Db/BaseStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db; use JKingWeb\Arsse\Db\Statement; diff --git a/tests/cases/Db/BaseUpdate.php b/tests/cases/Db/BaseUpdate.php index c2a7cc1..8649153 100644 --- a/tests/cases/Db/BaseUpdate.php +++ b/tests/cases/Db/BaseUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Db/MySQL/TestCreation.php b/tests/cases/Db/MySQL/TestCreation.php index 2f82104..2118fa1 100644 --- a/tests/cases/Db/MySQL/TestCreation.php +++ b/tests/cases/Db/MySQL/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; use JKingWeb\Arsse\Db\MySQL\Driver as Driver; diff --git a/tests/cases/Db/MySQL/TestDatabase.php b/tests/cases/Db/MySQL/TestDatabase.php index 9ad47ed..b7e8d8b 100644 --- a/tests/cases/Db/MySQL/TestDatabase.php +++ b/tests/cases/Db/MySQL/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; /** diff --git a/tests/cases/Db/MySQL/TestDriver.php b/tests/cases/Db/MySQL/TestDriver.php index 1f8240e..a737cd0 100644 --- a/tests/cases/Db/MySQL/TestDriver.php +++ b/tests/cases/Db/MySQL/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; /** diff --git a/tests/cases/Db/MySQL/TestResult.php b/tests/cases/Db/MySQL/TestResult.php index 030f797..d077416 100644 --- a/tests/cases/Db/MySQL/TestResult.php +++ b/tests/cases/Db/MySQL/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; /** diff --git a/tests/cases/Db/MySQL/TestStatement.php b/tests/cases/Db/MySQL/TestStatement.php index 76c7b81..2820207 100644 --- a/tests/cases/Db/MySQL/TestStatement.php +++ b/tests/cases/Db/MySQL/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; /** diff --git a/tests/cases/Db/MySQL/TestUpdate.php b/tests/cases/Db/MySQL/TestUpdate.php index df7808e..8a9375e 100644 --- a/tests/cases/Db/MySQL/TestUpdate.php +++ b/tests/cases/Db/MySQL/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQL; /** diff --git a/tests/cases/Db/MySQLPDO/TestCreation.php b/tests/cases/Db/MySQLPDO/TestCreation.php index b12bc8e..07800d1 100644 --- a/tests/cases/Db/MySQLPDO/TestCreation.php +++ b/tests/cases/Db/MySQLPDO/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; use JKingWeb\Arsse\Db\MySQL\PDODriver as Driver; diff --git a/tests/cases/Db/MySQLPDO/TestDatabase.php b/tests/cases/Db/MySQLPDO/TestDatabase.php index e734555..41cd3ff 100644 --- a/tests/cases/Db/MySQLPDO/TestDatabase.php +++ b/tests/cases/Db/MySQLPDO/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; /** diff --git a/tests/cases/Db/MySQLPDO/TestDriver.php b/tests/cases/Db/MySQLPDO/TestDriver.php index ee46ba9..24fd873 100644 --- a/tests/cases/Db/MySQLPDO/TestDriver.php +++ b/tests/cases/Db/MySQLPDO/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; /** diff --git a/tests/cases/Db/MySQLPDO/TestResult.php b/tests/cases/Db/MySQLPDO/TestResult.php index 5686f43..2c2efe0 100644 --- a/tests/cases/Db/MySQLPDO/TestResult.php +++ b/tests/cases/Db/MySQLPDO/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; /** diff --git a/tests/cases/Db/MySQLPDO/TestStatement.php b/tests/cases/Db/MySQLPDO/TestStatement.php index a6d0706..b10cb66 100644 --- a/tests/cases/Db/MySQLPDO/TestStatement.php +++ b/tests/cases/Db/MySQLPDO/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; /** diff --git a/tests/cases/Db/MySQLPDO/TestUpdate.php b/tests/cases/Db/MySQLPDO/TestUpdate.php index 8b0594e..38a80f2 100644 --- a/tests/cases/Db/MySQLPDO/TestUpdate.php +++ b/tests/cases/Db/MySQLPDO/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\MySQLPDO; /** diff --git a/tests/cases/Db/PostgreSQL/TestCreation.php b/tests/cases/Db/PostgreSQL/TestCreation.php index 606dc8d..7764f8a 100644 --- a/tests/cases/Db/PostgreSQL/TestCreation.php +++ b/tests/cases/Db/PostgreSQL/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Db/PostgreSQL/TestDatabase.php b/tests/cases/Db/PostgreSQL/TestDatabase.php index 468a016..8342c08 100644 --- a/tests/cases/Db/PostgreSQL/TestDatabase.php +++ b/tests/cases/Db/PostgreSQL/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; /** diff --git a/tests/cases/Db/PostgreSQL/TestDriver.php b/tests/cases/Db/PostgreSQL/TestDriver.php index df81bc4..5ab09a1 100644 --- a/tests/cases/Db/PostgreSQL/TestDriver.php +++ b/tests/cases/Db/PostgreSQL/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; /** diff --git a/tests/cases/Db/PostgreSQL/TestResult.php b/tests/cases/Db/PostgreSQL/TestResult.php index 9a4413d..af82624 100644 --- a/tests/cases/Db/PostgreSQL/TestResult.php +++ b/tests/cases/Db/PostgreSQL/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; /** diff --git a/tests/cases/Db/PostgreSQL/TestStatement.php b/tests/cases/Db/PostgreSQL/TestStatement.php index 8ec5fdb..2fb2781 100644 --- a/tests/cases/Db/PostgreSQL/TestStatement.php +++ b/tests/cases/Db/PostgreSQL/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; /** diff --git a/tests/cases/Db/PostgreSQL/TestUpdate.php b/tests/cases/Db/PostgreSQL/TestUpdate.php index 0117a34..5f7f06c 100644 --- a/tests/cases/Db/PostgreSQL/TestUpdate.php +++ b/tests/cases/Db/PostgreSQL/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQL; /** diff --git a/tests/cases/Db/PostgreSQLPDO/TestCreation.php b/tests/cases/Db/PostgreSQLPDO/TestCreation.php index a391640..225f75f 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestCreation.php +++ b/tests/cases/Db/PostgreSQLPDO/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Db/PostgreSQLPDO/TestDatabase.php b/tests/cases/Db/PostgreSQLPDO/TestDatabase.php index 3c478b8..7b7a723 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestDatabase.php +++ b/tests/cases/Db/PostgreSQLPDO/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; /** diff --git a/tests/cases/Db/PostgreSQLPDO/TestDriver.php b/tests/cases/Db/PostgreSQLPDO/TestDriver.php index dcde7cf..83c26c6 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestDriver.php +++ b/tests/cases/Db/PostgreSQLPDO/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; /** diff --git a/tests/cases/Db/PostgreSQLPDO/TestResult.php b/tests/cases/Db/PostgreSQLPDO/TestResult.php index b3d0cb3..efdadd3 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestResult.php +++ b/tests/cases/Db/PostgreSQLPDO/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; /** diff --git a/tests/cases/Db/PostgreSQLPDO/TestStatement.php b/tests/cases/Db/PostgreSQLPDO/TestStatement.php index 8878d42..308127f 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestStatement.php +++ b/tests/cases/Db/PostgreSQLPDO/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; /** diff --git a/tests/cases/Db/PostgreSQLPDO/TestUpdate.php b/tests/cases/Db/PostgreSQLPDO/TestUpdate.php index e327809..a9f88ec 100644 --- a/tests/cases/Db/PostgreSQLPDO/TestUpdate.php +++ b/tests/cases/Db/PostgreSQLPDO/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\PostgreSQLPDO; /** diff --git a/tests/cases/Db/SQLite3/TestCreation.php b/tests/cases/Db/SQLite3/TestCreation.php index 3e3b2f2..529578b 100644 --- a/tests/cases/Db/SQLite3/TestCreation.php +++ b/tests/cases/Db/SQLite3/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Db/SQLite3/TestDatabase.php b/tests/cases/Db/SQLite3/TestDatabase.php index ea30221..ee3070b 100644 --- a/tests/cases/Db/SQLite3/TestDatabase.php +++ b/tests/cases/Db/SQLite3/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; /** diff --git a/tests/cases/Db/SQLite3/TestDriver.php b/tests/cases/Db/SQLite3/TestDriver.php index b3eb359..4ac4425 100644 --- a/tests/cases/Db/SQLite3/TestDriver.php +++ b/tests/cases/Db/SQLite3/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; /** diff --git a/tests/cases/Db/SQLite3/TestResult.php b/tests/cases/Db/SQLite3/TestResult.php index 5a8d0cd..f5d1e01 100644 --- a/tests/cases/Db/SQLite3/TestResult.php +++ b/tests/cases/Db/SQLite3/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; /** diff --git a/tests/cases/Db/SQLite3/TestStatement.php b/tests/cases/Db/SQLite3/TestStatement.php index f7b970f..99ff762 100644 --- a/tests/cases/Db/SQLite3/TestStatement.php +++ b/tests/cases/Db/SQLite3/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; /** diff --git a/tests/cases/Db/SQLite3/TestUpdate.php b/tests/cases/Db/SQLite3/TestUpdate.php index 409f109..840778d 100644 --- a/tests/cases/Db/SQLite3/TestUpdate.php +++ b/tests/cases/Db/SQLite3/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3; /** diff --git a/tests/cases/Db/SQLite3PDO/TestCreation.php b/tests/cases/Db/SQLite3PDO/TestCreation.php index ea5e9a3..15c5078 100644 --- a/tests/cases/Db/SQLite3PDO/TestCreation.php +++ b/tests/cases/Db/SQLite3PDO/TestCreation.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Db/SQLite3PDO/TestDatabase.php b/tests/cases/Db/SQLite3PDO/TestDatabase.php index 751647a..e5341f3 100644 --- a/tests/cases/Db/SQLite3PDO/TestDatabase.php +++ b/tests/cases/Db/SQLite3PDO/TestDatabase.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; /** diff --git a/tests/cases/Db/SQLite3PDO/TestDriver.php b/tests/cases/Db/SQLite3PDO/TestDriver.php index 3d6087c..73cf3c7 100644 --- a/tests/cases/Db/SQLite3PDO/TestDriver.php +++ b/tests/cases/Db/SQLite3PDO/TestDriver.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; /** diff --git a/tests/cases/Db/SQLite3PDO/TestResult.php b/tests/cases/Db/SQLite3PDO/TestResult.php index 339921d..13a030a 100644 --- a/tests/cases/Db/SQLite3PDO/TestResult.php +++ b/tests/cases/Db/SQLite3PDO/TestResult.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; /** diff --git a/tests/cases/Db/SQLite3PDO/TestStatement.php b/tests/cases/Db/SQLite3PDO/TestStatement.php index 2229a5d..930dc73 100644 --- a/tests/cases/Db/SQLite3PDO/TestStatement.php +++ b/tests/cases/Db/SQLite3PDO/TestStatement.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; /** diff --git a/tests/cases/Db/SQLite3PDO/TestUpdate.php b/tests/cases/Db/SQLite3PDO/TestUpdate.php index 964dc2d..2eb8ef4 100644 --- a/tests/cases/Db/SQLite3PDO/TestUpdate.php +++ b/tests/cases/Db/SQLite3PDO/TestUpdate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Db\SQLite3PDO; /** diff --git a/tests/cases/Db/TestResultAggregate.php b/tests/cases/Db/TestResultAggregate.php index 2ce69cd..75ff003 100644 --- a/tests/cases/Db/TestResultAggregate.php +++ b/tests/cases/Db/TestResultAggregate.php @@ -1,5 +1,10 @@ */ class TestOPML extends \JKingWeb\Arsse\Test\AbstractTest { diff --git a/tests/cases/Lang/TestBasic.php b/tests/cases/Lang/TestBasic.php index f94b4f3..89f2ce5 100644 --- a/tests/cases/Lang/TestBasic.php +++ b/tests/cases/Lang/TestBasic.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Lang; use JKingWeb\Arsse\Lang as TestClass; diff --git a/tests/cases/Lang/TestComplex.php b/tests/cases/Lang/TestComplex.php index 9697c23..326b487 100644 --- a/tests/cases/Lang/TestComplex.php +++ b/tests/cases/Lang/TestComplex.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Lang; use JKingWeb\Arsse\Lang as TestClass; diff --git a/tests/cases/Lang/TestErrors.php b/tests/cases/Lang/TestErrors.php index 8c99506..3a49ed0 100644 --- a/tests/cases/Lang/TestErrors.php +++ b/tests/cases/Lang/TestErrors.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Lang; use JKingWeb\Arsse\Lang as TestClass; diff --git a/tests/cases/Misc/TestContext.php b/tests/cases/Misc/TestContext.php index 46ecaaf..4d29e4c 100644 --- a/tests/cases/Misc/TestContext.php +++ b/tests/cases/Misc/TestContext.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Context\Context; diff --git a/tests/cases/Misc/TestDate.php b/tests/cases/Misc/TestDate.php index e0cbbad..955c0ca 100644 --- a/tests/cases/Misc/TestDate.php +++ b/tests/cases/Misc/TestDate.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Misc\Date; diff --git a/tests/cases/Misc/TestFactory.php b/tests/cases/Misc/TestFactory.php index c694019..254b455 100644 --- a/tests/cases/Misc/TestFactory.php +++ b/tests/cases/Misc/TestFactory.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Factory; diff --git a/tests/cases/Misc/TestHTTP.php b/tests/cases/Misc/TestHTTP.php index 9bffe07..9d928f9 100644 --- a/tests/cases/Misc/TestHTTP.php +++ b/tests/cases/Misc/TestHTTP.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Misc\HTTP; diff --git a/tests/cases/Misc/TestQuery.php b/tests/cases/Misc/TestQuery.php index db8a629..1c326dc 100644 --- a/tests/cases/Misc/TestQuery.php +++ b/tests/cases/Misc/TestQuery.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Misc\Query; diff --git a/tests/cases/Misc/TestRule.php b/tests/cases/Misc/TestRule.php index 8850329..461ee26 100644 --- a/tests/cases/Misc/TestRule.php +++ b/tests/cases/Misc/TestRule.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Rule\Rule; diff --git a/tests/cases/Misc/TestURL.php b/tests/cases/Misc/TestURL.php index eddc67e..f207b71 100644 --- a/tests/cases/Misc/TestURL.php +++ b/tests/cases/Misc/TestURL.php @@ -4,13 +4,13 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Misc\URL; /** @covers \JKingWeb\Arsse\Misc\URL */ class TestURL extends \JKingWeb\Arsse\Test\AbstractTest { - /** @dataProvider provideNormalizations */ public function testNormalizeAUrl(string $url, string $exp, string $user = null, string $pass = null): void { $this->assertSame($exp, URL::normalize($url, $user, $pass)); diff --git a/tests/cases/Misc/TestValueInfo.php b/tests/cases/Misc/TestValueInfo.php index 90b4be9..05d2712 100644 --- a/tests/cases/Misc/TestValueInfo.php +++ b/tests/cases/Misc/TestValueInfo.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Misc; use JKingWeb\Arsse\Misc\ValueInfo as I; @@ -12,7 +13,6 @@ use JKingWeb\Arsse\Test\Result; /** @covers \JKingWeb\Arsse\Misc\ValueInfo */ class TestValueInfo extends \JKingWeb\Arsse\Test\AbstractTest { - public function testGetIntegerInfo(): void { $tests = [ [null, I::NULL], diff --git a/tests/cases/REST/Fever/PDO/TestAPI.php b/tests/cases/REST/Fever/PDO/TestAPI.php index 02caa3d..8042f35 100644 --- a/tests/cases/REST/Fever/PDO/TestAPI.php +++ b/tests/cases/REST/Fever/PDO/TestAPI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Fever\PDO; /** @covers \JKingWeb\Arsse\REST\Fever\API diff --git a/tests/cases/REST/Fever/TestAPI.php b/tests/cases/REST/Fever/TestAPI.php index 0868d13..55eaf10 100644 --- a/tests/cases/REST/Fever/TestAPI.php +++ b/tests/cases/REST/Fever/TestAPI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Fever; use JKingWeb\Arsse\Arsse; @@ -15,7 +16,6 @@ use JKingWeb\Arsse\Db\ExceptionInput; use JKingWeb\Arsse\Db\Transaction; use JKingWeb\Arsse\REST\Fever\API; use Psr\Http\Message\ResponseInterface; -use Laminas\Diactoros\ServerRequest; use Laminas\Diactoros\Response\JsonResponse; use Laminas\Diactoros\Response\XmlResponse; use Laminas\Diactoros\Response\EmptyResponse; diff --git a/tests/cases/REST/Fever/TestUser.php b/tests/cases/REST/Fever/TestUser.php index 09027c2..4b976ef 100644 --- a/tests/cases/REST/Fever/TestUser.php +++ b/tests/cases/REST/Fever/TestUser.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Fever; use JKingWeb\Arsse\Arsse; @@ -34,7 +35,7 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { Arsse::$db = $this->dbMock->get(); // instantiate the handler return new FeverUser; - } + } /** @dataProvider providePasswordCreations */ public function testRegisterAUserPassword(string $user, string $password = null, $exp): void { diff --git a/tests/cases/REST/Miniflux/PDO/TestToken.php b/tests/cases/REST/Miniflux/PDO/TestToken.php index 1a561d0..4f3ce3c 100644 --- a/tests/cases/REST/Miniflux/PDO/TestToken.php +++ b/tests/cases/REST/Miniflux/PDO/TestToken.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux\PDO; /** @covers \JKingWeb\Arsse\REST\Miniflux\Token diff --git a/tests/cases/REST/Miniflux/PDO/TestV1.php b/tests/cases/REST/Miniflux/PDO/TestV1.php index 977ffa4..0f1e0e2 100644 --- a/tests/cases/REST/Miniflux/PDO/TestV1.php +++ b/tests/cases/REST/Miniflux/PDO/TestV1.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux\PDO; /** @covers \JKingWeb\Arsse\REST\Miniflux\V1 diff --git a/tests/cases/REST/Miniflux/TestErrorResponse.php b/tests/cases/REST/Miniflux/TestErrorResponse.php index 5852b4d..e2e7ac8 100644 --- a/tests/cases/REST/Miniflux/TestErrorResponse.php +++ b/tests/cases/REST/Miniflux/TestErrorResponse.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux; use JKingWeb\Arsse\REST\Miniflux\ErrorResponse; diff --git a/tests/cases/REST/Miniflux/TestStatus.php b/tests/cases/REST/Miniflux/TestStatus.php index bcf81d1..9f8b287 100644 --- a/tests/cases/REST/Miniflux/TestStatus.php +++ b/tests/cases/REST/Miniflux/TestStatus.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux; use JKingWeb\Arsse\REST\Miniflux\Status; diff --git a/tests/cases/REST/Miniflux/TestToken.php b/tests/cases/REST/Miniflux/TestToken.php index 484d9b2..222e258 100644 --- a/tests/cases/REST/Miniflux/TestToken.php +++ b/tests/cases/REST/Miniflux/TestToken.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/REST/Miniflux/TestV1.php b/tests/cases/REST/Miniflux/TestV1.php index f1dd8d3..2b3c6c9 100644 --- a/tests/cases/REST/Miniflux/TestV1.php +++ b/tests/cases/REST/Miniflux/TestV1.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\Miniflux; use Eloquent\Phony\Mock\Handle\InstanceHandle; diff --git a/tests/cases/REST/NextcloudNews/PDO/TestV1_2.php b/tests/cases/REST/NextcloudNews/PDO/TestV1_2.php index a781a2b..6b8d834 100644 --- a/tests/cases/REST/NextcloudNews/PDO/TestV1_2.php +++ b/tests/cases/REST/NextcloudNews/PDO/TestV1_2.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\NextcloudNews\PDO; /** @covers \JKingWeb\Arsse\REST\NextcloudNews\V1_2 diff --git a/tests/cases/REST/NextcloudNews/TestV1_2.php b/tests/cases/REST/NextcloudNews/TestV1_2.php index 9e980e9..c2d5d1a 100644 --- a/tests/cases/REST/NextcloudNews/TestV1_2.php +++ b/tests/cases/REST/NextcloudNews/TestV1_2.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\NextcloudNews; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/REST/NextcloudNews/TestVersions.php b/tests/cases/REST/NextcloudNews/TestVersions.php index b5d5679..efbc8e7 100644 --- a/tests/cases/REST/NextcloudNews/TestVersions.php +++ b/tests/cases/REST/NextcloudNews/TestVersions.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\NextcloudNews; use JKingWeb\Arsse\REST\NextcloudNews\Versions; diff --git a/tests/cases/REST/TestREST.php b/tests/cases/REST/TestREST.php index 55da259..e76d7b7 100644 --- a/tests/cases/REST/TestREST.php +++ b/tests/cases/REST/TestREST.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST; use JKingWeb\Arsse\Arsse; @@ -22,7 +23,6 @@ use Laminas\Diactoros\Response\EmptyResponse; /** @covers \JKingWeb\Arsse\REST */ class TestREST extends \JKingWeb\Arsse\Test\AbstractTest { - /** @dataProvider provideApiMatchData */ public function testMatchAUrlToAnApi($apiList, string $input, array $exp): void { $r = new REST($apiList); @@ -306,7 +306,7 @@ class TestREST extends \JKingWeb\Arsse\Test\AbstractTest { if ($called) { $rMock->authenticateRequest->called(); $hMock->dispatch->once()->called(); - $in = $hMock->dispatch->firstCall()->argument();; + $in = $hMock->dispatch->firstCall()->argument(); $this->assertSame($method, $in->getMethod()); $this->assertSame($target, $in->getRequestTarget()); } else { diff --git a/tests/cases/REST/TinyTinyRSS/PDO/TestAPI.php b/tests/cases/REST/TinyTinyRSS/PDO/TestAPI.php index 62a9cef..1ec5a32 100644 --- a/tests/cases/REST/TinyTinyRSS/PDO/TestAPI.php +++ b/tests/cases/REST/TinyTinyRSS/PDO/TestAPI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\TinyTinyRSS\PDO; /** @covers \JKingWeb\Arsse\REST\TinyTinyRSS\API diff --git a/tests/cases/REST/TinyTinyRSS/TestAPI.php b/tests/cases/REST/TinyTinyRSS/TestAPI.php index 18d1d24..aca3ecf 100644 --- a/tests/cases/REST/TinyTinyRSS/TestAPI.php +++ b/tests/cases/REST/TinyTinyRSS/TestAPI.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\TinyTinyRSS; use JKingWeb\Arsse\Arsse; @@ -899,7 +900,7 @@ LONG_STRING; [['caption' => " "], [$this->userId, ['name' => " "]], new ExceptionInput("typeViolation"), null, null, $this->respErr("INCORRECT_USAGE")], ]; } - + /** @dataProvider provideLabelRemovals */ public function testRemoveALabel(array $in, ?array $data, $out, ResponseInterface $exp): void { $in = array_merge(['op' => "removeLabel", 'sid' => "PriestsOfSyrinx"], $in); @@ -1356,7 +1357,6 @@ LONG_STRING; ]; } - /** @dataProvider provideArticleChanges */ public function testChangeArticles(array $in, ResponseInterface $exp): void { $in = array_merge(['op' => "updateArticle", 'sid' => "PriestsOfSyrinx"], $in); diff --git a/tests/cases/REST/TinyTinyRSS/TestIcon.php b/tests/cases/REST/TinyTinyRSS/TestIcon.php index f541f50..b590c35 100644 --- a/tests/cases/REST/TinyTinyRSS/TestIcon.php +++ b/tests/cases/REST/TinyTinyRSS/TestIcon.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\TinyTinyRSS; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/REST/TinyTinyRSS/TestSearch.php b/tests/cases/REST/TinyTinyRSS/TestSearch.php index 6999b0d..a1911e3 100644 --- a/tests/cases/REST/TinyTinyRSS/TestSearch.php +++ b/tests/cases/REST/TinyTinyRSS/TestSearch.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\REST\TinyTinyRSS; use JKingWeb\Arsse\Context\Context; diff --git a/tests/cases/Service/TestSerial.php b/tests/cases/Service/TestSerial.php index 321e150..a2702b0 100644 --- a/tests/cases/Service/TestSerial.php +++ b/tests/cases/Service/TestSerial.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Service; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/Service/TestService.php b/tests/cases/Service/TestService.php index 553895e..bf04511 100644 --- a/tests/cases/Service/TestService.php +++ b/tests/cases/Service/TestService.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Service; use JKingWeb\Arsse\Arsse; @@ -23,7 +24,6 @@ class TestService extends \JKingWeb\Arsse\Test\AbstractTest { $this->srv = new Service(); } - public function testCheckIn(): void { $now = time(); $this->srv->checkIn(); diff --git a/tests/cases/Service/TestSubprocess.php b/tests/cases/Service/TestSubprocess.php index 61eefa6..f4a26fe 100644 --- a/tests/cases/Service/TestSubprocess.php +++ b/tests/cases/Service/TestSubprocess.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\Service; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/TestArsse.php b/tests/cases/TestArsse.php index 2173db8..95e2204 100644 --- a/tests/cases/TestArsse.php +++ b/tests/cases/TestArsse.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/User/TestInternal.php b/tests/cases/User/TestInternal.php index 12f4386..916d837 100644 --- a/tests/cases/User/TestInternal.php +++ b/tests/cases/User/TestInternal.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\User; use JKingWeb\Arsse\Arsse; diff --git a/tests/cases/User/TestUser.php b/tests/cases/User/TestUser.php index e6e6d65..72aa556 100644 --- a/tests/cases/User/TestUser.php +++ b/tests/cases/User/TestUser.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\TestCase\User; use Eloquent\Phony\Phpunit\Phony; @@ -21,12 +22,12 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { parent::setUp(); self::setConf(); // create a mock database interface - $this->dbMock= $this->mock(Database::class); + $this->dbMock = $this->mock(Database::class); $this->dbMock->begin->returns($this->mock(\JKingWeb\Arsse\Db\Transaction::class)); // create a mock user driver $this->drv = $this->mock(Driver::class); } - + protected function prepTest(?\Closure $partialMockDef = null): User { Arsse::$db = $this->dbMock->get(); if ($partialMockDef) { @@ -189,7 +190,7 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { $pass = "random password"; $this->drv->userAdd->returns(null)->returns($pass); $this->dbMock->userExists->returns(true); - $u = $this->prepTest(function ($u) use ($pass) { + $u = $this->prepTest(function($u) use ($pass) { $u->generatePassword->returns($pass); }); $this->assertSame($pass, $u->add($user)); @@ -330,7 +331,7 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { $this->drv->userPasswordSet->returns(null)->returns($pass); $this->dbMock->userPasswordSet->returns($pass); $this->dbMock->userExists->returns(true); - $u = $this->prepTest(function ($u) use ($pass) { + $u = $this->prepTest(function($u) use ($pass) { $u->generatePassword->returns($pass); }); $this->assertSame($pass, $u->passwordSet($user, null)); @@ -360,7 +361,7 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { $this->drv->userPasswordSet->returns(null)->returns($pass); $this->dbMock->userPasswordSet->returns($pass); $this->dbMock->userExists->returns(false); - $u = $this->prepTest(function ($u) use ($pass) { + $u = $this->prepTest(function($u) use ($pass) { $u->generatePassword->returns($pass); }); $this->assertSame($pass, $u->passwordSet($user, null)); @@ -374,7 +375,7 @@ class TestUser extends \JKingWeb\Arsse\Test\AbstractTest { $user = "john.doe@example.com"; $pass = "random password"; $this->drv->userPasswordSet->throws(new ExceptionConflict("doesNotExist")); - $u = $this->prepTest(function ($u) use ($pass) { + $u = $this->prepTest(function($u) use ($pass) { $u->generatePassword->returns($pass); }); $this->assertException("doesNotExist", "User", "ExceptionConflict"); diff --git a/tests/lib/AbstractTest.php b/tests/lib/AbstractTest.php index 5bfd035..37f6fad 100644 --- a/tests/lib/AbstractTest.php +++ b/tests/lib/AbstractTest.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test; use Eloquent\Phony\Mock\Handle\InstanceHandle; @@ -36,7 +37,6 @@ abstract class AbstractTest extends \PHPUnit\Framework\TestCase { protected $langMock; protected $dbMock; protected $userMock; - public function setUp(): void { self::clearData(); @@ -63,17 +63,17 @@ abstract class AbstractTest extends \PHPUnit\Framework\TestCase { $defaults = [ 'dbSQLite3File' => ":memory:", 'dbSQLite3Timeout' => 0, - 'dbPostgreSQLHost' => $_ENV['ARSSE_TEST_PGSQL_HOST'] ?: "", - 'dbPostgreSQLPort' => $_ENV['ARSSE_TEST_PGSQL_PORT'] ?: 5432, - 'dbPostgreSQLUser' => $_ENV['ARSSE_TEST_PGSQL_USER'] ?: "arsse_test", - 'dbPostgreSQLPass' => $_ENV['ARSSE_TEST_PGSQL_PASS'] ?: "arsse_test", - 'dbPostgreSQLDb' => $_ENV['ARSSE_TEST_PGSQL_DB'] ?: "arsse_test", + 'dbPostgreSQLHost' => $_ENV['ARSSE_TEST_PGSQL_HOST'] ?: "", + 'dbPostgreSQLPort' => $_ENV['ARSSE_TEST_PGSQL_PORT'] ?: 5432, + 'dbPostgreSQLUser' => $_ENV['ARSSE_TEST_PGSQL_USER'] ?: "arsse_test", + 'dbPostgreSQLPass' => $_ENV['ARSSE_TEST_PGSQL_PASS'] ?: "arsse_test", + 'dbPostgreSQLDb' => $_ENV['ARSSE_TEST_PGSQL_DB'] ?: "arsse_test", 'dbPostgreSQLSchema' => $_ENV['ARSSE_TEST_PGSQL_SCHEMA'] ?: "arsse_test", - 'dbMySQLHost' => $_ENV['ARSSE_TEST_MYSQL_HOST'] ?: "localhost", - 'dbMySQLPort' => $_ENV['ARSSE_TEST_MYSQL_PORT'] ?: 3306, - 'dbMySQLUser' => $_ENV['ARSSE_TEST_MYSQL_USER'] ?: "arsse_test", - 'dbMySQLPass' => $_ENV['ARSSE_TEST_MYSQL_PASS'] ?: "arsse_test", - 'dbMySQLDb' => $_ENV['ARSSE_TEST_MYSQL_DB'] ?: "arsse_test", + 'dbMySQLHost' => $_ENV['ARSSE_TEST_MYSQL_HOST'] ?: "localhost", + 'dbMySQLPort' => $_ENV['ARSSE_TEST_MYSQL_PORT'] ?: 3306, + 'dbMySQLUser' => $_ENV['ARSSE_TEST_MYSQL_USER'] ?: "arsse_test", + 'dbMySQLPass' => $_ENV['ARSSE_TEST_MYSQL_PASS'] ?: "arsse_test", + 'dbMySQLDb' => $_ENV['ARSSE_TEST_MYSQL_DB'] ?: "arsse_test", ]; Arsse::$conf = (($force ? null : Arsse::$conf) ?? (new Conf))->import($defaults)->import($conf); } diff --git a/tests/lib/Database.php b/tests/lib/Database.php index 2c8a9d7..4949a22 100644 --- a/tests/lib/Database.php +++ b/tests/lib/Database.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test; class Database extends \JKingWeb\Arsse\Database { diff --git a/tests/lib/DatabaseDrivers/MySQL.php b/tests/lib/DatabaseDrivers/MySQL.php index 0df43d3..da8ef2f 100644 --- a/tests/lib/DatabaseDrivers/MySQL.php +++ b/tests/lib/DatabaseDrivers/MySQL.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/DatabaseDrivers/MySQLPDO.php b/tests/lib/DatabaseDrivers/MySQLPDO.php index bbaf8ab..11f276f 100644 --- a/tests/lib/DatabaseDrivers/MySQLPDO.php +++ b/tests/lib/DatabaseDrivers/MySQLPDO.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/DatabaseDrivers/PostgreSQL.php b/tests/lib/DatabaseDrivers/PostgreSQL.php index edc7549..17b0c90 100644 --- a/tests/lib/DatabaseDrivers/PostgreSQL.php +++ b/tests/lib/DatabaseDrivers/PostgreSQL.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/DatabaseDrivers/PostgreSQLPDO.php b/tests/lib/DatabaseDrivers/PostgreSQLPDO.php index 116c3b2..4fbf547 100644 --- a/tests/lib/DatabaseDrivers/PostgreSQLPDO.php +++ b/tests/lib/DatabaseDrivers/PostgreSQLPDO.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/DatabaseDrivers/SQLite3.php b/tests/lib/DatabaseDrivers/SQLite3.php index 7063372..3ba6925 100644 --- a/tests/lib/DatabaseDrivers/SQLite3.php +++ b/tests/lib/DatabaseDrivers/SQLite3.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/DatabaseDrivers/SQLite3PDO.php b/tests/lib/DatabaseDrivers/SQLite3PDO.php index 0a81eb8..02c5d51 100644 --- a/tests/lib/DatabaseDrivers/SQLite3PDO.php +++ b/tests/lib/DatabaseDrivers/SQLite3PDO.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\DatabaseDrivers; use JKingWeb\Arsse\Arsse; diff --git a/tests/lib/Lang/Setup.php b/tests/lib/Lang/Setup.php index c6fa318..0969bf6 100644 --- a/tests/lib/Lang/Setup.php +++ b/tests/lib/Lang/Setup.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\Lang; use JKingWeb\Arsse\Lang; diff --git a/tests/lib/Misc/StrClass.php b/tests/lib/Misc/StrClass.php index 0df4e8b..fb1f2b8 100644 --- a/tests/lib/Misc/StrClass.php +++ b/tests/lib/Misc/StrClass.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test\Misc; class StrClass { diff --git a/tests/lib/PDOTest.php b/tests/lib/PDOTest.php index 0147e28..f0d6621 100644 --- a/tests/lib/PDOTest.php +++ b/tests/lib/PDOTest.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test; trait PDOTest { diff --git a/tests/lib/Result.php b/tests/lib/Result.php index 554c50a..1c466d0 100644 --- a/tests/lib/Result.php +++ b/tests/lib/Result.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test; class Result implements \JKingWeb\Arsse\Db\Result { diff --git a/tests/lib/Service.php b/tests/lib/Service.php index cfd11f4..0dc9e33 100644 --- a/tests/lib/Service.php +++ b/tests/lib/Service.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse\Test; class Service extends \JKingWeb\Arsse\Service { diff --git a/tests/server.php b/tests/server.php index 2e7d8d4..f406999 100644 --- a/tests/server.php +++ b/tests/server.php @@ -4,6 +4,7 @@ * See LICENSE and AUTHORS files for details */ declare(strict_types=1); + namespace JKingWeb\Arsse; require_once __DIR__."/bootstrap.php"; diff --git a/vendor-bin/csfixer/composer.json b/vendor-bin/csfixer/composer.json index c49c075..7953088 100644 --- a/vendor-bin/csfixer/composer.json +++ b/vendor-bin/csfixer/composer.json @@ -1,5 +1,5 @@ { "require-dev": { - "friendsofphp/php-cs-fixer": "^2.8" + "friendsofphp/php-cs-fixer": "v3.0.0-beta.2@dev" } } diff --git a/vendor-bin/csfixer/composer.lock b/vendor-bin/csfixer/composer.lock index 17edd01..f103018 100644 --- a/vendor-bin/csfixer/composer.lock +++ b/vendor-bin/csfixer/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "dec0bf343ea4650da0303df8dfb2ab40", + "content-hash": "f2ffeb86ea78fcea1fd913107fcbfb65", "packages": [], "packages-dev": [ { @@ -304,57 +304,54 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v2.18.5", + "version": "v3.0.0-beta.2", "source": { "type": "git", "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "e0f6d05c8b157f50029ca6c65c19ed2694f475bf" + "reference": "9225f5d06f5c3ee24b89348cd3dff69c9b3c1ede" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/e0f6d05c8b157f50029ca6c65c19ed2694f475bf", - "reference": "e0f6d05c8b157f50029ca6c65c19ed2694f475bf", + "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/9225f5d06f5c3ee24b89348cd3dff69c9b3c1ede", + "reference": "9225f5d06f5c3ee24b89348cd3dff69c9b3c1ede", "shasum": "" }, "require": { - "composer/semver": "^1.4 || ^2.0 || ^3.0", - "composer/xdebug-handler": "^1.2", - "doctrine/annotations": "^1.2", + "composer/semver": "^3.2", + "composer/xdebug-handler": "^1.4", + "doctrine/annotations": "^1.12", "ext-json": "*", "ext-tokenizer": "*", - "php": "^5.6 || ^7.0 || ^8.0", - "php-cs-fixer/diff": "^1.3", - "symfony/console": "^3.4.43 || ^4.1.6 || ^5.0", - "symfony/event-dispatcher": "^3.0 || ^4.0 || ^5.0", - "symfony/filesystem": "^3.0 || ^4.0 || ^5.0", - "symfony/finder": "^3.0 || ^4.0 || ^5.0", - "symfony/options-resolver": "^3.0 || ^4.0 || ^5.0", - "symfony/polyfill-php70": "^1.0", - "symfony/polyfill-php72": "^1.4", - "symfony/process": "^3.0 || ^4.0 || ^5.0", - "symfony/stopwatch": "^3.0 || ^4.0 || ^5.0" + "php": "^7.1.3 || ^8.0", + "php-cs-fixer/diff": "^2.0", + "symfony/console": "^4.4.20 || ^5.1.3", + "symfony/event-dispatcher": "^4.4.20 || ^5.0", + "symfony/filesystem": "^4.4.20 || ^5.0", + "symfony/finder": "^4.4.20 || ^5.0", + "symfony/options-resolver": "^4.4.20 || ^5.0", + "symfony/polyfill-php72": "^1.22", + "symfony/process": "^4.4.20 || ^5.0", + "symfony/stopwatch": "^4.4.20 || ^5.0" }, "require-dev": { - "justinrainbow/json-schema": "^5.0", + "justinrainbow/json-schema": "^5.2", "keradus/cli-executor": "^1.4", - "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.4.2", - "php-cs-fixer/accessible-object": "^1.0", + "mikey179/vfsstream": "^1.6.8", + "php-coveralls/php-coveralls": "^2.4.3", + "php-cs-fixer/accessible-object": "^1.1", "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", + "phpspec/prophecy": "^1.10.3", "phpspec/prophecy-phpunit": "^1.1 || ^2.0", - "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.13 || ^9.5", + "phpunit/phpunit": "^7.5.20 || ^8.5.14 || ^9.5", "phpunitgoodpractices/polyfill": "^1.5", "phpunitgoodpractices/traits": "^1.9.1", - "sanmai/phpunit-legacy-adapter": "^6.4 || ^8.2.1", - "symfony/phpunit-bridge": "^5.2.1", - "symfony/yaml": "^3.0 || ^4.0 || ^5.0" + "symfony/phpunit-bridge": "^5.2.4", + "symfony/yaml": "^4.4.20 || ^5.0" }, "suggest": { "ext-dom": "For handling output formats in XML", "ext-mbstring": "For handling non-UTF8 characters.", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.", "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." }, "bin": [ @@ -364,20 +361,7 @@ "autoload": { "psr-4": { "PhpCsFixer\\": "src/" - }, - "classmap": [ - "tests/Test/AbstractFixerTestCase.php", - "tests/Test/AbstractIntegrationCaseFactory.php", - "tests/Test/AbstractIntegrationTestCase.php", - "tests/Test/Assert/AssertTokensTrait.php", - "tests/Test/IntegrationCase.php", - "tests/Test/IntegrationCaseFactory.php", - "tests/Test/IntegrationCaseFactoryInterface.php", - "tests/Test/InternalIntegrationCaseFactory.php", - "tests/Test/IsIdenticalConstraint.php", - "tests/Test/TokensWithObservedTransformers.php", - "tests/TestCase.php" - ] + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -396,7 +380,7 @@ "description": "A tool to automatically fix PHP code style", "support": { "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v2.18.5" + "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.0.0-beta.2" }, "funding": [ { @@ -404,20 +388,20 @@ "type": "github" } ], - "time": "2021-04-06T18:37:33+00:00" + "time": "2021-04-06T18:43:43+00:00" }, { "name": "php-cs-fixer/diff", - "version": "v1.3.1", + "version": "v2.0.2", "source": { "type": "git", "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759" + "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/dbd31aeb251639ac0b9e7e29405c1441907f5759", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759", + "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/29dc0d507e838c4580d018bd8b5cb412474f7ec3", + "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3", "shasum": "" }, "require": { @@ -445,21 +429,18 @@ { "name": "Kore Nordmann", "email": "mail@kore-nordmann.de" - }, - { - "name": "SpacePossum" } ], - "description": "sebastian/diff v2 backport support for PHP5.6", + "description": "sebastian/diff v3 backport support for PHP 5.6+", "homepage": "https://github.com/PHP-CS-Fixer", "keywords": [ "diff" ], "support": { "issues": "https://github.com/PHP-CS-Fixer/diff/issues", - "source": "https://github.com/PHP-CS-Fixer/diff/tree/v1.3.1" + "source": "https://github.com/PHP-CS-Fixer/diff/tree/v2.0.2" }, - "time": "2020-10-14T08:39:05+00:00" + "time": "2020-10-14T08:32:19+00:00" }, { "name": "psr/container", @@ -1453,74 +1434,6 @@ ], "time": "2021-01-22T09:19:47+00:00" }, - { - "name": "symfony/polyfill-php70", - "version": "v1.20.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/5f03a781d984aae42cebd18e7912fa80f02ee644", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "metapackage", - "extra": { - "branch-alias": { - "dev-main": "1.20-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php70/tree/v1.20.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2020-10-23T14:02:19+00:00" - }, { "name": "symfony/polyfill-php72", "version": "v1.22.1", @@ -2048,7 +1961,9 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "friendsofphp/php-cs-fixer": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": [], From 711f87aad87dd983f824322589a7e53d36f31303 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 22 Mar 2023 22:57:58 -0400 Subject: [PATCH 04/18] Housekeeping - Update Docopt - Switch toin-house Picofeed branch for now - Update composer-bin - Update php-cs-fixer Daux has been left as-is for now even though we're using an old version --- RoboFile.php | 6 +- composer.json | 20 +- composer.lock | 38 +- robo | 6 +- robo.bat | 4 +- vendor-bin/csfixer/composer.json | 2 +- vendor-bin/csfixer/composer.lock | 759 ++++++++++++------------------- vendor-bin/daux/composer.lock | 108 ++--- vendor-bin/phpunit/composer.lock | 98 ++-- vendor-bin/robo/composer.lock | 173 ++++--- 10 files changed, 502 insertions(+), 712 deletions(-) diff --git a/RoboFile.php b/RoboFile.php index 4010e87..42a67de 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -82,7 +82,7 @@ class RoboFile extends \Robo\Tasks { /** Runs the coding standards fixer */ public function clean($opts = ['demo|d' => false]): Result { - $t = $this->taskExec(norm(BASE."vendor/bin/php-cs-fixer")); + $t = $this->taskExec(norm(BASE."vendor-bin/csfixer/vendor/bin/php-cs-fixer")); $t->arg("fix"); if ($opts['demo']) { $t->args("--dry-run", "--diff")->option("--diff-format", "udiff"); @@ -405,7 +405,7 @@ class RoboFile extends \Robo\Tasks { * The resultant files are suitable for offline viewing and inclusion into release builds */ public function manual(array $args): Result { - $execpath = escapeshellarg(norm(BASE."vendor/bin/daux")); + $execpath = escapeshellarg(norm(BASE."vendor-bin/daux/vendor/bin/daux")); $t = $this->collectionBuilder(); $t->taskExec($execpath)->arg("generate")->option("-d", BASE."manual")->args($args); $t->taskDeleteDir(BASE."manual/daux_libraries"); @@ -416,7 +416,7 @@ class RoboFile extends \Robo\Tasks { /** Serves a live view of the manual using the built-in Web server */ public function manualLive(array $args): Result { - $execpath = escapeshellarg(norm(BASE."vendor/bin/daux")); + $execpath = escapeshellarg(norm(BASE."vendor-bin/daux/vendor/bin/daux")); return $this->taskExec($execpath)->arg("serve")->args($args)->run(); } diff --git a/composer.json b/composer.json index e02d31e..295e051 100644 --- a/composer.json +++ b/composer.json @@ -24,9 +24,9 @@ "ext-hash": "*", "ext-filter": "*", "ext-dom": "*", - "nicolus/picofeed": "dev-bugfix", + "nicolus/picofeed": "dev-patch-3", "hosteurope/password-generator": "1.*", - "docopt/docopt": "dev-master", + "docopt/docopt": "1.*", "jkingweb/druuid": "3.*", "guzzlehttp/psr7": "1.*", "laminas/laminas-httphandlerrunner": "1.*" @@ -35,7 +35,7 @@ "bamarni/composer-bin-plugin": "*" }, "suggest": { - "ext-pcntl": "To respond to signals, particular to reload configuration via SIGHUP" + "ext-pcntl": "To respond to signals, particularly to reload configuration via SIGHUP" }, "config": { "platform": { @@ -45,9 +45,11 @@ "bamarni/composer-bin-plugin": true } }, - "scripts": { - "post-install-cmd": ["@composer bin all install"], - "post-update-cmd": ["@composer bin all update"] + "extra": { + "bamarni-bin": { + "bin-links": false, + "forward-command": true + } }, "autoload": { "psr-4": { @@ -63,11 +65,7 @@ "repositories": [ { "type": "vcs", - "url": "https://github.com/rhukster/picoFeed" - }, - { - "type": "vcs", - "url": "https://github.com/docopt/docopt.php" + "url": "https://github.com/JKingweb/picoFeed-1/" } ] } diff --git a/composer.lock b/composer.lock index e0efbbe..896eae5 100644 --- a/composer.lock +++ b/composer.lock @@ -4,35 +4,32 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2e8ad0d4821fdfc0d975e98f2e2c3efe", + "content-hash": "0020e84a746531294de6556d7b35fa7a", "packages": [ { "name": "docopt/docopt", - "version": "dev-master", + "version": "1.0.5", "source": { "type": "git", "url": "https://github.com/docopt/docopt.php.git", - "reference": "5ad491cb9fc072e8bb0497061a09b0efcf25cbcf" + "reference": "0e3db660cf2f2eb07a83253790b7d97cdb398826" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/docopt/docopt.php/zipball/5ad491cb9fc072e8bb0497061a09b0efcf25cbcf", - "reference": "5ad491cb9fc072e8bb0497061a09b0efcf25cbcf", + "url": "https://api.github.com/repos/docopt/docopt.php/zipball/0e3db660cf2f2eb07a83253790b7d97cdb398826", + "reference": "0e3db660cf2f2eb07a83253790b7d97cdb398826", "shasum": "" }, "require": { "php": ">=5.3.0" }, - "require-dev": { - "phpunit/phpunit": "4.1.*" - }, - "default-branch": true, "type": "library", "autoload": { "classmap": [ "src/docopt.php" ] }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -51,10 +48,10 @@ "docs" ], "support": { - "source": "https://github.com/docopt/docopt.php/tree/master", - "issues": "https://github.com/docopt/docopt.php/issues" + "issues": "https://github.com/docopt/docopt.php/issues", + "source": "https://github.com/docopt/docopt.php/tree/1.0.5" }, - "time": "2022-05-11T23:52:25+00:00" + "time": "2023-03-22T12:31:48+00:00" }, { "name": "guzzlehttp/guzzle", @@ -745,16 +742,16 @@ }, { "name": "nicolus/picofeed", - "version": "dev-bugfix", + "version": "dev-patch-3", "source": { "type": "git", - "url": "https://github.com/rhukster/picoFeed.git", - "reference": "b8e5e34ce7d0b97f1910b8c574aa72ff768a4078" + "url": "https://github.com/JKingweb/picoFeed-1.git", + "reference": "536911c180651fea79d6e1894a826fff6ab87a52" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rhukster/picoFeed/zipball/b8e5e34ce7d0b97f1910b8c574aa72ff768a4078", - "reference": "b8e5e34ce7d0b97f1910b8c574aa72ff768a4078", + "url": "https://api.github.com/repos/JKingweb/picoFeed-1/zipball/536911c180651fea79d6e1894a826fff6ab87a52", + "reference": "536911c180651fea79d6e1894a826fff6ab87a52", "shasum": "" }, "require": { @@ -803,9 +800,9 @@ "description": "RSS/Atom parsing library", "homepage": "https://github.com/nicolus/picoFeed", "support": { - "source": "https://github.com/rhukster/picoFeed/tree/bugfix" + "source": "https://github.com/JKingweb/picoFeed-1/tree/patch-3" }, - "time": "2022-09-23T17:42:18+00:00" + "time": "2023-03-23T01:54:27+00:00" }, { "name": "psr/http-client", @@ -1193,8 +1190,7 @@ "aliases": [], "minimum-stability": "stable", "stability-flags": { - "nicolus/picofeed": 20, - "docopt/docopt": 20 + "nicolus/picofeed": 20 }, "prefer-stable": false, "prefer-lowest": false, diff --git a/robo b/robo index e096c36..223ad9f 100755 --- a/robo +++ b/robo @@ -2,13 +2,13 @@ base=`dirname "$0"` roboCommand="$1" if [ $# -eq 0 ]; then - "$base/vendor/bin/robo" + "$base/vendor-bin/robo/vendor/bin/robo" else shift ulimit -n 2048 if [ "$1" = "clean" ]; then - "$base/vendor/bin/robo" "$roboCommand" "$@" + "$base/vendor-bin/robo/vendor/bin/robo" "$roboCommand" "$@" else - "$base/vendor/bin/robo" "$roboCommand" -- "$@" + "$base/vendor-bin/robo/vendor/bin/robo" "$roboCommand" -- "$@" fi fi diff --git a/robo.bat b/robo.bat index 297f954..33b8089 100644 --- a/robo.bat +++ b/robo.bat @@ -15,7 +15,7 @@ if "%~1" neq "" ( if defined args set args=%args:~1% if "%1"=="clean" ( - call "%base%vendor\bin\robo" "%roboCommand%" %args% + call "%base%vendor-bin\robo\vendor\bin\robo" "%roboCommand%" %args% ) else ( - call "%base%vendor\bin\robo" "%roboCommand%" -- %args% + call "%base%vendor-bin\robo\vendor\bin\robo" "%roboCommand%" -- %args% ) diff --git a/vendor-bin/csfixer/composer.json b/vendor-bin/csfixer/composer.json index c49c075..1673a46 100644 --- a/vendor-bin/csfixer/composer.json +++ b/vendor-bin/csfixer/composer.json @@ -1,5 +1,5 @@ { "require-dev": { - "friendsofphp/php-cs-fixer": "^2.8" + "friendsofphp/php-cs-fixer": "3.*" } } diff --git a/vendor-bin/csfixer/composer.lock b/vendor-bin/csfixer/composer.lock index 6c204c6..beb1171 100644 --- a/vendor-bin/csfixer/composer.lock +++ b/vendor-bin/csfixer/composer.lock @@ -4,35 +4,35 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "dec0bf343ea4650da0303df8dfb2ab40", + "content-hash": "20a356978f9b95677dc85e9b1484504e", "packages": [], "packages-dev": [ { "name": "composer/pcre", - "version": "1.0.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "67a32d7d6f9f560b726ab25a061b38ff3a80c560" + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/67a32d7d6f9f560b726ab25a061b38ff3a80c560", - "reference": "67a32d7d6f9f560b726ab25a061b38ff3a80c560", + "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" + "php": "^7.4 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.3", "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^4.2 || ^5" + "symfony/phpunit-bridge": "^5" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "1.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -60,7 +60,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/1.0.1" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -76,7 +76,7 @@ "type": "tidelift" } ], - "time": "2022-01-21T20:24:37+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", @@ -161,27 +161,27 @@ }, { "name": "composer/xdebug-handler", - "version": "2.0.5", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/composer/xdebug-handler.git", - "reference": "9e36aeed4616366d2b690bdce11f71e9178c579a" + "reference": "ced299686f41dce890debac69273b47ffe98a40c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/9e36aeed4616366d2b690bdce11f71e9178c579a", - "reference": "9e36aeed4616366d2b690bdce11f71e9178c579a", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c", + "reference": "ced299686f41dce890debac69273b47ffe98a40c", "shasum": "" }, "require": { - "composer/pcre": "^1", - "php": "^5.3.2 || ^7.0 || ^8.0", + "composer/pcre": "^1 || ^2 || ^3", + "php": "^7.2.5 || ^8.0", "psr/log": "^1 || ^2 || ^3" }, "require-dev": { "phpstan/phpstan": "^1.0", "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^4.2 || ^5.0 || ^6.0" + "symfony/phpunit-bridge": "^6.0" }, "type": "library", "autoload": { @@ -207,7 +207,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/2.0.5" + "source": "https://github.com/composer/xdebug-handler/tree/3.0.3" }, "funding": [ { @@ -223,34 +223,34 @@ "type": "tidelift" } ], - "time": "2022-02-24T20:20:32+00:00" + "time": "2022-02-25T21:32:43+00:00" }, { "name": "doctrine/annotations", - "version": "1.14.2", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b" + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/ad785217c1e9555a7d6c6c8c9f406395a5e2882b", - "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", "shasum": "" }, "require": { - "doctrine/lexer": "^1 || ^2", + "doctrine/lexer": "^2 || ^3", "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", + "php": "^7.2 || ^8.0", "psr/cache": "^1 || ^2 || ^3" }, "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "~1.4.10 || ^1.8.0", + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.0", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "symfony/cache": "^4.4 || ^5.4 || ^6", + "symfony/cache": "^5.4 || ^6", "vimeo/psalm": "^4.10" }, "suggest": { @@ -297,77 +297,33 @@ ], "support": { "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.14.2" + "source": "https://github.com/doctrine/annotations/tree/2.0.1" }, - "time": "2022-12-15T06:48:22+00:00" - }, - { - "name": "doctrine/deprecations", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/deprecations.git", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "shasum": "" - }, - "require": { - "php": "^7.1|^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9", - "phpunit/phpunit": "^7.5|^8.5|^9.5", - "psr/log": "^1|^2|^3" - }, - "suggest": { - "psr/log": "Allows logging deprecations via PSR-3 logger implementation" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", - "homepage": "https://www.doctrine-project.org/", - "support": { - "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" - }, - "time": "2022-05-02T15:47:09+00:00" + "time": "2023-02-02T22:02:53+00:00" }, { "name": "doctrine/lexer", - "version": "2.1.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124" + "reference": "84a527db05647743d50373e0ec53a152f2cde568" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", - "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", + "reference": "84a527db05647743d50373e0ec53a152f2cde568", "shasum": "" }, "require": { - "doctrine/deprecations": "^1.0", - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^9.5", "psalm/plugin-phpunit": "^0.18.3", - "vimeo/psalm": "^4.11 || ^5.0" + "vimeo/psalm": "^5.0" }, "type": "library", "autoload": { @@ -404,7 +360,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/2.1.0" + "source": "https://github.com/doctrine/lexer/tree/3.0.0" }, "funding": [ { @@ -420,89 +376,70 @@ "type": "tidelift" } ], - "time": "2022-12-14T08:49:07+00:00" + "time": "2022-12-15T16:57:16+00:00" }, { "name": "friendsofphp/php-cs-fixer", - "version": "v2.19.3", + "version": "v3.15.1", "source": { "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "75ac86f33fab4714ea5a39a396784d83ae3b5ed8" + "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", + "reference": "d48755372a113bddb99f749e34805d83f3acfe04" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/75ac86f33fab4714ea5a39a396784d83ae3b5ed8", - "reference": "75ac86f33fab4714ea5a39a396784d83ae3b5ed8", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/d48755372a113bddb99f749e34805d83f3acfe04", + "reference": "d48755372a113bddb99f749e34805d83f3acfe04", "shasum": "" }, "require": { - "composer/semver": "^1.4 || ^2.0 || ^3.0", - "composer/xdebug-handler": "^1.2 || ^2.0", - "doctrine/annotations": "^1.2", + "composer/semver": "^3.3", + "composer/xdebug-handler": "^3.0.3", + "doctrine/annotations": "^2", + "doctrine/lexer": "^2 || ^3", "ext-json": "*", "ext-tokenizer": "*", - "php": "^5.6 || ^7.0 || ^8.0", - "php-cs-fixer/diff": "^1.3", - "symfony/console": "^3.4.43 || ^4.1.6 || ^5.0", - "symfony/event-dispatcher": "^3.0 || ^4.0 || ^5.0", - "symfony/filesystem": "^3.0 || ^4.0 || ^5.0", - "symfony/finder": "^3.0 || ^4.0 || ^5.0", - "symfony/options-resolver": "^3.0 || ^4.0 || ^5.0", - "symfony/polyfill-php70": "^1.0", - "symfony/polyfill-php72": "^1.4", - "symfony/process": "^3.0 || ^4.0 || ^5.0", - "symfony/stopwatch": "^3.0 || ^4.0 || ^5.0" + "php": "^7.4 || ^8.0", + "sebastian/diff": "^4.0 || ^5.0", + "symfony/console": "^5.4 || ^6.0", + "symfony/event-dispatcher": "^5.4 || ^6.0", + "symfony/filesystem": "^5.4 || ^6.0", + "symfony/finder": "^5.4 || ^6.0", + "symfony/options-resolver": "^5.4 || ^6.0", + "symfony/polyfill-mbstring": "^1.27", + "symfony/polyfill-php80": "^1.27", + "symfony/polyfill-php81": "^1.27", + "symfony/process": "^5.4 || ^6.0", + "symfony/stopwatch": "^5.4 || ^6.0" }, "require-dev": { - "justinrainbow/json-schema": "^5.0", - "keradus/cli-executor": "^1.4", - "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.4.2", - "php-cs-fixer/accessible-object": "^1.0", + "justinrainbow/json-schema": "^5.2", + "keradus/cli-executor": "^2.0", + "mikey179/vfsstream": "^1.6.11", + "php-coveralls/php-coveralls": "^2.5.3", + "php-cs-fixer/accessible-object": "^1.1", "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy-phpunit": "^1.1 || ^2.0", - "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.13 || ^9.5", - "phpunitgoodpractices/polyfill": "^1.5", - "phpunitgoodpractices/traits": "^1.9.1", - "sanmai/phpunit-legacy-adapter": "^6.4 || ^8.2.1", - "symfony/phpunit-bridge": "^5.2.1", - "symfony/yaml": "^3.0 || ^4.0 || ^5.0" + "phpspec/prophecy": "^1.16", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "phpunitgoodpractices/polyfill": "^1.6", + "phpunitgoodpractices/traits": "^1.9.2", + "symfony/phpunit-bridge": "^6.2.3", + "symfony/yaml": "^5.4 || ^6.0" }, "suggest": { "ext-dom": "For handling output formats in XML", - "ext-mbstring": "For handling non-UTF8 characters.", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.", - "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." + "ext-mbstring": "For handling non-UTF8 characters." }, "bin": [ "php-cs-fixer" ], "type": "application", - "extra": { - "branch-alias": { - "dev-master": "2.19-dev" - } - }, "autoload": { "psr-4": { "PhpCsFixer\\": "src/" - }, - "classmap": [ - "tests/Test/AbstractFixerTestCase.php", - "tests/Test/AbstractIntegrationCaseFactory.php", - "tests/Test/AbstractIntegrationTestCase.php", - "tests/Test/Assert/AssertTokensTrait.php", - "tests/Test/IntegrationCase.php", - "tests/Test/IntegrationCaseFactory.php", - "tests/Test/IntegrationCaseFactoryInterface.php", - "tests/Test/InternalIntegrationCaseFactory.php", - "tests/Test/IsIdenticalConstraint.php", - "tests/Test/TokensWithObservedTransformers.php", - "tests/TestCase.php" - ] + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -519,9 +456,15 @@ } ], "description": "A tool to automatically fix PHP code style", + "keywords": [ + "Static code analysis", + "fixer", + "standards", + "static analysis" + ], "support": { - "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v2.19.3" + "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.15.1" }, "funding": [ { @@ -529,63 +472,7 @@ "type": "github" } ], - "time": "2021-11-15T17:17:55+00:00" - }, - { - "name": "php-cs-fixer/diff", - "version": "v1.3.1", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/dbd31aeb251639ac0b9e7e29405c1441907f5759", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.23 || ^6.4.3 || ^7.0", - "symfony/process": "^3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "SpacePossum" - } - ], - "description": "sebastian/diff v2 backport support for PHP5.6", - "homepage": "https://github.com/PHP-CS-Fixer", - "keywords": [ - "diff" - ], - "support": { - "issues": "https://github.com/PHP-CS-Fixer/diff/issues", - "source": "https://github.com/PHP-CS-Fixer/diff/tree/v1.3.1" - }, - "abandoned": true, - "time": "2020-10-14T08:39:05+00:00" + "time": "2023-03-13T23:26:30+00:00" }, { "name": "psr/cache", @@ -741,16 +628,16 @@ }, { "name": "psr/log", - "version": "2.0.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376" + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", - "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", "shasum": "" }, "require": { @@ -759,7 +646,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { @@ -785,52 +672,115 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/2.0.0" + "source": "https://github.com/php-fig/log/tree/3.0.0" }, - "time": "2021-07-14T16:41:46+00:00" + "time": "2021-07-14T16:46:02+00:00" + }, + { + "name": "sebastian/diff", + "version": "5.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "70dd1b20bc198da394ad542e988381b44e64e39f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/70dd1b20bc198da394ad542e988381b44e64e39f", + "reference": "70dd1b20bc198da394ad542e988381b44e64e39f", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "phpunit/phpunit": "^10.0", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "5.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/5.0.0" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T07:00:31+00:00" }, { "name": "symfony/console", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", + "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45", + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/string": "^5.4|^6.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/lock": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.0" }, "suggest": { "psr/log": "For using the console logger", @@ -870,7 +820,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.19" + "source": "https://github.com/symfony/console/tree/v6.2.7" }, "funding": [ { @@ -886,20 +836,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-25T17:00:03+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", "shasum": "" }, "require": { @@ -937,7 +887,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" }, "funding": [ { @@ -953,44 +903,42 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:25:55+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "abf49cc084c087d94b4cb939c3f3672971784e0c" + "reference": "404b307de426c1c488e5afad64403e5f145e82a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/abf49cc084c087d94b4cb939c3f3672971784e0c", - "reference": "abf49cc084c087d94b4cb939c3f3672971784e0c", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/404b307de426c1c488e5afad64403e5f145e82a5", + "reference": "404b307de426c1c488e5afad64403e5f145e82a5", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher-contracts": "^2|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2|^3" }, "conflict": { - "symfony/dependency-injection": "<4.4" + "symfony/dependency-injection": "<5.4" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" + "symfony/event-dispatcher-implementation": "2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/error-handler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^4.4|^5.0|^6.0" + "symfony/stopwatch": "^5.4|^6.0" }, "suggest": { "symfony/dependency-injection": "", @@ -1022,7 +970,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.19" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.7" }, "funding": [ { @@ -1038,20 +986,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0782b0b52a737a05b4383d0df35a474303cabdae" + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae", - "reference": "0782b0b52a737a05b4383d0df35a474303cabdae", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", "shasum": "" }, "require": { @@ -1101,7 +1049,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" }, "funding": [ { @@ -1117,27 +1065,26 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8" + "reference": "82b6c62b959f642d000456f08c6d219d749215b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/648bfaca6a494f3e22378123bcee2894045dc9d8", - "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3", + "reference": "82b6c62b959f642d000456f08c6d219d749215b3", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-mbstring": "~1.8" }, "type": "library", "autoload": { @@ -1165,7 +1112,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.19" + "source": "https://github.com/symfony/filesystem/tree/v6.2.7" }, "funding": [ { @@ -1181,26 +1128,27 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/finder", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f" + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/6071aebf810ad13fe8200c224f36103abb37cf1f", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f", + "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -1228,7 +1176,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.19" + "source": "https://github.com/symfony/finder/tree/v6.2.7" }, "funding": [ { @@ -1244,27 +1192,25 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "b03c99236445492f20c61666e8f7e5d388b078e5" + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/b03c99236445492f20c61666e8f7e5d388b078e5", - "reference": "b03c99236445492f20c61666e8f7e5d388b078e5", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/aa0e85b53bbb2b4951960efd61d295907eacd629", + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3" }, "type": "library", "autoload": { @@ -1297,7 +1243,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.19" + "source": "https://github.com/symfony/options-resolver/tree/v6.2.7" }, "funding": [ { @@ -1313,7 +1259,7 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1646,161 +1592,17 @@ "time": "2022-11-03T14:55:06+00:00" }, { - "name": "symfony/polyfill-php70", - "version": "v1.20.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/5f03a781d984aae42cebd18e7912fa80f02ee644", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "metapackage", - "extra": { - "branch-alias": { - "dev-main": "1.20-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php70/tree/v1.20.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2020-10-23T14:02:19+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-php73", + "name": "symfony/polyfill-php80", "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -1821,7 +1623,7 @@ "bootstrap.php" ], "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" + "Symfony\\Polyfill\\Php80\\": "" }, "classmap": [ "Resources/stubs" @@ -1832,6 +1634,10 @@ "MIT" ], "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, { "name": "Nicolas Grekas", "email": "p@tchwork.com" @@ -1841,7 +1647,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -1850,7 +1656,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -1869,17 +1675,17 @@ "time": "2022-11-03T14:55:06+00:00" }, { - "name": "symfony/polyfill-php80", + "name": "symfony/polyfill-php81", "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { @@ -1900,7 +1706,7 @@ "bootstrap.php" ], "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" + "Symfony\\Polyfill\\Php81\\": "" }, "classmap": [ "Resources/stubs" @@ -1911,10 +1717,6 @@ "MIT" ], "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, { "name": "Nicolas Grekas", "email": "p@tchwork.com" @@ -1924,7 +1726,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -1933,7 +1735,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -1953,21 +1755,20 @@ }, { "name": "symfony/process", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1" + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/c5ba874c9b636dbccf761e22ce750e88ec3f55e1", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1", + "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902", + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -1995,7 +1796,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.19" + "source": "https://github.com/symfony/process/tree/v6.2.7" }, "funding": [ { @@ -2011,20 +1812,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" + "reference": "a8c9cedf55f314f3a186041d19537303766df09a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", + "reference": "a8c9cedf55f314f3a186041d19537303766df09a", "shasum": "" }, "require": { @@ -2080,7 +1881,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" }, "funding": [ { @@ -2096,24 +1897,24 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec" + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/bd2b066090fd6a67039371098fa25a84cb2679ec", - "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/service-contracts": "^1|^2|^3" }, "type": "library", @@ -2142,7 +1943,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.19" + "source": "https://github.com/symfony/stopwatch/tree/v6.2.7" }, "funding": [ { @@ -2158,20 +1959,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/string", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0" + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", + "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", "shasum": "" }, "require": { @@ -2228,7 +2029,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.5" + "source": "https://github.com/symfony/string/tree/v6.2.7" }, "funding": [ { @@ -2244,7 +2045,7 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" } ], "aliases": [], diff --git a/vendor-bin/daux/composer.lock b/vendor-bin/daux/composer.lock index 374bee0..99857ca 100644 --- a/vendor-bin/daux/composer.lock +++ b/vendor-bin/daux/composer.lock @@ -295,16 +295,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.3", + "version": "2.4.4", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "67c26b443f348a51926030c83481b85718457d3d" + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", - "reference": "67c26b443f348a51926030c83481b85718457d3d", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", "shasum": "" }, "require": { @@ -394,7 +394,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.3" + "source": "https://github.com/guzzle/psr7/tree/2.4.4" }, "funding": [ { @@ -410,7 +410,7 @@ "type": "tidelift" } ], - "time": "2022-10-26T14:07:24+00:00" + "time": "2023-03-09T13:19:02+00:00" }, { "name": "league/commonmark", @@ -906,16 +906,16 @@ }, { "name": "symfony/console", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" + "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", + "url": "https://api.github.com/repos/symfony/console/zipball/c77433ddc6cdc689caf48065d9ea22ca0853fbd9", + "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9", "shasum": "" }, "require": { @@ -985,7 +985,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.19" + "source": "https://github.com/symfony/console/tree/v5.4.21" }, "funding": [ { @@ -1001,20 +1001,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-25T16:59:41+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", "shasum": "" }, "require": { @@ -1052,7 +1052,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" }, "funding": [ { @@ -1068,20 +1068,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:25:55+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "70fd0eb8a1570ba119d5e496c8ee79bf9f0b51b0" + "reference": "3bb6ee5582366c4176d5ce596b380117c8200bbf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/70fd0eb8a1570ba119d5e496c8ee79bf9f0b51b0", - "reference": "70fd0eb8a1570ba119d5e496c8ee79bf9f0b51b0", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3bb6ee5582366c4176d5ce596b380117c8200bbf", + "reference": "3bb6ee5582366c4176d5ce596b380117c8200bbf", "shasum": "" }, "require": { @@ -1128,7 +1128,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.19" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.21" }, "funding": [ { @@ -1144,20 +1144,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-17T21:35:35+00:00" }, { "name": "symfony/mime", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "a858429a9c704edc53fe057228cf9ca282ba48eb" + "reference": "ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/a858429a9c704edc53fe057228cf9ca282ba48eb", - "reference": "a858429a9c704edc53fe057228cf9ca282ba48eb", + "url": "https://api.github.com/repos/symfony/mime/zipball/ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd", + "reference": "ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd", "shasum": "" }, "require": { @@ -1212,7 +1212,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.19" + "source": "https://github.com/symfony/mime/tree/v5.4.21" }, "funding": [ { @@ -1228,7 +1228,7 @@ "type": "tidelift" } ], - "time": "2023-01-09T05:43:46+00:00" + "time": "2023-02-21T19:46:44+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1974,16 +1974,16 @@ }, { "name": "symfony/process", - "version": "v5.4.19", + "version": "v5.4.21", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1" + "reference": "d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/c5ba874c9b636dbccf761e22ce750e88ec3f55e1", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1", + "url": "https://api.github.com/repos/symfony/process/zipball/d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd", + "reference": "d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd", "shasum": "" }, "require": { @@ -2016,7 +2016,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.19" + "source": "https://github.com/symfony/process/tree/v5.4.21" }, "funding": [ { @@ -2032,20 +2032,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-21T19:46:44+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" + "reference": "a8c9cedf55f314f3a186041d19537303766df09a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", + "reference": "a8c9cedf55f314f3a186041d19537303766df09a", "shasum": "" }, "require": { @@ -2101,7 +2101,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" }, "funding": [ { @@ -2117,20 +2117,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/string", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0" + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", + "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", "shasum": "" }, "require": { @@ -2187,7 +2187,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.5" + "source": "https://github.com/symfony/string/tree/v6.2.7" }, "funding": [ { @@ -2203,20 +2203,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/yaml", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19" + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", - "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", + "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", "shasum": "" }, "require": { @@ -2261,7 +2261,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.2.5" + "source": "https://github.com/symfony/yaml/tree/v6.2.7" }, "funding": [ { @@ -2277,7 +2277,7 @@ "type": "tidelift" } ], - "time": "2023-01-10T18:53:53+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { "name": "webuni/front-matter", diff --git a/vendor-bin/phpunit/composer.lock b/vendor-bin/phpunit/composer.lock index 7be719d..cd2bd9c 100644 --- a/vendor-bin/phpunit/composer.lock +++ b/vendor-bin/phpunit/composer.lock @@ -389,16 +389,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -436,7 +436,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -444,20 +444,20 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.3", + "version": "v4.15.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "shasum": "" }, "require": { @@ -498,9 +498,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" }, - "time": "2023-01-16T22:05:37+00:00" + "time": "2023-03-05T19:49:14+00:00" }, { "name": "phar-io/manifest", @@ -615,23 +615,23 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.24", + "version": "9.2.26", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed" + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -646,8 +646,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -680,7 +680,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26" }, "funding": [ { @@ -688,7 +688,7 @@ "type": "github" } ], - "time": "2023-01-26T08:26:55+00:00" + "time": "2023-03-06T12:58:08+00:00" }, { "name": "phpunit/php-file-iterator", @@ -933,16 +933,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.28", + "version": "9.6.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "954ca3113a03bf780d22f07bf055d883ee04b65e" + "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/954ca3113a03bf780d22f07bf055d883ee04b65e", - "reference": "954ca3113a03bf780d22f07bf055d883ee04b65e", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/86e761949019ae83f49240b2f2123fb5ab3b2fc5", + "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5", "shasum": "" }, "require": { @@ -975,8 +975,8 @@ "sebastian/version": "^3.0.2" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "bin": [ "phpunit" @@ -984,7 +984,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -1015,7 +1015,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.28" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.5" }, "funding": [ { @@ -1031,7 +1031,7 @@ "type": "tidelift" } ], - "time": "2023-01-14T12:32:24+00:00" + "time": "2023-03-09T06:34:10+00:00" }, { "name": "sebastian/cli-parser", @@ -1399,16 +1399,16 @@ }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -1450,7 +1450,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -1458,7 +1458,7 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", @@ -1772,16 +1772,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", "shasum": "" }, "require": { @@ -1820,10 +1820,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" }, "funding": [ { @@ -1831,7 +1831,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -1890,16 +1890,16 @@ }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -1934,7 +1934,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -1942,7 +1942,7 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", diff --git a/vendor-bin/robo/composer.lock b/vendor-bin/robo/composer.lock index 9d0a1c1..79499e8 100644 --- a/vendor-bin/robo/composer.lock +++ b/vendor-bin/robo/composer.lock @@ -90,16 +90,16 @@ }, { "name": "consolidation/annotated-command", - "version": "4.7.1", + "version": "4.8.2", "source": { "type": "git", "url": "https://github.com/consolidation/annotated-command.git", - "reference": "fd263e3e9341d29758025b1a9b2878e3247525be" + "reference": "7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/fd263e3e9341d29758025b1a9b2878e3247525be", - "reference": "fd263e3e9341d29758025b1a9b2878e3247525be", + "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3", + "reference": "7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3", "shasum": "" }, "require": { @@ -140,9 +140,9 @@ "description": "Initialize Symfony Console commands from annotated command class methods.", "support": { "issues": "https://github.com/consolidation/annotated-command/issues", - "source": "https://github.com/consolidation/annotated-command/tree/4.7.1" + "source": "https://github.com/consolidation/annotated-command/tree/4.8.2" }, - "time": "2022-12-06T22:57:25+00:00" + "time": "2023-03-11T19:32:28+00:00" }, { "name": "consolidation/config", @@ -258,41 +258,36 @@ }, { "name": "consolidation/output-formatters", - "version": "4.2.3", + "version": "4.2.4", "source": { "type": "git", "url": "https://github.com/consolidation/output-formatters.git", - "reference": "cbb50cc86775f14972003f797b61e232788bee1f" + "reference": "b377db7e9435c50c4e019c26ec164b547e754ca0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/cbb50cc86775f14972003f797b61e232788bee1f", - "reference": "cbb50cc86775f14972003f797b61e232788bee1f", + "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/b377db7e9435c50c4e019c26ec164b547e754ca0", + "reference": "b377db7e9435c50c4e019c26ec164b547e754ca0", "shasum": "" }, "require": { "dflydev/dot-access-data": "^1.1.0 || ^2 || ^3", "php": ">=7.1.3", - "symfony/console": "^4|^5|^6", - "symfony/finder": "^4|^5|^6" + "symfony/console": "^4 || ^5 || ^6", + "symfony/finder": "^4 || ^5 || ^6" }, "require-dev": { "php-coveralls/php-coveralls": "^2.4.2", - "phpunit/phpunit": ">=7", + "phpunit/phpunit": "^7 || ^8 || ^9", "squizlabs/php_codesniffer": "^3", - "symfony/var-dumper": "^4|^5|^6", - "symfony/yaml": "^4|^5|^6", - "yoast/phpunit-polyfills": "^0.2.0" + "symfony/var-dumper": "^4 || ^5 || ^6", + "symfony/yaml": "^4 || ^5 || ^6", + "yoast/phpunit-polyfills": "^1" }, "suggest": { "symfony/var-dumper": "For using the var_dump formatter" }, "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.x-dev" - } - }, "autoload": { "psr-4": { "Consolidation\\OutputFormatters\\": "src" @@ -311,9 +306,9 @@ "description": "Format text by applying transformations provided by plug-in formatters.", "support": { "issues": "https://github.com/consolidation/output-formatters/issues", - "source": "https://github.com/consolidation/output-formatters/tree/4.2.3" + "source": "https://github.com/consolidation/output-formatters/tree/4.2.4" }, - "time": "2022-10-17T04:01:40+00:00" + "time": "2023-02-24T03:39:10+00:00" }, { "name": "consolidation/robo", @@ -416,16 +411,16 @@ }, { "name": "consolidation/self-update", - "version": "2.0.5", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/consolidation/self-update.git", - "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3" + "reference": "714b09fdf0513f83292874bb12de0566066040c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/self-update/zipball/8a64bdd8daf5faa8e85f56534dd99caf928164b3", - "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3", + "url": "https://api.github.com/repos/consolidation/self-update/zipball/714b09fdf0513f83292874bb12de0566066040c2", + "reference": "714b09fdf0513f83292874bb12de0566066040c2", "shasum": "" }, "require": { @@ -465,9 +460,9 @@ "description": "Provides a self:update command for Symfony Console applications.", "support": { "issues": "https://github.com/consolidation/self-update/issues", - "source": "https://github.com/consolidation/self-update/tree/2.0.5" + "source": "https://github.com/consolidation/self-update/tree/2.1.0" }, - "time": "2022-02-09T22:44:24+00:00" + "time": "2023-02-21T19:33:55+00:00" }, { "name": "dflydev/dot-access-data", @@ -1071,16 +1066,16 @@ }, { "name": "symfony/console", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "3e294254f2191762c1d137aed4b94e966965e985" + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/3e294254f2191762c1d137aed4b94e966965e985", - "reference": "3e294254f2191762c1d137aed4b94e966965e985", + "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45", + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45", "shasum": "" }, "require": { @@ -1147,7 +1142,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.2.5" + "source": "https://github.com/symfony/console/tree/v6.2.7" }, "funding": [ { @@ -1163,20 +1158,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-25T17:00:03+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", "shasum": "" }, "require": { @@ -1214,7 +1209,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" }, "funding": [ { @@ -1230,20 +1225,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:25:55+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68" + "reference": "404b307de426c1c488e5afad64403e5f145e82a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68", - "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/404b307de426c1c488e5afad64403e5f145e82a5", + "reference": "404b307de426c1c488e5afad64403e5f145e82a5", "shasum": "" }, "require": { @@ -1297,7 +1292,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.5" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.7" }, "funding": [ { @@ -1313,20 +1308,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0782b0b52a737a05b4383d0df35a474303cabdae" + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae", - "reference": "0782b0b52a737a05b4383d0df35a474303cabdae", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", "shasum": "" }, "require": { @@ -1376,7 +1371,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" }, "funding": [ { @@ -1392,20 +1387,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/filesystem", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593" + "reference": "82b6c62b959f642d000456f08c6d219d749215b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/e59e8a4006afd7f5654786a83b4fcb8da98f4593", - "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3", + "reference": "82b6c62b959f642d000456f08c6d219d749215b3", "shasum": "" }, "require": { @@ -1439,7 +1434,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.2.5" + "source": "https://github.com/symfony/filesystem/tree/v6.2.7" }, "funding": [ { @@ -1455,20 +1450,20 @@ "type": "tidelift" } ], - "time": "2023-01-20T17:45:48+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/finder", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c" + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/c90dc446976a612e3312a97a6ec0069ab0c2099c", - "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c", + "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", "shasum": "" }, "require": { @@ -1503,7 +1498,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.2.5" + "source": "https://github.com/symfony/finder/tree/v6.2.7" }, "funding": [ { @@ -1519,7 +1514,7 @@ "type": "tidelift" } ], - "time": "2023-01-20T17:45:48+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1853,16 +1848,16 @@ }, { "name": "symfony/process", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7" + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/9ead139f63dfa38c4e4a9049cc64a8b2748c83b7", - "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7", + "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902", + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902", "shasum": "" }, "require": { @@ -1894,7 +1889,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.2.5" + "source": "https://github.com/symfony/process/tree/v6.2.7" }, "funding": [ { @@ -1910,20 +1905,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" + "reference": "a8c9cedf55f314f3a186041d19537303766df09a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", + "reference": "a8c9cedf55f314f3a186041d19537303766df09a", "shasum": "" }, "require": { @@ -1979,7 +1974,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" }, "funding": [ { @@ -1995,20 +1990,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/string", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0" + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", + "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", "shasum": "" }, "require": { @@ -2065,7 +2060,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.5" + "source": "https://github.com/symfony/string/tree/v6.2.7" }, "funding": [ { @@ -2081,20 +2076,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/yaml", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19" + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", - "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", + "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", "shasum": "" }, "require": { @@ -2139,7 +2134,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.2.5" + "source": "https://github.com/symfony/yaml/tree/v6.2.7" }, "funding": [ { @@ -2155,7 +2150,7 @@ "type": "tidelift" } ], - "time": "2023-01-10T18:53:53+00:00" + "time": "2023-02-16T09:57:23+00:00" } ], "aliases": [], From 3c83fc91392bb0e4311f4683b50074ec0ff3df98 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 22 Mar 2023 23:14:19 -0400 Subject: [PATCH 05/18] Update php-cs-fixer rules --- .php-cs-fixer.dist.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index b545600..070f4f8 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -53,7 +53,7 @@ $rules = [ 'pow_to_exponentiation' => true, 'set_type_to_cast' => true, 'standardize_not_equals' => true, - 'trailing_comma_in_multiline_array' => true, + 'trailing_comma_in_multiline' => ['elements' => ["arrays"]], 'unary_operator_spaces' => true, 'yoda_style' => false, // PSR standard to apply From eb371b75fee57bd29698080c0f90e23331642fce Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 22 Mar 2023 23:45:56 -0400 Subject: [PATCH 06/18] Fix documentation errors --- README.md | 2 -- UPGRADING | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index d9befc7..ec1fc9f 100644 --- a/README.md +++ b/README.md @@ -122,5 +122,3 @@ Producing release packages is done by running `./robo package`. This performs th - Deletes numerous unneeded files - Exports the default configuration of The Arsse to a file - Compresses the remaining files into a tarball -- Produces a binary package for Arch Linux, if possible -- Produces source and binary packages for Debian using [pbuilder](https://pbuilder-team.pages.debian.net/pbuilder/), if possible diff --git a/UPGRADING b/UPGRADING index ab36888..531e341 100644 --- a/UPGRADING +++ b/UPGRADING @@ -11,7 +11,7 @@ usually prudent: `composer install -o --no-dev` -Upgrading from 0.10.2 to 0.10.3 +Upgrading from 0.10.4 to 0.10.? ============================= - PHP 7.3 is now required From be3adf7026fb373f56d637fc78ab0ef7a0da7453 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Thu, 23 Mar 2023 11:31:33 -0400 Subject: [PATCH 07/18] Document RoboFile better --- RoboFile.php | 78 ++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 57 insertions(+), 21 deletions(-) diff --git a/RoboFile.php b/RoboFile.php index 7a85261..c3b586f 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -55,8 +55,8 @@ class RoboFile extends \Robo\Tasks { * tests/coverage/. Additional reports may be produced by passing * arguments to this task as one would to PHPUnit. * - * Robo first tries to use pcov and will fall back first to xdebug then - * phpdbg. Neither pcov nor xdebug need to be enabled to be used; they + * Robo first tries to use pcov and will fall back to xdebug. + * Neither pcov nor xdebug need to be enabled to be used; they * only need to be present in the extension load path to be used. */ public function coverage(array $args): Result { @@ -80,7 +80,7 @@ class RoboFile extends \Robo\Tasks { return $this->runTests($exec, "typical", array_merge(["--coverage-html", BASE_TEST."coverage"], $args)); } - /** Runs the coding standards fixer */ + /** Runs the coding-style fixer */ public function clean($opts = ['demo|d' => false]): Result { $t = $this->taskExec(norm(BASE."vendor-bin/csfixer/vendor/bin/php-cs-fixer")); $t->arg("fix"); @@ -90,9 +90,10 @@ class RoboFile extends \Robo\Tasks { return $t->run(); } + /** Finds the first suitable means of computing code coverage, either pcov or xdebug. */ protected function findCoverageEngine(): string { $dir = rtrim(ini_get("extension_dir"), "/").\DIRECTORY_SEPARATOR; - $ext = IS_WIN ? "dll" : (IS_MAC ? "dylib" : "so"); + $ext = IS_WIN ? "dll" : "so"; $php = escapeshellarg(\PHP_BINARY); $code = escapeshellarg(BASE."lib"); if (extension_loaded("pcov")) { @@ -104,25 +105,27 @@ class RoboFile extends \Robo\Tasks { } elseif (file_exists($dir."xdebug.$ext")) { return "$php -d zend_extension=xdebug.$ext -d xdebug.mode=coverage"; } else { - if (IS_WIN) { - $dbg = dirname(\PHP_BINARY)."\\phpdbg.exe"; - $dbg = file_exists($dbg) ? $dbg : ""; - } else { - $dbg = trim(`which phpdbg 2>/dev/null`); - } - if ($dbg) { - return escapeshellarg($dbg)." -qrr"; - } else { - return $php; - } + return $php; } } + /** Returns the necessary shell arguments to print error output or all output to the bitbucket + * + * @param bool $all Whether all output (true) or only error output (false) should be suppressed + */ protected function blackhole(bool $all = false): string { $hole = IS_WIN ? "nul" : "/dev/null"; return $all ? ">$hole 2>&1" : "2>$hole"; } + /** Executes PHPUnit, used by the test and coverage tasks. + * + * This also executes the built-in PHP Web server, which is required to fetch some newsfeeds during tests + * + * @param string $executor The path to the PHP binary to execute with any required extra arguments. Normally this is either "php" or the result of findCoverageEngine() + * @param string $set The set of tests to run, either "typical" (excludes redundant tests), "quick" (excludes redundant and slow tests), "coverage" (excludes tests not needed for coverage), or "full" (all tests) + * @param array $args Extra arguments passed by Robo from the command line + */ protected function runTests(string $executor, string $set, array $args): Result { switch ($set) { case "typical": @@ -146,6 +149,12 @@ class RoboFile extends \Robo\Tasks { return $this->taskExec($executor)->option("-d", "zend.assertions=1")->arg($execpath)->option("-c", $confpath)->args(array_merge($set, $args))->run(); } + /** Returns a Git version string for a given Git tree-ish ID + * + * Returns an array containing the tree-ish string and the version string. + * + * @param string|null $commit The tree-ish ID. If not supplied the user will be prompted + */ protected function commitVersion(?string $commit): array { $target = $commit ?? $this->askDefault("Reference commit:", "HEAD"); $base = escapeshellarg(BASE); @@ -158,13 +167,11 @@ class RoboFile extends \Robo\Tasks { return [$target, $version]; } + /** Checks whether all the supplied terminal commands are available in path */ protected function toolExists(string ...$binary): bool { $blackhole = $this->blackhole(IS_WIN); foreach ($binary as $bin) { - if ( - (IS_WIN && (!exec(escapeshellarg($bin)." --help $blackhole", $junk, $status) || $status)) - || (!IS_WIN && (!exec("which ".escapeshellarg($bin)." $blackhole", $junk, $status) || $status)) - ) { + if (!exec(escapeshellarg($bin)." --help $blackhole", $junk, $status) || $status) { return false; } } @@ -400,7 +407,7 @@ class RoboFile extends \Robo\Tasks { return $t->run(); } - /** Generates static manual pages in the "manual" directory + /** Generates static HTML manual pages in the "manual" directory * * The resultant files are suitable for offline viewing and inclusion into release builds */ @@ -470,6 +477,15 @@ class RoboFile extends \Robo\Tasks { return $t->run(); } + /** Parses the contents of the CHANGELOG file into an array structure + * + * This is done line-by-line and tends to be quite strict. + * The parsed output can be used to generate changelogs in other formats, + * such as a Debian changelog or RPM changelog. + * + * @param string $text The text of the CHANGELOG file + * @param string $targetVersion The x.y.z version number of the latest release. This is used to check that version numbers and dates have been updated when preparing a release + */ protected function changelogParse(string $text, string $targetVersion): array { $lines = preg_split('/\r?\n/', $text); $version = ""; @@ -546,7 +562,18 @@ class RoboFile extends \Robo\Tasks { return $out; } + /** Produce a Debian changelog from a parsed CHANGELOG file + * + * The Debian changelog format is extremely specific with certain tokens + * having special meaning and leading whitespace also being significant. + * Modifying this function should be done with extreme care. + * + * @param array $log The parsed chaneglog, output by changelogParse() + * @param string $targetVersion The second output of commitVersion() + */ protected function changelogDebian(array $log, string $targetVersion): string { + $authorName = "J. King"; + $authorMail = "jking@jkingweb.ca"; $latest = $log[0]['version']; $baseVersion = preg_replace('/^(\d+(?:\.\d+)*).*/', "$1", $targetVersion); if ($baseVersion !== $targetVersion && version_compare($latest, $baseVersion, ">")) { @@ -582,11 +609,20 @@ class RoboFile extends \Robo\Tasks { $out .= " * ".trim(preg_replace("/^/m", " ", $item))."\n"; } } - $out .= "\n -- J. King ".\DateTimeImmutable::createFromFormat("Y-m-d", $entry['date'], new \DateTimeZone("UTC"))->format("D, d M Y")." 00:00:00 +0000\n\n"; + $out .= "\n -- $authorName <$authorMail> ".\DateTimeImmutable::createFromFormat("Y-m-d", $entry['date'], new \DateTimeZone("UTC"))->format("D, d M Y")." 00:00:00 +0000\n\n"; } return $out; } + /** Produces a Debian "source control" file from various bits of data + * + * As with a Debian changelog, the output is of a very exacting format, + * and this function should be modified with care. + * + * @param string $dir The path to Debian-specific files, with trailing slash + * @param string $version The Debian version string, in the format x.y.z-a + * @param array $tarballs An array of paths to the "orig" and "debian" tarball files + */ protected function generateDebianSourceControl(string $dir, string $version, array $tarballs): string { // read in control file if (!$control = @file_get_contents($dir."control")) { From 59a93290329f5f656b82cb44475805aece627037 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Fri, 24 Mar 2023 10:28:20 -0400 Subject: [PATCH 08/18] Upgrade dependencies where possible with PHP 7.3 --- composer.json | 6 +- composer.lock | 176 +++++++++++++++---------------- tests/phpunit.dist.xml | 16 +-- vendor-bin/csfixer/composer.lock | 17 ++- vendor-bin/phpstan/composer.json | 5 - vendor-bin/phpstan/composer.lock | 79 -------------- vendor-bin/phpunit/composer.json | 2 +- vendor-bin/phpunit/composer.lock | 2 +- 8 files changed, 108 insertions(+), 195 deletions(-) delete mode 100644 vendor-bin/phpstan/composer.json delete mode 100644 vendor-bin/phpstan/composer.lock diff --git a/composer.json b/composer.json index 295e051..5a6a8ad 100644 --- a/composer.json +++ b/composer.json @@ -18,7 +18,7 @@ ], "require": { - "php": "^7.1 || ^8.0", + "php": ">=7.3", "ext-intl": "*", "ext-json": "*", "ext-hash": "*", @@ -28,8 +28,8 @@ "hosteurope/password-generator": "1.*", "docopt/docopt": "1.*", "jkingweb/druuid": "3.*", - "guzzlehttp/psr7": "1.*", - "laminas/laminas-httphandlerrunner": "1.*" + "guzzlehttp/psr7": "2.*", + "laminas/laminas-httphandlerrunner": "2.*" }, "require-dev": { "bamarni/composer-bin-plugin": "*" diff --git a/composer.lock b/composer.lock index 896eae5..c898fea 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "0020e84a746531294de6556d7b35fa7a", + "content-hash": "8d22dd66c6cde0b1ed4ca0009293bf88", "packages": [ { "name": "docopt/docopt", @@ -267,43 +267,47 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.9.0", + "version": "2.4.4", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318" + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", - "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", "shasum": "" }, "require": { - "php": ">=5.4.0", - "psr/http-message": "~1.0", - "ralouphie/getallheaders": "^2.0.5 || ^3.0.0" + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "ralouphie/getallheaders": "^3.0" }, "provide": { + "psr/http-factory-implementation": "1.0", "psr/http-message-implementation": "1.0" }, "require-dev": { - "ext-zlib": "*", - "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10" + "bamarni/composer-bin-plugin": "^1.8.1", + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "2.4-dev" } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Psr7\\": "src/" } @@ -342,6 +346,11 @@ "name": "Tobias Schultze", "email": "webmaster@tubo-world.de", "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" } ], "description": "PSR-7 message implementation that also provides common utility methods", @@ -357,7 +366,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/1.9.0" + "source": "https://github.com/guzzle/psr7/tree/2.4.4" }, "funding": [ { @@ -373,7 +382,7 @@ "type": "tidelift" } ], - "time": "2022-06-20T21:43:03+00:00" + "time": "2023-03-09T13:19:02+00:00" }, { "name": "hosteurope/password-generator", @@ -549,30 +558,26 @@ }, { "name": "laminas/laminas-httphandlerrunner", - "version": "1.5.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-httphandlerrunner.git", - "reference": "5f94e55d93f756e8ad07b9049aeb3d6d84582d0e" + "reference": "4d337cde83e6b901a4443b0ab5c3b97cbaa46413" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-httphandlerrunner/zipball/5f94e55d93f756e8ad07b9049aeb3d6d84582d0e", - "reference": "5f94e55d93f756e8ad07b9049aeb3d6d84582d0e", + "url": "https://api.github.com/repos/laminas/laminas-httphandlerrunner/zipball/4d337cde83e6b901a4443b0ab5c3b97cbaa46413", + "reference": "4d337cde83e6b901a4443b0ab5c3b97cbaa46413", "shasum": "" }, "require": { - "laminas/laminas-zendframework-bridge": "^1.0", "php": "^7.3 || ~8.0.0 || ~8.1.0", "psr/http-message": "^1.0", "psr/http-message-implementation": "^1.0", "psr/http-server-handler": "^1.0" }, - "replace": { - "zendframework/zend-httphandlerrunner": "^1.1.0" - }, "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", + "laminas/laminas-coding-standard": "~2.3.0", "laminas/laminas-diactoros": "^2.8.0", "phpunit/phpunit": "^9.5.9", "psalm/plugin-phpunit": "^0.16.1", @@ -616,7 +621,7 @@ "type": "community_bridge" } ], - "time": "2021-09-22T09:17:54+00:00" + "time": "2021-09-22T09:27:36+00:00" }, { "name": "laminas/laminas-xml", @@ -678,68 +683,6 @@ ], "time": "2021-11-30T02:16:35+00:00" }, - { - "name": "laminas/laminas-zendframework-bridge", - "version": "1.4.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "88bf037259869891afce6504cacc4f8a07b24d0f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/88bf037259869891afce6504cacc4f8a07b24d0f", - "reference": "88bf037259869891afce6504cacc4f8a07b24d0f", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0 || ~8.1.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3", - "psalm/plugin-phpunit": "^0.15.1", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.6" - }, - "type": "library", - "extra": { - "laminas": { - "module": "Laminas\\ZendFrameworkBridge" - } - }, - "autoload": { - "files": [ - "src/autoload.php" - ], - "psr-4": { - "Laminas\\ZendFrameworkBridge\\": "src//" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Alias legacy ZF class names to Laminas Project equivalents.", - "keywords": [ - "ZendFramework", - "autoloading", - "laminas", - "zf" - ], - "support": { - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", - "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", - "source": "https://github.com/laminas/laminas-zendframework-bridge" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-12-21T14:34:37+00:00" - }, { "name": "nicolus/picofeed", "version": "dev-patch-3", @@ -856,6 +799,61 @@ }, "time": "2020-06-29T06:28:15+00:00" }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, { "name": "psr/http-message", "version": "1.0.1", @@ -1195,7 +1193,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.1 || ^8.0", + "php": ">=7.3", "ext-intl": "*", "ext-json": "*", "ext-hash": "*", diff --git a/tests/phpunit.dist.xml b/tests/phpunit.dist.xml index f50257c..ea08b28 100644 --- a/tests/phpunit.dist.xml +++ b/tests/phpunit.dist.xml @@ -1,8 +1,9 @@ - - - - ../lib - - - + + + ../lib + + cases/Exception/TestException.php diff --git a/vendor-bin/csfixer/composer.lock b/vendor-bin/csfixer/composer.lock index 6ae4d71..0fed7dc 100644 --- a/vendor-bin/csfixer/composer.lock +++ b/vendor-bin/csfixer/composer.lock @@ -678,16 +678,16 @@ }, { "name": "sebastian/diff", - "version": "5.0.0", + "version": "5.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "70dd1b20bc198da394ad542e988381b44e64e39f" + "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/70dd1b20bc198da394ad542e988381b44e64e39f", - "reference": "70dd1b20bc198da394ad542e988381b44e64e39f", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/aae9a0a43bff37bd5d8d0311426c87bf36153f02", + "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02", "shasum": "" }, "require": { @@ -732,7 +732,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/5.0.0" + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/5.0.1" }, "funding": [ { @@ -740,7 +741,7 @@ "type": "github" } ], - "time": "2023-02-03T07:00:31+00:00" + "time": "2023-03-23T05:12:41+00:00" }, { "name": "symfony/console", @@ -2050,9 +2051,7 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": { - "friendsofphp/php-cs-fixer": 20 - }, + "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": [], diff --git a/vendor-bin/phpstan/composer.json b/vendor-bin/phpstan/composer.json deleted file mode 100644 index 1b7ff55..0000000 --- a/vendor-bin/phpstan/composer.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "require-dev": { - "phpstan/phpstan": "^0.12.99" - } -} diff --git a/vendor-bin/phpstan/composer.lock b/vendor-bin/phpstan/composer.lock deleted file mode 100644 index 8812f2c..0000000 --- a/vendor-bin/phpstan/composer.lock +++ /dev/null @@ -1,79 +0,0 @@ -{ - "_readme": [ - "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", - "This file is @generated automatically" - ], - "content-hash": "b260ae3dc51b5d4100c545bf9e65f543", - "packages": [], - "packages-dev": [ - { - "name": "phpstan/phpstan", - "version": "0.12.100", - "source": { - "type": "git", - "url": "https://github.com/phpstan/phpstan.git", - "reference": "48236ddf823547081b2b153d1cd2994b784328c3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/48236ddf823547081b2b153d1cd2994b784328c3", - "reference": "48236ddf823547081b2b153d1cd2994b784328c3", - "shasum": "" - }, - "require": { - "php": "^7.1|^8.0" - }, - "conflict": { - "phpstan/phpstan-shim": "*" - }, - "bin": [ - "phpstan", - "phpstan.phar" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.12-dev" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "PHPStan - PHP Static Analysis Tool", - "support": { - "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/0.12.100" - }, - "funding": [ - { - "url": "https://github.com/ondrejmirtes", - "type": "github" - }, - { - "url": "https://github.com/phpstan", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", - "type": "tidelift" - } - ], - "time": "2022-11-01T09:52:08+00:00" - } - ], - "aliases": [], - "minimum-stability": "stable", - "stability-flags": [], - "prefer-stable": false, - "prefer-lowest": false, - "platform": [], - "platform-dev": [], - "plugin-api-version": "2.3.0" -} diff --git a/vendor-bin/phpunit/composer.json b/vendor-bin/phpunit/composer.json index 5c33348..4744c0c 100644 --- a/vendor-bin/phpunit/composer.json +++ b/vendor-bin/phpunit/composer.json @@ -1,6 +1,6 @@ { "require-dev": { - "phpunit/phpunit": "^8.0 || ^9.0", + "phpunit/phpunit": "^9.0", "dms/phpunit-arraysubset-asserts": "^0.1 || ^0.2", "clue/arguments": "^2.0", "mikey179/vfsstream": "^1.6", diff --git a/vendor-bin/phpunit/composer.lock b/vendor-bin/phpunit/composer.lock index cd2bd9c..096b882 100644 --- a/vendor-bin/phpunit/composer.lock +++ b/vendor-bin/phpunit/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ee93856e05f6ce1cc763b474c94dad6c", + "content-hash": "834109e2eab8d2bc0a89ab4d28c12f75", "packages": [], "packages-dev": [ { From d9b90390e7d7a692693ee10148796266190446c9 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Sat, 17 Jun 2023 11:09:03 -0400 Subject: [PATCH 09/18] Update style rules --- .php-cs-fixer.dist.php | 5 +- composer.lock | 129 ++++++++--------- vendor-bin/csfixer/composer.lock | 199 +++++++++++++------------- vendor-bin/daux/composer.lock | 226 ++++++++++++++---------------- vendor-bin/phpunit/composer.lock | 37 ++--- vendor-bin/robo/composer.lock | 230 ++++++++++++++----------------- 6 files changed, 389 insertions(+), 437 deletions(-) diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index 070f4f8..2baaee7 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -59,7 +59,10 @@ $rules = [ // PSR standard to apply '@PSR12' => true, // house exceptions to PSR rules - 'braces' => ['position_after_functions_and_oop_constructs' => "same"], + 'curly_braces_position' => [ + 'functions_opening_brace' => "same_line", + 'classes_opening_brace' => "same_line", + ], 'function_declaration' => ['closure_function_spacing' => "none"], 'new_with_braces' => false, // no option to specify absence of braces ]; diff --git a/composer.lock b/composer.lock index c898fea..6f7f738 100644 --- a/composer.lock +++ b/composer.lock @@ -55,22 +55,22 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.7.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5", + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", + "guzzlehttp/promises": "^1.5.3 || ^2.0", + "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -81,7 +81,8 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", + "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "php-http/message-factory": "^1.1", "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, @@ -95,9 +96,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" } }, "autoload": { @@ -163,7 +161,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.7.0" }, "funding": [ { @@ -179,38 +177,37 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2023-05-21T14:04:53+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6", + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6", "shasum": "" }, "require": { - "php": ">=5.5" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "bamarni/composer-bin-plugin": "^1.8.1", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "bamarni-bin": { + "bin-links": true, + "forward-command": false } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Promise\\": "src/" } @@ -247,7 +244,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/2.0.0" }, "funding": [ { @@ -263,26 +260,26 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2023-05-21T13:50:22+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.4", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" + "reference": "b635f279edd83fc275f822a1188157ffea568ff6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", + "reference": "b635f279edd83fc275f822a1188157ffea568ff6", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1 || ^2.0", "ralouphie/getallheaders": "^3.0" }, "provide": { @@ -302,9 +299,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "2.4-dev" } }, "autoload": { @@ -366,7 +360,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.4" + "source": "https://github.com/guzzle/psr7/tree/2.5.0" }, "funding": [ { @@ -382,7 +376,7 @@ "type": "tidelift" } ], - "time": "2023-03-09T13:19:02+00:00" + "time": "2023-04-17T16:11:26+00:00" }, { "name": "hosteurope/password-generator", @@ -749,21 +743,21 @@ }, { "name": "psr/http-client", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -783,7 +777,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP clients", @@ -795,27 +789,27 @@ "psr-18" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/master" + "source": "https://github.com/php-fig/http-client/tree/1.0.2" }, - "time": "2020-06-29T06:28:15+00:00" + "time": "2023-04-10T20:12:12+00:00" }, { "name": "psr/http-factory", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + "reference": "e616d01114759c4c489f93b099585439f795fe35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", + "reference": "e616d01114759c4c489f93b099585439f795fe35", "shasum": "" }, "require": { "php": ">=7.0.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -835,7 +829,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for PSR-7 HTTP message factories", @@ -850,31 +844,31 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/master" + "source": "https://github.com/php-fig/http-factory/tree/1.0.2" }, - "time": "2019-04-30T12:38:16+00:00" + "time": "2023-04-10T20:10:41+00:00" }, { "name": "psr/http-message", - "version": "1.0.1", + "version": "1.1", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.1.x-dev" } }, "autoload": { @@ -903,27 +897,27 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/master" + "source": "https://github.com/php-fig/http-message/tree/1.1" }, - "time": "2016-08-06T14:39:51+00:00" + "time": "2023-04-04T09:50:52+00:00" }, { "name": "psr/http-server-handler", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-server-handler.git", - "reference": "aff2f80e33b7f026ec96bb42f63242dc50ffcae7" + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/aff2f80e33b7f026ec96bb42f63242dc50ffcae7", - "reference": "aff2f80e33b7f026ec96bb42f63242dc50ffcae7", + "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/84c4fb66179be4caaf8e97bd239203245302e7d4", + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4", "shasum": "" }, "require": { "php": ">=7.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -943,7 +937,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP server-side request handler", @@ -959,10 +953,9 @@ "server" ], "support": { - "issues": "https://github.com/php-fig/http-server-handler/issues", - "source": "https://github.com/php-fig/http-server-handler/tree/master" + "source": "https://github.com/php-fig/http-server-handler/tree/1.0.2" }, - "time": "2018-10-30T16:46:14+00:00" + "time": "2023-04-10T20:06:20+00:00" }, { "name": "psr/log", diff --git a/vendor-bin/csfixer/composer.lock b/vendor-bin/csfixer/composer.lock index 0fed7dc..665cc5e 100644 --- a/vendor-bin/csfixer/composer.lock +++ b/vendor-bin/csfixer/composer.lock @@ -380,16 +380,16 @@ }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.15.1", + "version": "v3.17.0", "source": { "type": "git", "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", - "reference": "d48755372a113bddb99f749e34805d83f3acfe04" + "reference": "3f0ed862f22386c55a767461ef5083bddceeed79" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/d48755372a113bddb99f749e34805d83f3acfe04", - "reference": "d48755372a113bddb99f749e34805d83f3acfe04", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/3f0ed862f22386c55a767461ef5083bddceeed79", + "reference": "3f0ed862f22386c55a767461ef5083bddceeed79", "shasum": "" }, "require": { @@ -464,7 +464,7 @@ ], "support": { "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", - "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.15.1" + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.17.0" }, "funding": [ { @@ -472,7 +472,7 @@ "type": "github" } ], - "time": "2023-03-13T23:26:30+00:00" + "time": "2023-05-22T19:59:32+00:00" }, { "name": "psr/cache", @@ -678,16 +678,16 @@ }, { "name": "sebastian/diff", - "version": "5.0.1", + "version": "5.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02" + "reference": "912dc2fbe3e3c1e7873313cc801b100b6c68c87b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/aae9a0a43bff37bd5d8d0311426c87bf36153f02", - "reference": "aae9a0a43bff37bd5d8d0311426c87bf36153f02", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/912dc2fbe3e3c1e7873313cc801b100b6c68c87b", + "reference": "912dc2fbe3e3c1e7873313cc801b100b6c68c87b", "shasum": "" }, "require": { @@ -733,7 +733,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", "security": "https://github.com/sebastianbergmann/diff/security/policy", - "source": "https://github.com/sebastianbergmann/diff/tree/5.0.1" + "source": "https://github.com/sebastianbergmann/diff/tree/5.0.3" }, "funding": [ { @@ -741,27 +741,27 @@ "type": "github" } ], - "time": "2023-03-23T05:12:41+00:00" + "time": "2023-05-01T07:48:21+00:00" }, { "name": "symfony/console", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45" + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45", - "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45", + "url": "https://api.github.com/repos/symfony/console/zipball/8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/string": "^5.4|^6.0" }, "conflict": { @@ -783,12 +783,6 @@ "symfony/process": "^5.4|^6.0", "symfony/var-dumper": "^5.4|^6.0" }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, "type": "library", "autoload": { "psr-4": { @@ -816,12 +810,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.2.7" + "source": "https://github.com/symfony/console/tree/v6.3.0" }, "funding": [ { @@ -837,20 +831,20 @@ "type": "tidelift" } ], - "time": "2023-02-25T17:00:03+00:00" + "time": "2023-05-29T12:49:39+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { @@ -859,7 +853,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -888,7 +882,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -904,28 +898,29 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:25:55+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "404b307de426c1c488e5afad64403e5f145e82a5" + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/404b307de426c1c488e5afad64403e5f145e82a5", - "reference": "404b307de426c1c488e5afad64403e5f145e82a5", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/event-dispatcher-contracts": "^2|^3" + "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<5.4" + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, "provide": { "psr/event-dispatcher-implementation": "1.0", @@ -938,13 +933,9 @@ "symfony/error-handler": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/stopwatch": "^5.4|^6.0" }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, "type": "library", "autoload": { "psr-4": { @@ -971,7 +962,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.7" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.0" }, "funding": [ { @@ -987,33 +978,30 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-04-21T14:41:17+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", "shasum": "" }, "require": { "php": ">=8.1", "psr/event-dispatcher": "^1" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1050,7 +1038,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0" }, "funding": [ { @@ -1066,20 +1054,20 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:32:47+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/filesystem", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "82b6c62b959f642d000456f08c6d219d749215b3" + "reference": "97b698e1d77d356304def77a8d0cd73090b359ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3", - "reference": "82b6c62b959f642d000456f08c6d219d749215b3", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/97b698e1d77d356304def77a8d0cd73090b359ea", + "reference": "97b698e1d77d356304def77a8d0cd73090b359ea", "shasum": "" }, "require": { @@ -1113,7 +1101,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.2.7" + "source": "https://github.com/symfony/filesystem/tree/v6.3.0" }, "funding": [ { @@ -1129,20 +1117,20 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-05-30T17:12:32+00:00" }, { "name": "symfony/finder", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", + "url": "https://api.github.com/repos/symfony/finder/zipball/d9b01ba073c44cef617c7907ce2419f8d00d75e2", + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2", "shasum": "" }, "require": { @@ -1177,7 +1165,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.2.7" + "source": "https://github.com/symfony/finder/tree/v6.3.0" }, "funding": [ { @@ -1193,25 +1181,25 @@ "type": "tidelift" } ], - "time": "2023-02-16T09:57:23+00:00" + "time": "2023-04-02T01:25:41+00:00" }, { "name": "symfony/options-resolver", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629" + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/aa0e85b53bbb2b4951960efd61d295907eacd629", - "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/a10f19f5198d589d5c33333cffe98dc9820332dd", + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3" + "symfony/deprecation-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -1244,7 +1232,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.2.7" + "source": "https://github.com/symfony/options-resolver/tree/v6.3.0" }, "funding": [ { @@ -1260,7 +1248,7 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-05-12T14:21:09+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1756,16 +1744,16 @@ }, { "name": "symfony/process", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902" + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902", - "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902", + "url": "https://api.github.com/repos/symfony/process/zipball/8741e3ed7fe2e91ec099e02446fb86667a0f1628", + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628", "shasum": "" }, "require": { @@ -1797,7 +1785,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.2.7" + "source": "https://github.com/symfony/process/tree/v6.3.0" }, "funding": [ { @@ -1813,20 +1801,20 @@ "type": "tidelift" } ], - "time": "2023-02-24T10:42:00+00:00" + "time": "2023-05-19T08:06:44+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { @@ -1836,13 +1824,10 @@ "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1882,7 +1867,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -1898,25 +1883,25 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:32:47+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/stopwatch", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f" + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", - "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/service-contracts": "^1|^2|^3" + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -1944,7 +1929,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.2.7" + "source": "https://github.com/symfony/stopwatch/tree/v6.3.0" }, "funding": [ { @@ -1960,20 +1945,20 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-02-16T10:14:28+00:00" }, { "name": "symfony/string", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", + "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", "shasum": "" }, "require": { @@ -1984,13 +1969,13 @@ "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { "symfony/error-handler": "^5.4|^6.0", "symfony/http-client": "^5.4|^6.0", "symfony/intl": "^6.2", - "symfony/translation-contracts": "^2.0|^3.0", + "symfony/translation-contracts": "^2.5|^3.0", "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", @@ -2030,7 +2015,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.7" + "source": "https://github.com/symfony/string/tree/v6.3.0" }, "funding": [ { @@ -2046,7 +2031,7 @@ "type": "tidelift" } ], - "time": "2023-02-24T10:42:00+00:00" + "time": "2023-03-21T21:06:29+00:00" } ], "aliases": [], diff --git a/vendor-bin/daux/composer.lock b/vendor-bin/daux/composer.lock index 99857ca..44d339b 100644 --- a/vendor-bin/daux/composer.lock +++ b/vendor-bin/daux/composer.lock @@ -83,22 +83,22 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.7.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5", + "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", + "guzzlehttp/promises": "^1.5.3 || ^2.0", + "guzzlehttp/psr7": "^1.9.1 || ^2.4.5", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -109,7 +109,8 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", + "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "php-http/message-factory": "^1.1", "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, @@ -123,9 +124,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" } }, "autoload": { @@ -191,7 +189,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.7.0" }, "funding": [ { @@ -207,38 +205,37 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2023-05-21T14:04:53+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6", + "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6", "shasum": "" }, "require": { - "php": ">=5.5" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "bamarni/composer-bin-plugin": "^1.8.1", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "bamarni-bin": { + "bin-links": true, + "forward-command": false } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Promise\\": "src/" } @@ -275,7 +272,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/2.0.0" }, "funding": [ { @@ -291,26 +288,26 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2023-05-21T13:50:22+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.4", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" + "reference": "b635f279edd83fc275f822a1188157ffea568ff6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", - "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", + "reference": "b635f279edd83fc275f822a1188157ffea568ff6", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1 || ^2.0", "ralouphie/getallheaders": "^3.0" }, "provide": { @@ -330,9 +327,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "2.4-dev" } }, "autoload": { @@ -394,7 +388,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.4" + "source": "https://github.com/guzzle/psr7/tree/2.5.0" }, "funding": [ { @@ -410,7 +404,7 @@ "type": "tidelift" } ], - "time": "2023-03-09T13:19:02+00:00" + "time": "2023-04-17T16:11:26+00:00" }, { "name": "league/commonmark", @@ -624,21 +618,21 @@ }, { "name": "psr/http-client", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -658,7 +652,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP clients", @@ -670,27 +664,27 @@ "psr-18" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/master" + "source": "https://github.com/php-fig/http-client/tree/1.0.2" }, - "time": "2020-06-29T06:28:15+00:00" + "time": "2023-04-10T20:12:12+00:00" }, { "name": "psr/http-factory", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + "reference": "e616d01114759c4c489f93b099585439f795fe35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", + "reference": "e616d01114759c4c489f93b099585439f795fe35", "shasum": "" }, "require": { "php": ">=7.0.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -710,7 +704,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interfaces for PSR-7 HTTP message factories", @@ -725,31 +719,31 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/master" + "source": "https://github.com/php-fig/http-factory/tree/1.0.2" }, - "time": "2019-04-30T12:38:16+00:00" + "time": "2023-04-10T20:10:41+00:00" }, { "name": "psr/http-message", - "version": "1.0.1", + "version": "2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.2 || ^8.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -764,7 +758,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -778,9 +772,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/master" + "source": "https://github.com/php-fig/http-message/tree/2.0" }, - "time": "2016-08-06T14:39:51+00:00" + "time": "2023-04-04T09:54:51+00:00" }, { "name": "ralouphie/getallheaders", @@ -906,16 +900,16 @@ }, { "name": "symfony/console", - "version": "v5.4.21", + "version": "v5.4.24", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9" + "reference": "560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/c77433ddc6cdc689caf48065d9ea22ca0853fbd9", - "reference": "c77433ddc6cdc689caf48065d9ea22ca0853fbd9", + "url": "https://api.github.com/repos/symfony/console/zipball/560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8", + "reference": "560fc3ed7a43e6d30ea94a07d77f9a60b8ed0fb8", "shasum": "" }, "require": { @@ -980,12 +974,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.21" + "source": "https://github.com/symfony/console/tree/v5.4.24" }, "funding": [ { @@ -1001,20 +995,20 @@ "type": "tidelift" } ], - "time": "2023-02-25T16:59:41+00:00" + "time": "2023-05-26T05:13:16+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { @@ -1023,7 +1017,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1052,7 +1046,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -1068,20 +1062,20 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:25:55+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.21", + "version": "v5.4.24", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "3bb6ee5582366c4176d5ce596b380117c8200bbf" + "reference": "3c59f97f6249ce552a44f01b93bfcbd786a954f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3bb6ee5582366c4176d5ce596b380117c8200bbf", - "reference": "3bb6ee5582366c4176d5ce596b380117c8200bbf", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3c59f97f6249ce552a44f01b93bfcbd786a954f5", + "reference": "3c59f97f6249ce552a44f01b93bfcbd786a954f5", "shasum": "" }, "require": { @@ -1128,7 +1122,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.21" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.24" }, "funding": [ { @@ -1144,20 +1138,20 @@ "type": "tidelift" } ], - "time": "2023-02-17T21:35:35+00:00" + "time": "2023-05-19T07:21:23+00:00" }, { "name": "symfony/mime", - "version": "v5.4.21", + "version": "v5.4.23", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd" + "reference": "ae0a1032a450a3abf305ee44fc55ed423fbf16e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd", - "reference": "ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd", + "url": "https://api.github.com/repos/symfony/mime/zipball/ae0a1032a450a3abf305ee44fc55ed423fbf16e3", + "reference": "ae0a1032a450a3abf305ee44fc55ed423fbf16e3", "shasum": "" }, "require": { @@ -1212,7 +1206,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.21" + "source": "https://github.com/symfony/mime/tree/v5.4.23" }, "funding": [ { @@ -1228,7 +1222,7 @@ "type": "tidelift" } ], - "time": "2023-02-21T19:46:44+00:00" + "time": "2023-04-19T09:49:13+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1974,16 +1968,16 @@ }, { "name": "symfony/process", - "version": "v5.4.21", + "version": "v5.4.24", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd" + "reference": "e3c46cc5689c8782944274bb30702106ecbe3b64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd", - "reference": "d4ce417ebcb0b7d090b4c178ed6d3accc518e8bd", + "url": "https://api.github.com/repos/symfony/process/zipball/e3c46cc5689c8782944274bb30702106ecbe3b64", + "reference": "e3c46cc5689c8782944274bb30702106ecbe3b64", "shasum": "" }, "require": { @@ -2016,7 +2010,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.21" + "source": "https://github.com/symfony/process/tree/v5.4.24" }, "funding": [ { @@ -2032,20 +2026,20 @@ "type": "tidelift" } ], - "time": "2023-02-21T19:46:44+00:00" + "time": "2023-05-17T11:26:05+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { @@ -2055,13 +2049,10 @@ "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -2101,7 +2092,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -2117,20 +2108,20 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:32:47+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/string", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", + "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", "shasum": "" }, "require": { @@ -2141,13 +2132,13 @@ "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { "symfony/error-handler": "^5.4|^6.0", "symfony/http-client": "^5.4|^6.0", "symfony/intl": "^6.2", - "symfony/translation-contracts": "^2.0|^3.0", + "symfony/translation-contracts": "^2.5|^3.0", "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", @@ -2187,7 +2178,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.7" + "source": "https://github.com/symfony/string/tree/v6.3.0" }, "funding": [ { @@ -2203,20 +2194,20 @@ "type": "tidelift" } ], - "time": "2023-02-24T10:42:00+00:00" + "time": "2023-03-21T21:06:29+00:00" }, { "name": "symfony/yaml", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" + "reference": "a9a8337aa641ef2aa39c3e028f9107ec391e5927" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", + "url": "https://api.github.com/repos/symfony/yaml/zipball/a9a8337aa641ef2aa39c3e028f9107ec391e5927", + "reference": "a9a8337aa641ef2aa39c3e028f9107ec391e5927", "shasum": "" }, "require": { @@ -2229,9 +2220,6 @@ "require-dev": { "symfony/console": "^5.4|^6.0" }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, "bin": [ "Resources/bin/yaml-lint" ], @@ -2261,7 +2249,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.2.7" + "source": "https://github.com/symfony/yaml/tree/v6.3.0" }, "funding": [ { @@ -2277,7 +2265,7 @@ "type": "tidelift" } ], - "time": "2023-02-16T09:57:23+00:00" + "time": "2023-04-28T13:28:14+00:00" }, { "name": "webuni/front-matter", diff --git a/vendor-bin/phpunit/composer.lock b/vendor-bin/phpunit/composer.lock index 096b882..a2f6c40 100644 --- a/vendor-bin/phpunit/composer.lock +++ b/vendor-bin/phpunit/composer.lock @@ -448,16 +448,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.15.4", + "version": "v4.15.5", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" + "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", - "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/11e2663a5bc9db5d714eedb4277ee300403b4a9e", + "reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e", "shasum": "" }, "require": { @@ -498,9 +498,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.5" }, - "time": "2023-03-05T19:49:14+00:00" + "time": "2023-05-19T20:20:00+00:00" }, { "name": "phar-io/manifest", @@ -933,16 +933,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.5", + "version": "9.6.9", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5" + "reference": "a9aceaf20a682aeacf28d582654a1670d8826778" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/86e761949019ae83f49240b2f2123fb5ab3b2fc5", - "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a9aceaf20a682aeacf28d582654a1670d8826778", + "reference": "a9aceaf20a682aeacf28d582654a1670d8826778", "shasum": "" }, "require": { @@ -1015,7 +1015,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.5" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.9" }, "funding": [ { @@ -1031,7 +1032,7 @@ "type": "tidelift" } ], - "time": "2023-03-09T06:34:10+00:00" + "time": "2023-06-11T06:13:56+00:00" }, { "name": "sebastian/cli-parser", @@ -1333,16 +1334,16 @@ }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131", + "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131", "shasum": "" }, "require": { @@ -1387,7 +1388,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5" }, "funding": [ { @@ -1395,7 +1396,7 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2023-05-07T05:35:17+00:00" }, { "name": "sebastian/environment", diff --git a/vendor-bin/robo/composer.lock b/vendor-bin/robo/composer.lock index 79499e8..75847f3 100644 --- a/vendor-bin/robo/composer.lock +++ b/vendor-bin/robo/composer.lock @@ -90,25 +90,25 @@ }, { "name": "consolidation/annotated-command", - "version": "4.8.2", + "version": "4.9.1", "source": { "type": "git", "url": "https://github.com/consolidation/annotated-command.git", - "reference": "7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3" + "reference": "e01152f698eff4cb5df3ebfe5e097ef335dbd3c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3", - "reference": "7f5dd1aafb93a10593ed70f3caa6a0cd5a32f0e3", + "url": "https://api.github.com/repos/consolidation/annotated-command/zipball/e01152f698eff4cb5df3ebfe5e097ef335dbd3c9", + "reference": "e01152f698eff4cb5df3ebfe5e097ef335dbd3c9", "shasum": "" }, "require": { - "consolidation/output-formatters": "^4.1.1", + "consolidation/output-formatters": "^4.3.1", "php": ">=7.1.3", - "psr/log": "^1|^2|^3", - "symfony/console": "^4.4.8|^5|^6", - "symfony/event-dispatcher": "^4.4.8|^5|^6", - "symfony/finder": "^4.4.8|^5|^6" + "psr/log": "^1 || ^2 || ^3", + "symfony/console": "^4.4.8 || ^5 || ^6", + "symfony/event-dispatcher": "^4.4.8 || ^5 || ^6", + "symfony/finder": "^4.4.8 || ^5 || ^6" }, "require-dev": { "composer-runtime-api": "^2.0", @@ -140,9 +140,9 @@ "description": "Initialize Symfony Console commands from annotated command class methods.", "support": { "issues": "https://github.com/consolidation/annotated-command/issues", - "source": "https://github.com/consolidation/annotated-command/tree/4.8.2" + "source": "https://github.com/consolidation/annotated-command/tree/4.9.1" }, - "time": "2023-03-11T19:32:28+00:00" + "time": "2023-05-20T04:19:01+00:00" }, { "name": "consolidation/config", @@ -258,16 +258,16 @@ }, { "name": "consolidation/output-formatters", - "version": "4.2.4", + "version": "4.3.1", "source": { "type": "git", "url": "https://github.com/consolidation/output-formatters.git", - "reference": "b377db7e9435c50c4e019c26ec164b547e754ca0" + "reference": "f65524e9ecd2bd0021c4b18710005caaa6dcbd86" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/b377db7e9435c50c4e019c26ec164b547e754ca0", - "reference": "b377db7e9435c50c4e019c26ec164b547e754ca0", + "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/f65524e9ecd2bd0021c4b18710005caaa6dcbd86", + "reference": "f65524e9ecd2bd0021c4b18710005caaa6dcbd86", "shasum": "" }, "require": { @@ -306,22 +306,22 @@ "description": "Format text by applying transformations provided by plug-in formatters.", "support": { "issues": "https://github.com/consolidation/output-formatters/issues", - "source": "https://github.com/consolidation/output-formatters/tree/4.2.4" + "source": "https://github.com/consolidation/output-formatters/tree/4.3.1" }, - "time": "2023-02-24T03:39:10+00:00" + "time": "2023-05-20T03:23:06+00:00" }, { "name": "consolidation/robo", - "version": "3.0.11", + "version": "3.0.12", "source": { "type": "git", "url": "https://github.com/consolidation/robo.git", - "reference": "820fa0f164f77887e268b7dbfb2283416c7334c1" + "reference": "0c3a5085357f46c90a0b756e3d326f44847158b8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/robo/zipball/820fa0f164f77887e268b7dbfb2283416c7334c1", - "reference": "820fa0f164f77887e268b7dbfb2283416c7334c1", + "url": "https://api.github.com/repos/consolidation/robo/zipball/0c3a5085357f46c90a0b756e3d326f44847158b8", + "reference": "0c3a5085357f46c90a0b756e3d326f44847158b8", "shasum": "" }, "require": { @@ -405,22 +405,22 @@ "description": "Modern task runner", "support": { "issues": "https://github.com/consolidation/robo/issues", - "source": "https://github.com/consolidation/robo/tree/3.0.11" + "source": "https://github.com/consolidation/robo/tree/3.0.12" }, - "time": "2022-12-07T15:18:26+00:00" + "time": "2023-04-30T21:18:09+00:00" }, { "name": "consolidation/self-update", - "version": "2.1.0", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/consolidation/self-update.git", - "reference": "714b09fdf0513f83292874bb12de0566066040c2" + "reference": "972a1016761c9b63314e040836a12795dff6953a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/consolidation/self-update/zipball/714b09fdf0513f83292874bb12de0566066040c2", - "reference": "714b09fdf0513f83292874bb12de0566066040c2", + "url": "https://api.github.com/repos/consolidation/self-update/zipball/972a1016761c9b63314e040836a12795dff6953a", + "reference": "972a1016761c9b63314e040836a12795dff6953a", "shasum": "" }, "require": { @@ -460,9 +460,9 @@ "description": "Provides a self:update command for Symfony Console applications.", "support": { "issues": "https://github.com/consolidation/self-update/issues", - "source": "https://github.com/consolidation/self-update/tree/2.1.0" + "source": "https://github.com/consolidation/self-update/tree/2.2.0" }, - "time": "2023-02-21T19:33:55+00:00" + "time": "2023-03-18T01:37:41+00:00" }, { "name": "dflydev/dot-access-data", @@ -806,16 +806,16 @@ }, { "name": "pear/pear-core-minimal", - "version": "v1.10.11", + "version": "v1.10.13", "source": { "type": "git", "url": "https://github.com/pear/pear-core-minimal.git", - "reference": "68d0d32ada737153b7e93b8d3c710ebe70ac867d" + "reference": "aed862e95fd286c53cc546734868dc38ff4b5b1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/68d0d32ada737153b7e93b8d3c710ebe70ac867d", - "reference": "68d0d32ada737153b7e93b8d3c710ebe70ac867d", + "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/aed862e95fd286c53cc546734868dc38ff4b5b1d", + "reference": "aed862e95fd286c53cc546734868dc38ff4b5b1d", "shasum": "" }, "require": { @@ -850,7 +850,7 @@ "issues": "http://pear.php.net/bugs/search.php?cmd=display&package_name[]=PEAR", "source": "https://github.com/pear/pear-core-minimal" }, - "time": "2021-08-10T22:31:03+00:00" + "time": "2023-04-19T19:15:47+00:00" }, { "name": "pear/pear_exception", @@ -1066,23 +1066,23 @@ }, { "name": "symfony/console", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45" + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45", - "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45", + "url": "https://api.github.com/repos/symfony/console/zipball/8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", + "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/string": "^5.4|^6.0" }, "conflict": { @@ -1104,12 +1104,6 @@ "symfony/process": "^5.4|^6.0", "symfony/var-dumper": "^5.4|^6.0" }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, "type": "library", "autoload": { "psr-4": { @@ -1137,12 +1131,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.2.7" + "source": "https://github.com/symfony/console/tree/v6.3.0" }, "funding": [ { @@ -1158,20 +1152,20 @@ "type": "tidelift" } ], - "time": "2023-02-25T17:00:03+00:00" + "time": "2023-05-29T12:49:39+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", - "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { @@ -1180,7 +1174,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1209,7 +1203,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -1225,28 +1219,29 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:25:55+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "404b307de426c1c488e5afad64403e5f145e82a5" + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/404b307de426c1c488e5afad64403e5f145e82a5", - "reference": "404b307de426c1c488e5afad64403e5f145e82a5", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", + "reference": "3af8ac1a3f98f6dbc55e10ae59c9e44bfc38dfaa", "shasum": "" }, "require": { "php": ">=8.1", - "symfony/event-dispatcher-contracts": "^2|^3" + "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<5.4" + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, "provide": { "psr/event-dispatcher-implementation": "1.0", @@ -1259,13 +1254,9 @@ "symfony/error-handler": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", + "symfony/service-contracts": "^2.5|^3", "symfony/stopwatch": "^5.4|^6.0" }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, "type": "library", "autoload": { "psr-4": { @@ -1292,7 +1283,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.7" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.0" }, "funding": [ { @@ -1308,33 +1299,30 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-04-21T14:41:17+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", - "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", "shasum": "" }, "require": { "php": ">=8.1", "psr/event-dispatcher": "^1" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1371,7 +1359,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0" }, "funding": [ { @@ -1387,20 +1375,20 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:32:47+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/filesystem", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "82b6c62b959f642d000456f08c6d219d749215b3" + "reference": "97b698e1d77d356304def77a8d0cd73090b359ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3", - "reference": "82b6c62b959f642d000456f08c6d219d749215b3", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/97b698e1d77d356304def77a8d0cd73090b359ea", + "reference": "97b698e1d77d356304def77a8d0cd73090b359ea", "shasum": "" }, "require": { @@ -1434,7 +1422,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.2.7" + "source": "https://github.com/symfony/filesystem/tree/v6.3.0" }, "funding": [ { @@ -1450,20 +1438,20 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:44:56+00:00" + "time": "2023-05-30T17:12:32+00:00" }, { "name": "symfony/finder", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", - "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", + "url": "https://api.github.com/repos/symfony/finder/zipball/d9b01ba073c44cef617c7907ce2419f8d00d75e2", + "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2", "shasum": "" }, "require": { @@ -1498,7 +1486,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.2.7" + "source": "https://github.com/symfony/finder/tree/v6.3.0" }, "funding": [ { @@ -1514,7 +1502,7 @@ "type": "tidelift" } ], - "time": "2023-02-16T09:57:23+00:00" + "time": "2023-04-02T01:25:41+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1848,16 +1836,16 @@ }, { "name": "symfony/process", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902" + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902", - "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902", + "url": "https://api.github.com/repos/symfony/process/zipball/8741e3ed7fe2e91ec099e02446fb86667a0f1628", + "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628", "shasum": "" }, "require": { @@ -1889,7 +1877,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.2.7" + "source": "https://github.com/symfony/process/tree/v6.3.0" }, "funding": [ { @@ -1905,20 +1893,20 @@ "type": "tidelift" } ], - "time": "2023-02-24T10:42:00+00:00" + "time": "2023-05-19T08:06:44+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", - "reference": "a8c9cedf55f314f3a186041d19537303766df09a", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { @@ -1928,13 +1916,10 @@ "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.3-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -1974,7 +1959,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -1990,20 +1975,20 @@ "type": "tidelift" } ], - "time": "2023-03-01T10:32:47+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/string", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", - "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", + "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", "shasum": "" }, "require": { @@ -2014,13 +1999,13 @@ "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": "<2.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { "symfony/error-handler": "^5.4|^6.0", "symfony/http-client": "^5.4|^6.0", "symfony/intl": "^6.2", - "symfony/translation-contracts": "^2.0|^3.0", + "symfony/translation-contracts": "^2.5|^3.0", "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", @@ -2060,7 +2045,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.7" + "source": "https://github.com/symfony/string/tree/v6.3.0" }, "funding": [ { @@ -2076,20 +2061,20 @@ "type": "tidelift" } ], - "time": "2023-02-24T10:42:00+00:00" + "time": "2023-03-21T21:06:29+00:00" }, { "name": "symfony/yaml", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" + "reference": "a9a8337aa641ef2aa39c3e028f9107ec391e5927" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", - "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", + "url": "https://api.github.com/repos/symfony/yaml/zipball/a9a8337aa641ef2aa39c3e028f9107ec391e5927", + "reference": "a9a8337aa641ef2aa39c3e028f9107ec391e5927", "shasum": "" }, "require": { @@ -2102,9 +2087,6 @@ "require-dev": { "symfony/console": "^5.4|^6.0" }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, "bin": [ "Resources/bin/yaml-lint" ], @@ -2134,7 +2116,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v6.2.7" + "source": "https://github.com/symfony/yaml/tree/v6.3.0" }, "funding": [ { @@ -2150,7 +2132,7 @@ "type": "tidelift" } ], - "time": "2023-02-16T09:57:23+00:00" + "time": "2023-04-28T13:28:14+00:00" } ], "aliases": [], From 761314222102f8ee916bb191511867d129cb0a2b Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 25 Oct 2023 17:24:54 -0400 Subject: [PATCH 10/18] Start on a native groff manual --- manpages/en.groff | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 manpages/en.groff diff --git a/manpages/en.groff b/manpages/en.groff new file mode 100644 index 0000000..3ea6595 --- /dev/null +++ b/manpages/en.groff @@ -0,0 +1,57 @@ +.TH ARSSE 1 "2023\-10\-25" "The Arsse 0.10.4" + +.SH NAME +arsse \- manage an instance of The Advanced RSS Environment (The Arsse) + +.SH SYNOPSIS + +.SY "arsse user" +.RB [ list ] +.SY "arsse user add" +.RI < username > +.RI [< password >] +.RB [ \-\-admin ] +.SY "arsse user remove" +.RI < username > +.SY "arsse user show" +.RI < username > +.SY "arsse user set" +.RI < username > +.RI < property > +.RI < value > +.SY "arsse user unset" +.RI < username > +.RI < property > +.SY "arsse user set\-pass" +.RI < username > +.RI [< password >] +.RB [ \-\-fever ] +.SY "arsse user unset\-pass" +.RI < username > +.RB [ \-\-fever ] +.SY "arsse user auth" +.RI < username > +.RI [< password >] +.RB [ \-\-fever ] +.SY "arsse token list" +.RI < username > +.SY "arsse token create" +.RI < username > +.RI [< label >] +.SY "arsse token revoke" +.RI < username > +.RI [< token >] +.SY "arsse import" +.RI < username > +.RI [< file >] +.RB [ \-f | \-\-flat ] +.RB [ \-r | \-\-replace ] +.SY "arsse export" +.RI < username > +.RI [< file >] +.RB [ \-f | \-\-flat ] +.SY "arsse export" +.RI < username > +.RI [< file >] +.RB [ \-f | \-\-flat ] +.YS \ No newline at end of file From 5579144fee0e73b5bf3e7c9ddcd202446062aa26 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Thu, 26 Oct 2023 18:15:20 -0400 Subject: [PATCH 11/18] Complete native groff manual --- manpages/en.groff | 362 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 357 insertions(+), 5 deletions(-) diff --git a/manpages/en.groff b/manpages/en.groff index 3ea6595..38b0063 100644 --- a/manpages/en.groff +++ b/manpages/en.groff @@ -1,10 +1,15 @@ -.TH ARSSE 1 "2023\-10\-25" "The Arsse 0.10.4" - +.\" This manual was written using stylistic recommendations from the very +.\" helpful groff_man_style(7) manual page with some suggestions from the +.\" man-pages(7) manual followed as well. When in doubt those manuals should +.\" be consulted while making edits to this document. +. +.TH ARSSE 1 "2023\-10\-26" "The Arsse 0.10.4" +. .SH NAME arsse \- manage an instance of The Advanced RSS Environment (The Arsse) - +. +. .SH SYNOPSIS - .SY "arsse user" .RB [ list ] .SY "arsse user add" @@ -54,4 +59,351 @@ arsse \- manage an instance of The Advanced RSS Environment (The Arsse) .RI < username > .RI [< file >] .RB [ \-f | \-\-flat ] -.YS \ No newline at end of file +.SY "arsse daemon" +.RB [ \-\-fork =\c +.IR pidfile ] +.SY "arsse feed refresh\-all" +.SY "arsse feed refresh" +.RI < n > +.SY "arsse conf save\-defaults" +.RI [< file >] +.SY "arsse \-\-version" +.SY "arsse" +.BR \-h | \-\-help +.YS +. +. +.SH DESCRIPTION +.P +.B arsse +allows a sufficiently privileged user to perform various administrative operations related to The Arsse, including: +.IP \[bu] 2 +.PD 0 +Adding and removing users and managing their metadata +.IP \[bu] 2 +Managing passwords and authentication tokens +.IP \[bu] 2 +Importing and exporting OPML newsfeed-lists +.PD +.P +These are documented in the next section +.BR COMMANDS . +Further, seldom-used commands are documented in the following section +.BR "ADDITIONAL COMMANDS" . +. +. +.SH COMMANDS +.SS "Managing uses and metadata" +.TP +.BR "user " [ list ] +Displays a simple list of user names with one entry per line +.TP +.BR "user add " \c +.RI < username "> [<" password ">] \c" +.RB [ \-\-admin ] +Adds a new user to the database with the specified username and password. +If +.I password +is omitted a random password will be generated and printed. +.IP +The +.B \-\-admin +flag may be used to mark the user as an administrator. +This has no meaning within the context of The Arsse as a whole, +but it is used control access to certain features in the Miniflux and Nextcloud News protocols. +.TP +.BR "user remove " \c +.RI < username > +Immediately removes a user from the database. +All associated data (folders, subscriptions, etc.) are also removed. +.TP +.BR "user show " \c +.RI < username > +Displays a table of metadata properties and their assigned values for +.IR username . +These properties are primarily used by the Miniflux protocol. +Consult the section +.B USER METADATA +for details. +.TP +.BR "user set " \c +.RI < username "> \c" +.RI < property "> \c" +.RI < value > +Sets a metadata property for a user. +These properties are primarily used by the Miniflux protocol. +Consult the section +.B "USER METADATA" +for details. +.TP +.BR "user set " \c +.RI < username "> \c" +.RI < property > +Clears a metadata property for a user. +The property is thereafter set to its default value, which is protocol-dependent. +.SS "Managing passwords and authentication tokens" +.TP +.BR "user set\-pass " \c +.RI < username "> \c" +.RI [< password ">] \c" +.RB [ \-\-fever ] +Changes a user's password to the specified value. +If no password is specified, a random password will be generated and printed. +.IP +The +.B \-\-fever +option sets a user's Fever protocol password instead of their general password. +As the Fever protocol requires that passwords be stored insecurely, +users do not have Fever passwords by default, and logging in to the Fever protocol is disabled until a suitable password is set. +It is highly recommended that a user's Fever password be different from their general password. +.TP +.BR "user set\-pass " \c +.RI < username "> \c" +.RB [ \-\-fever ] +Unsets a user's password, effectively disabling their account. +As with password setting, the +.B \-\-fever +option may be used to operate on a user's Fever password instead of their general password. +.TP +.BR "user auth " \c +.RI < username "> \c" +.RI [< password ">] \c" +.RB [ \-\-fever ] +Tests logging a user in. +This only checks that the user's password is correctly recognized; +it has no side effects. +.IP +The +.B \-\-fever +option may be used to test the user's Fever protocol password, if any. +.TP +.BR "token list " \c +.RI < username > +Displays a user's authentication tokens in a simple tabular format. +These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. +They do not expire. +.TP +.BR "token create " \c +.RI < username "> \c" +.RI [< label >] +Creates a new random login token and prints it. +These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. +An optional +.I label +may be specified to give the token a meaningful name. +.TP +.BR "token revoke " \c +.RI < username "> \c" +.RI [< token >] +Deletes the specified +.I token +from the database. The token itself must be supplied, not its label. +If it is omitted all tokens for +.I username +are revoked. +.SS "Importing and exporting data" +.TP +.BR "import " \c +.RI < username "> \c" +.RI [< file ">] \c" +.RB [ \-r | \-\-replace "] \c" +.RB [ \-f | \-\-flat ] +Imports the newsfeeds, folders, and tags found in the OPML formatted +.I file +into the account of the specified user. +If no file is specified, data is instead read from standard input. +Import operations are atomic: +if any of the newsfeeds listed in the input cannot be retrieved, the entire import operation will fail. +.IP +The +.BR \-\-replace " (or " \-r ) +option interprets the OPML file as the list of +.B all +desired newsfeeds, folders and tags, performing any deletion or moving of existing entries which do not appear in the flle. +If this option is not specified, the file is assumed to list desired +.B additions only. +.IP +The +.BR \-\-flat " (or " \-f ) +option can be used to ignore any folder structures in the file, importing any newsfeeds directly into the root folder. +Combining this with the +.B \-\-replace +option is possible. +.TP +.BR "export " \c +.RI < username "> \c" +.RI [< file ">] \c" +.RB [ \-f | \-\-flat ] +Exports a user's newsfeeds, folders, and tags to the OPML file specified by +.I file\c +, or standard output if no file is specified. +Note that due to a limitation of the OPML format, any commas present in tag names will not be retained in the export. +.IP +The +.BR \-\-flat " (or " \-f ) +option can be used to omit folders from the export. +Some OPML implementations may not support folders, or arbitrary nesting; +this option may be used when planning to import into such software. +. +. +.SH "ADDITIONAL COMMANDS" +.TP +.BR "daemon" \c +.RB [ \-\-fork =\c +.IR pidfile ] +Starts the newsfeed fetching service. +Normally this command is only invoked by systemd. +.IP +The +.B \-\-fork +option executes an "old-style" fork-then-terminate daemon rather than a "new-style" non-terminating daemon. +This option should only be employed if using a System V-style init daemon on POSIX systems; +normally systemd is used. When using this option the daemon will write its process identifier to +.I pidfile +after forking. +.TP +.BR "feed refresh\-all" +Performs a one-time fetch of all stale feeds. +This command can be used as the basis of a +.B cron +job to keep newsfeeds up-to-date. +.TP +.BR "feed refresh " \c +.RI < n > +Performs a one-time fetch of the feed (not subscription) identified by integer +.IR n . +This is used internally by the fetching service and should not normally be needed. +.TP +.BR "conf save\-defaults " \c +.RI [< file >] +Prints default configuration parameters to standard output, or to +.I file +if specified. +Each parameter is annotated with a short description of its purpose and usage. +. +. +.SH "USER METADATA" +User metadata are primarily used by the Miniflux protocol, +and most properties have identical or similar names to those used by Miniflux. +Properties may also affect other protocols, or conversely may have no effect even when using the Miniflux protocol; +this is noted below when appropriate. +.P +Booleans accept any of the values +.BR true / false , +.BR 1 / 0 , +.BR yes / no , +or +.BR on / off . +.P +The following metadata properties exist for each user: +.TP +.BR num " (integer)" +The numeric identifier of the user. +This is assigned at user creation and is read-only. +.TP +.BR admin " (boolean)" +Boolean. Whether the user is an administrator. +Administrators may manage other users via the Miniflux protocol, +and also may trigger feed updates manually via the Nextcloud News protocol. +.TP +.BR lang " (string)" +The preferred language of the user as a BCP 47 language tag, for example "en-ca". +Note that since The Arsse currently only includes English text it is not used by The Arsse itself, +but clients may use this metadatum in protocols which expose it. +.TP +.BR tz " (string)" +The time zone of the user as a Time Zone Database identifier, for example "America/Los_Angeles". +.TP +.BR root_folder_name " (string)" +The name of the root folder, in protocols which allow it to be renamed. +.TP +.BR sort_asc " (boolean)" +Whether the user prefers ascending sort order for articles. +Descending order is usually the default, +but explicitly setting this property false will also make a preference for descending order explicit. +.TP +.BR theme " (string)" +The user's preferred user-interface theme. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.TP +.BR page_size " (integer)" +The user's preferred page size when listing articles. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.TP +.BR shortcuts " (boolean)" +Whether to enable keyboard shortcuts. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.TP +.BR gestures " (boolean)" +Whether to enable touch gestures. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.TP +.BR reading_time " (boolean)" +Whether to calculate and display the estimated reading time for articles. +Currently The Arsse does not calculate reading time, so changing this will likely have no effect. +.TP +.BR stylesheet " (string)" +A user stylesheet in CSS format. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +. +. +.SH EXAMPLES +.IP \[bu] 2 +Add an administrator to the database with an explicit password: +.EX +$ arsse user add \-\-admin alice "Curiouser and curiouser!" +.EE +.P +.IP \[bu] 2 +Add a regular user to the database with a random password: +.EX +$ arsse user add "Bob the Builder" +bLS!$_UUZ!iN2i_!\^IC6 +.EE +.P +.IP \[bu] 2 +Make Bob the Builder an administrator: +.EX +$ arsse user set "Bob the Builder" admin true +.EE +.P +.IP \[bu] 2 +Disable Alice's account by clearing her password: +.EX +$ arsse user unset\-pass alice +.EE +.P +.IP \[bu] 2 +Move all of Foobar's newsfeeds to the root folder: +.EX +$ arsse export foobar \-f | arsse import \-r foobar +.EE +.P +.IP \[bu] 2 +Fail to log in as Alice: +.EX +$ arsse user auth alice "Oh, dear!" +Authentication failed +$ echo $? +1 +.EE +.P +. +. +.SH "REPORTING BUGS" +.P +Any bugs found in The Arsse may be reported on the Web via the +.UR https://\:code.mensbeam.com/\:MensBeam/\:arsse +MensBeam code repository +.UE \c +\&. Reports may also be directed to the principal authors by e-mail: +.IP \[bu] 2 +.UR https://\:jkingweb.ca/ +J. King +.UE +.PD 0 +.IP \[bu] 2 +.UR https://\:dustinwilson.com/ +Dustin Wilson +.UE +.PD \ No newline at end of file From 174ed544b289f8a8f31e846a53a4dbc93a2e8194 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Fri, 27 Oct 2023 12:28:22 -0400 Subject: [PATCH 12/18] Start on an mdoc-format manual --- manpages/arsse.1.en.mdoc | 88 ++++++++++++++++++++++++++++++++++++++++ manpages/en.groff | 4 -- 2 files changed, 88 insertions(+), 4 deletions(-) create mode 100644 manpages/arsse.1.en.mdoc diff --git a/manpages/arsse.1.en.mdoc b/manpages/arsse.1.en.mdoc new file mode 100644 index 0000000..977cab5 --- /dev/null +++ b/manpages/arsse.1.en.mdoc @@ -0,0 +1,88 @@ +.Dd October 27, 2023 +.Dt ARSSE 1 +.Os "The Arsse" 0.10.4 +. +. +.Sh NAME +.Nm arsse +.Nd manage an instance of The Advanced RSS Environment (The Arsse) +. +. +.Sh SYNOPSIS +.Nm "arsse user" +.Op Nm list +.Nm "arsee user add" +.Ar username +.Op Ar password +.Op Fl Fl admin +.Nm "arsse user remove" +.Ar username +.Nm "arsse user show" +.Ar username +.Nm "arsse user set" +.Ar username +.Ar property +.Ar value +.Nm "arsse user unset" +.Ar username +.Ar property +.Nm "arsse user set\-pass" +.Ar username +.Op Ar password +.Op Fl Fl fever +.Nm "arsse user unset\-pass" +.Ar username +.Op Fl Fl fever +.Nm "arsse user auth" +.Ar username +.Op Ar password +.Op Fl Fl fever +.Nm "arsse token list" +.Ar username +.Nm "arsse token create" +.Ar username +.Op Ar label +.Nm "arsse token revoke" +.Ar username +.Op Ar token +.Nm "arsse import" +.Ar username +.Op Ar file +.Op Fl f | Fl Fl flat +.Op Fl r | Fl Fl replace +.Nm "arsse export" +.Ar username +.Op Ar file +.Op Fl f | Fl Fl flat +.Nm "arsse daemon" +.Op Fl Fl fork Ns = Ns Ar pidfile +.Nm "arsse feed refresh\-all" +.Nm "arsse feed refresh" +.Ar n +.Nm "arsse conf save\-defaults" +.Nm "arsse" +.Fl Fl version | Fl h | Fl Fl help +. +. +.Sh DESCRIPTION +.Nm +allows a sufficiently privileged user to perform various administrative operations related to The Arsse, including: +.Pp +.Bl -bullet -compact +.It +Adding and removing users and managing their metadata +.It +Managing passwords and authentication tokens +.It +Importing and exporting OPML newsfeed-lists +.El +.Pp +.Sm off +These are documented in the next section +.Sx COMMANDS +\&. Further, seldom-used commands are documented in the following section +.Sx "ADDITIONAL COMMANDS" +\&. +.Sm on +. +. diff --git a/manpages/en.groff b/manpages/en.groff index 38b0063..adb9403 100644 --- a/manpages/en.groff +++ b/manpages/en.groff @@ -55,10 +55,6 @@ arsse \- manage an instance of The Advanced RSS Environment (The Arsse) .RI < username > .RI [< file >] .RB [ \-f | \-\-flat ] -.SY "arsse export" -.RI < username > -.RI [< file >] -.RB [ \-f | \-\-flat ] .SY "arsse daemon" .RB [ \-\-fork =\c .IR pidfile ] From 2ff3286aa940683ecfdf4fceba3fa4cf7ed986c8 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Fri, 27 Oct 2023 20:44:01 -0400 Subject: [PATCH 13/18] More work on mdoc manual --- manpages/arsse.1.en.mdoc | 225 +++++++++++++++++++++++++++++++++++++-- manpages/en.groff | 8 +- 2 files changed, 222 insertions(+), 11 deletions(-) diff --git a/manpages/arsse.1.en.mdoc b/manpages/arsse.1.en.mdoc index 977cab5..58dd034 100644 --- a/manpages/arsse.1.en.mdoc +++ b/manpages/arsse.1.en.mdoc @@ -11,7 +11,7 @@ .Sh SYNOPSIS .Nm "arsse user" .Op Nm list -.Nm "arsee user add" +.Nm "arsse user add" .Ar username .Op Ar password .Op Fl Fl admin @@ -77,12 +77,223 @@ Managing passwords and authentication tokens Importing and exporting OPML newsfeed-lists .El .Pp -.Sm off These are documented in the next section -.Sx COMMANDS -\&. Further, seldom-used commands are documented in the following section -.Sx "ADDITIONAL COMMANDS" -\&. -.Sm on +.Sx COMMANDS Ns No . +Further, seldom-used commands are documented in the following section +.Sx ADDITIONAL COMMANDS Ns No . . . +.Sh COMMANDS +. +.Ss Managing users and metadata +.Bl -tag +.It Nm "user" Op Nm list +Displays a simple list of user names with one entry per line +.It Nm "user add" Ar username Oo Ar password Oc Oo Fl Fl admin Oc +Adds a new user to the database with the specified username and password. +If +.Ar password +is omitted a random password will be generated and printed. +.Pp +The +.Fl Fl admin +flag may be used to mark the user as an administrator. +This has no meaning within the context of The Arsse as a whole, +but it is used control access to certain features in the Miniflux and Nextcloud News protocols. +.It Nm "user remove" Ar username +Immediately removes a user from the database. +All associated data (folders, subscriptions, etc.) are also removed. +.It Nm "user show" Ar username +Displays a table of metadata properties and their assigned values for +.Ar username Ns No . +These properties are primarily used by the Miniflux protocol. +Consult the section +.Sx USER METADATA +for details. +.It Nm "user set" Ar username Ar property Ar value +Sets a metadata property for a user. +These properties are primarily used by the Miniflux protocol. +Consult the section +.Sx USER METADATA +for details. +.It Nm "user unset" Ar username Ar property +Clears a metadata property for a user. +The property is thereafter set to its default value, which is protocol-dependent. +.El +. +.Ss Managing passwords and authentication tokens +.Bl -tag +.It Nm "user set\-pass" Ar username Oo Ar password Oc Oo Fl Fl fever Oc +Changes a user's password to the specified value. +If no password is specified, a random password will be generated and printed. +.Pp +The +.Fl Fl fever +option sets a user's Fever protocol password instead of their general password. +As the Fever protocol requires that passwords be stored insecurely, +users do not have Fever passwords by default, and logging in to the Fever protocol is disabled until a suitable password is set. +It is highly recommended that a user's Fever password be different from their general password. +.It Nm "user unset\-pass" Ar username Oo Fl Fl fever Oc +Unsets a user's password, effectively disabling their account. +As with password setting, the +.Fl Fl fever +option may be used to operate on a user's Fever password instead of their general password. +.It Nm "user auth" Ar username Ar password Oo Fl Fl fever Oc +Tests logging a user in. +This only checks that the user's password is correctly recognized; +it has no side effects. +.Pp +The +.Fl Fl fever +option may be used to test the user's Fever protocol password, if any. +.It Nm "token list" Ar username +Displays a user's authentication tokens in a simple tabular format. +These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. +They do not expire. +.It Nm "token create" Ar username Oo Ar label Oc +Creates a new random login token and prints it. +These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. +An optional +.Ar label +may be specified to give the token a meaningful name. +.It Nm "token revoke" Ar username Oo Ar token Oc +Deletes the specified +.Ar token +from the database. +The token itself must be supplied, not its label. +If it is omitted all tokens for +.Ar username +are revoked. +.El +. +.Ss Importing and exporting data +.Bl -tag +.It Nm "import" Ar username Oo Ar file Oc Oo Fl r | Fl Fl replace Oc Oo Fl f | Fl Fl flat Oc +Imports the newsfeeds, folders, and tags found in the OPML formatted +.Ar file +into the account of the specified user. +If no file is specified, data is instead read from standard input. +Import operations are atomic: +if any of the newsfeeds listed in the input cannot be retrieved, the entire import operation will fail. +.Pp +The +.Fl Fl replace +(or +.Fl r Ns +) option interprets the OPML file as the list of +.Em all +desired newsfeeds, folders and tags, performing any deletion or moving of existing entries which do not appear in the flle. +If this option is not specified, the file is assumed to list desired +.Em additions only Ns No . +.Pp +The +.Fl Fl flat +(or +.Fl f Ns +) option can be used to ignore any folder structures in the file, importing any newsfeeds directly into the root folder. +Combining this with the +.Fl Fl replace +option is possible. +.It Nm "export" Ar username Oo Ar file Oc Oo Fl f | Fl Fl flat Oc +Exports a user's newsfeeds, folders, and tags to the OPML file specified by +.Ar file Ns +, or standard output if no file is specified. +Note that due to a limitation of the OPML format, any commas present in tag names will not be retained in the export. +.Pp +The +.Fl Fl flat +(or +.Fl f Ns +) option can be used to omit folders from the export. +Some OPML implementations may not support folders, or arbitrary nesting; +this option may be used when planning to import into such software. +.El +. +. +.Sh ADDITIONAL COMMANDS +.Bl -tag +.It Nm "daemon" Oo Fl Fl fork Ns = Ns Ar pidfile Oc +Starts the newsfeed fetching service. +Normally this command is only invoked by systemd. +.Pp +The +.Fl Fl fork +option executes an "old-style" fork-then-terminate daemon rather than a "new-style" non-terminating daemon. +This option should only be employed if using a System V-style init daemon on POSIX systems; +normally systemd is used. When using this option the daemon will write its process identifier to +.Ar pidfile +after forking. +.It Nm "feed refresh\-all" +Performs a one-time fetch of all stale feeds. +This command can be used as the basis of a +.Nm cron +job to keep newsfeeds up-to-date. +.It Nm "feed refresh" Ar n +Performs a one-time fetch of the feed (not subscription) identified by integer +.Ar n Ns No . +This is used internally by the fetching service and should not normally be needed. +.It Nm "conf save\-defaults" Oo Ar file Oc +Prints default configuration parameters to standard output, or to +.Ar file +if specified. +Each parameter is annotated with a short description of its purpose and usage. +.El +. +. +.Sh USER METADATA +User metadata are primarily used by the Miniflux protocol, +and most properties have identical or similar names to those used by Miniflux. +Properties may also affect other protocols, or conversely may have no effect even when using the Miniflux protocol; +this is noted below when appropriate. +.Pp +Booleans accept any of the values +.Ar true Ns No / Ns Ar false Ns No , +.Ar 1 Ns No / Ns Ar 0 Ns No , +.Ar yes Ns No / Ns Ar no Ns No , +or +.Ar on Ns No / Ns Ar off Ns No . +.Pp +The following metadata properties exist for each user: +.Pp +.Bl -tag +.It Cm num No (integer) +The numeric identifier of the user. +This is assigned at user creation and is read-only. +.It Cm admin No (boolean) +Boolean. Whether the user is an administrator. +Administrators may manage other users via the Miniflux protocol, +and also may trigger feed updates manually via the Nextcloud News protocol. +.It Cm lang No (string) +The preferred language of the user as a BCP 47 language tag, for example "en-ca". +Note that since The Arsse currently only includes English text it is not used by The Arsse itself, +but clients may use this metadatum in protocols which expose it. +.It Cm tz No (string) +The time zone of the user as a Time Zone Database identifier, for example "America/Los_Angeles". +.It Cm root_folder_name No (string) +The name of the root folder, in protocols which allow it to be renamed. +.It Cm sort_asc No (boolean) +Whether the user prefers ascending sort order for articles. +Descending order is usually the default, +but explicitly setting this property false will also make a preference for descending order explicit. +.It Cm theme No (string) +The user's preferred user-interface theme. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.It Cm page_size No (integer) +The user's preferred page size when listing articles. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.It Cm shortcuts No (boolean) +Whether to enable keyboard shortcuts. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.It Cm gestures No (boolean) +Whether to enable touch gestures. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.It Cm reading_time No (boolean) +Whether to calculate and display the estimated reading time for articles. +Currently The Arsse does not calculate reading time, so changing this will likely have no effect. +.It Cm stylesheet No (string) +A user stylesheet in CSS format. +This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. +.El +. +. +.Sh EXAMPLES diff --git a/manpages/en.groff b/manpages/en.groff index adb9403..4dc9ba8 100644 --- a/manpages/en.groff +++ b/manpages/en.groff @@ -89,7 +89,7 @@ Further, seldom-used commands are documented in the following section . . .SH COMMANDS -.SS "Managing uses and metadata" +.SS "Managing users and metadata" .TP .BR "user " [ list ] Displays a simple list of user names with one entry per line @@ -132,7 +132,7 @@ Consult the section .B "USER METADATA" for details. .TP -.BR "user set " \c +.BR "user unset " \c .RI < username "> \c" .RI < property > Clears a metadata property for a user. @@ -153,7 +153,7 @@ As the Fever protocol requires that passwords be stored insecurely, users do not have Fever passwords by default, and logging in to the Fever protocol is disabled until a suitable password is set. It is highly recommended that a user's Fever password be different from their general password. .TP -.BR "user set\-pass " \c +.BR "user unset\-pass " \c .RI < username "> \c" .RB [ \-\-fever ] Unsets a user's password, effectively disabling their account. @@ -163,7 +163,7 @@ option may be used to operate on a user's Fever password instead of their genera .TP .BR "user auth " \c .RI < username "> \c" -.RI [< password ">] \c" +.RI < password "> \c" .RB [ \-\-fever ] Tests logging a user in. This only checks that the user's password is correctly recognized; From e20937f98f28b7f498f91db5f7c5e9d8645fcb38 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Fri, 27 Oct 2023 23:23:15 -0400 Subject: [PATCH 14/18] The rest of the mdoc manual --- manpages/arsse.1.en.mdoc | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/manpages/arsse.1.en.mdoc b/manpages/arsse.1.en.mdoc index 58dd034..1e5ac29 100644 --- a/manpages/arsse.1.en.mdoc +++ b/manpages/arsse.1.en.mdoc @@ -297,3 +297,46 @@ This is not used by The Arsse itself, but clients may use this metadatum in prot . . .Sh EXAMPLES +.Bl -tag +.It Add an administrator to the database with an explicit password: +.Bd -literal +$ arsse user add \-\-admin alice "Curiouser and curiouser!" +.Ed +.It Add a regular user to the database with a random password: +.Bd -literal +$ arsse user add "Bob the Builder" +bLS!$_UUZ!iN2i_!^IC6 +.Ed +.It Make Bob the Builder an administrator: +.Bd -literal +$ arsse user set "Bob the Builder" admin true +.Ed +.It Disable Alice's account by clearing her password: +.Bd -literal +$ arsse user unset\-pass alice +.Ed +.It Move all of Foobar's newsfeeds to the root folder: +.Bd -literal +$ arsse export foobar \-f | arsse import \-r foobar +.Ed +.It Fail to log in as Alice: +.Bd -literal +$ arsse user auth alice "Oh, dear!" +Authentication failed +$ echo $? +1 +.Ed +.El +. +. +.Sh REPORTING BUGS +Any bugs found in The Arsse may be reported on the Web via the +.Lk https://code.mensbeam.com/MensBeam/arsse "MensBeam code repository" +or may be directed to the principal authors by e-mail: +.Pp +.Bl -bullet -compact +.It +.Lk https://jkingweb.ca/ "J. King" +.It +.Lk https://dustinwilson.com/ "Dustin Wilson" +.El From 73446887f501d83c9bf3bcc3e864060495ceeeef Mon Sep 17 00:00:00 2001 From: "J. King" Date: Sat, 28 Oct 2023 08:06:49 -0400 Subject: [PATCH 15/18] Editorial tweak --- manpages/arsse.1.en.mdoc | 2 +- manpages/en.groff | 2 +- manpages/en.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manpages/arsse.1.en.mdoc b/manpages/arsse.1.en.mdoc index 1e5ac29..2b68913 100644 --- a/manpages/arsse.1.en.mdoc +++ b/manpages/arsse.1.en.mdoc @@ -79,7 +79,7 @@ Importing and exporting OPML newsfeed-lists .Pp These are documented in the next section .Sx COMMANDS Ns No . -Further, seldom-used commands are documented in the following section +Further, seldom-used commands are documented in the subsequent section .Sx ADDITIONAL COMMANDS Ns No . . . diff --git a/manpages/en.groff b/manpages/en.groff index 4dc9ba8..bdfb3e6 100644 --- a/manpages/en.groff +++ b/manpages/en.groff @@ -84,7 +84,7 @@ Importing and exporting OPML newsfeed-lists .P These are documented in the next section .BR COMMANDS . -Further, seldom-used commands are documented in the following section +Further, seldom-used commands are documented in the subsequent section .BR "ADDITIONAL COMMANDS" . . . diff --git a/manpages/en.md b/manpages/en.md index 4896367..55b1358 100644 --- a/manpages/en.md +++ b/manpages/en.md @@ -41,7 +41,7 @@ arsse - manage an instance of The Advanced RSS Environment (The Arsse) - Managing passwords and authentication tokens - Importing and exporting OPML newsfeed-lists -These are documented in the next section **PRIMARY COMMANDS**. Further, seldom-used commands are documented in the following section **ADDITIONAL COMMANDS**. +These are documented in the next section **PRIMARY COMMANDS**. Further, seldom-used commands are documented in the subsequent section **ADDITIONAL COMMANDS**. # PRIMARY COMMANDS From 692af39768a09c519a816eb66de4178ee70a5399 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Sun, 29 Oct 2023 22:20:14 -0400 Subject: [PATCH 16/18] Use mdoc manual directly without any preprocessing --- .gitignore | 1 - README.md | 33 +- RoboFile.php | 43 +- .../arsse.1.en.mdoc => dist/man/man1/arsse.1 | 0 manpages/en.groff | 405 ------------------ manpages/en.md | 226 ---------- 6 files changed, 24 insertions(+), 684 deletions(-) rename manpages/arsse.1.en.mdoc => dist/man/man1/arsse.1 (100%) delete mode 100644 manpages/en.groff delete mode 100644 manpages/en.md diff --git a/.gitignore b/.gitignore index b367592..1183244 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,6 @@ /dist/arch/arsse/ /dist/arch/src/ /dist/arch/pkg/ -/dist/man/ /arsse.db* /config.php /.php_cs.cache diff --git a/README.md b/README.md index ec1fc9f..efea0d3 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ Also necessary to the functioning of the application is the `/vendor/` directory The `/locale/` and `/sql/` directories contain human-language files and database schemata, both of which are occasionally used by the application in the course of execution. The `/www/` directory serves as a document root for a few static files to be made available to users by a Web server. -The `/dist/` directory, on the other hand, contains general and system-specific build files, and samples of configuration for Web servers and other system integration. These are not used by The Arsse itself, but are used during the process of preparing new releases for supported operating systems. +The `/dist/` directory, on the other hand, contains general and system-specific build files, manual pages, and samples of configuration for Web servers and other system integration. These are not used by The Arsse itself, but are used during the process of preparing new releases for supported operating systems. ## Documentation @@ -64,17 +64,17 @@ PHPUnit's configuration can be customized by copying its configuration file to ` The `/vendor-bin/` directory houses the files needed for the tools used in The Arsse's programming environment. These are managed by the Composer ["bin" plugin](https://github.com/bamarni/composer-bin-plugin) and are not used by The Arsse itself. The following files are also related to various programming tools: -| Path | Description | -|-------------------|----------------------------------------------------------| -| `/.gitattributes` | Git settings for handling files | -| `/.gitignore` | Git file exclusion patterns | -| `/.php_cs.dist` | Configuration for [php-cs-fixer](https://cs.symfony.com) | -| `/.php_cs.cache` | Cache for php-cs-fixer | -| `/composer.json` | Configuration for Composer | -| `/composer.lock` | Version synchronization data for Composer | -| `/RoboFile.php` | Task definitions for [Robo](https://robo.li/) | -| `/robo` | Simple wrapper for executing Robo on POSIX systems | -| `/robo.bat` | Simple wrapper for executing Robo on Windows | +| Path | Description | +|---------------------------|----------------------------------------------------------| +| `/.gitattributes` | Git settings for handling files | +| `/.gitignore` | Git file exclusion patterns | +| `/.php-cs-fixer.dist.php` | Configuration for [php-cs-fixer](https://cs.symfony.com) | +| `/.php-cs-fixer.cache` | Cache for php-cs-fixer | +| `/composer.json` | Configuration for Composer | +| `/composer.lock` | Version synchronization data for Composer | +| `/RoboFile.php` | Task definitions for [Robo](https://robo.li/) | +| `/robo` | Simple wrapper for executing Robo on POSIX systems | +| `/robo.bat` | Simple wrapper for executing Robo on Windows | In addition the files `/package.json` and `/postcss.config.js` as well as the `/node_modules/` directory are used by [Yarn](https://yarnpkg.com/) and [PostCSS](https://postcss.org/) when modifying the stylesheet for The Arsse's manual. @@ -90,11 +90,11 @@ There is also a `test:quick` Robo task which excludes slower tests, and a `test: ### Test coverage -Computing the coverage of tests can be done by running `./robo coverage`, after which an HTML-format coverage report will be written to `/tests/coverage/`. Either [PCOV](https://github.com/krakjoe/pcov), [Xdebug](https://xdebug.org), or [phpdbg](https://php.net/manual/en/book.phpdbg.php) is required for this. PCOV is generally recommended as it is faster than Xdebug; phpdbg is faster still, but less accurate. If using either PCOV or Xdebug, the extension need not be enabled globally; PHPUnit will enable it when needed. +Computing the coverage of tests can be done by running `./robo coverage`, after which an HTML-format coverage report will be written to `/tests/coverage/`. Either [PCOV](https://github.com/krakjoe/pcov) or [Xdebug](https://xdebug.org) is required for this. PCOV is generally recommended as it is faster than Xdebug. Neither extension need be enabled globally; Robo will enable it when needed. ## Enforcing coding style -The [php-cs-fixer](https://cs.symfony.com) tool, executed via `./robo clean`, can be used to rewrite code to adhere to The Arsse's coding style. The style largely follows [PSR-2](https://www.php-fig.org/psr/psr-2/) with some exceptions: +The [php-cs-fixer](https://cs.symfony.com) tool, executed via `./robo clean`, can be used to rewrite code to adhere to The Arsse's coding style. The style largely follows [PSR-12](https://www.php-fig.org/psr/psr-12/) with some exceptions: - Classes, methods, and functions should have their opening brace on the same line as the signature - Anonymous functions should have no space before the parameter list @@ -107,16 +107,11 @@ The Arsse's user manual, made using [Daux](https://daux.io/), can be compiled by The manual employs a custom theme derived from the standard Daux theme. If the standard Daux theme receives improvements, the custom theme can be rebuilt by running `./robo manual:theme`. This requires that [NodeJS](https://nodejs.org) and [Yarn](https://yarnpkg.com/) be installed, but JavaScript tools are not required to modify The Arsse itself, nor the content of the manual. -## Building the man page - -The Arsse's UNIX manual page is authored in Markdown, and must be converted to the native roff format using [Pandoc](https://pandoc.org/). This can be done by running `./robo manpage`, which will output appropriate files to `/dist/man/`. The conversion should not be done manually as there is post-processing required for optimal output. - ## Packaging a release Producing release packages is done by running `./robo package`. This performs the following operations: - Duplicates a [Git](https://git-scm.com/) working tree with the commit (usually a release tag) to package -- Generates UNIX manual pages with [Pandoc](https://pandoc.org/) - Generates the HTML manual - Installs runtime Composer dependencies with an optimized autoloader - Deletes numerous unneeded files diff --git a/RoboFile.php b/RoboFile.php index c3b586f..b0ca1e0 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -237,17 +237,17 @@ class RoboFile extends \Robo\Tasks { } // save commit description to VERSION file for reference $t->addTask($this->taskWriteToFile($dir."VERSION")->text($version)); - if (file_exists($dir."docs") || file_exists($dir."manpages")) { + if (file_exists($dir."docs") || file_exists($dir."manpages/en.md")) { // perform Composer installation in the temp location with dev dependencies to include Robo and Daux $t->addTask($this->taskExec("composer install")->arg("-q")->dir($dir)); - } - if (file_exists($dir."manpages")) { - // generate manpages - $t->addTask($this->taskExec("./robo manpage")->dir($dir)); - } - if (file_exists($dir."docs")) { - // generate the HTML manual - $t->addTask($this->taskExec("./robo manual -q")->dir($dir)); + if (file_exists($dir."docs")) { + // generate the HTML manual + $t->addTask($this->taskExec("./robo manual -q")->dir($dir)); + } + if (file_exists($dir."manpages/en.md")) { + // generate manpages (NOTE: obsolete process) + $t->addTask($this->taskExec("./robo manpage")->dir($dir)); + } } // perform Composer installation in the temp location for final output $t->addTask($this->taskExec("composer install")->dir($dir)->arg("--no-dev")->arg("-o")->arg("--no-scripts")->arg("-q")); @@ -454,29 +454,6 @@ class RoboFile extends \Robo\Tasks { return $t->run(); } - /** Generates the "arsse" command's manual page (UNIX man page) - * - * This requires that the Pandoc document converter be installed and - * available in $PATH. - */ - public function manpage(): Result { - if (!$this->toolExists("pandoc")) { - throw new \Exception("Pandoc is required in PATH to generate manual pages"); - } - $t = $this->collectionBuilder(); - $man = [ - 'en' => "man1/arsse.1", - ]; - foreach ($man as $src => $out) { - $src = BASE."manpages/$src.md"; - $out = BASE."dist/man/$out"; - $t->addTask($this->taskFilesystemStack()->mkdir(dirname($out), 0755)); - $t->addTask($this->taskExec("pandoc -s -f markdown-smart -t man -o ".escapeshellarg($out)." ".escapeshellarg($src))); - $t->addTask($this->taskReplaceInFile($out)->regex('/\.\n(?!\.)/s')->to(". ")); - } - return $t->run(); - } - /** Parses the contents of the CHANGELOG file into an array structure * * This is done line-by-line and tends to be quite strict. @@ -495,7 +472,7 @@ class RoboFile extends \Robo\Tasks { $expected = ["version"]; for ($a = 0; $a < sizeof($lines);) { $l = rtrim($lines[$a++]); - if (in_array("version", $expected) && preg_match('/^Version (\d+(?:\.\d+)*) \(([\d\?]{4}-[\d\?]{2}-[\d\?]{2})\)\s*$/D', $l, $m)) { + if (in_array("version", $expected) && preg_match('/^Version ([\d\?]+(?:\.[\d\?]+)*) \(([\d\?]{4}-[\d\?]{2}-[\d\?]{2})\)\s*$/D', $l, $m)) { $version = $m[1]; if (!preg_match('/^\d{4}-\d{2}-\d{2}$/D', $m[2])) { // uncertain dates are allowed only for the top version, and only if it does not match the target version (otherwise we have forgotten to set the correct date before tagging) diff --git a/manpages/arsse.1.en.mdoc b/dist/man/man1/arsse.1 similarity index 100% rename from manpages/arsse.1.en.mdoc rename to dist/man/man1/arsse.1 diff --git a/manpages/en.groff b/manpages/en.groff deleted file mode 100644 index bdfb3e6..0000000 --- a/manpages/en.groff +++ /dev/null @@ -1,405 +0,0 @@ -.\" This manual was written using stylistic recommendations from the very -.\" helpful groff_man_style(7) manual page with some suggestions from the -.\" man-pages(7) manual followed as well. When in doubt those manuals should -.\" be consulted while making edits to this document. -. -.TH ARSSE 1 "2023\-10\-26" "The Arsse 0.10.4" -. -.SH NAME -arsse \- manage an instance of The Advanced RSS Environment (The Arsse) -. -. -.SH SYNOPSIS -.SY "arsse user" -.RB [ list ] -.SY "arsse user add" -.RI < username > -.RI [< password >] -.RB [ \-\-admin ] -.SY "arsse user remove" -.RI < username > -.SY "arsse user show" -.RI < username > -.SY "arsse user set" -.RI < username > -.RI < property > -.RI < value > -.SY "arsse user unset" -.RI < username > -.RI < property > -.SY "arsse user set\-pass" -.RI < username > -.RI [< password >] -.RB [ \-\-fever ] -.SY "arsse user unset\-pass" -.RI < username > -.RB [ \-\-fever ] -.SY "arsse user auth" -.RI < username > -.RI [< password >] -.RB [ \-\-fever ] -.SY "arsse token list" -.RI < username > -.SY "arsse token create" -.RI < username > -.RI [< label >] -.SY "arsse token revoke" -.RI < username > -.RI [< token >] -.SY "arsse import" -.RI < username > -.RI [< file >] -.RB [ \-f | \-\-flat ] -.RB [ \-r | \-\-replace ] -.SY "arsse export" -.RI < username > -.RI [< file >] -.RB [ \-f | \-\-flat ] -.SY "arsse daemon" -.RB [ \-\-fork =\c -.IR pidfile ] -.SY "arsse feed refresh\-all" -.SY "arsse feed refresh" -.RI < n > -.SY "arsse conf save\-defaults" -.RI [< file >] -.SY "arsse \-\-version" -.SY "arsse" -.BR \-h | \-\-help -.YS -. -. -.SH DESCRIPTION -.P -.B arsse -allows a sufficiently privileged user to perform various administrative operations related to The Arsse, including: -.IP \[bu] 2 -.PD 0 -Adding and removing users and managing their metadata -.IP \[bu] 2 -Managing passwords and authentication tokens -.IP \[bu] 2 -Importing and exporting OPML newsfeed-lists -.PD -.P -These are documented in the next section -.BR COMMANDS . -Further, seldom-used commands are documented in the subsequent section -.BR "ADDITIONAL COMMANDS" . -. -. -.SH COMMANDS -.SS "Managing users and metadata" -.TP -.BR "user " [ list ] -Displays a simple list of user names with one entry per line -.TP -.BR "user add " \c -.RI < username "> [<" password ">] \c" -.RB [ \-\-admin ] -Adds a new user to the database with the specified username and password. -If -.I password -is omitted a random password will be generated and printed. -.IP -The -.B \-\-admin -flag may be used to mark the user as an administrator. -This has no meaning within the context of The Arsse as a whole, -but it is used control access to certain features in the Miniflux and Nextcloud News protocols. -.TP -.BR "user remove " \c -.RI < username > -Immediately removes a user from the database. -All associated data (folders, subscriptions, etc.) are also removed. -.TP -.BR "user show " \c -.RI < username > -Displays a table of metadata properties and their assigned values for -.IR username . -These properties are primarily used by the Miniflux protocol. -Consult the section -.B USER METADATA -for details. -.TP -.BR "user set " \c -.RI < username "> \c" -.RI < property "> \c" -.RI < value > -Sets a metadata property for a user. -These properties are primarily used by the Miniflux protocol. -Consult the section -.B "USER METADATA" -for details. -.TP -.BR "user unset " \c -.RI < username "> \c" -.RI < property > -Clears a metadata property for a user. -The property is thereafter set to its default value, which is protocol-dependent. -.SS "Managing passwords and authentication tokens" -.TP -.BR "user set\-pass " \c -.RI < username "> \c" -.RI [< password ">] \c" -.RB [ \-\-fever ] -Changes a user's password to the specified value. -If no password is specified, a random password will be generated and printed. -.IP -The -.B \-\-fever -option sets a user's Fever protocol password instead of their general password. -As the Fever protocol requires that passwords be stored insecurely, -users do not have Fever passwords by default, and logging in to the Fever protocol is disabled until a suitable password is set. -It is highly recommended that a user's Fever password be different from their general password. -.TP -.BR "user unset\-pass " \c -.RI < username "> \c" -.RB [ \-\-fever ] -Unsets a user's password, effectively disabling their account. -As with password setting, the -.B \-\-fever -option may be used to operate on a user's Fever password instead of their general password. -.TP -.BR "user auth " \c -.RI < username "> \c" -.RI < password "> \c" -.RB [ \-\-fever ] -Tests logging a user in. -This only checks that the user's password is correctly recognized; -it has no side effects. -.IP -The -.B \-\-fever -option may be used to test the user's Fever protocol password, if any. -.TP -.BR "token list " \c -.RI < username > -Displays a user's authentication tokens in a simple tabular format. -These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. -They do not expire. -.TP -.BR "token create " \c -.RI < username "> \c" -.RI [< label >] -Creates a new random login token and prints it. -These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. -An optional -.I label -may be specified to give the token a meaningful name. -.TP -.BR "token revoke " \c -.RI < username "> \c" -.RI [< token >] -Deletes the specified -.I token -from the database. The token itself must be supplied, not its label. -If it is omitted all tokens for -.I username -are revoked. -.SS "Importing and exporting data" -.TP -.BR "import " \c -.RI < username "> \c" -.RI [< file ">] \c" -.RB [ \-r | \-\-replace "] \c" -.RB [ \-f | \-\-flat ] -Imports the newsfeeds, folders, and tags found in the OPML formatted -.I file -into the account of the specified user. -If no file is specified, data is instead read from standard input. -Import operations are atomic: -if any of the newsfeeds listed in the input cannot be retrieved, the entire import operation will fail. -.IP -The -.BR \-\-replace " (or " \-r ) -option interprets the OPML file as the list of -.B all -desired newsfeeds, folders and tags, performing any deletion or moving of existing entries which do not appear in the flle. -If this option is not specified, the file is assumed to list desired -.B additions only. -.IP -The -.BR \-\-flat " (or " \-f ) -option can be used to ignore any folder structures in the file, importing any newsfeeds directly into the root folder. -Combining this with the -.B \-\-replace -option is possible. -.TP -.BR "export " \c -.RI < username "> \c" -.RI [< file ">] \c" -.RB [ \-f | \-\-flat ] -Exports a user's newsfeeds, folders, and tags to the OPML file specified by -.I file\c -, or standard output if no file is specified. -Note that due to a limitation of the OPML format, any commas present in tag names will not be retained in the export. -.IP -The -.BR \-\-flat " (or " \-f ) -option can be used to omit folders from the export. -Some OPML implementations may not support folders, or arbitrary nesting; -this option may be used when planning to import into such software. -. -. -.SH "ADDITIONAL COMMANDS" -.TP -.BR "daemon" \c -.RB [ \-\-fork =\c -.IR pidfile ] -Starts the newsfeed fetching service. -Normally this command is only invoked by systemd. -.IP -The -.B \-\-fork -option executes an "old-style" fork-then-terminate daemon rather than a "new-style" non-terminating daemon. -This option should only be employed if using a System V-style init daemon on POSIX systems; -normally systemd is used. When using this option the daemon will write its process identifier to -.I pidfile -after forking. -.TP -.BR "feed refresh\-all" -Performs a one-time fetch of all stale feeds. -This command can be used as the basis of a -.B cron -job to keep newsfeeds up-to-date. -.TP -.BR "feed refresh " \c -.RI < n > -Performs a one-time fetch of the feed (not subscription) identified by integer -.IR n . -This is used internally by the fetching service and should not normally be needed. -.TP -.BR "conf save\-defaults " \c -.RI [< file >] -Prints default configuration parameters to standard output, or to -.I file -if specified. -Each parameter is annotated with a short description of its purpose and usage. -. -. -.SH "USER METADATA" -User metadata are primarily used by the Miniflux protocol, -and most properties have identical or similar names to those used by Miniflux. -Properties may also affect other protocols, or conversely may have no effect even when using the Miniflux protocol; -this is noted below when appropriate. -.P -Booleans accept any of the values -.BR true / false , -.BR 1 / 0 , -.BR yes / no , -or -.BR on / off . -.P -The following metadata properties exist for each user: -.TP -.BR num " (integer)" -The numeric identifier of the user. -This is assigned at user creation and is read-only. -.TP -.BR admin " (boolean)" -Boolean. Whether the user is an administrator. -Administrators may manage other users via the Miniflux protocol, -and also may trigger feed updates manually via the Nextcloud News protocol. -.TP -.BR lang " (string)" -The preferred language of the user as a BCP 47 language tag, for example "en-ca". -Note that since The Arsse currently only includes English text it is not used by The Arsse itself, -but clients may use this metadatum in protocols which expose it. -.TP -.BR tz " (string)" -The time zone of the user as a Time Zone Database identifier, for example "America/Los_Angeles". -.TP -.BR root_folder_name " (string)" -The name of the root folder, in protocols which allow it to be renamed. -.TP -.BR sort_asc " (boolean)" -Whether the user prefers ascending sort order for articles. -Descending order is usually the default, -but explicitly setting this property false will also make a preference for descending order explicit. -.TP -.BR theme " (string)" -The user's preferred user-interface theme. -This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. -.TP -.BR page_size " (integer)" -The user's preferred page size when listing articles. -This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. -.TP -.BR shortcuts " (boolean)" -Whether to enable keyboard shortcuts. -This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. -.TP -.BR gestures " (boolean)" -Whether to enable touch gestures. -This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. -.TP -.BR reading_time " (boolean)" -Whether to calculate and display the estimated reading time for articles. -Currently The Arsse does not calculate reading time, so changing this will likely have no effect. -.TP -.BR stylesheet " (string)" -A user stylesheet in CSS format. -This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. -. -. -.SH EXAMPLES -.IP \[bu] 2 -Add an administrator to the database with an explicit password: -.EX -$ arsse user add \-\-admin alice "Curiouser and curiouser!" -.EE -.P -.IP \[bu] 2 -Add a regular user to the database with a random password: -.EX -$ arsse user add "Bob the Builder" -bLS!$_UUZ!iN2i_!\^IC6 -.EE -.P -.IP \[bu] 2 -Make Bob the Builder an administrator: -.EX -$ arsse user set "Bob the Builder" admin true -.EE -.P -.IP \[bu] 2 -Disable Alice's account by clearing her password: -.EX -$ arsse user unset\-pass alice -.EE -.P -.IP \[bu] 2 -Move all of Foobar's newsfeeds to the root folder: -.EX -$ arsse export foobar \-f | arsse import \-r foobar -.EE -.P -.IP \[bu] 2 -Fail to log in as Alice: -.EX -$ arsse user auth alice "Oh, dear!" -Authentication failed -$ echo $? -1 -.EE -.P -. -. -.SH "REPORTING BUGS" -.P -Any bugs found in The Arsse may be reported on the Web via the -.UR https://\:code.mensbeam.com/\:MensBeam/\:arsse -MensBeam code repository -.UE \c -\&. Reports may also be directed to the principal authors by e-mail: -.IP \[bu] 2 -.UR https://\:jkingweb.ca/ -J. King -.UE -.PD 0 -.IP \[bu] 2 -.UR https://\:dustinwilson.com/ -Dustin Wilson -.UE -.PD \ No newline at end of file diff --git a/manpages/en.md b/manpages/en.md deleted file mode 100644 index 55b1358..0000000 --- a/manpages/en.md +++ /dev/null @@ -1,226 +0,0 @@ ---- -title: "ARSSE" -section: 1 -date: 2021-07-03 -footer: "arsse 0.10.0" -header: "User Commands" ---- - -# NAME - -arsse - manage an instance of The Advanced RSS Environment (The Arsse) - -# SYNOPSIS - -**arsse user** [**list**]\ -**arsse user add** <_username_> [<_password_>] [**--admin**]\ -**arsse user remove** <_username_>\ -**arsse user show** <_username_>\ -**arsse user set** <_username_> <_property_> <_value_>\ -**arsse user unset** <_username_> <_property_>\ -**arsse user set-pass** <_username_> [<_password_>] [**--fever**]\ -**arsse user unset-pass** <_username_> [**--fever**]\ -**arsse user auth** <_username_> <_password_> [**--fever**]\ -**arsse token list** <_username_>\ -**arsse token create** <_username_> [<_label_>]\ -**arsse token revoke** <_username_> [<_token_>]\ -**arsse import** <_username_> [<_file_>] [**-f**|**--flat**] [**-r**|**--replace**]\ -**arsse export** <_username_> [<_file_>] [**-f**|**--flat**]\ -**arsse daemon** [**--fork=**<_pidfile_>]\ -**arsse feed refresh-all**\ -**arsse feed refresh** <_n_>\ -**arsse conf save-defaults** [<_file_>]\ -**arsse --version**\ -**arsse -h**|**--help** - -# DESCRIPTION - -**arsse** allows a sufficiently privileged user to perform various administrative operations related to The Arsse, including: - -- Adding and removing users and managing their metadata -- Managing passwords and authentication tokens -- Importing and exporting OPML newsfeed-lists - -These are documented in the next section **PRIMARY COMMANDS**. Further, seldom-used commands are documented in the subsequent section **ADDITIONAL COMMANDS**. - -# PRIMARY COMMANDS - -## Managing users and metadata - -**arsse user [list]** - -: Displays a simple list of user names with one entry per line - -**arsse user add** <_username_> [<_password_>] [**--admin**] - -: Adds a new user to the database with the specified username and password. If <_password_> is omitted a random password will be generated and printed. - - The **--admin** flag may be used to mark the user as an administrator. This has no meaning within the context of The Arsse as a whole, but it is used control access to certain features in the Miniflux and Nextcloud News protocols. - -**arsse user remove** <_username_> - -: Immediately removes a user from the database. All associated data (folders, subscriptions, etc.) are also removed. - -**arsse user show** <_username_> - -: Displays a table of metadata properties and their assigned values for <_username_>. These properties are primarily used by the Miniflux protocol. Consult the section **USER METADATA** for details. - -**arsse user set** <_username_> <_property_> <_value_> - -: Sets a metadata property for a user. These properties are primarily used by the Miniflux protocol. Consult the section **USER METADATA** for details. - -**arsse user unset** <_username_> <_property_> - -: Clears a metadata property for a user. The property is thereafter set to its default value, which is protocol-dependent. - -## Managing passwords and authentication tokens - -**arsse user set-pass** <_username_> [<_password_>] [**--fever**] - -: Changes a user's password to the specified value. If no password is specified, a random password will be generated and printed. - - The **--fever** option sets a user's Fever protocol password instead of their general password. As the Fever protocol requires that passwords be stored insecurely, users do not have Fever passwords by default, and logging in to the Fever protocol is disabled until a suitable password is set. It is highly recommended that a user's Fever password be different from their general password. - -**arsse user unset-pass** <_username_> [**--fever**] - -: Unsets a user's password, effectively disabling their account. As with password setting, the **--fever** option may be used to operate on a user's Fever password instead of their general password. - -**arsse user auth** <_username_> <_password_> [**--fever**] - -: Tests logging a user in. This only checks that the user's password is correctly recognized; it has no side effects. - - The **--fever** option may be used to test the user's Fever protocol password, if any. - -**arsse token list** <_username_> - -: Displays a user's authentication tokens in a simple tabular format. These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. They do not expire. - -**arsse token create** <_username_> [<_label_>] - -: Creates a new random login token and prints it. These tokens act as an alternative means of authentication for the Miniflux protocol and may be required by some clients. An optional <_label_> may be specified to give the token a meaningful name. - -**arsse token revoke** <_username_> [<_token_>] - -: Deletes the specified token from the database. The token itself must be supplied, not its label. If it is omitted all tokens are revoked. - -## Importing and exporting data - -**arsse import** <_username_> [<_file_>] [**-r**|**--replace**] [**-f**|**--flat**] - -: Imports the newsfeeds, folders, and tags found in the OPML formatted <_file_> into the account of the specified user. If no file is specified, data is instead read from standard input. Import operations are atomic: if any of the newsfeeds listed in the input cannot be retrieved, the entire import operation will fail. - - The **--replace** (or **-r**) option interprets the OPML file as the list of **all** desired newsfeeds, folders and tags, performing any deletion or moving of existing entries which do not appear in the flle. If this option is not specified, the file is assumed to list desired **additions** only. - - The **--flat** (or **-f**) option can be used to ignore any folder structures in the file, importing any newsfeeds directly into the root folder. Combining this with the **--replace** option is possible. - -**arsse export** <_username_> [<_file_>] [**-f**|**--flat**] - -: Exports a user's newsfeeds, folders, and tags to the OPML file specified by <_file_>, or standard output if no file is specified. Note that due to a limitation of the OPML format, any commas present in tag names will not be retained in the export. - - The **--flat** (or **-f**) option can be used to omit folders from the export. Some OPML implementations may not support folders, or arbitrary nesting; this option may be used when planning to import into such software. - -# ADDITIONAL COMMANDS - -**arsse daemon** [**--fork=**<_pidfile_>] - -: Starts the newsfeed fetching service. Normally this command is only invoked by Systemd. - - The **--fork** option executes an "old-style" fork-then-terminate daemon rather than a "new-style" non-terminating daemon. This option should only be employed if using a System V-style init daemon on POSIX systems; normally Systemd is used. When using this option the daemon will write its process identifier to <_pidfile_> after forking. - -**arsse feed refresh-all** - -: Performs a one-time fetch of all stale feeds. This command can be used as the basis of a **cron** job to keep newsfeeds up-to-date. - -**arsse feed refresh** <_n_> - -: Performs a one-time fetch of the feed (not subscription) identified by integer <_n_>. This is used internally by the fetching service and should not normally be needed. - -**arsse conf save-defaults** [<_file_>] - -: Prints default configuration parameters to standard output, or to <_file_> if specified. Each parameter is annotated with a short description of its purpose and usage. - -# USER METADATA - -User metadata are primarily used by the Miniflux protocol, and most properties have identical or similar names to those used by Miniflux. Properties may also affect other protocols, or conversely may have no effect even when using the Miniflux protocol; this is noted below when appropriate. - -Booleans accept any of the values **true**/**false**, **1**/**0**, **yes**/**no**, or **on**/**off**. - -The following metadata properties exist for each user: - -**num** -: Integer. The numeric identifier of the user. This is assigned at user creation and is read-only. - -**admin** -: Boolean. Whether the user is an administrator. Administrators may manage other users via the Miniflux protocol, and also may trigger feed updates manually via the Nextcloud News protocol. - -**lang** -: String. The preferred language of the user, as a BCP 47 language tag e.g. "en-ca". Note that since The Arsse currently only includes English text it is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -**tz** -: String. The time zone of the user, as a tzdata identifier e.g. "America/Los_Angeles". - -**root_folder_name** -: String. The name of the root folder, in protocols which allow it to be renamed. - -**sort_asc** -: Boolean. Whether the user prefers ascending sort order for articles. Descending order is usually the default, but explicitly setting this property false will also make a preference for descending order explicit. - -**theme** -: String. The user's preferred theme. This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -**page_size** -: Integer. The user's preferred page size when listing articles. This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -**shortcuts** -: Boolean. Whether to enable keyboard shortcuts. This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -**gestures** -: Boolean. Whether to enable touch gestures. This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -**reading_time** -: Boolean. Whether to calculate and display the estimated reading time for articles. Currently The Arsse does not calculate reading time, so changing this will likely have no effect. - -**stylesheet** -: String. A user CSS stylesheet. This is not used by The Arsse itself, but clients may use this metadatum in protocols which expose it. - -# EXAMPLES - -- Add an administrator to the database with an explicit password - - $ arsse user add --admin alice "Curiouser and curiouser!" - -- Add a regular user to the database with a random password - - $ arsse user add "Bob the Builder" - bLS!$_UUZ!iN2i_!^IC6 - -- Make Bob the Builder an administrator - - $ arsse user set "Bob the Builder" admin true - -- Disable Alice's account by clearing her password - - $ arsse user unset-pass alice - -- Move all of Foobar's newsfeeds to the root folder - - $ arsse export foobar -f | arsse import -r foobar - -- Fail to log in as Alice - - $ arsse user auth alice "Oh, dear!" - Authentication failed - $ echo $? - 1 - -# REPORTING BUGS - -Any bugs found in The Arsse may be reported on the Web at [https://code.mensbeam.com/MensBeam/arsse](). Reports may also be directed to the authors (below) by e-mail. - -# AUTHORS - -J. King\ -[https://jkingweb.ca/]() - -Dustin Wilson\ -[https://dustinwilson.com/]() From 9951b449327291171e27a26fb6c27c2c7c2956e8 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Wed, 1 Nov 2023 12:48:30 -0400 Subject: [PATCH 17/18] Update changelog --- CHANGELOG | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG b/CHANGELOG index 367585f..fc89404 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -3,6 +3,7 @@ Version 0.??.? (????-??-??) Changes: - Require PHP 7.3 +- Multiple editorial and stylistic changes to the UNIX manual page Version 0.10.4 (2023-01-24) =========================== From 185ae88ba3c4122041fb8cdd343e5d1c816c61d0 Mon Sep 17 00:00:00 2001 From: "J. King" Date: Fri, 22 Dec 2023 13:47:26 -0500 Subject: [PATCH 18/18] Correct outdated documentation --- docs/en/020_Getting_Started/050_Configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/020_Getting_Started/050_Configuration.md b/docs/en/020_Getting_Started/050_Configuration.md index cb5dc26..dd5376e 100644 --- a/docs/en/020_Getting_Started/050_Configuration.md +++ b/docs/en/020_Getting_Started/050_Configuration.md @@ -363,7 +363,7 @@ The default value is equal to two megabytes. |---------|---------| | boolean | `true` | -Whether to allow the possibility of fetching full article contents from an article's source, if a newsfeed only provides excerpts. Whether fetching will actually happen is governed by a per-newsfeed toggle (defaulting to `false`) which currently can only be changed by manually editing the database. +Whether to allow the possibility of fetching full article contents from an article's source, if a newsfeed only provides excerpts. Whether fetching will actually happen is governed by a per-newsfeed toggle (defaulting to `false`) which currently can only be changed via the Miniflux protocol. ### fetchUserAgentString