Laravel 13.16.0 업데이트
릴리스: 2026년 6월 17일
평가: 2026년 8월 28일
13.16.0은 마이너 릴리스로 대부분 버그 수정, 반환 타입 개선, 신규 편의 기능 추가로 구성되어 있습니다. 다만 예약 명령어 실행 시 셸 인용(quoting) 버그 수정과 HTTP 클라이언트 직렬화 하드닝은 실제 동작에 영향을 줄 수 있어 확인이 필요합니다. 기존 공개 API를 깨는 변경은 명시되어 있지 않습니다.
패키지 관리자가 확인할 것
- Http (illuminate/http)위험도 보통
"Harden HTTP client request and fake response serialization" (PR #60522) 변경으로 HTTP 클라이언트 요청/Fake 응답의 직렬화 방식이 강화되었습니다. Http::fake() 및 요청 직렬화에 의존하는 테스트나 로깅 코드가 있다면 동작 확인이 필요합니다.
대응 체크리스트
- 예약 작업(Schedule)에서 다른 사용자로 명령 실행 시 동작 확인가까운 시일
PR #60469에서 예약된 명령어를 다른 사용자로 실행할 때 셸 인용 처리 버그가 수정되었습니다. `Schedule::command(...)->user(...)` 등을 사용 중이라면 실제 실행되는 셸 명령을 다시 확인하세요.
- HTTP 클라이언트 직렬화 관련 코드 점검선택
PR #60522의 하드닝 변경이 Http::fake() 응답이나 요청 직렬화 결과에 의존하는 로직에 영향을 줄 수 있는지 테스트 스위트로 확인하세요.
- artisan dev 명령어 도입 검토선택
PR #60412로 새로운 `artisan dev` 명령이 추가되었습니다. 로컬 개발 워크플로우 개선에 활용할 수 있는지 확인해보세요.
자동 생성상세 평가
요약
13.16.0은 마이너 릴리스로, 대부분 반환 타입 개선, 문서 보강, 소규모 버그 수정 및 편의 기능 추가로 구성되어 있습니다. 공개 API를 깨뜨리는 변경은 릴리스 노트에 명시되어 있지 않습니다.
주요 변경
- 예약 명령을 다른 사용자로 실행할 때 셸 인용(quoting) 오류 수정 (#60469)
- HTTP 클라이언트 요청 및 Fake 응답 직렬화 하드닝 (#60522)
broadcastAs에서 enum 지원 추가 (#60483)InteractsWithData에whenFilledEnum메서드 추가 (#60486)- 병렬 테스트를 위한
array유지보수 모드 드라이버 추가 (#60489, #60490) ResponseTrait에withCookies메서드 추가 (#60503)Batchable::batching이 완료된 배치에 대해 잘못 동작하던 버그 수정 (#60511)- Queue 속성(attribute)을 trait에서도 지원하도록 개선 (#60519)
- 신규
artisan dev명령 추가 (#60412) - JSON Schema deserializer에
anyOf지원 및 무제한$ref확장 방지 가드 추가 (#60509, #60517)
하위 호환성
릴리스 노트에서 기존 공개 API의 동작이 깨졌다고 명시한 항목은 없습니다. 다수는 반환 타입 어노테이션 개선(정적 분석 목적)이며 런타임 동작 변화는 아닙니다. 다만 셸 인용 수정과 HTTP 직렬화 하드닝은 내부 동작 방식이 바뀐 것이므로 엣지 케이스에서 차이가 있을 수 있습니다.
패키지 관리자가 확인할 것
- Http (illuminate/http): HTTP 클라이언트 요청/Fake 응답 직렬화 하드닝(#60522)이 해당 패키지의 HTTP 관련 테스트나 로깅에 영향을 주는지 확인하세요.
- 등록된 다른 패키지(Scout, Socialite, Inertia Laravel 등)에 직접 영향을 주는 변경은 릴리스 노트에서 확인되지 않았습니다.
대응 체크리스트
- 예약 작업 중
->user()로 다른 사용자 실행 명령이 있다면 실제 실행 셸 명령 재확인 -
Http::fake()또는 요청/응답 직렬화에 의존하는 테스트 재실행 -
Batchable사용 시 완료된 배치의batching()동작 재확인 (버그 수정 반영) - 필요 시 신규 기능(
whenFilledEnum,withCookies,array유지보수 드라이버,artisan dev) 도입 검토
GitHub 릴리스 노트를 근거로 언어 모델 (claude-sonnet-5)이 작성했으며, 사람이 검수하지 않았습니다. 실제 적용 전에는 공식 릴리스 노트와 업그레이드 가이드를 함께 확인하세요.
GitHub 원문 릴리스 노트 보기
- [13.x] Fix incorrect casing of StdClass in SupportHelpersTest by @Soean in https://github.com/laravel/framework/pull/60479
- [13.x] Fix shell quoting when scheduled commands run as another user by @igorlealantunes in https://github.com/laravel/framework/pull/60469
- [13.x] Improve return type for
Localizable::withLocale()by @axlon in https://github.com/laravel/framework/pull/60466 - [13.x] Allow RouteParameter to use the attributed parameter name by @SanderSander in https://github.com/laravel/framework/pull/60465
- [13.x] Adjust CHANGELOG.md by @jackbayliss in https://github.com/laravel/framework/pull/60464
- [13.x] Add generic to HasEvents::dispatchesEvents() return type by @dfinchenko in https://github.com/laravel/framework/pull/60463
- [13.x] Improve return types for model callback-scope helpers by @dfinchenko in https://github.com/laravel/framework/pull/60481
- [13.x] Support enum for broadcastAs by @alexbowers in https://github.com/laravel/framework/pull/60483
- [13.x] Improve return types for database connection callback wrappers by @dfinchenko in https://github.com/laravel/framework/pull/60484
- [13.x] Add
arraymaintenance mode driver for parallel testing by @ziadoz in https://github.com/laravel/framework/pull/60489 - [13.x] Add
whenFilledEnummethod toInteractsWithDataby @astandkaya in https://github.com/laravel/framework/pull/60486 - [13.x] Add array to supported maintainance mode drivers doc by @jackbayliss in https://github.com/laravel/framework/pull/60490
- Bump esbuild, @tailwindcss/vite and vite in /src/Illuminate/Foundation/resources/exceptions/renderer by @dependabot[bot] in https://github.com/laravel/framework/pull/60501
- Improve return types for the remaining callback-passthrough helpers by @dfinchenko in https://github.com/laravel/framework/pull/60500
- Bump shivammathur/setup-php from 2.37.1 to 2.37.2 in the github-actions group by @dependabot[bot] in https://github.com/laravel/framework/pull/60512
- [13.x] Add missing @throws \JsonException annotations by @dfinchenko in https://github.com/laravel/framework/pull/60514
- [13.x] Improve return types for callback-passthrough interfaces and helpers by @dfinchenko in https://github.com/laravel/framework/pull/60513
- Improve types of
InteractsWithData::whenEnumby @takaram in https://github.com/laravel/framework/pull/60507 - [13.x] Ensure hashtags are removed via release script by @jackbayliss in https://github.com/laravel/framework/pull/60505
- Add anyOf support to JSON schema by @dbpolito in https://github.com/laravel/framework/pull/60509
- [13.x] Fix
Batchable::batchingfor finished batches by @miladev95 in https://github.com/laravel/framework/pull/60511 - [13.x] Add
withCookiesmethod toResponseTraitby @Amirhf1 in https://github.com/laravel/framework/pull/60503 - Add
artisan devcommand by @joetannenbaum in https://github.com/laravel/framework/pull/60412 - [13.x] Add correct return type to FileHelpers extension method by @MatthieuFlaceliere in https://github.com/laravel/framework/pull/60515
- Guard JsonSchema deserializer against unbounded $ref expansion by @pushpak1300 in https://github.com/laravel/framework/pull/60517
- [13.x] Support Queue attributes on traits by @jackbayliss in https://github.com/laravel/framework/pull/60519
- [13.x] Harden HTTP client request and fake response serialization by @GrahamCampbell in https://github.com/laravel/framework/pull/60522