diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 769390bf94d..e43d40dd0c2 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -44,4 +44,4 @@ jobs:
run: php artisan key:generate
- name: Execute tests
- run: vendor/bin/phpunit
+ run: php artisan test
diff --git a/.gitignore b/.gitignore
index c7cf1fa675f..b71b1ea3c2d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,23 +1,24 @@
-/.phpunit.cache
-/node_modules
-/public/build
-/public/hot
-/public/storage
-/storage/*.key
-/storage/pail
-/vendor
+*.log
+.DS_Store
.env
.env.backup
.env.production
.phpactor.json
.phpunit.result.cache
-Homestead.json
-Homestead.yaml
-npm-debug.log
-yarn-error.log
-/auth.json
/.fleet
/.idea
/.nova
+/.phpunit.cache
/.vscode
/.zed
+/auth.json
+/node_modules
+/public/build
+/public/hot
+/public/storage
+/storage/*.key
+/storage/pail
+/vendor
+Homestead.json
+Homestead.yaml
+Thumbs.db
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 42dc426ed94..199f0b8d0cb 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,61 @@
# Release Notes
-## [Unreleased](https://github.com/laravel/laravel/compare/v12.0.0...master)
+## [Unreleased](https://github.com/laravel/laravel/compare/v12.0.11...12.x)
+
+## [v12.0.11](https://github.com/laravel/laravel/compare/v12.0.10...v12.0.11) - 2025-06-10
+
+**Full Changelog**: https://github.com/laravel/laravel/compare/v12.0.10...v12.0.11
+
+## [v12.0.10](https://github.com/laravel/laravel/compare/v12.0.9...v12.0.10) - 2025-06-09
+
+* fix alphabetical order by [@Khuthaily](https://github.com/Khuthaily) in https://github.com/laravel/laravel/pull/6627
+* [12.x] Reduce redundancy and keeps the .gitignore file cleaner by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6629
+* [12.x] Fix: Add void return type to satisfy Rector analysis by [@Aluisio-Pires](https://github.com/Aluisio-Pires) in https://github.com/laravel/laravel/pull/6628
+
+## [v12.0.9](https://github.com/laravel/laravel/compare/v12.0.8...v12.0.9) - 2025-05-26
+
+* [12.x] Remove apc by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6611
+* [12.x] Add JSON Schema to package.json by [@martinbean](https://github.com/martinbean) in https://github.com/laravel/laravel/pull/6613
+* Minor language update by [@woganmay](https://github.com/woganmay) in https://github.com/laravel/laravel/pull/6615
+* Enhance .gitignore to exclude common OS and log files by [@mohammadRezaei1380](https://github.com/mohammadRezaei1380) in https://github.com/laravel/laravel/pull/6619
+
+## [v12.0.8](https://github.com/laravel/laravel/compare/v12.0.7...v12.0.8) - 2025-05-12
+
+* [12.x] Clean up URL formatting in README by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6601
+
+## [v12.0.7](https://github.com/laravel/laravel/compare/v12.0.6...v12.0.7) - 2025-04-15
+
+* Add `composer run test` command by [@crynobone](https://github.com/crynobone) in https://github.com/laravel/laravel/pull/6598
+* Partner Directory Changes in ReadME by [@joshcirre](https://github.com/joshcirre) in https://github.com/laravel/laravel/pull/6599
+
+## [v12.0.6](https://github.com/laravel/laravel/compare/v12.0.5...v12.0.6) - 2025-04-08
+
+**Full Changelog**: https://github.com/laravel/laravel/compare/v12.0.5...v12.0.6
+
+## [v12.0.5](https://github.com/laravel/laravel/compare/v12.0.4...v12.0.5) - 2025-04-02
+
+* [12.x] Update `config/mail.php` to match the latest core configuration by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6594
+
+## [v12.0.4](https://github.com/laravel/laravel/compare/v12.0.3...v12.0.4) - 2025-03-31
+
+* Bump vite from 6.0.11 to 6.2.3 - Vulnerability patch by [@abdel-aouby](https://github.com/abdel-aouby) in https://github.com/laravel/laravel/pull/6586
+* Bump vite from 6.2.3 to 6.2.4 by [@thinkverse](https://github.com/thinkverse) in https://github.com/laravel/laravel/pull/6590
+
+## [v12.0.3](https://github.com/laravel/laravel/compare/v12.0.2...v12.0.3) - 2025-03-17
+
+* Remove reverted change from CHANGELOG.md by [@AJenbo](https://github.com/AJenbo) in https://github.com/laravel/laravel/pull/6565
+* Improves clarity in app.css file by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6569
+* [12.x] Refactor: Structural improvement for clarity by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6574
+* Bump axios from 1.7.9 to 1.8.2 - Vulnerability patch by [@abdel-aouby](https://github.com/abdel-aouby) in https://github.com/laravel/laravel/pull/6572
+* [12.x] Remove Unnecessarily [@source](https://github.com/source) by [@AhmedAlaa4611](https://github.com/AhmedAlaa4611) in https://github.com/laravel/laravel/pull/6584
+
+## [v12.0.2](https://github.com/laravel/laravel/compare/v12.0.1...v12.0.2) - 2025-03-04
+
+* Make the github test action run out of the box independent of the choice of testing framework by [@ndeblauw](https://github.com/ndeblauw) in https://github.com/laravel/laravel/pull/6555
+
+## [v12.0.1](https://github.com/laravel/laravel/compare/v12.0.0...v12.0.1) - 2025-02-24
+
+* [12.x] prefer stable stability by [@pataar](https://github.com/pataar) in https://github.com/laravel/laravel/pull/6548
## [v12.0.0 (2025-??-??)](https://github.com/laravel/laravel/compare/v11.0.2...v12.0.0)
diff --git a/README.md b/README.md
index 1a4c26ba329..75c347a835a 100644
--- a/README.md
+++ b/README.md
@@ -35,19 +35,14 @@ We would like to extend our thanks to the following sponsors for funding Laravel
### Premium Partners
-- **[Vehikl](https://vehikl.com/)**
+- **[Vehikl](https://vehikl.com)**
- **[Tighten Co.](https://tighten.co)**
-- **[WebReinvent](https://webreinvent.com/)**
- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)**
- **[64 Robots](https://64robots.com)**
-- **[Curotec](https://www.curotec.com/services/technologies/laravel/)**
-- **[Cyber-Duck](https://cyber-duck.co.uk)**
+- **[Curotec](https://www.curotec.com/services/technologies/laravel)**
- **[DevSquad](https://devsquad.com/hire-laravel-developers)**
-- **[Jump24](https://jump24.co.uk)**
-- **[Redberry](https://redberry.international/laravel/)**
+- **[Redberry](https://redberry.international/laravel-development)**
- **[Active Logic](https://activelogic.com)**
-- **[byte5](https://byte5.de)**
-- **[OP.GG](https://op.gg)**
## Contributing
diff --git a/bootstrap/app.php b/bootstrap/app.php
index 7b162dac3d9..c1832766e15 100644
--- a/bootstrap/app.php
+++ b/bootstrap/app.php
@@ -10,9 +10,9 @@
commands: __DIR__.'/../routes/console.php',
health: '/up',
)
- ->withMiddleware(function (Middleware $middleware) {
+ ->withMiddleware(function (Middleware $middleware): void {
//
})
- ->withExceptions(function (Exceptions $exceptions) {
+ ->withExceptions(function (Exceptions $exceptions): void {
//
})->create();
diff --git a/composer.json b/composer.json
index 792b9929b1f..dfe9c82cc09 100644
--- a/composer.json
+++ b/composer.json
@@ -50,12 +50,13 @@
"dev": [
"Composer\\Config::disableProcessTimeout",
"npx concurrently -c \"#93c5fd,#c4b5fd,#fb7185,#fdba74\" \"php artisan serve\" \"php artisan queue:listen --tries=1\" \"php artisan pail --timeout=0\" \"npm run dev\" --names=server,queue,logs,vite"
+ ],
+ "test": [
+ "@php artisan config:clear --ansi",
+ "@php artisan test"
]
},
"extra": {
- "branch-alias": {
- "dev-master": "12.x-dev"
- },
"laravel": {
"dont-discover": []
}
@@ -69,6 +70,6 @@
"php-http/discovery": true
}
},
- "minimum-stability": "dev",
+ "minimum-stability": "stable",
"prefer-stable": true
}
diff --git a/config/auth.php b/config/auth.php
index 0ba5d5d8f10..7d1eb0de5f7 100644
--- a/config/auth.php
+++ b/config/auth.php
@@ -104,7 +104,7 @@
| Password Confirmation Timeout
|--------------------------------------------------------------------------
|
- | Here you may define the amount of seconds before a password confirmation
+ | Here you may define the number of seconds before a password confirmation
| window expires and users are asked to re-enter their password via the
| confirmation screen. By default, the timeout lasts for three hours.
|
diff --git a/config/logging.php b/config/logging.php
index 8d94292b29f..1345f6f66c5 100644
--- a/config/logging.php
+++ b/config/logging.php
@@ -98,10 +98,10 @@
'driver' => 'monolog',
'level' => env('LOG_LEVEL', 'debug'),
'handler' => StreamHandler::class,
- 'formatter' => env('LOG_STDERR_FORMATTER'),
- 'with' => [
+ 'handler_with' => [
'stream' => 'php://stderr',
],
+ 'formatter' => env('LOG_STDERR_FORMATTER'),
'processors' => [PsrLogMessageProcessor::class],
],
diff --git a/config/mail.php b/config/mail.php
index 756305b3c75..00345321ce0 100644
--- a/config/mail.php
+++ b/config/mail.php
@@ -85,6 +85,7 @@
'smtp',
'log',
],
+ 'retry_after' => 60,
],
'roundrobin' => [
@@ -93,6 +94,7 @@
'ses',
'postmark',
],
+ 'retry_after' => 60,
],
],
diff --git a/config/services.php b/config/services.php
index 27a36175f82..6182e4b90c9 100644
--- a/config/services.php
+++ b/config/services.php
@@ -18,16 +18,16 @@
'token' => env('POSTMARK_TOKEN'),
],
+ 'resend' => [
+ 'key' => env('RESEND_KEY'),
+ ],
+
'ses' => [
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
- 'resend' => [
- 'key' => env('RESEND_KEY'),
- ],
-
'slack' => [
'notifications' => [
'bot_user_oauth_token' => env('SLACK_BOT_USER_OAUTH_TOKEN'),
diff --git a/config/session.php b/config/session.php
index ba0aa60b074..b5fa5319447 100644
--- a/config/session.php
+++ b/config/session.php
@@ -13,8 +13,8 @@
| incoming requests. Laravel supports a variety of storage options to
| persist session data. Database storage is a great default choice.
|
- | Supported: "file", "cookie", "database", "apc",
- | "memcached", "redis", "dynamodb", "array"
+ | Supported: "file", "cookie", "database", "memcached",
+ | "redis", "dynamodb", "array"
|
*/
@@ -97,7 +97,7 @@
| define the cache store which should be used to store the session data
| between requests. This must match one of your defined cache stores.
|
- | Affects: "apc", "dynamodb", "memcached", "redis"
+ | Affects: "dynamodb", "memcached", "redis"
|
*/
diff --git a/package.json b/package.json
index a047e2684c2..ef47e425e4c 100644
--- a/package.json
+++ b/package.json
@@ -1,4 +1,5 @@
{
+ "$schema": "https://json.schemastore.org/package.json",
"private": true,
"type": "module",
"scripts": {
@@ -7,10 +8,10 @@
},
"devDependencies": {
"@tailwindcss/vite": "^4.0.0",
- "axios": "^1.7.4",
+ "axios": "^1.8.2",
"concurrently": "^9.0.1",
"laravel-vite-plugin": "^1.2.0",
"tailwindcss": "^4.0.0",
- "vite": "^6.0.11"
+ "vite": "^6.2.4"
}
}
diff --git a/phpunit.xml b/phpunit.xml
index 506b9a38ec7..2ef30be4317 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -22,12 +22,13 @@
-
-
+
+
+
diff --git a/resources/css/app.css b/resources/css/app.css
index 8bccc0252d7..3e6abeabab1 100644
--- a/resources/css/app.css
+++ b/resources/css/app.css
@@ -2,11 +2,10 @@
@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../storage/framework/views/*.php';
-@source "../**/*.blade.php";
-@source "../**/*.js";
-@source "../**/*.vue";
+@source '../**/*.blade.php';
+@source '../**/*.js';
@theme {
- --font-sans: Figtree, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
- 'Noto Color Emoji';
+ --font-sans: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
+ 'Segoe UI Symbol', 'Noto Color Emoji';
}
diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php
index d12a07d0ecc..c893b809532 100644
--- a/resources/views/welcome.blade.php
+++ b/resources/views/welcome.blade.php
@@ -8,169 +8,270 @@
-
+
@if (file_exists(public_path('build/manifest.json')) || file_exists(public_path('hot')))
@vite(['resources/css/app.css', 'resources/js/app.js'])
@else
@endif
-
-
-

-
-
-
-
-
-
-
-
-

-

-
-
-
-
-
-
-
-
-
Documentation
-
-
- Laravel has wonderful documentation covering every aspect of the framework. Whether you are a newcomer or have prior experience with Laravel, we recommend reading our documentation from beginning to end.
-
-
-
-
-
-
-
-
-
-
-
-
-
Laracasts
-
-
- Laracasts offers thousands of video tutorials on Laravel, PHP, and JavaScript development. Check them out, see for yourself, and massively level up your development skills in the process.
-
-
-
-
-
+
+
+ @if (Route::has('login'))
+
+
+
+ @if (Route::has('login'))
+
+ @endif