$ the-wire · showcase
Laravel 13 gets SQL Server DSNs and a path traversal fix
By RepoJournal · Filed · About Laravel
Laravel 13 ships native SQL Server DSN support, tackles a path traversal hole in Storage::path(), and puts Gemini attachments on the same footing as every other provider.
The framework finally speaks native PDO_SQLSRV DSN strings [1], so SQL Server shops can drop the URL translation dance. More urgent: Storage::path() could walk right out of the disk root to your .env [2], and that gap is now closed. On the AI side, Bedrock gets a reranking gateway [3] alongside Cohere and VoyageAI, and Gemini now inlines remote image, document, and audio attachments instead of bouncing off the Files API limit [4]. "this fetches the bytes and inlines them as base64 for the remote-URL image, document, and audio cases" [4]. Telescope is prepping for PHPStan 2 and Guzzle 8 [5][6] (the PHPStan 2 merge is already in [7]). OpenRouter's prompt token count no longer double-counts cached tokens [8][9], and seeder failures will restore your default connection instead of leaving it swapped [10]. Facade state after route:cache is also getting fixed [11], and a docs PR wants contributor-written pull request descriptions [12].
Action items
- → Patch Storage::path() path traversal in Laravel 13 before next deploy laravel/framework [immediate]
- → Review and test SQL Server DSN support in Laravel 13 laravel/framework [plan]
- → Test Gemini remote attachments with the new inline base64 handling laravel/ai [monitor]
References
- [1] [13.x] Support Microsoft SQL Server DSN connection strings ↗ laravel/framework
- [2] [13.x] Confine `Storage::path()` to the configured disk root ↗ laravel/framework
- [3] Added Bedrock Reranking Gateway ↗ laravel/ai
- [4] Fetch and inline remote image, document, and audio attachments for the Gemini provider ↗ laravel/ai
- [5] Supports PHPStan 2 ↗ laravel/telescope
- [6] Supports Guzzle 8 ↗ laravel/telescope
- [7] Supports PHPStan 2 (#1761) laravel/telescope
- [8] Correct OpenRouter Cache Token Accounting laravel/ai
- [9] Merge pull request #924 from sulimanbenhalim/fix/openrouter-cache-token-double-count laravel/ai
- [10] [13.x] Restore default database connection when seeding fails ↗ laravel/framework
- [11] [13.x] Restore the facade application after route:cache boots a fresh application ↗ laravel/framework
- [12] Require contributor-written pull request descriptions ↗ laravel/docs