From aea5c474dbc0cdc466c5201effd49baaff720f67 Mon Sep 17 00:00:00 2001 From: Devonte W Date: Thu, 23 Feb 2023 19:19:58 +0000 Subject: [PATCH 1/4] fix(resources/api): allow svg xml format (#4705) --- resources/scripts/api/transformers.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/scripts/api/transformers.ts b/resources/scripts/api/transformers.ts index 4ed9a5df5..f2bea86d0 100644 --- a/resources/scripts/api/transformers.ts +++ b/resources/scripts/api/transformers.ts @@ -47,7 +47,7 @@ export const rawDataToFileObject = (data: FractalResponseData): FileObject => ({ isEditable: function () { if (this.isArchiveType() || !this.isFile) return false; - const matches = ['application/jar', 'application/octet-stream', 'inode/directory', /^image\//]; + const matches = ['application/jar', 'application/octet-stream', 'inode/directory', /^image\/(?!svg\+xml)/]; return matches.every((m) => !this.mimetype.match(m)); }, From b746c3ead1fca9e30624cdcc65c42532a7a6566b Mon Sep 17 00:00:00 2001 From: Devonte W Date: Thu, 23 Feb 2023 19:23:12 +0000 Subject: [PATCH 2/4] fix(api/client): add validation for backup request body (#4704) --- .../Api/Client/Servers/BackupController.php | 7 ++----- .../Servers/Backups/RestoreBackupRequest.php | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 app/Http/Requests/Api/Client/Servers/Backups/RestoreBackupRequest.php diff --git a/app/Http/Controllers/Api/Client/Servers/BackupController.php b/app/Http/Controllers/Api/Client/Servers/BackupController.php index 7a35341c1..11907c5b3 100644 --- a/app/Http/Controllers/Api/Client/Servers/BackupController.php +++ b/app/Http/Controllers/Api/Client/Servers/BackupController.php @@ -18,6 +18,7 @@ use Pterodactyl\Transformers\Api\Client\BackupTransformer; use Pterodactyl\Http\Controllers\Api\Client\ClientApiController; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; use Pterodactyl\Http\Requests\Api\Client\Servers\Backups\StoreBackupRequest; +use Pterodactyl\Http\Requests\Api\Client\Servers\Backups\RestoreBackupRequest; class BackupController extends ClientApiController { @@ -188,12 +189,8 @@ class BackupController extends ClientApiController * * @throws \Throwable */ - public function restore(Request $request, Server $server, Backup $backup): JsonResponse + public function restore(RestoreBackupRequest $request, Server $server, Backup $backup): JsonResponse { - if (!$request->user()->can(Permission::ACTION_BACKUP_RESTORE, $server)) { - throw new AuthorizationException(); - } - // Cannot restore a backup unless a server is fully installed and not currently // processing a different backup restoration request. if (!is_null($server->status)) { diff --git a/app/Http/Requests/Api/Client/Servers/Backups/RestoreBackupRequest.php b/app/Http/Requests/Api/Client/Servers/Backups/RestoreBackupRequest.php new file mode 100644 index 000000000..d2d427f99 --- /dev/null +++ b/app/Http/Requests/Api/Client/Servers/Backups/RestoreBackupRequest.php @@ -0,0 +1,19 @@ + 'required|boolean']; + } +} From ad4ddc63003dfad0ae82371f9a430ee62d4d90d6 Mon Sep 17 00:00:00 2001 From: Matthew Penner Date: Thu, 23 Feb 2023 11:22:34 -0700 Subject: [PATCH 3/4] nix: update flake --- flake.lock | 389 ++++++++++++++++++++++++++++++++++++++++++++++++++++- flake.nix | 247 +++++++++++++++++++++++++++++++++- shell.nix | 20 ++- 3 files changed, 635 insertions(+), 21 deletions(-) diff --git a/flake.lock b/flake.lock index 4a64ac964..b2ee20508 100644 --- a/flake.lock +++ b/flake.lock @@ -1,12 +1,157 @@ { "nodes": { + "alejandra": { + "inputs": { + "fenix": "fenix", + "flakeCompat": "flakeCompat", + "nixpkgs": [ + "dream2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1658427149, + "narHash": "sha256-ToD/1z/q5VHsLMrS2h96vjJoLho59eNRtknOUd19ey8=", + "owner": "kamadorueda", + "repo": "alejandra", + "rev": "f5a22afd2adfb249b4e68e0b33aa1f0fb73fb1be", + "type": "github" + }, + "original": { + "owner": "kamadorueda", + "repo": "alejandra", + "type": "github" + } + }, + "all-cabal-json": { + "flake": false, + "locked": { + "lastModified": 1665552503, + "narHash": "sha256-r14RmRSwzv5c+bWKUDaze6pXM7nOsiz1H8nvFHJvufc=", + "owner": "nix-community", + "repo": "all-cabal-json", + "rev": "d7c0434eebffb305071404edcf9d5cd99703878e", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "hackage", + "repo": "all-cabal-json", + "type": "github" + } + }, + "crane": { + "flake": false, + "locked": { + "lastModified": 1670900067, + "narHash": "sha256-VXVa+KBfukhmWizaiGiHRVX/fuk66P8dgSFfkVN4/MY=", + "owner": "ipetkov", + "repo": "crane", + "rev": "59b31b41a589c0a65e4a1f86b0e5eac68081468b", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "repo": "crane", + "type": "github" + } + }, + "devshell": { + "flake": false, + "locked": { + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "dream2nix": { + "inputs": { + "alejandra": "alejandra", + "all-cabal-json": "all-cabal-json", + "crane": "crane", + "devshell": "devshell", + "flake-parts": "flake-parts", + "flake-utils-pre-commit": "flake-utils-pre-commit", + "ghc-utils": "ghc-utils", + "gomod2nix": "gomod2nix", + "mach-nix": "mach-nix", + "nix-pypi-fetcher": "nix-pypi-fetcher", + "nixpkgs": [ + "nixpkgs" + ], + "poetry2nix": "poetry2nix", + "pre-commit-hooks": "pre-commit-hooks" + }, + "locked": { + "lastModified": 1674572627, + "narHash": "sha256-PpySmULdSrQ+NpVXmbMU6a7qo6apih99IMVyLH4qh2E=", + "owner": "nix-community", + "repo": "dream2nix", + "rev": "029dcc6358840143d5b63978c603f374d5a19583", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "dream2nix", + "type": "github" + } + }, + "fenix": { + "inputs": { + "nixpkgs": [ + "dream2nix", + "alejandra", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src" + }, + "locked": { + "lastModified": 1657607339, + "narHash": "sha256-HaqoAwlbVVZH2n4P3jN2FFPMpVuhxDy1poNOR7kzODc=", + "owner": "nix-community", + "repo": "fenix", + "rev": "b814c83d9e6aa5a28d0cf356ecfdafb2505ad37d", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "fenix", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1668450977, + "narHash": "sha256-cfLhMhnvXn6x1vPm+Jow3RiFAUSCw/l1utktCw5rVA4=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "d591857e9d7dd9ddbfba0ea02b43b927c3c0f1fa", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "owner": "numtide", "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { @@ -15,13 +160,132 @@ "type": "github" } }, + "flake-utils-pre-commit": { + "locked": { + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flakeCompat": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "ghc-utils": { + "flake": false, + "locked": { + "lastModified": 1662774800, + "narHash": "sha256-1Rd2eohGUw/s1tfvkepeYpg8kCEXiIot0RijapUjAkE=", + "ref": "refs/heads/master", + "rev": "bb3a2d3dc52ff0253fb9c2812bd7aa2da03e0fea", + "revCount": 1072, + "type": "git", + "url": "https://gitlab.haskell.org/bgamari/ghc-utils" + }, + "original": { + "type": "git", + "url": "https://gitlab.haskell.org/bgamari/ghc-utils" + } + }, + "gomod2nix": { + "flake": false, + "locked": { + "lastModified": 1627572165, + "narHash": "sha256-MFpwnkvQpauj799b4QTBJQFEddbD02+Ln5k92QyHOSk=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "67f22dd738d092c6ba88e420350ada0ed4992ae8", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "mach-nix": { + "flake": false, + "locked": { + "lastModified": 1634711045, + "narHash": "sha256-m5A2Ty88NChLyFhXucECj6+AuiMZPHXNbw+9Kcs7F6Y=", + "owner": "DavHau", + "repo": "mach-nix", + "rev": "4433f74a97b94b596fa6cd9b9c0402104aceef5d", + "type": "github" + }, + "original": { + "id": "mach-nix", + "type": "indirect" + } + }, + "mk-node-package": { + "inputs": { + "flake-utils": [ + "flake-utils" + ], + "nixpkgs": [ + "nixpkgs" + ], + "npmlock2nix": "npmlock2nix", + "pnpm2nix": "pnpm2nix" + }, + "locked": { + "lastModified": 1633790997, + "narHash": "sha256-1mk4EwNkWtTNpeRivZmJTzB+92g07maeFRVUMnnRh1U=", + "owner": "winston0410", + "repo": "mkNodePackage", + "rev": "a7eca5e027c8b260dca4ece7d8dd187f92420611", + "type": "github" + }, + "original": { + "owner": "winston0410", + "repo": "mkNodePackage", + "type": "github" + } + }, + "nix-pypi-fetcher": { + "flake": false, + "locked": { + "lastModified": 1669065297, + "narHash": "sha256-UStjXjNIuIm7SzMOWvuYWIHBkPUKQ8Id63BMJjnIDoA=", + "owner": "DavHau", + "repo": "nix-pypi-fetcher", + "rev": "a9885ac6a091576b5195d547ac743d45a2a615ac", + "type": "github" + }, + "original": { + "owner": "DavHau", + "repo": "nix-pypi-fetcher", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1666539104, - "narHash": "sha256-jeuC+d375wHHxMOFLgu7etseCQVJuPNKoEc9X9CsErg=", + "lastModified": 1674459583, + "narHash": "sha256-L0UZl/u2H3HGsrhN+by42c5kNYeKtdmJiPzIRvEVeiM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0e6df35f39651504249a05191f9a78d251707e22", + "rev": "1b1f50645af2a70dc93eae18bfd88d330bfbcf7f", "type": "github" }, "original": { @@ -31,11 +295,124 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1665349835, + "narHash": "sha256-UK4urM3iN80UXQ7EaOappDzcisYIuEURFRoGQ/yPkug=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "34c5293a71ffdb2fe054eb5288adc1882c1eb0b1", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "npmlock2nix": { + "flake": false, + "locked": { + "lastModified": 1633729941, + "narHash": "sha256-v2YPcEWI1Wz8ErivorubgLcDT06H6YzFT7uhp1ymqnE=", + "owner": "winston0410", + "repo": "npmlock2nix", + "rev": "6ade47a330b6919defb45c0eb984a64234aa8468", + "type": "github" + }, + "original": { + "owner": "winston0410", + "ref": "issue113", + "repo": "npmlock2nix", + "type": "github" + } + }, + "pnpm2nix": { + "flake": false, + "locked": { + "lastModified": 1594396611, + "narHash": "sha256-UXOUQ+2A89/zaxYhTHiRrRBU5exbUWrg+FoJYMcNwuI=", + "owner": "nix-community", + "repo": "pnpm2nix", + "rev": "f67be0925a91b92f54d99dbdead7a06920b979ac", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "master", + "repo": "pnpm2nix", + "type": "github" + } + }, + "poetry2nix": { + "flake": false, + "locked": { + "lastModified": 1666918719, + "narHash": "sha256-BkK42fjAku+2WgCOv2/1NrPa754eQPV7gPBmoKQBWlc=", + "owner": "nix-community", + "repo": "poetry2nix", + "rev": "289efb187123656a116b915206e66852f038720e", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "1.36.0", + "repo": "poetry2nix", + "type": "github" + } + }, + "pre-commit-hooks": { + "inputs": { + "flake-utils": [ + "dream2nix", + "flake-utils-pre-commit" + ], + "nixpkgs": [ + "dream2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1646153636, + "narHash": "sha256-AlWHMzK+xJ1mG267FdT8dCq/HvLCA6jwmx2ZUy5O8tY=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "b6bc0b21e1617e2b07d8205e7fae7224036dfa4b", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { + "dream2nix": "dream2nix", "flake-utils": "flake-utils", + "mk-node-package": "mk-node-package", "nixpkgs": "nixpkgs" } + }, + "rust-analyzer-src": { + "flake": false, + "locked": { + "lastModified": 1657557289, + "narHash": "sha256-PRW+nUwuqNTRAEa83SfX+7g+g8nQ+2MMbasQ9nt6+UM=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "caf23f29144b371035b864a1017dbc32573ad56d", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 050cc2415..3bbbfb233 100644 --- a/flake.nix +++ b/flake.nix @@ -2,21 +2,260 @@ description = "Pterodactyl Panel"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - flake-utils.url = "github:numtide/flake-utils"; + dream2nix = { + url = "github:nix-community/dream2nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + flake-utils = { + url = "github:numtide/flake-utils"; + }; + + mk-node-package = { + url = "github:winston0410/mkNodePackage"; + inputs = { + flake-utils.follows = "flake-utils"; + nixpkgs.follows = "nixpkgs"; + }; + }; + + nixpkgs = { + url = "github:NixOS/nixpkgs/nixos-unstable"; + }; }; outputs = { self, - nixpkgs, + dream2nix, flake-utils, + mk-node-package, + nixpkgs, ... }: flake-utils.lib.eachDefaultSystem ( system: let + version = "latest"; + pkgs = import nixpkgs {inherit system;}; + mkNodePackage = mk-node-package.lib."${system}".mkNodePackage; + + php81WithExtensions = with pkgs; (php81.buildEnv { + extensions = { + enabled, + all, + }: + enabled + ++ (with all; [ + redis + xdebug + ]); + extraConfig = '' + xdebug.mode=debug + ''; + }); + composer = with pkgs; (php81Packages.composer.override {php = php81WithExtensions;}); + + caCertificates = pkgs.runCommand "ca-certificates" {} '' + mkdir -p $out/etc/ssl/certs $out/etc/pki/tls/certs + ln -s ${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt $out/etc/ssl/certs/ca-bundle.crt + ln -s ${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt $out/etc/ssl/certs/ca-certificates.crt + ln -s ${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt $out/etc/pki/tls/certs/ca-bundle.crt + ''; + + caddyfile = pkgs.writeText "Caddyfile" '' + :80 { + root * /var/www/html/public/ + file_server + + header { + -Server + -X-Powered-By + Referrer-Policy "same-origin" + X-Frame-Options "deny" + X-XSS-Protection "1; mode=block" + X-Content-Type-Options "nosniff" + } + + encode gzip zstd + + php_fastcgi localhost:9000 + + try_files {path} {path}/ /index.php?{query} + } + ''; + + phpfpmConf = pkgs.writeText "php-fpm.conf" '' + [global] + error_log = /dev/stderr + daemonize = no + + [www] + user = nobody + group = nobody + + listen = 0.0.0.0:9000 + + pm = dynamic + pm.start_servers = 4 + pm.min_spare_servers = 4 + pm.max_spare_servers = 16 + pm.max_children = 64 + pm.max_requests = 256 + + clear_env = no + catch_workers_output = yes + + decorate_workers_output = no + ''; + + configs = pkgs.runCommand "configs" {} '' + mkdir -p $out/etc/caddy + ln -s ${caddyfile} $out/etc/caddy/Caddyfile + ln -s ${phpfpmConf} $out/etc/php-fpm.conf + ''; + + src = with pkgs.lib; + cleanSource (cleanSourceWith { + filter = name: type: let + baseName = baseNameOf (toString name); + in + !(builtins.elem baseName [ + ".direnv" + ".github" + "bootstrap/cache" + "node_modules" + "public/build" + "public/hot" + "storage" + "vendor" + ".editorconfig" + ".env" + ".env.testing" + ".envrc" + ".gitignore" + ".php-cs-fixer.cache" + ".phpunit.result.cache" + "BUILDING.md" + "CODE_OF_CONDUCT.md" + "CONTRIBUTING.md" + "docker-compose.development.yaml" + "docker-compose.example.yaml" + "docker-compose.yaml" + "flake.lock" + "flake.nix" + "shell.nix" + ]); + src = ./.; + }); + + app = + (dream2nix.lib.makeFlakeOutputs { + config.projectRoot = src; + source = src; + settings = [ + { + translator = "composer-lock"; + subsystemInfo.noDev = true; + } + ]; + systems = [system]; + autoProjects = true; + }) + .packages + ."${system}" + ."pterodactyl/panel"; + + ui = mkNodePackage { + inherit src version; + + pname = "pterodactyl"; + buildInputs = []; + + buildPhase = '' + yarn run build + ''; + + installPhase = '' + mkdir -p $out + cp -r public/build $out + ''; + }; + + panel = pkgs.stdenv.mkDerivation { + inherit src version; + + pname = "pterodactyl"; + buildInputs = [app ui]; + + installPhase = '' + cp -r ${app}/lib/vendor/pterodactyl/panel $out + + chmod 755 $out + chmod 755 $out/public + + mkdir -p $out/public/build + cp -r ${ui}/build/* $out/public/build + + rm $out/composer.json.orig + ''; + }; in { - devShell = import ./shell.nix {inherit pkgs;}; + defaultPackage = panel; + devShell = import ./shell.nix {inherit composer php81WithExtensions pkgs;}; + + packages = { + inherit panel; + + development = with pkgs; + dockerTools.buildImage { + name = "pterodactyl/development"; + tag = "panel"; + + copyToRoot = pkgs.buildEnv { + name = "image-root"; + paths = [ + dockerTools.fakeNss + caCertificates + caddy + composer + configs + coreutils + mysql80 + nodejs-18_x + nodePackages.npm + nodePackages.pnpm + nodePackages.yarn + php81WithExtensions + postgresql_14 + ]; + pathsToLink = ["/bin" "/etc"]; + }; + }; + + oci = with pkgs; + dockerTools.buildImage { + name = "pterodactyl/panel"; + tag = version; + + copyToRoot = buildEnv { + name = "image-root"; + paths = [ + dockerTools.fakeNss + caCertificates + caddy + configs + php81WithExtensions + + panel + ]; + pathsToLink = ["/bin" "/etc"]; + }; + + config = { + Cmd = []; + }; + }; + }; } ); } diff --git a/shell.nix b/shell.nix index afe21af5e..7ac24da45 100644 --- a/shell.nix +++ b/shell.nix @@ -1,17 +1,15 @@ -{pkgs ? import {}}: +{ + composer ? null, + php81WithExtensions ? null, + pkgs ? import {}, +}: with pkgs; mkShell rec { buildInputs = [ alejandra - (php81.buildEnv { - extensions = ({ enabled, all }: enabled ++ (with all; [ - redis - xdebug - ])); - extraConfig = '' - xdebug.mode=debug - ''; - }) - php81Packages.composer + composer + nodejs-18_x + nodePackages.yarn + php81WithExtensions ]; } From 1d38b4f0e201f5d42428fc39d45ff3d7ad842b55 Mon Sep 17 00:00:00 2001 From: Matthew Penner Date: Thu, 23 Feb 2023 12:30:16 -0700 Subject: [PATCH 4/4] Laravel 10 (#4706) --- .github/workflows/ci.yaml | 2 +- .../Environment/AppSettingsCommand.php | 3 +- .../Environment/DatabaseSettingsCommand.php | 3 +- .../CleanServiceBackupFilesCommand.php | 3 +- .../PruneOrphanedBackupsCommand.php | 3 +- .../Schedule/ProcessRunnableCommand.php | 3 +- app/Console/Commands/UpgradeCommand.php | 3 +- app/Console/Kernel.php | 7 +- app/Exceptions/AccountNotFoundException.php | 4 +- app/Exceptions/AutoDeploymentException.php | 4 +- app/Exceptions/DisplayException.php | 5 +- app/Exceptions/Handler.php | 20 +- .../Server/ServerStateConflictException.php | 3 +- .../Http/TwoFactorAuthRequiredException.php | 3 +- .../ManifestDoesNotExistException.php | 3 +- app/Exceptions/PterodactylException.php | 4 +- .../Helper/CdnVersionFetchingException.php | 4 +- .../Service/ServiceLimitExceededException.php | 3 +- app/Extensions/Backups/BackupManager.php | 7 +- .../Lcobucci/JWT/Encoding/TimestampDates.php | 3 +- app/Helpers/Utilities.php | 3 +- .../Controllers/Admin/DatabaseController.php | 9 +- .../Controllers/Admin/Nests/EggController.php | 3 +- .../Admin/Servers/CreateServerController.php | 3 +- .../Admin/Servers/ServerViewController.php | 3 +- .../Admin/Settings/MailController.php | 3 +- .../Api/Client/Servers/ScheduleController.php | 3 +- .../Remote/ActivityProcessingController.php | 6 +- app/Http/Kernel.php | 2 +- .../Middleware/Activity/AccountSubject.php | 3 +- .../Middleware/Activity/ServerSubject.php | 3 +- app/Http/Middleware/Activity/TrackAPIKey.php | 3 +- .../Admin/Servers/ServerInstalled.php | 3 +- app/Http/Middleware/AdminAuthenticate.php | 3 +- .../AuthenticateApplicationUser.php | 3 +- .../Middleware/Api/AuthenticateIPAccess.php | 3 +- .../Server/AuthenticateServerAccess.php | 3 +- .../Client/Server/ResourceBelongsToServer.php | 8 +- .../Api/Client/SubstituteClientBindings.php | 3 +- .../Api/Daemon/DaemonAuthenticate.php | 3 +- app/Http/Middleware/Api/IsValidJson.php | 6 +- app/Http/Middleware/LanguageMiddleware.php | 3 +- app/Http/Middleware/MaintenanceMiddleware.php | 3 +- .../Middleware/RedirectIfAuthenticated.php | 3 +- .../RequireTwoFactorAuthentication.php | 3 +- app/Http/Middleware/VerifyReCaptcha.php | 6 +- .../Api/Client/Account/StoreSSHKeyRequest.php | 3 +- app/Jobs/Schedule/RunTaskJob.php | 7 +- app/Models/ActivityLog.php | 3 +- app/Models/ApiKey.php | 13 +- app/Models/Backup.php | 5 +- app/Models/Filters/AdminServerFilter.php | 3 +- app/Models/Filters/MultiFieldServerFilter.php | 3 +- app/Models/Schedule.php | 10 +- app/Models/Server.php | 9 +- app/Models/TaskLog.php | 8 +- app/Models/User.php | 3 +- app/Providers/AppServiceProvider.php | 4 +- app/Providers/AuthServiceProvider.php | 6 +- app/Providers/BackupsServiceProvider.php | 2 +- app/Providers/BladeServiceProvider.php | 2 +- app/Providers/BroadcastServiceProvider.php | 2 +- app/Providers/HashidsServiceProvider.php | 2 +- app/Providers/RepositoryServiceProvider.php | 4 +- app/Providers/RouteServiceProvider.php | 4 +- app/Providers/SettingsServiceProvider.php | 2 +- app/Providers/ViewComposerServiceProvider.php | 2 +- .../Eloquent/PermissionRepository.php | 3 +- app/Repositories/Repository.php | 3 +- app/Services/Acl/Api/AdminAcl.php | 3 +- .../Allocations/AssignmentService.php | 3 +- .../Databases/DatabaseManagementService.php | 7 +- app/Services/Nodes/NodeJWTService.php | 5 +- .../Schedules/ProcessScheduleService.php | 4 +- .../Servers/ServerDeletionService.php | 3 +- .../Telemetry/TelemetryCollectionService.php | 3 +- app/Services/Users/TwoFactorSetupService.php | 6 +- .../Controllers/JavascriptInjection.php | 3 +- .../Controllers/PlainJavascriptInjection.php | 2 +- .../Services/ValidatesValidationRules.php | 3 +- .../Api/Client/EggVariableTransformer.php | 3 +- composer.json | 88 +- composer.lock | 3042 ++++++++--------- config/mail.php | 2 +- database/Factories/EggVariableFactory.php | 4 +- database/Factories/UserFactory.php | 2 +- ...dd_expires_at_column_to_api_keys_table.php | 27 + phpunit.xml | 3 +- .../Application/Users/UserControllerTest.php | 2 +- .../Api/Client/ApiKeyControllerTest.php | 2 +- .../Client/ClientApiIntegrationTestCase.php | 6 +- .../Api/Client/ClientControllerTest.php | 2 +- .../AllocationAuthorizationTest.php | 2 +- .../Allocation/CreateNewAllocationTest.php | 2 +- .../Allocation/DeleteAllocationTest.php | 5 +- .../Server/Backup/BackupAuthorizationTest.php | 5 +- .../Client/Server/Backup/DeleteBackupTest.php | 3 +- .../Client/Server/CommandControllerTest.php | 3 +- .../Database/DatabaseAuthorizationTest.php | 2 +- .../NetworkAllocationControllerTest.php | 2 +- .../Api/Client/Server/PowerControllerTest.php | 9 +- .../ResourceUtilizationControllerTest.php | 5 +- .../Schedule/CreateServerScheduleTest.php | 2 +- .../Schedule/DeleteServerScheduleTest.php | 2 +- .../Server/Schedule/ExecuteScheduleTest.php | 2 +- .../Schedule/GetServerSchedulesTest.php | 2 +- .../Schedule/ScheduleAuthorizationTest.php | 2 +- .../Schedule/UpdateServerScheduleTest.php | 2 +- .../CreateServerScheduleTaskTest.php | 2 +- .../Client/Server/SettingsControllerTest.php | 9 +- .../Startup/GetStartupAndVariablesTest.php | 2 +- .../Startup/UpdateStartupVariableTest.php | 2 +- .../Subuser/CreateServerSubuserTest.php | 2 +- .../Server/Subuser/DeleteSubuserTest.php | 3 +- .../Subuser/SubuserAuthorizationTest.php | 5 +- .../SftpAuthenticationControllerTest.php | 4 +- .../Jobs/Schedule/RunTaskJobTest.php | 31 +- .../FindAssignableAllocationServiceTest.php | 10 +- .../DatabaseManagementServiceTest.php | 19 +- .../DeployServerDatabaseServiceTest.php | 8 +- .../Deployment/FindViableNodesServiceTest.php | 14 +- .../Schedules/ProcessScheduleServiceTest.php | 12 +- .../Servers/BuildModificationServiceTest.php | 3 +- .../Servers/ServerCreationServiceTest.php | 3 +- .../Servers/ServerDeletionServiceTest.php | 16 +- .../StartupModificationServiceTest.php | 2 +- .../Servers/SuspensionServiceTest.php | 6 +- tests/Traits/Http/MocksMiddlewareClosure.php | 5 +- tests/Traits/Http/RequestMockHelpers.php | 3 +- tests/Traits/MocksPdoConnection.php | 2 +- tests/Traits/MocksRequestException.php | 3 +- .../Helpers/EnvironmentWriterTraitTest.php | 2 +- tests/Unit/Helpers/IsDigitTest.php | 2 +- .../Api/Daemon/DaemonAuthenticateTest.php | 2 +- tests/Unit/Rules/UsernameTest.php | 4 +- tests/Unit/Services/Acl/Api/AdminAclTest.php | 2 +- 136 files changed, 1735 insertions(+), 2008 deletions(-) create mode 100644 database/migrations/2023_02_23_191004_add_expires_at_column_to_api_keys_table.php diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4da19b6ed..1c8130552 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - php: [8.0, 8.1] + php: [8.1, 8.2] database: ["mariadb:10.2", "mysql:8"] services: database: diff --git a/app/Console/Commands/Environment/AppSettingsCommand.php b/app/Console/Commands/Environment/AppSettingsCommand.php index e3ffbcfbc..b143719fe 100644 --- a/app/Console/Commands/Environment/AppSettingsCommand.php +++ b/app/Console/Commands/Environment/AppSettingsCommand.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Console\Commands\Environment; -use DateTimeZone; use Illuminate\Console\Command; use Illuminate\Contracts\Console\Kernel; use Pterodactyl\Traits\Commands\EnvironmentWriterTrait; @@ -89,7 +88,7 @@ class AppSettingsCommand extends Command $this->output->comment('The timezone should match one of PHP\'s supported timezones. If you are unsure, please reference https://php.net/manual/en/timezones.php.'); $this->variables['APP_TIMEZONE'] = $this->option('timezone') ?? $this->anticipate( 'Application Timezone', - DateTimeZone::listIdentifiers(), + \DateTimeZone::listIdentifiers(), config('app.timezone') ); diff --git a/app/Console/Commands/Environment/DatabaseSettingsCommand.php b/app/Console/Commands/Environment/DatabaseSettingsCommand.php index 0186a12b1..fb4a2e25b 100644 --- a/app/Console/Commands/Environment/DatabaseSettingsCommand.php +++ b/app/Console/Commands/Environment/DatabaseSettingsCommand.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Console\Commands\Environment; -use PDOException; use Illuminate\Console\Command; use Illuminate\Contracts\Console\Kernel; use Illuminate\Database\DatabaseManager; @@ -72,7 +71,7 @@ class DatabaseSettingsCommand extends Command try { $this->testMySQLConnection(); - } catch (PDOException $exception) { + } catch (\PDOException $exception) { $this->output->error(sprintf('Unable to connect to the MySQL server using the provided credentials. The error returned was "%s".', $exception->getMessage())); $this->output->error('Your connection credentials have NOT been saved. You will need to provide valid connection information before proceeding.'); diff --git a/app/Console/Commands/Maintenance/CleanServiceBackupFilesCommand.php b/app/Console/Commands/Maintenance/CleanServiceBackupFilesCommand.php index fa71171ab..f256fe44f 100644 --- a/app/Console/Commands/Maintenance/CleanServiceBackupFilesCommand.php +++ b/app/Console/Commands/Maintenance/CleanServiceBackupFilesCommand.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Console\Commands\Maintenance; -use SplFileInfo; use Carbon\Carbon; use Illuminate\Console\Command; use Illuminate\Contracts\Filesystem\Filesystem; @@ -35,7 +34,7 @@ class CleanServiceBackupFilesCommand extends Command { $files = $this->disk->files('services/.bak'); - collect($files)->each(function (SplFileInfo $file) { + collect($files)->each(function (\SplFileInfo $file) { $lastModified = Carbon::createFromTimestamp($this->disk->lastModified($file->getPath())); if ($lastModified->diffInMinutes(Carbon::now()) > self::BACKUP_THRESHOLD_MINUTES) { $this->disk->delete($file->getPath()); diff --git a/app/Console/Commands/Maintenance/PruneOrphanedBackupsCommand.php b/app/Console/Commands/Maintenance/PruneOrphanedBackupsCommand.php index b51a415b2..1ddd8cea3 100644 --- a/app/Console/Commands/Maintenance/PruneOrphanedBackupsCommand.php +++ b/app/Console/Commands/Maintenance/PruneOrphanedBackupsCommand.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Console\Commands\Maintenance; use Carbon\CarbonImmutable; -use InvalidArgumentException; use Illuminate\Console\Command; use Pterodactyl\Repositories\Eloquent\BackupRepository; @@ -25,7 +24,7 @@ class PruneOrphanedBackupsCommand extends Command { $since = $this->option('prune-age') ?? config('backups.prune_age', 360); if (!$since || !is_digit($since)) { - throw new InvalidArgumentException('The "--prune-age" argument must be a value greater than 0.'); + throw new \InvalidArgumentException('The "--prune-age" argument must be a value greater than 0.'); } $query = $this->backupRepository->getBuilder() diff --git a/app/Console/Commands/Schedule/ProcessRunnableCommand.php b/app/Console/Commands/Schedule/ProcessRunnableCommand.php index 49043f0f8..d3dd134e5 100644 --- a/app/Console/Commands/Schedule/ProcessRunnableCommand.php +++ b/app/Console/Commands/Schedule/ProcessRunnableCommand.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Console\Commands\Schedule; use Exception; -use Throwable; use Illuminate\Console\Command; use Pterodactyl\Models\Schedule; use Illuminate\Support\Facades\Log; @@ -68,7 +67,7 @@ class ProcessRunnableCommand extends Command 'schedule' => $schedule->name, 'hash' => $schedule->hashid, ])); - } catch (Throwable|Exception $exception) { + } catch (\Throwable|\Exception $exception) { Log::error($exception, ['schedule_id' => $schedule->id]); $this->error("An error was encountered while processing Schedule #$schedule->id: " . $exception->getMessage()); diff --git a/app/Console/Commands/UpgradeCommand.php b/app/Console/Commands/UpgradeCommand.php index 54e54e465..6d033a51c 100644 --- a/app/Console/Commands/UpgradeCommand.php +++ b/app/Console/Commands/UpgradeCommand.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Console\Commands; -use Closure; use Illuminate\Console\Command; use Pterodactyl\Console\Kernel; use Symfony\Component\Process\Process; @@ -177,7 +176,7 @@ class UpgradeCommand extends Command $this->info('Panel has been successfully upgraded. Please ensure you also update any Wings instances: https://pterodactyl.io/wings/1.0/upgrading.html'); } - protected function withProgress(ProgressBar $bar, Closure $callback) + protected function withProgress(ProgressBar $bar, \Closure $callback) { $bar->clear(); $callback(); diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index f79e6c905..56343297c 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -18,7 +18,7 @@ class Kernel extends ConsoleKernel /** * Register the commands for the application. */ - protected function commands() + protected function commands(): void { $this->load(__DIR__ . '/Commands'); } @@ -26,8 +26,11 @@ class Kernel extends ConsoleKernel /** * Define the application's command schedule. */ - protected function schedule(Schedule $schedule) + protected function schedule(Schedule $schedule): void { + // https://laravel.com/docs/10.x/upgrade#redis-cache-tags + $schedule->command('cache:prune-stale-tags')->hourly(); + // Execute scheduled commands for servers every minute, as if there was a normal cron running. $schedule->command(ProcessRunnableCommand::class)->everyMinute()->withoutOverlapping(); $schedule->command(CleanServiceBackupFilesCommand::class)->daily(); diff --git a/app/Exceptions/AccountNotFoundException.php b/app/Exceptions/AccountNotFoundException.php index 832fbf2d1..3da3de250 100644 --- a/app/Exceptions/AccountNotFoundException.php +++ b/app/Exceptions/AccountNotFoundException.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Exceptions; -use Exception; - -class AccountNotFoundException extends Exception +class AccountNotFoundException extends \Exception { } diff --git a/app/Exceptions/AutoDeploymentException.php b/app/Exceptions/AutoDeploymentException.php index d1d3de5c5..20405fba2 100644 --- a/app/Exceptions/AutoDeploymentException.php +++ b/app/Exceptions/AutoDeploymentException.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Exceptions; -use Exception; - -class AutoDeploymentException extends Exception +class AutoDeploymentException extends \Exception { } diff --git a/app/Exceptions/DisplayException.php b/app/Exceptions/DisplayException.php index c29120f9a..c1440dbe0 100644 --- a/app/Exceptions/DisplayException.php +++ b/app/Exceptions/DisplayException.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Exceptions; use Exception; -use Throwable; use Illuminate\Http\Request; use Psr\Log\LoggerInterface; use Illuminate\Http\Response; @@ -23,7 +22,7 @@ class DisplayException extends PterodactylException implements HttpExceptionInte /** * DisplayException constructor. */ - public function __construct(string $message, ?Throwable $previous = null, protected string $level = self::LEVEL_ERROR, int $code = 0) + public function __construct(string $message, ?\Throwable $previous = null, protected string $level = self::LEVEL_ERROR, int $code = 0) { parent::__construct($message, $code, $previous); } @@ -67,7 +66,7 @@ class DisplayException extends PterodactylException implements HttpExceptionInte */ public function report() { - if (!$this->getPrevious() instanceof Exception || !Handler::isReportable($this->getPrevious())) { + if (!$this->getPrevious() instanceof \Exception || !Handler::isReportable($this->getPrevious())) { return null; } diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index bcc636b5c..80816b43f 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -3,8 +3,6 @@ namespace Pterodactyl\Exceptions; use Exception; -use Throwable; -use PDOException; use Illuminate\Support\Arr; use Illuminate\Support\Str; use Illuminate\Http\JsonResponse; @@ -75,13 +73,13 @@ class Handler extends ExceptionHandler * * @noinspection PhpUnusedLocalVariableInspection */ - public function register() + public function register(): void { if (config('app.exceptions.report_all', false)) { $this->dontReport = []; } - $this->reportable(function (PDOException $ex) { + $this->reportable(function (\PDOException $ex) { $ex = $this->generateCleanedExceptionStack($ex); }); @@ -90,7 +88,7 @@ class Handler extends ExceptionHandler }); } - private function generateCleanedExceptionStack(Throwable $exception): string + private function generateCleanedExceptionStack(\Throwable $exception): string { $cleanedStack = ''; foreach ($exception->getTrace() as $index => $item) { @@ -123,7 +121,7 @@ class Handler extends ExceptionHandler * * @throws \Throwable */ - public function render($request, Throwable $e): Response + public function render($request, \Throwable $e): Response { $connections = $this->container->make(Connection::class); @@ -189,7 +187,7 @@ class Handler extends ExceptionHandler /** * Return the exception as a JSONAPI representation for use on API requests. */ - protected function convertExceptionToArray(Throwable $e, array $override = []): array + protected function convertExceptionToArray(\Throwable $e, array $override = []): array { $match = self::$exceptionResponseCodes[get_class($e)] ?? null; @@ -235,7 +233,7 @@ class Handler extends ExceptionHandler /** * Return an array of exceptions that should not be reported. */ - public static function isReportable(Exception $exception): bool + public static function isReportable(\Exception $exception): bool { return (new static(Container::getInstance()))->shouldReport($exception); } @@ -260,11 +258,11 @@ class Handler extends ExceptionHandler * * @return \Throwable[] */ - protected function extractPrevious(Throwable $e): array + protected function extractPrevious(\Throwable $e): array { $previous = []; while ($value = $e->getPrevious()) { - if (!$value instanceof Throwable) { + if (!$value instanceof \Throwable) { break; } $previous[] = $value; @@ -278,7 +276,7 @@ class Handler extends ExceptionHandler * Helper method to allow reaching into the handler to convert an exception * into the expected array response type. */ - public static function toArray(Throwable $e): array + public static function toArray(\Throwable $e): array { return (new self(app()))->convertExceptionToArray($e); } diff --git a/app/Exceptions/Http/Server/ServerStateConflictException.php b/app/Exceptions/Http/Server/ServerStateConflictException.php index ea6a60a55..546024c23 100644 --- a/app/Exceptions/Http/Server/ServerStateConflictException.php +++ b/app/Exceptions/Http/Server/ServerStateConflictException.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Exceptions\Http\Server; -use Throwable; use Pterodactyl\Models\Server; use Symfony\Component\HttpKernel\Exception\ConflictHttpException; @@ -12,7 +11,7 @@ class ServerStateConflictException extends ConflictHttpException * Exception thrown when the server is in an unsupported state for API access or * certain operations within the codebase. */ - public function __construct(Server $server, Throwable $previous = null) + public function __construct(Server $server, \Throwable $previous = null) { $message = 'This server is currently in an unsupported state, please try again later.'; if ($server->isSuspended()) { diff --git a/app/Exceptions/Http/TwoFactorAuthRequiredException.php b/app/Exceptions/Http/TwoFactorAuthRequiredException.php index cecb64626..95f300e2e 100644 --- a/app/Exceptions/Http/TwoFactorAuthRequiredException.php +++ b/app/Exceptions/Http/TwoFactorAuthRequiredException.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Exceptions\Http; -use Throwable; use Illuminate\Http\Response; use Symfony\Component\HttpKernel\Exception\HttpException; use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface; @@ -12,7 +11,7 @@ class TwoFactorAuthRequiredException extends HttpException implements HttpExcept /** * TwoFactorAuthRequiredException constructor. */ - public function __construct(Throwable $previous = null) + public function __construct(\Throwable $previous = null) { parent::__construct(Response::HTTP_BAD_REQUEST, 'Two-factor authentication is required on this account in order to access this endpoint.', $previous); } diff --git a/app/Exceptions/ManifestDoesNotExistException.php b/app/Exceptions/ManifestDoesNotExistException.php index 2769cd03c..206af362d 100644 --- a/app/Exceptions/ManifestDoesNotExistException.php +++ b/app/Exceptions/ManifestDoesNotExistException.php @@ -2,11 +2,10 @@ namespace Pterodactyl\Exceptions; -use Exception; use Spatie\Ignition\Contracts\Solution; use Spatie\Ignition\Contracts\ProvidesSolution; -class ManifestDoesNotExistException extends Exception implements ProvidesSolution +class ManifestDoesNotExistException extends \Exception implements ProvidesSolution { public function getSolution(): Solution { diff --git a/app/Exceptions/PterodactylException.php b/app/Exceptions/PterodactylException.php index 51766a924..451ae92cb 100644 --- a/app/Exceptions/PterodactylException.php +++ b/app/Exceptions/PterodactylException.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Exceptions; -use Exception; - -class PterodactylException extends Exception +class PterodactylException extends \Exception { } diff --git a/app/Exceptions/Service/Helper/CdnVersionFetchingException.php b/app/Exceptions/Service/Helper/CdnVersionFetchingException.php index 34eb760bd..e085d3635 100644 --- a/app/Exceptions/Service/Helper/CdnVersionFetchingException.php +++ b/app/Exceptions/Service/Helper/CdnVersionFetchingException.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Exceptions\Service\Helper; -use Exception; - -class CdnVersionFetchingException extends Exception +class CdnVersionFetchingException extends \Exception { } diff --git a/app/Exceptions/Service/ServiceLimitExceededException.php b/app/Exceptions/Service/ServiceLimitExceededException.php index 7236034fe..450a1743b 100644 --- a/app/Exceptions/Service/ServiceLimitExceededException.php +++ b/app/Exceptions/Service/ServiceLimitExceededException.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Exceptions\Service; -use Throwable; use Pterodactyl\Exceptions\DisplayException; class ServiceLimitExceededException extends DisplayException @@ -11,7 +10,7 @@ class ServiceLimitExceededException extends DisplayException * Exception thrown when something goes over a defined limit, such as allocated * ports, tasks, databases, etc. */ - public function __construct(string $message, Throwable $previous = null) + public function __construct(string $message, \Throwable $previous = null) { parent::__construct($message, $previous, self::LEVEL_WARNING); } diff --git a/app/Extensions/Backups/BackupManager.php b/app/Extensions/Backups/BackupManager.php index 944e8d790..41e26c34c 100644 --- a/app/Extensions/Backups/BackupManager.php +++ b/app/Extensions/Backups/BackupManager.php @@ -7,7 +7,6 @@ use Aws\S3\S3Client; use Illuminate\Support\Arr; use Illuminate\Support\Str; use Webmozart\Assert\Assert; -use InvalidArgumentException; use Illuminate\Foundation\Application; use League\Flysystem\FilesystemAdapter; use Pterodactyl\Extensions\Filesystem\S3Filesystem; @@ -70,7 +69,7 @@ class BackupManager $config = $this->getConfig($name); if (empty($config['adapter'])) { - throw new InvalidArgumentException("Backup disk [$name] does not have a configured adapter."); + throw new \InvalidArgumentException("Backup disk [$name] does not have a configured adapter."); } $adapter = $config['adapter']; @@ -88,7 +87,7 @@ class BackupManager return $instance; } - throw new InvalidArgumentException("Adapter [$adapter] is not supported."); + throw new \InvalidArgumentException("Adapter [$adapter] is not supported."); } /** @@ -164,7 +163,7 @@ class BackupManager /** * Register a custom adapter creator closure. */ - public function extend(string $adapter, Closure $callback): self + public function extend(string $adapter, \Closure $callback): self { $this->customCreators[$adapter] = $callback; diff --git a/app/Extensions/Lcobucci/JWT/Encoding/TimestampDates.php b/app/Extensions/Lcobucci/JWT/Encoding/TimestampDates.php index e13133c34..e47a3fda0 100644 --- a/app/Extensions/Lcobucci/JWT/Encoding/TimestampDates.php +++ b/app/Extensions/Lcobucci/JWT/Encoding/TimestampDates.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Extensions\Lcobucci\JWT\Encoding; -use DateTimeImmutable; use Lcobucci\JWT\ClaimsFormatter; use Lcobucci\JWT\Token\RegisteredClaims; @@ -21,7 +20,7 @@ final class TimestampDates implements ClaimsFormatter continue; } - assert($claims[$claim] instanceof DateTimeImmutable); + assert($claims[$claim] instanceof \DateTimeImmutable); $claims[$claim] = $claims[$claim]->getTimestamp(); } diff --git a/app/Helpers/Utilities.php b/app/Helpers/Utilities.php index f6341c03d..0c468e0c7 100644 --- a/app/Helpers/Utilities.php +++ b/app/Helpers/Utilities.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Helpers; -use Exception; use Carbon\Carbon; use Cron\CronExpression; use Illuminate\Support\Facades\Log; @@ -25,7 +24,7 @@ class Utilities $string = substr_replace($string, $character, random_int(0, $length - 1), 1); } - } catch (Exception $exception) { + } catch (\Exception $exception) { // Just log the error and hope for the best at this point. Log::error($exception); } diff --git a/app/Http/Controllers/Admin/DatabaseController.php b/app/Http/Controllers/Admin/DatabaseController.php index e0dc0dc57..864fb0307 100644 --- a/app/Http/Controllers/Admin/DatabaseController.php +++ b/app/Http/Controllers/Admin/DatabaseController.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Http\Controllers\Admin; use Exception; -use PDOException; use Illuminate\View\View; use Pterodactyl\Models\DatabaseHost; use Illuminate\Http\RedirectResponse; @@ -69,8 +68,8 @@ class DatabaseController extends Controller { try { $host = $this->creationService->handle($request->normalize()); - } catch (Exception $exception) { - if ($exception instanceof PDOException || $exception->getPrevious() instanceof PDOException) { + } catch (\Exception $exception) { + if ($exception instanceof \PDOException || $exception->getPrevious() instanceof \PDOException) { $this->alert->danger( sprintf('There was an error while trying to connect to the host or while executing a query: "%s"', $exception->getMessage()) )->flash(); @@ -98,10 +97,10 @@ class DatabaseController extends Controller try { $this->updateService->handle($host->id, $request->normalize()); $this->alert->success('Database host was updated successfully.')->flash(); - } catch (Exception $exception) { + } catch (\Exception $exception) { // Catch any SQL related exceptions and display them back to the user, otherwise just // throw the exception like normal and move on with it. - if ($exception instanceof PDOException || $exception->getPrevious() instanceof PDOException) { + if ($exception instanceof \PDOException || $exception->getPrevious() instanceof \PDOException) { $this->alert->danger( sprintf('There was an error while trying to connect to the host or while executing a query: "%s"', $exception->getMessage()) )->flash(); diff --git a/app/Http/Controllers/Admin/Nests/EggController.php b/app/Http/Controllers/Admin/Nests/EggController.php index 010c28af0..e71e48e91 100644 --- a/app/Http/Controllers/Admin/Nests/EggController.php +++ b/app/Http/Controllers/Admin/Nests/EggController.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Controllers\Admin\Nests; -use JavaScript; use Illuminate\View\View; use Pterodactyl\Models\Egg; use Illuminate\Http\RedirectResponse; @@ -40,7 +39,7 @@ class EggController extends Controller public function create(): View { $nests = $this->nestRepository->getWithEggs(); - JavaScript::put(['nests' => $nests->keyBy('id')]); + \JavaScript::put(['nests' => $nests->keyBy('id')]); return $this->view->make('admin.eggs.new', ['nests' => $nests]); } diff --git a/app/Http/Controllers/Admin/Servers/CreateServerController.php b/app/Http/Controllers/Admin/Servers/CreateServerController.php index c7a1653ad..c0fee8c8e 100644 --- a/app/Http/Controllers/Admin/Servers/CreateServerController.php +++ b/app/Http/Controllers/Admin/Servers/CreateServerController.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Controllers\Admin\Servers; -use JavaScript; use Illuminate\View\View; use Pterodactyl\Models\Node; use Pterodactyl\Models\Location; @@ -45,7 +44,7 @@ class CreateServerController extends Controller $nests = $this->nestRepository->getWithEggs(); - JavaScript::put([ + \JavaScript::put([ 'nodeData' => $this->nodeRepository->getNodesForServerCreation(), 'nests' => $nests->map(function ($item) { return array_merge($item->toArray(), [ diff --git a/app/Http/Controllers/Admin/Servers/ServerViewController.php b/app/Http/Controllers/Admin/Servers/ServerViewController.php index 7cf64a2f5..58d8b7d1a 100644 --- a/app/Http/Controllers/Admin/Servers/ServerViewController.php +++ b/app/Http/Controllers/Admin/Servers/ServerViewController.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Controllers\Admin\Servers; -use JavaScript; use Illuminate\View\View; use Illuminate\Http\Request; use Pterodactyl\Models\Nest; @@ -134,7 +133,7 @@ class ServerViewController extends Controller $canTransfer = true; } - JavaScript::put([ + \JavaScript::put([ 'nodeData' => $this->nodeRepository->getNodesForServerCreation(), ]); diff --git a/app/Http/Controllers/Admin/Settings/MailController.php b/app/Http/Controllers/Admin/Settings/MailController.php index 050990d33..ab81ec06f 100644 --- a/app/Http/Controllers/Admin/Settings/MailController.php +++ b/app/Http/Controllers/Admin/Settings/MailController.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Controllers\Admin\Settings; -use Exception; use Illuminate\View\View; use Illuminate\Http\Request; use Illuminate\Http\Response; @@ -82,7 +81,7 @@ class MailController extends Controller try { Notification::route('mail', $request->user()->email) ->notify(new MailTested($request->user())); - } catch (Exception $exception) { + } catch (\Exception $exception) { return response($exception->getMessage(), 500); } diff --git a/app/Http/Controllers/Api/Client/Servers/ScheduleController.php b/app/Http/Controllers/Api/Client/Servers/ScheduleController.php index 50c04c70f..b955fb16b 100644 --- a/app/Http/Controllers/Api/Client/Servers/ScheduleController.php +++ b/app/Http/Controllers/Api/Client/Servers/ScheduleController.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Controllers\Api\Client\Servers; -use Exception; use Carbon\Carbon; use Illuminate\Http\Request; use Illuminate\Http\Response; @@ -178,7 +177,7 @@ class ScheduleController extends ClientApiController $request->input('month'), $request->input('day_of_week') ); - } catch (Exception $exception) { + } catch (\Exception $exception) { throw new DisplayException('The cron data provided does not evaluate to a valid expression.'); } } diff --git a/app/Http/Controllers/Api/Remote/ActivityProcessingController.php b/app/Http/Controllers/Api/Remote/ActivityProcessingController.php index ac9dd5416..b9d12c248 100644 --- a/app/Http/Controllers/Api/Remote/ActivityProcessingController.php +++ b/app/Http/Controllers/Api/Remote/ActivityProcessingController.php @@ -2,9 +2,7 @@ namespace Pterodactyl\Http\Controllers\Api\Remote; -use Exception; use Carbon\Carbon; -use DateTimeInterface; use Illuminate\Support\Str; use Pterodactyl\Models\User; use Webmozart\Assert\Assert; @@ -37,11 +35,11 @@ class ActivityProcessingController extends Controller try { $when = Carbon::createFromFormat( - DateTimeInterface::RFC3339, + \DateTimeInterface::RFC3339, preg_replace('/(\.\d+)Z$/', 'Z', $datum['timestamp']), 'UTC' ); - } catch (Exception $exception) { + } catch (\Exception $exception) { Log::warning($exception, ['timestamp' => $datum['timestamp']]); // If we cannot parse the value for some reason don't blow up this request, just go ahead diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 7df1ed2b1..b7085d9ed 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -86,7 +86,7 @@ class Kernel extends HttpKernel /** * The application's route middleware. */ - protected $routeMiddleware = [ + protected $middlewareAliases = [ 'auth' => Authenticate::class, 'auth.basic' => AuthenticateWithBasicAuth::class, 'auth.session' => AuthenticateSession::class, diff --git a/app/Http/Middleware/Activity/AccountSubject.php b/app/Http/Middleware/Activity/AccountSubject.php index 99db8c83a..fba1ea087 100644 --- a/app/Http/Middleware/Activity/AccountSubject.php +++ b/app/Http/Middleware/Activity/AccountSubject.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Activity; -use Closure; use Illuminate\Http\Request; use Pterodactyl\Facades\LogTarget; @@ -12,7 +11,7 @@ class AccountSubject * Sets the actor and default subject for all requests passing through this * middleware to be the currently logged in user. */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { LogTarget::setActor($request->user()); LogTarget::setSubject($request->user()); diff --git a/app/Http/Middleware/Activity/ServerSubject.php b/app/Http/Middleware/Activity/ServerSubject.php index f5c77b3ed..c4dd160c8 100644 --- a/app/Http/Middleware/Activity/ServerSubject.php +++ b/app/Http/Middleware/Activity/ServerSubject.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Activity; -use Closure; use Illuminate\Http\Request; use Pterodactyl\Models\Server; use Pterodactyl\Facades\LogTarget; @@ -17,7 +16,7 @@ class ServerSubject * If no server is found this is a no-op as the activity log service can always * set the user based on the authmanager response. */ - public function handle(Request $request, Closure $next) + public function handle(Request $request, \Closure $next) { $server = $request->route()->parameter('server'); if ($server instanceof Server) { diff --git a/app/Http/Middleware/Activity/TrackAPIKey.php b/app/Http/Middleware/Activity/TrackAPIKey.php index bf3394a23..78aa7055f 100644 --- a/app/Http/Middleware/Activity/TrackAPIKey.php +++ b/app/Http/Middleware/Activity/TrackAPIKey.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Activity; -use Closure; use Illuminate\Http\Request; use Pterodactyl\Models\ApiKey; use Pterodactyl\Facades\LogTarget; @@ -15,7 +14,7 @@ class TrackAPIKey * request singleton so that all tracked activity log events are properly associated * with the given API key. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { if ($request->user()) { $token = $request->user()->currentAccessToken(); diff --git a/app/Http/Middleware/Admin/Servers/ServerInstalled.php b/app/Http/Middleware/Admin/Servers/ServerInstalled.php index 63c90c397..ae99b896e 100644 --- a/app/Http/Middleware/Admin/Servers/ServerInstalled.php +++ b/app/Http/Middleware/Admin/Servers/ServerInstalled.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Admin\Servers; -use Closure; use Illuminate\Http\Request; use Illuminate\Http\Response; use Pterodactyl\Models\Server; @@ -14,7 +13,7 @@ class ServerInstalled /** * Checks that the server is installed before allowing access through the route. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Pterodactyl\Models\Server|null $server */ $server = $request->route()->parameter('server'); diff --git a/app/Http/Middleware/AdminAuthenticate.php b/app/Http/Middleware/AdminAuthenticate.php index 0bd024506..4c7f48bef 100644 --- a/app/Http/Middleware/AdminAuthenticate.php +++ b/app/Http/Middleware/AdminAuthenticate.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; use Illuminate\Http\Request; use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException; @@ -13,7 +12,7 @@ class AdminAuthenticate * * @throws \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { if (!$request->user() || !$request->user()->root_admin) { throw new AccessDeniedHttpException(); diff --git a/app/Http/Middleware/Api/Application/AuthenticateApplicationUser.php b/app/Http/Middleware/Api/Application/AuthenticateApplicationUser.php index 2e366c471..e6f83b433 100644 --- a/app/Http/Middleware/Api/Application/AuthenticateApplicationUser.php +++ b/app/Http/Middleware/Api/Application/AuthenticateApplicationUser.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api\Application; -use Closure; use Illuminate\Http\Request; use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException; @@ -12,7 +11,7 @@ class AuthenticateApplicationUser * Authenticate that the currently authenticated user is an administrator * and should be allowed to proceed through the application API. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Pterodactyl\Models\User|null $user */ $user = $request->user(); diff --git a/app/Http/Middleware/Api/AuthenticateIPAccess.php b/app/Http/Middleware/Api/AuthenticateIPAccess.php index c55ce8b3f..b8a9937ab 100644 --- a/app/Http/Middleware/Api/AuthenticateIPAccess.php +++ b/app/Http/Middleware/Api/AuthenticateIPAccess.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api; -use Closure; use IPTools\IP; use IPTools\Range; use Illuminate\Http\Request; @@ -18,7 +17,7 @@ class AuthenticateIPAccess * @throws \Exception * @throws \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Laravel\Sanctum\TransientToken|\Pterodactyl\Models\ApiKey $token */ $token = $request->user()->currentAccessToken(); diff --git a/app/Http/Middleware/Api/Client/Server/AuthenticateServerAccess.php b/app/Http/Middleware/Api/Client/Server/AuthenticateServerAccess.php index 358fb6d57..f60b696c1 100644 --- a/app/Http/Middleware/Api/Client/Server/AuthenticateServerAccess.php +++ b/app/Http/Middleware/Api/Client/Server/AuthenticateServerAccess.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api\Client\Server; -use Closure; use Illuminate\Http\Request; use Pterodactyl\Models\Server; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; @@ -27,7 +26,7 @@ class AuthenticateServerAccess /** * Authenticate that this server exists and is not suspended or marked as installing. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Pterodactyl\Models\User $user */ $user = $request->user(); diff --git a/app/Http/Middleware/Api/Client/Server/ResourceBelongsToServer.php b/app/Http/Middleware/Api/Client/Server/ResourceBelongsToServer.php index 5d3530d86..1157ddced 100644 --- a/app/Http/Middleware/Api/Client/Server/ResourceBelongsToServer.php +++ b/app/Http/Middleware/Api/Client/Server/ResourceBelongsToServer.php @@ -2,11 +2,9 @@ namespace Pterodactyl\Http\Middleware\Api\Client\Server; -use Closure; use Illuminate\Http\Request; use Pterodactyl\Models\Task; use Pterodactyl\Models\User; -use InvalidArgumentException; use Pterodactyl\Models\Backup; use Pterodactyl\Models\Server; use Pterodactyl\Models\Subuser; @@ -26,11 +24,11 @@ class ResourceBelongsToServer * server that is expected, and that we're not accessing a resource completely * unrelated to the server provided in the request. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { $params = $request->route()->parameters(); if (is_null($params) || !$params['server'] instanceof Server) { - throw new InvalidArgumentException('This middleware cannot be used in a context that is missing a server in the parameters.'); + throw new \InvalidArgumentException('This middleware cannot be used in a context that is missing a server in the parameters.'); } /** @var \Pterodactyl\Models\Server $server */ @@ -79,7 +77,7 @@ class ResourceBelongsToServer default: // Don't return a 404 here since we want to make sure no one relies // on this middleware in a context in which it will not work. Fail safe. - throw new InvalidArgumentException('There is no handler configured for a resource of this type: ' . get_class($model)); + throw new \InvalidArgumentException('There is no handler configured for a resource of this type: ' . get_class($model)); } } diff --git a/app/Http/Middleware/Api/Client/SubstituteClientBindings.php b/app/Http/Middleware/Api/Client/SubstituteClientBindings.php index ec30d80fd..af681467d 100644 --- a/app/Http/Middleware/Api/Client/SubstituteClientBindings.php +++ b/app/Http/Middleware/Api/Client/SubstituteClientBindings.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api\Client; -use Closure; use Pterodactyl\Models\Server; use Illuminate\Routing\Middleware\SubstituteBindings; @@ -11,7 +10,7 @@ class SubstituteClientBindings extends SubstituteBindings /** * @param \Illuminate\Http\Request $request */ - public function handle($request, Closure $next): mixed + public function handle($request, \Closure $next): mixed { // Override default behavior of the model binding to use a specific table // column rather than the default 'id'. diff --git a/app/Http/Middleware/Api/Daemon/DaemonAuthenticate.php b/app/Http/Middleware/Api/Daemon/DaemonAuthenticate.php index cea8bc5ed..6e5ae2a43 100644 --- a/app/Http/Middleware/Api/Daemon/DaemonAuthenticate.php +++ b/app/Http/Middleware/Api/Daemon/DaemonAuthenticate.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api\Daemon; -use Closure; use Illuminate\Http\Request; use Illuminate\Contracts\Encryption\Encrypter; use Pterodactyl\Repositories\Eloquent\NodeRepository; @@ -32,7 +31,7 @@ class DaemonAuthenticate * * @throws \Symfony\Component\HttpKernel\Exception\HttpException */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { if (in_array($request->route()->getName(), $this->except)) { return $next($request); diff --git a/app/Http/Middleware/Api/IsValidJson.php b/app/Http/Middleware/Api/IsValidJson.php index e35173aac..95101a1b2 100644 --- a/app/Http/Middleware/Api/IsValidJson.php +++ b/app/Http/Middleware/Api/IsValidJson.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Http\Middleware\Api; -use Closure; -use JsonException; use Illuminate\Http\Request; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; @@ -14,12 +12,12 @@ class IsValidJson * parsing the data. This avoids confusing validation errors where every field is flagged and * it is not immediately clear that there is an issue with the JSON being passed. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { if ($request->isJson() && !empty($request->getContent())) { try { json_decode($request->getContent(), true, 512, JSON_THROW_ON_ERROR); - } catch (JsonException $exception) { + } catch (\JsonException $exception) { throw new BadRequestHttpException('The JSON data passed in the request appears to be malformed: ' . $exception->getMessage()); } } diff --git a/app/Http/Middleware/LanguageMiddleware.php b/app/Http/Middleware/LanguageMiddleware.php index 2f0d53b47..e98ad2863 100644 --- a/app/Http/Middleware/LanguageMiddleware.php +++ b/app/Http/Middleware/LanguageMiddleware.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; use Illuminate\Http\Request; use Illuminate\Foundation\Application; @@ -18,7 +17,7 @@ class LanguageMiddleware /** * Handle an incoming request and set the user's preferred language. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { $this->app->setLocale($request->user()->language ?? config('app.locale', 'en')); diff --git a/app/Http/Middleware/MaintenanceMiddleware.php b/app/Http/Middleware/MaintenanceMiddleware.php index 9899542d1..61247b4e0 100644 --- a/app/Http/Middleware/MaintenanceMiddleware.php +++ b/app/Http/Middleware/MaintenanceMiddleware.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; use Illuminate\Http\Request; use Illuminate\Contracts\Routing\ResponseFactory; @@ -18,7 +17,7 @@ class MaintenanceMiddleware /** * Handle an incoming request. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Pterodactyl\Models\Server $server */ $server = $request->attributes->get('server'); diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/Http/Middleware/RedirectIfAuthenticated.php index c1efd927d..ad3eecdc7 100644 --- a/app/Http/Middleware/RedirectIfAuthenticated.php +++ b/app/Http/Middleware/RedirectIfAuthenticated.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; use Illuminate\Http\Request; use Illuminate\Auth\AuthManager; @@ -18,7 +17,7 @@ class RedirectIfAuthenticated /** * Handle an incoming request. */ - public function handle(Request $request, Closure $next, string $guard = null): mixed + public function handle(Request $request, \Closure $next, string $guard = null): mixed { if ($this->authManager->guard($guard)->check()) { return redirect()->route('index'); diff --git a/app/Http/Middleware/RequireTwoFactorAuthentication.php b/app/Http/Middleware/RequireTwoFactorAuthentication.php index e3307727f..090e146c4 100644 --- a/app/Http/Middleware/RequireTwoFactorAuthentication.php +++ b/app/Http/Middleware/RequireTwoFactorAuthentication.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; use Illuminate\Support\Str; use Illuminate\Http\Request; use Prologue\Alerts\AlertsMessageBag; @@ -34,7 +33,7 @@ class RequireTwoFactorAuthentication * * @throws \Pterodactyl\Exceptions\Http\TwoFactorAuthRequiredException */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { /** @var \Pterodactyl\Models\User $user */ $user = $request->user(); diff --git a/app/Http/Middleware/VerifyReCaptcha.php b/app/Http/Middleware/VerifyReCaptcha.php index 45ae4bb23..ef251c333 100644 --- a/app/Http/Middleware/VerifyReCaptcha.php +++ b/app/Http/Middleware/VerifyReCaptcha.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Http\Middleware; -use Closure; -use stdClass; use GuzzleHttp\Client; use Illuminate\Http\Request; use Illuminate\Http\Response; @@ -24,7 +22,7 @@ class VerifyReCaptcha /** * Handle an incoming request. */ - public function handle(Request $request, Closure $next): mixed + public function handle(Request $request, \Closure $next): mixed { if (!$this->config->get('recaptcha.enabled')) { return $next($request); @@ -61,7 +59,7 @@ class VerifyReCaptcha /** * Determine if the response from the recaptcha servers was valid. */ - private function isResponseVerified(stdClass $result, Request $request): bool + private function isResponseVerified(\stdClass $result, Request $request): bool { if (!$this->config->get('recaptcha.verify_domain')) { return false; diff --git a/app/Http/Requests/Api/Client/Account/StoreSSHKeyRequest.php b/app/Http/Requests/Api/Client/Account/StoreSSHKeyRequest.php index bddea153b..3c8cf89ed 100644 --- a/app/Http/Requests/Api/Client/Account/StoreSSHKeyRequest.php +++ b/app/Http/Requests/Api/Client/Account/StoreSSHKeyRequest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Http\Requests\Api\Client\Account; -use Exception; use phpseclib3\Crypt\DSA; use phpseclib3\Crypt\RSA; use Pterodactyl\Models\UserSSHKey; @@ -71,7 +70,7 @@ class StoreSSHKeyRequest extends ClientApiRequest public function getKeyFingerprint(): string { if (!$this->key) { - throw new Exception('The public key was not properly loaded for this request.'); + throw new \Exception('The public key was not properly loaded for this request.'); } return $this->key->getFingerprint('sha256'); diff --git a/app/Jobs/Schedule/RunTaskJob.php b/app/Jobs/Schedule/RunTaskJob.php index 1e1ab2bb3..be52a4dba 100644 --- a/app/Jobs/Schedule/RunTaskJob.php +++ b/app/Jobs/Schedule/RunTaskJob.php @@ -6,7 +6,6 @@ use Exception; use Pterodactyl\Jobs\Job; use Carbon\CarbonImmutable; use Pterodactyl\Models\Task; -use InvalidArgumentException; use Illuminate\Queue\SerializesModels; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; @@ -72,9 +71,9 @@ class RunTaskJob extends Job implements ShouldQueue $backupService->setIgnoredFiles(explode(PHP_EOL, $this->task->payload))->handle($server, null, true); break; default: - throw new InvalidArgumentException('Invalid task action provided: ' . $this->task->action); + throw new \InvalidArgumentException('Invalid task action provided: ' . $this->task->action); } - } catch (Exception $exception) { + } catch (\Exception $exception) { // If this isn't a DaemonConnectionException on a task that allows for failures // throw the exception back up the chain so that the task is stopped. if (!($this->task->continue_on_failure && $exception instanceof DaemonConnectionException)) { @@ -89,7 +88,7 @@ class RunTaskJob extends Job implements ShouldQueue /** * Handle a failure while sending the action to the daemon or otherwise processing the job. */ - public function failed(Exception $exception = null) + public function failed(\Exception $exception = null) { $this->markTaskNotQueued(); $this->markScheduleComplete(); diff --git a/app/Models/ActivityLog.php b/app/Models/ActivityLog.php index 7d900427a..e8f8a4e30 100644 --- a/app/Models/ActivityLog.php +++ b/app/Models/ActivityLog.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Models; use Carbon\Carbon; -use LogicException; use Illuminate\Support\Facades\Event; use Pterodactyl\Events\ActivityLogged; use Illuminate\Database\Eloquent\Builder; @@ -124,7 +123,7 @@ class ActivityLog extends Model public function prunable() { if (is_null(config('activity.prune_days'))) { - throw new LogicException('Cannot prune activity logs: no "prune_days" configuration value is set.'); + throw new \LogicException('Cannot prune activity logs: no "prune_days" configuration value is set.'); } return static::where('timestamp', '<=', Carbon::now()->subDays(config('activity.prune_days'))); diff --git a/app/Models/ApiKey.php b/app/Models/ApiKey.php index 5bfb89549..e141e89a2 100644 --- a/app/Models/ApiKey.php +++ b/app/Models/ApiKey.php @@ -18,6 +18,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo; * @property array|null $allowed_ips * @property string|null $memo * @property \Illuminate\Support\Carbon|null $last_used_at + * @property \Illuminate\Support\Carbon|null $expires_at * @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $updated_at * @property int $r_servers @@ -97,6 +98,10 @@ class ApiKey extends Model protected $casts = [ 'allowed_ips' => 'array', 'user_id' => 'int', + 'last_used_at' => 'datetime', + 'expires_at' => 'datetime', + self::CREATED_AT => 'datetime', + self::UPDATED_AT => 'datetime', 'r_' . AdminAcl::RESOURCE_USERS => 'int', 'r_' . AdminAcl::RESOURCE_ALLOCATIONS => 'int', 'r_' . AdminAcl::RESOURCE_DATABASE_HOSTS => 'int', @@ -117,6 +122,7 @@ class ApiKey extends Model 'allowed_ips', 'memo', 'last_used_at', + 'expires_at', ]; /** @@ -137,6 +143,7 @@ class ApiKey extends Model 'allowed_ips' => 'nullable|array', 'allowed_ips.*' => 'string', 'last_used_at' => 'nullable|date', + 'expires_at' => 'nullable|date', 'r_' . AdminAcl::RESOURCE_USERS => 'integer|min:0|max:3', 'r_' . AdminAcl::RESOURCE_ALLOCATIONS => 'integer|min:0|max:3', 'r_' . AdminAcl::RESOURCE_DATABASE_HOSTS => 'integer|min:0|max:3', @@ -148,12 +155,6 @@ class ApiKey extends Model 'r_' . AdminAcl::RESOURCE_SERVERS => 'integer|min:0|max:3', ]; - protected $dates = [ - self::CREATED_AT, - self::UPDATED_AT, - 'last_used_at', - ]; - /** * Returns the user this token is assigned to. */ diff --git a/app/Models/Backup.php b/app/Models/Backup.php index 41c94fee2..c9a75ccfc 100644 --- a/app/Models/Backup.php +++ b/app/Models/Backup.php @@ -43,10 +43,7 @@ class Backup extends Model 'is_locked' => 'bool', 'ignored_files' => 'array', 'bytes' => 'int', - ]; - - protected $dates = [ - 'completed_at', + 'completed_at' => 'datetime', ]; protected $attributes = [ diff --git a/app/Models/Filters/AdminServerFilter.php b/app/Models/Filters/AdminServerFilter.php index 32580ea51..638946734 100644 --- a/app/Models/Filters/AdminServerFilter.php +++ b/app/Models/Filters/AdminServerFilter.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Models\Filters; -use BadMethodCallException; use Spatie\QueryBuilder\Filters\Filter; use Illuminate\Database\Eloquent\Builder; @@ -17,7 +16,7 @@ class AdminServerFilter implements Filter public function __invoke(Builder $query, $value, string $property) { if ($query->getQuery()->from !== 'servers') { - throw new BadMethodCallException('Cannot use the AdminServerFilter against a non-server model.'); + throw new \BadMethodCallException('Cannot use the AdminServerFilter against a non-server model.'); } $query ->select('servers.*') diff --git a/app/Models/Filters/MultiFieldServerFilter.php b/app/Models/Filters/MultiFieldServerFilter.php index 2aac64e81..fe0a7ebd5 100644 --- a/app/Models/Filters/MultiFieldServerFilter.php +++ b/app/Models/Filters/MultiFieldServerFilter.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Models\Filters; -use BadMethodCallException; use Illuminate\Support\Str; use Spatie\QueryBuilder\Filters\Filter; use Illuminate\Database\Eloquent\Builder; @@ -25,7 +24,7 @@ class MultiFieldServerFilter implements Filter public function __invoke(Builder $query, $value, string $property) { if ($query->getQuery()->from !== 'servers') { - throw new BadMethodCallException('Cannot use the MultiFieldServerFilter against a non-server model.'); + throw new \BadMethodCallException('Cannot use the MultiFieldServerFilter against a non-server model.'); } if (preg_match(self::IPV4_REGEX, $value) || preg_match('/^:\d{1,5}$/', $value)) { diff --git a/app/Models/Schedule.php b/app/Models/Schedule.php index 183ebb82b..a61bd3cd8 100644 --- a/app/Models/Schedule.php +++ b/app/Models/Schedule.php @@ -71,14 +71,8 @@ class Schedule extends Model 'is_active' => 'boolean', 'is_processing' => 'boolean', 'only_when_online' => 'boolean', - ]; - - /** - * Columns to mutate to a date. - */ - protected $dates = [ - 'last_run_at', - 'next_run_at', + 'last_run_at' => 'datetime', + 'next_run_at' => 'datetime', ]; protected $attributes = [ diff --git a/app/Models/Server.php b/app/Models/Server.php index 5f2d6a49e..d53af3038 100644 --- a/app/Models/Server.php +++ b/app/Models/Server.php @@ -139,11 +139,6 @@ class Server extends Model */ protected $with = ['allocation']; - /** - * The attributes that should be mutated to dates. - */ - protected $dates = [self::CREATED_AT, self::UPDATED_AT, 'deleted_at', 'installed_at']; - /** * Fields that are not mass assignable. */ @@ -193,6 +188,10 @@ class Server extends Model 'database_limit' => 'integer', 'allocation_limit' => 'integer', 'backup_limit' => 'integer', + self::CREATED_AT => 'datetime', + self::UPDATED_AT => 'datetime', + 'deleted_at' => 'datetime', + 'installed_at' => 'datetime', ]; /** diff --git a/app/Models/TaskLog.php b/app/Models/TaskLog.php index 0efd77ff4..81b7fdb78 100644 --- a/app/Models/TaskLog.php +++ b/app/Models/TaskLog.php @@ -23,10 +23,8 @@ class TaskLog extends Model 'id' => 'integer', 'task_id' => 'integer', 'run_status' => 'integer', + 'run_time' => 'datetime', + 'created_at' => 'datetime', + 'updated_at' => 'datetime', ]; - - /** - * The attributes that should be mutated to dates. - */ - protected $dates = ['run_time', 'created_at', 'updated_at']; } diff --git a/app/Models/User.php b/app/Models/User.php index df8271cf4..c22c21c81 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -134,10 +134,9 @@ class User extends Model implements 'root_admin' => 'boolean', 'use_totp' => 'boolean', 'gravatar' => 'boolean', + 'totp_authenticated_at' => 'datetime', ]; - protected $dates = ['totp_authenticated_at']; - /** * The attributes excluded from the model's JSON form. */ diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 6a805bad3..63c12014b 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -18,7 +18,7 @@ class AppServiceProvider extends ServiceProvider /** * Bootstrap any application services. */ - public function boot() + public function boot(): void { Schema::defaultStringLength(191); @@ -54,7 +54,7 @@ class AppServiceProvider extends ServiceProvider /** * Register application service providers. */ - public function register() + public function register(): void { // Only load the settings service provider if the environment // is configured to allow it. diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php index fed77e15a..9f9556b9a 100644 --- a/app/Providers/AuthServiceProvider.php +++ b/app/Providers/AuthServiceProvider.php @@ -17,14 +17,12 @@ class AuthServiceProvider extends ServiceProvider Server::class => ServerPolicy::class, ]; - public function boot() + public function boot(): void { Sanctum::usePersonalAccessTokenModel(ApiKey::class); - - $this->registerPolicies(); } - public function register() + public function register(): void { Sanctum::ignoreMigrations(); } diff --git a/app/Providers/BackupsServiceProvider.php b/app/Providers/BackupsServiceProvider.php index 3b22a2069..25ce9bd7a 100644 --- a/app/Providers/BackupsServiceProvider.php +++ b/app/Providers/BackupsServiceProvider.php @@ -11,7 +11,7 @@ class BackupsServiceProvider extends ServiceProvider implements DeferrableProvid /** * Register the S3 backup disk. */ - public function register() + public function register(): void { $this->app->singleton(BackupManager::class, function ($app) { return new BackupManager($app); diff --git a/app/Providers/BladeServiceProvider.php b/app/Providers/BladeServiceProvider.php index 16a17a373..3512acfd9 100644 --- a/app/Providers/BladeServiceProvider.php +++ b/app/Providers/BladeServiceProvider.php @@ -9,7 +9,7 @@ class BladeServiceProvider extends ServiceProvider /** * Perform post-registration booting of services. */ - public function boot() + public function boot(): void { $this->app->make('blade.compiler') ->directive('datetimeHuman', function ($expression) { diff --git a/app/Providers/BroadcastServiceProvider.php b/app/Providers/BroadcastServiceProvider.php index 3f7c84be4..0630a6377 100644 --- a/app/Providers/BroadcastServiceProvider.php +++ b/app/Providers/BroadcastServiceProvider.php @@ -10,7 +10,7 @@ class BroadcastServiceProvider extends ServiceProvider /** * Bootstrap any application services. */ - public function boot() + public function boot(): void { Broadcast::routes(); diff --git a/app/Providers/HashidsServiceProvider.php b/app/Providers/HashidsServiceProvider.php index f094878d0..e2493e8e4 100644 --- a/app/Providers/HashidsServiceProvider.php +++ b/app/Providers/HashidsServiceProvider.php @@ -11,7 +11,7 @@ class HashidsServiceProvider extends ServiceProvider /** * Register the ability to use Hashids. */ - public function register() + public function register(): void { $this->app->singleton(HashidsInterface::class, function () { /** @var \Illuminate\Contracts\Config\Repository $config */ diff --git a/app/Providers/RepositoryServiceProvider.php b/app/Providers/RepositoryServiceProvider.php index 8a0434f52..b06ca7a13 100644 --- a/app/Providers/RepositoryServiceProvider.php +++ b/app/Providers/RepositoryServiceProvider.php @@ -41,9 +41,9 @@ use Pterodactyl\Contracts\Repository\ServerVariableRepositoryInterface; class RepositoryServiceProvider extends ServiceProvider { /** - * Register all of the repository bindings. + * Register all the repository bindings. */ - public function register() + public function register(): void { // Eloquent Repositories $this->app->bind(AllocationRepositoryInterface::class, AllocationRepository::class); diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index f5ac5565d..43c99f82e 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -19,7 +19,7 @@ class RouteServiceProvider extends ServiceProvider /** * Define your route model bindings, pattern filters, etc. */ - public function boot() + public function boot(): void { $this->configureRateLimiting(); @@ -68,7 +68,7 @@ class RouteServiceProvider extends ServiceProvider /** * Configure the rate limiters for the application. */ - protected function configureRateLimiting() + protected function configureRateLimiting(): void { // Authentication rate limiting. For login and checkpoint endpoints we'll apply // a limit of 10 requests per minute, for the forgot password endpoint apply a diff --git a/app/Providers/SettingsServiceProvider.php b/app/Providers/SettingsServiceProvider.php index 8ed183543..dbcca85ea 100644 --- a/app/Providers/SettingsServiceProvider.php +++ b/app/Providers/SettingsServiceProvider.php @@ -57,7 +57,7 @@ class SettingsServiceProvider extends ServiceProvider /** * Boot the service provider. */ - public function boot(ConfigRepository $config, Encrypter $encrypter, Log $log, SettingsRepositoryInterface $settings) + public function boot(ConfigRepository $config, Encrypter $encrypter, Log $log, SettingsRepositoryInterface $settings): void { // Only set the email driver settings from the database if we // are configured using SMTP as the driver. diff --git a/app/Providers/ViewComposerServiceProvider.php b/app/Providers/ViewComposerServiceProvider.php index 9f484e006..8ab7208c7 100644 --- a/app/Providers/ViewComposerServiceProvider.php +++ b/app/Providers/ViewComposerServiceProvider.php @@ -10,7 +10,7 @@ class ViewComposerServiceProvider extends ServiceProvider /** * Register bindings in the container. */ - public function boot() + public function boot(): void { $this->app->make('view')->composer('*', AssetComposer::class); } diff --git a/app/Repositories/Eloquent/PermissionRepository.php b/app/Repositories/Eloquent/PermissionRepository.php index 780ff3439..603829bc1 100644 --- a/app/Repositories/Eloquent/PermissionRepository.php +++ b/app/Repositories/Eloquent/PermissionRepository.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Repositories\Eloquent; -use Exception; use Pterodactyl\Contracts\Repository\PermissionRepositoryInterface; class PermissionRepository extends EloquentRepository implements PermissionRepositoryInterface @@ -14,6 +13,6 @@ class PermissionRepository extends EloquentRepository implements PermissionRepos */ public function model(): string { - throw new Exception('This functionality is not implemented.'); + throw new \Exception('This functionality is not implemented.'); } } diff --git a/app/Repositories/Repository.php b/app/Repositories/Repository.php index 00683f6d7..3cc0863dd 100644 --- a/app/Repositories/Repository.php +++ b/app/Repositories/Repository.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Repositories; -use InvalidArgumentException; use Illuminate\Foundation\Application; use Illuminate\Database\Eloquent\Model; use Pterodactyl\Contracts\Repository\RepositoryInterface; @@ -97,7 +96,7 @@ abstract class Repository implements RepositoryInterface case 2: return $this->model = call_user_func([$this->app->make($model[0]), $model[1]]); default: - throw new InvalidArgumentException('Model must be a FQDN or an array with a count of two.'); + throw new \InvalidArgumentException('Model must be a FQDN or an array with a count of two.'); } } } diff --git a/app/Services/Acl/Api/AdminAcl.php b/app/Services/Acl/Api/AdminAcl.php index 59c910c19..cee076e17 100644 --- a/app/Services/Acl/Api/AdminAcl.php +++ b/app/Services/Acl/Api/AdminAcl.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Services\Acl\Api; -use ReflectionClass; use Pterodactyl\Models\ApiKey; class AdminAcl @@ -63,7 +62,7 @@ class AdminAcl */ public static function getResourceList(): array { - $reflect = new ReflectionClass(__CLASS__); + $reflect = new \ReflectionClass(__CLASS__); return collect($reflect->getConstants())->filter(function ($value, $key) { return substr($key, 0, 9) === 'RESOURCE_'; diff --git a/app/Services/Allocations/AssignmentService.php b/app/Services/Allocations/AssignmentService.php index ec79d18f1..54994ee72 100644 --- a/app/Services/Allocations/AssignmentService.php +++ b/app/Services/Allocations/AssignmentService.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Services\Allocations; -use Exception; use IPTools\Network; use Pterodactyl\Models\Node; use Illuminate\Database\ConnectionInterface; @@ -54,7 +53,7 @@ class AssignmentService // IP to use, not multiple. $underlying = gethostbyname($data['allocation_ip']); $parsed = Network::parse($underlying); - } catch (Exception $exception) { + } catch (\Exception $exception) { /* @noinspection PhpUndefinedVariableInspection */ throw new DisplayException("Could not parse provided allocation IP address ({$underlying}): {$exception->getMessage()}", $exception); } diff --git a/app/Services/Databases/DatabaseManagementService.php b/app/Services/Databases/DatabaseManagementService.php index b70cb8b4d..20de6a78f 100644 --- a/app/Services/Databases/DatabaseManagementService.php +++ b/app/Services/Databases/DatabaseManagementService.php @@ -3,7 +3,6 @@ namespace Pterodactyl\Services\Databases; use Exception; -use InvalidArgumentException; use Pterodactyl\Models\Server; use Pterodactyl\Models\Database; use Pterodactyl\Helpers\Utilities; @@ -86,7 +85,7 @@ class DatabaseManagementService // Protect against developer mistakes... if (empty($data['database']) || !preg_match(self::MATCH_NAME_REGEX, $data['database'])) { - throw new InvalidArgumentException('The database name passed to DatabaseManagementService::handle MUST be prefixed with "s{server_id}_".'); + throw new \InvalidArgumentException('The database name passed to DatabaseManagementService::handle MUST be prefixed with "s{server_id}_".'); } $data = array_merge($data, [ @@ -117,14 +116,14 @@ class DatabaseManagementService return $database; }); - } catch (Exception $exception) { + } catch (\Exception $exception) { try { if ($database instanceof Database) { $this->repository->dropDatabase($database->database); $this->repository->dropUser($database->username, $database->remote); $this->repository->flush(); } - } catch (Exception $deletionException) { + } catch (\Exception $deletionException) { // Do nothing here. We've already encountered an issue before this point so no // reason to prioritize this error over the initial one. } diff --git a/app/Services/Nodes/NodeJWTService.php b/app/Services/Nodes/NodeJWTService.php index fc34494e2..105715a40 100644 --- a/app/Services/Nodes/NodeJWTService.php +++ b/app/Services/Nodes/NodeJWTService.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Services\Nodes; -use DateTimeImmutable; use Carbon\CarbonImmutable; use Illuminate\Support\Str; use Pterodactyl\Models\Node; @@ -19,7 +18,7 @@ class NodeJWTService private ?User $user = null; - private ?DateTimeImmutable $expiresAt; + private ?\DateTimeImmutable $expiresAt; private ?string $subject = null; @@ -44,7 +43,7 @@ class NodeJWTService return $this; } - public function setExpiresAt(DateTimeImmutable $date): self + public function setExpiresAt(\DateTimeImmutable $date): self { $this->expiresAt = $date; diff --git a/app/Services/Schedules/ProcessScheduleService.php b/app/Services/Schedules/ProcessScheduleService.php index cfbc7e5ca..56b708499 100644 --- a/app/Services/Schedules/ProcessScheduleService.php +++ b/app/Services/Schedules/ProcessScheduleService.php @@ -56,7 +56,7 @@ class ProcessScheduleService return; } - } catch (Exception $exception) { + } catch (\Exception $exception) { if (!$exception instanceof DaemonConnectionException) { // If we encountered some exception during this process that wasn't just an // issue connecting to Wings run the failed sequence for a job. Otherwise we @@ -78,7 +78,7 @@ class ProcessScheduleService // @see https://github.com/pterodactyl/panel/issues/2550 try { $this->dispatcher->dispatchNow($job); - } catch (Exception $exception) { + } catch (\Exception $exception) { $job->failed($exception); throw $exception; diff --git a/app/Services/Servers/ServerDeletionService.php b/app/Services/Servers/ServerDeletionService.php index be52b0cf4..a83c8feb6 100644 --- a/app/Services/Servers/ServerDeletionService.php +++ b/app/Services/Servers/ServerDeletionService.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Services\Servers; -use Exception; use Illuminate\Http\Response; use Pterodactyl\Models\Server; use Illuminate\Support\Facades\Log; @@ -61,7 +60,7 @@ class ServerDeletionService foreach ($server->databases as $database) { try { $this->databaseManagementService->delete($database); - } catch (Exception $exception) { + } catch (\Exception $exception) { if (!$this->force) { throw $exception; } diff --git a/app/Services/Telemetry/TelemetryCollectionService.php b/app/Services/Telemetry/TelemetryCollectionService.php index da749404f..c2fd12830 100644 --- a/app/Services/Telemetry/TelemetryCollectionService.php +++ b/app/Services/Telemetry/TelemetryCollectionService.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Services\Telemetry; -use PDO; use Exception; use Ramsey\Uuid\Uuid; use Illuminate\Support\Arr; @@ -123,7 +122,7 @@ class TelemetryCollectionService 'database' => [ 'type' => config('database.default'), - 'version' => DB::getPdo()->getAttribute(PDO::ATTR_SERVER_VERSION), + 'version' => DB::getPdo()->getAttribute(\PDO::ATTR_SERVER_VERSION), ], ], ], diff --git a/app/Services/Users/TwoFactorSetupService.php b/app/Services/Users/TwoFactorSetupService.php index 87f1e5443..9ce832215 100644 --- a/app/Services/Users/TwoFactorSetupService.php +++ b/app/Services/Users/TwoFactorSetupService.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Services\Users; -use Exception; -use RuntimeException; use Pterodactyl\Models\User; use Illuminate\Contracts\Encryption\Encrypter; use Pterodactyl\Contracts\Repository\UserRepositoryInterface; @@ -38,8 +36,8 @@ class TwoFactorSetupService for ($i = 0; $i < $this->config->get('pterodactyl.auth.2fa.bytes', 16); ++$i) { $secret .= substr(self::VALID_BASE32_CHARACTERS, random_int(0, 31), 1); } - } catch (Exception $exception) { - throw new RuntimeException($exception->getMessage(), 0, $exception); + } catch (\Exception $exception) { + throw new \RuntimeException($exception->getMessage(), 0, $exception); } $this->repository->withoutFreshModel()->update($user->id, [ diff --git a/app/Traits/Controllers/JavascriptInjection.php b/app/Traits/Controllers/JavascriptInjection.php index 206d5ed5f..44fec983a 100644 --- a/app/Traits/Controllers/JavascriptInjection.php +++ b/app/Traits/Controllers/JavascriptInjection.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Traits\Controllers; -use JavaScript; use Illuminate\Http\Request; trait JavascriptInjection @@ -24,6 +23,6 @@ trait JavascriptInjection */ public function plainInject(array $args = []): string { - return JavaScript::put($args); + return \JavaScript::put($args); } } diff --git a/app/Traits/Controllers/PlainJavascriptInjection.php b/app/Traits/Controllers/PlainJavascriptInjection.php index eb2f6559f..2c0832cde 100644 --- a/app/Traits/Controllers/PlainJavascriptInjection.php +++ b/app/Traits/Controllers/PlainJavascriptInjection.php @@ -11,6 +11,6 @@ trait PlainJavascriptInjection */ public function injectJavascript($data) { - JavaScript::put($data); + \JavaScript::put($data); } } diff --git a/app/Traits/Services/ValidatesValidationRules.php b/app/Traits/Services/ValidatesValidationRules.php index 32265da74..5456cb017 100644 --- a/app/Traits/Services/ValidatesValidationRules.php +++ b/app/Traits/Services/ValidatesValidationRules.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Traits\Services; -use BadMethodCallException; use Illuminate\Support\Str; use Illuminate\Contracts\Validation\Factory as ValidationFactory; use Pterodactyl\Exceptions\Service\Egg\Variable\BadValidationRuleException; @@ -21,7 +20,7 @@ trait ValidatesValidationRules { try { $this->getValidator()->make(['__TEST' => 'test'], ['__TEST' => $rules])->fails(); - } catch (BadMethodCallException $exception) { + } catch (\BadMethodCallException $exception) { $matches = []; if (preg_match('/Method \[(.+)\] does not exist\./', $exception->getMessage(), $matches)) { throw new BadValidationRuleException(trans('exceptions.nest.variables.bad_validation_rule', ['rule' => Str::snake(str_replace('validate', '', array_get($matches, 1, 'unknownRule')))]), $exception); diff --git a/app/Transformers/Api/Client/EggVariableTransformer.php b/app/Transformers/Api/Client/EggVariableTransformer.php index 129494251..09c344249 100644 --- a/app/Transformers/Api/Client/EggVariableTransformer.php +++ b/app/Transformers/Api/Client/EggVariableTransformer.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Transformers\Api\Client; -use BadMethodCallException; use Pterodactyl\Models\EggVariable; class EggVariableTransformer extends BaseClientTransformer @@ -18,7 +17,7 @@ class EggVariableTransformer extends BaseClientTransformer // them into the transformer and along to the user. Just throw an exception and break the entire // pathway since you should never be exposing these types of variables to a client. if (!$variable->user_viewable) { - throw new BadMethodCallException('Cannot transform a hidden egg variable in a client transformer.'); + throw new \BadMethodCallException('Cannot transform a hidden egg variable in a client transformer.'); } return [ diff --git a/composer.json b/composer.json index 160537b6b..25595571f 100644 --- a/composer.json +++ b/composer.json @@ -17,53 +17,52 @@ } ], "require": { - "php": "^8.0.2 || ^8.1 || ^8.2", + "php": "^8.1 || ^8.2", "ext-json": "*", "ext-mbstring": "*", "ext-pdo": "*", "ext-pdo_mysql": "*", "ext-posix": "*", "ext-zip": "*", - "aws/aws-sdk-php": "~3.238.2", - "doctrine/dbal": "~3.4.5", + "aws/aws-sdk-php": "~3.260.1", + "doctrine/dbal": "~3.6.0", "guzzlehttp/guzzle": "~7.5.0", - "hashids/hashids": "~4.1.0", - "laracasts/utilities": "~3.2.1", - "laravel/framework": "^9.34.0", - "laravel/helpers": "~1.5.0", - "laravel/sanctum": "~2.15.1", - "laravel/tinker": "~2.7.2", - "laravel/ui": "~3.4.6", - "lcobucci/jwt": "~4.2.1", - "league/flysystem-aws-s3-v3": "~3.5.0", - "league/flysystem-memory": "~3.3.0", + "hashids/hashids": "~5.0.0", + "laracasts/utilities": "~3.2.2", + "laravel/framework": "~10.1.3", + "laravel/helpers": "~1.6.0", + "laravel/sanctum": "~3.2.1", + "laravel/tinker": "~2.8.1", + "laravel/ui": "~4.2.1", + "lcobucci/jwt": "~4.3.0", + "league/flysystem-aws-s3-v3": "~3.12.2", + "league/flysystem-memory": "~3.10.3", "matriphe/iso-639": "~1.2", - "phpseclib/phpseclib": "~3.0", - "pragmarx/google2fa": "~5.0.0", - "predis/predis": "~2.0.2", - "prologue/alerts": "~1.0.0", + "phpseclib/phpseclib": "~3.0.18", + "pragmarx/google2fa": "~8.0.0", + "predis/predis": "~2.1.1", + "prologue/alerts": "~1.1.0", "psr/cache": "~3.0.0", - "s1lentium/iptools": "~1.1.1", - "spatie/laravel-fractal": "~6.0.2", - "spatie/laravel-query-builder": "~5.0.3", - "staudenmeir/belongs-to-through": "~2.12.1", - "symfony/http-client": "~6.0", - "symfony/mailgun-mailer": "~6.0", - "symfony/postmark-mailer": "~6.0", - "symfony/yaml": "~5.4", - "webmozart/assert": "~1.11" + "s1lentium/iptools": "~1.2.0", + "spatie/laravel-fractal": "~6.0.3", + "spatie/laravel-query-builder": "~5.1.2", + "staudenmeir/belongs-to-through": "~2.13", + "symfony/http-client": "~6.2.6", + "symfony/mailgun-mailer": "~6.2.5", + "symfony/postmark-mailer": "~6.2.5", + "symfony/yaml": "~6.2.5", + "webmozart/assert": "~1.11.0" }, "require-dev": { - "barryvdh/laravel-ide-helper": "~2.12.3", - "fakerphp/faker": "~1.20", - "friendsofphp/php-cs-fixer": "~3.11", - "itsgoingd/clockwork": "~5.1", - "laravel/sail": "~1.16", - "mockery/mockery": "~1.5", - "nunomaduro/collision": "~6.3", - "php-mock/php-mock-phpunit": "~2.6", - "phpunit/phpunit": "~9.5", - "spatie/laravel-ignition": "~1.5" + "barryvdh/laravel-ide-helper": "~2.13.0", + "fakerphp/faker": "~1.21.0", + "friendsofphp/php-cs-fixer": "~3.14.4", + "itsgoingd/clockwork": "~5.1.12", + "laravel/sail": "~1.21.0", + "mockery/mockery": "~1.5.1", + "nunomaduro/collision": "~7.0.5", + "phpunit/phpunit": "~10.0.11", + "spatie/laravel-ignition": "~2.0.0" }, "autoload": { "files": [ @@ -83,24 +82,25 @@ "scripts": { "cs:fix": "php-cs-fixer fix", "cs:check": "php-cs-fixer fix --dry-run --diff --verbose", + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover --ansi || true" + ], "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ - "@php artisan key:generate" - ], - "post-autoload-dump": [ - "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", - "@php artisan package:discover || true" + "@php artisan key:generate --ansi" ] }, - "prefer-stable": true, "config": { "optimize-autoloader": true, "preferred-install": "dist", "sort-packages": true, "platform": { - "php": "8.0.2" + "php": "8.1.0" } - } + }, + "minimum-stability": "stable", + "prefer-stable": true } diff --git a/composer.lock b/composer.lock index 9f4b73f6f..e1d83de06 100644 --- a/composer.lock +++ b/composer.lock @@ -4,27 +4,27 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ae61e7d6e405e3a59c8a54f3eefa2c50", + "content-hash": "c825c79676768901c780446d7550a7f6", "packages": [ { "name": "aws/aws-crt-php", - "version": "v1.0.2", + "version": "v1.0.4", "source": { "type": "git", "url": "https://github.com/awslabs/aws-crt-php.git", - "reference": "3942776a8c99209908ee0b287746263725685732" + "reference": "f5c64ee7c5fce196e2519b3d9b7138649efe032d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/3942776a8c99209908ee0b287746263725685732", - "reference": "3942776a8c99209908ee0b287746263725685732", + "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/f5c64ee7c5fce196e2519b3d9b7138649efe032d", + "reference": "f5c64ee7c5fce196e2519b3d9b7138649efe032d", "shasum": "" }, "require": { "php": ">=5.5" }, "require-dev": { - "phpunit/phpunit": "^4.8.35|^5.4.3" + "phpunit/phpunit": "^4.8.35|^5.6.3" }, "type": "library", "autoload": { @@ -52,26 +52,26 @@ ], "support": { "issues": "https://github.com/awslabs/aws-crt-php/issues", - "source": "https://github.com/awslabs/aws-crt-php/tree/v1.0.2" + "source": "https://github.com/awslabs/aws-crt-php/tree/v1.0.4" }, - "time": "2021-09-03T22:57:30+00:00" + "time": "2023-01-31T23:08:25+00:00" }, { "name": "aws/aws-sdk-php", - "version": "3.238.6", + "version": "3.260.1", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "79a76b438bd20ae687394561b4f28cb6c10db08e" + "reference": "964653acda337343e64344426fa609cf1df930e1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/79a76b438bd20ae687394561b4f28cb6c10db08e", - "reference": "79a76b438bd20ae687394561b4f28cb6c10db08e", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/964653acda337343e64344426fa609cf1df930e1", + "reference": "964653acda337343e64344426fa609cf1df930e1", "shasum": "" }, "require": { - "aws/aws-crt-php": "^1.0.2", + "aws/aws-crt-php": "^1.0.4", "ext-json": "*", "ext-pcre": "*", "ext-simplexml": "*", @@ -146,9 +146,9 @@ "support": { "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.238.6" + "source": "https://github.com/aws/aws-sdk-php/tree/3.260.1" }, - "time": "2022-10-17T18:17:10+00:00" + "time": "2023-02-22T19:23:27+00:00" }, { "name": "brick/math", @@ -208,16 +208,16 @@ }, { "name": "dflydev/dot-access-data", - "version": "v3.0.1", + "version": "v3.0.2", "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + "reference": "f41715465d65213d644d3141a6a93081be5d3549" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", + "reference": "f41715465d65213d644d3141a6a93081be5d3549", "shasum": "" }, "require": { @@ -228,7 +228,7 @@ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", "scrutinizer/ocular": "1.6.0", "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^3.14" + "vimeo/psalm": "^4.0.0" }, "type": "library", "extra": { @@ -277,9 +277,9 @@ ], "support": { "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" }, - "time": "2021-08-13T13:06:58+00:00" + "time": "2022-10-27T11:44:00+00:00" }, { "name": "doctrine/cache", @@ -376,38 +376,39 @@ }, { "name": "doctrine/dbal", - "version": "3.4.6", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "3ce132f7c0b83d33b26ab6ed308e9e9260699bc4" + "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/3ce132f7c0b83d33b26ab6ed308e9e9260699bc4", - "reference": "3ce132f7c0b83d33b26ab6ed308e9e9260699bc4", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/85b98cb23c8af471a67abfe14485da696bcabc2e", + "reference": "85b98cb23c8af471a67abfe14485da696bcabc2e", "shasum": "" }, "require": { "composer-runtime-api": "^2", "doctrine/cache": "^1.11|^2.0", "doctrine/deprecations": "^0.5.3|^1", - "doctrine/event-manager": "^1.0", + "doctrine/event-manager": "^1|^2", "php": "^7.4 || ^8.0", "psr/cache": "^1|^2|^3", "psr/log": "^1|^2|^3" }, "require-dev": { - "doctrine/coding-standard": "10.0.0", - "jetbrains/phpstorm-stubs": "2022.2", - "phpstan/phpstan": "1.8.10", + "doctrine/coding-standard": "11.1.0", + "fig/log-test": "^1", + "jetbrains/phpstorm-stubs": "2022.3", + "phpstan/phpstan": "1.9.14", "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "9.5.25", - "psalm/plugin-phpunit": "0.17.0", + "phpunit/phpunit": "9.6.3", + "psalm/plugin-phpunit": "0.18.4", "squizlabs/php_codesniffer": "3.7.1", "symfony/cache": "^5.4|^6.0", "symfony/console": "^4.4|^5.4|^6.0", - "vimeo/psalm": "4.29.0" + "vimeo/psalm": "4.30.0" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -467,7 +468,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/3.4.6" + "source": "https://github.com/doctrine/dbal/tree/3.6.0" }, "funding": [ { @@ -483,7 +484,7 @@ "type": "tidelift" } ], - "time": "2022-10-21T14:38:43+00:00" + "time": "2023-02-07T22:52:03+00:00" }, { "name": "doctrine/deprecations", @@ -530,30 +531,29 @@ }, { "name": "doctrine/event-manager", - "version": "1.2.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/event-manager.git", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520" + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/95aa4cb529f1e96576f3fda9f5705ada4056a520", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32", + "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32", "shasum": "" }, "require": { - "doctrine/deprecations": "^0.5.3 || ^1", - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "conflict": { "doctrine/common": "<2.9" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "~1.4.10 || ^1.8.8", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.24" + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.8", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^4.28" }, "type": "library", "autoload": { @@ -602,7 +602,7 @@ ], "support": { "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/1.2.0" + "source": "https://github.com/doctrine/event-manager/tree/2.0.0" }, "funding": [ { @@ -618,7 +618,7 @@ "type": "tidelift" } ], - "time": "2022-10-12T20:51:15+00:00" + "time": "2022-10-12T20:59:15+00:00" }, { "name": "doctrine/inflector", @@ -713,31 +713,32 @@ }, { "name": "doctrine/lexer", - "version": "1.2.3", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" + "reference": "84a527db05647743d50373e0ec53a152f2cde568" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", + "reference": "84a527db05647743d50373e0ec53a152f2cde568", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^9.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.0" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + "Doctrine\\Common\\Lexer\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -769,7 +770,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" + "source": "https://github.com/doctrine/lexer/tree/3.0.0" }, "funding": [ { @@ -785,7 +786,7 @@ "type": "tidelift" } ], - "time": "2022-02-28T11:07:21+00:00" + "time": "2022-12-15T16:57:16+00:00" }, { "name": "dragonmantank/cron-expression", @@ -850,27 +851,26 @@ }, { "name": "egulias/email-validator", - "version": "3.2.1", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715" + "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/f88dcf4b14af14a98ad96b14b2b317969eab6715", - "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/3a85486b709bc384dae8eb78fb2eec649bdb64ff", + "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff", "shasum": "" }, "require": { - "doctrine/lexer": "^1.2", - "php": ">=7.2", - "symfony/polyfill-intl-idn": "^1.15" + "doctrine/lexer": "^2.0 || ^3.0", + "php": ">=8.1", + "symfony/polyfill-intl-idn": "^1.26" }, "require-dev": { - "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^8.5.8|^9.3.3", - "vimeo/psalm": "^4" + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^4.30" }, "suggest": { "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" @@ -878,7 +878,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "4.0.x-dev" } }, "autoload": { @@ -906,7 +906,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/3.2.1" + "source": "https://github.com/egulias/EmailValidator/tree/4.0.1" }, "funding": [ { @@ -914,7 +914,7 @@ "type": "github" } ], - "time": "2022-06-18T20:57:19+00:00" + "time": "2023-01-14T14:17:03+00:00" }, { "name": "fruitcake/php-cors", @@ -1263,16 +1263,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.2", + "version": "2.4.3", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "3148458748274be1546f8f2809a6c09fe66f44aa" + "reference": "67c26b443f348a51926030c83481b85718457d3d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/3148458748274be1546f8f2809a6c09fe66f44aa", - "reference": "3148458748274be1546f8f2809a6c09fe66f44aa", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", "shasum": "" }, "require": { @@ -1362,7 +1362,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.2" + "source": "https://github.com/guzzle/psr7/tree/2.4.3" }, "funding": [ { @@ -1378,29 +1378,112 @@ "type": "tidelift" } ], - "time": "2022-10-25T13:49:28+00:00" + "time": "2022-10-26T14:07:24+00:00" }, { - "name": "hashids/hashids", - "version": "4.1.0", + "name": "guzzlehttp/uri-template", + "version": "v1.0.1", "source": { "type": "git", - "url": "https://github.com/vinkla/hashids.git", - "reference": "8cab111f78e0bd9c76953b082919fc9e251761be" + "url": "https://github.com/guzzle/uri-template.git", + "reference": "b945d74a55a25a949158444f09ec0d3c120d69e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vinkla/hashids/zipball/8cab111f78e0bd9c76953b082919fc9e251761be", - "reference": "8cab111f78e0bd9c76953b082919fc9e251761be", + "url": "https://api.github.com/repos/guzzle/uri-template/zipball/b945d74a55a25a949158444f09ec0d3c120d69e2", + "reference": "b945d74a55a25a949158444f09ec0d3c120d69e2", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "symfony/polyfill-php80": "^1.17" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.19 || ^9.5.8", + "uri-template/tests": "1.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\UriTemplate\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + } + ], + "description": "A polyfill class for uri_template of PHP", + "keywords": [ + "guzzlehttp", + "uri-template" + ], + "support": { + "issues": "https://github.com/guzzle/uri-template/issues", + "source": "https://github.com/guzzle/uri-template/tree/v1.0.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/uri-template", + "type": "tidelift" + } + ], + "time": "2021-10-07T12:57:01+00:00" + }, + { + "name": "hashids/hashids", + "version": "5.0.2", + "source": { + "type": "git", + "url": "https://github.com/vinkla/hashids.git", + "reference": "197171016b77ddf14e259e186559152eb3f8cf33" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vinkla/hashids/zipball/197171016b77ddf14e259e186559152eb3f8cf33", + "reference": "197171016b77ddf14e259e186559152eb3f8cf33", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^7.2 || ^8.0" + "php": "^8.1" }, "require-dev": { - "phpunit/phpunit": "^8.0 || ^9.4", - "squizlabs/php_codesniffer": "^3.5" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-bcmath": "Required to use BC Math arbitrary precision mathematics (*).", @@ -1409,7 +1492,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.1-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -1446,26 +1529,26 @@ ], "support": { "issues": "https://github.com/vinkla/hashids/issues", - "source": "https://github.com/vinkla/hashids/tree/4.1.0" + "source": "https://github.com/vinkla/hashids/tree/5.0.2" }, - "time": "2020-11-26T19:24:33+00:00" + "time": "2023-02-23T15:00:54+00:00" }, { "name": "laracasts/utilities", - "version": "3.2.1", + "version": "3.2.2", "source": { "type": "git", "url": "https://github.com/laracasts/PHP-Vars-To-Js-Transformer.git", - "reference": "cfcda21b2425652e869af253d385d78e2129e3a2" + "reference": "1cc5d5b9670e5be392df38e0b648fa4842c5a1f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laracasts/PHP-Vars-To-Js-Transformer/zipball/cfcda21b2425652e869af253d385d78e2129e3a2", - "reference": "cfcda21b2425652e869af253d385d78e2129e3a2", + "url": "https://api.github.com/repos/laracasts/PHP-Vars-To-Js-Transformer/zipball/1cc5d5b9670e5be392df38e0b648fa4842c5a1f8", + "reference": "1cc5d5b9670e5be392df38e0b648fa4842c5a1f8", "shasum": "" }, "require": { - "illuminate/support": "^5.0|^6.0|^7.0|^8.0|^9.0", + "illuminate/support": "^5.0|^6.0|^7.0|^8.0|^9.0|^10.0", "php": ">=5.5.0|>=7.2.5|>=8.0.0" }, "require-dev": { @@ -1507,53 +1590,61 @@ ], "support": { "issues": "https://github.com/laracasts/PHP-Vars-To-Js-Transformer/issues", - "source": "https://github.com/laracasts/PHP-Vars-To-Js-Transformer/tree/3.2.1" + "source": "https://github.com/laracasts/PHP-Vars-To-Js-Transformer/tree/3.2.2" }, - "time": "2022-02-09T14:09:45+00:00" + "time": "2023-02-03T13:22:09+00:00" }, { "name": "laravel/framework", - "version": "v9.37.0", + "version": "v10.1.4", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "0c9675abf6d966e834b2ebeca3319f524e07a330" + "reference": "da95415a83fe6216dc78efebfc311365cf4cade0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/0c9675abf6d966e834b2ebeca3319f524e07a330", - "reference": "0c9675abf6d966e834b2ebeca3319f524e07a330", + "url": "https://api.github.com/repos/laravel/framework/zipball/da95415a83fe6216dc78efebfc311365cf4cade0", + "reference": "da95415a83fe6216dc78efebfc311365cf4cade0", "shasum": "" }, "require": { - "doctrine/inflector": "^2.0", + "brick/math": "^0.9.3|^0.10.2|^0.11", + "composer-runtime-api": "^2.2", + "doctrine/inflector": "^2.0.5", "dragonmantank/cron-expression": "^3.3.2", - "egulias/email-validator": "^3.2.1", + "egulias/email-validator": "^3.2.1|^4.0", + "ext-ctype": "*", + "ext-filter": "*", + "ext-hash": "*", "ext-mbstring": "*", "ext-openssl": "*", + "ext-session": "*", + "ext-tokenizer": "*", "fruitcake/php-cors": "^1.2", - "laravel/serializable-closure": "^1.2.2", - "league/commonmark": "^2.2", + "guzzlehttp/uri-template": "^1.0", + "laravel/serializable-closure": "^1.3", + "league/commonmark": "^2.2.1", "league/flysystem": "^3.8.0", - "monolog/monolog": "^2.0", + "monolog/monolog": "^3.0", "nesbot/carbon": "^2.62.1", "nunomaduro/termwind": "^1.13", - "php": "^8.0.2", + "php": "^8.1", "psr/container": "^1.1.1|^2.0.1", "psr/log": "^1.0|^2.0|^3.0", "psr/simple-cache": "^1.0|^2.0|^3.0", - "ramsey/uuid": "^4.2.2", - "symfony/console": "^6.0.9", - "symfony/error-handler": "^6.0", - "symfony/finder": "^6.0", - "symfony/http-foundation": "^6.0", - "symfony/http-kernel": "^6.0", - "symfony/mailer": "^6.0", - "symfony/mime": "^6.0", - "symfony/process": "^6.0", - "symfony/routing": "^6.0", - "symfony/uid": "^6.0", - "symfony/var-dumper": "^6.0", + "ramsey/uuid": "^4.7", + "symfony/console": "^6.2", + "symfony/error-handler": "^6.2", + "symfony/finder": "^6.2", + "symfony/http-foundation": "^6.2", + "symfony/http-kernel": "^6.2", + "symfony/mailer": "^6.2", + "symfony/mime": "^6.2", + "symfony/process": "^6.2", + "symfony/routing": "^6.2", + "symfony/uid": "^6.2", + "symfony/var-dumper": "^6.2", "tijsverkoyen/css-to-inline-styles": "^2.2.5", "vlucas/phpdotenv": "^5.4.1", "voku/portable-ascii": "^2.0" @@ -1589,6 +1680,7 @@ "illuminate/notifications": "self.version", "illuminate/pagination": "self.version", "illuminate/pipeline": "self.version", + "illuminate/process": "self.version", "illuminate/queue": "self.version", "illuminate/redis": "self.version", "illuminate/routing": "self.version", @@ -1602,8 +1694,9 @@ "require-dev": { "ably/ably-php": "^1.0", "aws/aws-sdk-php": "^3.235.5", - "doctrine/dbal": "^2.13.3|^3.1.4", - "fakerphp/faker": "^1.9.2", + "doctrine/dbal": "^3.5.1", + "ext-gmp": "*", + "fakerphp/faker": "^1.21", "guzzlehttp/guzzle": "^7.5", "league/flysystem-aws-s3-v3": "^3.0", "league/flysystem-ftp": "^3.0", @@ -1611,23 +1704,27 @@ "league/flysystem-read-only": "^3.3", "league/flysystem-sftp-v3": "^3.0", "mockery/mockery": "^1.5.1", - "orchestra/testbench-core": "^7.11", + "orchestra/testbench-core": "^8.0", "pda/pheanstalk": "^4.0", + "phpstan/phpdoc-parser": "^1.15", "phpstan/phpstan": "^1.4.7", - "phpunit/phpunit": "^9.5.8", - "predis/predis": "^1.1.9|^2.0.2", - "symfony/cache": "^6.0" + "phpunit/phpunit": "^10.0.7", + "predis/predis": "^2.0.2", + "symfony/cache": "^6.2", + "symfony/http-client": "^6.2.4" }, "suggest": { "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).", "brianium/paratest": "Required to run tests in parallel (^6.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.13.3|^3.1.4).", - "ext-bcmath": "Required to use the multiple_of validation rule.", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^3.5.1).", + "ext-apcu": "Required to use the APC cache driver.", + "ext-fileinfo": "Required to use the Filesystem class.", "ext-ftp": "Required to use the Flysystem FTP driver.", "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", "ext-memcached": "Required to use the memcache cache driver.", - "ext-pcntl": "Required to use all features of the queue worker.", + "ext-pcntl": "Required to use all features of the queue worker and console signal trapping.", + "ext-pdo": "Required to use all database features.", "ext-posix": "Required to use all features of the queue worker.", "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", @@ -1642,21 +1739,21 @@ "mockery/mockery": "Required to use mocking (^1.5.1).", "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8).", - "predis/predis": "Required to use the predis connector (^1.1.9|^2.0.2).", + "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8|^10.0.7).", + "predis/predis": "Required to use the predis connector (^2.0.2).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).", - "symfony/cache": "Required to PSR-6 cache bridge (^6.0).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^6.0).", - "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.0).", - "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.0).", - "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^6.2).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).", + "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.2).", + "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.2).", + "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.2).", "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "9.x-dev" + "dev-master": "10.x-dev" } }, "autoload": { @@ -1695,24 +1792,24 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-10-25T15:43:46+00:00" + "time": "2023-02-23T12:25:38+00:00" }, { "name": "laravel/helpers", - "version": "v1.5.0", + "version": "v1.6.0", "source": { "type": "git", "url": "https://github.com/laravel/helpers.git", - "reference": "c28b0ccd799d58564c41a62395ac9511a1e72931" + "reference": "4dd0f9436d3911611622a6ced8329a1710576f60" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/helpers/zipball/c28b0ccd799d58564c41a62395ac9511a1e72931", - "reference": "c28b0ccd799d58564c41a62395ac9511a1e72931", + "url": "https://api.github.com/repos/laravel/helpers/zipball/4dd0f9436d3911611622a6ced8329a1710576f60", + "reference": "4dd0f9436d3911611622a6ced8329a1710576f60", "shasum": "" }, "require": { - "illuminate/support": "~5.8.0|^6.0|^7.0|^8.0|^9.0", + "illuminate/support": "~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0", "php": "^7.1.3|^8.0" }, "require-dev": { @@ -1749,41 +1846,41 @@ "laravel" ], "support": { - "source": "https://github.com/laravel/helpers/tree/v1.5.0" + "source": "https://github.com/laravel/helpers/tree/v1.6.0" }, - "time": "2022-01-12T15:58:51+00:00" + "time": "2023-01-09T14:48:11+00:00" }, { "name": "laravel/sanctum", - "version": "v2.15.1", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/laravel/sanctum.git", - "reference": "31fbe6f85aee080c4dc2f9b03dc6dd5d0ee72473" + "reference": "d09d69bac55708fcd4a3b305d760e673d888baf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sanctum/zipball/31fbe6f85aee080c4dc2f9b03dc6dd5d0ee72473", - "reference": "31fbe6f85aee080c4dc2f9b03dc6dd5d0ee72473", + "url": "https://api.github.com/repos/laravel/sanctum/zipball/d09d69bac55708fcd4a3b305d760e673d888baf9", + "reference": "d09d69bac55708fcd4a3b305d760e673d888baf9", "shasum": "" }, "require": { "ext-json": "*", - "illuminate/console": "^6.9|^7.0|^8.0|^9.0", - "illuminate/contracts": "^6.9|^7.0|^8.0|^9.0", - "illuminate/database": "^6.9|^7.0|^8.0|^9.0", - "illuminate/support": "^6.9|^7.0|^8.0|^9.0", - "php": "^7.2|^8.0" + "illuminate/console": "^9.21|^10.0", + "illuminate/contracts": "^9.21|^10.0", + "illuminate/database": "^9.21|^10.0", + "illuminate/support": "^9.21|^10.0", + "php": "^8.0.2" }, "require-dev": { "mockery/mockery": "^1.0", - "orchestra/testbench": "^4.0|^5.0|^6.0|^7.0", - "phpunit/phpunit": "^8.0|^9.3" + "orchestra/testbench": "^7.0|^8.0", + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.x-dev" + "dev-master": "3.x-dev" }, "laravel": { "providers": [ @@ -1816,20 +1913,20 @@ "issues": "https://github.com/laravel/sanctum/issues", "source": "https://github.com/laravel/sanctum" }, - "time": "2022-04-08T13:39:49+00:00" + "time": "2023-01-13T15:41:49+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.2.2", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae" + "reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae", - "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/f23fe9d4e95255dacee1bf3525e0810d1a1b0f37", + "reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37", "shasum": "" }, "require": { @@ -1876,26 +1973,26 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2022-09-08T13:45:54+00:00" + "time": "2023-01-30T18:31:20+00:00" }, { "name": "laravel/tinker", - "version": "v2.7.2", + "version": "v2.8.1", "source": { "type": "git", "url": "https://github.com/laravel/tinker.git", - "reference": "dff39b661e827dae6e092412f976658df82dbac5" + "reference": "04a2d3bd0d650c0764f70bf49d1ee39393e4eb10" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/dff39b661e827dae6e092412f976658df82dbac5", - "reference": "dff39b661e827dae6e092412f976658df82dbac5", + "url": "https://api.github.com/repos/laravel/tinker/zipball/04a2d3bd0d650c0764f70bf49d1ee39393e4eb10", + "reference": "04a2d3bd0d650c0764f70bf49d1ee39393e4eb10", "shasum": "" }, "require": { - "illuminate/console": "^6.0|^7.0|^8.0|^9.0", - "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0", - "illuminate/support": "^6.0|^7.0|^8.0|^9.0", + "illuminate/console": "^6.0|^7.0|^8.0|^9.0|^10.0", + "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0", + "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0", "php": "^7.2.5|^8.0", "psy/psysh": "^0.10.4|^0.11.1", "symfony/var-dumper": "^4.3.4|^5.0|^6.0" @@ -1905,7 +2002,7 @@ "phpunit/phpunit": "^8.5.8|^9.3.3" }, "suggest": { - "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0)." + "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0|^10.0)." }, "type": "library", "extra": { @@ -1942,38 +2039,39 @@ ], "support": { "issues": "https://github.com/laravel/tinker/issues", - "source": "https://github.com/laravel/tinker/tree/v2.7.2" + "source": "https://github.com/laravel/tinker/tree/v2.8.1" }, - "time": "2022-03-23T12:38:24+00:00" + "time": "2023-02-15T16:40:09+00:00" }, { "name": "laravel/ui", - "version": "v3.4.6", + "version": "v4.2.1", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "65ec5c03f7fee2c8ecae785795b829a15be48c2c" + "reference": "05ff7ac1eb55e2dfd10edcfb18c953684d693907" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/65ec5c03f7fee2c8ecae785795b829a15be48c2c", - "reference": "65ec5c03f7fee2c8ecae785795b829a15be48c2c", + "url": "https://api.github.com/repos/laravel/ui/zipball/05ff7ac1eb55e2dfd10edcfb18c953684d693907", + "reference": "05ff7ac1eb55e2dfd10edcfb18c953684d693907", "shasum": "" }, "require": { - "illuminate/console": "^8.42|^9.0", - "illuminate/filesystem": "^8.42|^9.0", - "illuminate/support": "^8.82|^9.0", - "illuminate/validation": "^8.42|^9.0", - "php": "^7.3|^8.0" + "illuminate/console": "^9.21|^10.0", + "illuminate/filesystem": "^9.21|^10.0", + "illuminate/support": "^9.21|^10.0", + "illuminate/validation": "^9.21|^10.0", + "php": "^8.0" }, "require-dev": { - "orchestra/testbench": "^6.23|^7.0" + "orchestra/testbench": "^7.0|^8.0", + "phpunit/phpunit": "^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.x-dev" + "dev-master": "4.x-dev" }, "laravel": { "providers": [ @@ -2003,37 +2101,40 @@ "ui" ], "support": { - "source": "https://github.com/laravel/ui/tree/v3.4.6" + "source": "https://github.com/laravel/ui/tree/v4.2.1" }, - "time": "2022-05-20T13:38:08+00:00" + "time": "2023-02-17T09:17:24+00:00" }, { "name": "lcobucci/clock", - "version": "2.2.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/lcobucci/clock.git", - "reference": "fb533e093fd61321bfcbac08b131ce805fe183d3" + "reference": "039ef98c6b57b101d10bd11d8fdfda12cbd996dc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/clock/zipball/fb533e093fd61321bfcbac08b131ce805fe183d3", - "reference": "fb533e093fd61321bfcbac08b131ce805fe183d3", + "url": "https://api.github.com/repos/lcobucci/clock/zipball/039ef98c6b57b101d10bd11d8fdfda12cbd996dc", + "reference": "039ef98c6b57b101d10bd11d8fdfda12cbd996dc", "shasum": "" }, "require": { - "php": "^8.0", - "stella-maris/clock": "^0.1.4" + "php": "~8.1.0 || ~8.2.0", + "psr/clock": "^1.0" + }, + "provide": { + "psr/clock-implementation": "1.0" }, "require-dev": { "infection/infection": "^0.26", - "lcobucci/coding-standard": "^8.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-deprecation-rules": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpstan/phpstan-strict-rules": "^0.12", - "phpunit/phpunit": "^9.5" + "lcobucci/coding-standard": "^9.0", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-deprecation-rules": "^1.1.1", + "phpstan/phpstan-phpunit": "^1.3.2", + "phpstan/phpstan-strict-rules": "^1.4.4", + "phpunit/phpunit": "^9.5.27" }, "type": "library", "autoload": { @@ -2054,7 +2155,7 @@ "description": "Yet another clock abstraction", "support": { "issues": "https://github.com/lcobucci/clock/issues", - "source": "https://github.com/lcobucci/clock/tree/2.2.0" + "source": "https://github.com/lcobucci/clock/tree/3.0.0" }, "funding": [ { @@ -2066,20 +2167,20 @@ "type": "patreon" } ], - "time": "2022-04-19T19:34:17+00:00" + "time": "2022-12-19T15:00:24+00:00" }, { "name": "lcobucci/jwt", - "version": "4.2.1", + "version": "4.3.0", "source": { "type": "git", "url": "https://github.com/lcobucci/jwt.git", - "reference": "72ac6d807ee51a70ad376ee03a2387e8646e10f3" + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/jwt/zipball/72ac6d807ee51a70ad376ee03a2387e8646e10f3", - "reference": "72ac6d807ee51a70ad376ee03a2387e8646e10f3", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/4d7de2fe0d51a96418c0d04004986e410e87f6b4", + "reference": "4d7de2fe0d51a96418c0d04004986e410e87f6b4", "shasum": "" }, "require": { @@ -2088,7 +2189,7 @@ "ext-mbstring": "*", "ext-openssl": "*", "ext-sodium": "*", - "lcobucci/clock": "^2.0", + "lcobucci/clock": "^2.0 || ^3.0", "php": "^7.4 || ^8.0" }, "require-dev": { @@ -2128,7 +2229,7 @@ ], "support": { "issues": "https://github.com/lcobucci/jwt/issues", - "source": "https://github.com/lcobucci/jwt/tree/4.2.1" + "source": "https://github.com/lcobucci/jwt/tree/4.3.0" }, "funding": [ { @@ -2140,20 +2241,20 @@ "type": "patreon" } ], - "time": "2022-08-19T23:14:07+00:00" + "time": "2023-01-02T13:28:00+00:00" }, { "name": "league/commonmark", - "version": "2.3.5", + "version": "2.3.9", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" + "reference": "c1e114f74e518daca2729ea8c4bf1167038fa4b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/c1e114f74e518daca2729ea8c4bf1167038fa4b5", + "reference": "c1e114f74e518daca2729ea8c4bf1167038fa4b5", "shasum": "" }, "require": { @@ -2173,7 +2274,7 @@ "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4", + "michelf/php-markdown": "^1.4 || ^2.0", "nyholm/psr7": "^1.5", "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.21", @@ -2181,7 +2282,7 @@ "symfony/finder": "^5.3 | ^6.0", "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0" + "vimeo/psalm": "^4.24.0 || ^5.0.0" }, "suggest": { "symfony/yaml": "v2.3+ required if using the Front Matter extension" @@ -2246,20 +2347,20 @@ "type": "tidelift" } ], - "time": "2022-07-29T10:59:45+00:00" + "time": "2023-02-15T14:07:24+00:00" }, { "name": "league/config", - "version": "v1.1.1", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/thephpleague/config.git", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "url": "https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", "shasum": "" }, "require": { @@ -2268,7 +2369,7 @@ "php": "^7.4 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.90", + "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.5", "scrutinizer/ocular": "^1.8.1", "unleashedtech/php-coding-standard": "^3.1", @@ -2328,20 +2429,20 @@ "type": "github" } ], - "time": "2021-08-14T12:15:32+00:00" + "time": "2022-12-11T20:36:23+00:00" }, { "name": "league/flysystem", - "version": "3.10.2", + "version": "3.12.3", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "b9bd194b016114d6ff6765c09d40c7d427e4e3f6" + "reference": "81e87e74dd5213795c7846d65089712d2dda90ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/b9bd194b016114d6ff6765c09d40c7d427e4e3f6", - "reference": "b9bd194b016114d6ff6765c09d40c7d427e4e3f6", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/81e87e74dd5213795c7846d65089712d2dda90ce", + "reference": "81e87e74dd5213795c7846d65089712d2dda90ce", "shasum": "" }, "require": { @@ -2358,7 +2459,7 @@ "require-dev": { "async-aws/s3": "^1.5", "async-aws/simple-s3": "^1.1", - "aws/aws-sdk-php": "^3.198.1", + "aws/aws-sdk-php": "^3.220.0", "composer/semver": "^3.0", "ext-fileinfo": "*", "ext-ftp": "*", @@ -2403,7 +2504,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/3.10.2" + "source": "https://github.com/thephpleague/flysystem/tree/3.12.3" }, "funding": [ { @@ -2419,25 +2520,25 @@ "type": "tidelift" } ], - "time": "2022-10-25T07:01:47+00:00" + "time": "2023-02-18T15:32:41+00:00" }, { "name": "league/flysystem-aws-s3-v3", - "version": "3.5.0", + "version": "3.12.2", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git", - "reference": "adb6633f325c934c15a099c363dc5362bdcb07a2" + "reference": "645e14e4a80bd2da8b01e57388e7296a695a80c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/adb6633f325c934c15a099c363dc5362bdcb07a2", - "reference": "adb6633f325c934c15a099c363dc5362bdcb07a2", + "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/645e14e4a80bd2da8b01e57388e7296a695a80c2", + "reference": "645e14e4a80bd2da8b01e57388e7296a695a80c2", "shasum": "" }, "require": { - "aws/aws-sdk-php": "^3.132.4", - "league/flysystem": "^3.0.0", + "aws/aws-sdk-php": "^3.220.0", + "league/flysystem": "^3.10.0", "league/mime-type-detection": "^1.0.0", "php": "^8.0.2" }, @@ -2473,7 +2574,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem-aws-s3-v3/issues", - "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.5.0" + "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/3.12.2" }, "funding": [ { @@ -2489,20 +2590,20 @@ "type": "tidelift" } ], - "time": "2022-09-17T21:00:35+00:00" + "time": "2023-01-17T14:15:08+00:00" }, { "name": "league/flysystem-memory", - "version": "3.3.0", + "version": "3.10.3", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-memory.git", - "reference": "d2a80fbfd3337fac39eeff64c6c0820b6a4902ce" + "reference": "5405162ac81f4de5aa5fa01aae7d07382b7c797b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-memory/zipball/d2a80fbfd3337fac39eeff64c6c0820b6a4902ce", - "reference": "d2a80fbfd3337fac39eeff64c6c0820b6a4902ce", + "url": "https://api.github.com/repos/thephpleague/flysystem-memory/zipball/5405162ac81f4de5aa5fa01aae7d07382b7c797b", + "reference": "5405162ac81f4de5aa5fa01aae7d07382b7c797b", "shasum": "" }, "require": { @@ -2536,7 +2637,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem-memory/issues", - "source": "https://github.com/thephpleague/flysystem-memory/tree/3.3.0" + "source": "https://github.com/thephpleague/flysystem-memory/tree/3.10.3" }, "funding": [ { @@ -2552,7 +2653,7 @@ "type": "tidelift" } ], - "time": "2022-09-09T10:03:42+00:00" + "time": "2022-10-26T18:30:26+00:00" }, { "name": "league/fractal", @@ -2730,42 +2831,41 @@ }, { "name": "monolog/monolog", - "version": "2.8.0", + "version": "3.3.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" + "reference": "9b5daeaffce5b926cac47923798bba91059e60e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", - "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/9b5daeaffce5b926cac47923798bba91059e60e2", + "reference": "9b5daeaffce5b926cac47923798bba91059e60e2", "shasum": "" }, "require": { - "php": ">=7.2", - "psr/log": "^1.0.1 || ^2.0 || ^3.0" + "php": ">=8.1", + "psr/log": "^2.0 || ^3.0" }, "provide": { - "psr/log-implementation": "1.0.0 || 2.0.0 || 3.0.0" + "psr/log-implementation": "3.0.0" }, "require-dev": { - "aws/aws-sdk-php": "^2.4.9 || ^3.0", + "aws/aws-sdk-php": "^3.0", "doctrine/couchdb": "~1.0@dev", "elasticsearch/elasticsearch": "^7 || ^8", "ext-json": "*", - "graylog2/gelf-php": "^1.4.2", - "guzzlehttp/guzzle": "^7.4", + "graylog2/gelf-php": "^1.4.2 || ^2@dev", + "guzzlehttp/guzzle": "^7.4.5", "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "phpspec/prophecy": "^1.15", - "phpstan/phpstan": "^0.12.91", - "phpunit/phpunit": "^8.5.14", - "predis/predis": "^1.1 || ^2.0", - "rollbar/rollbar": "^1.3 || ^2 || ^3", + "phpstan/phpstan": "^1.9", + "phpstan/phpstan-deprecation-rules": "^1.0", + "phpstan/phpstan-strict-rules": "^1.4", + "phpunit/phpunit": "^9.5.26", + "predis/predis": "^1.1 || ^2", "ruflin/elastica": "^7", - "swiftmailer/swiftmailer": "^5.3|^6.0", "symfony/mailer": "^5.4 || ^6", "symfony/mime": "^5.4 || ^6" }, @@ -2788,7 +2888,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -2816,7 +2916,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.8.0" + "source": "https://github.com/Seldaek/monolog/tree/3.3.1" }, "funding": [ { @@ -2828,7 +2928,7 @@ "type": "tidelift" } ], - "time": "2022-07-24T11:55:47+00:00" + "time": "2023-02-06T13:46:10+00:00" }, { "name": "mtdowling/jmespath.php", @@ -2893,16 +2993,16 @@ }, { "name": "nesbot/carbon", - "version": "2.62.1", + "version": "2.66.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" + "reference": "496712849902241f04902033b0441b269effe001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/496712849902241f04902033b0441b269effe001", + "reference": "496712849902241f04902033b0441b269effe001", "shasum": "" }, "require": { @@ -2913,7 +3013,7 @@ "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.0", + "doctrine/dbal": "^2.0 || ^3.1.4", "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^3.0", "kylekatarnls/multi-tester": "^2.0", @@ -2991,29 +3091,29 @@ "type": "tidelift" } ], - "time": "2022-09-02T07:48:13+00:00" + "time": "2023-01-29T18:53:47+00:00" }, { "name": "nette/schema", - "version": "v1.2.2", + "version": "v1.2.3", "source": { "type": "git", "url": "https://github.com/nette/schema.git", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "url": "https://api.github.com/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", "shasum": "" }, "require": { "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.2" + "php": ">=7.1 <8.3" }, "require-dev": { "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^0.12", + "phpstan/phpstan-nette": "^1.0", "tracy/tracy": "^2.7" }, "type": "library", @@ -3051,34 +3151,36 @@ ], "support": { "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.2" + "source": "https://github.com/nette/schema/tree/v1.2.3" }, - "time": "2021-10-15T11:40:02+00:00" + "time": "2022-10-13T01:24:26+00:00" }, { "name": "nette/utils", - "version": "v3.2.8", + "version": "v4.0.0", "source": { "type": "git", "url": "https://github.com/nette/utils.git", - "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368" + "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", - "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "url": "https://api.github.com/repos/nette/utils/zipball/cacdbf5a91a657ede665c541eda28941d4b09c1e", + "reference": "cacdbf5a91a657ede665c541eda28941d4b09c1e", "shasum": "" }, "require": { - "php": ">=7.2 <8.3" + "php": ">=8.0 <8.3" }, "conflict": { - "nette/di": "<3.0.6" + "nette/finder": "<3", + "nette/schema": "<1.2.2" }, "require-dev": { - "nette/tester": "~2.0", + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.4", "phpstan/phpstan": "^1.0", - "tracy/tracy": "^2.3" + "tracy/tracy": "^2.9" }, "suggest": { "ext-gd": "to use Image", @@ -3092,7 +3194,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -3136,22 +3238,22 @@ ], "support": { "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v3.2.8" + "source": "https://github.com/nette/utils/tree/v4.0.0" }, - "time": "2022-09-12T23:36:20+00:00" + "time": "2023-02-02T10:41:53+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.1", + "version": "v4.15.3", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" + "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", "shasum": "" }, "require": { @@ -3192,22 +3294,22 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" }, - "time": "2022-09-04T07:30:47+00:00" + "time": "2023-01-16T22:05:37+00:00" }, { "name": "nunomaduro/termwind", - "version": "v1.14.1", + "version": "v1.15.1", "source": { "type": "git", "url": "https://github.com/nunomaduro/termwind.git", - "reference": "86fc30eace93b9b6d4c844ba6de76db84184e01b" + "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/86fc30eace93b9b6d4c844ba6de76db84184e01b", - "reference": "86fc30eace93b9b6d4c844ba6de76db84184e01b", + "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/8ab0b32c8caa4a2e09700ea32925441385e4a5dc", + "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc", "shasum": "" }, "require": { @@ -3264,7 +3366,7 @@ ], "support": { "issues": "https://github.com/nunomaduro/termwind/issues", - "source": "https://github.com/nunomaduro/termwind/tree/v1.14.1" + "source": "https://github.com/nunomaduro/termwind/tree/v1.15.1" }, "funding": [ { @@ -3280,7 +3382,7 @@ "type": "github" } ], - "time": "2022-10-17T15:20:29+00:00" + "time": "2023-02-08T01:06:31+00:00" }, { "name": "paragonie/constant_time_encoding", @@ -3476,16 +3578,16 @@ }, { "name": "phpseclib/phpseclib", - "version": "3.0.17", + "version": "3.0.18", "source": { "type": "git", "url": "https://github.com/phpseclib/phpseclib.git", - "reference": "dbc2307d5c69aeb22db136c52e91130d7f2ca761" + "reference": "f28693d38ba21bb0d9f0c411ee5dae2b178201da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/dbc2307d5c69aeb22db136c52e91130d7f2ca761", - "reference": "dbc2307d5c69aeb22db136c52e91130d7f2ca761", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/f28693d38ba21bb0d9f0c411ee5dae2b178201da", + "reference": "f28693d38ba21bb0d9f0c411ee5dae2b178201da", "shasum": "" }, "require": { @@ -3566,7 +3668,7 @@ ], "support": { "issues": "https://github.com/phpseclib/phpseclib/issues", - "source": "https://github.com/phpseclib/phpseclib/tree/3.0.17" + "source": "https://github.com/phpseclib/phpseclib/tree/3.0.18" }, "funding": [ { @@ -3582,42 +3684,34 @@ "type": "tidelift" } ], - "time": "2022-10-24T10:51:50+00:00" + "time": "2022-12-17T18:26:50+00:00" }, { "name": "pragmarx/google2fa", - "version": "v5.0.0", + "version": "v8.0.1", "source": { "type": "git", "url": "https://github.com/antonioribeiro/google2fa.git", - "reference": "17c969c82f427dd916afe4be50bafc6299aef1b4" + "reference": "80c3d801b31fe165f8fe99ea085e0a37834e1be3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antonioribeiro/google2fa/zipball/17c969c82f427dd916afe4be50bafc6299aef1b4", - "reference": "17c969c82f427dd916afe4be50bafc6299aef1b4", + "url": "https://api.github.com/repos/antonioribeiro/google2fa/zipball/80c3d801b31fe165f8fe99ea085e0a37834e1be3", + "reference": "80c3d801b31fe165f8fe99ea085e0a37834e1be3", "shasum": "" }, "require": { - "paragonie/constant_time_encoding": "~1.0|~2.0", - "paragonie/random_compat": ">=1", - "php": ">=5.4", - "symfony/polyfill-php56": "~1.2" + "paragonie/constant_time_encoding": "^1.0|^2.0", + "php": "^7.1|^8.0" }, "require-dev": { - "phpunit/phpunit": "~4|~5|~6" + "phpstan/phpstan": "^0.12.18", + "phpunit/phpunit": "^7.5.15|^8.5|^9.0" }, "type": "library", - "extra": { - "component": "package", - "branch-alias": { - "dev-master": "2.0-dev" - } - }, "autoload": { "psr-4": { - "PragmaRX\\Google2FA\\": "src/", - "PragmaRX\\Google2FA\\Tests\\": "tests/" + "PragmaRX\\Google2FA\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3640,22 +3734,22 @@ ], "support": { "issues": "https://github.com/antonioribeiro/google2fa/issues", - "source": "https://github.com/antonioribeiro/google2fa/tree/master" + "source": "https://github.com/antonioribeiro/google2fa/tree/v8.0.1" }, - "time": "2019-03-19T22:44:16+00:00" + "time": "2022-06-13T21:57:56+00:00" }, { "name": "predis/predis", - "version": "v2.0.3", + "version": "v2.1.1", "source": { "type": "git", "url": "https://github.com/predis/predis.git", - "reference": "ff59f745815150c65ed388f7d64e7660fe961771" + "reference": "c5b60884e89630f9518a7919f0566db438f0fc9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/predis/predis/zipball/ff59f745815150c65ed388f7d64e7660fe961771", - "reference": "ff59f745815150c65ed388f7d64e7660fe961771", + "url": "https://api.github.com/repos/predis/predis/zipball/c5b60884e89630f9518a7919f0566db438f0fc9a", + "reference": "c5b60884e89630f9518a7919f0566db438f0fc9a", "shasum": "" }, "require": { @@ -3665,8 +3759,7 @@ "phpunit/phpunit": "^8.0 || ~9.4.4" }, "suggest": { - "ext-curl": "Allows access to Webdis when paired with phpiredis", - "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol" + "ext-curl": "Allows access to Webdis when paired with phpiredis" }, "type": "library", "extra": { @@ -3684,16 +3777,16 @@ "MIT" ], "authors": [ - { - "name": "Daniele Alessandri", - "email": "suppakilla@gmail.com", - "homepage": "http://clorophilla.net", - "role": "Creator & Maintainer" - }, { "name": "Till Krüss", "homepage": "https://till.im", "role": "Maintainer" + }, + { + "name": "Daniele Alessandri", + "email": "suppakilla@gmail.com", + "homepage": "http://clorophilla.net", + "role": "Creator" } ], "description": "A flexible and feature-complete Redis client for PHP.", @@ -3705,7 +3798,7 @@ ], "support": { "issues": "https://github.com/predis/predis/issues", - "source": "https://github.com/predis/predis/tree/v2.0.3" + "source": "https://github.com/predis/predis/tree/v2.1.1" }, "funding": [ { @@ -3713,30 +3806,30 @@ "type": "github" } ], - "time": "2022-10-11T16:52:29+00:00" + "time": "2023-01-17T20:57:35+00:00" }, { "name": "prologue/alerts", - "version": "1.0.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/prologuephp/alerts.git", - "reference": "b2880e28814b8dba8768e60e00511627381efe14" + "reference": "33e86d1f64dae7a8d6e29e7d6c282abc77a89b97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/prologuephp/alerts/zipball/b2880e28814b8dba8768e60e00511627381efe14", - "reference": "b2880e28814b8dba8768e60e00511627381efe14", + "url": "https://api.github.com/repos/prologuephp/alerts/zipball/33e86d1f64dae7a8d6e29e7d6c282abc77a89b97", + "reference": "33e86d1f64dae7a8d6e29e7d6c282abc77a89b97", "shasum": "" }, "require": { - "illuminate/config": "~9", - "illuminate/session": "~9", - "illuminate/support": "~9" + "illuminate/config": "~9|^10", + "illuminate/session": "~9|^10", + "illuminate/support": "~9|^10" }, "require-dev": { - "mockery/mockery": "~0.9", - "phpunit/phpunit": "~4.1" + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^9" }, "type": "library", "extra": { @@ -3780,9 +3873,9 @@ ], "support": { "issues": "https://github.com/prologuephp/alerts/issues", - "source": "https://github.com/prologuephp/alerts/tree/1.0.0" + "source": "https://github.com/prologuephp/alerts/tree/1.1.0" }, - "time": "2022-01-19T09:28:45+00:00" + "time": "2023-02-01T06:54:14+00:00" }, { "name": "psr/cache", @@ -3833,6 +3926,54 @@ }, "time": "2021-02-03T23:26:27+00:00" }, + { + "name": "psr/clock", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Clock\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", + "keywords": [ + "clock", + "now", + "psr", + "psr-20", + "time" + ], + "support": { + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" + }, + "time": "2022-11-25T14:36:26+00:00" + }, { "name": "psr/container", "version": "2.0.2", @@ -4199,16 +4340,16 @@ }, { "name": "psy/psysh", - "version": "v0.11.8", + "version": "v0.11.12", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "f455acf3645262ae389b10e9beba0c358aa6994e" + "reference": "52cb7c47d403c31c0adc9bf7710fc355f93c20f7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/f455acf3645262ae389b10e9beba0c358aa6994e", - "reference": "f455acf3645262ae389b10e9beba0c358aa6994e", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/52cb7c47d403c31c0adc9bf7710fc355f93c20f7", + "reference": "52cb7c47d403c31c0adc9bf7710fc355f93c20f7", "shasum": "" }, "require": { @@ -4269,9 +4410,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.11.8" + "source": "https://github.com/bobthecow/psysh/tree/v0.11.12" }, - "time": "2022-07-28T14:25:11+00:00" + "time": "2023-01-29T21:24:40+00:00" }, { "name": "ralouphie/getallheaders", @@ -4319,42 +4460,52 @@ }, { "name": "ramsey/collection", - "version": "1.2.2", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/ramsey/collection.git", - "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a" + "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a", - "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a", + "url": "https://api.github.com/repos/ramsey/collection/zipball/a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", + "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5", "shasum": "" }, "require": { - "php": "^7.3 || ^8", - "symfony/polyfill-php81": "^1.23" + "php": "^8.1" }, "require-dev": { - "captainhook/captainhook": "^5.3", - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "ergebnis/composer-normalize": "^2.6", - "fakerphp/faker": "^1.5", - "hamcrest/hamcrest-php": "^2", - "jangregor/phpstan-prophecy": "^0.8", - "mockery/mockery": "^1.3", + "captainhook/plugin-composer": "^5.3", + "ergebnis/composer-normalize": "^2.28.3", + "fakerphp/faker": "^1.21", + "hamcrest/hamcrest-php": "^2.0", + "jangregor/phpstan-prophecy": "^1.0", + "mockery/mockery": "^1.5", + "php-parallel-lint/php-console-highlighter": "^1.0", + "php-parallel-lint/php-parallel-lint": "^1.3", + "phpcsstandards/phpcsutils": "^1.0.0-rc1", "phpspec/prophecy-phpunit": "^2.0", - "phpstan/extension-installer": "^1", - "phpstan/phpstan": "^0.12.32", - "phpstan/phpstan-mockery": "^0.12.5", - "phpstan/phpstan-phpunit": "^0.12.11", - "phpunit/phpunit": "^8.5 || ^9", - "psy/psysh": "^0.10.4", - "slevomat/coding-standard": "^6.3", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.4" + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.9", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5", + "psalm/plugin-mockery": "^1.1", + "psalm/plugin-phpunit": "^0.18.4", + "ramsey/coding-standard": "^2.0.3", + "ramsey/conventional-commits": "^1.3", + "vimeo/psalm": "^5.4" }, "type": "library", + "extra": { + "captainhook": { + "force-install": true + }, + "ramsey/conventional-commits": { + "configFile": "conventional-commits.json" + } + }, "autoload": { "psr-4": { "Ramsey\\Collection\\": "src/" @@ -4382,7 +4533,7 @@ ], "support": { "issues": "https://github.com/ramsey/collection/issues", - "source": "https://github.com/ramsey/collection/tree/1.2.2" + "source": "https://github.com/ramsey/collection/tree/2.0.0" }, "funding": [ { @@ -4394,28 +4545,27 @@ "type": "tidelift" } ], - "time": "2021-10-10T03:01:02+00:00" + "time": "2022-12-31T21:50:55+00:00" }, { "name": "ramsey/uuid", - "version": "4.5.1", + "version": "4.7.3", "source": { "type": "git", "url": "https://github.com/ramsey/uuid.git", - "reference": "a161a26d917604dc6d3aa25100fddf2556e9f35d" + "reference": "433b2014e3979047db08a17a205f410ba3869cf2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/a161a26d917604dc6d3aa25100fddf2556e9f35d", - "reference": "a161a26d917604dc6d3aa25100fddf2556e9f35d", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/433b2014e3979047db08a17a205f410ba3869cf2", + "reference": "433b2014e3979047db08a17a205f410ba3869cf2", "shasum": "" }, "require": { "brick/math": "^0.8.8 || ^0.9 || ^0.10", - "ext-ctype": "*", "ext-json": "*", "php": "^8.0", - "ramsey/collection": "^1.0" + "ramsey/collection": "^1.2 || ^2.0" }, "replace": { "rhumsaa/uuid": "self.version" @@ -4444,7 +4594,6 @@ }, "suggest": { "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", - "ext-ctype": "Enables faster processing of character classification using ctype functions.", "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", @@ -4476,7 +4625,7 @@ ], "support": { "issues": "https://github.com/ramsey/uuid/issues", - "source": "https://github.com/ramsey/uuid/tree/4.5.1" + "source": "https://github.com/ramsey/uuid/tree/4.7.3" }, "funding": [ { @@ -4488,29 +4637,29 @@ "type": "tidelift" } ], - "time": "2022-09-16T03:22:46+00:00" + "time": "2023-01-12T18:13:24+00:00" }, { "name": "s1lentium/iptools", - "version": "v1.1.1", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/S1lentium/IPTools.git", - "reference": "f6f8ab6132ca7443bd7cced1681f5066d725fd5f" + "reference": "88be1aaaab3c50fc131ebe778e246215ff006d8e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/S1lentium/IPTools/zipball/f6f8ab6132ca7443bd7cced1681f5066d725fd5f", - "reference": "f6f8ab6132ca7443bd7cced1681f5066d725fd5f", + "url": "https://api.github.com/repos/S1lentium/IPTools/zipball/88be1aaaab3c50fc131ebe778e246215ff006d8e", + "reference": "88be1aaaab3c50fc131ebe778e246215ff006d8e", "shasum": "" }, "require": { "ext-bcmath": "*", - "php": ">=5.4.0" + "php": "^8.0" }, "require-dev": { - "phpunit/phpunit": "~4.0", - "satooshi/php-coveralls": "~1.0" + "php-coveralls/php-coveralls": "^2.5", + "phpunit/phpunit": "^9.0" }, "type": "library", "autoload": { @@ -4541,9 +4690,9 @@ ], "support": { "issues": "https://github.com/S1lentium/IPTools/issues", - "source": "https://github.com/S1lentium/IPTools/tree/master" + "source": "https://github.com/S1lentium/IPTools/tree/v1.2.0" }, - "time": "2018-09-19T06:15:53+00:00" + "time": "2022-08-17T14:28:59+00:00" }, { "name": "spatie/fractalistic", @@ -4608,28 +4757,31 @@ }, { "name": "spatie/laravel-fractal", - "version": "6.0.2", + "version": "6.0.3", "source": { "type": "git", "url": "https://github.com/spatie/laravel-fractal.git", - "reference": "1e6b8114389fe8e55eec3a841db02c404458f869" + "reference": "28ea9803d2cba7a7144336a2ba62275316c122c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-fractal/zipball/1e6b8114389fe8e55eec3a841db02c404458f869", - "reference": "1e6b8114389fe8e55eec3a841db02c404458f869", + "url": "https://api.github.com/repos/spatie/laravel-fractal/zipball/28ea9803d2cba7a7144336a2ba62275316c122c8", + "reference": "28ea9803d2cba7a7144336a2ba62275316c122c8", "shasum": "" }, "require": { - "illuminate/contracts": "^8.0|^9.0", - "illuminate/support": "^8.0|^9.0", + "illuminate/contracts": "^8.0|^9.0|^10.0", + "illuminate/support": "^8.0|^9.0|^10.0", + "league/fractal": "^0.20.1|^0.20", + "nesbot/carbon": "^2.63", "php": "^8.0", - "spatie/fractalistic": "^2.5", + "spatie/fractalistic": "^2.9.5|^2.9", "spatie/laravel-package-tools": "^1.11" }, "require-dev": { "ext-json": "*", - "orchestra/testbench": "^7.0" + "orchestra/testbench": "^7.0|^8.0", + "pestphp/pest": "^1.22" }, "type": "library", "extra": { @@ -4674,8 +4826,7 @@ "transform" ], "support": { - "issues": "https://github.com/spatie/laravel-fractal/issues", - "source": "https://github.com/spatie/laravel-fractal/tree/6.0.2" + "source": "https://github.com/spatie/laravel-fractal/tree/6.0.3" }, "funding": [ { @@ -4683,31 +4834,32 @@ "type": "custom" } ], - "time": "2022-04-04T07:53:13+00:00" + "time": "2023-01-30T22:11:18+00:00" }, { "name": "spatie/laravel-package-tools", - "version": "1.13.6", + "version": "1.14.1", "source": { "type": "git", "url": "https://github.com/spatie/laravel-package-tools.git", - "reference": "c377cc7223655c2278c148c1685b8b5a78af5c65" + "reference": "b477dd2f89d0751f0e51ffb3a70181f0bc7ab8df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/c377cc7223655c2278c148c1685b8b5a78af5c65", - "reference": "c377cc7223655c2278c148c1685b8b5a78af5c65", + "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/b477dd2f89d0751f0e51ffb3a70181f0bc7ab8df", + "reference": "b477dd2f89d0751f0e51ffb3a70181f0bc7ab8df", "shasum": "" }, "require": { - "illuminate/contracts": "^9.28", + "illuminate/contracts": "^9.28|^10.0", "php": "^8.0" }, "require-dev": { "mockery/mockery": "^1.5", - "orchestra/testbench": "^7.7", + "orchestra/testbench": "^7.7|^8.0", + "pestphp/pest": "^1.22", "phpunit/phpunit": "^9.5.24", - "spatie/test-time": "^1.3" + "spatie/pest-plugin-test-time": "^1.1" }, "type": "library", "autoload": { @@ -4734,7 +4886,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-package-tools/issues", - "source": "https://github.com/spatie/laravel-package-tools/tree/1.13.6" + "source": "https://github.com/spatie/laravel-package-tools/tree/1.14.1" }, "funding": [ { @@ -4742,33 +4894,33 @@ "type": "github" } ], - "time": "2022-10-11T06:37:42+00:00" + "time": "2023-01-27T15:33:45+00:00" }, { "name": "spatie/laravel-query-builder", - "version": "5.0.3", + "version": "5.1.2", "source": { "type": "git", "url": "https://github.com/spatie/laravel-query-builder.git", - "reference": "2243e3d60fc184ef20ad2b19765bc7006fa9dbfc" + "reference": "5908f58fdff70fb600982b58c187e84855e2b5bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-query-builder/zipball/2243e3d60fc184ef20ad2b19765bc7006fa9dbfc", - "reference": "2243e3d60fc184ef20ad2b19765bc7006fa9dbfc", + "url": "https://api.github.com/repos/spatie/laravel-query-builder/zipball/5908f58fdff70fb600982b58c187e84855e2b5bc", + "reference": "5908f58fdff70fb600982b58c187e84855e2b5bc", "shasum": "" }, "require": { - "illuminate/database": "^9.0", - "illuminate/http": "^9.0", - "illuminate/support": "^9.0", + "illuminate/database": "^9.0|^10.0", + "illuminate/http": "^9.0|^10.0", + "illuminate/support": "^9.0|^10.0", "php": "^8.0", "spatie/laravel-package-tools": "^1.11" }, "require-dev": { "ext-json": "*", "mockery/mockery": "^1.4", - "orchestra/testbench": "^7.0", + "orchestra/testbench": "^7.0|^8.0", "pestphp/pest": "^1.20", "spatie/laravel-ray": "^1.28" }, @@ -4814,28 +4966,28 @@ "type": "custom" } ], - "time": "2022-07-29T14:19:59+00:00" + "time": "2023-01-24T23:33:10+00:00" }, { "name": "staudenmeir/belongs-to-through", - "version": "v2.12.1", + "version": "v2.13", "source": { "type": "git", "url": "https://github.com/staudenmeir/belongs-to-through.git", - "reference": "8316d274db603f63b16bb1c67379b0fa73209d98" + "reference": "e777027d648971c9686f9d7c284f324db7cce3c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/staudenmeir/belongs-to-through/zipball/8316d274db603f63b16bb1c67379b0fa73209d98", - "reference": "8316d274db603f63b16bb1c67379b0fa73209d98", + "url": "https://api.github.com/repos/staudenmeir/belongs-to-through/zipball/e777027d648971c9686f9d7c284f324db7cce3c0", + "reference": "e777027d648971c9686f9d7c284f324db7cce3c0", "shasum": "" }, "require": { - "illuminate/database": "^9.0", - "php": "^8.0.2" + "illuminate/database": "^10.0", + "php": "^8.1" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^9.5.27" }, "type": "library", "autoload": { @@ -4860,7 +5012,7 @@ "description": "Laravel Eloquent BelongsToThrough relationships", "support": { "issues": "https://github.com/staudenmeir/belongs-to-through/issues", - "source": "https://github.com/staudenmeir/belongs-to-through/tree/v2.12.1" + "source": "https://github.com/staudenmeir/belongs-to-through/tree/v2.13" }, "funding": [ { @@ -4868,71 +5020,25 @@ "type": "custom" } ], - "time": "2022-03-10T21:14:19+00:00" - }, - { - "name": "stella-maris/clock", - "version": "0.1.6", - "source": { - "type": "git", - "url": "https://github.com/stella-maris-solutions/clock.git", - "reference": "a94228dac03c9a8411198ce8c8dacbbe99c930c3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/stella-maris-solutions/clock/zipball/a94228dac03c9a8411198ce8c8dacbbe99c930c3", - "reference": "a94228dac03c9a8411198ce8c8dacbbe99c930c3", - "shasum": "" - }, - "require": { - "php": "^7.0|^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "StellaMaris\\Clock\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Andreas Heigl", - "role": "Maintainer" - } - ], - "description": "A pre-release of the proposed PSR-20 Clock-Interface", - "homepage": "https://gitlab.com/stella-maris/clock", - "keywords": [ - "clock", - "datetime", - "point in time", - "psr20" - ], - "support": { - "issues": "https://github.com/stella-maris-solutions/clock/issues", - "source": "https://github.com/stella-maris-solutions/clock/tree/0.1.6" - }, - "time": "2022-09-27T15:03:11+00:00" + "time": "2023-01-18T12:40:35+00:00" }, { "name": "symfony/console", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1f89cab8d52c84424f798495b3f10342a7b1a070" + "reference": "3e294254f2191762c1d137aed4b94e966965e985" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1f89cab8d52c84424f798495b3f10342a7b1a070", - "reference": "1f89cab8d52c84424f798495b3f10342a7b1a070", + "url": "https://api.github.com/repos/symfony/console/zipball/3e294254f2191762c1d137aed4b94e966965e985", + "reference": "3e294254f2191762c1d137aed4b94e966965e985", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^1.1|^2|^3", "symfony/string": "^5.4|^6.0" @@ -4994,7 +5100,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.0.14" + "source": "https://github.com/symfony/console/tree/v6.2.5" }, "funding": [ { @@ -5010,24 +5116,24 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/css-selector", - "version": "v6.0.11", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "ab2746acddc4f03a7234c8441822ac5d5c63efe9" + "reference": "bf1b9d4ad8b1cf0dbde8b08e0135a2f6259b9ba1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/ab2746acddc4f03a7234c8441822ac5d5c63efe9", - "reference": "ab2746acddc4f03a7234c8441822ac5d5c63efe9", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/bf1b9d4ad8b1cf0dbde8b08e0135a2f6259b9ba1", + "reference": "bf1b9d4ad8b1cf0dbde8b08e0135a2f6259b9ba1", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -5059,7 +5165,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v6.0.11" + "source": "https://github.com/symfony/css-selector/tree/v6.2.5" }, "funding": [ { @@ -5075,29 +5181,29 @@ "type": "tidelift" } ], - "time": "2022-06-27T17:10:44+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.0.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c" + "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", - "reference": "26954b3d62a6c5fd0ea8a2a00c0353a14978d05c", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -5126,7 +5232,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.0.2" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0" }, "funding": [ { @@ -5142,24 +5248,24 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-11-25T10:21:52+00:00" }, { "name": "symfony/error-handler", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "81e57c793d9a573f29f8b5296d5d8ee4602badcb" + "reference": "0092696af0be8e6124b042fbe2890ca1788d7b28" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/81e57c793d9a573f29f8b5296d5d8ee4602badcb", - "reference": "81e57c793d9a573f29f8b5296d5d8ee4602badcb", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/0092696af0be8e6124b042fbe2890ca1788d7b28", + "reference": "0092696af0be8e6124b042fbe2890ca1788d7b28", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/log": "^1|^2|^3", "symfony/var-dumper": "^5.4|^6.0" }, @@ -5197,7 +5303,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.0.14" + "source": "https://github.com/symfony/error-handler/tree/v6.2.5" }, "funding": [ { @@ -5213,24 +5319,24 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v6.0.9", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "5c85b58422865d42c6eb46f7693339056db098a8" + "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/5c85b58422865d42c6eb46f7693339056db098a8", - "reference": "5c85b58422865d42c6eb46f7693339056db098a8", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68", + "reference": "f02d108b5e9fd4a6245aa73a9d2df2ec060c3e68", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/event-dispatcher-contracts": "^2|^3" }, "conflict": { @@ -5280,7 +5386,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.0.9" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.5" }, "funding": [ { @@ -5296,24 +5402,24 @@ "type": "tidelift" } ], - "time": "2022-05-05T16:45:52+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.0.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051" + "reference": "0782b0b52a737a05b4383d0df35a474303cabdae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7bc61cc2db649b4637d331240c5346dcc7708051", - "reference": "7bc61cc2db649b4637d331240c5346dcc7708051", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae", + "reference": "0782b0b52a737a05b4383d0df35a474303cabdae", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/event-dispatcher": "^1" }, "suggest": { @@ -5322,7 +5428,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -5359,7 +5465,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.0" }, "funding": [ { @@ -5375,24 +5481,27 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2022-11-25T10:21:52+00:00" }, { "name": "symfony/finder", - "version": "v6.0.11", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "09cb683ba5720385ea6966e5e06be2a34f2568b1" + "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/09cb683ba5720385ea6966e5e06be2a34f2568b1", - "reference": "09cb683ba5720385ea6966e5e06be2a34f2568b1", + "url": "https://api.github.com/repos/symfony/finder/zipball/c90dc446976a612e3312a97a6ec0069ab0c2099c", + "reference": "c90dc446976a612e3312a97a6ec0069ab0c2099c", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -5420,7 +5529,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.0.11" + "source": "https://github.com/symfony/finder/tree/v6.2.5" }, "funding": [ { @@ -5436,25 +5545,26 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:39:48+00:00" + "time": "2023-01-20T17:45:48+00:00" }, { "name": "symfony/http-client", - "version": "v6.0.14", + "version": "v6.2.6", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "ec183a587e3ad47f03cf1572d4b8437e0fc3e923" + "reference": "6efa9a7521ab7d031a82cf0a759484d1b02a6ad9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/ec183a587e3ad47f03cf1572d4b8437e0fc3e923", - "reference": "ec183a587e3ad47f03cf1572d4b8437e0fc3e923", + "url": "https://api.github.com/repos/symfony/http-client/zipball/6efa9a7521ab7d031a82cf0a759484d1b02a6ad9", + "reference": "6efa9a7521ab7d031a82cf0a759484d1b02a6ad9", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.1|^3", "symfony/http-client-contracts": "^3", "symfony/service-contracts": "^1.0|^2|^3" }, @@ -5504,7 +5614,7 @@ "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-client/tree/v6.0.14" + "source": "https://github.com/symfony/http-client/tree/v6.2.6" }, "funding": [ { @@ -5520,24 +5630,24 @@ "type": "tidelift" } ], - "time": "2022-10-11T15:20:43+00:00" + "time": "2023-01-30T15:46:28+00:00" }, { "name": "symfony/http-client-contracts", - "version": "v3.0.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "4184b9b63af1edaf35b6a7974c6f1f9f33294129" + "reference": "c5f587eb445224ddfeb05b5ee703476742d730bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/4184b9b63af1edaf35b6a7974c6f1f9f33294129", - "reference": "4184b9b63af1edaf35b6a7974c6f1f9f33294129", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/c5f587eb445224ddfeb05b5ee703476742d730bf", + "reference": "c5f587eb445224ddfeb05b5ee703476742d730bf", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "suggest": { "symfony/http-client-implementation": "" @@ -5545,7 +5655,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -5555,7 +5665,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\HttpClient\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5582,7 +5695,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/http-client-contracts/tree/v3.2.0" }, "funding": [ { @@ -5598,27 +5711,30 @@ "type": "tidelift" } ], - "time": "2022-04-12T16:11:42+00:00" + "time": "2022-11-25T10:21:52+00:00" }, { "name": "symfony/http-foundation", - "version": "v6.0.14", + "version": "v6.2.6", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "e8aa505d35660877e6695d68be53df2ceac7cf57" + "reference": "e8dd1f502bc2b3371d05092aa233b064b03ce7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e8aa505d35660877e6695d68be53df2ceac7cf57", - "reference": "e8aa505d35660877e6695d68be53df2ceac7cf57", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e8dd1f502bc2b3371d05092aa233b064b03ce7ed", + "reference": "e8dd1f502bc2b3371d05092aa233b064b03ce7ed", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.1" }, + "conflict": { + "symfony/cache": "<6.2" + }, "require-dev": { "predis/predis": "~1.0", "symfony/cache": "^5.4|^6.0", @@ -5657,7 +5773,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.0.14" + "source": "https://github.com/symfony/http-foundation/tree/v6.2.6" }, "funding": [ { @@ -5673,26 +5789,27 @@ "type": "tidelift" } ], - "time": "2022-10-02T08:16:40+00:00" + "time": "2023-01-30T15:46:28+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.0.14", + "version": "v6.2.6", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "f9fc93c4f12e2fd7dea37f7b5840deb34e9037fc" + "reference": "7122db07b0d8dbf0de682267c84217573aee3ea7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f9fc93c4f12e2fd7dea37f7b5840deb34e9037fc", - "reference": "f9fc93c4f12e2fd7dea37f7b5840deb34e9037fc", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/7122db07b0d8dbf0de682267c84217573aee3ea7", + "reference": "7122db07b0d8dbf0de682267c84217573aee3ea7", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/log": "^1|^2|^3", - "symfony/error-handler": "^5.4|^6.0", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/error-handler": "^6.1", "symfony/event-dispatcher": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", "symfony/polyfill-ctype": "^1.8" @@ -5700,9 +5817,9 @@ "conflict": { "symfony/browser-kit": "<5.4", "symfony/cache": "<5.4", - "symfony/config": "<5.4", + "symfony/config": "<6.1", "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", + "symfony/dependency-injection": "<6.2", "symfony/doctrine-bridge": "<5.4", "symfony/form": "<5.4", "symfony/http-client": "<5.4", @@ -5719,10 +5836,10 @@ "require-dev": { "psr/cache": "^1.0|^2.0|^3.0", "symfony/browser-kit": "^5.4|^6.0", - "symfony/config": "^5.4|^6.0", + "symfony/config": "^6.1", "symfony/console": "^5.4|^6.0", "symfony/css-selector": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", + "symfony/dependency-injection": "^6.2", "symfony/dom-crawler": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/finder": "^5.4|^6.0", @@ -5732,6 +5849,7 @@ "symfony/stopwatch": "^5.4|^6.0", "symfony/translation": "^5.4|^6.0", "symfony/translation-contracts": "^1.1|^2|^3", + "symfony/uid": "^5.4|^6.0", "twig/twig": "^2.13|^3.0.4" }, "suggest": { @@ -5766,7 +5884,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.0.14" + "source": "https://github.com/symfony/http-kernel/tree/v6.2.6" }, "funding": [ { @@ -5782,37 +5900,42 @@ "type": "tidelift" } ], - "time": "2022-10-12T07:43:45+00:00" + "time": "2023-02-01T08:32:25+00:00" }, { "name": "symfony/mailer", - "version": "v6.0.13", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "6269c872ab4792e8facbf8af27a2fbee8429f217" + "reference": "29729ac0b4e5113f24c39c46746bd6afb79e0aaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/6269c872ab4792e8facbf8af27a2fbee8429f217", - "reference": "6269c872ab4792e8facbf8af27a2fbee8429f217", + "url": "https://api.github.com/repos/symfony/mailer/zipball/29729ac0b4e5113f24c39c46746bd6afb79e0aaa", + "reference": "29729ac0b4e5113f24c39c46746bd6afb79e0aaa", "shasum": "" }, "require": { - "egulias/email-validator": "^2.1.10|^3", - "php": ">=8.0.2", + "egulias/email-validator": "^2.1.10|^3|^4", + "php": ">=8.1", "psr/event-dispatcher": "^1", "psr/log": "^1|^2|^3", "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/mime": "^5.4|^6.0", + "symfony/mime": "^6.2", "symfony/service-contracts": "^1.1|^2|^3" }, "conflict": { - "symfony/http-kernel": "<5.4" + "symfony/http-kernel": "<5.4", + "symfony/messenger": "<6.2", + "symfony/mime": "<6.2", + "symfony/twig-bridge": "<6.2.1" }, "require-dev": { + "symfony/console": "^5.4|^6.0", "symfony/http-client-contracts": "^1.1|^2|^3", - "symfony/messenger": "^5.4|^6.0" + "symfony/messenger": "^6.2", + "symfony/twig-bridge": "^6.2" }, "type": "library", "autoload": { @@ -5840,7 +5963,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.0.13" + "source": "https://github.com/symfony/mailer/tree/v6.2.5" }, "funding": [ { @@ -5856,24 +5979,24 @@ "type": "tidelift" } ], - "time": "2022-08-29T06:49:22+00:00" + "time": "2023-01-10T18:53:53+00:00" }, { "name": "symfony/mailgun-mailer", - "version": "v6.0.7", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/mailgun-mailer.git", - "reference": "f0d032c26683b26f4bc26864e09b1e08fa55226e" + "reference": "d1eb7283e30752f2802ced37bffdee2c67cad42a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/f0d032c26683b26f4bc26864e09b1e08fa55226e", - "reference": "f0d032c26683b26f4bc26864e09b1e08fa55226e", + "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/d1eb7283e30752f2802ced37bffdee2c67cad42a", + "reference": "d1eb7283e30752f2802ced37bffdee2c67cad42a", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/mailer": "^5.4|^6.0" }, "require-dev": { @@ -5905,7 +6028,7 @@ "description": "Symfony Mailgun Mailer Bridge", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailgun-mailer/tree/v6.0.7" + "source": "https://github.com/symfony/mailgun-mailer/tree/v6.2.5" }, "funding": [ { @@ -5921,24 +6044,24 @@ "type": "tidelift" } ], - "time": "2022-03-24T17:11:42+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/mime", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "c01b88b63418131daf2edd0bdc17fc8a6d1c939a" + "reference": "4b7b349f67d15cd0639955c8179a76c89f6fd610" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/c01b88b63418131daf2edd0bdc17fc8a6d1c939a", - "reference": "c01b88b63418131daf2edd0bdc17fc8a6d1c939a", + "url": "https://api.github.com/repos/symfony/mime/zipball/4b7b349f67d15cd0639955c8179a76c89f6fd610", + "reference": "4b7b349f67d15cd0639955c8179a76c89f6fd610", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, @@ -5947,15 +6070,16 @@ "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", "symfony/mailer": "<5.4", - "symfony/serializer": "<5.4.14|>=6.0,<6.0.14|>=6.1,<6.1.6" + "symfony/serializer": "<6.2" }, "require-dev": { - "egulias/email-validator": "^2.1.10|^3.1", + "egulias/email-validator": "^2.1.10|^3.1|^4", + "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", "symfony/dependency-injection": "^5.4|^6.0", "symfony/property-access": "^5.4|^6.0", "symfony/property-info": "^5.4|^6.0", - "symfony/serializer": "^5.4.14|~6.0.14|^6.1.6" + "symfony/serializer": "^6.2" }, "type": "library", "autoload": { @@ -5987,7 +6111,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.0.14" + "source": "https://github.com/symfony/mime/tree/v6.2.5" }, "funding": [ { @@ -6003,20 +6127,20 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-01-10T18:53:53+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", "shasum": "" }, "require": { @@ -6031,7 +6155,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6069,7 +6193,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" }, "funding": [ { @@ -6085,20 +6209,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "433d05519ce6990bf3530fba6957499d327395c2" + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", - "reference": "433d05519ce6990bf3530fba6957499d327395c2", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", "shasum": "" }, "require": { @@ -6110,7 +6234,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6150,7 +6274,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" }, "funding": [ { @@ -6166,20 +6290,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8" + "reference": "639084e360537a19f9ee352433b84ce831f3d2da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/59a8d271f00dd0e4c2e518104cc7963f655a1aa8", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", + "reference": "639084e360537a19f9ee352433b84ce831f3d2da", "shasum": "" }, "require": { @@ -6193,7 +6317,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6237,7 +6361,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.27.0" }, "funding": [ { @@ -6253,20 +6377,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd" + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "shasum": "" }, "require": { @@ -6278,7 +6402,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6321,7 +6445,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" }, "funding": [ { @@ -6337,20 +6461,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", "shasum": "" }, "require": { @@ -6365,7 +6489,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6404,7 +6528,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" }, "funding": [ { @@ -6420,88 +6544,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-php56", - "version": "v1.20.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", - "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", - "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 5.6+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php56/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" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", "shasum": "" }, "require": { @@ -6510,7 +6566,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6548,7 +6604,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" }, "funding": [ { @@ -6564,20 +6620,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -6586,7 +6642,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6631,7 +6687,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -6647,99 +6703,20 @@ "type": "tidelift" } ], - "time": "2022-05-10T07:21:04+00:00" - }, - { - "name": "symfony/polyfill-php81", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "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 8.1+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.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-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-uuid", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-uuid.git", - "reference": "a41886c1c81dc075a09c71fe6db5b9d68c79de23" + "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/a41886c1c81dc075a09c71fe6db5b9d68c79de23", - "reference": "a41886c1c81dc075a09c71fe6db5b9d68c79de23", + "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/f3cf1a645c2734236ed1e2e671e273eeb3586166", + "reference": "f3cf1a645c2734236ed1e2e671e273eeb3586166", "shasum": "" }, "require": { @@ -6754,7 +6731,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6792,7 +6769,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.27.0" }, "funding": [ { @@ -6808,24 +6785,24 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/postmark-mailer", - "version": "v6.0.7", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/postmark-mailer.git", - "reference": "8405569233efb0140e55eb6236c9e55693f058ff" + "reference": "b6630e287f94fbc1f0f0a20a3a147a69ac8f862b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/postmark-mailer/zipball/8405569233efb0140e55eb6236c9e55693f058ff", - "reference": "8405569233efb0140e55eb6236c9e55693f058ff", + "url": "https://api.github.com/repos/symfony/postmark-mailer/zipball/b6630e287f94fbc1f0f0a20a3a147a69ac8f862b", + "reference": "b6630e287f94fbc1f0f0a20a3a147a69ac8f862b", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/mailer": "^5.4|^6.0" }, "require-dev": { @@ -6857,7 +6834,7 @@ "description": "Symfony Postmark Mailer Bridge", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/postmark-mailer/tree/v6.0.7" + "source": "https://github.com/symfony/postmark-mailer/tree/v6.2.5" }, "funding": [ { @@ -6873,24 +6850,24 @@ "type": "tidelift" } ], - "time": "2022-03-24T17:11:42+00:00" + "time": "2023-01-01T08:36:55+00:00" }, { "name": "symfony/process", - "version": "v6.0.11", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "44270a08ccb664143dede554ff1c00aaa2247a43" + "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/44270a08ccb664143dede554ff1c00aaa2247a43", - "reference": "44270a08ccb664143dede554ff1c00aaa2247a43", + "url": "https://api.github.com/repos/symfony/process/zipball/9ead139f63dfa38c4e4a9049cc64a8b2748c83b7", + "reference": "9ead139f63dfa38c4e4a9049cc64a8b2748c83b7", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -6918,7 +6895,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.0.11" + "source": "https://github.com/symfony/process/tree/v6.2.5" }, "funding": [ { @@ -6934,35 +6911,35 @@ "type": "tidelift" } ], - "time": "2022-06-27T17:10:44+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/routing", - "version": "v6.0.11", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "434b64f7d3a582ec33fcf69baaf085473e67d639" + "reference": "589bd742d5d03c192c8521911680fe88f61712fe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/434b64f7d3a582ec33fcf69baaf085473e67d639", - "reference": "434b64f7d3a582ec33fcf69baaf085473e67d639", + "url": "https://api.github.com/repos/symfony/routing/zipball/589bd742d5d03c192c8521911680fe88f61712fe", + "reference": "589bd742d5d03c192c8521911680fe88f61712fe", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "conflict": { "doctrine/annotations": "<1.12", - "symfony/config": "<5.4", + "symfony/config": "<6.2", "symfony/dependency-injection": "<5.4", "symfony/yaml": "<5.4" }, "require-dev": { - "doctrine/annotations": "^1.12", + "doctrine/annotations": "^1.12|^2", "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", + "symfony/config": "^6.2", "symfony/dependency-injection": "^5.4|^6.0", "symfony/expression-language": "^5.4|^6.0", "symfony/http-foundation": "^5.4|^6.0", @@ -7006,7 +6983,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.0.11" + "source": "https://github.com/symfony/routing/tree/v6.2.5" }, "funding": [ { @@ -7022,24 +6999,24 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:45:53+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.0.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66" + "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d78d39c1599bd1188b8e26bb341da52c3c6d8a66", - "reference": "d78d39c1599bd1188b8e26bb341da52c3c6d8a66", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "psr/container": "^2.0" }, "conflict": { @@ -7051,7 +7028,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -7061,7 +7038,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -7088,7 +7068,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/service-contracts/tree/v3.2.0" }, "funding": [ { @@ -7104,24 +7084,24 @@ "type": "tidelift" } ], - "time": "2022-05-30T19:17:58+00:00" + "time": "2022-11-25T10:21:52+00:00" }, { "name": "symfony/string", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "3db7da820a6e4a584b714b3933c34c6a7db4d86c" + "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/3db7da820a6e4a584b714b3933c34c6a7db4d86c", - "reference": "3db7da820a6e4a584b714b3933c34c6a7db4d86c", + "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", + "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", @@ -7133,6 +7113,7 @@ "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/var-exporter": "^5.4|^6.0" }, @@ -7173,7 +7154,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.0.14" + "source": "https://github.com/symfony/string/tree/v6.2.5" }, "funding": [ { @@ -7189,24 +7170,24 @@ "type": "tidelift" } ], - "time": "2022-10-10T09:34:08+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/translation", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c" + "reference": "60556925a703cfbc1581cde3b3f35b0bb0ea904c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/6f99eb179aee4652c0a7cd7c11f2a870d904330c", - "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c", + "url": "https://api.github.com/repos/symfony/translation/zipball/60556925a703cfbc1581cde3b3f35b0bb0ea904c", + "reference": "60556925a703cfbc1581cde3b3f35b0bb0ea904c", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-mbstring": "~1.0", "symfony/translation-contracts": "^2.3|^3.0" }, @@ -7222,6 +7203,7 @@ "symfony/translation-implementation": "2.3|3.0" }, "require-dev": { + "nikic/php-parser": "^4.13", "psr/log": "^1|^2|^3", "symfony/config": "^5.4|^6.0", "symfony/console": "^5.4|^6.0", @@ -7231,10 +7213,12 @@ "symfony/http-kernel": "^5.4|^6.0", "symfony/intl": "^5.4|^6.0", "symfony/polyfill-intl-icu": "^1.21", + "symfony/routing": "^5.4|^6.0", "symfony/service-contracts": "^1.1.2|^2|^3", "symfony/yaml": "^5.4|^6.0" }, "suggest": { + "nikic/php-parser": "To use PhpAstExtractor", "psr/log-implementation": "To use logging capability in translator", "symfony/config": "", "symfony/yaml": "" @@ -7268,7 +7252,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.0.14" + "source": "https://github.com/symfony/translation/tree/v6.2.5" }, "funding": [ { @@ -7284,24 +7268,24 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-01-05T07:00:27+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.0.2", + "version": "v3.2.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "acbfbb274e730e5a0236f619b6168d9dedb3e282" + "reference": "68cce71402305a015f8c1589bfada1280dc64fe7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/acbfbb274e730e5a0236f619b6168d9dedb3e282", - "reference": "acbfbb274e730e5a0236f619b6168d9dedb3e282", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/68cce71402305a015f8c1589bfada1280dc64fe7", + "reference": "68cce71402305a015f8c1589bfada1280dc64fe7", "shasum": "" }, "require": { - "php": ">=8.0.2" + "php": ">=8.1" }, "suggest": { "symfony/translation-implementation": "" @@ -7309,7 +7293,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "3.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -7319,7 +7303,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Translation\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -7346,7 +7333,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.0.2" + "source": "https://github.com/symfony/translation-contracts/tree/v3.2.0" }, "funding": [ { @@ -7362,24 +7349,24 @@ "type": "tidelift" } ], - "time": "2022-06-27T17:10:44+00:00" + "time": "2022-11-25T10:21:52+00:00" }, { "name": "symfony/uid", - "version": "v6.0.13", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3" + "reference": "8ace895bded57d6496638c9b2d3b788e05b7395b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3", - "reference": "db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3", + "url": "https://api.github.com/repos/symfony/uid/zipball/8ace895bded57d6496638c9b2d3b788e05b7395b", + "reference": "8ace895bded57d6496638c9b2d3b788e05b7395b", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-uuid": "^1.15" }, "require-dev": { @@ -7420,7 +7407,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v6.0.13" + "source": "https://github.com/symfony/uid/tree/v6.2.5" }, "funding": [ { @@ -7436,24 +7423,24 @@ "type": "tidelift" } ], - "time": "2022-09-09T09:33:56+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.0.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "72af925ddd41ca0372d166d004bc38a00c4608cc" + "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/72af925ddd41ca0372d166d004bc38a00c4608cc", - "reference": "72af925ddd41ca0372d166d004bc38a00c4608cc", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/44b7b81749fd20c1bdf4946c041050e22bc8da27", + "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { @@ -7508,7 +7495,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.0.14" + "source": "https://github.com/symfony/var-dumper/tree/v6.2.5" }, "funding": [ { @@ -7524,32 +7511,31 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:02:12+00:00" + "time": "2023-01-20T17:45:48+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.14", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e83fe9a72011f07c662da46a05603d66deeeb487" + "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e83fe9a72011f07c662da46a05603d66deeeb487", - "reference": "e83fe9a72011f07c662da46a05603d66deeeb487", + "url": "https://api.github.com/repos/symfony/yaml/zipball/2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", + "reference": "2bbfbdacc8a15574f8440c4838ce0d7bb6c86b19", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/console": "<5.3" + "symfony/console": "<5.4" }, "require-dev": { - "symfony/console": "^5.3|^6.0" + "symfony/console": "^5.4|^6.0" }, "suggest": { "symfony/console": "For validating YAML files using the lint command" @@ -7583,7 +7569,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.14" + "source": "https://github.com/symfony/yaml/tree/v6.2.5" }, "funding": [ { @@ -7599,20 +7585,20 @@ "type": "tidelift" } ], - "time": "2022-10-03T15:15:50+00:00" + "time": "2023-01-10T18:53:53+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.5", + "version": "2.2.6", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19" + "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/4348a3a06651827a27d989ad1d13efec6bb49b19", - "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/c42125b83a4fa63b187fdf29f9c93cb7733da30c", + "reference": "c42125b83a4fa63b187fdf29f9c93cb7733da30c", "shasum": "" }, "require": { @@ -7650,9 +7636,9 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.5" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.6" }, - "time": "2022-09-12T13:28:28+00:00" + "time": "2023-01-03T09:29:04+00:00" }, { "name": "vlucas/phpdotenv", @@ -7874,26 +7860,26 @@ "packages-dev": [ { "name": "barryvdh/laravel-ide-helper", - "version": "v2.12.3", + "version": "v2.13.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "3ba1e2573b38f72107b8aacc4ee177fcab30a550" + "reference": "81d5b223ff067a1f38e14c100997e153b837fe4a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/3ba1e2573b38f72107b8aacc4ee177fcab30a550", - "reference": "3ba1e2573b38f72107b8aacc4ee177fcab30a550", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/81d5b223ff067a1f38e14c100997e153b837fe4a", + "reference": "81d5b223ff067a1f38e14c100997e153b837fe4a", "shasum": "" }, "require": { "barryvdh/reflection-docblock": "^2.0.6", - "composer/pcre": "^1 || ^2 || ^3", + "composer/class-map-generator": "^1.0", "doctrine/dbal": "^2.6 || ^3", "ext-json": "*", - "illuminate/console": "^8 || ^9", - "illuminate/filesystem": "^8 || ^9", - "illuminate/support": "^8 || ^9", + "illuminate/console": "^8 || ^9 || ^10", + "illuminate/filesystem": "^8 || ^9 || ^10", + "illuminate/support": "^8 || ^9 || ^10", "nikic/php-parser": "^4.7", "php": "^7.3 || ^8.0", "phpdocumentor/type-resolver": "^1.1.0" @@ -7901,16 +7887,16 @@ "require-dev": { "ext-pdo_sqlite": "*", "friendsofphp/php-cs-fixer": "^2", - "illuminate/config": "^8 || ^9", - "illuminate/view": "^8 || ^9", + "illuminate/config": "^8 || ^9 || ^10", + "illuminate/view": "^8 || ^9 || ^10", "mockery/mockery": "^1.4", - "orchestra/testbench": "^6 || ^7", + "orchestra/testbench": "^6 || ^7 || ^8", "phpunit/phpunit": "^8.5 || ^9", "spatie/phpunit-snapshot-assertions": "^3 || ^4", "vimeo/psalm": "^3.12" }, "suggest": { - "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9)." + "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10)." }, "type": "library", "extra": { @@ -7952,7 +7938,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", - "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.12.3" + "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.13.0" }, "funding": [ { @@ -7964,27 +7950,27 @@ "type": "github" } ], - "time": "2022-03-06T14:33:42+00:00" + "time": "2023-02-04T13:56:40+00:00" }, { "name": "barryvdh/reflection-docblock", - "version": "v2.0.6", + "version": "v2.1.0", "source": { "type": "git", "url": "https://github.com/barryvdh/ReflectionDocBlock.git", - "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16" + "reference": "bf44b757feb8ba1734659029357646466ded673e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/6b69015d83d3daf9004a71a89f26e27d27ef6a16", - "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16", + "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/bf44b757feb8ba1734659029357646466ded673e", + "reference": "bf44b757feb8ba1734659029357646466ded673e", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": "~4.0,<4.5" + "phpunit/phpunit": "^8.5.14|^9" }, "suggest": { "dflydev/markdown": "~1.0", @@ -8014,22 +8000,95 @@ } ], "support": { - "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.0.6" + "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.1.0" }, - "time": "2018-12-13T10:34:14+00:00" + "time": "2022-10-31T15:35:43+00:00" }, { - "name": "composer/pcre", - "version": "3.0.0", + "name": "composer/class-map-generator", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "url": "https://github.com/composer/class-map-generator.git", + "reference": "1e1cb2b791facb2dfe32932a7718cf2571187513" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://api.github.com/repos/composer/class-map-generator/zipball/1e1cb2b791facb2dfe32932a7718cf2571187513", + "reference": "1e1cb2b791facb2dfe32932a7718cf2571187513", + "shasum": "" + }, + "require": { + "composer/pcre": "^2 || ^3", + "php": "^7.2 || ^8.0", + "symfony/finder": "^4.4 || ^5.3 || ^6" + }, + "require-dev": { + "phpstan/phpstan": "^1.6", + "phpstan/phpstan-deprecation-rules": "^1", + "phpstan/phpstan-phpunit": "^1", + "phpstan/phpstan-strict-rules": "^1.1", + "symfony/filesystem": "^5.4 || ^6", + "symfony/phpunit-bridge": "^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\ClassMapGenerator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "https://seld.be" + } + ], + "description": "Utilities to scan PHP code and generate class maps.", + "keywords": [ + "classmap" + ], + "support": { + "issues": "https://github.com/composer/class-map-generator/issues", + "source": "https://github.com/composer/class-map-generator/tree/1.0.0" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2022-06-19T11:31:27+00:00" + }, + { + "name": "composer/pcre", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { @@ -8071,7 +8130,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -8087,7 +8146,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", @@ -8238,32 +8297,35 @@ }, { "name": "doctrine/annotations", - "version": "1.13.3", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "648b0343343565c4a056bfc8392201385e8d89f0" + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/648b0343343565c4a056bfc8392201385e8d89f0", - "reference": "648b0343343565c4a056bfc8392201385e8d89f0", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", "shasum": "" }, "require": { - "doctrine/lexer": "1.*", + "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": "^6.0 || ^8.1", - "phpstan/phpstan": "^1.4.10 || ^1.8.0", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", - "symfony/cache": "^4.4 || ^5.2", + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "symfony/cache": "^5.4 || ^6", "vimeo/psalm": "^4.10" }, + "suggest": { + "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations" + }, "type": "library", "autoload": { "psr-4": { @@ -8305,96 +8367,26 @@ ], "support": { "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.13.3" + "source": "https://github.com/doctrine/annotations/tree/2.0.1" }, - "time": "2022-07-02T10:48:51+00:00" - }, - { - "name": "doctrine/instantiator", - "version": "1.4.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.16 || ^1", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-phpunit": "^1", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2022-03-03T08:28:38+00:00" + "time": "2023-02-02T22:02:53+00:00" }, { "name": "fakerphp/faker", - "version": "v1.20.0", + "version": "v1.21.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0", + "php": "^7.4 || ^8.0", "psr/container": "^1.0 || ^2.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" }, @@ -8405,7 +8397,8 @@ "bamarni/composer-bin-plugin": "^1.4.1", "doctrine/persistence": "^1.3 || ^2.0", "ext-intl": "*", - "symfony/phpunit-bridge": "^4.4 || ^5.2" + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" }, "suggest": { "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", @@ -8417,7 +8410,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.20-dev" + "dev-main": "v1.21-dev" } }, "autoload": { @@ -8442,22 +8435,22 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" }, - "time": "2022-07-20T13:12:54+00:00" + "time": "2022-12-13T13:54:32+00:00" }, { "name": "filp/whoops", - "version": "2.14.5", + "version": "2.14.6", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc" + "reference": "f7948baaa0330277c729714910336383286305da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", - "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", + "url": "https://api.github.com/repos/filp/whoops/zipball/f7948baaa0330277c729714910336383286305da", + "reference": "f7948baaa0330277c729714910336383286305da", "shasum": "" }, "require": { @@ -8507,7 +8500,7 @@ ], "support": { "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.14.5" + "source": "https://github.com/filp/whoops/tree/2.14.6" }, "funding": [ { @@ -8515,55 +8508,56 @@ "type": "github" } ], - "time": "2022-01-07T12:00:00+00:00" + "time": "2022-11-02T16:23:29+00:00" }, { "name": "friendsofphp/php-cs-fixer", - "version": "v3.12.0", + "version": "v3.14.4", "source": { "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "eae11d945e2885d86e1c080eec1bb30a2aa27998" + "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", + "reference": "1b3d9dba63d93b8a202c31e824748218781eae6b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/eae11d945e2885d86e1c080eec1bb30a2aa27998", - "reference": "eae11d945e2885d86e1c080eec1bb30a2aa27998", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/1b3d9dba63d93b8a202c31e824748218781eae6b", + "reference": "1b3d9dba63d93b8a202c31e824748218781eae6b", "shasum": "" }, "require": { - "composer/semver": "^3.2", + "composer/semver": "^3.3", "composer/xdebug-handler": "^3.0.3", - "doctrine/annotations": "^1.13", + "doctrine/annotations": "^2", + "doctrine/lexer": "^2 || ^3", "ext-json": "*", "ext-tokenizer": "*", "php": "^7.4 || ^8.0", - "sebastian/diff": "^4.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.23", - "symfony/polyfill-php80": "^1.25", - "symfony/polyfill-php81": "^1.25", + "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.2", - "keradus/cli-executor": "^1.5", - "mikey179/vfsstream": "^1.6.10", - "php-coveralls/php-coveralls": "^2.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": "^1.15", + "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.0", + "symfony/phpunit-bridge": "^6.2.3", "symfony/yaml": "^5.4 || ^6.0" }, "suggest": { @@ -8595,8 +8589,8 @@ ], "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/v3.12.0" + "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.14.4" }, "funding": [ { @@ -8604,7 +8598,7 @@ "type": "github" } ], - "time": "2022-10-12T14:20:51+00:00" + "time": "2023-02-09T21:49:13+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -8659,16 +8653,16 @@ }, { "name": "itsgoingd/clockwork", - "version": "v5.1.10", + "version": "v5.1.12", "source": { "type": "git", "url": "https://github.com/itsgoingd/clockwork.git", - "reference": "8ceb38246028483750573c05dc4f9c17ddb65b7b" + "reference": "c9dbdbb1f0efd19bb80f1080ef63f1b9b1bc3b1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/itsgoingd/clockwork/zipball/8ceb38246028483750573c05dc4f9c17ddb65b7b", - "reference": "8ceb38246028483750573c05dc4f9c17ddb65b7b", + "url": "https://api.github.com/repos/itsgoingd/clockwork/zipball/c9dbdbb1f0efd19bb80f1080ef63f1b9b1bc3b1b", + "reference": "c9dbdbb1f0efd19bb80f1080ef63f1b9b1bc3b1b", "shasum": "" }, "require": { @@ -8715,7 +8709,7 @@ ], "support": { "issues": "https://github.com/itsgoingd/clockwork/issues", - "source": "https://github.com/itsgoingd/clockwork/tree/v5.1.10" + "source": "https://github.com/itsgoingd/clockwork/tree/v5.1.12" }, "funding": [ { @@ -8723,27 +8717,28 @@ "type": "github" } ], - "time": "2022-10-19T21:46:50+00:00" + "time": "2022-12-13T00:04:12+00:00" }, { "name": "laravel/sail", - "version": "v1.16.2", + "version": "v1.21.0", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "7d1ed5f856ec8b9708712e3fc0708fcabe114659" + "reference": "758a914fc4da41f3f6ca5522c85902181b228bd1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/7d1ed5f856ec8b9708712e3fc0708fcabe114659", - "reference": "7d1ed5f856ec8b9708712e3fc0708fcabe114659", + "url": "https://api.github.com/repos/laravel/sail/zipball/758a914fc4da41f3f6ca5522c85902181b228bd1", + "reference": "758a914fc4da41f3f6ca5522c85902181b228bd1", "shasum": "" }, "require": { - "illuminate/console": "^8.0|^9.0", - "illuminate/contracts": "^8.0|^9.0", - "illuminate/support": "^8.0|^9.0", - "php": "^7.3|^8.0" + "illuminate/console": "^8.0|^9.0|^10.0", + "illuminate/contracts": "^8.0|^9.0|^10.0", + "illuminate/support": "^8.0|^9.0|^10.0", + "php": "^7.3|^8.0", + "symfony/yaml": "^6.0" }, "bin": [ "bin/sail" @@ -8783,7 +8778,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2022-09-28T13:13:22+00:00" + "time": "2023-02-16T19:16:27+00:00" }, { "name": "mockery/mockery", @@ -8918,38 +8913,39 @@ }, { "name": "nunomaduro/collision", - "version": "v6.3.1", + "version": "v7.0.5", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "0f6349c3ed5dd28467087b08fb59384bb458a22b" + "reference": "5c654ee5fa187cf2f4cb226d773582ec6d402a55" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/0f6349c3ed5dd28467087b08fb59384bb458a22b", - "reference": "0f6349c3ed5dd28467087b08fb59384bb458a22b", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/5c654ee5fa187cf2f4cb226d773582ec6d402a55", + "reference": "5c654ee5fa187cf2f4cb226d773582ec6d402a55", "shasum": "" }, "require": { - "filp/whoops": "^2.14.5", - "php": "^8.0.0", - "symfony/console": "^6.0.2" + "filp/whoops": "^2.14.6", + "nunomaduro/termwind": "^1.15.1", + "php": "^8.1.0", + "symfony/console": "^6.2.5" }, "require-dev": { - "brianium/paratest": "^6.4.1", - "laravel/framework": "^9.26.1", - "laravel/pint": "^1.1.1", - "nunomaduro/larastan": "^1.0.3", - "nunomaduro/mock-final-classes": "^1.1.0", - "orchestra/testbench": "^7.7", - "phpunit/phpunit": "^9.5.23", - "spatie/ignition": "^1.4.1" + "laravel/framework": "^10.0.3", + "laravel/pint": "^1.5.0", + "laravel/sail": "^1.20.2", + "laravel/sanctum": "^3.2.1", + "laravel/tinker": "^2.8.0", + "nunomaduro/larastan": "^2.4.1", + "orchestra/testbench-core": "^8.0.1", + "pestphp/pest": "^2.0.0", + "phpunit/phpunit": "^10.0.9", + "sebastian/environment": "^6.0.0", + "spatie/laravel-ignition": "^2.0.0" }, "type": "library", "extra": { - "branch-alias": { - "dev-develop": "6.x-dev" - }, "laravel": { "providers": [ "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" @@ -8957,6 +8953,9 @@ } }, "autoload": { + "files": [ + "./src/Adapters/Phpunit/Autoload.php" + ], "psr-4": { "NunoMaduro\\Collision\\": "src/" } @@ -9002,7 +9001,7 @@ "type": "patreon" } ], - "time": "2022-09-29T12:29:49+00:00" + "time": "2023-02-19T16:25:13+00:00" }, { "name": "phar-io/manifest", @@ -9115,205 +9114,6 @@ }, "time": "2022-02-21T01:04:05+00:00" }, - { - "name": "php-mock/php-mock", - "version": "2.3.1", - "source": { - "type": "git", - "url": "https://github.com/php-mock/php-mock.git", - "reference": "9a55bd8ba40e6da2e97a866121d2c69dedd4952b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-mock/php-mock/zipball/9a55bd8ba40e6da2e97a866121d2c69dedd4952b", - "reference": "9a55bd8ba40e6da2e97a866121d2c69dedd4952b", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0 || ^8.0", - "phpunit/php-text-template": "^1 || ^2" - }, - "replace": { - "malkusch/php-mock": "*" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.0 || ^9.0", - "squizlabs/php_codesniffer": "^3.5" - }, - "suggest": { - "php-mock/php-mock-phpunit": "Allows integration into PHPUnit testcase with the trait PHPMock." - }, - "type": "library", - "autoload": { - "files": [ - "autoload.php" - ], - "psr-4": { - "phpmock\\": [ - "classes/", - "tests/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "WTFPL" - ], - "authors": [ - { - "name": "Markus Malkusch", - "email": "markus@malkusch.de", - "homepage": "http://markus.malkusch.de", - "role": "Developer" - } - ], - "description": "PHP-Mock can mock built-in PHP functions (e.g. time()). PHP-Mock relies on PHP's namespace fallback policy. No further extension is needed.", - "homepage": "https://github.com/php-mock/php-mock", - "keywords": [ - "BDD", - "TDD", - "function", - "mock", - "stub", - "test", - "test double" - ], - "support": { - "issues": "https://github.com/php-mock/php-mock/issues", - "source": "https://github.com/php-mock/php-mock/tree/2.3.1" - }, - "funding": [ - { - "url": "https://github.com/michalbundyra", - "type": "github" - } - ], - "time": "2022-02-07T18:57:52+00:00" - }, - { - "name": "php-mock/php-mock-integration", - "version": "2.1.0", - "source": { - "type": "git", - "url": "https://github.com/php-mock/php-mock-integration.git", - "reference": "003d585841e435958a02e9b986953907b8b7609b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-mock/php-mock-integration/zipball/003d585841e435958a02e9b986953907b8b7609b", - "reference": "003d585841e435958a02e9b986953907b8b7609b", - "shasum": "" - }, - "require": { - "php": ">=5.6", - "php-mock/php-mock": "^2.2", - "phpunit/php-text-template": "^1 || ^2" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.27 || ^6 || ^7 || ^8 || ^9" - }, - "type": "library", - "autoload": { - "psr-4": { - "phpmock\\integration\\": "classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "WTFPL" - ], - "authors": [ - { - "name": "Markus Malkusch", - "email": "markus@malkusch.de", - "homepage": "http://markus.malkusch.de", - "role": "Developer" - } - ], - "description": "Integration package for PHP-Mock", - "homepage": "https://github.com/php-mock/php-mock-integration", - "keywords": [ - "BDD", - "TDD", - "function", - "mock", - "stub", - "test", - "test double" - ], - "support": { - "issues": "https://github.com/php-mock/php-mock-integration/issues", - "source": "https://github.com/php-mock/php-mock-integration/tree/2.1.0" - }, - "time": "2020-02-08T14:40:25+00:00" - }, - { - "name": "php-mock/php-mock-phpunit", - "version": "2.6.1", - "source": { - "type": "git", - "url": "https://github.com/php-mock/php-mock-phpunit.git", - "reference": "b9ba2db21e7e1c7deba98bc86dcfc6425fb4647d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-mock/php-mock-phpunit/zipball/b9ba2db21e7e1c7deba98bc86dcfc6425fb4647d", - "reference": "b9ba2db21e7e1c7deba98bc86dcfc6425fb4647d", - "shasum": "" - }, - "require": { - "php": ">=7", - "php-mock/php-mock-integration": "^2.1", - "phpunit/phpunit": "^6 || ^7 || ^8 || ^9" - }, - "require-dev": { - "phpspec/prophecy": "^1.10.3" - }, - "type": "library", - "autoload": { - "files": [ - "autoload.php" - ], - "psr-4": { - "phpmock\\phpunit\\": "classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "WTFPL" - ], - "authors": [ - { - "name": "Markus Malkusch", - "email": "markus@malkusch.de", - "homepage": "http://markus.malkusch.de", - "role": "Developer" - } - ], - "description": "Mock built-in PHP functions (e.g. time()) with PHPUnit. This package relies on PHP's namespace fallback policy. No further extension is needed.", - "homepage": "https://github.com/php-mock/php-mock-phpunit", - "keywords": [ - "BDD", - "TDD", - "function", - "mock", - "phpunit", - "stub", - "test", - "test double" - ], - "support": { - "issues": "https://github.com/php-mock/php-mock-phpunit/issues", - "source": "https://github.com/php-mock/php-mock-phpunit/tree/2.6.1" - }, - "funding": [ - { - "url": "https://github.com/michalbundyra", - "type": "github" - } - ], - "time": "2022-09-07T20:40:07+00:00" - }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -9424,16 +9224,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.17", + "version": "10.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" + "reference": "bf4fbc9c13af7da12b3ea807574fb460f255daba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/bf4fbc9c13af7da12b3ea807574fb460f255daba", + "reference": "bf4fbc9c13af7da12b3ea807574fb460f255daba", "shasum": "" }, "require": { @@ -9441,18 +9241,18 @@ "ext-libxml": "*", "ext-xmlwriter": "*", "nikic/php-parser": "^4.14", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", + "php": ">=8.1", + "phpunit/php-file-iterator": "^4.0", + "phpunit/php-text-template": "^3.0", + "sebastian/code-unit-reverse-lookup": "^3.0", + "sebastian/complexity": "^3.0", + "sebastian/environment": "^6.0", + "sebastian/lines-of-code": "^2.0", + "sebastian/version": "^4.0", "theseer/tokenizer": "^1.2.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-pcov": "*", @@ -9461,7 +9261,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.2-dev" + "dev-main": "10.0-dev" } }, "autoload": { @@ -9489,7 +9289,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.0.0" }, "funding": [ { @@ -9497,32 +9297,32 @@ "type": "github" } ], - "time": "2022-08-30T12:24:04+00:00" + "time": "2023-02-03T07:14:34+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "3.0.6", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + "reference": "fd9329ab3368f59fe1fe808a189c51086bd4b6bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/fd9329ab3368f59fe1fe808a189c51086bd4b6bd", + "reference": "fd9329ab3368f59fe1fe808a189c51086bd4b6bd", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -9549,7 +9349,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.0.1" }, "funding": [ { @@ -9557,28 +9357,28 @@ "type": "github" } ], - "time": "2021-12-02T12:48:52+00:00" + "time": "2023-02-10T16:53:14+00:00" }, { "name": "phpunit/php-invoker", - "version": "3.1.1", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", + "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-pcntl": "*" @@ -9586,7 +9386,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -9612,7 +9412,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0" }, "funding": [ { @@ -9620,32 +9420,32 @@ "type": "github" } ], - "time": "2020-09-28T05:58:55+00:00" + "time": "2023-02-03T06:56:09+00:00" }, { "name": "phpunit/php-text-template", - "version": "2.0.4", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/9f3d3709577a527025f55bcf0f7ab8052c8bb37d", + "reference": "9f3d3709577a527025f55bcf0f7ab8052c8bb37d", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -9671,7 +9471,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.0" }, "funding": [ { @@ -9679,32 +9479,32 @@ "type": "github" } ], - "time": "2020-10-26T05:33:50+00:00" + "time": "2023-02-03T06:56:46+00:00" }, { "name": "phpunit/php-timer", - "version": "5.0.3", + "version": "6.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d", + "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -9730,7 +9530,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0" }, "funding": [ { @@ -9738,24 +9538,23 @@ "type": "github" } ], - "time": "2020-10-26T13:16:10+00:00" + "time": "2023-02-03T06:57:52+00:00" }, { "name": "phpunit/phpunit", - "version": "9.5.25", + "version": "10.0.11", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d" + "reference": "d18a18b07e7a9ad52d994b1785f9e301fc84b616" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d", - "reference": "3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d18a18b07e7a9ad52d994b1785f9e301fc84b616", + "reference": "d18a18b07e7a9ad52d994b1785f9e301fc84b616", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -9765,27 +9564,26 @@ "myclabs/deep-copy": "^1.10.1", "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.13", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.8", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.5", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.2", - "sebastian/version": "^3.0.2" + "php": ">=8.1", + "phpunit/php-code-coverage": "^10.0", + "phpunit/php-file-iterator": "^4.0", + "phpunit/php-invoker": "^4.0", + "phpunit/php-text-template": "^3.0", + "phpunit/php-timer": "^6.0", + "sebastian/cli-parser": "^2.0", + "sebastian/code-unit": "^2.0", + "sebastian/comparator": "^5.0", + "sebastian/diff": "^5.0", + "sebastian/environment": "^6.0", + "sebastian/exporter": "^5.0", + "sebastian/global-state": "^6.0", + "sebastian/object-enumerator": "^5.0", + "sebastian/recursion-context": "^5.0", + "sebastian/type": "^4.0", + "sebastian/version": "^4.0" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "*" }, "bin": [ "phpunit" @@ -9793,7 +9591,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-main": "10.0-dev" } }, "autoload": { @@ -9824,7 +9622,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.25" + "source": "https://github.com/sebastianbergmann/phpunit/tree/10.0.11" }, "funding": [ { @@ -9840,32 +9638,32 @@ "type": "tidelift" } ], - "time": "2022-09-25T03:44:45+00:00" + "time": "2023-02-20T16:39:36+00:00" }, { "name": "sebastian/cli-parser", - "version": "1.0.1", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" + "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/efdc130dbbbb8ef0b545a994fd811725c5282cae", + "reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -9888,7 +9686,7 @@ "homepage": "https://github.com/sebastianbergmann/cli-parser", "support": { "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" + "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.0" }, "funding": [ { @@ -9896,32 +9694,32 @@ "type": "github" } ], - "time": "2020-09-28T06:08:49+00:00" + "time": "2023-02-03T06:58:15+00:00" }, { "name": "sebastian/code-unit", - "version": "1.0.8", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + "reference": "a81fee9eef0b7a76af11d121767abc44c104e503" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503", + "reference": "a81fee9eef0b7a76af11d121767abc44c104e503", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -9944,7 +9742,7 @@ "homepage": "https://github.com/sebastianbergmann/code-unit", "support": { "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0" }, "funding": [ { @@ -9952,32 +9750,32 @@ "type": "github" } ], - "time": "2020-10-26T13:08:54+00:00" + "time": "2023-02-03T06:58:43+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", + "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -9999,7 +9797,7 @@ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", "support": { "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0" }, "funding": [ { @@ -10007,34 +9805,36 @@ "type": "github" } ], - "time": "2020-09-28T05:30:19+00:00" + "time": "2023-02-03T06:59:15+00:00" }, { "name": "sebastian/comparator", - "version": "4.0.8", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/72f01e6586e0caf6af81297897bd112eb7e9627c", + "reference": "72f01e6586e0caf6af81297897bd112eb7e9627c", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" + "ext-dom": "*", + "ext-mbstring": "*", + "php": ">=8.1", + "sebastian/diff": "^5.0", + "sebastian/exporter": "^5.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -10073,7 +9873,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.0" }, "funding": [ { @@ -10081,33 +9881,33 @@ "type": "github" } ], - "time": "2022-09-14T12:41:17+00:00" + "time": "2023-02-03T07:07:16+00:00" }, { "name": "sebastian/complexity", - "version": "2.0.2", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" + "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/e67d240970c9dc7ea7b2123a6d520e334dd61dc6", + "reference": "e67d240970c9dc7ea7b2123a6d520e334dd61dc6", "shasum": "" }, "require": { - "nikic/php-parser": "^4.7", - "php": ">=7.3" + "nikic/php-parser": "^4.10", + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -10130,7 +9930,7 @@ "homepage": "https://github.com/sebastianbergmann/complexity", "support": { "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" + "source": "https://github.com/sebastianbergmann/complexity/tree/3.0.0" }, "funding": [ { @@ -10138,33 +9938,33 @@ "type": "github" } ], - "time": "2020-10-26T15:52:27+00:00" + "time": "2023-02-03T06:59:47+00:00" }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "70dd1b20bc198da394ad542e988381b44e64e39f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/70dd1b20bc198da394ad542e988381b44e64e39f", + "reference": "70dd1b20bc198da394ad542e988381b44e64e39f", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3", + "phpunit/phpunit": "^10.0", "symfony/process": "^4.2 || ^5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -10196,7 +9996,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/5.0.0" }, "funding": [ { @@ -10204,27 +10004,27 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2023-02-03T07:00:31+00:00" }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "6.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "b6f3694c6386c7959915a0037652e0c40f6f69cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/b6f3694c6386c7959915a0037652e0c40f6f69cc", + "reference": "b6f3694c6386c7959915a0037652e0c40f6f69cc", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-posix": "*" @@ -10232,7 +10032,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.1-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -10251,7 +10051,7 @@ } ], "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", + "homepage": "https://github.com/sebastianbergmann/environment", "keywords": [ "Xdebug", "environment", @@ -10259,7 +10059,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/6.0.0" }, "funding": [ { @@ -10267,34 +10067,34 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T07:03:04+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.5", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" + "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0", + "reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" + "ext-mbstring": "*", + "php": ">=8.1", + "sebastian/recursion-context": "^5.0" }, "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -10336,7 +10136,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" + "source": "https://github.com/sebastianbergmann/exporter/tree/5.0.0" }, "funding": [ { @@ -10344,38 +10144,35 @@ "type": "github" } ], - "time": "2022-09-14T06:03:37+00:00" + "time": "2023-02-03T07:06:49+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.5", + "version": "6.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" + "reference": "aab257c712de87b90194febd52e4d184551c2d44" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/aab257c712de87b90194febd52e4d184551c2d44", + "reference": "aab257c712de87b90194febd52e4d184551c2d44", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.1", + "sebastian/object-reflector": "^3.0", + "sebastian/recursion-context": "^5.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -10400,7 +10197,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" + "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.0" }, "funding": [ { @@ -10408,33 +10205,33 @@ "type": "github" } ], - "time": "2022-02-14T08:28:10+00:00" + "time": "2023-02-03T07:07:38+00:00" }, { "name": "sebastian/lines-of-code", - "version": "1.0.3", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" + "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/17c4d940ecafb3d15d2cf916f4108f664e28b130", + "reference": "17c4d940ecafb3d15d2cf916f4108f664e28b130", "shasum": "" }, "require": { - "nikic/php-parser": "^4.6", - "php": ">=7.3" + "nikic/php-parser": "^4.10", + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -10457,7 +10254,7 @@ "homepage": "https://github.com/sebastianbergmann/lines-of-code", "support": { "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.0" }, "funding": [ { @@ -10465,34 +10262,34 @@ "type": "github" } ], - "time": "2020-11-28T06:42:11+00:00" + "time": "2023-02-03T07:08:02+00:00" }, { "name": "sebastian/object-enumerator", - "version": "4.0.4", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906", + "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.1", + "sebastian/object-reflector": "^3.0", + "sebastian/recursion-context": "^5.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -10514,7 +10311,7 @@ "homepage": "https://github.com/sebastianbergmann/object-enumerator/", "support": { "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0" }, "funding": [ { @@ -10522,32 +10319,32 @@ "type": "github" } ], - "time": "2020-10-26T13:12:34+00:00" + "time": "2023-02-03T07:08:32+00:00" }, { "name": "sebastian/object-reflector", - "version": "2.0.4", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + "reference": "24ed13d98130f0e7122df55d06c5c4942a577957" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957", + "reference": "24ed13d98130f0e7122df55d06c5c4942a577957", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -10569,7 +10366,7 @@ "homepage": "https://github.com/sebastianbergmann/object-reflector/", "support": { "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0" }, "funding": [ { @@ -10577,32 +10374,32 @@ "type": "github" } ], - "time": "2020-10-26T13:14:26+00:00" + "time": "2023-02-03T07:06:18+00:00" }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "05909fb5bc7df4c52992396d0116aed689f93712" }, "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/05909fb5bc7df4c52992396d0116aed689f93712", + "reference": "05909fb5bc7df4c52992396d0116aed689f93712", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -10629,10 +10426,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/5.0.0" }, "funding": [ { @@ -10640,87 +10437,32 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "support": { - "issues": "https://github.com/sebastianbergmann/resource-operations/issues", - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:45:17+00:00" + "time": "2023-02-03T07:05:40+00:00" }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "462699a16464c3944eefc02ebdd77882bd3925bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf", + "reference": "462699a16464c3944eefc02ebdd77882bd3925bf", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -10743,7 +10485,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/4.0.0" }, "funding": [ { @@ -10751,29 +10493,29 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2023-02-03T07:10:45+00:00" }, { "name": "sebastian/version", - "version": "3.0.2", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" + "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17", + "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -10796,7 +10538,7 @@ "homepage": "https://github.com/sebastianbergmann/version", "support": { "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + "source": "https://github.com/sebastianbergmann/version/tree/4.0.1" }, "funding": [ { @@ -10804,20 +10546,20 @@ "type": "github" } ], - "time": "2020-09-28T06:39:44+00:00" + "time": "2023-02-07T11:34:05+00:00" }, { "name": "spatie/backtrace", - "version": "1.2.1", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/spatie/backtrace.git", - "reference": "4ee7d41aa5268107906ea8a4d9ceccde136dbd5b" + "reference": "7b34fee6c1ad45f8ee0498d17cd8ea9a076402c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/backtrace/zipball/4ee7d41aa5268107906ea8a4d9ceccde136dbd5b", - "reference": "4ee7d41aa5268107906ea8a4d9ceccde136dbd5b", + "url": "https://api.github.com/repos/spatie/backtrace/zipball/7b34fee6c1ad45f8ee0498d17cd8ea9a076402c1", + "reference": "7b34fee6c1ad45f8ee0498d17cd8ea9a076402c1", "shasum": "" }, "require": { @@ -10853,8 +10595,7 @@ "spatie" ], "support": { - "issues": "https://github.com/spatie/backtrace/issues", - "source": "https://github.com/spatie/backtrace/tree/1.2.1" + "source": "https://github.com/spatie/backtrace/tree/1.2.2" }, "funding": [ { @@ -10866,24 +10607,24 @@ "type": "other" } ], - "time": "2021-11-09T10:57:15+00:00" + "time": "2023-02-21T08:29:12+00:00" }, { "name": "spatie/flare-client-php", - "version": "1.3.0", + "version": "1.3.5", "source": { "type": "git", "url": "https://github.com/spatie/flare-client-php.git", - "reference": "b1b974348750925b717fa8c8b97a0db0d1aa40ca" + "reference": "3e5dd5ac4928f3d2d036bd02de5eb83fd0ef1f42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/b1b974348750925b717fa8c8b97a0db0d1aa40ca", - "reference": "b1b974348750925b717fa8c8b97a0db0d1aa40ca", + "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/3e5dd5ac4928f3d2d036bd02de5eb83fd0ef1f42", + "reference": "3e5dd5ac4928f3d2d036bd02de5eb83fd0ef1f42", "shasum": "" }, "require": { - "illuminate/pipeline": "^8.0|^9.0", + "illuminate/pipeline": "^8.0|^9.0|^10.0", "php": "^8.0", "spatie/backtrace": "^1.2", "symfony/http-foundation": "^5.0|^6.0", @@ -10927,7 +10668,7 @@ ], "support": { "issues": "https://github.com/spatie/flare-client-php/issues", - "source": "https://github.com/spatie/flare-client-php/tree/1.3.0" + "source": "https://github.com/spatie/flare-client-php/tree/1.3.5" }, "funding": [ { @@ -10935,26 +10676,25 @@ "type": "github" } ], - "time": "2022-08-08T10:10:20+00:00" + "time": "2023-01-23T15:58:46+00:00" }, { "name": "spatie/ignition", - "version": "1.4.1", + "version": "1.4.3", "source": { "type": "git", "url": "https://github.com/spatie/ignition.git", - "reference": "dd3d456779108d7078baf4e43f8c2b937d9794a1" + "reference": "2cf3833220cfe8fcf639544f8d7067b6469a00b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/ignition/zipball/dd3d456779108d7078baf4e43f8c2b937d9794a1", - "reference": "dd3d456779108d7078baf4e43f8c2b937d9794a1", + "url": "https://api.github.com/repos/spatie/ignition/zipball/2cf3833220cfe8fcf639544f8d7067b6469a00b0", + "reference": "2cf3833220cfe8fcf639544f8d7067b6469a00b0", "shasum": "" }, "require": { "ext-json": "*", "ext-mbstring": "*", - "monolog/monolog": "^2.0", "php": "^8.0", "spatie/flare-client-php": "^1.1", "symfony/console": "^5.4|^6.0", @@ -11010,45 +10750,41 @@ "type": "github" } ], - "time": "2022-08-26T11:51:15+00:00" + "time": "2023-01-23T15:28:32+00:00" }, { "name": "spatie/laravel-ignition", - "version": "1.6.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ignition.git", - "reference": "c21309ebf6657e0c38083afac8af9baa12885676" + "reference": "70c0e2a22c5c4b691a34db8c98bd6d695660a97a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/c21309ebf6657e0c38083afac8af9baa12885676", - "reference": "c21309ebf6657e0c38083afac8af9baa12885676", + "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/70c0e2a22c5c4b691a34db8c98bd6d695660a97a", + "reference": "70c0e2a22c5c4b691a34db8c98bd6d695660a97a", "shasum": "" }, "require": { "ext-curl": "*", "ext-json": "*", "ext-mbstring": "*", - "illuminate/support": "^8.77|^9.27", - "monolog/monolog": "^2.3", - "php": "^8.0", - "spatie/flare-client-php": "^1.0.1", - "spatie/ignition": "^1.4.1", - "symfony/console": "^5.0|^6.0", - "symfony/var-dumper": "^5.0|^6.0" + "illuminate/support": "^10.0", + "php": "^8.1", + "spatie/flare-client-php": "^1.3.5", + "spatie/ignition": "^1.4.3", + "symfony/console": "^6.2.3", + "symfony/var-dumper": "^6.2.3" }, "require-dev": { - "filp/whoops": "^2.14", - "livewire/livewire": "^2.8|dev-develop", - "mockery/mockery": "^1.4", - "nunomaduro/larastan": "^1.0", - "orchestra/testbench": "^6.23|^7.0", - "pestphp/pest": "^1.20", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "spatie/laravel-ray": "^1.27" + "livewire/livewire": "^2.11", + "mockery/mockery": "^1.5.1", + "orchestra/testbench": "^8.0", + "pestphp/pest": "^1.22.3", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan-deprecation-rules": "^1.1.1", + "phpstan/phpstan-phpunit": "^1.3.3" }, "type": "library", "extra": { @@ -11059,6 +10795,9 @@ "aliases": { "Flare": "Spatie\\LaravelIgnition\\Facades\\Flare" } + }, + "branch-alias": { + "dev-main": "2.0-dev" } }, "autoload": { @@ -11100,24 +10839,24 @@ "type": "github" } ], - "time": "2022-10-25T08:38:04+00:00" + "time": "2023-01-24T07:20:39+00:00" }, { "name": "symfony/filesystem", - "version": "v6.0.13", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "3adca49133bd055ebe6011ed1e012be3c908af79" + "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/3adca49133bd055ebe6011ed1e012be3c908af79", - "reference": "3adca49133bd055ebe6011ed1e012be3c908af79", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/e59e8a4006afd7f5654786a83b4fcb8da98f4593", + "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, @@ -11147,7 +10886,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.0.13" + "source": "https://github.com/symfony/filesystem/tree/v6.2.5" }, "funding": [ { @@ -11163,24 +10902,24 @@ "type": "tidelift" } ], - "time": "2022-09-21T20:25:27+00:00" + "time": "2023-01-20T17:45:48+00:00" }, { "name": "symfony/options-resolver", - "version": "v6.0.3", + "version": "v6.2.5", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d" + "reference": "e8324d44f5af99ec2ccec849934a242f64458f86" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/51f7006670febe4cbcbae177cbffe93ff833250d", - "reference": "51f7006670febe4cbcbae177cbffe93ff833250d", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/e8324d44f5af99ec2ccec849934a242f64458f86", + "reference": "e8324d44f5af99ec2ccec849934a242f64458f86", "shasum": "" }, "require": { - "php": ">=8.0.2", + "php": ">=8.1", "symfony/deprecation-contracts": "^2.1|^3" }, "type": "library", @@ -11214,7 +10953,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v6.0.3" + "source": "https://github.com/symfony/options-resolver/tree/v6.2.5" }, "funding": [ { @@ -11230,24 +10969,103 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:55:41+00:00" + "time": "2023-01-01T08:38:09+00:00" }, { - "name": "symfony/stopwatch", - "version": "v6.0.13", + "name": "symfony/polyfill-php81", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/stopwatch.git", - "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a" + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/7554fde6848af5ef1178f8ccbdbdb8ae1092c70a", - "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { - "php": ">=8.0.2", + "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\\Php81\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "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 8.1+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php81/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/stopwatch", + "version": "v6.2.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/stopwatch.git", + "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/00b6ac156aacffc53487c930e0ab14587a6607f6", + "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6", + "shasum": "" + }, + "require": { + "php": ">=8.1", "symfony/service-contracts": "^1|^2|^3" }, "type": "library", @@ -11276,7 +11094,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.0.13" + "source": "https://github.com/symfony/stopwatch/tree/v6.2.5" }, "funding": [ { @@ -11292,7 +11110,7 @@ "type": "tidelift" } ], - "time": "2022-09-28T15:52:47+00:00" + "time": "2023-01-01T08:36:55+00:00" }, { "name": "theseer/tokenizer", @@ -11351,7 +11169,7 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^8.0.2 || ^8.1 || ^8.2", + "php": "^8.1 || ^8.2", "ext-json": "*", "ext-mbstring": "*", "ext-pdo": "*", @@ -11361,7 +11179,7 @@ }, "platform-dev": [], "platform-overrides": { - "php": "8.0.2" + "php": "8.1.0" }, "plugin-api-version": "2.3.0" } diff --git a/config/mail.php b/config/mail.php index ee612fdcc..71c693cff 100644 --- a/config/mail.php +++ b/config/mail.php @@ -27,7 +27,7 @@ return [ | sending an e-mail. You will specify which one you are using for your | mailers below. You are free to add additional mailers as required. | - | Supported: "smtp", "sendmail", "mailgun", "ses", + | Supported: "smtp", "sendmail", "mailgun", "ses", "ses-v2", | "postmark", "log", "array", "failover" | */ diff --git a/database/Factories/EggVariableFactory.php b/database/Factories/EggVariableFactory.php index 53b94c4c2..c2bce816b 100644 --- a/database/Factories/EggVariableFactory.php +++ b/database/Factories/EggVariableFactory.php @@ -34,7 +34,7 @@ class EggVariableFactory extends Factory /** * Indicate that the egg variable is viewable. */ - public function viewable(): Factory + public function viewable(): static { return $this->state(function (array $attributes) { return [ @@ -46,7 +46,7 @@ class EggVariableFactory extends Factory /** * Indicate that the egg variable is editable. */ - public function editable(): Factory + public function editable(): static { return $this->state(function (array $attributes) { return [ diff --git a/database/Factories/UserFactory.php b/database/Factories/UserFactory.php index 1e38eced6..977b03284 100644 --- a/database/Factories/UserFactory.php +++ b/database/Factories/UserFactory.php @@ -43,7 +43,7 @@ class UserFactory extends Factory /** * Indicate that the user is an admin. */ - public function admin(): Factory + public function admin(): static { return $this->state(['root_admin' => true]); } diff --git a/database/migrations/2023_02_23_191004_add_expires_at_column_to_api_keys_table.php b/database/migrations/2023_02_23_191004_add_expires_at_column_to_api_keys_table.php new file mode 100644 index 000000000..49e19bfed --- /dev/null +++ b/database/migrations/2023_02_23_191004_add_expires_at_column_to_api_keys_table.php @@ -0,0 +1,27 @@ +timestamp('expires_at')->nullable()->after('last_used_at'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('api_keys', function (Blueprint $table) { + $table->dropColumn('expires_at'); + }); + } +}; diff --git a/phpunit.xml b/phpunit.xml index efc42d687..8d47f564f 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -4,9 +4,8 @@ xsi:noNamespaceSchemaLocation="./vendor/phpunit/phpunit/phpunit.xsd" bootstrap="bootstrap/tests.php" colors="true" - printerClass="NunoMaduro\Collision\Adapters\Phpunit\Printer" > - + ./app diff --git a/tests/Integration/Api/Application/Users/UserControllerTest.php b/tests/Integration/Api/Application/Users/UserControllerTest.php index 713f6264a..04709e55f 100644 --- a/tests/Integration/Api/Application/Users/UserControllerTest.php +++ b/tests/Integration/Api/Application/Users/UserControllerTest.php @@ -299,7 +299,7 @@ class UserControllerTest extends ApplicationApiIntegrationTestCase * Endpoints that should return a 403 error when the key does not have write * permissions for user management. */ - public function userWriteEndpointsDataProvider(): array + public static function userWriteEndpointsDataProvider(): array { return [ ['postJson', '/api/application/users'], diff --git a/tests/Integration/Api/Client/ApiKeyControllerTest.php b/tests/Integration/Api/Client/ApiKeyControllerTest.php index 9aa515f9b..39b2055eb 100644 --- a/tests/Integration/Api/Client/ApiKeyControllerTest.php +++ b/tests/Integration/Api/Client/ApiKeyControllerTest.php @@ -241,7 +241,7 @@ class ApiKeyControllerTest extends ClientApiIntegrationTestCase * Provides some different IP address combinations that can be used when * testing that we accept the expected IP values. */ - public function validIPAddressDataProvider(): array + public static function validIPAddressDataProvider(): array { return [ [[]], diff --git a/tests/Integration/Api/Client/ClientApiIntegrationTestCase.php b/tests/Integration/Api/Client/ClientApiIntegrationTestCase.php index 25b5c30cd..bc515386c 100644 --- a/tests/Integration/Api/Client/ClientApiIntegrationTestCase.php +++ b/tests/Integration/Api/Client/ClientApiIntegrationTestCase.php @@ -2,11 +2,9 @@ namespace Pterodactyl\Tests\Integration\Api\Client; -use ReflectionClass; use Pterodactyl\Models\Node; use Pterodactyl\Models\Task; use Pterodactyl\Models\User; -use InvalidArgumentException; use Pterodactyl\Models\Model; use Pterodactyl\Models\Backup; use Pterodactyl\Models\Server; @@ -75,7 +73,7 @@ abstract class ClientApiIntegrationTestCase extends IntegrationTestCase $link = "/api/client/servers/{$model->server->uuid}/backups/$model->uuid"; break; default: - throw new InvalidArgumentException(sprintf('Cannot create link for Model of type %s', class_basename($model))); + throw new \InvalidArgumentException(sprintf('Cannot create link for Model of type %s', class_basename($model))); } return $link . ($append ? '/' . ltrim($append, '/') : ''); @@ -87,7 +85,7 @@ abstract class ClientApiIntegrationTestCase extends IntegrationTestCase */ protected function assertJsonTransformedWith(array $data, Model|EloquentModel $model) { - $reflect = new ReflectionClass($model); + $reflect = new \ReflectionClass($model); $transformer = sprintf('\\Pterodactyl\\Transformers\\Api\\Client\\%sTransformer', $reflect->getShortName()); $transformer = new $transformer(); diff --git a/tests/Integration/Api/Client/ClientControllerTest.php b/tests/Integration/Api/Client/ClientControllerTest.php index 033b893c3..3a080e23e 100644 --- a/tests/Integration/Api/Client/ClientControllerTest.php +++ b/tests/Integration/Api/Client/ClientControllerTest.php @@ -331,7 +331,7 @@ class ClientControllerTest extends ClientApiIntegrationTestCase $response->assertJsonPath('data.0.attributes.relationships.allocations.data.0.attributes.notes', null); } - public function filterTypeDataProvider(): array + public static function filterTypeDataProvider(): array { return [['admin'], ['admin-all']]; } diff --git a/tests/Integration/Api/Client/Server/Allocation/AllocationAuthorizationTest.php b/tests/Integration/Api/Client/Server/Allocation/AllocationAuthorizationTest.php index 11ad2fa83..9c5eebd10 100644 --- a/tests/Integration/Api/Client/Server/Allocation/AllocationAuthorizationTest.php +++ b/tests/Integration/Api/Client/Server/Allocation/AllocationAuthorizationTest.php @@ -46,7 +46,7 @@ class AllocationAuthorizationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->json($method, $this->link($server3, '/network/allocations/' . $allocation3->id . $endpoint))->assertNotFound(); } - public function methodDataProvider(): array + public static function methodDataProvider(): array { return [ ['POST', ''], diff --git a/tests/Integration/Api/Client/Server/Allocation/CreateNewAllocationTest.php b/tests/Integration/Api/Client/Server/Allocation/CreateNewAllocationTest.php index 1abb106cd..8022fb1e4 100644 --- a/tests/Integration/Api/Client/Server/Allocation/CreateNewAllocationTest.php +++ b/tests/Integration/Api/Client/Server/Allocation/CreateNewAllocationTest.php @@ -86,7 +86,7 @@ class CreateNewAllocationTest extends ClientApiIntegrationTestCase ->assertJsonPath('errors.0.detail', 'Cannot assign additional allocations to this server: limit has been reached.'); } - public function permissionDataProvider(): array + public static function permissionDataProvider(): array { return [[[Permission::ACTION_ALLOCATION_CREATE]], [[]]]; } diff --git a/tests/Integration/Api/Client/Server/Allocation/DeleteAllocationTest.php b/tests/Integration/Api/Client/Server/Allocation/DeleteAllocationTest.php index 42db6eef7..7d4737b75 100644 --- a/tests/Integration/Api/Client/Server/Allocation/DeleteAllocationTest.php +++ b/tests/Integration/Api/Client/Server/Allocation/DeleteAllocationTest.php @@ -98,10 +98,7 @@ class DeleteAllocationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->deleteJson($this->link($server, "/network/allocations/{$server2->allocation_id}"))->assertNotFound(); } - /** - * @return array - */ - public function permissionDataProvider() + public static function permissionDataProvider(): array { return [[[Permission::ACTION_ALLOCATION_DELETE]], [[]]]; } diff --git a/tests/Integration/Api/Client/Server/Backup/BackupAuthorizationTest.php b/tests/Integration/Api/Client/Server/Backup/BackupAuthorizationTest.php index 187c522a9..20d9e13a7 100644 --- a/tests/Integration/Api/Client/Server/Backup/BackupAuthorizationTest.php +++ b/tests/Integration/Api/Client/Server/Backup/BackupAuthorizationTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server\Backup; -use Mockery; use Carbon\CarbonImmutable; use Pterodactyl\Models\Backup; use Pterodactyl\Models\Subuser; @@ -31,7 +30,7 @@ class BackupAuthorizationTest extends ClientApiIntegrationTestCase $backup2 = Backup::factory()->create(['server_id' => $server2->id, 'completed_at' => CarbonImmutable::now()]); $backup3 = Backup::factory()->create(['server_id' => $server3->id, 'completed_at' => CarbonImmutable::now()]); - $this->instance(DeleteBackupService::class, $mock = Mockery::mock(DeleteBackupService::class)); + $this->instance(DeleteBackupService::class, $mock = \Mockery::mock(DeleteBackupService::class)); if ($method === 'DELETE') { $mock->expects('handle')->andReturnUndefined(); @@ -55,7 +54,7 @@ class BackupAuthorizationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->json($method, $this->link($server3, '/backups/' . $backup3->uuid . $endpoint))->assertNotFound(); } - public function methodDataProvider(): array + public static function methodDataProvider(): array { return [ ['GET', ''], diff --git a/tests/Integration/Api/Client/Server/Backup/DeleteBackupTest.php b/tests/Integration/Api/Client/Server/Backup/DeleteBackupTest.php index e5ea95d54..5c4d53e49 100644 --- a/tests/Integration/Api/Client/Server/Backup/DeleteBackupTest.php +++ b/tests/Integration/Api/Client/Server/Backup/DeleteBackupTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server\Backup; -use Mockery; use Mockery\MockInterface; use Illuminate\Http\Response; use Pterodactyl\Models\Backup; @@ -48,7 +47,7 @@ class DeleteBackupTest extends ClientApiIntegrationTestCase $backup = Backup::factory()->create(['server_id' => $server->id]); $this->repository->expects('setServer->delete')->with( - Mockery::on(function ($value) use ($backup) { + \Mockery::on(function ($value) use ($backup) { return $value instanceof Backup && $value->uuid === $backup->uuid; }) )->andReturn(new Response()); diff --git a/tests/Integration/Api/Client/Server/CommandControllerTest.php b/tests/Integration/Api/Client/Server/CommandControllerTest.php index 8fa106cfc..14d6da3f2 100644 --- a/tests/Integration/Api/Client/Server/CommandControllerTest.php +++ b/tests/Integration/Api/Client/Server/CommandControllerTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server; -use Mockery; use GuzzleHttp\Psr7\Request; use Illuminate\Http\Response; use Pterodactyl\Models\Server; @@ -55,7 +54,7 @@ class CommandControllerTest extends ClientApiIntegrationTestCase $mock = $this->mock(DaemonCommandRepository::class); $mock->expects('setServer') - ->with(Mockery::on(fn (Server $value) => $value->is($server))) + ->with(\Mockery::on(fn (Server $value) => $value->is($server))) ->andReturnSelf(); $mock->expects('send')->with('say Test')->andReturn(new GuzzleResponse()); diff --git a/tests/Integration/Api/Client/Server/Database/DatabaseAuthorizationTest.php b/tests/Integration/Api/Client/Server/Database/DatabaseAuthorizationTest.php index ba15c595c..2ea709ce5 100644 --- a/tests/Integration/Api/Client/Server/Database/DatabaseAuthorizationTest.php +++ b/tests/Integration/Api/Client/Server/Database/DatabaseAuthorizationTest.php @@ -58,7 +58,7 @@ class DatabaseAuthorizationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->json($method, $this->link($server3, '/databases/' . $hashids->encode($database3->id) . $endpoint))->assertNotFound(); } - public function methodDataProvider(): array + public static function methodDataProvider(): array { return [ ['POST', '/rotate-password'], diff --git a/tests/Integration/Api/Client/Server/NetworkAllocationControllerTest.php b/tests/Integration/Api/Client/Server/NetworkAllocationControllerTest.php index c9523733d..b19be99cc 100644 --- a/tests/Integration/Api/Client/Server/NetworkAllocationControllerTest.php +++ b/tests/Integration/Api/Client/Server/NetworkAllocationControllerTest.php @@ -133,7 +133,7 @@ class NetworkAllocationControllerTest extends ClientApiIntegrationTestCase ->assertForbidden(); } - public function updatePermissionsDataProvider(): array + public static function updatePermissionsDataProvider(): array { return [[[]], [[Permission::ACTION_ALLOCATION_UPDATE]]]; } diff --git a/tests/Integration/Api/Client/Server/PowerControllerTest.php b/tests/Integration/Api/Client/Server/PowerControllerTest.php index c061add32..f31244948 100644 --- a/tests/Integration/Api/Client/Server/PowerControllerTest.php +++ b/tests/Integration/Api/Client/Server/PowerControllerTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server; -use Mockery; use Illuminate\Http\Response; use Pterodactyl\Models\Permission; use Pterodactyl\Repositories\Wings\DaemonPowerRepository; @@ -51,13 +50,13 @@ class PowerControllerTest extends ClientApiIntegrationTestCase */ public function testActionCanBeSentToServer(string $action, string $permission) { - $service = Mockery::mock(DaemonPowerRepository::class); + $service = \Mockery::mock(DaemonPowerRepository::class); $this->app->instance(DaemonPowerRepository::class, $service); [$user, $server] = $this->generateTestAccount([$permission]); $service->expects('setServer') - ->with(Mockery::on(function ($value) use ($server) { + ->with(\Mockery::on(function ($value) use ($server) { return $server->uuid === $value->uuid; })) ->andReturnSelf() @@ -73,7 +72,7 @@ class PowerControllerTest extends ClientApiIntegrationTestCase /** * Returns invalid permission combinations for a given power action. */ - public function invalidPermissionDataProvider(): array + public static function invalidPermissionDataProvider(): array { return [ ['start', [Permission::ACTION_CONTROL_STOP, Permission::ACTION_CONTROL_RESTART]], @@ -84,7 +83,7 @@ class PowerControllerTest extends ClientApiIntegrationTestCase ]; } - public function validPowerActionDataProvider(): array + public static function validPowerActionDataProvider(): array { return [ ['start', Permission::ACTION_CONTROL_START], diff --git a/tests/Integration/Api/Client/Server/ResourceUtilizationControllerTest.php b/tests/Integration/Api/Client/Server/ResourceUtilizationControllerTest.php index b18de2f5f..82c1a442f 100644 --- a/tests/Integration/Api/Client/Server/ResourceUtilizationControllerTest.php +++ b/tests/Integration/Api/Client/Server/ResourceUtilizationControllerTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server; -use Mockery; use Pterodactyl\Models\Permission; use Pterodactyl\Repositories\Wings\DaemonServerRepository; use Pterodactyl\Tests\Integration\Api\Client\ClientApiIntegrationTestCase; @@ -14,12 +13,12 @@ class ResourceUtilizationControllerTest extends ClientApiIntegrationTestCase */ public function testServerResourceUtilizationIsReturned() { - $service = Mockery::mock(DaemonServerRepository::class); + $service = \Mockery::mock(DaemonServerRepository::class); $this->app->instance(DaemonServerRepository::class, $service); [$user, $server] = $this->generateTestAccount([Permission::ACTION_WEBSOCKET_CONNECT]); - $service->expects('setServer')->with(Mockery::on(function ($value) use ($server) { + $service->expects('setServer')->with(\Mockery::on(function ($value) use ($server) { return $server->uuid === $value->uuid; }))->andReturnSelf()->getMock()->expects('getDetails')->andReturns([]); diff --git a/tests/Integration/Api/Client/Server/Schedule/CreateServerScheduleTest.php b/tests/Integration/Api/Client/Server/Schedule/CreateServerScheduleTest.php index f87aef292..f72ef09f5 100644 --- a/tests/Integration/Api/Client/Server/Schedule/CreateServerScheduleTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/CreateServerScheduleTest.php @@ -89,7 +89,7 @@ class CreateServerScheduleTest extends ClientApiIntegrationTestCase ->assertForbidden(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SCHEDULE_CREATE]]]; } diff --git a/tests/Integration/Api/Client/Server/Schedule/DeleteServerScheduleTest.php b/tests/Integration/Api/Client/Server/Schedule/DeleteServerScheduleTest.php index 4a79584a8..d44447025 100644 --- a/tests/Integration/Api/Client/Server/Schedule/DeleteServerScheduleTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/DeleteServerScheduleTest.php @@ -77,7 +77,7 @@ class DeleteServerScheduleTest extends ClientApiIntegrationTestCase $this->assertDatabaseHas('schedules', ['id' => $schedule->id]); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SCHEDULE_DELETE]]]; } diff --git a/tests/Integration/Api/Client/Server/Schedule/ExecuteScheduleTest.php b/tests/Integration/Api/Client/Server/Schedule/ExecuteScheduleTest.php index 9964691aa..7ca355299 100644 --- a/tests/Integration/Api/Client/Server/Schedule/ExecuteScheduleTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/ExecuteScheduleTest.php @@ -64,7 +64,7 @@ class ExecuteScheduleTest extends ClientApiIntegrationTestCase $this->actingAs($user)->postJson($this->link($schedule, '/execute'))->assertForbidden(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SCHEDULE_UPDATE]]]; } diff --git a/tests/Integration/Api/Client/Server/Schedule/GetServerSchedulesTest.php b/tests/Integration/Api/Client/Server/Schedule/GetServerSchedulesTest.php index d9d2ae3f6..483c7ae42 100644 --- a/tests/Integration/Api/Client/Server/Schedule/GetServerSchedulesTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/GetServerSchedulesTest.php @@ -89,7 +89,7 @@ class GetServerSchedulesTest extends ClientApiIntegrationTestCase ->assertForbidden(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [ [[], false], diff --git a/tests/Integration/Api/Client/Server/Schedule/ScheduleAuthorizationTest.php b/tests/Integration/Api/Client/Server/Schedule/ScheduleAuthorizationTest.php index a8a881194..bf5b8d729 100644 --- a/tests/Integration/Api/Client/Server/Schedule/ScheduleAuthorizationTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/ScheduleAuthorizationTest.php @@ -54,7 +54,7 @@ class ScheduleAuthorizationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->json($method, $this->link($server3, '/schedules/' . $schedule3->id . $endpoint))->assertNotFound(); } - public function methodDataProvider(): array + public static function methodDataProvider(): array { return [ ['GET', ''], diff --git a/tests/Integration/Api/Client/Server/Schedule/UpdateServerScheduleTest.php b/tests/Integration/Api/Client/Server/Schedule/UpdateServerScheduleTest.php index 7442a2b5f..23a054b34 100644 --- a/tests/Integration/Api/Client/Server/Schedule/UpdateServerScheduleTest.php +++ b/tests/Integration/Api/Client/Server/Schedule/UpdateServerScheduleTest.php @@ -109,7 +109,7 @@ class UpdateServerScheduleTest extends ClientApiIntegrationTestCase $this->assertFalse($schedule->is_processing); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SCHEDULE_UPDATE]]]; } diff --git a/tests/Integration/Api/Client/Server/ScheduleTask/CreateServerScheduleTaskTest.php b/tests/Integration/Api/Client/Server/ScheduleTask/CreateServerScheduleTaskTest.php index a71e0233c..736344a68 100644 --- a/tests/Integration/Api/Client/Server/ScheduleTask/CreateServerScheduleTaskTest.php +++ b/tests/Integration/Api/Client/Server/ScheduleTask/CreateServerScheduleTaskTest.php @@ -170,7 +170,7 @@ class CreateServerScheduleTaskTest extends ClientApiIntegrationTestCase ->assertForbidden(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SCHEDULE_UPDATE]]]; } diff --git a/tests/Integration/Api/Client/Server/SettingsControllerTest.php b/tests/Integration/Api/Client/Server/SettingsControllerTest.php index 882314bea..fcc7a5ce7 100644 --- a/tests/Integration/Api/Client/Server/SettingsControllerTest.php +++ b/tests/Integration/Api/Client/Server/SettingsControllerTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server; -use Mockery; use Illuminate\Http\Response; use Pterodactyl\Models\Server; use Pterodactyl\Models\Permission; @@ -78,11 +77,11 @@ class SettingsControllerTest extends ClientApiIntegrationTestCase [$user, $server] = $this->generateTestAccount($permissions); $this->assertTrue($server->isInstalled()); - $service = Mockery::mock(DaemonServerRepository::class); + $service = \Mockery::mock(DaemonServerRepository::class); $this->app->instance(DaemonServerRepository::class, $service); $service->expects('setServer') - ->with(Mockery::on(function ($value) use ($server) { + ->with(\Mockery::on(function ($value) use ($server) { return $value->uuid === $server->uuid; })) ->andReturnSelf() @@ -113,12 +112,12 @@ class SettingsControllerTest extends ClientApiIntegrationTestCase $this->assertTrue($server->isInstalled()); } - public function renamePermissionsDataProvider(): array + public static function renamePermissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SETTINGS_RENAME]]]; } - public function reinstallPermissionsDataProvider(): array + public static function reinstallPermissionsDataProvider(): array { return [[[]], [[Permission::ACTION_SETTINGS_REINSTALL]]]; } diff --git a/tests/Integration/Api/Client/Server/Startup/GetStartupAndVariablesTest.php b/tests/Integration/Api/Client/Server/Startup/GetStartupAndVariablesTest.php index a8a5b88e0..04150e07f 100644 --- a/tests/Integration/Api/Client/Server/Startup/GetStartupAndVariablesTest.php +++ b/tests/Integration/Api/Client/Server/Startup/GetStartupAndVariablesTest.php @@ -58,7 +58,7 @@ class GetStartupAndVariablesTest extends ClientApiIntegrationTestCase $this->actingAs($user2)->getJson($this->link($server) . '/startup')->assertNotFound(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_STARTUP_READ]]]; } diff --git a/tests/Integration/Api/Client/Server/Startup/UpdateStartupVariableTest.php b/tests/Integration/Api/Client/Server/Startup/UpdateStartupVariableTest.php index d7ade1eef..fed4d1377 100644 --- a/tests/Integration/Api/Client/Server/Startup/UpdateStartupVariableTest.php +++ b/tests/Integration/Api/Client/Server/Startup/UpdateStartupVariableTest.php @@ -149,7 +149,7 @@ class UpdateStartupVariableTest extends ClientApiIntegrationTestCase $this->actingAs($user2)->putJson($this->link($server) . '/startup/variable')->assertNotFound(); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_STARTUP_UPDATE]]]; } diff --git a/tests/Integration/Api/Client/Server/Subuser/CreateServerSubuserTest.php b/tests/Integration/Api/Client/Server/Subuser/CreateServerSubuserTest.php index f55ca18a8..c12ede61a 100644 --- a/tests/Integration/Api/Client/Server/Subuser/CreateServerSubuserTest.php +++ b/tests/Integration/Api/Client/Server/Subuser/CreateServerSubuserTest.php @@ -155,7 +155,7 @@ class CreateServerSubuserTest extends ClientApiIntegrationTestCase $response->assertJsonPath('errors.0.detail', 'A user with that email address is already assigned as a subuser for this server.'); } - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [[[]], [[Permission::ACTION_USER_CREATE]]]; } diff --git a/tests/Integration/Api/Client/Server/Subuser/DeleteSubuserTest.php b/tests/Integration/Api/Client/Server/Subuser/DeleteSubuserTest.php index 80fd9845f..45753ea6c 100644 --- a/tests/Integration/Api/Client/Server/Subuser/DeleteSubuserTest.php +++ b/tests/Integration/Api/Client/Server/Subuser/DeleteSubuserTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server\Subuser; -use Mockery; use Ramsey\Uuid\Uuid; use Pterodactyl\Models\User; use Pterodactyl\Models\Subuser; @@ -25,7 +24,7 @@ class DeleteSubuserTest extends ClientApiIntegrationTestCase */ public function testCorrectSubuserIsDeletedFromServer() { - $this->swap(DaemonServerRepository::class, $mock = Mockery::mock(DaemonServerRepository::class)); + $this->swap(DaemonServerRepository::class, $mock = \Mockery::mock(DaemonServerRepository::class)); [$user, $server] = $this->generateTestAccount(); diff --git a/tests/Integration/Api/Client/Server/Subuser/SubuserAuthorizationTest.php b/tests/Integration/Api/Client/Server/Subuser/SubuserAuthorizationTest.php index 242130fe9..c7935aa34 100644 --- a/tests/Integration/Api/Client/Server/Subuser/SubuserAuthorizationTest.php +++ b/tests/Integration/Api/Client/Server/Subuser/SubuserAuthorizationTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Api\Client\Server\Subuser; -use Mockery; use Pterodactyl\Models\User; use Pterodactyl\Models\Subuser; use Pterodactyl\Repositories\Wings\DaemonServerRepository; @@ -36,7 +35,7 @@ class SubuserAuthorizationTest extends ClientApiIntegrationTestCase Subuser::factory()->create(['server_id' => $server2->id, 'user_id' => $internal->id]); Subuser::factory()->create(['server_id' => $server3->id, 'user_id' => $internal->id]); - $this->instance(DaemonServerRepository::class, $mock = Mockery::mock(DaemonServerRepository::class)); + $this->instance(DaemonServerRepository::class, $mock = \Mockery::mock(DaemonServerRepository::class)); if ($method === 'DELETE') { $mock->expects('setServer->revokeUserJTI')->with($internal->id)->andReturnUndefined(); } @@ -50,7 +49,7 @@ class SubuserAuthorizationTest extends ClientApiIntegrationTestCase $this->actingAs($user)->json($method, $this->link($server3, '/users/' . $internal->uuid))->assertNotFound(); } - public function methodDataProvider(): array + public static function methodDataProvider(): array { return [['GET'], ['POST'], ['DELETE']]; } diff --git a/tests/Integration/Api/Remote/SftpAuthenticationControllerTest.php b/tests/Integration/Api/Remote/SftpAuthenticationControllerTest.php index 9e7136a80..38d4ccc65 100644 --- a/tests/Integration/Api/Remote/SftpAuthenticationControllerTest.php +++ b/tests/Integration/Api/Remote/SftpAuthenticationControllerTest.php @@ -213,7 +213,7 @@ class SftpAuthenticationControllerTest extends IntegrationTestCase $this->post('/api/remote/sftp/auth', $data)->assertForbidden(); } - public function authorizationTypeDataProvider(): array + public static function authorizationTypeDataProvider(): array { return [ 'password auth' => ['password'], @@ -221,7 +221,7 @@ class SftpAuthenticationControllerTest extends IntegrationTestCase ]; } - public function serverStateDataProvider(): array + public static function serverStateDataProvider(): array { return [ 'installing' => [Server::STATUS_INSTALLING], diff --git a/tests/Integration/Jobs/Schedule/RunTaskJobTest.php b/tests/Integration/Jobs/Schedule/RunTaskJobTest.php index b80679bd7..c1c324425 100644 --- a/tests/Integration/Jobs/Schedule/RunTaskJobTest.php +++ b/tests/Integration/Jobs/Schedule/RunTaskJobTest.php @@ -2,14 +2,11 @@ namespace Pterodactyl\Tests\Integration\Jobs\Schedule; -use Mockery; use Carbon\Carbon; -use DateTimeInterface; use Carbon\CarbonImmutable; use GuzzleHttp\Psr7\Request; use Pterodactyl\Models\Task; use GuzzleHttp\Psr7\Response; -use InvalidArgumentException; use Pterodactyl\Models\Server; use Pterodactyl\Models\Schedule; use Illuminate\Support\Facades\Bus; @@ -40,7 +37,7 @@ class RunTaskJobTest extends IntegrationTestCase $job = new RunTaskJob($task); - Bus::dispatchNow($job); + Bus::dispatchSync($job); $task->refresh(); $schedule->refresh(); @@ -48,7 +45,7 @@ class RunTaskJobTest extends IntegrationTestCase $this->assertFalse($task->is_queued); $this->assertFalse($schedule->is_processing); $this->assertFalse($schedule->is_active); - $this->assertTrue(CarbonImmutable::now()->isSameAs(DateTimeInterface::ATOM, $schedule->last_run_at)); + $this->assertTrue(CarbonImmutable::now()->isSameAs(\DateTimeInterface::ATOM, $schedule->last_run_at)); } public function testJobWithInvalidActionThrowsException() @@ -62,9 +59,9 @@ class RunTaskJobTest extends IntegrationTestCase $job = new RunTaskJob($task); - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Invalid task action provided: foobar'); - Bus::dispatchNow($job); + Bus::dispatchSync($job); } /** @@ -90,22 +87,22 @@ class RunTaskJobTest extends IntegrationTestCase 'continue_on_failure' => false, ]); - $mock = Mockery::mock(DaemonPowerRepository::class); + $mock = \Mockery::mock(DaemonPowerRepository::class); $this->instance(DaemonPowerRepository::class, $mock); - $mock->expects('setServer')->with(Mockery::on(function ($value) use ($server) { + $mock->expects('setServer')->with(\Mockery::on(function ($value) use ($server) { return $value instanceof Server && $value->id === $server->id; }))->andReturnSelf(); $mock->expects('send')->with('start')->andReturn(new Response()); - Bus::dispatchNow(new RunTaskJob($task, $isManualRun)); + Bus::dispatchSync(new RunTaskJob($task, $isManualRun)); $task->refresh(); $schedule->refresh(); $this->assertFalse($task->is_queued); $this->assertFalse($schedule->is_processing); - $this->assertTrue(CarbonImmutable::now()->isSameAs(DateTimeInterface::ATOM, $schedule->last_run_at)); + $this->assertTrue(CarbonImmutable::now()->isSameAs(\DateTimeInterface::ATOM, $schedule->last_run_at)); } /** @@ -125,7 +122,7 @@ class RunTaskJobTest extends IntegrationTestCase 'continue_on_failure' => $continueOnFailure, ]); - $mock = Mockery::mock(DaemonPowerRepository::class); + $mock = \Mockery::mock(DaemonPowerRepository::class); $this->instance(DaemonPowerRepository::class, $mock); $mock->expects('setServer->send')->andThrow( @@ -136,7 +133,7 @@ class RunTaskJobTest extends IntegrationTestCase $this->expectException(DaemonConnectionException::class); } - Bus::dispatchNow(new RunTaskJob($task)); + Bus::dispatchSync(new RunTaskJob($task)); if ($continueOnFailure) { $task->refresh(); @@ -144,7 +141,7 @@ class RunTaskJobTest extends IntegrationTestCase $this->assertFalse($task->is_queued); $this->assertFalse($schedule->is_processing); - $this->assertTrue(CarbonImmutable::now()->isSameAs(DateTimeInterface::ATOM, $schedule->last_run_at)); + $this->assertTrue(CarbonImmutable::now()->isSameAs(\DateTimeInterface::ATOM, $schedule->last_run_at)); } } @@ -168,17 +165,17 @@ class RunTaskJobTest extends IntegrationTestCase 'payload' => 'start', ]); - Bus::dispatchNow(new RunTaskJob($task)); + Bus::dispatchSync(new RunTaskJob($task)); $task->refresh(); $schedule->refresh(); $this->assertFalse($task->is_queued); $this->assertFalse($schedule->is_processing); - $this->assertTrue(Carbon::now()->isSameAs(DateTimeInterface::ATOM, $schedule->last_run_at)); + $this->assertTrue(Carbon::now()->isSameAs(\DateTimeInterface::ATOM, $schedule->last_run_at)); } - public function isManualRunDataProvider(): array + public static function isManualRunDataProvider(): array { return [[true], [false]]; } diff --git a/tests/Integration/Services/Allocations/FindAssignableAllocationServiceTest.php b/tests/Integration/Services/Allocations/FindAssignableAllocationServiceTest.php index 3efde3355..3c116cbeb 100644 --- a/tests/Integration/Services/Allocations/FindAssignableAllocationServiceTest.php +++ b/tests/Integration/Services/Allocations/FindAssignableAllocationServiceTest.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Tests\Integration\Services\Allocations; -use Exception; -use InvalidArgumentException; use Pterodactyl\Models\Allocation; use Pterodactyl\Tests\Integration\IntegrationTestCase; use Pterodactyl\Services\Allocations\FindAssignableAllocationService; @@ -142,8 +140,8 @@ class FindAssignableAllocationServiceTest extends IntegrationTestCase try { $this->getService()->handle($server); $this->fail('This assertion should not be reached.'); - } catch (Exception $exception) { - $this->assertInstanceOf(InvalidArgumentException::class, $exception); + } catch (\Exception $exception) { + $this->assertInstanceOf(\InvalidArgumentException::class, $exception); $this->assertSame('Expected an integerish value. Got: string', $exception->getMessage()); } @@ -153,8 +151,8 @@ class FindAssignableAllocationServiceTest extends IntegrationTestCase try { $this->getService()->handle($server); $this->fail('This assertion should not be reached.'); - } catch (Exception $exception) { - $this->assertInstanceOf(InvalidArgumentException::class, $exception); + } catch (\Exception $exception) { + $this->assertInstanceOf(\InvalidArgumentException::class, $exception); $this->assertSame('Expected an integerish value. Got: string', $exception->getMessage()); } } diff --git a/tests/Integration/Services/Databases/DatabaseManagementServiceTest.php b/tests/Integration/Services/Databases/DatabaseManagementServiceTest.php index 72c0e804c..b68a3521e 100644 --- a/tests/Integration/Services/Databases/DatabaseManagementServiceTest.php +++ b/tests/Integration/Services/Databases/DatabaseManagementServiceTest.php @@ -2,10 +2,7 @@ namespace Pterodactyl\Tests\Integration\Services\Databases; -use Mockery; use Mockery\MockInterface; -use BadMethodCallException; -use InvalidArgumentException; use Pterodactyl\Models\Database; use Pterodactyl\Models\DatabaseHost; use Pterodactyl\Tests\Integration\IntegrationTestCase; @@ -79,7 +76,7 @@ class DatabaseManagementServiceTest extends IntegrationTestCase { $server = $this->createServerModel(); - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('The database name passed to DatabaseManagementService::handle MUST be prefixed with "s{server_id}_".'); $this->getService()->create($server, $data); @@ -134,13 +131,13 @@ class DatabaseManagementServiceTest extends IntegrationTestCase // assertions that would get caught by the functions catcher and thus lead to the exception // being swallowed incorrectly. $this->repository->expects('createUser')->with( - Mockery::on(function ($value) use (&$username) { + \Mockery::on(function ($value) use (&$username) { $username = $value; return true; }), '%', - Mockery::on(function ($value) use (&$password) { + \Mockery::on(function ($value) use (&$password) { $password = $value; return true; @@ -148,7 +145,7 @@ class DatabaseManagementServiceTest extends IntegrationTestCase null ); - $this->repository->expects('assignUserToDatabase')->with($name, Mockery::on(function ($value) use (&$secondUsername) { + $this->repository->expects('assignUserToDatabase')->with($name, \Mockery::on(function ($value) use (&$secondUsername) { $secondUsername = $value; return true; @@ -182,11 +179,11 @@ class DatabaseManagementServiceTest extends IntegrationTestCase $host = DatabaseHost::factory()->create(['node_id' => $server->node_id]); - $this->repository->expects('createDatabase')->with($name)->andThrows(new BadMethodCallException()); + $this->repository->expects('createDatabase')->with($name)->andThrows(new \BadMethodCallException()); $this->repository->expects('dropDatabase')->with($name); - $this->repository->expects('dropUser')->withAnyArgs()->andThrows(new InvalidArgumentException()); + $this->repository->expects('dropUser')->withAnyArgs()->andThrows(new \InvalidArgumentException()); - $this->expectException(BadMethodCallException::class); + $this->expectException(\BadMethodCallException::class); $this->getService()->create($server, [ 'remote' => '%', @@ -197,7 +194,7 @@ class DatabaseManagementServiceTest extends IntegrationTestCase $this->assertDatabaseMissing('databases', ['server_id' => $server->id]); } - public function invalidDataDataProvider(): array + public static function invalidDataDataProvider(): array { return [ [[]], diff --git a/tests/Integration/Services/Databases/DeployServerDatabaseServiceTest.php b/tests/Integration/Services/Databases/DeployServerDatabaseServiceTest.php index 0da9245ee..eb8f4dbaa 100644 --- a/tests/Integration/Services/Databases/DeployServerDatabaseServiceTest.php +++ b/tests/Integration/Services/Databases/DeployServerDatabaseServiceTest.php @@ -2,10 +2,8 @@ namespace Pterodactyl\Tests\Integration\Services\Databases; -use Mockery; use Mockery\MockInterface; use Pterodactyl\Models\Node; -use InvalidArgumentException; use Pterodactyl\Models\Database; use Pterodactyl\Models\DatabaseHost; use Pterodactyl\Tests\Integration\IntegrationTestCase; @@ -24,7 +22,7 @@ class DeployServerDatabaseServiceTest extends IntegrationTestCase { parent::setUp(); - $this->managementService = Mockery::mock(DatabaseManagementService::class); + $this->managementService = \Mockery::mock(DatabaseManagementService::class); $this->swap(DatabaseManagementService::class, $this->managementService); } @@ -50,7 +48,7 @@ class DeployServerDatabaseServiceTest extends IntegrationTestCase { $server = $this->createServerModel(); - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessageMatches('/^Expected a non-empty value\. Got: /'); $this->getService()->handle($server, $data); } @@ -142,7 +140,7 @@ class DeployServerDatabaseServiceTest extends IntegrationTestCase $this->assertInstanceOf(Database::class, $response); } - public function invalidDataProvider(): array + public static function invalidDataProvider(): array { return [ [['remote' => '%']], diff --git a/tests/Integration/Services/Deployment/FindViableNodesServiceTest.php b/tests/Integration/Services/Deployment/FindViableNodesServiceTest.php index f77b5b144..64594c8b6 100644 --- a/tests/Integration/Services/Deployment/FindViableNodesServiceTest.php +++ b/tests/Integration/Services/Deployment/FindViableNodesServiceTest.php @@ -2,9 +2,7 @@ namespace Pterodactyl\Tests\Integration\Services\Deployment; -use Exception; use Pterodactyl\Models\Node; -use InvalidArgumentException; use Pterodactyl\Models\Server; use Pterodactyl\Models\Database; use Pterodactyl\Models\Location; @@ -26,7 +24,7 @@ class FindViableNodesServiceTest extends IntegrationTestCase public function testExceptionIsThrownIfNoDiskSpaceHasBeenSet() { - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Disk space must be an int, got NULL'); $this->getService()->handle(); @@ -34,7 +32,7 @@ class FindViableNodesServiceTest extends IntegrationTestCase public function testExceptionIsThrownIfNoMemoryHasBeenSet() { - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Memory usage must be an int, got NULL'); $this->getService()->setDisk(10)->handle(); @@ -54,16 +52,16 @@ class FindViableNodesServiceTest extends IntegrationTestCase try { $this->getService()->setLocations(['a']); $this->fail('This expectation should not be called.'); - } catch (Exception $exception) { - $this->assertInstanceOf(InvalidArgumentException::class, $exception); + } catch (\Exception $exception) { + $this->assertInstanceOf(\InvalidArgumentException::class, $exception); $this->assertSame('An array of location IDs should be provided when calling setLocations.', $exception->getMessage()); } try { $this->getService()->setLocations(['1.2', '1', 2]); $this->fail('This expectation should not be called.'); - } catch (Exception $exception) { - $this->assertInstanceOf(InvalidArgumentException::class, $exception); + } catch (\Exception $exception) { + $this->assertInstanceOf(\InvalidArgumentException::class, $exception); $this->assertSame('An array of location IDs should be provided when calling setLocations.', $exception->getMessage()); } } diff --git a/tests/Integration/Services/Schedules/ProcessScheduleServiceTest.php b/tests/Integration/Services/Schedules/ProcessScheduleServiceTest.php index cd56337ac..eaed38a16 100644 --- a/tests/Integration/Services/Schedules/ProcessScheduleServiceTest.php +++ b/tests/Integration/Services/Schedules/ProcessScheduleServiceTest.php @@ -2,11 +2,9 @@ namespace Pterodactyl\Tests\Integration\Services\Schedules; -use Mockery; use Exception; use Carbon\CarbonImmutable; use Pterodactyl\Models\Task; -use InvalidArgumentException; use Pterodactyl\Models\Schedule; use Illuminate\Support\Facades\Bus; use Illuminate\Contracts\Bus\Dispatcher; @@ -47,7 +45,7 @@ class ProcessScheduleServiceTest extends IntegrationTestCase /** @var \Pterodactyl\Models\Task $task */ $task = Task::factory()->create(['schedule_id' => $schedule->id, 'sequence_id' => 1]); - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->getService()->handle($schedule); @@ -126,7 +124,7 @@ class ProcessScheduleServiceTest extends IntegrationTestCase */ public function testTaskDispatchedNowIsResetProperlyIfErrorIsEncountered() { - $this->swap(Dispatcher::class, $dispatcher = Mockery::mock(Dispatcher::class)); + $this->swap(Dispatcher::class, $dispatcher = \Mockery::mock(Dispatcher::class)); $server = $this->createServerModel(); /** @var \Pterodactyl\Models\Schedule $schedule */ @@ -134,9 +132,9 @@ class ProcessScheduleServiceTest extends IntegrationTestCase /** @var \Pterodactyl\Models\Task $task */ $task = Task::factory()->create(['schedule_id' => $schedule->id, 'sequence_id' => 1]); - $dispatcher->expects('dispatchNow')->andThrows(new Exception('Test thrown exception')); + $dispatcher->expects('dispatchNow')->andThrows(new \Exception('Test thrown exception')); - $this->expectException(Exception::class); + $this->expectException(\Exception::class); $this->expectExceptionMessage('Test thrown exception'); $this->getService()->handle($schedule, true); @@ -150,7 +148,7 @@ class ProcessScheduleServiceTest extends IntegrationTestCase $this->assertDatabaseHas('tasks', ['id' => $task->id, 'is_queued' => false]); } - public function dispatchNowDataProvider(): array + public static function dispatchNowDataProvider(): array { return [[true], [false]]; } diff --git a/tests/Integration/Services/Servers/BuildModificationServiceTest.php b/tests/Integration/Services/Servers/BuildModificationServiceTest.php index edebb0125..f63efee9e 100644 --- a/tests/Integration/Services/Servers/BuildModificationServiceTest.php +++ b/tests/Integration/Services/Servers/BuildModificationServiceTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Services\Servers; -use Mockery; use Mockery\MockInterface; use GuzzleHttp\Psr7\Request; use GuzzleHttp\Psr7\Response; @@ -108,7 +107,7 @@ class BuildModificationServiceTest extends IntegrationTestCase { $server = $this->createServerModel(); - $this->daemonServerRepository->expects('setServer')->with(Mockery::on(function (Server $s) use ($server) { + $this->daemonServerRepository->expects('setServer')->with(\Mockery::on(function (Server $s) use ($server) { return $s->id === $server->id; }))->andReturnSelf(); diff --git a/tests/Integration/Services/Servers/ServerCreationServiceTest.php b/tests/Integration/Services/Servers/ServerCreationServiceTest.php index 92a873a18..b6adb9b60 100644 --- a/tests/Integration/Services/Servers/ServerCreationServiceTest.php +++ b/tests/Integration/Services/Servers/ServerCreationServiceTest.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Integration\Services\Servers; -use Mockery; use Mockery\MockInterface; use Pterodactyl\Models\Egg; use GuzzleHttp\Psr7\Request; @@ -42,7 +41,7 @@ class ServerCreationServiceTest extends IntegrationTestCase ->where('name', 'Bungeecord') ->firstOrFail(); - $this->daemonServerRepository = Mockery::mock(DaemonServerRepository::class); + $this->daemonServerRepository = \Mockery::mock(DaemonServerRepository::class); $this->swap(DaemonServerRepository::class, $this->daemonServerRepository); } diff --git a/tests/Integration/Services/Servers/ServerDeletionServiceTest.php b/tests/Integration/Services/Servers/ServerDeletionServiceTest.php index 3bad99932..676a60416 100644 --- a/tests/Integration/Services/Servers/ServerDeletionServiceTest.php +++ b/tests/Integration/Services/Servers/ServerDeletionServiceTest.php @@ -2,8 +2,6 @@ namespace Pterodactyl\Tests\Integration\Services\Servers; -use Mockery; -use Exception; use Mockery\MockInterface; use GuzzleHttp\Psr7\Request; use GuzzleHttp\Psr7\Response; @@ -35,8 +33,8 @@ class ServerDeletionServiceTest extends IntegrationTestCase // There will be some log calls during this test, don't actually write to the disk. config()->set('logging.default', 'null'); - $this->daemonServerRepository = Mockery::mock(DaemonServerRepository::class); - $this->databaseManagementService = Mockery::mock(DatabaseManagementService::class); + $this->daemonServerRepository = \Mockery::mock(DaemonServerRepository::class); + $this->databaseManagementService = \Mockery::mock(DatabaseManagementService::class); $this->app->instance(DaemonServerRepository::class, $this->daemonServerRepository); $this->app->instance(DatabaseManagementService::class, $this->databaseManagementService); @@ -120,11 +118,11 @@ class ServerDeletionServiceTest extends IntegrationTestCase $server->refresh(); $this->daemonServerRepository->expects('setServer->delete')->withNoArgs()->andReturnUndefined(); - $this->databaseManagementService->expects('delete')->with(Mockery::on(function ($value) use ($db) { + $this->databaseManagementService->expects('delete')->with(\Mockery::on(function ($value) use ($db) { return $value instanceof Database && $value->id === $db->id; - }))->andThrows(new Exception()); + }))->andThrows(new \Exception()); - $this->expectException(Exception::class); + $this->expectException(\Exception::class); $this->getService()->handle($server); $this->assertDatabaseHas('servers', ['id' => $server->id]); @@ -145,9 +143,9 @@ class ServerDeletionServiceTest extends IntegrationTestCase $server->refresh(); $this->daemonServerRepository->expects('setServer->delete')->withNoArgs()->andReturnUndefined(); - $this->databaseManagementService->expects('delete')->with(Mockery::on(function ($value) use ($db) { + $this->databaseManagementService->expects('delete')->with(\Mockery::on(function ($value) use ($db) { return $value instanceof Database && $value->id === $db->id; - }))->andThrows(new Exception()); + }))->andThrows(new \Exception()); $this->getService()->withForce(true)->handle($server); diff --git a/tests/Integration/Services/Servers/StartupModificationServiceTest.php b/tests/Integration/Services/Servers/StartupModificationServiceTest.php index 47f4595f0..0d310a9f1 100644 --- a/tests/Integration/Services/Servers/StartupModificationServiceTest.php +++ b/tests/Integration/Services/Servers/StartupModificationServiceTest.php @@ -34,7 +34,7 @@ class StartupModificationServiceTest extends IntegrationTestCase ]); $this->fail('This assertion should not be called.'); - } catch (Exception $exception) { + } catch (\Exception $exception) { $this->assertInstanceOf(ValidationException::class, $exception); /** @var \Illuminate\Validation\ValidationException $exception */ diff --git a/tests/Integration/Services/Servers/SuspensionServiceTest.php b/tests/Integration/Services/Servers/SuspensionServiceTest.php index bb7297d14..e3f925cf5 100644 --- a/tests/Integration/Services/Servers/SuspensionServiceTest.php +++ b/tests/Integration/Services/Servers/SuspensionServiceTest.php @@ -2,9 +2,7 @@ namespace Pterodactyl\Tests\Integration\Services\Servers; -use Mockery; use Mockery\MockInterface; -use InvalidArgumentException; use Pterodactyl\Models\Server; use Pterodactyl\Services\Servers\SuspensionService; use Pterodactyl\Tests\Integration\IntegrationTestCase; @@ -21,7 +19,7 @@ class SuspensionServiceTest extends IntegrationTestCase { parent::setUp(); - $this->repository = Mockery::mock(DaemonServerRepository::class); + $this->repository = \Mockery::mock(DaemonServerRepository::class); $this->app->instance(DaemonServerRepository::class, $this->repository); } @@ -60,7 +58,7 @@ class SuspensionServiceTest extends IntegrationTestCase { $server = $this->createServerModel(); - $this->expectException(InvalidArgumentException::class); + $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Expected one of: "suspend", "unsuspend". Got: "foo"'); $this->getService()->toggle($server, 'foo'); diff --git a/tests/Traits/Http/MocksMiddlewareClosure.php b/tests/Traits/Http/MocksMiddlewareClosure.php index aebb61ce9..9cbe315bd 100644 --- a/tests/Traits/Http/MocksMiddlewareClosure.php +++ b/tests/Traits/Http/MocksMiddlewareClosure.php @@ -4,7 +4,6 @@ namespace Pterodactyl\Tests\Traits\Http; use Closure; use Illuminate\Http\Request; -use BadFunctionCallException; trait MocksMiddlewareClosure { @@ -12,10 +11,10 @@ trait MocksMiddlewareClosure * Provide a closure to be used when validating that the response from the middleware * is the same request object we passed into it. */ - protected function getClosureAssertions(): Closure + protected function getClosureAssertions(): \Closure { if (is_null($this->request)) { - throw new BadFunctionCallException('Calling getClosureAssertions without defining a request object is not supported.'); + throw new \BadFunctionCallException('Calling getClosureAssertions without defining a request object is not supported.'); } return function ($response) { diff --git a/tests/Traits/Http/RequestMockHelpers.php b/tests/Traits/Http/RequestMockHelpers.php index 23e88663c..aa3607e51 100644 --- a/tests/Traits/Http/RequestMockHelpers.php +++ b/tests/Traits/Http/RequestMockHelpers.php @@ -6,7 +6,6 @@ use Mockery as m; use Mockery\Mock; use Illuminate\Http\Request; use Pterodactyl\Models\User; -use InvalidArgumentException; use Symfony\Component\HttpFoundation\ParameterBag; trait RequestMockHelpers @@ -68,7 +67,7 @@ trait RequestMockHelpers { $this->request = m::mock($this->requestMockClass); if (!$this->request instanceof Request) { - throw new InvalidArgumentException('Request mock class must be an instance of ' . Request::class . ' when mocked.'); + throw new \InvalidArgumentException('Request mock class must be an instance of ' . Request::class . ' when mocked.'); } $this->request->attributes = new ParameterBag(); diff --git a/tests/Traits/MocksPdoConnection.php b/tests/Traits/MocksPdoConnection.php index a93896463..527fac62f 100644 --- a/tests/Traits/MocksPdoConnection.php +++ b/tests/Traits/MocksPdoConnection.php @@ -23,7 +23,7 @@ trait MocksPdoConnection Model::unsetConnectionResolver(); - $connection = new MySqlConnection($mock = Mockery::mock(PDO::class), 'testing_mock'); + $connection = new MySqlConnection($mock = \Mockery::mock(\PDO::class), 'testing_mock'); $resolver = new ConnectionResolver(['mocked' => $connection]); $resolver->setDefaultConnection('mocked'); diff --git a/tests/Traits/MocksRequestException.php b/tests/Traits/MocksRequestException.php index fc011d152..16078707d 100644 --- a/tests/Traits/MocksRequestException.php +++ b/tests/Traits/MocksRequestException.php @@ -2,7 +2,6 @@ namespace Pterodactyl\Tests\Traits; -use Mockery; use Mockery\Mock; use Mockery\MockInterface; use GuzzleHttp\Exception\RequestException; @@ -27,6 +26,6 @@ trait MocksRequestException */ protected function getExceptionMock(string $abstract = RequestException::class): MockInterface { - return $this->exception ?? $this->exception = Mockery::mock($abstract); + return $this->exception ?? $this->exception = \Mockery::mock($abstract); } } diff --git a/tests/Unit/Helpers/EnvironmentWriterTraitTest.php b/tests/Unit/Helpers/EnvironmentWriterTraitTest.php index f2022f798..0680da0db 100644 --- a/tests/Unit/Helpers/EnvironmentWriterTraitTest.php +++ b/tests/Unit/Helpers/EnvironmentWriterTraitTest.php @@ -17,7 +17,7 @@ class EnvironmentWriterTraitTest extends TestCase $this->assertSame($expected, $output); } - public function variableDataProvider(): array + public static function variableDataProvider(): array { return [ ['foo', 'foo'], diff --git a/tests/Unit/Helpers/IsDigitTest.php b/tests/Unit/Helpers/IsDigitTest.php index 4ba08042f..af19c732e 100644 --- a/tests/Unit/Helpers/IsDigitTest.php +++ b/tests/Unit/Helpers/IsDigitTest.php @@ -19,7 +19,7 @@ class IsDigitTest extends TestCase /** * Provide data to test against the helper function. */ - public function helperDataProvider(): array + public static function helperDataProvider(): array { return [ [true, false], diff --git a/tests/Unit/Http/Middleware/Api/Daemon/DaemonAuthenticateTest.php b/tests/Unit/Http/Middleware/Api/Daemon/DaemonAuthenticateTest.php index 8c8c76920..84562f6c9 100644 --- a/tests/Unit/Http/Middleware/Api/Daemon/DaemonAuthenticateTest.php +++ b/tests/Unit/Http/Middleware/Api/Daemon/DaemonAuthenticateTest.php @@ -138,7 +138,7 @@ class DaemonAuthenticateTest extends MiddlewareTestCase * * @return array|\string[][] */ - public function badTokenDataProvider(): array + public static function badTokenDataProvider(): array { return [ ['foo'], diff --git a/tests/Unit/Rules/UsernameTest.php b/tests/Unit/Rules/UsernameTest.php index 829cab2c3..003e3e8dd 100644 --- a/tests/Unit/Rules/UsernameTest.php +++ b/tests/Unit/Rules/UsernameTest.php @@ -38,7 +38,7 @@ class UsernameTest extends TestCase /** * Provide valid usernames. */ - public function validUsernameDataProvider(): array + public static function validUsernameDataProvider(): array { return [ ['username'], @@ -54,7 +54,7 @@ class UsernameTest extends TestCase /** * Provide invalid usernames. */ - public function invalidUsernameDataProvider(): array + public static function invalidUsernameDataProvider(): array { return [ ['_username'], diff --git a/tests/Unit/Services/Acl/Api/AdminAclTest.php b/tests/Unit/Services/Acl/Api/AdminAclTest.php index daaea838f..3f89659a2 100644 --- a/tests/Unit/Services/Acl/Api/AdminAclTest.php +++ b/tests/Unit/Services/Acl/Api/AdminAclTest.php @@ -31,7 +31,7 @@ class AdminAclTest extends TestCase /** * Provide valid and invalid permissions combos for testing. */ - public function permissionsDataProvider(): array + public static function permissionsDataProvider(): array { return [ [AdminAcl::READ, AdminAcl::READ, true],