Skip to content

[11.x] document new cache driver #10032

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 304 commits into
base: 11.x
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
304 commits
Select commit Hold shift + click to select a range
bfcd66a
fix: remove unnecessary code blocks in file storage documentation (#1…
JsExpertCoder Mar 6, 2025
e4edae6
inertia ssr
taylorotwell Mar 6, 2025
87931ac
Fix API documentation URLs in Routing section (#10235)
mohammadrasoulasghari Mar 7, 2025
4dbcf97
Update cache.md (#10234)
kachelle Mar 7, 2025
b9e044e
add documentation for community maintained starter kits (#10236)
devinnived Mar 7, 2025
b9dc159
Fix markdown formatting. (#10241)
HiroKws Mar 10, 2025
bc982a5
Fix markdown formatting. (#10241)
HiroKws Mar 10, 2025
f86194a
[12.x] Mention different Vite integration for Tailwind v3 vs v4 (#10240)
rozsazoltan Mar 10, 2025
87fe8fc
Remove unnecessary fenced code blocks in strings.md (#10239)
marioagr Mar 10, 2025
607adcf
[12.x] Rework pagination Tailwind JIT description; add v4 syntax (#10…
rozsazoltan Mar 10, 2025
2fd7197
Update Logging Documentation to Use handler_with (#10242)
AhmedAlaa4611 Mar 12, 2025
e181b1c
[12.x] Document `ensureNotTimedOut` (#10231)
mattmcdev Mar 12, 2025
0c27677
[12.x] docs: document container respecting property default values (#…
calebdw Mar 13, 2025
d914fa3
Fix strings whenEmpty code example (#10249)
RobertBoes Mar 13, 2025
16ff347
Document 'only' and 'except' for blade attributes (#10248)
inmanturbo Mar 13, 2025
5253514
Update Logging Documentation to Use handler_with (#10247)
AhmedAlaa4611 Mar 13, 2025
0cc3f93
[12.x] Document `increment` and `decrement` (#10245)
mattmcdev Mar 13, 2025
8837a4b
Update the pagination docs to reflect the actual implementation (#10251)
AhmedAlaa4611 Mar 13, 2025
9a84c2f
document has one through
taylorotwell Mar 13, 2025
9b39f6e
Updating the docs to reflect the actual generated comment (#10252)
AhmedAlaa4611 Mar 14, 2025
2ae2817
wip
taylorotwell Mar 16, 2025
594fe1b
Fix typo in a Precognition for Alpine.js example (#10255)
johnRivs Mar 16, 2025
690f920
Consistency with Laravel's best practices (#10254)
AhmedAlaa4611 Mar 16, 2025
4223ed3
Fix markdown formatting (#10257)
AhmedAlaa4611 Mar 17, 2025
092db4e
Add documentation for getChanges (#10258)
Tamas-hi Mar 17, 2025
7305647
Explain redirectUsersTo functionality (#10253)
Rattone Mar 17, 2025
a89581b
Fix markdown formatting (#10259)
AhmedAlaa4611 Mar 17, 2025
6a0eec9
Fix markdown formatting (#10260)
AhmedAlaa4611 Mar 17, 2025
96617d0
Fix markdown formatting (#10261)
AhmedAlaa4611 Mar 18, 2025
91e9e4b
Use fenced code blocks (#10262)
AhmedAlaa4611 Mar 18, 2025
8131d17
wip
taylorotwell Mar 18, 2025
9d89b59
[12.x] Improve workOS docs (#10265)
arzola Mar 19, 2025
479d5fe
[12.x] Improve `anticipate` method example (#10264)
AhmedAlaa4611 Mar 19, 2025
d60c35d
Update Symfony documentation link to the latest maintained version (7…
AhmedAlaa4611 Mar 19, 2025
2fa3c52
Add missing import for clarity and to eliminate confusion (#10267)
AhmedAlaa4611 Mar 19, 2025
c858eff
[12.x] Add `ddBody` to http-tests.md (#10268)
Sammyjo20 Mar 20, 2025
598cf05
Ensure Proper Closure of File Handle in LazyCollection (#10269)
AhmedAlaa4611 Mar 20, 2025
c11c9cb
Improve PHPUnit Example to Match Pest Example in Testing Documentatio…
AhmedAlaa4611 Mar 22, 2025
413b069
sync indentation with framework formatting (#10272)
browner12 Mar 22, 2025
3a30b3d
Updating the docs to reflect the actual implementation (#10276)
AhmedAlaa4611 Mar 22, 2025
b489ae5
[12.x] Add schedule useCache example (#10273)
boserup Mar 22, 2025
a7e90ce
[12.x] Add `DatabaseTokenRepository` constructor signature update to …
jnoordsij Mar 22, 2025
379d9a5
[12.x] Cache Event List with Cache Flush and Missed Events (#10278)
tech-wolf-tw Mar 24, 2025
53a68fe
Improve `Collection::reduce` docs (#10282)
timacdonald Mar 27, 2025
cdcd3ca
Fix docs - pessimistic locking SQL (#10280)
nevstas Mar 27, 2025
9a51f36
docs: parameter is `$escape`, not `$escaped` (#10287)
danjohnson95 Mar 28, 2025
02192ad
Missing semi-colon (#10288)
AhmedAlaa4611 Mar 29, 2025
7e4adca
arr sole
taylorotwell Mar 29, 2025
3c910b6
as conditions
taylorotwell Mar 29, 2025
5e9ae53
assert doesnt throw
taylorotwell Mar 29, 2025
4c0e15c
Document the new `Migration::shouldRun()` feature (#10277)
inmanturbo Mar 29, 2025
fe846c6
Add missing imports in migration example (#10291)
AhmedAlaa4611 Mar 30, 2025
0a322f9
Remove unnecessary `once` (#10290)
jasonmccreary Mar 30, 2025
4fa8bb8
Ensure consistent formatting (#10293)
AhmedAlaa4611 Mar 31, 2025
ac72220
Correct remaining reference (#10294)
jasonmccreary Mar 31, 2025
6c86517
Remove Laravel Website, no github repo found (#10292)
ankitpsk Mar 31, 2025
1de335b
document new scopes
taylorotwell Mar 31, 2025
d8ade08
Add \Illuminate\Database\Schema\Blueprint changed constructor signatu…
restuff Apr 1, 2025
038d72d
Fix invalid JSON syntax (#10298)
AhmedAlaa4611 Apr 1, 2025
fd18bf0
[12.x] Add link to Laravel Tinker GitHub repository (#10299)
AhmedAlaa4611 Apr 1, 2025
902aaf9
Update Symfony documentation link to the latest maintained version (#…
AhmedAlaa4611 Apr 1, 2025
c22c311
update docs
taylorotwell Apr 3, 2025
7d1df16
[12.x] Nullsafe operator (#10304)
AhmedAlaa4611 Apr 3, 2025
ffb08b0
change "directory" to "file" in broadcasting configuration descriptio…
axdemelas Apr 4, 2025
c4f646c
Fix : Formatting markdown in blade.md (#10307)
AlainCis Apr 4, 2025
e22c77d
[12.x] Add support for Redis Unix socket connections with PhpRedis (#…
dansleboby Apr 4, 2025
1660ca3
Fix link formatting (#10309)
AhmedAlaa4611 Apr 4, 2025
de0cc80
Fix link formatting (#10310)
AhmedAlaa4611 Apr 5, 2025
29d8413
Use single quotes for string consistency (#10312)
AhmedAlaa4611 Apr 7, 2025
f81d2de
Improve consistency in countBy method description (#10313)
AhmedAlaa4611 Apr 7, 2025
61ea2b9
[12.x] Document `tap` and `pipe` methods on the query builder (#10303)
timacdonald Apr 7, 2025
3d9881a
Fix implode method examples to show actual return values (#10314)
AhmedAlaa4611 Apr 7, 2025
2e1efb9
Update Paginator / LengthAwarePaginator Instance Methods Table (#10317)
bennettblack Apr 8, 2025
89f67d3
[12.x] Document `fromJson` method on `collections` docs (#10316)
AhmedAlaa4611 Apr 8, 2025
217229a
document failed request
taylorotwell Apr 8, 2025
72904db
document whereAttachedTo
taylorotwell Apr 8, 2025
7457dd7
document any of
taylorotwell Apr 8, 2025
320e310
document auto discovery of resources
taylorotwell Apr 8, 2025
0b78bb4
automatic eager loading
taylorotwell Apr 8, 2025
b6829f9
remove bold
taylorotwell Apr 9, 2025
a8d4db9
Update queries.md (#10320)
sfolador Apr 9, 2025
52e15bd
Fixes missing `return` type
nunomaduro Apr 9, 2025
a77d8e7
Replace `die` with `dd` (#10322)
osbre Apr 10, 2025
47fed28
wip
taylorotwell Apr 10, 2025
9f8f242
fixed the incorrect output in scope context example (#10323)
MrPunyapal Apr 11, 2025
e98ac6b
[12.x] Document the optional argument on database transactions (#10321)
AhmedAlaa4611 Apr 15, 2025
cec5ac6
[12.x] Updating `packages.md` (#10329)
devajmeireles Apr 15, 2025
da87313
Update notifications.md (#10328)
zepfietje Apr 15, 2025
a3f5921
memo docs
taylorotwell Apr 15, 2025
694c3b5
wip
taylorotwell Apr 15, 2025
1c5372f
document uri
taylorotwell Apr 15, 2025
38c2a1a
wip
taylorotwell Apr 15, 2025
8576d22
wip
taylorotwell Apr 15, 2025
340d60f
wip
taylorotwell Apr 16, 2025
4fb3d91
document uri helper
taylorotwell Apr 16, 2025
faa5d5c
Adds Return Type to ```toSearchableArray``` method (#10332)
Dipesh79 Apr 18, 2025
f25d00a
Use consistent Blade syntax highlighting for @use directive examples …
AhmedAlaa4611 Apr 21, 2025
0adcedc
Added documentation for `spellOrdinal` in Number Facade (#10338)
achyutkneupane Apr 21, 2025
0ca1cfe
make it more clear what is happening with email RFC validation (#10340)
tanerkay Apr 22, 2025
6fdbe31
Correct a small formatting issue (#10339)
AhmedAlaa4611 Apr 22, 2025
45d6ce9
feat: [12.x] Prohibited If Declined and Prohibited If Accepted valida…
osama-98 Apr 22, 2025
4d09ace
[12.x] Group imports in Blade `@use` directive (#10333)
osbre Apr 22, 2025
9ec5d7e
Adds `AsColection::map()` section (#10327)
DarkGhostHunter Apr 22, 2025
1615524
[12.x] clarify how to "set" value objects with custom casts (#10342)
browner12 Apr 23, 2025
0bcc79f
prefix casts with "As" (#10343)
browner12 Apr 23, 2025
509ebaa
add fluent uri docs to url page
taylorotwell Apr 23, 2025
5ad225c
Merge branch '12.x' into AB-cache-password-resets
browner12 Apr 23, 2025
67a890f
use multiline parameters for casting methods (#10345)
browner12 Apr 23, 2025
a6d36e8
[12.x] document change in Eloquent Collection partition behavior (#10…
browner12 Apr 23, 2025
e128e9d
Closing missing php tag (#10347)
devajmeireles Apr 24, 2025
294f7d8
Update notifications.md (#10346)
bhanwarpsrathore Apr 24, 2025
b3927f9
Correct the URI documentation link (#10348)
AhmedAlaa4611 Apr 24, 2025
da16b49
Documents changes in https://github.com/laravel/sanctum/pull/564 (#10…
denjaland Apr 25, 2025
014ef3e
[12.x] Documenting the Uri pathSegments() method (#10349)
AhmedAlaa4611 Apr 25, 2025
f9f6b6f
Grammatical fix in scout.md (#10356)
BhSimon Apr 28, 2025
16bb3a1
Add default connect timeout (10 seconds) to HTTP client documentation…
KentarouTakeda Apr 28, 2025
13a0af1
Fix invalid useCache() example (#10359)
mortenscheel Apr 29, 2025
ce64f20
Add missing namespace declaration to event example (#10351)
AhmedAlaa4611 Apr 29, 2025
5c9e034
Fix typo in interface name (#10360)
AhmedAlaa4611 Apr 29, 2025
b81e485
[12.x] Typed getters for Arr helper (docs) (#10354)
tibbsa Apr 29, 2025
019e51a
[12.x] Add documentation on `@use` directive modifiers (#10361)
rodolfosrg Apr 29, 2025
7ee2ca4
Fix missing text import (#10362)
AhmedAlaa4611 Apr 30, 2025
b277950
Add missing codeblock start (#10363)
thinkverse Apr 30, 2025
41efa02
Minor fix to the AsCollection Option example (#10365)
DarkGhostHunter Apr 30, 2025
9600822
Fix link formatting (#10366)
AhmedAlaa4611 May 1, 2025
1b47551
[12.x] Passport 13.x (#9819)
hafezdivandari May 1, 2025
8f2988f
Query builder first mention (#10368)
BhSimon May 2, 2025
9aa2459
Fix Number::pairs example to reflect actual behavior (#10367)
AhmedAlaa4611 May 2, 2025
1aed93e
Fix typo in validation.md (#10371)
seanmckenzie428 May 5, 2025
78402eb
Update middleware.md (#10372)
milwad-dev May 5, 2025
226ee95
Clarify collapse method behavior (#10370)
AhmedAlaa4611 May 5, 2025
cc12f82
valet: add cloudflared option (#10375)
PrestaEdit May 7, 2025
14d1cfa
[12.x] for consistency, standardize on american English (#10376)
roshandelpoor May 7, 2025
1ecc781
Add Exceptions FQN use (#10378)
trippo May 7, 2025
bcdceca
add redirect back
taylorotwell May 7, 2025
d988d32
[12.x] Document releaseAfter method (#10379)
adamjgriffith May 7, 2025
894cbdc
name queued closures:
taylorotwell May 7, 2025
88c3f8c
[12.x] Add docs about using 'exists' rule on array (#10374)
DeffiDeffi May 7, 2025
07ca01f
formatting
taylorotwell May 7, 2025
bfab8a7
document useStream
taylorotwell May 7, 2025
2708073
remove save
taylorotwell May 7, 2025
00574e6
update hook
taylorotwell May 7, 2025
14281cf
Update undocumented precision in documentation (#10381)
DCrepper May 8, 2025
68bde93
[12.x] Update broadcasting documentation to include Laravel Reverb as…
amir-astarabadi May 9, 2025
10142b5
Fix typo in when method argument type (#10383)
AhmedAlaa4611 May 9, 2025
8469fea
Update eloquent.md (#10385)
JohnnyWalkerDigital May 9, 2025
3ffdd08
Clarify unless method usage in collections docs (#10386)
AhmedAlaa4611 May 10, 2025
6b58563
Missing semi-colon (#10387)
AhmedAlaa4611 May 10, 2025
e9431f6
Updating the docs to reflect the actual generated comment (#10390)
AhmedAlaa4611 May 11, 2025
f233f7f
fixed wrong explanation of whereDoesntHave (#10391)
Toylycker May 11, 2025
1eb8905
wip
taylorotwell May 13, 2025
3a19b52
[12.x] Add `except` method in Context (#10388)
milwad-dev May 13, 2025
16dab2b
[12.x] Add `Arr::from()` to helpers (#10394)
milwad-dev May 13, 2025
49026a9
initial work on use-echo (#10395)
taylorotwell May 13, 2025
c10b7f7
fix typo in broadcasting.md (#10398)
plakhin May 13, 2025
ec7bd94
Update collections.md (#10396)
milwad-dev May 13, 2025
14e9dae
Fix typo in broadcasting.md (#10401)
AhmedAlaa4611 May 15, 2025
d26770d
Add Missing Type Hints (#10402)
AhmedAlaa4611 May 15, 2025
fab57b4
Add Missing Type Hints (#10403)
AhmedAlaa4611 May 15, 2025
81412ad
[12.x] Clarify retryUntil() precedence over tries in queue jobs (#10404)
amirhshokri May 15, 2025
87d26fb
[12.x] Add `deleteWhen` method in job middleware (#10400)
milwad-dev May 15, 2025
ae9a6f5
Add exceptHidden method in Context (#10405)
AhmedAlaa4611 May 16, 2025
69cdca1
Add Example for importing PHP constants in blade (#10413)
AhmedAlaa4611 May 19, 2025
d9a7fc9
Fix incorrect PHP code (#10410)
AhmedAlaa4611 May 19, 2025
d529394
[12.x] Add a default value to the `enum` method (#10412)
AhmedAlaa4611 May 19, 2025
a08fd47
Add missingHidden method in Context (#10411)
AhmedAlaa4611 May 19, 2025
60ecc14
Fix spacing inconsistency before ellipsis in event comments (#10409)
AhmedAlaa4611 May 19, 2025
3c0bfd3
Fix hyphenation of closure-based for grammatical correctness and cons…
AhmedAlaa4611 May 19, 2025
3492a01
[12.x] Add `assertClientError` method to http-tests (#10416)
shane-zeng May 19, 2025
6d3e2bd
wip
taylorotwell May 19, 2025
6d3a4a8
[12.x] reorder assertions alphabetically (#10417)
shane-zeng May 19, 2025
4bb6103
Update queues.md (#10418)
amirhshokri May 20, 2025
326c234
wip
taylorotwell May 20, 2025
2494366
wip
taylorotwell May 20, 2025
5e6d0c2
wip
taylorotwell May 20, 2025
8882e41
Use Stream Docs (#10420)
taylorotwell May 22, 2025
3d227ed
Update default node version installed by laravel/sail (#10429)
gigabites19 May 22, 2025
b5bc9a4
Clarify retryUntil() precedence over tries (#10427)
AhmedAlaa4611 May 22, 2025
ca629f9
Is the defer function still in beta? (#10426)
AhmedAlaa4611 May 22, 2025
9995b1a
Is the Concurrency facade still in beta? (#10424)
AhmedAlaa4611 May 22, 2025
518e070
Update the output of `dd` and `dump` methods (#10422)
AhmedAlaa4611 May 22, 2025
c5f1f47
[12.x] Clarify where the code should be placed (#10423)
AhmedAlaa4611 May 22, 2025
eac0713
Remove outdated upgrade note from Laravel 12 docs (#10434)
AhmedAlaa4611 May 23, 2025
a15a638
Remove outdated upgrade note from Laravel 12 docs (#10433)
AhmedAlaa4611 May 23, 2025
3d31241
Format the code with Pint (#10431)
AhmedAlaa4611 May 23, 2025
cdcc447
[12.x] Update version support table (#10435)
AhmedAlaa4611 May 23, 2025
b8f6edf
Clarify behavior of pop method when the collection is empty (#10436)
AhmedAlaa4611 May 23, 2025
93c218d
Should we remove Lumen from the docks? (#10449)
AhmedAlaa4611 May 26, 2025
94f0484
Fix typo in artisan.md (#10446)
AhmedAlaa4611 May 26, 2025
e565e29
Use environment variable (#10444)
AhmedAlaa4611 May 26, 2025
5dbcf7a
Improve clarity in event subscriber docs (#10443)
AhmedAlaa4611 May 26, 2025
0f91abc
Refine replaceRecursive method description for consistency (#10442)
AhmedAlaa4611 May 26, 2025
00a4c0f
[12.x] Add `Arr::hasAll` method to helpers (#10441)
milwad-dev May 26, 2025
10ca661
[12.x] Update Passport documentation (#10439)
hafezdivandari May 26, 2025
d62aa21
Improving the return type annotation (#10453)
AhmedAlaa4611 May 27, 2025
17a8364
Fix capitalization of proper names and nouns (#10451)
AhmedAlaa4611 May 27, 2025
cdd572d
[12.x] Clarify custom Artisan command discovery outside default direc…
AhmedAlaa4611 May 27, 2025
749f980
Add array method in Request (#10452)
AhmedAlaa4611 May 27, 2025
fef99d7
Update Passport documentation (#10450)
AhmedAlaa4611 May 27, 2025
f25bb47
wip
taylorotwell May 27, 2025
0272b78
wip
taylorotwell May 27, 2025
8c05067
[12.x] Add documentation for "Rule::contains" (#10457)
stevebauman May 27, 2025
b83932c
fix: broken code block (#10465)
calebdw Jun 2, 2025
9078091
wip
taylorotwell Jun 3, 2025
3dbdf17
wip
taylorotwell Jun 3, 2025
415a22a
Update responses.md to make easier for new users to use stream packag…
csanda87 Jun 4, 2025
d37c75d
wip
taylorotwell Jun 4, 2025
8f8374f
useEchoNotification (#10467)
joetannenbaum Jun 4, 2025
0ef7bdd
Add `Str::match` and `Str::matchAll` to 'Strings' (#10468)
CasEbb Jun 4, 2025
918c798
Avoid class name conflict (#10470)
AhmedAlaa4611 Jun 5, 2025
27538cc
Reorder Attribute casting (#10469)
AhmedAlaa4611 Jun 5, 2025
86b5677
Fix hyphenation of `date-based` for grammatical correctness (#10472)
AhmedAlaa4611 Jun 5, 2025
c20a50a
wip
taylorotwell Jun 5, 2025
09555e5
Fix typo in Homestead deprecation notice (#10474)
AhmedAlaa4611 Jun 5, 2025
be2562c
[12.x] Refines wording related to Isolatable commands (#10475)
AhmedAlaa4611 Jun 6, 2025
daa0516
[12.x] Add hash method to strings (#10471)
AhmedAlaa4611 Jun 6, 2025
e38f844
Improve clarity in Isolatable commands (#10479)
AhmedAlaa4611 Jun 6, 2025
50a8281
Add assertCount() and component() to Laravel Dusk docs (#10477)
ktsm-th Jun 6, 2025
6ca6c36
[12.x] Fix incorrect usage of `Str::replace` missing `$subject` argum…
AhmedAlaa4611 Jun 6, 2025
25deab3
Format middleware tables (#10482)
AhmedAlaa4611 Jun 9, 2025
ef33600
[12.x] Add missing import for RetryException in retry helper example …
AhmedAlaa4611 Jun 9, 2025
7560640
Update queries.md (#10463)
milwad-dev Jun 9, 2025
dcd1372
[12.x] Add decrypt and encrypt methods to strings (#10487)
AhmedAlaa4611 Jun 9, 2025
ee8f280
[12.x] Format remaining tables (#10488)
AhmedAlaa4611 Jun 9, 2025
11cbd00
Remove outdated upgrade note from Laravel 12 docs (#10494)
AhmedAlaa4611 Jun 10, 2025
1a9e4f4
Fix punctuation (#10492)
AhmedAlaa4611 Jun 10, 2025
e5abed8
[12.x] Fix hyphenation of class-based for grammatical correctness and…
AhmedAlaa4611 Jun 10, 2025
3414ff9
Add hidden to the Context attribute in Container (#10495)
AhmedAlaa4611 Jun 10, 2025
99226be
[12.x] Add make:job-middleware command to queue docs (#10490)
amirhshokri Jun 10, 2025
4af37a7
should rescue
taylorotwell Jun 10, 2025
58eb4b9
wip
taylorotwell Jun 10, 2025
85d59fb
wip
taylorotwell Jun 10, 2025
5070d92
document compare
taylorotwell Jun 10, 2025
a40ff70
Correction in eloquent-mutators.md Comparing Cast Values (#10497)
SanderSander Jun 11, 2025
a51a037
add proper links (#10496)
amirhshokri Jun 11, 2025
4b84243
Fix typo (#10502)
afoster Jun 16, 2025
66eb725
[12.x] Clarify and align storage drivers list (#10503)
AhmedAlaa4611 Jun 16, 2025
c60625a
[12.x] Add `php artisan horizon:clear-metrics` command (#10504)
firebed Jun 16, 2025
3e29093
Update eloquent-mutators.md (#10506)
milwad-dev Jun 17, 2025
3432dc8
Added Passport import to "Overriding Default Models" (#10505)
CedzyC Jun 17, 2025
118eb19
wip
taylorotwell Jun 17, 2025
013514a
Clarify the behavior of collapseWithKeys method (#10501)
AhmedAlaa4611 Jun 17, 2025
7656ab8
[12.x] `FailOnException` middleware (#10508)
cosmastech Jun 17, 2025
2db745c
Missing semi-colon (#10509)
AhmedAlaa4611 Jun 17, 2025
35f64d3
Update queues.md (#10512)
AhmedAlaa4611 Jun 18, 2025
f4b76d3
Update queues.md (#10510)
cosmastech Jun 18, 2025
b398efb
Clarify env() behavior after config caching (#10513)
mohsinaliryk Jun 18, 2025
a9716c3
Add documentation for fromBase64() (#10514)
J87NL Jun 18, 2025
f0dd01f
Improve consistency and clarity in Filesystem Directories (#10515)
AhmedAlaa4611 Jun 19, 2025
6e30e28
Merge branch '12.x' into AB-cache-password-resets
browner12 Jun 20, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
708 changes: 411 additions & 297 deletions artisan.md

Large diffs are not rendered by default.

682 changes: 381 additions & 301 deletions authentication.md

Large diffs are not rendered by default.

736 changes: 410 additions & 326 deletions authorization.md

Large diffs are not rendered by default.

1,882 changes: 1,114 additions & 768 deletions billing.md

Large diffs are not rendered by default.

515 changes: 299 additions & 216 deletions blade.md

Large diffs are not rendered by default.

1,043 changes: 769 additions & 274 deletions broadcasting.md

Large diffs are not rendered by default.

448 changes: 284 additions & 164 deletions cache.md

Large diffs are not rendered by default.

1,035 changes: 605 additions & 430 deletions cashier-paddle.md

Large diffs are not rendered by default.

3,732 changes: 2,094 additions & 1,638 deletions collections.md

Large diffs are not rendered by default.

32 changes: 3 additions & 29 deletions concurrency.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,44 +7,18 @@
<a name="introduction"></a>
## Introduction

> [!WARNING]
> Laravel's `Concurrency` facade is currently in beta while we gather community feedback.

Sometimes you may need to execute several slow tasks which do not depend on one another. In many cases, significant performance improvements can be realized by executing the tasks concurrently. Laravel's `Concurrency` facade provides a simple, convenient API for executing closures concurrently.

<a name="concurrency-compatibility"></a>
#### Concurrency Compatibility

If you upgraded to Laravel 11.x from a Laravel 10.x application, you may need to add the `ConcurrencyServiceProvider` to the `providers` array in your application's `config/app.php` configuration file:

```php
'providers' => ServiceProvider::defaultProviders()->merge([
/*
* Package Service Providers...
*/
Illuminate\Concurrency\ConcurrencyServiceProvider::class, // [tl! add]

/*
* Application Service Providers...
*/
App\Providers\AppServiceProvider::class,
App\Providers\AuthServiceProvider::class,
// App\Providers\BroadcastServiceProvider::class,
App\Providers\EventServiceProvider::class,
App\Providers\RouteServiceProvider::class,
])->toArray(),
```

<a name="how-it-works"></a>
#### How it Works

Laravel achieves concurrency by serializing the given closures and dispatching them to a hidden Artisan CLI command, which unserializes the closures and invokes it within its own PHP process. After the closure has been invoked, the resulting value is serialized back to the parent process.

The `Concurrency` facade supports three drivers: `process` (the default), `fork`, and `sync`.
The `Concurrency` facade supports three drivers: `process` (the default), `fork`, and `sync`.

The `fork` driver offers improved performance compared to the default `process` driver, but it may only be used within PHP's CLI context, as PHP does not support forking during web requests. Before using the `fork` driver, you need to install the `spatie/fork` package:

```bash
```shell
composer require spatie/fork
```

Expand Down Expand Up @@ -73,7 +47,7 @@ $results = Concurrency::driver('fork')->run(...);

Or, to change the default concurrency driver, you should publish the `concurrency` configuration file via the `config:publish` Artisan command and update the `default` option within the file:

```bash
```shell
php artisan config:publish concurrency
```

Expand Down
70 changes: 41 additions & 29 deletions configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Laravel's default `.env` file contains some common configuration values that may

If you are developing with a team, you may wish to continue including and updating the `.env.example` file with your application. By putting placeholder values in the example configuration file, other developers on your team can clearly see which environment variables are needed to run your application.

> [!NOTE]
> [!NOTE]
> Any variable in your `.env` file can be overridden by external environment variables such as server-level or system-level environment variables.

<a name="environment-file-security"></a>
Expand Down Expand Up @@ -97,7 +97,9 @@ APP_NAME="My Application"

All of the variables listed in the `.env` file will be loaded into the `$_ENV` PHP super-global when your application receives a request. However, you may use the `env` function to retrieve values from these variables in your configuration files. In fact, if you review the Laravel configuration files, you will notice many of the options are already using this function:

'debug' => env('APP_DEBUG', false),
```php
'debug' => env('APP_DEBUG', false),
```

The second value passed to the `env` function is the "default value". This value will be returned if no environment variable exists for the given key.

Expand All @@ -106,21 +108,25 @@ The second value passed to the `env` function is the "default value". This value

The current application environment is determined via the `APP_ENV` variable from your `.env` file. You may access this value via the `environment` method on the `App` [facade](/docs/{{version}}/facades):

use Illuminate\Support\Facades\App;
```php
use Illuminate\Support\Facades\App;

$environment = App::environment();
$environment = App::environment();
```

You may also pass arguments to the `environment` method to determine if the environment matches a given value. The method will return `true` if the environment matches any of the given values:

if (App::environment('local')) {
// The environment is local
}
```php
if (App::environment('local')) {
// The environment is local
}

if (App::environment(['local', 'staging'])) {
// The environment is either local OR staging...
}
if (App::environment(['local', 'staging'])) {
// The environment is either local OR staging...
}
```

> [!NOTE]
> [!NOTE]
> The current application environment detection can be overridden by defining a server-level `APP_ENV` environment variable.

<a name="encrypting-environment-files"></a>
Expand All @@ -143,7 +149,7 @@ Running the `env:encrypt` command will encrypt your `.env` file and place the en
php artisan env:encrypt --key=3UVsEgGVK36XN82KKeyLFMhvosbZN1aF
```

> [!NOTE]
> [!NOTE]
> The length of the key provided should match the key length required by the encryption cipher being used. By default, Laravel will use the `AES-256-CBC` cipher which requires a 32 character key. You are free to use any cipher supported by Laravel's [encrypter](/docs/{{version}}/encryption) by passing the `--cipher` option when invoking the command.

If your application has multiple environment files, such as `.env` and `.env.staging`, you may specify the environment file that should be encrypted by providing the environment name via the `--env` option:
Expand Down Expand Up @@ -192,28 +198,34 @@ php artisan env:decrypt --force

You may easily access your configuration values using the `Config` facade or global `config` function from anywhere in your application. The configuration values may be accessed using "dot" syntax, which includes the name of the file and option you wish to access. A default value may also be specified and will be returned if the configuration option does not exist:

use Illuminate\Support\Facades\Config;
```php
use Illuminate\Support\Facades\Config;

$value = Config::get('app.timezone');
$value = Config::get('app.timezone');

$value = config('app.timezone');
$value = config('app.timezone');

// Retrieve a default value if the configuration value does not exist...
$value = config('app.timezone', 'Asia/Seoul');
// Retrieve a default value if the configuration value does not exist...
$value = config('app.timezone', 'Asia/Seoul');
```

To set configuration values at runtime, you may invoke the `Config` facade's `set` method or pass an array to the `config` function:

Config::set('app.timezone', 'America/Chicago');
```php
Config::set('app.timezone', 'America/Chicago');

config(['app.timezone' => 'America/Chicago']);
config(['app.timezone' => 'America/Chicago']);
```

To assist with static analysis, the `Config` facade also provides typed configuration retrieval methods. If the retrieved configuration value does not match the expected type, an exception will be thrown:

Config::string('config-key');
Config::integer('config-key');
Config::float('config-key');
Config::boolean('config-key');
Config::array('config-key');
```php
Config::string('config-key');
Config::integer('config-key');
Config::float('config-key');
Config::boolean('config-key');
Config::array('config-key');
```

<a name="configuration-caching"></a>
## Configuration Caching
Expand All @@ -232,7 +244,7 @@ The `config:clear` command may be used to purge the cached configuration:
php artisan config:clear
```

> [!WARNING]
> [!WARNING]
> If you execute the `config:cache` command during your deployment process, you should be sure that you are only calling the `env` function from within your configuration files. Once the configuration has been cached, the `.env` file will not be loaded; therefore, the `env` function will only return external, system level environment variables.

<a name="configuration-publishing"></a>
Expand All @@ -253,7 +265,7 @@ php artisan config:publish --all

The `debug` option in your `config/app.php` configuration file determines how much information about an error is actually displayed to the user. By default, this option is set to respect the value of the `APP_DEBUG` environment variable, which is stored in your `.env` file.

> [!WARNING]
> [!WARNING]
> For local development, you should set the `APP_DEBUG` environment variable to `true`. **In your production environment, this value should always be `false`. If the variable is set to `true` in production, you risk exposing sensitive configuration values to your application's end users.**

<a name="maintenance-mode"></a>
Expand Down Expand Up @@ -302,7 +314,7 @@ php artisan down --with-secret

When accessing this hidden route, you will then be redirected to the `/` route of the application. Once the cookie has been issued to your browser, you will be able to browse the application normally as if it was not in maintenance mode.

> [!NOTE]
> [!NOTE]
> Your maintenance mode secret should typically consist of alpha-numeric characters and, optionally, dashes. You should avoid using characters that have special meaning in URLs such as `?` or `&`.

<a name="maintenance-mode-on-multiple-servers"></a>
Expand Down Expand Up @@ -346,7 +358,7 @@ To disable maintenance mode, use the `up` command:
php artisan up
```

> [!NOTE]
> [!NOTE]
> You may customize the default maintenance mode template by defining your own template at `resources/views/errors/503.blade.php`.

<a name="maintenance-mode-queues"></a>
Expand All @@ -357,4 +369,4 @@ While your application is in maintenance mode, no [queued jobs](/docs/{{version}
<a name="alternatives-to-maintenance-mode"></a>
#### Alternatives to Maintenance Mode

Since maintenance mode requires your application to have several seconds of downtime, consider alternatives like [Laravel Vapor](https://vapor.laravel.com) and [Envoyer](https://envoyer.io) to accomplish zero-downtime deployment with Laravel.
Since maintenance mode requires your application to have several seconds of downtime, consider running your applications on a fully-managed platform like [Laravel Cloud](https://cloud.laravel.com) to accomplish zero-downtime deployment with Laravel.
64 changes: 37 additions & 27 deletions console-tests.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,30 +33,36 @@ public function test_console_command(): void

You may use the `assertNotExitCode` method to assert that the command did not exit with a given exit code:

$this->artisan('inspire')->assertNotExitCode(1);
```php
$this->artisan('inspire')->assertNotExitCode(1);
```

Of course, all terminal commands typically exit with a status code of `0` when they are successful and a non-zero exit code when they are not successful. Therefore, for convenience, you may utilize the `assertSuccessful` and `assertFailed` assertions to assert that a given command exited with a successful exit code or not:

$this->artisan('inspire')->assertSuccessful();
```php
$this->artisan('inspire')->assertSuccessful();

$this->artisan('inspire')->assertFailed();
$this->artisan('inspire')->assertFailed();
```

<a name="input-output-expectations"></a>
## Input / Output Expectations

Laravel allows you to easily "mock" user input for your console commands using the `expectsQuestion` method. In addition, you may specify the exit code and text that you expect to be output by the console command using the `assertExitCode` and `expectsOutput` methods. For example, consider the following console command:

Artisan::command('question', function () {
$name = $this->ask('What is your name?');
```php
Artisan::command('question', function () {
$name = $this->ask('What is your name?');

$language = $this->choice('Which language do you prefer?', [
'PHP',
'Ruby',
'Python',
]);
$language = $this->choice('Which language do you prefer?', [
'PHP',
'Ruby',
'Python',
]);

$this->line('Your name is '.$name.' and you prefer '.$language.'.');
});
$this->line('Your name is '.$name.' and you prefer '.$language.'.');
});
```

You may test this command with the following test:

Expand Down Expand Up @@ -133,8 +139,8 @@ test('console command', function () {
public function test_console_command(): void
{
$this->artisan('example')
->doesntExpectOutput()
->assertExitCode(0);
->doesntExpectOutput()
->assertExitCode(0);
}
```

Expand All @@ -155,8 +161,8 @@ test('console command', function () {
public function test_console_command(): void
{
$this->artisan('example')
->expectsOutputToContain('Taylor')
->assertExitCode(0);
->expectsOutputToContain('Taylor')
->assertExitCode(0);
}
```

Expand All @@ -165,23 +171,27 @@ public function test_console_command(): void

When writing a command which expects confirmation in the form of a "yes" or "no" answer, you may utilize the `expectsConfirmation` method:

$this->artisan('module:import')
->expectsConfirmation('Do you really wish to run this command?', 'no')
->assertExitCode(1);
```php
$this->artisan('module:import')
->expectsConfirmation('Do you really wish to run this command?', 'no')
->assertExitCode(1);
```

<a name="table-expectations"></a>
#### Table Expectations

If your command displays a table of information using Artisan's `table` method, it can be cumbersome to write output expectations for the entire table. Instead, you may use the `expectsTable` method. This method accepts the table's headers as its first argument and the table's data as its second argument:

$this->artisan('users:all')
->expectsTable([
'ID',
'Email',
], [
[1, '[email protected]'],
[2, '[email protected]'],
]);
```php
$this->artisan('users:all')
->expectsTable([
'ID',
'Email',
], [
[1, '[email protected]'],
[2, '[email protected]'],
]);
```

<a name="console-events"></a>
## Console Events
Expand Down
Loading