diff --git a/.gitignore b/.gitignore index 2b9e1c5c..6d43087a 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ Homestead.yaml _ide_helper.php .idea resources/views/emails/html ++npm-debug.log ++yarn-error.log diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index d7f0233d..761ded7c 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -31,23 +31,7 @@ class Kernel extends ConsoleKernel * @var array */ protected $commands = [ - \Poniverse\Ponyfm\Console\Commands\MigrateOldData::class, - \Poniverse\Ponyfm\Console\Commands\RefreshCache::class, - \Poniverse\Ponyfm\Console\Commands\ClassifyMLPMA::class, - \Poniverse\Ponyfm\Console\Commands\RebuildTags::class, - \Poniverse\Ponyfm\Console\Commands\RebuildArtists::class, - \Poniverse\Ponyfm\Console\Commands\BootstrapLocalEnvironment::class, - \Poniverse\Ponyfm\Console\Commands\PoniverseApiSetup::class, - \Poniverse\Ponyfm\Console\Commands\ClearTrackCache::class, - \Poniverse\Ponyfm\Console\Commands\RebuildTrackCache::class, - \Poniverse\Ponyfm\Console\Commands\RebuildTrack::class, - \Poniverse\Ponyfm\Console\Commands\RebuildFilesizes::class, - \Poniverse\Ponyfm\Console\Commands\RebuildSearchIndex::class, - \Poniverse\Ponyfm\Console\Commands\MergeAccounts::class, - \Poniverse\Ponyfm\Console\Commands\SyncPoniverseAccounts::class, - \Poniverse\Ponyfm\Console\Commands\FixMLPMAImages::class, - \Poniverse\Ponyfm\Console\Commands\VersionFiles::class, - \Poniverse\Ponyfm\Console\Commands\ImportEQBeats::class, + // ]; /** @@ -58,7 +42,10 @@ class Kernel extends ConsoleKernel */ protected function schedule(Schedule $schedule) { + // $schedule->command('inspire') + // ->hourly(); } + /** * Register the Closure based commands for the application. * @@ -66,6 +53,8 @@ class Kernel extends ConsoleKernel */ protected function commands() { + $this->load(__DIR__.'/Commands'); + require base_path('routes/console.php'); } } diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 096dce72..17f7da9f 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -22,7 +22,7 @@ namespace Poniverse\Ponyfm\Exceptions; use Exception; use Illuminate\Auth\AuthenticationException; -use GrahamCampbell\Exceptions\NewExceptionHandler as ExceptionHandler; +use GrahamCampbell\Exceptions\ExceptionHandler; class Handler extends ExceptionHandler { @@ -32,12 +32,20 @@ class Handler extends ExceptionHandler * @var array */ protected $dontReport = [ - \Illuminate\Auth\AuthenticationException::class, - \Illuminate\Auth\Access\AuthorizationException::class, - \Illuminate\Validation\ValidationException::class, - \Symfony\Component\HttpKernel\Exception\HttpException::class, + // ]; + /** + * A list of the inputs that are never flashed for validation exceptions. + * + * @var array + */ + protected $dontFlash = [ + 'password', + 'password_confirmation', + ]; + + /** * Report or log an exception. * @@ -62,19 +70,4 @@ class Handler extends ExceptionHandler { return parent::render($request, $e); } - /** - * Convert an authentication exception into an unauthenticated response. - * - * @param \Illuminate\Http\Request $request - * @param \Illuminate\Auth\AuthenticationException $e - * @return \Illuminate\Http\Response - */ - protected function unauthenticated($request, AuthenticationException $e) - { - if ($request->expectsJson()) { - return response()->json(['error' => 'Unauthenticated.'], 401); - } else { - return redirect()->guest(route('login')); - } - } } diff --git a/app/Http/Controllers/TracksController.php b/app/Http/Controllers/TracksController.php index e5d41736..d7399a77 100644 --- a/app/Http/Controllers/TracksController.php +++ b/app/Http/Controllers/TracksController.php @@ -80,7 +80,7 @@ class TracksController extends Controller public function getOembed(Request $request) { - if (!$request->has('url')) { + if (!$request->filled('url')) { App::abort(404); } diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 4e58bca8..376125e8 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -57,6 +57,7 @@ class Kernel extends HttpKernel 'can' => \Poniverse\Ponyfm\Http\Middleware\Authorize::class, 'json-exceptions' => \Poniverse\Ponyfm\Http\Middleware\JsonExceptions::class, 'guest' => \Poniverse\Ponyfm\Http\Middleware\RedirectIfAuthenticated::class, - 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class + 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, + 'cors' => \Barryvdh\Cors\HandleCors::class, ]; } diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php index 05b0eb1b..dba0360d 100644 --- a/app/Http/Middleware/EncryptCookies.php +++ b/app/Http/Middleware/EncryptCookies.php @@ -20,9 +20,9 @@ namespace Poniverse\Ponyfm\Http\Middleware; -use Illuminate\Cookie\Middleware\EncryptCookies as BaseEncrypter; +use Illuminate\Cookie\Middleware\EncryptCookies as Middleware; -class EncryptCookies extends BaseEncrypter +class EncryptCookies extends Middleware { /** * The names of the cookies that should not be encrypted. diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php index 3aaa7648..d709365b 100644 --- a/app/Http/Middleware/VerifyCsrfToken.php +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -20,9 +20,9 @@ namespace Poniverse\Ponyfm\Http\Middleware; -use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier; +use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware; -class VerifyCsrfToken extends BaseVerifier +class VerifyCsrfToken extends Middleware { /** * The URIs that should be excluded from CSRF verification. diff --git a/artisan b/artisan index df630d0d..f80e6414 100755 --- a/artisan +++ b/artisan @@ -1,6 +1,8 @@ #!/usr/bin/env php =7.0.1", - "laravel/framework": "5.4.*", + "laravel/framework": "5.5.*", "codescale/ffmpeg-php": "2.7.0", "intouch/laravel-newrelic": "*", "barryvdh/laravel-ide-helper": "^2.1", @@ -23,22 +23,22 @@ "barryvdh/laravel-debugbar": "~2.4", "predis/predis": "^1.0", "ksubileau/color-thief-php": "^1.3", - "graham-campbell/exceptions": "^9.1", + "graham-campbell/exceptions": "^10.0", "minishlink/web-push": "^1.0", "alsofronie/eloquent-uuid": "^1.0", - "poniverse/api": "dev-rewrite", - "barryvdh/laravel-cors": "^0.8.2", + "poniverse/api": "dev-patch-1", + "barryvdh/laravel-cors": "^0.10", "laravel/tinker": "^1.0" }, "require-dev": { "fzaninotto/faker": "~1.4", - "mockery/mockery": "0.9.*", - "phpunit/phpunit": "~5.0", + "mockery/mockery": "~1.0", + "phpunit/phpunit": "~6.0", "phpspec/phpspec": "~2.1", "filp/whoops": "^2.1", "symfony/dom-crawler": "~3.1", "symfony/css-selector": "~3.1", - "laravel/browser-kit-testing": "1.*", + "laravel/browser-kit-testing": "2.*", "nategood/httpful": "^0.2.20" }, "autoload": { @@ -58,23 +58,33 @@ } }, "scripts": { - "post-install-cmd": [ - "Illuminate\\Foundation\\ComposerScripts::postInstall", - "php artisan optimize" - ], - "post-update-cmd": [ - "Illuminate\\Foundation\\ComposerScripts::postUpdate", - "php artisan ide-helper:generate", - "php artisan optimize" - ], "post-root-package-install": [ - "php -r \"copy('.env.example', '.env');\"" + "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ - "php artisan key:generate" + "@php artisan key:generate" + ], + "post-update-cmd": [ + "php artisan ide-helper:generate" + ], + "post-autoload-dump": [ + "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", + "@php artisan package:discover" ] }, "config": { "preferred-install": "dist" - } + }, + "extra": { + "laravel": { + "dont-discover": [ + ] + } + }, + "repositories": [ + { + "type": "vcs", + "url": "https://github.com/Lavoaster/poniverse-php" + } + ] } diff --git a/composer.lock b/composer.lock index 637f4b09..febcaf5f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "29f21d15bdc1fd0b4c3c281c9ef71450", + "content-hash": "ad83dcf70b36ec2cf28d3a3efccf40d6", "packages": [ { "name": "alsofronie/eloquent-uuid", @@ -48,37 +48,47 @@ }, { "name": "barryvdh/laravel-cors", - "version": "v0.8.6", + "version": "v0.10.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-cors.git", - "reference": "9bf14c1d5ebe46738e8c535e56e621f98779197d" + "reference": "1326460c591e5299d43e266de52a4141c5c66561" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-cors/zipball/9bf14c1d5ebe46738e8c535e56e621f98779197d", - "reference": "9bf14c1d5ebe46738e8c535e56e621f98779197d", + "url": "https://api.github.com/repos/barryvdh/laravel-cors/zipball/1326460c591e5299d43e266de52a4141c5c66561", + "reference": "1326460c591e5299d43e266de52a4141c5c66561", "shasum": "" }, "require": { - "illuminate/support": "5.1.x|5.2.x|5.3.x|5.4.x", + "illuminate/support": "5.3.x|5.4.x|5.5.x", "php": ">=5.5.9", - "symfony/http-foundation": "~2.7|~3.0", - "symfony/http-kernel": "~2.7|~3.0" + "symfony/http-foundation": "~3.1", + "symfony/http-kernel": "~3.1" }, "require-dev": { - "phpunit/phpunit": "^4.8|^5.2" + "orchestra/testbench": "3.x", + "phpunit/phpunit": "^4.8|^5.2", + "squizlabs/php_codesniffer": "^2.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "0.8-dev" + "dev-master": "0.10-dev" + }, + "laravel": { + "providers": [ + "Barryvdh\\Cors\\ServiceProvider" + ] } }, "autoload": { "psr-4": { "Barryvdh\\Cors\\": "src/" - } + }, + "classmap": [ + "tests" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -97,7 +107,7 @@ "crossdomain", "laravel" ], - "time": "2017-02-15T21:21:33+00:00" + "time": "2017-08-28T12:10:56+00:00" }, { "name": "barryvdh/laravel-debugbar", @@ -927,6 +937,63 @@ ], "time": "2014-09-09T13:34:57+00:00" }, + { + "name": "egulias/email-validator", + "version": "2.1.3", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "1bec00a10039b823cc94eef4eddd47dcd3b2ca04" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/1bec00a10039b823cc94eef4eddd47dcd3b2ca04", + "reference": "1bec00a10039b823cc94eef4eddd47dcd3b2ca04", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^1.0.1", + "php": ">= 5.5" + }, + "require-dev": { + "dominicsayers/isemail": "dev-master", + "phpunit/phpunit": "^4.8.35", + "satooshi/php-coveralls": "^1.0.1" + }, + "suggest": { + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Egulias\\EmailValidator\\": "EmailValidator" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eduardo Gulias Davis" + } + ], + "description": "A library for validating emails against several RFCs", + "homepage": "https://github.com/egulias/EmailValidator", + "keywords": [ + "email", + "emailvalidation", + "emailvalidator", + "validation", + "validator" + ], + "time": "2017-11-15T23:40:40+00:00" + }, { "name": "elasticsearch/elasticsearch", "version": "v2.3.1", @@ -1097,32 +1164,33 @@ }, { "name": "graham-campbell/exceptions", - "version": "v9.4.0", + "version": "v10.0.0", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Laravel-Exceptions.git", - "reference": "d5eaa36169ad651b9f3d8f8d2ed218743b89013d" + "reference": "e2e9db159ded93567750a94a0f1358270ffaadc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Laravel-Exceptions/zipball/d5eaa36169ad651b9f3d8f8d2ed218743b89013d", - "reference": "d5eaa36169ad651b9f3d8f8d2ed218743b89013d", + "url": "https://api.github.com/repos/GrahamCampbell/Laravel-Exceptions/zipball/e2e9db159ded93567750a94a0f1358270ffaadc5", + "reference": "e2e9db159ded93567750a94a0f1358270ffaadc5", "shasum": "" }, "require": { - "illuminate/contracts": "5.1.*|5.2.*|5.3.*|5.4.*", - "illuminate/support": "5.1.*|5.2.*|5.3.*|5.4.*", - "paragonie/random_compat": "^1.1|^2.0", - "php": ">=5.5.9", + "illuminate/contracts": "5.3.*|5.4.*|5.5.*", + "illuminate/support": "5.3.*|5.4.*|5.5.*", + "php": "^7.0", "psr/log": "^1.0", - "symfony/debug": "^2.7|^3.0", - "symfony/http-foundation": "^2.7|^3.0" + "symfony/console": "^3.1", + "symfony/debug": "^3.1", + "symfony/http-foundation": "^3.1" }, "require-dev": { "filp/whoops": "^1.1|^2.0", - "graham-campbell/testbench": "^3.1", - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^4.8|^5.0" + "graham-campbell/analyzer": "^1.1", + "graham-campbell/testbench": "^4.0", + "mockery/mockery": "dev-master#c90a17247147543081e4d00f46911e422b49e583", + "phpunit/phpunit": "^6.0" }, "suggest": { "filp/whoops": "Enables use of the debug displayer." @@ -1130,7 +1198,12 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.4-dev" + "dev-master": "10.0-dev" + }, + "laravel": { + "providers": [ + "GrahamCampbell\\Exceptions\\ExceptionsServiceProvider" + ] } }, "autoload": { @@ -1162,7 +1235,7 @@ "laravel", "whoops" ], - "time": "2017-09-10T16:49:31+00:00" + "time": "2017-08-06T20:56:02+00:00" }, { "name": "guzzlehttp/guzzle", @@ -1774,16 +1847,16 @@ }, { "name": "laravel/framework", - "version": "v5.4.36", + "version": "v5.5.22", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "1062a22232071c3e8636487c86ec1ae75681bbf9" + "reference": "2404af887ca8272d721628a99bbc721ac3b692e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/1062a22232071c3e8636487c86ec1ae75681bbf9", - "reference": "1062a22232071c3e8636487c86ec1ae75681bbf9", + "url": "https://api.github.com/repos/laravel/framework/zipball/2404af887ca8272d721628a99bbc721ac3b692e7", + "reference": "2404af887ca8272d721628a99bbc721ac3b692e7", "shasum": "" }, "require": { @@ -1792,21 +1865,22 @@ "ext-mbstring": "*", "ext-openssl": "*", "league/flysystem": "~1.0", - "monolog/monolog": "~1.11", + "monolog/monolog": "~1.12", "mtdowling/cron-expression": "~1.0", "nesbot/carbon": "~1.20", - "paragonie/random_compat": "~1.4|~2.0", - "php": ">=5.6.4", + "php": ">=7.0", + "psr/container": "~1.0", + "psr/simple-cache": "^1.0", "ramsey/uuid": "~3.0", - "swiftmailer/swiftmailer": "~5.4", - "symfony/console": "~3.2", - "symfony/debug": "~3.2", - "symfony/finder": "~3.2", - "symfony/http-foundation": "~3.2", - "symfony/http-kernel": "~3.2", - "symfony/process": "~3.2", - "symfony/routing": "~3.2", - "symfony/var-dumper": "~3.2", + "swiftmailer/swiftmailer": "~6.0", + "symfony/console": "~3.3", + "symfony/debug": "~3.3", + "symfony/finder": "~3.3", + "symfony/http-foundation": "~3.3", + "symfony/http-kernel": "~3.3", + "symfony/process": "~3.3", + "symfony/routing": "~3.3", + "symfony/var-dumper": "~3.3", "tijsverkoyen/css-to-inline-styles": "~2.2", "vlucas/phpdotenv": "~2.2" }, @@ -1823,7 +1897,6 @@ "illuminate/database": "self.version", "illuminate/encryption": "self.version", "illuminate/events": "self.version", - "illuminate/exception": "self.version", "illuminate/filesystem": "self.version", "illuminate/hashing": "self.version", "illuminate/http": "self.version", @@ -1845,16 +1918,20 @@ "require-dev": { "aws/aws-sdk-php": "~3.0", "doctrine/dbal": "~2.5", - "mockery/mockery": "~0.9.4", + "filp/whoops": "^2.1.4", + "mockery/mockery": "~1.0", + "orchestra/testbench-core": "3.5.*", "pda/pheanstalk": "~3.0", - "phpunit/phpunit": "~5.7", - "predis/predis": "~1.0", - "symfony/css-selector": "~3.2", - "symfony/dom-crawler": "~3.2" + "phpunit/phpunit": "~6.0", + "predis/predis": "^1.1.1", + "symfony/css-selector": "~3.3", + "symfony/dom-crawler": "~3.3" }, "suggest": { "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~3.0).", "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.5).", + "ext-pcntl": "Required to use all features of the queue worker.", + "ext-posix": "Required to use all features of the queue worker.", "fzaninotto/faker": "Required to use the eloquent factory builder (~1.4).", "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (~6.0).", "laravel/tinker": "Required to use the tinker console command (~1.0).", @@ -1863,15 +1940,15 @@ "nexmo/client": "Required to use the Nexmo transport (~1.0).", "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", "predis/predis": "Required to use the redis cache and queue drivers (~1.0).", - "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~2.0).", - "symfony/css-selector": "Required to use some of the crawler integration testing tools (~3.2).", - "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~3.2).", - "symfony/psr-http-message-bridge": "Required to psr7 bridging features (0.2.*)." + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~3.0).", + "symfony/css-selector": "Required to use some of the crawler integration testing tools (~3.3).", + "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~3.3).", + "symfony/psr-http-message-bridge": "Required to psr7 bridging features (~1.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.4-dev" + "dev-master": "5.5-dev" } }, "autoload": { @@ -1899,7 +1976,7 @@ "framework", "laravel" ], - "time": "2017-08-30T09:26:16+00:00" + "time": "2017-11-27T15:29:55+00:00" }, { "name": "laravel/tinker", @@ -2617,21 +2694,21 @@ }, { "name": "poniverse/api", - "version": "dev-rewrite", + "version": "dev-patch-1", "source": { "type": "git", - "url": "https://github.com/Poniverse/poniverse-php.git", - "reference": "241c32e32076eaa4c0cf4d2a33cddcda006f2ba8" + "url": "https://github.com/Lavoaster/poniverse-php.git", + "reference": "fe21f0345a9887376366939f7733f16d0ab0de7d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Poniverse/poniverse-php/zipball/241c32e32076eaa4c0cf4d2a33cddcda006f2ba8", - "reference": "241c32e32076eaa4c0cf4d2a33cddcda006f2ba8", + "url": "https://api.github.com/repos/Lavoaster/poniverse-php/zipball/fe21f0345a9887376366939f7733f16d0ab0de7d", + "reference": "fe21f0345a9887376366939f7733f16d0ab0de7d", "shasum": "" }, "require": { "guzzlehttp/guzzle": "~6.0", - "illuminate/support": "5.1.*|5.2.*|5.3.*|5.4.*", + "illuminate/support": "5.1.*|5.2.*|5.3.*|5.4.*|5.5.*", "league/oauth2-client": "^1.1", "php": ">=5.5.0" }, @@ -2646,7 +2723,6 @@ "Poniverse\\Lib\\": "src/" } }, - "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], @@ -2662,7 +2738,10 @@ "laravel", "laravel4" ], - "time": "2016-12-30T16:09:52+00:00" + "support": { + "source": "https://github.com/Lavoaster/poniverse-php/tree/patch-1" + }, + "time": "2017-11-28T05:55:33+00:00" }, { "name": "predis/predis", @@ -2760,6 +2839,55 @@ ], "time": "2016-08-06T20:24:11+00:00" }, + { + "name": "psr/container", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "time": "2017-02-14T16:28:37+00:00" + }, { "name": "psr/http-message", "version": "1.0.1", @@ -2857,6 +2985,54 @@ ], "time": "2016-10-10T12:19:37+00:00" }, + { + "name": "psr/simple-cache", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "753fa598e8f3b9966c886fe13f370baa45ef0e24" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/753fa598e8f3b9966c886fe13f370baa45ef0e24", + "reference": "753fa598e8f3b9966c886fe13f370baa45ef0e24", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "time": "2017-01-02T13:31:39+00:00" + }, { "name": "psy/psysh", "version": "v0.8.15", @@ -3316,29 +3492,30 @@ }, { "name": "swiftmailer/swiftmailer", - "version": "v5.4.8", + "version": "v6.0.2", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "9a06dc570a0367850280eefd3f1dc2da45aef517" + "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/9a06dc570a0367850280eefd3f1dc2da45aef517", - "reference": "9a06dc570a0367850280eefd3f1dc2da45aef517", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/412333372fb6c8ffb65496a2bbd7321af75733fc", + "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc", "shasum": "" }, "require": { - "php": ">=5.3.3" + "egulias/email-validator": "~2.0", + "php": ">=7.0.0" }, "require-dev": { "mockery/mockery": "~0.9.1", - "symfony/phpunit-bridge": "~3.2" + "symfony/phpunit-bridge": "~3.3@dev" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.4-dev" + "dev-master": "6.0-dev" } }, "autoload": { @@ -3360,13 +3537,13 @@ } ], "description": "Swiftmailer, free feature-rich PHP mailer", - "homepage": "http://swiftmailer.org", + "homepage": "http://swiftmailer.symfony.com", "keywords": [ "email", "mail", "mailer" ], - "time": "2017-05-01T15:54:03+00:00" + "time": "2017-09-30T22:39:41+00:00" }, { "name": "symfony/class-loader", @@ -4598,20 +4775,20 @@ }, { "name": "hamcrest/hamcrest-php", - "version": "v1.2.2", + "version": "v2.0.0", "source": { "type": "git", "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c" + "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/b37020aa976fa52d3de9aa904aa2522dc518f79c", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c", + "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/776503d3a8e85d4f9a1148614f95b7a608b046ad", + "reference": "776503d3a8e85d4f9a1148614f95b7a608b046ad", "shasum": "" }, "require": { - "php": ">=5.3.2" + "php": "^5.3|^7.0" }, "replace": { "cordoval/hamcrest-php": "*", @@ -4620,15 +4797,18 @@ }, "require-dev": { "phpunit/php-file-iterator": "1.3.3", - "satooshi/php-coveralls": "dev-master" + "phpunit/phpunit": "~4.0", + "satooshi/php-coveralls": "^1.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, "autoload": { "classmap": [ "hamcrest" - ], - "files": [ - "hamcrest/Hamcrest.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -4639,31 +4819,32 @@ "keywords": [ "test" ], - "time": "2015-05-11T14:41:42+00:00" + "time": "2016-01-20T08:20:44+00:00" }, { "name": "laravel/browser-kit-testing", - "version": "v1.0.3", + "version": "v2.0.1", "source": { "type": "git", "url": "https://github.com/laravel/browser-kit-testing.git", - "reference": "0adfb725147815bff5516d157577f375a6e66ebd" + "reference": "f0bb9f200ec35f9d876ded6eacfbc60868d311b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/browser-kit-testing/zipball/0adfb725147815bff5516d157577f375a6e66ebd", - "reference": "0adfb725147815bff5516d157577f375a6e66ebd", + "url": "https://api.github.com/repos/laravel/browser-kit-testing/zipball/f0bb9f200ec35f9d876ded6eacfbc60868d311b9", + "reference": "f0bb9f200ec35f9d876ded6eacfbc60868d311b9", "shasum": "" }, "require": { "php": ">=5.5.9", + "phpunit/phpunit": "~6.0", "symfony/css-selector": "~3.1", "symfony/dom-crawler": "~3.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -4686,34 +4867,34 @@ "laravel", "testing" ], - "time": "2017-02-08T22:32:37+00:00" + "time": "2017-06-21T11:44:53+00:00" }, { "name": "mockery/mockery", - "version": "0.9.9", + "version": "1.0", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856" + "reference": "1bac8c362b12f522fdd1f1fa3556284c91affa38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/6fdb61243844dc924071d3404bb23994ea0b6856", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856", + "url": "https://api.github.com/repos/mockery/mockery/zipball/1bac8c362b12f522fdd1f1fa3556284c91affa38", + "reference": "1bac8c362b12f522fdd1f1fa3556284c91affa38", "shasum": "" }, "require": { - "hamcrest/hamcrest-php": "~1.1", + "hamcrest/hamcrest-php": "~2.0", "lib-pcre": ">=7.0", - "php": ">=5.3.2" + "php": ">=5.6.0" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "phpunit/phpunit": "~5.7|~6.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "0.9.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { @@ -4738,7 +4919,7 @@ } ], "description": "Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). Designed as a drop in alternative to PHPUnit's phpunit-mock-objects library, Mockery is easy to integrate with PHPUnit and can operate alongside phpunit-mock-objects without the World ending.", - "homepage": "http://github.com/padraic/mockery", + "homepage": "http://github.com/mockery/mockery", "keywords": [ "BDD", "TDD", @@ -4751,7 +4932,7 @@ "test double", "testing" ], - "time": "2017-02-28T12:52:32+00:00" + "time": "2017-10-06T16:20:43+00:00" }, { "name": "myclabs/deep-copy", @@ -4848,6 +5029,108 @@ ], "time": "2015-10-26T16:11:30+00:00" }, + { + "name": "phar-io/manifest", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/2df402786ab5368a0169091f61a7c1e0eb6852d0", + "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-phar": "*", + "phar-io/version": "^1.0.1", + "php": "^5.6 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "time": "2017-03-05T18:14:27+00:00" + }, + { + "name": "phar-io/version", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/a70c0ced4be299a63d32fa96d9281d03e94041df", + "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df", + "shasum": "" + }, + "require": { + "php": "^5.6 || ^7.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "time": "2017-03-05T17:38:23+00:00" + }, { "name": "phpdocumentor/reflection-common", "version": "1.0.1", @@ -5177,40 +5460,41 @@ }, { "name": "phpunit/php-code-coverage", - "version": "4.0.8", + "version": "5.2.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d" + "reference": "033ec97498cf530cc1be4199264cad568b19be26" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d", - "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/033ec97498cf530cc1be4199264cad568b19be26", + "reference": "033ec97498cf530cc1be4199264cad568b19be26", "shasum": "" }, "require": { "ext-dom": "*", "ext-xmlwriter": "*", - "php": "^5.6 || ^7.0", - "phpunit/php-file-iterator": "^1.3", - "phpunit/php-text-template": "^1.2", - "phpunit/php-token-stream": "^1.4.2 || ^2.0", - "sebastian/code-unit-reverse-lookup": "^1.0", - "sebastian/environment": "^1.3.2 || ^2.0", - "sebastian/version": "^1.0 || ^2.0" + "php": "^7.0", + "phpunit/php-file-iterator": "^1.4.2", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-token-stream": "^2.0.1", + "sebastian/code-unit-reverse-lookup": "^1.0.1", + "sebastian/environment": "^3.0", + "sebastian/version": "^2.0.1", + "theseer/tokenizer": "^1.1" }, "require-dev": { - "ext-xdebug": "^2.1.4", - "phpunit/phpunit": "^5.7" + "ext-xdebug": "^2.5", + "phpunit/phpunit": "^6.0" }, "suggest": { - "ext-xdebug": "^2.5.1" + "ext-xdebug": "^2.5.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0.x-dev" + "dev-master": "5.2.x-dev" } }, "autoload": { @@ -5236,7 +5520,7 @@ "testing", "xunit" ], - "time": "2017-04-02T07:44:40+00:00" + "time": "2017-11-27T09:00:30+00:00" }, { "name": "phpunit/php-file-iterator", @@ -5426,16 +5710,16 @@ }, { "name": "phpunit/phpunit", - "version": "5.7.25", + "version": "6.4.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "4b1c822a68ae6577df38a59eb49b046712ec0f6a" + "reference": "562f7dc75d46510a4ed5d16189ae57fbe45a9932" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/4b1c822a68ae6577df38a59eb49b046712ec0f6a", - "reference": "4b1c822a68ae6577df38a59eb49b046712ec0f6a", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/562f7dc75d46510a4ed5d16189ae57fbe45a9932", + "reference": "562f7dc75d46510a4ed5d16189ae57fbe45a9932", "shasum": "" }, "require": { @@ -5444,33 +5728,35 @@ "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", - "myclabs/deep-copy": "~1.3", - "php": "^5.6 || ^7.0", - "phpspec/prophecy": "^1.6.2", - "phpunit/php-code-coverage": "^4.0.4", - "phpunit/php-file-iterator": "~1.4", - "phpunit/php-text-template": "~1.2", - "phpunit/php-timer": "^1.0.6", - "phpunit/phpunit-mock-objects": "^3.2", - "sebastian/comparator": "^1.2.4", - "sebastian/diff": "^1.4.3", - "sebastian/environment": "^1.3.4 || ^2.0", - "sebastian/exporter": "~2.0", - "sebastian/global-state": "^1.1", - "sebastian/object-enumerator": "~2.0", - "sebastian/resource-operations": "~1.0", - "sebastian/version": "~1.0.3|~2.0", - "symfony/yaml": "~2.1|~3.0|~4.0" + "myclabs/deep-copy": "^1.6.1", + "phar-io/manifest": "^1.0.1", + "phar-io/version": "^1.0", + "php": "^7.0", + "phpspec/prophecy": "^1.7", + "phpunit/php-code-coverage": "^5.2.2", + "phpunit/php-file-iterator": "^1.4.2", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-timer": "^1.0.9", + "phpunit/phpunit-mock-objects": "^4.0.3", + "sebastian/comparator": "^2.0.2", + "sebastian/diff": "^2.0", + "sebastian/environment": "^3.1", + "sebastian/exporter": "^3.1", + "sebastian/global-state": "^2.0", + "sebastian/object-enumerator": "^3.0.3", + "sebastian/resource-operations": "^1.0", + "sebastian/version": "^2.0.1" }, "conflict": { - "phpdocumentor/reflection-docblock": "3.0.2" + "phpdocumentor/reflection-docblock": "3.0.2", + "phpunit/dbunit": "<3.0" }, "require-dev": { "ext-pdo": "*" }, "suggest": { "ext-xdebug": "*", - "phpunit/php-invoker": "~1.1" + "phpunit/php-invoker": "^1.1" }, "bin": [ "phpunit" @@ -5478,7 +5764,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.7.x-dev" + "dev-master": "6.4.x-dev" } }, "autoload": { @@ -5504,33 +5790,33 @@ "testing", "xunit" ], - "time": "2017-11-14T14:50:51+00:00" + "time": "2017-11-08T11:26:09+00:00" }, { "name": "phpunit/phpunit-mock-objects", - "version": "3.4.4", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "a23b761686d50a560cc56233b9ecf49597cc9118" + "reference": "2f789b59ab89669015ad984afa350c4ec577ade0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/a23b761686d50a560cc56233b9ecf49597cc9118", - "reference": "a23b761686d50a560cc56233b9ecf49597cc9118", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/2f789b59ab89669015ad984afa350c4ec577ade0", + "reference": "2f789b59ab89669015ad984afa350c4ec577ade0", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.0.2", - "php": "^5.6 || ^7.0", - "phpunit/php-text-template": "^1.2", - "sebastian/exporter": "^1.2 || ^2.0" + "doctrine/instantiator": "^1.0.5", + "php": "^7.0", + "phpunit/php-text-template": "^1.2.1", + "sebastian/exporter": "^3.0" }, "conflict": { - "phpunit/phpunit": "<5.4.0" + "phpunit/phpunit": "<6.0" }, "require-dev": { - "phpunit/phpunit": "^5.4" + "phpunit/phpunit": "^6.0" }, "suggest": { "ext-soap": "*" @@ -5538,7 +5824,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2.x-dev" + "dev-master": "4.0.x-dev" } }, "autoload": { @@ -5563,7 +5849,7 @@ "mock", "xunit" ], - "time": "2017-06-30T09:13:00+00:00" + "time": "2017-08-03T14:08:16+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -5612,30 +5898,30 @@ }, { "name": "sebastian/comparator", - "version": "1.2.4", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be" + "reference": "1174d9018191e93cb9d719edec01257fc05f8158" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", - "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1174d9018191e93cb9d719edec01257fc05f8158", + "reference": "1174d9018191e93cb9d719edec01257fc05f8158", "shasum": "" }, "require": { - "php": ">=5.3.3", - "sebastian/diff": "~1.2", - "sebastian/exporter": "~1.2 || ~2.0" + "php": "^7.0", + "sebastian/diff": "^2.0", + "sebastian/exporter": "^3.1" }, "require-dev": { - "phpunit/phpunit": "~4.4" + "phpunit/phpunit": "^6.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "2.1.x-dev" } }, "autoload": { @@ -5666,38 +5952,38 @@ } ], "description": "Provides the functionality to compare PHP values for equality", - "homepage": "http://www.github.com/sebastianbergmann/comparator", + "homepage": "https://github.com/sebastianbergmann/comparator", "keywords": [ "comparator", "compare", "equality" ], - "time": "2017-01-29T09:50:25+00:00" + "time": "2017-11-03T07:16:52+00:00" }, { "name": "sebastian/diff", - "version": "1.4.3", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4" + "reference": "347c1d8b49c5c3ee30c7040ea6fc446790e6bddd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4", - "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/347c1d8b49c5c3ee30c7040ea6fc446790e6bddd", + "reference": "347c1d8b49c5c3ee30c7040ea6fc446790e6bddd", "shasum": "" }, "require": { - "php": "^5.3.3 || ^7.0" + "php": "^7.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" + "phpunit/phpunit": "^6.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -5724,32 +6010,32 @@ "keywords": [ "diff" ], - "time": "2017-05-22T07:24:03+00:00" + "time": "2017-08-03T08:09:46+00:00" }, { "name": "sebastian/environment", - "version": "2.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac" + "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac", - "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/cd0871b3975fb7fc44d11314fd1ee20925fce4f5", + "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0" + "php": "^7.0" }, "require-dev": { - "phpunit/phpunit": "^5.0" + "phpunit/phpunit": "^6.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { @@ -5774,34 +6060,34 @@ "environment", "hhvm" ], - "time": "2016-11-26T07:53:53+00:00" + "time": "2017-07-01T08:51:00+00:00" }, { "name": "sebastian/exporter", - "version": "2.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4" + "reference": "234199f4528de6d12aaa58b612e98f7d36adb937" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4", - "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/234199f4528de6d12aaa58b612e98f7d36adb937", + "reference": "234199f4528de6d12aaa58b612e98f7d36adb937", "shasum": "" }, "require": { - "php": ">=5.3.3", - "sebastian/recursion-context": "~2.0" + "php": "^7.0", + "sebastian/recursion-context": "^3.0" }, "require-dev": { "ext-mbstring": "*", - "phpunit/phpunit": "~4.4" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { @@ -5841,27 +6127,27 @@ "export", "exporter" ], - "time": "2016-11-19T08:54:04+00:00" + "time": "2017-04-03T13:19:02+00:00" }, { "name": "sebastian/global-state", - "version": "1.1.1", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4" + "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4", - "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", + "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^7.0" }, "require-dev": { - "phpunit/phpunit": "~4.2" + "phpunit/phpunit": "^6.0" }, "suggest": { "ext-uopz": "*" @@ -5869,7 +6155,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -5892,33 +6178,34 @@ "keywords": [ "global state" ], - "time": "2015-10-12T03:26:01+00:00" + "time": "2017-04-27T15:39:26+00:00" }, { "name": "sebastian/object-enumerator", - "version": "2.0.1", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7" + "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7", - "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5", + "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5", "shasum": "" }, "require": { - "php": ">=5.6", - "sebastian/recursion-context": "~2.0" + "php": "^7.0", + "sebastian/object-reflector": "^1.1.1", + "sebastian/recursion-context": "^3.0" }, "require-dev": { - "phpunit/phpunit": "~5" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -5938,32 +6225,77 @@ ], "description": "Traverses array structures and object graphs to enumerate all referenced objects", "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "time": "2017-02-18T15:18:39+00:00" + "time": "2017-08-03T12:35:26+00:00" }, { - "name": "sebastian/recursion-context", - "version": "2.0.0", + "name": "sebastian/object-reflector", + "version": "1.1.1", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a" + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "773f97c67f28de00d397be301821b06708fca0be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a", - "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be", + "reference": "773f97c67f28de00d397be301821b06708fca0be", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^7.0" }, "require-dev": { - "phpunit/phpunit": "~4.4" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "time": "2017-03-29T09:07:27+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", + "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", + "shasum": "" + }, + "require": { + "php": "^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -5991,7 +6323,7 @@ ], "description": "Provides functionality to recursively process PHP variables", "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2016-11-19T07:33:16+00:00" + "time": "2017-03-03T06:23:57+00:00" }, { "name": "sebastian/resource-operations", @@ -6189,6 +6521,46 @@ "homepage": "https://symfony.com", "time": "2017-11-10T18:26:04+00:00" }, + { + "name": "theseer/tokenizer", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/cb2f008f3f05af2893a87208fe6a6c4985483f8b", + "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "time": "2017-04-07T12:08:54+00:00" + }, { "name": "webmozart/assert", "version": "1.2.0", diff --git a/config/app.php b/config/app.php index 9683a406..842564fa 100644 --- a/config/app.php +++ b/config/app.php @@ -165,13 +165,9 @@ return [ Poniverse\Ponyfm\Providers\AuthServiceProvider::class, Poniverse\Ponyfm\Providers\NotificationServiceProvider::class, - Laravel\Tinker\TinkerServiceProvider::class, Intouch\LaravelNewrelic\NewrelicServiceProvider::class, - Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, Cviebrock\LaravelElasticsearch\ServiceProvider::class, - GrahamCampbell\Exceptions\ExceptionsServiceProvider::class, Poniverse\Lib\PoniverseServiceProvider::class, - Barryvdh\Cors\ServiceProvider::class, ], /* diff --git a/config/cache.php b/config/cache.php index 9480a34a..e025fbf6 100644 --- a/config/cache.php +++ b/config/cache.php @@ -86,6 +86,9 @@ return [ | */ - 'prefix' => 'ponyfm_', + 'prefix' => env( + 'CACHE_PREFIX', + 'ponyfm_' + ), ]; diff --git a/config/filesystems.php b/config/filesystems.php index 40ea2661..74119768 100644 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -13,7 +13,7 @@ return [ | */ - 'default' => 'local', + 'default' => env('FILESYSTEM_DRIVER', 'local'), /* |-------------------------------------------------------------------------- @@ -26,7 +26,7 @@ return [ | */ - 'cloud' => 's3', + 'cloud' => env('FILESYSTEM_CLOUD', 's3'), /* |-------------------------------------------------------------------------- @@ -62,9 +62,9 @@ return [ 's3' => [ 'driver' => 's3', - 'key' => env('AWS_KEY'), - 'secret' => env('AWS_SECRET'), - 'region' => env('AWS_REGION'), + 'key' => env('AWS_ACCESS_KEY_ID'), + 'secret' => env('AWS_SECRET_ACCESS_KEY'), + 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), ], diff --git a/config/session.php b/config/session.php index 22276ea3..2b321223 100644 --- a/config/session.php +++ b/config/session.php @@ -29,7 +29,7 @@ return [ | */ - 'lifetime' => 120, + 'lifetime' => env('SESSION_LIFETIME', 120), 'expire_on_close' => false, @@ -109,7 +109,10 @@ return [ | */ - 'cookie' => 'IfYouAreReadingThisWeWantToWorkWithYou_PleaseDropAnEmailTo_HelloAtPoniverseDotNet', + 'cookie' => env( + 'SESSION_COOKIE', + 'IfYouAreReadingThisWeWantToWorkWithYou_PleaseDropAnEmailTo_HelloAtPoniverseDotNet' + ), /* |-------------------------------------------------------------------------- @@ -163,4 +166,19 @@ return [ 'http_only' => true, + /* + |-------------------------------------------------------------------------- + | Same-Site Cookies + |-------------------------------------------------------------------------- + | + | This option determines how your cookies behave when cross-site requests + | take place, and can be used to mitigate CSRF attacks. By default, we + | do not enable this as other CSRF protection services are in place. + | + | Supported: "lax", "strict" + | + */ + + 'same_site' => null, + ]; diff --git a/database/factories/ModelFactory.php b/database/factories/ModelFactory.php index 071b2ff6..69b08a7e 100644 --- a/database/factories/ModelFactory.php +++ b/database/factories/ModelFactory.php @@ -23,9 +23,9 @@ | Model Factories |-------------------------------------------------------------------------- | -| Here you may define all of your model factories. Model factories give -| you a convenient way to create models for testing and seeding your -| database. Just tell the factory how a default model should look. +| This directory should contain each of the model factory definitions for +| your application. Factories provide a convenient way to generate new +| model instances for testing / seeding your application's database. | */ diff --git a/phpunit.xml b/phpunit.xml index f742d698..eb06884e 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -1,7 +1,7 @@ */ +define('LARAVEL_START', microtime(true)); + /* |-------------------------------------------------------------------------- | Register The Auto Loader @@ -19,7 +21,7 @@ | */ -require __DIR__.'/../bootstrap/autoload.php'; +require __DIR__.'/../vendor/autoload.php'; /* |-------------------------------------------------------------------------- diff --git a/storage/debugbar/.gitignore b/storage/debugbar/.gitignore new file mode 100644 index 00000000..c96a04f0 --- /dev/null +++ b/storage/debugbar/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/tests/ApiAuthTest.php b/tests/ApiAuthTest.php index 5eba82a1..ba8e8abc 100644 --- a/tests/ApiAuthTest.php +++ b/tests/ApiAuthTest.php @@ -20,9 +20,7 @@ namespace Tests; * along with this program. If not, see . */ -use Illuminate\Foundation\Testing\WithoutMiddleware; use Illuminate\Foundation\Testing\DatabaseMigrations; -use Illuminate\Foundation\Testing\DatabaseTransactions; use Poniverse\Lib\AccessToken; use Poniverse\Ponyfm\Models\User; diff --git a/tests/TestCase.php b/tests/TestCase.php index a8e68910..5569b6b3 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -3,6 +3,7 @@ namespace Tests; use Illuminate\Contracts\Console\Kernel; +use Storage; use Laravel\BrowserKitTesting\TestCase as BaseTestCase; use Poniverse\Ponyfm\Models\User; @@ -53,18 +54,17 @@ class TestCase extends BaseTestCase $app->make(Kernel::class)->bootstrap(); + $this->getTestFiles(); + return $app; } - /** - * @before - */ - public function initializeTestFiles() + public function getTestFiles() { // Ensure we have the Pony.fm test files if (!static::$initializedFiles) { - \Storage::disk('local')->makeDirectory('test-files'); - $storage = \Storage::disk('testing'); + Storage::disk('local')->makeDirectory('test-files'); + $storage = Storage::disk('testing'); // To add new test files, upload them to poniverse.net/files // and add them here with their last-modified date as a Unix @@ -107,7 +107,7 @@ class TestCase extends BaseTestCase public function tearDown() { - \Storage::disk('local')->deleteDirectory('testing-datastore'); + Storage::disk('local')->deleteDirectory('testing-datastore'); parent::tearDown(); } @@ -125,8 +125,8 @@ class TestCase extends BaseTestCase */ public function getTestFileForUpload($filename) { - \Storage::disk('local')->makeDirectory('testing-datastore/tmp'); - \Storage::disk('local')->copy("test-files/${filename}", "testing-datastore/tmp/${filename}"); + Storage::disk('local')->makeDirectory('testing-datastore/tmp'); + Storage::disk('local')->copy("test-files/${filename}", "testing-datastore/tmp/${filename}"); return new \Illuminate\Http\UploadedFile(storage_path("app/testing-datastore/tmp/${filename}"), $filename, null, null, null, true); }