Rilasciata Symfony 6.4.48 (Symfony Blog)
Symfony 6.4.48 è appena stata rilasciata.
Leggi la guida all'aggiornamento di Symfony per saperne di più su come aggiornare Symfony e utilizza i report di aggiornamento di SymfonyInsight per individuare il codice che dovrai modificare nel tuo progetto.
Suggerimento
Vuoi ricevere una notifica ogni volta che viene pubblicata una nuova release di Symfony? O quando una versione non è più mantenuta? O solo quando viene risolto un problema di sicurezza? Valuta di iscriverti alle Notifiche della Roadmap di Symfony.
- bug #66645 [AssetMapper] Ripulisci l'asset in fase di creazione quando un compilatore fallisce (@phcorp)
- bug #66182 [BrowserKit] Corretta l'analisi e la corrispondenza dei percorsi dei cookie (@X-Coder264, @nicolas-grekas)
- bug #66651 [Cache][FrameworkBundle] Metti in cache le espressioni analizzate degli attributi # (@nicolas-grekas)
- bug #66833 [Clock] Corretto DatePoint che risultava sfasato di un'ora quando il suo riferimento cade nell'ora del ritorno all'ora solare (@nicolas-grekas)
- bug #66831 [Clock] Corretto DatePoint che manteneva l'ora corrente del giorno per le date con una parte relativa (@nicolas-grekas)
- bug #66708 [Clock] Corretto new DatePoint() che risultava sfasato di un'ora durante l'ora del ritorno all'ora solare (@nicolas-grekas)
- bug #66707 [Clock] Corretto MockClock::sleep() con date precedenti al 1970 (@nicolas-grekas)
- bug #66676 [Console] Costruisci i listener di segnale lazy prima che un segnale possa interrompere un autoload (@nicolas-grekas)
- bug #66610 [Contracts][HttpClient] Salta i test che si basano su pause del server di 500ms su Windows (@nicolas-grekas)
- bug #66894 [DependencyInjection] Corretto l'ignorare i processori delle variabili d'ambiente dopo la risoluzione delle env var prima della compilazione (@nicolas-grekas)
- bug #66892 [DependencyInjection] Corretto il dump di stringhe come "50% of 100%" (@nicolas-grekas)
- bug #66743 [DependencyInjection] Rendi gli id dei servizi anonimi indipendenti dalla directory del progetto (@nicolas-grekas)
- bug #66738 [DependencyInjection] Rendi riproducibili gli id dei service locator (@nicolas-grekas)
- bug #66596 [DependencyInjection] Corretto il dump delle closure di callable "Class::method" (@nicolas-grekas)
- minor #66605 [DependencyInjection] Segnala le definizioni padre circolari prima che i compiler pass le attraversino (@nicolas-grekas)
- bug #66727 [ExpressionLanguage] Corrette le discrepanze tra espressioni valutate e compilate (@lyrixx)
- bug #66723 [ExpressionLanguage] Limita la profondità dell'albero dei nodi analizzato (@nicolas-grekas)
- bug #66720 [ExpressionLanguage] Corretto il livello di annidamento dei ternari concatenati (@lazerg)
- bug #66654 [ExpressionLanguage] Corretta la nuova valutazione di un'espressione analizzata dopo che un operatore null-safe l'ha interrotta (@nicolas-grekas)
- bug #66663 [Filesystem] Corretto touch() con timestamp zero (@ephpicman)
- minor #66903 [Form][Validator] Corrette le traduzioni in tagalog (tl) e alcuni refusi (@jcparucha)
- minor #66698 [Form][Validator] Revisione delle traduzioni in bulgaro (@DRaichev)
- minor #66648 [Form][Validator] Revisione delle traduzioni in greco (@angeliszotis)
- minor #66545 [Form][Security][Validator] Corrette le traduzioni in urdu (@nicolas-grekas)
- minor #66601 [Form][Validator] Revisione delle traduzioni in giapponese (@akine)
- minor #66518 [Form] Corrette le traduzioni in urdu (@Anwishazaman)
- minor #66525 [Form][Validator] Revisione delle traduzioni in turco (tr) (@mmustafasenoglu)
- minor #66488 [Form][Validator] Corretti i placeholder malformati nelle traduzioni (@nicolas-grekas)
- minor #66486 [Form][Validator] Revisione delle traduzioni in persiano (fa) (@amirreza-khaleghverdi)
- bug #66793 [FrameworkBundle] Corretto il crash "Cannot unset string offsets" nella configurazione dei workflow (@nicolas-grekas)
- bug #66633 [FrameworkBundle] Impedisci a Monolog di sovrascrivere php_errors.log: false (@lazerg)
- bug #66569 [FrameworkBundle] Non elencare gli alias dei servizi astratti in debug:autowiring (@nicolas-grekas)
- bug #66899 [HttpClient] Corretto RetryableHttpClient::withOptions() che modificava gli URI di base del client originale (@nicolas-grekas)
- bug #66468 [HttpClient] Limita il timeout passato a curl_multi_select() (@dylanpulver)
- bug #66694 [HttpFoundation] Non avvisare per chiavi di input della richiesta annidate troppo in profondità (@logosur)
- bug #66513 [HttpFoundation] Mantieni l'ID di sessione quando il session handler non riesce a leggere (@Firehed, @nicolas-grekas)
- bug #66491 [HttpFoundation] Corretto HeaderUtils::split() quando un separatore è un carattere di spazio bianco (@nicolas-grekas)
- bug #66883 [HttpKernel] Rilascia i servizi del container quando il kernel si arresta (@nicolas-grekas)
- bug #66826 [HttpKernel] Usa il clock per risolvere le date relative in DateTimeValueResolver (@nicolas-grekas)
- bug #66759 [HttpKernel] Non tracciare come memorizzate le risposte che HttpCache non può memorizzare (@nicolas-grekas)
- bug #66665 [HttpKernel] Corretto HttpCache che perdeva un output buffer quando un frammento ESI falliva (@nicolas-grekas)
- bug #66662 [HttpKernel] Corretto HttpCache che restituiva un 500 invece di un 503 per le voci ESI obsolete quando la cache è bloccata (@lyrixx)
- bug #66631 [HttpKernel] Rilascia il lock di build del container nel percorso di errore (@edefimov)
- bug #66604 [Lock] Corretto il rilascio automatico dopo una promozione o retrocessione fallita (@nicolas-grekas)
- bug #66600 [Lock] Corretto lo store PostgreSQL che perdeva traccia di un lock dopo una promozione o retrocessione fallita (@nicolas-grekas)
- bug #66597 [Lock] Corretto FlockStore che manteneva un handle chiuso dopo una promozione fallita (@nicolas-grekas)
- bug #66867 [Messenger] Instrada i retry AMQP a ritardo zero verso la coda originale (@dalerazimov)
- bug #66779 [Messenger] Fai in modo che i transport AMQP leggano solo le proprie code con --queues (@jkatruska)
- bug #66783 [Messenger][Amqp] Corretto il polling di una coda vuota conteggiato come messaggio in volo (@nicolas-grekas)
- bug #66628 [Messenger] Corretta la corrispondenza tra le conferme del publisher AMQP e il loro messaggio dopo un timeout (@nicolas-grekas)
- bug #66549 [Messenger] Corretto il transport Doctrine che mascherava i fallimenti di commit (@lazerg)
- bug #66541 [Messenger] Corretta la perdita di messaggi ritardati quando si ritenta il messaggio che li ha inviati (@nicolas-grekas)
- bug #66509 [Messenger] Rifiuta i messaggi decodificati che contengono stamp non inviabili e valida gli stamp delle envelope deserializzate (@nicolas-grekas)
- bug #66496 [Messenger] Corretto lo spostamento di un messaggio tra transport che usano formati di serializzazione diversi (@nicolas-grekas)
- bug #66480 [Messenger] Corretta la decodifica di un ValidationStamp che contiene un GroupSequence (@nicolas-grekas)
- bug #66478 [Messenger] Corretto il riconoscimento di un errore ripetuto quando il suo codice non mantiene il tipo in XML (@nicolas-grekas)
- bug #66479 [Messenger] Corretta la decodifica in XML di un ValidationStamp che ha un gruppo o nessuno (@nicolas-grekas)
- bug #66473 [Messenger] Corretta la decodifica in XML di un ErrorDetailsStamp che non ha una FlattenException (@nicolas-grekas)
- bug #66474 [Messenger] Trasforma qualsiasi errore sollevato durante la decodifica in una MessageDecodingFailedException (@nicolas-grekas)
- bug #66475 [Messenger] Non inviare i risultati dell'handler ai transport (@nicolas-grekas)
- bug #66463 [Messenger] Corretta la decodifica di ErrorDetailsStamp con il formato XML (@nicolas-grekas)
- bug #66455 [Messenger] Corretta la decodifica di ErrorDetailsStamp con Serializer::create() (@nicolas-grekas)
- minor #66516 [Messenger] Consiglia di non decodificare gli stamp non inviabili in SerializerInterface::decode() (@nicolas-grekas)
- bug #66814 [Notifier][PagerDuty] Mantieni il payload utente e invia il timestamp come stringa (@nicolas-grekas)
- minor #66510 [PhpUnitBridge] Rimuove il silenziamento delle deprecation di __sleep/wakeup() (@nicolas-grekas)
- bug #66696 [Process] Impedisci a SYMFONY_DOTENV_VARS ereditata di sovrascrivere le variabili d'ambiente passate esplicitamente (@KalimeroMK)
- bug #66620 [Process] Corretto waitUntil() che perdeva l'output letto dai propri aggiornamenti di stato (@KalimeroMK)
- bug #66672 [PsrHttpMessageBridge] usa la stringa vuota invece di null come offset di array (@dalerazimov)
- bug #66781 [Scheduler] Esamina l'interno dell'Envelope quando si descrive un task (@KalimeroMK)
- bug #66841 [Security] Corretto l'uso di OidcTokenHandler quando symfony/clock non è installato (@nicolas-grekas)
- bug #66629 [Security] Non copiare il token di sicurezza della sessione nei log (@nicolas-grekas)
- bug #66548 [Security] Passa solo attributi di richiesta convertibili in stringa al generatore di URL in HttpUtils (@lazerg)
- bug #66653 [SecurityBundle] Rendi lazy l'expression language di #[IsGranted] (@nicolas-grekas)
- bug #66650 [SecurityBundle] Corretto il riscaldamento della cache delle espressioni access_control (@nicolas-grekas)
- bug #66572 [String] Corretto wordwrap() con $cut quando la stringa termina con il break (@SulimanAbdulrazzaq)
- bug #66503 [String] Corretta width() delle sequenze di escape con un byte intermedio o finale numerico (@nicolas-grekas)
- bug #66500 [String] Corretta width() delle sequenze OSC terminate da BEL (@nicolas-grekas)
- bug #66490 [String] Corretta width() dei toni di carnagione su basi keycap e text-default, e dei caratteri di formato (@phcorp)
- bug #66447 [String] Corretta la larghezza delle sequenze emoji e dei jamo Hangul congiunti (@nicolas-grekas)
- minor #66457 [String] Aggiorna i dati wcswidth con Unicode 18 (@nicolas-grekas)
- bug #66741 [TwigBundle] Ordina i template elencati da TemplateIterator (@nicolas-grekas)
- bug #66834 [Uid] Corretta la data degli UUID basati sul tempo precedenti al 1970 che hanno una frazione di secondo (@nicolas-grekas)
- minor #66514 [Validator] Revisione delle traduzioni in russo per il constraint Audio (@semx)
- bug #66866 [VarDumper] Corretto il dump delle eccezioni i cui frame di trace contengono array o oggetti in chiavi extra (@bwoebi)
- bug #66682 [WebProfilerBundle] Serve phpinfo() come testo semplice quando PHP gira con la SAPI CLI (@lazerg)
- bug #66835 [Yaml] Corretta l'analisi dei timestamp con una frazione di secondo precedenti al 1970 (@nicolas-grekas)
- bug #66830 [Yaml] Solleva una ParseException sulle chiavi che iniziano con un byte NUL quando si analizzano mapping come oggetti (@lazerg)
- bug #66711 [Yaml] Unisci gli spazi bianchi iniziali e finali degli scalari quotati su più righe (@SulimanAbdulrazzaq)
- bug #66621 [Yaml] Non trattare le chiavi << quotate come chiavi di merge (@kevin9327)
- bug #66602 [Yaml] Quota il marcatore di fine documento ... quando si esegue il dump (@nicolas-grekas)
- bug #66592 [Yaml] Quota le stringhe numeriche con segno e decimali con underscore quando si esegue il dump (@GabeSilvaDev)
- bug #66567 [Yaml] Quota le stringhe .inf e .nan quando si esegue il dump (@SulimanAbdulrazzaq)
- bug #66523 [Yaml] Corretto il dump dei blocchi letterali su più righe con tag (@nicolas-grekas)
- bug #66508 [Yaml] Corretto il round-trip dei blocchi letterali che iniziano con righe di soli spazi (@drewmt, @nicolas-grekas)
- minor #66466 Aggiornamento della traduzione in serbo (@Trysha-rbrn)
Fonte originale:
https://symfony.com/blog/symfony-6-4-48-releasedAltri articoli recenti
Laravel AI 1.1 e 1.2: Agent Skills, Cohere e structured output più solidi
Le release 1.1.0 e 1.2.0 di laravel/ai portano gli Agent Skills, l'approvazione obbligatoria per i tool built-in e nuovi provider come Cohere e Laya self-hosted. Sul fronte qualità arrivano i fix allo structured output per Bedrock e il supporto alle provider options. Aggiornati anche i modelli di default, con Claude 4.7+ che ignora i sampling params.
Laravel 13.35.0: scheduler più controllabile, code più flessibili e response Markdown
Laravel 13.35.0 porta Schedule::alwaysOnOneServer(), il supporto a schedule:interrupt per i comandi di lunga durata, --memory in percentuale per queue:work e il nuovo metodo markdown() sulla response factory. Tante piccole migliorie anche a test, view compilate in parallelo e dischi local.
BashBox: un interprete Bash in sandbox per agenti AI in PHP
BashBox è un interprete bash scritto in puro PHP che permette di eseguire gli script generati dagli agenti AI senza mai ricorrere a proc_open, exec o shell_exec. Ogni comando è una classe PHP che lavora su un filesystem virtuale, con limiti di esecuzione, quote disco e accesso di rete configurabili. Ideale per chi sviluppa agenti con il Laravel AI SDK o altre librerie simili.