diff --git a/app/Http/Controllers/Api/Web/AlexaController.php b/app/Http/Controllers/Api/Web/AlexaController.php
index 557ff775..7b9f9857 100644
--- a/app/Http/Controllers/Api/Web/AlexaController.php
+++ b/app/Http/Controllers/Api/Web/AlexaController.php
@@ -8,6 +8,7 @@ use App\Models\Track;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Session\Store;
+use Illuminate\Support\Arr;
use Psr\Log\LoggerInterface;
class AlexaController extends Controller
@@ -146,7 +147,7 @@ class AlexaController extends Controller
public function play()
{
- $track = array_first(Track::popular(1));
+ $track = Arr::first(Track::popular(1));
$this->session->put('current_position', 1);
$this->session->put('track_id', $track['id']);
diff --git a/app/Http/Controllers/Api/Web/StatsController.php b/app/Http/Controllers/Api/Web/StatsController.php
index bd248fc8..1f6b1c2a 100644
--- a/app/Http/Controllers/Api/Web/StatsController.php
+++ b/app/Http/Controllers/Api/Web/StatsController.php
@@ -28,6 +28,7 @@ use Cache;
use Carbon\Carbon;
use DB;
use Illuminate\Database\Eloquent\ModelNotFoundException;
+use Illuminate\Support\Str;
use Response;
class StatsController extends ApiControllerBase
@@ -87,12 +88,12 @@ class StatsController extends ApiControllerBase
foreach ($playsArray as $timeOffet => $plays) {
if ($hourly) {
$set = [
- 'hours' => $timeOffet.' '.str_plural('hour', $timeOffet),
+ 'hours' => $timeOffet.' '.Str::plural('hour', $timeOffet),
'plays' => $plays,
];
} else {
$set = [
- 'days' => $timeOffet.' '.str_plural('day', $timeOffet),
+ 'days' => $timeOffet.' '.Str::plural('day', $timeOffet),
'plays' => $plays,
];
}
@@ -108,7 +109,7 @@ class StatsController extends ApiControllerBase
public function getTrackStats($id)
{
- $cachedOutput = Cache::remember('track_stats'.$id, 5, function () use ($id) {
+ $cachedOutput = Cache::remember('track_stats'.$id, 300, function () use ($id) {
try {
$track = Track::published()->findOrFail($id);
} catch (ModelNotFoundException $e) {
diff --git a/app/Models/Album.php b/app/Models/Album.php
index aa083367..c43b343f 100644
--- a/app/Models/Album.php
+++ b/app/Models/Album.php
@@ -93,7 +93,6 @@ class Album extends Model implements Searchable, Commentable, Favouritable
protected $elasticsearchType = 'album';
- protected $dates = ['deleted_at'];
protected $fillable = ['user_id', 'title', 'slug'];
public static function summary()
diff --git a/app/Models/Comment.php b/app/Models/Comment.php
index 0a1706ea..632b3612 100644
--- a/app/Models/Comment.php
+++ b/app/Models/Comment.php
@@ -72,8 +72,6 @@ class Comment extends Model
protected $table = 'comments';
- protected $dates = ['deleted_at'];
-
public function user()
{
return $this->belongsTo(User::class);
diff --git a/app/Models/Playlist.php b/app/Models/Playlist.php
index cdee9ef4..7f0ba299 100644
--- a/app/Models/Playlist.php
+++ b/app/Models/Playlist.php
@@ -95,7 +95,7 @@ class Playlist extends Model implements Searchable, Commentable, Favouritable
protected $elasticsearchType = 'playlist';
protected $table = 'playlists';
- protected $dates = ['deleted_at'];
+
protected $casts = [
'id' => 'integer',
'user_id' => 'integer',
diff --git a/app/Models/Track.php b/app/Models/Track.php
index 5fe14b57..89af711a 100644
--- a/app/Models/Track.php
+++ b/app/Models/Track.php
@@ -152,7 +152,9 @@ class Track extends Model implements Searchable, Commentable, Favouritable
protected $elasticsearchType = 'track';
- protected $dates = ['deleted_at', 'published_at', 'released_at'];
+ protected $dates = [
+ 'published_at', 'released_at',
+ ];
protected $hidden = ['original_tags', 'metadata'];
protected $casts = [
'id' => 'integer',
@@ -385,7 +387,7 @@ class Track extends Model implements Searchable, Commentable, Favouritable
{
$trackData = Cache::remember(
'popular_tracks'.$count.'-'.($allowExplicit ? 'explicit' : 'safe'),
- 5,
+ 300,
function () use ($allowExplicit, $count, $skip) {
/*$query = static
::published()
diff --git a/app/Traits/TrackCollection.php b/app/Traits/TrackCollection.php
index b6376ee1..b81a6f42 100644
--- a/app/Traits/TrackCollection.php
+++ b/app/Traits/TrackCollection.php
@@ -170,7 +170,7 @@ trait TrackCollection
return 0;
}
- return Cache::remember($this->getCacheKey('filesize-'.$format), 1440, function () use ($tracks, $format) {
+ return Cache::remember($this->getCacheKey('filesize-'.$format), 86400, function () use ($tracks, $format) {
$size = 0;
// Check whether the format is lossless yet not all master files are lossless
diff --git a/composer.json b/composer.json
index 037c6f3f..0ffa685b 100644
--- a/composer.json
+++ b/composer.json
@@ -11,13 +11,13 @@
"type": "project",
"require": {
"php": "^7.1.3",
- "laravel/framework": "5.7.*",
+ "laravel/framework": "5.8.*",
"codescale/ffmpeg-php": "2.7.0",
"barryvdh/laravel-ide-helper": "v2.8.0",
"guzzlehttp/guzzle": "~6.0",
"doctrine/dbal": "2.5.*",
"venturecraft/revisionable": "^1.36",
- "pda/pheanstalk": "~3.0",
+ "pda/pheanstalk": "~v4.0.0",
"cviebrock/laravel-elasticsearch": "4.0.0",
"barryvdh/laravel-debugbar": "~3.4",
"predis/predis": "^1.0",
@@ -31,19 +31,19 @@
"doctrine/collections": "v1.4.*",
"doctrine/annotations": "v1.4.*",
"doctrine/cache": "v1.6.*",
- "doctrine/instantiator": "1.0.*",
+ "doctrine/instantiator": "^1.1",
"fideloper/proxy": "^4.0"
},
"require-dev": {
"fzaninotto/faker": "^1.4",
"mockery/mockery": "^1.0",
- "phpunit/phpunit": "^7.0",
+ "phpunit/phpunit": "^7.5",
"filp/whoops": "^2.0",
"symfony/dom-crawler": "~3.1",
"symfony/css-selector": "~3.1",
"laravel/browser-kit-testing": "2.*",
"nategood/httpful": "^0.2.20",
- "nunomaduro/collision": "^2.0",
+ "nunomaduro/collision": "^3.0",
"beyondcode/laravel-dump-server": "^1.0"
},
"autoload": {
diff --git a/composer.lock b/composer.lock
index 941fb807..2a5d1b05 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "29cdeb6109246e3d13c705bceaa3002e",
+ "content-hash": "ff734c9db5a1cd4060f56c7179ac2aad",
"packages": [
{
"name": "alsofronie/eloquent-uuid",
@@ -1397,34 +1397,31 @@
},
{
"name": "doctrine/instantiator",
- "version": "1.0.5",
+ "version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b",
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b",
"shasum": ""
},
"require": {
- "php": ">=5.3,<8.0-DEV"
+ "php": "^7.1 || ^8.0"
},
"require-dev": {
- "athletic/athletic": "~0.1.8",
+ "doctrine/coding-standard": "^8.0",
"ext-pdo": "*",
"ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
+ "phpbench/phpbench": "^0.13 || 1.0.0-alpha2",
+ "phpstan/phpstan": "^0.12",
+ "phpstan/phpstan-phpunit": "^0.12",
+ "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
"autoload": {
"psr-4": {
"Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
@@ -1438,20 +1435,34 @@
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
+ "homepage": "https://ocramius.github.io/"
}
],
"description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
+ "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/master"
+ "source": "https://github.com/doctrine/instantiator/tree/1.4.0"
},
- "time": "2015-06-14T21:17:01+00:00"
+ "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": "2020-11-10T18:47:58+00:00"
},
{
"name": "doctrine/lexer",
@@ -1964,6 +1975,64 @@
},
"time": "2018-12-02T01:31:42+00:00"
},
+ {
+ "name": "fideloper/proxy",
+ "version": "4.4.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/fideloper/TrustedProxy.git",
+ "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0",
+ "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0",
+ "shasum": ""
+ },
+ "require": {
+ "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0",
+ "php": ">=5.4.0"
+ },
+ "require-dev": {
+ "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0",
+ "mockery/mockery": "^1.0",
+ "phpunit/phpunit": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "Fideloper\\Proxy\\TrustedProxyServiceProvider"
+ ]
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Fideloper\\Proxy\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Chris Fidao",
+ "email": "fideloper@gmail.com"
+ }
+ ],
+ "description": "Set trusted proxies for Laravel",
+ "keywords": [
+ "load balancing",
+ "proxy",
+ "trusted proxy"
+ ],
+ "support": {
+ "issues": "https://github.com/fideloper/TrustedProxy/issues",
+ "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1"
+ },
+ "time": "2020-10-22T13:48:01+00:00"
+ },
{
"name": "fruitcake/laravel-cors",
"version": "v2.0.1",
@@ -2668,107 +2737,47 @@
},
"time": "2018-10-27T18:57:38+00:00"
},
- {
- "name": "kylekatarnls/update-helper",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/kylekatarnls/update-helper.git",
- "reference": "429be50660ed8a196e0798e5939760f168ec8ce9"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/kylekatarnls/update-helper/zipball/429be50660ed8a196e0798e5939760f168ec8ce9",
- "reference": "429be50660ed8a196e0798e5939760f168ec8ce9",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "^1.1.0 || ^2.0.0",
- "php": ">=5.3.0"
- },
- "require-dev": {
- "codeclimate/php-test-reporter": "dev-master",
- "composer/composer": "2.0.x-dev || ^2.0.0-dev",
- "phpunit/phpunit": ">=4.8.35 <6.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "UpdateHelper\\ComposerPlugin"
- },
- "autoload": {
- "psr-0": {
- "UpdateHelper\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Kyle",
- "email": "kylekatarnls@gmail.com"
- }
- ],
- "description": "Update helper",
- "support": {
- "issues": "https://github.com/kylekatarnls/update-helper/issues",
- "source": "https://github.com/kylekatarnls/update-helper/tree/1.2.1"
- },
- "funding": [
- {
- "url": "https://github.com/kylekatarnls",
- "type": "github"
- },
- {
- "url": "https://opencollective.com/Carbon",
- "type": "open_collective"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
- "type": "tidelift"
- }
- ],
- "time": "2020-04-07T20:44:10+00:00"
- },
{
"name": "laravel/framework",
- "version": "v5.6.40",
+ "version": "v5.8.38",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "5ceadf91f13be89a3338c3d4166a4676272a23bf"
+ "reference": "78eb4dabcc03e189620c16f436358d41d31ae11f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/5ceadf91f13be89a3338c3d4166a4676272a23bf",
- "reference": "5ceadf91f13be89a3338c3d4166a4676272a23bf",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/78eb4dabcc03e189620c16f436358d41d31ae11f",
+ "reference": "78eb4dabcc03e189620c16f436358d41d31ae11f",
"shasum": ""
},
"require": {
- "doctrine/inflector": "~1.1",
- "dragonmantank/cron-expression": "~2.0",
- "erusev/parsedown": "~1.7",
+ "doctrine/inflector": "^1.1",
+ "dragonmantank/cron-expression": "^2.0",
+ "egulias/email-validator": "^2.0",
+ "erusev/parsedown": "^1.7",
+ "ext-json": "*",
"ext-mbstring": "*",
"ext-openssl": "*",
"league/flysystem": "^1.0.8",
- "monolog/monolog": "~1.12",
- "nesbot/carbon": "1.26.*",
+ "monolog/monolog": "^1.12",
+ "nesbot/carbon": "^1.26.3 || ^2.0",
+ "opis/closure": "^3.1",
"php": "^7.1.3",
- "psr/container": "~1.0",
+ "psr/container": "^1.0",
"psr/simple-cache": "^1.0",
"ramsey/uuid": "^3.7",
- "swiftmailer/swiftmailer": "~6.0",
- "symfony/console": "~4.0",
- "symfony/debug": "~4.0",
- "symfony/finder": "~4.0",
- "symfony/http-foundation": "~4.0",
- "symfony/http-kernel": "~4.0",
- "symfony/process": "~4.0",
- "symfony/routing": "~4.0",
- "symfony/var-dumper": "~4.0",
+ "swiftmailer/swiftmailer": "^6.0",
+ "symfony/console": "^4.2",
+ "symfony/debug": "^4.2",
+ "symfony/finder": "^4.2",
+ "symfony/http-foundation": "^4.2",
+ "symfony/http-kernel": "^4.2",
+ "symfony/process": "^4.2",
+ "symfony/routing": "^4.2",
+ "symfony/var-dumper": "^4.2",
"tijsverkoyen/css-to-inline-styles": "^2.2.1",
- "vlucas/phpdotenv": "~2.2"
+ "vlucas/phpdotenv": "^3.3"
},
"conflict": {
"tightenco/collect": "<5.5.33"
@@ -2804,43 +2813,49 @@
"illuminate/view": "self.version"
},
"require-dev": {
- "aws/aws-sdk-php": "~3.0",
- "doctrine/dbal": "~2.6",
+ "aws/aws-sdk-php": "^3.0",
+ "doctrine/dbal": "^2.6",
"filp/whoops": "^2.1.4",
- "league/flysystem-cached-adapter": "~1.0",
- "mockery/mockery": "~1.0",
+ "guzzlehttp/guzzle": "^6.3",
+ "league/flysystem-cached-adapter": "^1.0",
+ "mockery/mockery": "^1.0",
"moontoast/math": "^1.1",
- "orchestra/testbench-core": "3.6.*",
- "pda/pheanstalk": "~3.0",
- "phpunit/phpunit": "~7.0",
+ "orchestra/testbench-core": "3.8.*",
+ "pda/pheanstalk": "^4.0",
+ "phpunit/phpunit": "^7.5|^8.0",
"predis/predis": "^1.1.1",
- "symfony/css-selector": "~4.0",
- "symfony/dom-crawler": "~4.0"
+ "symfony/css-selector": "^4.2",
+ "symfony/dom-crawler": "^4.2",
+ "true/punycode": "^2.1"
},
"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.6).",
+ "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.6).",
+ "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().",
"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).",
- "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).",
- "league/flysystem-cached-adapter": "Required to use the Flysystem cache (~1.0).",
- "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).",
- "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (~1.0).",
- "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 (~3.0).",
- "symfony/css-selector": "Required to use some of the crawler integration testing tools (~4.0).",
- "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~4.0).",
- "symfony/psr-http-message-bridge": "Required to psr7 bridging features (~1.0)."
+ "filp/whoops": "Required for friendly error pages in development (^2.1.4).",
+ "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).",
+ "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).",
+ "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).",
+ "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (^1.0).",
+ "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).",
+ "moontoast/math": "Required to use ordered UUIDs (^1.1).",
+ "nexmo/client": "Required to use the Nexmo transport (^1.0).",
+ "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.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 (^3.0).",
+ "symfony/css-selector": "Required to use some of the crawler integration testing tools (^4.2).",
+ "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (^4.2).",
+ "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^1.1).",
+ "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)."
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.6-dev"
+ "dev-master": "5.8-dev"
}
},
"autoload": {
@@ -2872,7 +2887,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
- "time": "2020-04-14T14:16:50+00:00"
+ "time": "2020-04-14T14:14:36+00:00"
},
{
"name": "laravel/tinker",
@@ -3440,38 +3455,57 @@
},
{
"name": "nesbot/carbon",
- "version": "1.26.6",
+ "version": "2.45.1",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
- "reference": "c6820f814496d71da7498d423427e6193d1f57c9"
+ "reference": "528783b188bdb853eb21239b1722831e0f000a8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c6820f814496d71da7498d423427e6193d1f57c9",
- "reference": "c6820f814496d71da7498d423427e6193d1f57c9",
+ "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/528783b188bdb853eb21239b1722831e0f000a8d",
+ "reference": "528783b188bdb853eb21239b1722831e0f000a8d",
"shasum": ""
},
"require": {
- "kylekatarnls/update-helper": "^1.1",
- "php": ">=5.3.9",
- "symfony/translation": "~2.6 || ~3.0 || ~4.0"
+ "ext-json": "*",
+ "php": "^7.1.8 || ^8.0",
+ "symfony/polyfill-mbstring": "^1.0",
+ "symfony/translation": "^3.4 || ^4.0 || ^5.0"
},
"require-dev": {
- "composer/composer": "^1.2",
- "friendsofphp/php-cs-fixer": "~2",
- "phpunit/phpunit": "^4.8.35 || ^5.7"
+ "doctrine/orm": "^2.7",
+ "friendsofphp/php-cs-fixer": "^2.14 || ^3.0",
+ "kylekatarnls/multi-tester": "^2.0",
+ "phpmd/phpmd": "^2.9",
+ "phpstan/extension-installer": "^1.0",
+ "phpstan/phpstan": "^0.12.54",
+ "phpunit/phpunit": "^7.5.20 || ^8.5.14",
+ "squizlabs/php_codesniffer": "^3.4"
},
"bin": [
- "bin/upgrade-carbon"
+ "bin/carbon"
],
"type": "library",
"extra": {
- "update-helper": "Carbon\\Upgrade"
+ "branch-alias": {
+ "dev-master": "2.x-dev",
+ "dev-3.x": "3.x-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Carbon\\Laravel\\ServiceProvider"
+ ]
+ },
+ "phpstan": {
+ "includes": [
+ "extension.neon"
+ ]
+ }
},
"autoload": {
"psr-4": {
- "": "src/"
+ "Carbon\\": "src/Carbon/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -3483,9 +3517,13 @@
"name": "Brian Nesbitt",
"email": "brian@nesbot.com",
"homepage": "http://nesbot.com"
+ },
+ {
+ "name": "kylekatarnls",
+ "homepage": "http://github.com/kylekatarnls"
}
],
- "description": "A simple API extension for DateTime.",
+ "description": "An API extension for DateTime that supports 281 different languages.",
"homepage": "http://carbon.nesbot.com",
"keywords": [
"date",
@@ -3496,7 +3534,17 @@
"issues": "https://github.com/briannesbitt/Carbon/issues",
"source": "https://github.com/briannesbitt/Carbon"
},
- "time": "2019-06-03T15:42:58+00:00"
+ "funding": [
+ {
+ "url": "https://opencollective.com/Carbon",
+ "type": "open_collective"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2021-02-11T18:30:17+00:00"
},
{
"name": "nikic/php-parser",
@@ -3554,6 +3602,71 @@
},
"time": "2020-12-20T10:01:03+00:00"
},
+ {
+ "name": "opis/closure",
+ "version": "3.6.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/opis/closure.git",
+ "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/opis/closure/zipball/943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5",
+ "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.4 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "jeremeamia/superclosure": "^2.0",
+ "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.6.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Opis\\Closure\\": "src/"
+ },
+ "files": [
+ "functions.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Marius Sarca",
+ "email": "marius.sarca@gmail.com"
+ },
+ {
+ "name": "Sorin Sarca",
+ "email": "sarca_sorin@hotmail.com"
+ }
+ ],
+ "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.",
+ "homepage": "https://opis.io/closure",
+ "keywords": [
+ "anonymous functions",
+ "closure",
+ "function",
+ "serializable",
+ "serialization",
+ "serialize"
+ ],
+ "support": {
+ "issues": "https://github.com/opis/closure/issues",
+ "source": "https://github.com/opis/closure/tree/3.6.1"
+ },
+ "time": "2020-11-07T02:01:34+00:00"
+ },
{
"name": "paragonie/random_compat",
"version": "v2.0.19",
@@ -3610,30 +3723,26 @@
},
{
"name": "pda/pheanstalk",
- "version": "v3.2.1",
+ "version": "v4.0.3",
"source": {
"type": "git",
- "url": "https://github.com/pda/pheanstalk.git",
- "reference": "57b6e76f1b06ca798e739a8dee92c2dac04fd170"
+ "url": "https://github.com/pheanstalk/pheanstalk.git",
+ "reference": "6165573aad525d39b3ac8ae916214cb483a61263"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/pda/pheanstalk/zipball/57b6e76f1b06ca798e739a8dee92c2dac04fd170",
- "reference": "57b6e76f1b06ca798e739a8dee92c2dac04fd170",
+ "url": "https://api.github.com/repos/pheanstalk/pheanstalk/zipball/6165573aad525d39b3ac8ae916214cb483a61263",
+ "reference": "6165573aad525d39b3ac8ae916214cb483a61263",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "ext-mbstring": "*",
+ "php": ">=7.1.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.0"
+ "phpunit/phpunit": "^7"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
"autoload": {
"psr-4": {
"Pheanstalk\\": "src/"
@@ -3649,18 +3758,23 @@
"email": "paul@annesley.cc",
"homepage": "http://paul.annesley.cc/",
"role": "Developer"
+ },
+ {
+ "name": "Sam Mousa",
+ "email": "sam@mousa.nl",
+ "role": "Maintainer"
}
],
"description": "PHP client for beanstalkd queue",
- "homepage": "https://github.com/pda/pheanstalk",
+ "homepage": "https://github.com/pheanstalk/pheanstalk",
"keywords": [
"beanstalkd"
],
"support": {
- "issues": "https://github.com/pda/pheanstalk/issues",
- "source": "https://github.com/pda/pheanstalk/tree/master"
+ "issues": "https://github.com/pheanstalk/pheanstalk/issues",
+ "source": "https://github.com/pheanstalk/pheanstalk/tree/v4.0.3"
},
- "time": "2018-09-19T12:16:28+00:00"
+ "time": "2020-09-22T07:17:48+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -3764,6 +3878,75 @@
},
"time": "2020-09-17T18:55:26+00:00"
},
+ {
+ "name": "phpoption/phpoption",
+ "version": "1.7.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/schmittjoh/php-option.git",
+ "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/994ecccd8f3283ecf5ac33254543eb0ac946d525",
+ "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.5.9 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "bamarni/composer-bin-plugin": "^1.4.1",
+ "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0 || ^8.0 || ^9.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.7-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "PhpOption\\": "src/PhpOption/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "Apache-2.0"
+ ],
+ "authors": [
+ {
+ "name": "Johannes M. Schmitt",
+ "email": "schmittjoh@gmail.com"
+ },
+ {
+ "name": "Graham Campbell",
+ "email": "graham@alt-three.com"
+ }
+ ],
+ "description": "Option Type for PHP",
+ "keywords": [
+ "language",
+ "option",
+ "php",
+ "type"
+ ],
+ "support": {
+ "issues": "https://github.com/schmittjoh/php-option/issues",
+ "source": "https://github.com/schmittjoh/php-option/tree/1.7.5"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/GrahamCampbell",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2020-07-20T17:29:33+00:00"
+ },
{
"name": "poniverse/api",
"version": "dev-rewrite",
@@ -7171,20 +7354,21 @@
},
{
"name": "vlucas/phpdotenv",
- "version": "v2.6.7",
+ "version": "v3.6.8",
"source": {
"type": "git",
"url": "https://github.com/vlucas/phpdotenv.git",
- "reference": "b786088918a884258c9e3e27405c6a4cf2ee246e"
+ "reference": "5e679f7616db829358341e2d5cccbd18773bdab8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/b786088918a884258c9e3e27405c6a4cf2ee246e",
- "reference": "b786088918a884258c9e3e27405c6a4cf2ee246e",
+ "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/5e679f7616db829358341e2d5cccbd18773bdab8",
+ "reference": "5e679f7616db829358341e2d5cccbd18773bdab8",
"shasum": ""
},
"require": {
- "php": "^5.3.9 || ^7.0 || ^8.0",
+ "php": "^5.4 || ^7.0 || ^8.0",
+ "phpoption/phpoption": "^1.5.2",
"symfony/polyfill-ctype": "^1.17"
},
"require-dev": {
@@ -7199,7 +7383,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "3.6-dev"
}
},
"autoload": {
@@ -7231,7 +7415,7 @@
],
"support": {
"issues": "https://github.com/vlucas/phpdotenv/issues",
- "source": "https://github.com/vlucas/phpdotenv/tree/v2.6.7"
+ "source": "https://github.com/vlucas/phpdotenv/tree/v3.6.8"
},
"funding": [
{
@@ -7243,7 +7427,7 @@
"type": "tidelift"
}
],
- "time": "2021-01-20T14:39:13+00:00"
+ "time": "2021-01-20T14:39:46+00:00"
},
{
"name": "webpatser/laravel-uuid",
@@ -7305,6 +7489,71 @@
}
],
"packages-dev": [
+ {
+ "name": "beyondcode/laravel-dump-server",
+ "version": "1.3.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/beyondcode/laravel-dump-server.git",
+ "reference": "fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/beyondcode/laravel-dump-server/zipball/fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a",
+ "reference": "fcc88fa66895f8c1ff83f6145a5eff5fa2a0739a",
+ "shasum": ""
+ },
+ "require": {
+ "illuminate/console": "5.6.*|5.7.*|5.8.*|^6.0",
+ "illuminate/http": "5.6.*|5.7.*|5.8.*|^6.0",
+ "illuminate/support": "5.6.*|5.7.*|5.8.*|^6.0",
+ "php": "^7.1",
+ "symfony/var-dumper": "^4.1.1"
+ },
+ "require-dev": {
+ "larapack/dd": "^1.0",
+ "phpunit/phpunit": "^7.0"
+ },
+ "type": "library",
+ "extra": {
+ "laravel": {
+ "providers": [
+ "BeyondCode\\DumpServer\\DumpServerServiceProvider"
+ ]
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "BeyondCode\\DumpServer\\": "src"
+ },
+ "files": [
+ "helpers.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Marcel Pociot",
+ "email": "marcel@beyondco.de",
+ "homepage": "https://beyondco.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Symfony Var-Dump Server for Laravel",
+ "homepage": "https://github.com/beyondcode/laravel-dump-server",
+ "keywords": [
+ "beyondcode",
+ "laravel-dump-server"
+ ],
+ "support": {
+ "issues": "https://github.com/beyondcode/laravel-dump-server/issues",
+ "source": "https://github.com/beyondcode/laravel-dump-server/tree/1.3.0"
+ },
+ "time": "2019-08-11T13:17:40+00:00"
+ },
{
"name": "filp/whoops",
"version": "2.9.2",
@@ -7716,29 +7965,27 @@
},
{
"name": "nunomaduro/collision",
- "version": "v2.1.1",
+ "version": "v3.1.0",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/collision.git",
- "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63"
+ "reference": "88b58b5bd9bdcc54756480fb3ce87234696544ee"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nunomaduro/collision/zipball/b5feb0c0d92978ec7169232ce5d70d6da6b29f63",
- "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63",
+ "url": "https://api.github.com/repos/nunomaduro/collision/zipball/88b58b5bd9bdcc54756480fb3ce87234696544ee",
+ "reference": "88b58b5bd9bdcc54756480fb3ce87234696544ee",
"shasum": ""
},
"require": {
"filp/whoops": "^2.1.4",
"jakub-onderka/php-console-highlighter": "0.3.*|0.4.*",
- "php": "^7.1",
+ "php": "^7.1 || ^8.0",
"symfony/console": "~2.8|~3.3|~4.0"
},
"require-dev": {
- "laravel/framework": "5.7.*",
- "nunomaduro/larastan": "^0.3.0",
- "phpstan/phpstan": "^0.10",
- "phpunit/phpunit": "~7.3"
+ "laravel/framework": "^6.0",
+ "phpunit/phpunit": "^8.0 || ^9.0"
},
"type": "library",
"extra": {
@@ -7780,26 +8027,40 @@
"issues": "https://github.com/nunomaduro/collision/issues",
"source": "https://github.com/nunomaduro/collision"
},
- "time": "2018-11-21T21:40:54+00:00"
+ "funding": [
+ {
+ "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/nunomaduro",
+ "type": "github"
+ },
+ {
+ "url": "https://www.patreon.com/nunomaduro",
+ "type": "patreon"
+ }
+ ],
+ "time": "2020-10-29T16:05:21+00:00"
},
{
"name": "phar-io/manifest",
- "version": "1.0.1",
+ "version": "1.0.3",
"source": {
"type": "git",
"url": "https://github.com/phar-io/manifest.git",
- "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0"
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/2df402786ab5368a0169091f61a7c1e0eb6852d0",
- "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-phar": "*",
- "phar-io/version": "^1.0.1",
+ "phar-io/version": "^2.0",
"php": "^5.6 || ^7.0"
},
"type": "library",
@@ -7839,20 +8100,20 @@
"issues": "https://github.com/phar-io/manifest/issues",
"source": "https://github.com/phar-io/manifest/tree/master"
},
- "time": "2017-03-05T18:14:27+00:00"
+ "time": "2018-07-08T19:23:20+00:00"
},
{
"name": "phar-io/version",
- "version": "1.0.1",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/phar-io/version.git",
- "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df"
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/version/zipball/a70c0ced4be299a63d32fa96d9281d03e94041df",
- "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
"shasum": ""
},
"require": {
@@ -7890,7 +8151,7 @@
"issues": "https://github.com/phar-io/version/issues",
"source": "https://github.com/phar-io/version/tree/master"
},
- "time": "2017-03-05T17:38:23+00:00"
+ "time": "2018-07-08T19:19:57+00:00"
},
{
"name": "phpdocumentor/reflection-docblock",
@@ -7950,33 +8211,33 @@
},
{
"name": "phpspec/prophecy",
- "version": "v1.10.3",
+ "version": "1.12.2",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "451c3cd1418cf640de218914901e51b064abb093"
+ "reference": "245710e971a030f42e08f4912863805570f23d39"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093",
- "reference": "451c3cd1418cf640de218914901e51b064abb093",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/245710e971a030f42e08f4912863805570f23d39",
+ "reference": "245710e971a030f42e08f4912863805570f23d39",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0",
- "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0",
- "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0"
+ "doctrine/instantiator": "^1.2",
+ "php": "^7.2 || ~8.0, <8.1",
+ "phpdocumentor/reflection-docblock": "^5.2",
+ "sebastian/comparator": "^3.0 || ^4.0",
+ "sebastian/recursion-context": "^3.0 || ^4.0"
},
"require-dev": {
- "phpspec/phpspec": "^2.5 || ^3.2",
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1"
+ "phpspec/phpspec": "^6.0",
+ "phpunit/phpunit": "^8.0 || ^9.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.10.x-dev"
+ "dev-master": "1.11.x-dev"
}
},
"autoload": {
@@ -8011,33 +8272,33 @@
],
"support": {
"issues": "https://github.com/phpspec/prophecy/issues",
- "source": "https://github.com/phpspec/prophecy/tree/v1.10.3"
+ "source": "https://github.com/phpspec/prophecy/tree/1.12.2"
},
- "time": "2020-03-05T15:02:03+00:00"
+ "time": "2020-12-19T10:15:11+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "6.0.5",
+ "version": "6.1.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "4cab20a326d14de7575a8e235c70d879b569a57a"
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/4cab20a326d14de7575a8e235c70d879b569a57a",
- "reference": "4cab20a326d14de7575a8e235c70d879b569a57a",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-xmlwriter": "*",
"php": "^7.1",
- "phpunit/php-file-iterator": "^1.4.2",
+ "phpunit/php-file-iterator": "^2.0",
"phpunit/php-text-template": "^1.2.1",
"phpunit/php-token-stream": "^3.0",
"sebastian/code-unit-reverse-lookup": "^1.0.1",
- "sebastian/environment": "^3.1",
+ "sebastian/environment": "^3.1 || ^4.0",
"sebastian/version": "^2.0.1",
"theseer/tokenizer": "^1.1"
},
@@ -8050,7 +8311,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "6.0-dev"
+ "dev-master": "6.1-dev"
}
},
"autoload": {
@@ -8078,31 +8339,34 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/6.0.5"
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/master"
},
- "time": "2018-05-28T11:49:20+00:00"
+ "time": "2018-10-31T16:06:48+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "1.4.5",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4"
+ "reference": "4b49fb70f067272b659ef0174ff9ca40fdaa6357"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4",
- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/4b49fb70f067272b659ef0174ff9ca40fdaa6357",
+ "reference": "4b49fb70f067272b659ef0174ff9ca40fdaa6357",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.1"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^8.5"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.4.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -8117,7 +8381,7 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
+ "email": "sebastian@phpunit.de",
"role": "lead"
}
],
@@ -8128,11 +8392,16 @@
"iterator"
],
"support": {
- "irc": "irc://irc.freenode.net/phpunit",
"issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
- "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/1.4.5"
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/2.0.3"
},
- "time": "2017-11-27T13:52:08+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-11-30T08:25:21+00:00"
},
{
"name": "phpunit/php-text-template",
@@ -8300,47 +8569,51 @@
},
{
"name": "phpunit/phpunit",
- "version": "7.1.5",
+ "version": "7.5.20",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "ca64dba53b88aba6af32aebc6b388068db95c435"
+ "reference": "9467db479d1b0487c99733bb1e7944d32deded2c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/ca64dba53b88aba6af32aebc6b388068db95c435",
- "reference": "ca64dba53b88aba6af32aebc6b388068db95c435",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9467db479d1b0487c99733bb1e7944d32deded2c",
+ "reference": "9467db479d1b0487c99733bb1e7944d32deded2c",
"shasum": ""
},
"require": {
+ "doctrine/instantiator": "^1.1",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
- "myclabs/deep-copy": "^1.6.1",
- "phar-io/manifest": "^1.0.1",
- "phar-io/version": "^1.0",
+ "myclabs/deep-copy": "^1.7",
+ "phar-io/manifest": "^1.0.2",
+ "phar-io/version": "^2.0",
"php": "^7.1",
"phpspec/prophecy": "^1.7",
- "phpunit/php-code-coverage": "^6.0.1",
- "phpunit/php-file-iterator": "^1.4.3",
+ "phpunit/php-code-coverage": "^6.0.7",
+ "phpunit/php-file-iterator": "^2.0.1",
"phpunit/php-text-template": "^1.2.1",
- "phpunit/php-timer": "^2.0",
- "phpunit/phpunit-mock-objects": "^6.1.1",
+ "phpunit/php-timer": "^2.1",
"sebastian/comparator": "^3.0",
"sebastian/diff": "^3.0",
- "sebastian/environment": "^3.1",
+ "sebastian/environment": "^4.0",
"sebastian/exporter": "^3.1",
"sebastian/global-state": "^2.0",
"sebastian/object-enumerator": "^3.0.3",
- "sebastian/resource-operations": "^1.0",
+ "sebastian/resource-operations": "^2.0",
"sebastian/version": "^2.0.1"
},
+ "conflict": {
+ "phpunit/phpunit-mock-objects": "*"
+ },
"require-dev": {
"ext-pdo": "*"
},
"suggest": {
+ "ext-soap": "*",
"ext-xdebug": "*",
"phpunit/php-invoker": "^2.0"
},
@@ -8350,7 +8623,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.1-dev"
+ "dev-master": "7.5-dev"
}
},
"autoload": {
@@ -8378,70 +8651,9 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/7.1.5"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/7.5.20"
},
- "time": "2018-04-29T15:09:19+00:00"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "6.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "f9756fd4f43f014cb2dca98deeaaa8ce5500a36e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/f9756fd4f43f014cb2dca98deeaaa8ce5500a36e",
- "reference": "f9756fd4f43f014cb2dca98deeaaa8ce5500a36e",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.5",
- "php": "^7.1",
- "phpunit/php-text-template": "^1.2.1",
- "sebastian/exporter": "^3.1"
- },
- "require-dev": {
- "phpunit/phpunit": "^7.0"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.1-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "support": {
- "issues": "https://github.com/sebastianbergmann/phpunit-mock-objects/issues",
- "source": "https://github.com/sebastianbergmann/phpunit-mock-objects/tree/master"
- },
- "abandoned": true,
- "time": "2018-05-29T13:54:20+00:00"
+ "time": "2020-01-08T08:45:45+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
@@ -8640,28 +8852,31 @@
},
{
"name": "sebastian/environment",
- "version": "3.1.0",
+ "version": "4.2.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5"
+ "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
- "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/d47bbbad83711771f167c72d4e3f25f7fcc1f8b0",
+ "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": ">=7.1"
},
"require-dev": {
- "phpunit/phpunit": "^6.1"
+ "phpunit/phpunit": "^7.5"
+ },
+ "suggest": {
+ "ext-posix": "*"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1.x-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -8688,9 +8903,15 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/master"
+ "source": "https://github.com/sebastianbergmann/environment/tree/4.2.4"
},
- "time": "2017-07-01T08:51:00+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-11-30T07:53:42+00:00"
},
{
"name": "sebastian/exporter",
@@ -9001,25 +9222,25 @@
},
{
"name": "sebastian/resource-operations",
- "version": "1.0.0",
+ "version": "2.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
+ "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/31d35ca87926450c44eae7e2611d45a7a65ea8b3",
+ "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3",
"shasum": ""
},
"require": {
- "php": ">=5.6.0"
+ "php": ">=7.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -9041,9 +9262,15 @@
"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/master"
+ "source": "https://github.com/sebastianbergmann/resource-operations/tree/2.0.2"
},
- "time": "2015-07-28T20:34:47+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-11-30T07:30:19+00:00"
},
{
"name": "sebastian/version",
diff --git a/config/app.php b/config/app.php
index caac05c4..94cff7d9 100644
--- a/config/app.php
+++ b/config/app.php
@@ -179,6 +179,8 @@ return [
*/
'aliases' => [
+ 'Str' => Illuminate\Support\Str::class,
+ 'Arr' => Illuminate\Support\Arr::class,
'App' => Illuminate\Support\Facades\App::class,
'Artisan' => Illuminate\Support\Facades\Artisan::class,
diff --git a/config/cache.php b/config/cache.php
index 4f0b3c45..46751e62 100644
--- a/config/cache.php
+++ b/config/cache.php
@@ -13,7 +13,8 @@ return [
| using this caching library. This connection is used when another is
| not explicitly specified when executing a given caching function.
|
- | Supported: "apc", "array", "database", "file", "memcached", "redis"
+ | Supported: "apc", "array", "database", "file",
+ | "memcached", "redis", "dynamodb"
|
*/
@@ -75,6 +76,15 @@ return [
'connection' => 'cache',
],
+ 'dynamodb' => [
+ 'driver' => 'dynamodb',
+ 'key' => env('AWS_ACCESS_KEY_ID'),
+ 'secret' => env('AWS_SECRET_ACCESS_KEY'),
+ 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
+ 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'),
+ 'endpoint' => env('DYNAMODB_ENDPOINT'),
+ ],
+
],
/*
diff --git a/config/database.php b/config/database.php
index 22347a41..921769ca 100644
--- a/config/database.php
+++ b/config/database.php
@@ -1,5 +1,7 @@
[
'driver' => 'sqlite',
+ 'url' => env('DATABASE_URL'),
'database' => env('DB_DATABASE', database_path('database.sqlite')),
'prefix' => '',
'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
@@ -42,6 +45,7 @@ return [
'mysql' => [
'driver' => 'mysql',
+ 'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
@@ -54,10 +58,14 @@ return [
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
+ 'options' => extension_loaded('pdo_mysql') ? array_filter([
+ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
+ ]) : [],
],
'pgsql' => [
'driver' => 'pgsql',
+ 'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '5432'),
'database' => env('DB_DATABASE', 'forge'),
@@ -72,6 +80,7 @@ return [
'sqlsrv' => [
'driver' => 'sqlsrv',
+ 'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '1433'),
'database' => env('DB_DATABASE', 'forge'),
@@ -110,9 +119,15 @@ return [
'redis' => [
- 'client' => 'predis',
+ 'client' => env('REDIS_CLIENT', 'predis'),
+
+ 'options' => [
+ 'cluster' => env('REDIS_CLUSTER', 'predis'),
+ 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'),
+ ],
'default' => [
+ 'url' => env('REDIS_URL'),
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
@@ -120,6 +135,7 @@ return [
],
'cache' => [
+ 'url' => env('REDIS_URL'),
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
diff --git a/config/mail.php b/config/mail.php
index f4006459..6f8469f8 100644
--- a/config/mail.php
+++ b/config/mail.php
@@ -12,7 +12,7 @@ return [
| your application here. By default, Laravel is setup for SMTP mail.
|
| Supported: "smtp", "sendmail", "mailgun", "mandrill", "ses",
- | "sparkpost", "log", "array"
+ | "sparkpost", "postmark", "log", "array"
|
*/
diff --git a/config/queue.php b/config/queue.php
index c1430b49..07c7d2a9 100644
--- a/config/queue.php
+++ b/config/queue.php
@@ -46,15 +46,16 @@ return [
'host' => 'localhost',
'queue' => 'default',
'retry_after' => 90,
+ 'block_for' => 0,
],
'sqs' => [
'driver' => 'sqs',
- 'key' => env('SQS_KEY', 'your-public-key'),
- 'secret' => env('SQS_SECRET', 'your-secret-key'),
+ 'key' => env('AWS_ACCESS_KEY_ID'),
+ 'secret' => env('AWS_SECRET_ACCESS_KEY'),
'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'),
'queue' => env('SQS_QUEUE', 'your-queue-name'),
- 'region' => env('SQS_REGION', 'us-east-1'),
+ 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
'redis' => [
diff --git a/config/services.php b/config/services.php
index 74bde498..8ce6cc63 100644
--- a/config/services.php
+++ b/config/services.php
@@ -8,9 +8,9 @@ return [
|--------------------------------------------------------------------------
|
| This file is for storing the credentials for third party services such
- | as Stripe, Mailgun, SparkPost and others. This file provides a sane
- | default location for this type of information, allowing packages
- | to have a conventional place to find your various credentials.
+ | as Mailgun, SparkPost and others. This file provides a sane default
+ | location for this type of information, allowing packages to have
+ | a conventional file to locate the various service credentials.
|
*/
@@ -20,24 +20,18 @@ return [
'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'),
],
+ 'postmark' => [
+ 'token' => env('POSTMARK_TOKEN'),
+ ],
+
'ses' => [
- 'key' => env('SES_KEY'),
- 'secret' => env('SES_SECRET'),
- 'region' => env('SES_REGION', 'us-east-1'),
+ 'key' => env('AWS_ACCESS_KEY_ID'),
+ 'secret' => env('AWS_SECRET_ACCESS_KEY'),
+ 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
'sparkpost' => [
'secret' => env('SPARKPOST_SECRET'),
],
- 'stripe' => [
- 'model' => App\Models\User::class,
- 'key' => env('STRIPE_KEY'),
- 'secret' => env('STRIPE_SECRET'),
- 'webhook' => [
- 'secret' => env('STRIPE_WEBHOOK_SECRET'),
- 'tolerance' => env('STRIPE_WEBHOOK_TOLERANCE', 300),
- ],
- ],
-
];
diff --git a/config/session.php b/config/session.php
index fae302ae..fbb9b4d7 100644
--- a/config/session.php
+++ b/config/session.php
@@ -14,7 +14,7 @@ return [
| you may specify any of the other wonderful drivers provided here.
|
| Supported: "file", "cookie", "database", "apc",
- | "memcached", "redis", "array"
+ | "memcached", "redis", "dynamodb", "array"
|
*/
@@ -92,9 +92,9 @@ return [
| Session Cache Store
|--------------------------------------------------------------------------
|
- | When using the "apc" or "memcached" session drivers, you may specify a
- | cache store that should be used for these sessions. This value must
- | correspond with one of the application's configured cache stores.
+ | When using the "apc", "memcached", or "dynamodb" session drivers you may
+ | list a cache store that should be used for these sessions. This value
+ | must match with one of the application's configured cache "stores".
|
*/
diff --git a/resources/lang/en/validation.php b/resources/lang/en/validation.php
index 0e68ac60..7f2fd799 100644
--- a/resources/lang/en/validation.php
+++ b/resources/lang/en/validation.php
@@ -13,72 +13,109 @@ return [
|
*/
- 'accepted' => 'The :attribute must be accepted.',
- 'active_url' => 'The :attribute is not a valid URL.',
- 'after' => 'The :attribute must be a date after :date.',
- 'alpha' => 'The :attribute may only contain letters.',
- 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
- 'alpha_num' => 'The :attribute may only contain letters and numbers.',
- 'array' => 'The :attribute must be an array.',
- 'before' => 'The :attribute must be a date before :date.',
- 'between' => [
+ 'accepted' => 'The :attribute must be accepted.',
+ 'active_url' => 'The :attribute is not a valid URL.',
+ 'after' => 'The :attribute must be a date after :date.',
+ 'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
+ 'alpha' => 'The :attribute may only contain letters.',
+ 'alpha_dash' => 'The :attribute may only contain letters, numbers, dashes and underscores.',
+ 'alpha_num' => 'The :attribute may only contain letters and numbers.',
+ 'array' => 'The :attribute must be an array.',
+ 'before' => 'The :attribute must be a date before :date.',
+ 'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
+ 'between' => [
'numeric' => 'The :attribute must be between :min and :max.',
- 'file' => 'The :attribute must be between :min and :max kilobytes.',
- 'string' => 'The :attribute must be between :min and :max characters.',
- 'array' => 'The :attribute must have between :min and :max items.',
+ 'file' => 'The :attribute must be between :min and :max kilobytes.',
+ 'string' => 'The :attribute must be between :min and :max characters.',
+ 'array' => 'The :attribute must have between :min and :max items.',
],
- 'boolean' => 'The :attribute field must be true or false.',
- 'confirmed' => 'The :attribute confirmation does not match.',
- 'date' => 'The :attribute is not a valid date.',
- 'date_format' => 'The :attribute does not match the format :format.',
- 'different' => 'The :attribute and :other must be different.',
- 'digits' => 'The :attribute must be :digits digits.',
- 'digits_between' => 'The :attribute must be between :min and :max digits.',
- 'distinct' => 'The :attribute field has a duplicate value.',
- 'email' => 'The :attribute must be a valid email address.',
- 'exists' => 'The selected :attribute is invalid.',
- 'filled' => 'The :attribute field is required.',
- 'image' => 'The :attribute must be an image.',
- 'in' => 'The selected :attribute is invalid.',
- 'in_array' => 'The :attribute field does not exist in :other.',
- 'integer' => 'The :attribute must be an integer.',
- 'ip' => 'The :attribute must be a valid IP address.',
- 'json' => 'The :attribute must be a valid JSON string.',
- 'max' => [
+ 'boolean' => 'The :attribute field must be true or false.',
+ 'confirmed' => 'The :attribute confirmation does not match.',
+ 'date' => 'The :attribute is not a valid date.',
+ 'date_equals' => 'The :attribute must be a date equal to :date.',
+ 'date_format' => 'The :attribute does not match the format :format.',
+ 'different' => 'The :attribute and :other must be different.',
+ 'digits' => 'The :attribute must be :digits digits.',
+ 'digits_between' => 'The :attribute must be between :min and :max digits.',
+ 'dimensions' => 'The :attribute has invalid image dimensions.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'email' => 'The :attribute must be a valid email address.',
+ 'ends_with' => 'The :attribute must end with one of the following: :values',
+ 'exists' => 'The selected :attribute is invalid.',
+ 'file' => 'The :attribute must be a file.',
+ 'filled' => 'The :attribute field must have a value.',
+ 'gt' => [
+ 'numeric' => 'The :attribute must be greater than :value.',
+ 'file' => 'The :attribute must be greater than :value kilobytes.',
+ 'string' => 'The :attribute must be greater than :value characters.',
+ 'array' => 'The :attribute must have more than :value items.',
+ ],
+ 'gte' => [
+ 'numeric' => 'The :attribute must be greater than or equal :value.',
+ 'file' => 'The :attribute must be greater than or equal :value kilobytes.',
+ 'string' => 'The :attribute must be greater than or equal :value characters.',
+ 'array' => 'The :attribute must have :value items or more.',
+ ],
+ 'image' => 'The :attribute must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field does not exist in :other.',
+ 'integer' => 'The :attribute must be an integer.',
+ 'ip' => 'The :attribute must be a valid IP address.',
+ 'ipv4' => 'The :attribute must be a valid IPv4 address.',
+ 'ipv6' => 'The :attribute must be a valid IPv6 address.',
+ 'json' => 'The :attribute must be a valid JSON string.',
+ 'lt' => [
+ 'numeric' => 'The :attribute must be less than :value.',
+ 'file' => 'The :attribute must be less than :value kilobytes.',
+ 'string' => 'The :attribute must be less than :value characters.',
+ 'array' => 'The :attribute must have less than :value items.',
+ ],
+ 'lte' => [
+ 'numeric' => 'The :attribute must be less than or equal :value.',
+ 'file' => 'The :attribute must be less than or equal :value kilobytes.',
+ 'string' => 'The :attribute must be less than or equal :value characters.',
+ 'array' => 'The :attribute must not have more than :value items.',
+ ],
+ 'max' => [
'numeric' => 'The :attribute may not be greater than :max.',
- 'file' => 'The :attribute may not be greater than :max kilobytes.',
- 'string' => 'The :attribute may not be greater than :max characters.',
- 'array' => 'The :attribute may not have more than :max items.',
+ 'file' => 'The :attribute may not be greater than :max kilobytes.',
+ 'string' => 'The :attribute may not be greater than :max characters.',
+ 'array' => 'The :attribute may not have more than :max items.',
],
- 'mimes' => 'The :attribute must be a file of type: :values.',
- 'min' => [
+ 'mimes' => 'The :attribute must be a file of type: :values.',
+ 'mimetypes' => 'The :attribute must be a file of type: :values.',
+ 'min' => [
'numeric' => 'The :attribute must be at least :min.',
- 'file' => 'The :attribute must be at least :min kilobytes.',
- 'string' => 'The :attribute must be at least :min characters.',
- 'array' => 'The :attribute must have at least :min items.',
+ 'file' => 'The :attribute must be at least :min kilobytes.',
+ 'string' => 'The :attribute must be at least :min characters.',
+ 'array' => 'The :attribute must have at least :min items.',
],
- 'not_in' => 'The selected :attribute is invalid.',
- 'numeric' => 'The :attribute must be a number.',
- 'present' => 'The :attribute field must be present.',
- 'regex' => 'The :attribute format is invalid.',
- 'required' => 'The :attribute field is required.',
- 'required_if' => 'The :attribute field is required when :other is :value.',
- 'required_unless' => 'The :attribute field is required unless :other is in :values.',
- 'required_with' => 'The :attribute field is required when :values is present.',
- 'required_with_all' => 'The :attribute field is required when :values is present.',
- 'required_without' => 'The :attribute field is required when :values is not present.',
+ 'not_in' => 'The selected :attribute is invalid.',
+ 'not_regex' => 'The :attribute format is invalid.',
+ 'numeric' => 'The :attribute must be a number.',
+ 'present' => 'The :attribute field must be present.',
+ 'regex' => 'The :attribute format is invalid.',
+ 'required' => 'The :attribute field is required.',
+ 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required_unless' => 'The :attribute field is required unless :other is in :values.',
+ 'required_with' => 'The :attribute field is required when :values is present.',
+ 'required_with_all' => 'The :attribute field is required when :values are present.',
+ 'required_without' => 'The :attribute field is required when :values is not present.',
'required_without_all' => 'The :attribute field is required when none of :values are present.',
- 'same' => 'The :attribute and :other must match.',
- 'size' => [
+ 'same' => 'The :attribute and :other must match.',
+ 'size' => [
'numeric' => 'The :attribute must be :size.',
- 'file' => 'The :attribute must be :size kilobytes.',
- 'string' => 'The :attribute must be :size characters.',
- 'array' => 'The :attribute must contain :size items.',
+ 'file' => 'The :attribute must be :size kilobytes.',
+ 'string' => 'The :attribute must be :size characters.',
+ 'array' => 'The :attribute must contain :size items.',
],
- 'string' => 'The :attribute must be a string.',
- 'timezone' => 'The :attribute must be a valid zone.',
- 'unique' => 'The :attribute has already been taken.',
- 'url' => 'The :attribute format is invalid.',
+ 'starts_with' => 'The :attribute must start with one of the following: :values',
+ 'string' => 'The :attribute must be a string.',
+ 'timezone' => 'The :attribute must be a valid zone.',
+ 'unique' => 'The :attribute has already been taken.',
+ 'uploaded' => 'The :attribute failed to upload.',
+ 'url' => 'The :attribute format is invalid.',
+ 'uuid' => 'The :attribute must be a valid UUID.',
/*
|--------------------------------------------------------------------------
diff --git a/resources/views/tracks/show.blade.php b/resources/views/tracks/show.blade.php
index 0db82f5d..7c64377b 100644
--- a/resources/views/tracks/show.blade.php
+++ b/resources/views/tracks/show.blade.php
@@ -19,7 +19,7 @@
@extends('shared._app_layout')
@section('title'){{ $track->title }} - {{ $track->user->display_name }} | @endsection
-@section('description'){{ str_limit($track->description, $limit = 200, $end = '...') }}@endsection
+@section('description'){{ Str::limit($track->description, $limit = 200, $end = '...') }}@endsection
@section('metadata')
@@ -28,7 +28,7 @@
-
+
@@ -39,7 +39,7 @@
-
+
diff --git a/tests/TestCase.php b/tests/TestCase.php
index 0a33c2e8..ee4dc629 100644
--- a/tests/TestCase.php
+++ b/tests/TestCase.php
@@ -104,7 +104,7 @@ class TestCase extends BaseTestCase
}
}
- public function tearDown()
+ protected function tearDown(): void
{
Storage::disk('local')->deleteDirectory('testing-datastore');
parent::tearDown();