Caratteristiche principali di Adobe Commerce 2.4.6
In questa versione, cerca le seguenti aree di rilievo.
Miglioramenti di sicurezza
Questa versione include otto correzioni di sicurezza e miglioramenti di sicurezza della piattaforma.
Ad oggi non si sono verificati attacchi confermati relativi a questi problemi. Tuttavia, alcune vulnerabilità possono potenzialmente essere sfruttate per accedere alle informazioni dei clienti o assumere il controllo delle sessioni dell’amministratore. La maggior parte di questi problemi richiede che un utente malintenzionato ottenga prima l’accesso all’amministratore. Di conseguenza, ti ricordiamo di adottare tutte le misure necessarie per proteggere il tuo amministratore, incluse, ma non solo, queste iniziative:
- INSERIRE NELL'ELENCO CONSENTITI IP
- Autenticazione a due fattori
- Utilizzo di una VPN
- Utilizzo di una posizione univoca anziché
/admin
- Buona igiene della password
Per le ultime discussioni su questi problemi risolti, consulta il Bollettino sulla sicurezza di Adobe.
Ulteriori miglioramenti della sicurezza
Miglioramenti di sicurezza per questa versione migliorano la conformità con le best practice più recenti, tra cui:
-
Le lacune nei registri delle azioni dell’amministratore sono state risolte con controlli più specifici delle azioni all’interno delle visualizzazioni griglia, delle azioni di massa e delle esportazioni.
-
La convalida reCAPTCHA non ha più esito negativo durante l’estrazione in caso di errori imprevisti durante l’elaborazione dei pagamenti. GitHub-35093
-
Nuova configurazione di sistema per richiedere la conferma e-mail quando un utente amministratore modifica la propria e-mail. Per ridurre la vulnerabilità del sito, è stata aggiunta una nuova impostazione di configurazione del sistema (disabilitata per impostazione predefinita) per richiedere la conferma e-mail quando un utente amministratore modifica la propria e-mail: Stores > Settings:Configuration > Customers > Customer Configuration > Account Information Options > Require email confirmation if an email has been changed. Quando questa opzione è abilitata, l’applicazione richiede la conferma e-mail ogni volta che l’utente amministratore modifica il proprio indirizzo e-mail. Il seguente modulo è interessato da questa modifica:
Magento_Customer
.
Miglioramenti alla piattaforma
Adobe Commerce 2.4.6 introduce il supporto per PHP 8.2. Il PHP 8.1 rimane completamente supportato.
Il supporto di PHP 7.4 è stato rimosso da questa versione. Non è possibile eseguire Adobe Commerce 2.4.6 su PHP 7.4.
Adobe Commerce 2.4.6 ora supporta:
-
Compositore 2.2.x. Compositore 1.x è stato rimosso.
-
Redis 7.0.x. Sebbene la compatibilità con Redis 6.2 rimanga, si consiglia di distribuire questa versione con Redis 7.0.x perché Redis 6.2 dovrebbe terminare nel 2024.
-
OpenSearch è ora supportato come motore di ricerca predefinito per le distribuzioni Adobe Commerce on-premise e cloud. È supportato come motore di ricerca indipendente per Magento Open Source. Questa versione supporta OpenSearch v2.x ed è stata testata con OpenSearch 2.5. Sebbene la compatibilità con OpenSearch 1.x rimanga, si consiglia di utilizzare questa versione con OpenSearch 2.x. Puoi installare ed eseguire Adobe Commerce e Magento Open Source 2.4.6 con OpenSearch 2.x sia su Cloud che on-premise Prerequisiti per i motori di ricerca.
-
Elasticsearch 8.x. Vedere Aggiornare Elasticsearch.
-
MariaDB 10.6 (versione LTS). Questa versione è ancora compatibile con MariaDB 10.4, ma si consiglia di eseguire l'aggiornamento a MariaDB 10.6.
Altri aggiornamenti e sostituzioni
-
Migrazione dello schema DHL da v6.2 a v10.0.
-
Le librerie JavaScript obsolete sono state aggiornate alle versioni più recenti e le dipendenze obsolete sono state rimosse. Queste modifiche sono compatibili con le versioni precedenti.
-
La compatibilità PHP 7.4 è stata rimossa dal codebase di Commerce.
-
Le dipendenze di Symfony sono state aggiornate alla nuova versione LTS. Le dipendenze includono:
friendsofphp/php-cs-fixer
symfony/console
symfony/event-dispatcher
symfony/finder
symfony/process
web-token/jwt-framework
-
jquery-migrate
è stato rimosso dalla base di codice di Commerce. GitHub-21406 -
Libreria
jQuery/fileUpload
aggiornata alla versione v10.32. -
I componenti Zend framework (ZF1) che hanno raggiunto la fine del ciclo di vita sono stati rimossi dalla base di codice. Vedi Modifiche non compatibili con le versioni precedenti in evidenza.
-
Le dipendenze Laminas sono state aggiornate per supportare PHP 8.2.
-
Il plug-in del Compositore
laminas/laminas-dependency-plugin
è stato rimosso. GitHub-36515 -
Sostituzione di
Zend_Filter
conlaminas/laminas-filter
. -
Aggiornamento di
web-token/jwt-framework
alla versione v3.0.5. (versione più recente) -
Aggiornamento di
allure-framework/allure-phpunit
a v2.x. -
Aggiornamento della libreria
Chart-js
alla versione v3.9.1
Miglioramenti a livello di prestazioni e scalabilità
-
Prestazioni migliorate per le operazioni che interessano molti segmenti di clienti. Gli esercenti possono migliorare le prestazioni delle operazioni che coinvolgono più di 100 segmenti di clienti abilitando una nuova impostazione di configurazione. L'impostazione Real-time Check if Customer is Matched by Segment può essere disabilitata in base alle esigenze per ridurre i tempi di elaborazione riducendo la convalida di ogni segmento del cliente rispetto ai clienti. Consulta Convalida dei segmenti cliente.
-
Nuova impostazione di configurazione del sistema per limitare il numero di prodotti visualizzati nella griglia prodotti. I commercianti possono utilizzare la nuova impostazione di configurazione Limit Number of Products in Grid per migliorare le prestazioni della griglia di prodotti. Questo limite è configurato per 20000 per impostazione predefinita e influisce solo sulle raccolte di prodotti utilizzate dai componenti dell’interfaccia utente. Limitare il numero di prodotti visualizzati può migliorare le prestazioni delle operazioni per le griglie popolate da più di 200.000 prodotti. Vedi Limita il numero di prodotti nella griglia
-
Migliori prestazioni di importazione (fino a 100.000 record al minuto). I commercianti possono utilizzare il nuovo endpoint REST API
POST /rest/<store_view_code>/V1/import/csv
per importare dati in Adobe Commerce. Questo endpoint offre le stesse funzionalità della funzione di importazione Amministratore e supporta l’utilizzo di un file CSV per creare, aggiornare e rimuovere prodotti, prezzi di prodotto ed entità cliente. Vedi Importa dati. -
Sono state migliorate le prestazioni di elaborazione degli ordini ad alta velocità tramite il bilanciamento del carico. I clienti Adobe Commerce 2.4.6 su infrastrutture cloud che hanno un volume elevato di ordini simultanei (1000 ordini al minuto) possono ora migliorare le prestazioni di elaborazione degli ordini bilanciando il carico sul database tra nodi diversi. I commercianti possono ribilanciare questo carico abilitando connessioni secondarie per il database MySQL e le istanze Redis. Consulta Elaborazione ordine ad alta velocità
Metapacchetto dell’estensione Adobe Commerce
Questa versione introduce il metapackage di estensione Adobe Commerce v1.1.0, che raggruppa automaticamente con questa versione di base alcune estensioni Adobe Commerce. Le versioni di queste estensioni incluse in questo metapackage vengono installate durante l'esecuzione di composer update
, semplificando il processo di aggiornamento di tali estensioni quando si esegue l'aggiornamento alla versione di base più recente. Queste estensioni manterranno comunque pianificazioni di rilascio indipendenti.
Il metapacchetto dell’estensione Adobe Commerce per Adobe Commerce 2.4.6 include le due estensioni seguenti:
Le versioni future di questo metapacchetto di estensione conterranno estensioni aggiuntive.
Adobe I/O Events per Adobe Commerce
Adobe I/O Events for Adobe Commerce acquisisce gli eventi Commerce e trasferisce i dati da Adobe Commerce ad altri sistemi Adobe. Gli sviluppatori possono creare in Adobe Developer App Builder app native per il cloud per abbonarsi a eventi Commerce come aggiornamenti dell’inventario, modifiche allo stato degli ordini e aggiornamenti dei prezzi. Gli sviluppatori possono utilizzare questa funzionalità per scambiare dati per l'orchestrazione dell'intero percorso di acquirenti nei propri sistemi mission-critical.
Aggiornamenti all’accessibilità
L’obiettivo di questa versione è stato quello di creare un’esperienza di vetrina su Venia (PWA) più percepibile, utilizzabile, comprensibile e solida. Questi miglioramenti includono:
- L'etichetta di testo visivo per il pulsante Sign in ora corrisponde al relativo nome accessibile. È consigliabile che il nome accessibile di un elemento dell’interfaccia utente inizi con il testo dell’etichetta visibile.
- Nomi descrittivi accessibili sono stati aggiunti ai pulsanti in tutta la vetrina.
- Sono state aggiunte etichette descrittive verbali alle caselle di controllo Has Video nei filtri di ricerca.
- Gli utenti che utilizzano solo la tastiera possono ora accedere a tutte le funzionalità della pagina nella vetrina. In precedenza, gli acquirenti non potevano accedere ai collegamenti di navigazione secondaria utilizzando solo la pressione dei tasti.
Integrazione di Adobe Commerce con Adobe IMS
I seguenti moduli Adobe IMS sono stati disaccoppiati dal codice core di Adobe Commerce 2.4.6 e sono ora inclusi come metapacchetto separato:
adobe-ims
adobe-ims-api
admin-adobe-ims
La nuova versione 2.2.0 di adobe-ims-metapackage
è inclusa in Adobe Commerce 2.4.6. Nessuna funzionalità è stata modificata in questa versione.
B2B
La funzione Ordini di acquisto per società è ora completamente esposta dall’API di GraphQL. Questa versione introduce due schemi GraphQL:
- Lo schema GraphQL dell’ordine di acquisto copre l’utente dell’azienda B2B Funzionalità di acquisto di Order Management come la creazione, la modifica e l’eliminazione degli ordini di acquisto. Vedi Ordini di acquisto (B2B).
- Lo schema GraphQL delle regole dell’ordine di acquisto consente di creare, modificare ed eliminare le regole di approvazione e di convalidare manualmente gli ordini di acquisto. Consulta Regole di approvazione ordini fornitore (B2B).
Questa versione include più correzioni di bug. Consulta Note sulla versione B2B.
Braintree
- Il pulsante Pay Later e i banner (messaggi) per Italia e Spagna sono stati abilitati per Braintree.
- La messaggistica PayLater con PayPal Vault è stata abilitata.
- Sono stati aggiunti gli hook web di Protezione dalle frodi e ACH. Il web hook di protezione contro le frodi viene attivato quando una decisione di rischio è stata presa in Braintree. Il Web hook ACH viene attivato quando lo stato di un pagamento ACH viene aggiornato a
settled
osettlement decline
.
- È stato aggiunto l'hook Web LPM (Local Payment Methods).
GraphQL
I miglioramenti delle prestazioni di GraphQL includono:
È stato migliorato il tempo di risposta durante l'esecuzione di query sulle categorie per le quali sono abilitate le autorizzazioni per le categorie. I tempi di risposta sono migliorati quando si eseguono query su prodotti in categorie per le quali sono abilitate le autorizzazioni per le categorie e che contengono molti gruppi di clienti o cataloghi condivisi. Le modifiche al codice che supportano questo miglioramento delle prestazioni includono:
- L'operazione del resolver GraphQL è stata ottimizzata.
- Il provider di dati non reimposta più i dati memorizzati nella cache di runtime per ogni nuovo prodotto in fase di elaborazione, migliorando così le prestazioni.
- L’elaborazione delle autorizzazioni del prodotto è stata ottimizzata nel resolver GraphQL. Le autorizzazioni per i prodotti ora vengono applicate alle raccolte di prodotti anziché in base ai singoli prodotti.
- Le autorizzazioni ottimizzate vengono lette nei cataloghi condivisi nella mutazione
addProductsToCart
. - Le autorizzazioni del prodotto sono state ottimizzate con frammenti in linea del prodotto.
Prestazioni ottimizzate per il rendering della struttura delle categorie. La query categoryList
è stata ottimizzata per supportare clienti con un numero elevato di categorie. I commercianti che utilizzano questa query per cercare più di 1500 categorie con fino a cinque livelli di sottocategorie nidificate noteranno un miglioramento delle prestazioni. Il caricamento degli elementi figlio delle categorie tramite il codice di refactoring è stato migliorato rimuovendo le chiamate ai metodi non necessarie, migliorando la memorizzazione nella cache della struttura delle categorie e caricando i dati delle categorie in modo ricorsivo. Le modifiche al codice che supportano questo miglioramento delle prestazioni includono:
- È stato migliorato il recupero dei metadati degli attributi personalizzati per i modelli di categoria.
- Il recupero dell'ID categoria è stato migliorato e le chiamate
getChildren
sono state ridotte. - Il caricamento degli elementi figlio della categoria è stato migliorato.
Tempi di risposta ridotti per le query delle operazioni bulk cart. Le mutazioni di aggiungi prodotto sono state ottimizzate per migliorare le prestazioni delle query aggiungendo fino a 500 prodotti semplici e configurabili. I prodotti bundle non subiscono modifiche. Le mutazioni ottimizzate includono addProductsToCart
, addConfigurableProductsToCart
, addDownloadableProductsToCart
, addSimpleProductsToCart
, addVirtualProductsToCart
,addWishlistItemsToCart
e updateCartItems
.
la query del cliente ora supporta l'ordinamento degli ordini. L'oggetto di output orders
della query customer
ora contiene un campo di ordinamento. È ora possibile ordinare gli ordini in base al numero di ordine o alla data di creazione e in ordine crescente o decrescente.
Nuove mutazioni:
deleteCustomer
Page Builder
Page Builder v.1.7.3 è compatibile con Adobe Commerce 2.4.6.
PWA Studio
PWA Studio v.13.0.x è compatibile con Adobe Commerce 2.4.6. Include diversi miglioramenti per migliorare l’accessibilità. Per informazioni sulle correzioni di bug, vedi Versioni di PWA Studio. Per un elenco delle versioni di PWA Studio e delle relative versioni di base compatibili con Adobe Commerce, consulta Compatibilità delle versioni.
Problema noto
Problema: New Relic non è attualmente compatibile con PHP 8.2. Le implementazioni che eseguono New Relic possono eseguire Adobe Commerce 2.4.6 su PHP 8.1 ma non su PHP 8.2. Soluzione: eseguire Adobe Commerce 2.4.6 su PHP 8.1 fino a quando non verrà rilasciata una nuova versione di New Relic che supporta PHP 8.2. Questa versione è prevista per l’estate 2023.
Problemi risolti
Sono stati risolti centinaia di problemi relativi al codice core di Adobe Commerce 2.4.6. Di seguito è descritto un sottoinsieme dei problemi risolti inclusi in Adobe Commerce 2.4.6.
Installazione, aggiornamento, distribuzione
- L’implementazione di contenuti statici non si interrompe più per timeout o non riesce durante le distribuzioni standard o compatte con più impostazioni internazionali e siti web.
- La strategia compatta non causa più un riferimento non valido a un dominio esterno durante l'esecuzione della distribuzione di contenuto statico (
bin/magento set:static-content:deploy -f --strategy compact
).
- L'esecuzione di
bin/magento setup:di:compile -vvv
(o con le opzioni-v
o-vv
) ora restituisce un messaggio informativo sull'errore. GitHub-35391
- Adobe Commerce non genera più la seguente eccezione quando si esegue il comando
bin/magento setup:upgrade
in una distribuzione che esegue già lo strumento di migrazione dati:PHP Fatal error: Declaration of Migration\Logger\Logger::addRecord(int $level, string $message, array $context = []): bool must be compatible with Monolog\Logger::addRecord(int $level, string $message, array $context = [], ?Monolog\DateTimeImmutable $datetime = null): bool in /var/www/html/vendor/magento/data-migration-tool/src/Migration/Logger/Logger.php on line 34
. GitHub-35604
- Il comando
bin/magento setup:db:status
non ha più esito negativo negli ambienti che eseguono MySQL 8.0.29. In precedenza, l’output del comando indicava erroneamente che lo schema dichiarativo era obsoleto. GitHub-35671
- Il comando
composer install
non sovrascrive più.gitignore
file. GitHub-32888
- L'esecuzione di
bin/magento sampledata:remove
per rimuovere i dati di esempio dopo l'aggiornamento su Alpine Linux non ha più esito negativo con questo errore:Undefined constant "MagentoHackathon\Composer\Magento\Deploystrategy\GLOB_BRACE
. GitHub-36062
bin/magento setup:upgrade
ora viene eseguito correttamente dopo la prima esecuzione dicomposer install --no-dev
. GitHub-36351
- Le eccezioni e le voci di traccia dello stack delle eccezioni sono ora incluse in
var/log/exception.log
. GitHub-36054
- Adobe Commerce ora genera un errore di convalida del parametro quando si utilizza la riga di comando per impostare una connessione Redis senza una password.