|
| 1 | +diff --git a/.gitignore b/.gitignore |
| 2 | +index 3cb7c776..7fe978f8 100644 |
| 3 | +--- a/.gitignore |
| 4 | ++++ b/.gitignore |
| 5 | +@@ -8,12 +8,12 @@ |
| 6 | + .env |
| 7 | + .env.backup |
| 8 | + .env.production |
| 9 | ++.phpunit.result.cache |
| 10 | + Homestead.json |
| 11 | + Homestead.yaml |
| 12 | + auth.json |
| 13 | + npm-debug.log |
| 14 | + yarn-error.log |
| 15 | +-.phpunit.result.cache |
| 16 | + /.fleet |
| 17 | + /.idea |
| 18 | + /.vscode |
| 19 | +diff --git a/CHANGELOG.md b/CHANGELOG.md |
| 20 | +index 8c536600..173a8721 100644 |
| 21 | +--- a/CHANGELOG.md |
| 22 | ++++ b/CHANGELOG.md |
| 23 | +@@ -1,6 +1,28 @@ |
| 24 | + # Release Notes |
| 25 | + |
| 26 | +-## [Unreleased](https://github.com/laravel/laravel/compare/v10.0.1...10.x) |
| 27 | ++## [Unreleased](https://github.com/laravel/laravel/compare/v10.0.6...10.x) |
| 28 | ++ |
| 29 | ++## [v10.0.6](https://github.com/laravel/laravel/compare/v10.0.5...v10.0.6) - 2023-04-05 |
| 30 | ++ |
| 31 | ++- Add job batching options to Queue configuration file by @AnOlsen in https://github.com/laravel/laravel/pull/6149 |
| 32 | ++ |
| 33 | ++## [v10.0.5](https://github.com/laravel/laravel/compare/v10.0.4...v10.0.5) - 2023-03-08 |
| 34 | ++ |
| 35 | ++- Add replace_placeholders to log channels by @alanpoulain in https://github.com/laravel/laravel/pull/6139 |
| 36 | ++ |
| 37 | ++## [v10.0.4](https://github.com/laravel/laravel/compare/v10.0.3...v10.0.4) - 2023-02-27 |
| 38 | ++ |
| 39 | ++- Fix typo by @izzudin96 in https://github.com/laravel/laravel/pull/6128 |
| 40 | ++- Specify facility in the syslog driver config by @nicolus in https://github.com/laravel/laravel/pull/6130 |
| 41 | ++ |
| 42 | ++## [v10.0.3](https://github.com/laravel/laravel/compare/v10.0.2...v10.0.3) - 2023-02-21 |
| 43 | ++ |
| 44 | ++- Remove redundant `@return` docblock in UserFactory by @datlechin in https://github.com/laravel/laravel/pull/6119 |
| 45 | ++- Reverts change in asset helper by @timacdonald in https://github.com/laravel/laravel/pull/6122 |
| 46 | ++ |
| 47 | ++## [v10.0.2](https://github.com/laravel/laravel/compare/v10.0.1...v10.0.2) - 2023-02-16 |
| 48 | ++ |
| 49 | ++- Remove unneeded call by @taylorotwell in https://github.com/laravel/laravel/commit/3986d4c54041fd27af36f96cf11bd79ce7b1ee4e |
| 50 | + |
| 51 | + ## [v10.0.1](https://github.com/laravel/laravel/compare/v10.0.0...v10.0.1) - 2023-02-15 |
| 52 | + |
| 53 | +diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php |
| 54 | +index b1c262c6..56af2640 100644 |
| 55 | +--- a/app/Exceptions/Handler.php |
| 56 | ++++ b/app/Exceptions/Handler.php |
| 57 | +@@ -8,25 +8,7 @@ use Throwable; |
| 58 | + class Handler extends ExceptionHandler |
| 59 | + { |
| 60 | + /** |
| 61 | +- * A list of exception types with their corresponding custom log levels. |
| 62 | +- * |
| 63 | +- * @var array<class-string<\Throwable>, \Psr\Log\LogLevel::*> |
| 64 | +- */ |
| 65 | +- protected $levels = [ |
| 66 | +- // |
| 67 | +- ]; |
| 68 | +- |
| 69 | +- /** |
| 70 | +- * A list of the exception types that are not reported. |
| 71 | +- * |
| 72 | +- * @var array<int, class-string<\Throwable>> |
| 73 | +- */ |
| 74 | +- protected $dontReport = [ |
| 75 | +- // |
| 76 | +- ]; |
| 77 | +- |
| 78 | +- /** |
| 79 | +- * A list of the inputs that are never flashed to the session on validation exceptions. |
| 80 | ++ * The list of the inputs that are never flashed to the session on validation exceptions. |
| 81 | + * |
| 82 | + * @var array<int, string> |
| 83 | + */ |
| 84 | +diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php |
| 85 | +index c34cdcf1..1fb53dce 100644 |
| 86 | +--- a/app/Http/Kernel.php |
| 87 | ++++ b/app/Http/Kernel.php |
| 88 | +@@ -48,7 +48,7 @@ class Kernel extends HttpKernel |
| 89 | + /** |
| 90 | + * The application's middleware aliases. |
| 91 | + * |
| 92 | +- * Aliases may be used to conveniently assign middleware to routes and groups. |
| 93 | ++ * Aliases may be used instead of class names to conveniently assign middleware to routes and groups. |
| 94 | + * |
| 95 | + * @var array<string, class-string|string> |
| 96 | + */ |
| 97 | +diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php |
| 98 | +index dafcbee7..54756cd1 100644 |
| 99 | +--- a/app/Providers/AuthServiceProvider.php |
| 100 | ++++ b/app/Providers/AuthServiceProvider.php |
| 101 | +@@ -13,7 +13,7 @@ class AuthServiceProvider extends ServiceProvider |
| 102 | + * @var array<class-string, class-string> |
| 103 | + */ |
| 104 | + protected $policies = [ |
| 105 | +- // 'App\Models\Model' => 'App\Policies\ModelPolicy', |
| 106 | ++ // |
| 107 | + ]; |
| 108 | + |
| 109 | + /** |
| 110 | +diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php |
| 111 | +index bc491099..1cf5f15c 100644 |
| 112 | +--- a/app/Providers/RouteServiceProvider.php |
| 113 | ++++ b/app/Providers/RouteServiceProvider.php |
| 114 | +@@ -11,7 +11,7 @@ use Illuminate\Support\Facades\Route; |
| 115 | + class RouteServiceProvider extends ServiceProvider |
| 116 | + { |
| 117 | + /** |
| 118 | +- * The path to the "home" route for your application. |
| 119 | ++ * The path to your application's "home" route. |
| 120 | + * |
| 121 | + * Typically, users are redirected here after authentication. |
| 122 | + * |
| 123 | +@@ -24,7 +24,9 @@ class RouteServiceProvider extends ServiceProvider |
| 124 | + */ |
| 125 | + public function boot(): void |
| 126 | + { |
| 127 | +- $this->configureRateLimiting(); |
| 128 | ++ RateLimiter::for('api', function (Request $request) { |
| 129 | ++ return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); |
| 130 | ++ }); |
| 131 | + |
| 132 | + $this->routes(function () { |
| 133 | + Route::middleware('api') |
| 134 | +@@ -35,14 +37,4 @@ class RouteServiceProvider extends ServiceProvider |
| 135 | + ->group(base_path('routes/web.php')); |
| 136 | + }); |
| 137 | + } |
| 138 | +- |
| 139 | +- /** |
| 140 | +- * Configure the rate limiters for the application. |
| 141 | +- */ |
| 142 | +- protected function configureRateLimiting(): void |
| 143 | +- { |
| 144 | +- RateLimiter::for('api', function (Request $request) { |
| 145 | +- return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); |
| 146 | +- }); |
| 147 | +- } |
| 148 | + } |
| 149 | +diff --git a/composer.json b/composer.json |
| 150 | +index 4958668f..4a1a7cda 100644 |
| 151 | +--- a/composer.json |
| 152 | ++++ b/composer.json |
| 153 | +@@ -17,7 +17,7 @@ |
| 154 | + "laravel/sail": "^1.18", |
| 155 | + "mockery/mockery": "^1.4.4", |
| 156 | + "nunomaduro/collision": "^7.0", |
| 157 | +- "phpunit/phpunit": "^10.0", |
| 158 | ++ "phpunit/phpunit": "^10.1", |
| 159 | + "spatie/laravel-ignition": "^2.0" |
| 160 | + }, |
| 161 | + "autoload": { |
| 162 | +diff --git a/config/app.php b/config/app.php |
| 163 | +index bca112fb..4c231b47 100644 |
| 164 | +--- a/config/app.php |
| 165 | ++++ b/config/app.php |
| 166 | +@@ -1,6 +1,7 @@ |
| 167 | + <?php |
| 168 | + |
| 169 | + use Illuminate\Support\Facades\Facade; |
| 170 | ++use Illuminate\Support\ServiceProvider; |
| 171 | + |
| 172 | + return [ |
| 173 | + |
| 174 | +@@ -56,7 +57,7 @@ return [ |
| 175 | + |
| 176 | + 'url' => env('APP_URL', 'http://localhost'), |
| 177 | + |
| 178 | +- 'asset_url' => env('ASSET_URL', '/'), |
| 179 | ++ 'asset_url' => env('ASSET_URL'), |
| 180 | + |
| 181 | + /* |
| 182 | + |-------------------------------------------------------------------------- |
| 183 | +@@ -154,34 +155,7 @@ return [ |
| 184 | + | |
| 185 | + */ |
| 186 | + |
| 187 | +- 'providers' => [ |
| 188 | +- |
| 189 | +- /* |
| 190 | +- * Laravel Framework Service Providers... |
| 191 | +- */ |
| 192 | +- Illuminate\Auth\AuthServiceProvider::class, |
| 193 | +- Illuminate\Broadcasting\BroadcastServiceProvider::class, |
| 194 | +- Illuminate\Bus\BusServiceProvider::class, |
| 195 | +- Illuminate\Cache\CacheServiceProvider::class, |
| 196 | +- Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, |
| 197 | +- Illuminate\Cookie\CookieServiceProvider::class, |
| 198 | +- Illuminate\Database\DatabaseServiceProvider::class, |
| 199 | +- Illuminate\Encryption\EncryptionServiceProvider::class, |
| 200 | +- Illuminate\Filesystem\FilesystemServiceProvider::class, |
| 201 | +- Illuminate\Foundation\Providers\FoundationServiceProvider::class, |
| 202 | +- Illuminate\Hashing\HashServiceProvider::class, |
| 203 | +- Illuminate\Mail\MailServiceProvider::class, |
| 204 | +- Illuminate\Notifications\NotificationServiceProvider::class, |
| 205 | +- Illuminate\Pagination\PaginationServiceProvider::class, |
| 206 | +- Illuminate\Pipeline\PipelineServiceProvider::class, |
| 207 | +- Illuminate\Queue\QueueServiceProvider::class, |
| 208 | +- Illuminate\Redis\RedisServiceProvider::class, |
| 209 | +- Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, |
| 210 | +- Illuminate\Session\SessionServiceProvider::class, |
| 211 | +- Illuminate\Translation\TranslationServiceProvider::class, |
| 212 | +- Illuminate\Validation\ValidationServiceProvider::class, |
| 213 | +- Illuminate\View\ViewServiceProvider::class, |
| 214 | +- |
| 215 | ++ 'providers' => ServiceProvider::defaultProviders()->merge([ |
| 216 | + /* |
| 217 | + * Package Service Providers... |
| 218 | + */ |
| 219 | +@@ -194,8 +168,7 @@ return [ |
| 220 | + // App\Providers\BroadcastServiceProvider::class, |
| 221 | + App\Providers\EventServiceProvider::class, |
| 222 | + App\Providers\RouteServiceProvider::class, |
| 223 | +- |
| 224 | +- ], |
| 225 | ++ ])->toArray(), |
| 226 | + |
| 227 | + /* |
| 228 | + |-------------------------------------------------------------------------- |
| 229 | +@@ -209,7 +182,7 @@ return [ |
| 230 | + */ |
| 231 | + |
| 232 | + 'aliases' => Facade::defaultAliases()->merge([ |
| 233 | +- // 'ExampleClass' => App\Example\ExampleClass::class, |
| 234 | ++ // 'Example' => App\Facades\Example::class, |
| 235 | + ])->toArray(), |
| 236 | + |
| 237 | + ]; |
| 238 | +diff --git a/config/auth.php b/config/auth.php |
| 239 | +index cae00280..9548c15d 100644 |
| 240 | +--- a/config/auth.php |
| 241 | ++++ b/config/auth.php |
| 242 | +@@ -80,7 +80,7 @@ return [ |
| 243 | + | than one user table or model in the application and you want to have |
| 244 | + | separate password reset settings based on the specific user types. |
| 245 | + | |
| 246 | +- | The expire time is the number of minutes that each reset token will be |
| 247 | ++ | The expiry time is the number of minutes that each reset token will be |
| 248 | + | considered valid. This security feature keeps tokens short-lived so |
| 249 | + | they have less time to be guessed. You may change this as needed. |
| 250 | + | |
| 251 | +diff --git a/config/logging.php b/config/logging.php |
| 252 | +index 5aa1dbb7..c44d2763 100644 |
| 253 | +--- a/config/logging.php |
| 254 | ++++ b/config/logging.php |
| 255 | +@@ -3,6 +3,7 @@ |
| 256 | + use Monolog\Handler\NullHandler; |
| 257 | + use Monolog\Handler\StreamHandler; |
| 258 | + use Monolog\Handler\SyslogUdpHandler; |
| 259 | ++use Monolog\Processor\PsrLogMessageProcessor; |
| 260 | + |
| 261 | + return [ |
| 262 | + |
| 263 | +@@ -61,6 +62,7 @@ return [ |
| 264 | + 'driver' => 'single', |
| 265 | + 'path' => storage_path('logs/laravel.log'), |
| 266 | + 'level' => env('LOG_LEVEL', 'debug'), |
| 267 | ++ 'replace_placeholders' => true, |
| 268 | + ], |
| 269 | + |
| 270 | + 'daily' => [ |
| 271 | +@@ -68,6 +70,7 @@ return [ |
| 272 | + 'path' => storage_path('logs/laravel.log'), |
| 273 | + 'level' => env('LOG_LEVEL', 'debug'), |
| 274 | + 'days' => 14, |
| 275 | ++ 'replace_placeholders' => true, |
| 276 | + ], |
| 277 | + |
| 278 | + 'slack' => [ |
| 279 | +@@ -76,6 +79,7 @@ return [ |
| 280 | + 'username' => 'Laravel Log', |
| 281 | + 'emoji' => ':boom:', |
| 282 | + 'level' => env('LOG_LEVEL', 'critical'), |
| 283 | ++ 'replace_placeholders' => true, |
| 284 | + ], |
| 285 | + |
| 286 | + 'papertrail' => [ |
| 287 | +@@ -87,6 +91,7 @@ return [ |
| 288 | + 'port' => env('PAPERTRAIL_PORT'), |
| 289 | + 'connectionString' => 'tls://'.env('PAPERTRAIL_URL').':'.env('PAPERTRAIL_PORT'), |
| 290 | + ], |
| 291 | ++ 'processors' => [PsrLogMessageProcessor::class], |
| 292 | + ], |
| 293 | + |
| 294 | + 'stderr' => [ |
| 295 | +@@ -97,16 +102,20 @@ return [ |
| 296 | + 'with' => [ |
| 297 | + 'stream' => 'php://stderr', |
| 298 | + ], |
| 299 | ++ 'processors' => [PsrLogMessageProcessor::class], |
| 300 | + ], |
| 301 | + |
| 302 | + 'syslog' => [ |
| 303 | + 'driver' => 'syslog', |
| 304 | + 'level' => env('LOG_LEVEL', 'debug'), |
| 305 | ++ 'facility' => LOG_USER, |
| 306 | ++ 'replace_placeholders' => true, |
| 307 | + ], |
| 308 | + |
| 309 | + 'errorlog' => [ |
| 310 | + 'driver' => 'errorlog', |
| 311 | + 'level' => env('LOG_LEVEL', 'debug'), |
| 312 | ++ 'replace_placeholders' => true, |
| 313 | + ], |
| 314 | + |
| 315 | + 'null' => [ |
| 316 | +diff --git a/config/mail.php b/config/mail.php |
| 317 | +index 275a3c64..542d98c3 100644 |
| 318 | +--- a/config/mail.php |
| 319 | ++++ b/config/mail.php |
| 320 | +@@ -28,7 +28,7 @@ return [ |
| 321 | + | sending an e-mail. You will specify which one you are using for your |
| 322 | + | mailers below. You are free to add additional mailers as required. |
| 323 | + | |
| 324 | +- | Supported: "smtp", "sendmail", "mailgun", "ses", "ses-v2" |
| 325 | ++ | Supported: "smtp", "sendmail", "mailgun", "ses", "ses-v2", |
| 326 | + | "postmark", "log", "array", "failover" |
| 327 | + | |
| 328 | + */ |
| 329 | +diff --git a/config/queue.php b/config/queue.php |
| 330 | +index 25ea5a81..01c6b054 100644 |
| 331 | +--- a/config/queue.php |
| 332 | ++++ b/config/queue.php |
| 333 | +@@ -73,6 +73,22 @@ return [ |
| 334 | + |
| 335 | + ], |
| 336 | + |
| 337 | ++ /* |
| 338 | ++ |-------------------------------------------------------------------------- |
| 339 | ++ | Job Batching |
| 340 | ++ |-------------------------------------------------------------------------- |
| 341 | ++ | |
| 342 | ++ | The following options configure the database and table that store job |
| 343 | ++ | batching information. These options can be updated to any database |
| 344 | ++ | connection and table which has been defined by your application. |
| 345 | ++ | |
| 346 | ++ */ |
| 347 | ++ |
| 348 | ++ 'batching' => [ |
| 349 | ++ 'database' => env('DB_CONNECTION', 'mysql'), |
| 350 | ++ 'table' => 'job_batches', |
| 351 | ++ ], |
| 352 | ++ |
| 353 | + /* |
| 354 | + |-------------------------------------------------------------------------- |
| 355 | + | Failed Queue Jobs |
| 356 | +diff --git a/database/factories/UserFactory.php b/database/factories/UserFactory.php |
| 357 | +index d4e88356..a6ecc0af 100644 |
| 358 | +--- a/database/factories/UserFactory.php |
| 359 | ++++ b/database/factories/UserFactory.php |
| 360 | +@@ -28,8 +28,6 @@ class UserFactory extends Factory |
| 361 | + |
| 362 | + /** |
| 363 | + * Indicate that the model's email address should be unverified. |
| 364 | +- * |
| 365 | +- * @return $this |
| 366 | + */ |
| 367 | + public function unverified(): static |
| 368 | + { |
| 369 | +diff --git a/phpunit.xml b/phpunit.xml |
| 370 | +index eb13aff1..e9f533da 100644 |
| 371 | +--- a/phpunit.xml |
| 372 | ++++ b/phpunit.xml |
| 373 | +@@ -12,11 +12,11 @@ |
| 374 | + <directory suffix="Test.php">./tests/Feature</directory> |
| 375 | + </testsuite> |
| 376 | + </testsuites> |
| 377 | +- <coverage> |
| 378 | ++ <source> |
| 379 | + <include> |
| 380 | + <directory suffix=".php">./app</directory> |
| 381 | + </include> |
| 382 | +- </coverage> |
| 383 | ++ </source> |
| 384 | + <php> |
| 385 | + <env name="APP_ENV" value="testing"/> |
| 386 | + <env name="BCRYPT_ROUNDS" value="4"/> |
0 commit comments