Magento Open Source 2.4.7 – Highlights

Look für die folgenden Highlights in dieser Version.

Verbesserungen bei der Sicherheit

Diese Version enthält die gleichen Sicherheitskorrekturen und Verbesserungen der Plattformsicherheit, die in Adobe Systems Commerce 2.4.6-p5, 2.4.5-p7 und 2.4.4-p8 enthalten sind. Die aktuelle Diskussion zu diesen behobenen Problemen finden Sie Adobe Systems Sicherheitsbulletin .

Bisher wurden keine bestätigten Angriffe im Zusammenhang mit diesen Problemen durchgeführt. Bestimmte Schwachstellen können jedoch potenziell ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Administrator erhält. Daher erinnern wir Sie daran, alle notwendigen Schritte zu unternehmen, um Ihren Administrator zu schützen, einschließlich, aber nicht beschränkt auf diese Bemühungen:

Zusätzliche Sicherheitsverbesserungen

Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.

  • Änderungen am Verhalten nicht generierter Cache-Schlüssel:

    • Nicht generierte Cache-Schlüssel für -Blöcke enthalten jetzt Präfixe, die sich von Präfixen für automatisch generierte Schlüssel unterscheiden. (Nicht generierte Cache-Schlüssel sind Schlüssel, die über die Vorlagenanweisungssyntax oder die setCacheKey- oder setData festgelegt werden.)
    • Nicht generierte Cache-Schlüssel für -Blöcke dürfen jetzt nur noch Buchstaben, Ziffern, Bindestriche (-) und Unterstriche (_) enthalten.
  • Beschränkungen für die Anzahl der automatisch generierten Couponcodes. Magento Open Source begrenzt jetzt die Anzahl der Gutscheincodes, die automatisch generiert werden. Der standardmäßige Maximalwert ist 250.000. Händler können die neue Code Quantity Limit-Konfigurationsoption (Stores > Settings:Configuration > Customers > Promotions) verwenden, um zu verhindern, dass das System mit vielen Coupons überfordert wird.

  • Optimierung des Prozesses zur standardmäßigen Admin URL Generierung. Die Generierung des Standard-Admin-URL wurde für eine erhöhte Zufälligkeit optimiert, wodurch generierte URLs weniger vorhersehbar sind.

  • Eine neue vollständige Seite-Cachekonfiguration kann dazu beitragen, die mit dem HTTP-Endpunkt {BASE-URL}/page_cache/block/esi verbundenen Risiken zu mindern. Dieser Endpunkt unterstützt uneingeschränkte, dynamisch geladene Inhalte-Fragmente aus Commerce-Layout-Handles und Blockstrukturen. Die neue Handles params size Konfigurationseinstellung legt den Wert des Parameters dieses Endpunkts handles fest, der die maximal zulässige Anzahl von Handles pro API bestimmt. Der Standardwert dieser Eigenschaft ist 100. Händler können diesen Wert im Admin-Bereich ändern (Stores > Settings:Configuration > System > Full Page Cache > Handles params size). Siehe Konfigurieren des Commerce-Programms für die Verwendung von Varnish.

  • Unterstützung für Subresource Integrity (SRI) wurde hinzugefügt um die PCI 4.0-Anforderungen für die Überprüfung der Skriptintegrität auf Zahlungsseiten zu erfüllen. Die Unterstützung von Subresource Integrity (SRI) bietet Integritäts-Hashes für alle JavaScript-Assets im lokalen Dateisystem. Die standardmäßige SRI-Funktion wird nur auf den Zahlungsseiten für die Bereiche Admin und Storefront implementiert. Händler können die Standardkonfiguration jedoch auf andere Seiten erweitern. Siehe Subresource-Integrität im Commerce PHP-Entwicklerhandbuch.

  • Änderungen an der Content Security Policy (CSP) - Konfigurationsaktualisierungen und -verbesserungen an den Adobe Commerce Content Security Policies (CSPs) zur Erfüllung der PCI 4.0-Anforderungen. Weitere Informationen finden Sie unter Inhaltssicherheitsrichtlinien im Commerce PHP-

    • Die standardmäßige CSP-Konfiguration für Zahlungsseiten für Commerce Admin- und Storefront-Bereiche ist jetzt restrict. Für alle anderen Seiten ist die Standardkonfiguration report-only. In Versionen vor 2.4.7 wurde CSP für alle Seiten im report-only konfiguriert.

    • Es wurde ein Nonce-Provider hinzugefügt, der die Ausführung von Inline-Skripten in einer CSP ermöglicht. Der Nonce-Anbieter erleichtert die Erstellung eindeutiger Nonce-Zeichenfolgen für jede Anfrage. Die Zeichenfolgen werden dann an den CSP-Header angehängt.

    • Es wurden Optionen zum Konfigurieren von benutzerdefinierten URIs hinzugefügt, um CSP-Verletzungen für die Seite „Auftrag erstellen“ in der Admin- und die Checkout-Seite im Storefront zu melden. Sie können die Konfiguration über den Administrator oder durch Hinzufügen des URI zur config.xml-Datei hinzufügen.

      HINWEIS
      Wenn Sie die CSP-Konfiguration auf den restrict-Modus aktualisieren, werden möglicherweise vorhandene Inline-Skripte auf den Zahlungsseiten in der Admin- und Storefront blockiert, was beim Laden einer Seite den folgenden Browser-Fehler verursacht: Refused to execute inline script because it violates the following Content Security Policy directive: "script-src. Beheben Sie diese Fehler, indem Sie die Konfiguration der Zulassungsliste aktualisieren, um die erforderlichen Skripte zuzulassen. Siehe Fehlerbehebung im Commerce PHP-.
  • Native Ratenbegrenzung für Zahlungsinformationen, die über REST- und GraphQL-APIs übermittelt. Händler können jetzt Ratenbegrenzung) fürZahlungsinformationen konfigurieren, die mit REST und GraphQL übermittelt werden. Diese zusätzliche Schutzschicht unterstützt die Prävention von Kartenangriffen und verringert möglicherweise das Volumen von Kartenangriffen, die viele Kreditkartennummern gleichzeitig testen. Dies ist eine Änderung des Standardverhaltens eines vorhandenen REST-Endpunkts. Siehe Ratenbegrenzung.

  • Das Standardverhalten der GraphQL-Abfrage isEmailAvailable und des REST-Endpunkts (V1/customers/isEmailAvailable) hat sich geändert. Standardmäßig geben die APIs jetzt immer true zurück. Händler können das ursprüngliche Verhalten aktivieren, indem sie die Option Guest Checkout-Anmeldung aktivieren in der Admin auf yes setzen. Dadurch können jedoch Kundeninformationen für nicht authentifizierte Benutzer verfügbar gemacht werden.

Plattformverbesserungen

Plattform-Upgrades für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.

Magento Open Source 2.4.7 umfasst die folgenden Plattformaktualisierungen:

  • PHP 8.3-Kompatibilität. Diese Version führt zur Unterstützung von PHP 8.3. Magento Open Source unterstützt jetzt sowohl PHP 8.3 als auch PHP 8.2. PHP 8.2 wird bis zum Ende des Service (EOS) im Dezember 2025 unterstützt. Nach Dezember 2025 sollten alle Händler, die Bereitstellungen mit Version 2.4.7 ausführen, auf PHP 8.3 migrieren.

Magento Open Source 2.4.7 ist weiterhin nur zu Upgrade-Zwecken mit PHP 8.1 kompatibel. PHP 8.1 wird nicht unterstützt und nicht empfohlen. Magento Open Source 2.4.7-Kerncode, alle gebündelten Erweiterungen sowie alle Adobe-eigenen Erweiterungen und SaaS-Services sind mit PHP 8.3 kompatibel.

  • Unterstützung von RabbitMQ 3.13. Diese Version ist mit der neuesten Version von RabbitMQ 3.13 kompatibel. Die Kompatibilität mit RabbitMQ 3.11 und 3.12 bleibt bestehen, die bis August 2024 bzw. Dezember 2024 unterstützt werden, aber Adobe hat empfohlen, Magento Open Source 2.4.7 nur mit RabbitMQ 3.13 zu verwenden.

  • Composer 2.7.x. Die Kompatibilität mit Composer 2.2.x bleibt bestehen.

  • Unterstützung des Lackcache 7.4. Diese Version ist kompatibel mit der neuesten Version von Varnish Cache 7.4. Die Kompatibilität mit den Versionen 6.0.x und 7.2.x bleibt bestehen, wir haben jedoch empfohlen, Magento Open Source 2.4.7 nur mit Varnish Cache Version 7.4 oder Version 6.0 LTS zu verwenden.

  • Kompatibilität mit Elasticsearch 8.11

  • Unterstützung für OpenSearch 2.12 und OpenSearch 1.3

  • Redis 7.2

  • Die extjs-Bibliothek wurde durch die neueste Version von jsTree ersetzt.

  • jquery/fileUpload Bibliothek wurde entfernt.

Alle JavaScript-Bibliotheken und NPM-Abhängigkeiten im Magento Open Source-Kern-Code wurden auf die neuesten verfügbaren Versionen aktualisiert. Alle Laminas-Bibliotheksabhängigkeiten wurden auf die neueste Version aktualisiert, die mit PHP 8.3 kompatibel ist.

Zusätzliche Upgrades

  • Das Commerce UPS XML API-Gateway wurde zur neuen Commerce UPS REST API migriert, um Aktualisierungen zu unterstützen, die UPS an seinem API-Sicherheitsmodell vornimmt. (UPS implementiert ein OAuth 2.0-Sicherheitsmodell (Bearer-Token) für alle APIs.) Alle vorherigen Commerce UPS XML-APIs wurden aus der Code-Basis von Magento Open Source 2.4.7 entfernt.

  • Die Magento Open Source Integration mit FedEx wurde von den alten FedEx WSDL Web Services zu den neuesten FedEx RESTful APIs migriert. FedEx Web Services Tracking, Address Validation, and Validate Postal Codes WSDLS werden im Mai 2024 eingestellt.

  • Hinzugefügte Unterstützung für die neue USPS Ground Advantage-Versandmethode. Dies ist eine vorkonfigurierte Integration mit der neuen Versandmethode von USPS, USPS Ground Advantage, die im Juli 2023 veröffentlicht wurde. Diese neue Integration kann verwendet werden, um Versandraten abzurufen und Sendungen und Rücksendungen über den USPS-Versandservice zu planen. Die USPS Ground Advantage-Versandmethode ersetzt diese Versandmethoden, die eingestellt wurden, als die USPS Ground Advantage-Versandmethode veröffentlicht wurde:

    • USPS-Verkaufsgelände
    • Erstklassiger Paketdienst
    • Parzelle wählen
  • Die Versandmodule von Temando wurden aus der Code-Basis von Magento Open Source entfernt. Diese Funktion ist seit Magento Open Source 2.4.4 veraltet.

Verbesserungen der Leistung und Skalierbarkeit

Magento Open Source 2.4.7 umfasst die folgenden Verbesserungen der Leistung und Skalierbarkeit von Magento Open Source:

  • Verbesserte Indexerverwaltung. Der neue indexer:set-status-Befehl unterstützt die dynamische Verwaltung des Indexstatus. Admin-Benutzer können diesen Befehl verwenden, um den Indexerstatus in "suspended", "invalid" oder "valid" zu ändern. Diese Funktion ist besonders nützlich für die Verwaltung der Systemleistung bei umfangreichen Massenvorgängen wie Produktimporten oder -aktualisierungen, da sie die Kontrolle darüber ermöglicht, wann Indexer automatisch durch die Cron-Aufträge des Systems ausgelöst werden. Siehe Verwalten der Indexer.

  • Produktlistenseite für komplexe Produkte mit vielen Optionen. Die Ladezeit wurde für Produktlistenseiten verbessert, die komplexe Produkte mit über 100 Optionen enthalten. Die Leistung von GraphQL-Anfragen zum Auflisten von Produkten nach Kategorie wurde ebenfalls verbessert.

  • Vertriebs- Regel Leistungsverbesserungen. Verbesserte Leistung von Unternehmensbereitstellungen mit vielen (ca. 100.000) aktiven Vertriebsregeln. Bei Enterprise-Bereitstellungen, die stark implementieren Promotions durchführen, werden häufig viele aktive Warenkorb Regeln bereitgestellt. Bei diesen Arten von Unternehmensbereitstellungen, in denen Magento Open Source 2.4.7 ausgeführt wird, tritt keine Leistungsbeeinträchtigung im Zusammenhang mit der Anzahl der konfigurierten Warenkorbpreisregeln während des Checkout-Vorgangs auf.

  • Schnellere Speichervorgänge von Konfigurationen auf Store-Ebene für Bereitstellungen mit vielen Stores. Das Speichern von Konfigurationseinstellungen in Bereitstellungen mit mehr als 500 Stores kann zeitaufwendig sein. Das neue Async Config-Modul ermöglicht asynchrone Konfigurationsspeichervorgänge durch Ausführen eines Cron-Vorgangs, der einen Verbraucher verwendet, um den Speichervorgang in einer Nachrichtenwarteschlange zu verarbeiten. AsyncConfig ist standardmäßig deaktiviert.

  • Schnellere Generierung des Konfigurationscaches für große Konfigurationen. Der bin/magento cache:clean config Befehl erwärmt jetzt den Konfigurations-Cache vorab, wenn der Konfigurations-Cache aktiviert ist. Dadurch verringert sich die Ausfallzeit, die erforderlich ist, um den Konfigurationscache für große Konfigurationen zu generieren. Konfigurationsspeichervorgänge leeren den Cache config_scopes nicht mehr, bevor Daten in den Cache geschrieben werden, wodurch auch die Zeit verkürzt wird, in der andere Anforderungen gesperrt werden, während Konfigurationsdaten geschrieben werden.

Braintree

  • Vaulted PayPalund Pay Later Änderungen: Angemeldete Kunden, die ihre PayPal zuvor im Tresor gespeichert/gespeichert haben Konto, haben die Möglichkeit, mit Folgendem zu bezahlen:

    • Pay Now (Der User muss sich nicht in sein PayPal Konto einloggen, sondern kann mit seinem Standard-Karte bezahlen)
    • Mit einer anderen Finanzierungsquelle bezahlen
    • Mit einem anderen Konto bezahlen
    • PayPal Pay Later oder PayPal Credit
  • 3DS-Unterstützung fürGoogle Pay - Enthaltene Unterstützung der 3DS-Verifizierung für die Google Pay nicht-Token-Karten. Weitere Informationen finden Sie in der Dokumentation 🔗 Braintree .

  • Vault Apple Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Apple Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault Google Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Google Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault Venmo Payments - Angemeldeten Kunden erlauben, ihre Venmo Konten in ihrem Commerce-Speicherkonto zu tresoren/zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault ACH Payments - Erlauben Sie angemeldeten Kunden, ihre ACH-Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Express PaymentSchaltflächen oben am Checkout - Um ein schnelleres Checkout-Erlebnis zu fördern, haben wir Express Payment Optionen zu Beginn des Checkouts eingeführt. Kunden können jetzt mit PayPal, PayPal Pay Later, Apple Pay und Google Pay Express bezahlen.

  • BraintreeVersionshinweise und Support-Links innerhalb der Admin-Konfiguration - Händler können jetzt direkt von Commerce Admin aus auf Braintree-Support und Versionshinweise online verlinken.

  • GraphQL-Unterstützung für alle Braintree Zahlungsmethoden mit Ausnahme vonVenmo—Weitere Konfigurationen werden in der GraphQL-API verfügbar gemacht. Dies ist besonders für Headless-Anwendungen nützlich.

  • VaultingZahlungen im Kontobereich - Angemeldete Kunden können jetzt neue Kredit-/Debitkarten tresor/) und PayPal Konten im Kundenkontobereich erstellen. Zuvor konnten Kunden ihre Zahlungen nur für eine spätere Verwendung beim Abschließen einer Transaktion an der Kasse tresoren/speichern. Jetzt können sie neue Kredit-/Debitkarten und PayPal-Konten tresoren, ohne eine neue Transaktion erstellen zu müssen.

  • Reibungslose Transaktionen - Reibungslose Transaktionen beschleunigen den Zahlungsprozess, indem sie die Anzahl der Klicks/Schritte reduzieren, die ein Kunde für eine Online-Kredit-/Debitkartentransaktion benötigt. Zuvor (als 3DS aktiviert wurde) wurde jeder Kunde mit einer 3DS-Herausforderung konfrontiert. Mit der neuen Frictionless-Transaktionsfunktion werden Kunden nur dann für 3DS herausgefordert, wenn die Bank sie anfordert. Dies reduziert Warenkorbabbrüche, erhöht Konversionsraten und führt zu mehr Umsatz.

  • Kontroll-Webhooks - Wenn ein Kunde eine Transaktion in Braintree anficht, wird der Streitstatus jetzt an Commerce weitergeleitet. Er ist im Raster Sales > Order durchsuchbar und an jede Bestellung angehängt.

GraphQL

Magento Open Source 2.4.7 enthält erweiterte GraphQL-Caching-Funktionen, GraphQL-Schema Unterstützung für benutzerdefinierte Attribute, Unterstützung für Headless-bestellen-Abbruch und verbesserte Resolver-Caching.

  • Mehr flexibles Warenkorb Management. Die clearCart Mutation löscht nun den Inhalt einer bestimmten Warenkorb mit einem einzigen Handgriff. Sie ersetzt die clearCustomerCart Mutation, die veraltet ist.

  • Verbesserungen bei der Erstellung von Warenkorb Mutationen. Die createGuestCart-Mutation wurde hinzugefügt, um die veraltete createEmptyCart-Mutation zu ersetzen. Wenn Sie zuvor createEmptyCart verwendet haben, konnten Sie nicht feststellen, ob der Warenkorb für einen Gast oder einen angemeldeten Kunden war.

  • Bestellartikel enthalten jetzt Produktbilder. OrderItemInterface stellt Produktbilder bereit, mit denen Bilder bestellten Produkten zugeordnet und effizienter geladen werden können. GitHub-32369-

  • Erweiterte Unterstützung für das Resolver-Caching. Die folgenden GraphQL Abfrage-Resolver sind jetzt im GraphQL Resolver Results-Cache zwischenspeicherbar, was die Leistung verbessert, wenn Abfragen mit POST Anfragen gesendet werden:

    • Magento\CustomerGraphQl\Model\Resolver\Customer::resolve
    • Magento\CustomerGraphQl\Model\Resolver\CustomerAddress::resolve
    • Magento\CustomerGraphQl\Model\Resolver\IsSubscribed::resolve
    • Magento\CatalogGraphQl\Model\Resolver\Product\MediaGallery::resolve
  • Unterstützung für bestellen Stornierung. Die cancelOrder-Mutation ermöglicht es einem Kunden, eine bestellen abzubrechen, wobei ihre Kennung und ein Kündigungsgrund übergeben werden.

  • Verbesserte Unterstützung für benutzerdefinierte Attribute. Die Unterstützung benutzerdefinierter GraphQL-Attribute wurde durch die Anreicherung von API-Daten verbessert, um alle Attributtypen zu unterstützen. Die GraphQL-EAV-Attribute Schema unterstützt nun das Erweitern von Kundenattributen und Kundenadressobjekten im Admin und deren Abrufen mit GraphQL. Zu den spezifischen Verbesserungsbereichen gehören:

    • Erweiterte/hinzugefügte Unterstützung benutzerdefinierter Attribute für bestimmte Bereiche wie Kunden und Kundenadressen
    • Caching für benutzerdefinierte Attribute hinzugefügt
    • Verbesserte Unterstützung vorhandener benutzerdefinierter Attribute für Produkte
  • Erweiterte GraphQL-Caching-Funktionen verbessern Seite Ladegeschwindigkeit. Diesen Abfragen wurde eine Caching-Funktion hinzugefügt, die die Geschwindigkeit der Seite Ladezeit für die meisten PWA Seiten verbessert:

  • Verbesserte GraphQL-Parser-Leistung. Die Leistung des GraphQL-Parsers wurde verbessert, indem die Anzahl der Aufrufe der Parser-Methode pro Anfrage reduziert wurde. Er heißt jetzt einmal. Zuvor wurde der Parser mindestens dreimal aufgerufen.

Neue Felder für vorhandene Mutationen

  • Das Feld quickorder_active wurde den Abfragen storeConfig und availableStores hinzugefügt. Dieses Feld gibt an, ob die Schnellbestellungsfunktion aktiviert ist.

  • Die folgenden Felder wurden den setBillingAddressOnCart und setShippingAddressesOnCart Mutationen hinzugefügt:

    • fax
    • middlename
    • prefix
    • suffix

Neue Abfragen und Mutationen

Veraltete Abfragen und Mutationen

Inventory management

Inventory management (v1.2.7) bietet Tools zum Verwalten des Produktbestands. Diese von der Community entwickelte Funktion ist im Paket mit Adobe Commerce und Magento Open Source-Code enthalten.

Magento Open Source-Erweiterungs-Metapaket

Diese Version enthält das Magento Open Source Extension-Metapaket v1.0.0, das ausgewählte Magento Open Source-Erweiterungen automatisch mit dieser Kernversion bündelt. Die Version dieser Erweiterung, die in diesem Metapaket enthalten ist, wird bei der Ausführung von composer update installiert, was den Prozess der Aktualisierung der Erweiterung bei der Aktualisierung auf die neueste Hauptversion vereinfacht. Diese Erweiterung verwaltet einen unabhängigen Veröffentlichungszeitplan.

Das Magento Open Source-Erweiterungs-Metapaket für Magento Open Source 2.4.7 enthält die folgenden Erweiterungen:

Zukünftige Versionen dieses Erweiterungs-Metapakets werden zusätzliche Erweiterungen enthalten.

PWA Studio

PWA Studio v14.0 ist kompatibel mit Magento Open Source 2.4.7-beta1. Es enthält mehrere Verbesserungen zur Verbesserung der Barrierefreiheit. Informationen zu Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Versionskompatibilität finden Sie eine Liste der PWA Studio-Versionen und ihrer kompatiblen Magento Open Source-Kernversionen.

Web-API-Framework

Diese Version führt zwei neue REST-Endpunkte ein, die eine Problemumgehung für eine Einschränkung bei den REST-API-GET und POST V1/products/attributes-Endpunkten bieten. Diese Endpunkte geben denselben Wert für das is_filterable Attribut für die Optionen und Filterable(with results) Filterable(no results) Optionen der Use in Layered Navigation Option zurück. (Das is_filterable Attribut Eigenschaft ist vom Typ Boolean, der es nicht zulässt, diese Eigenschaft auf .)Filterable(no results)

Zwei neue REST-Endpunkte wurden als Problemumgehung implementiert:

  • PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}. Pfadparameter: attributeCode (String) und isFilterable (int Werte sind: 0 ist Nein; 1 ist Filterable (with results); 2 ist Filterable (no results)).
  • GET /V1/products/attributes/{attributeCode}/is-filterable. Pfad Parameter: attributeCode (String).

Fest Probleme

Wir haben Hunderte von Problemen im Kerncode von Magento Open Source 2.4.7 behoben. Ein Teil der behobenen Probleme in dieser Version wird im Folgenden beschrieben.

Installation, Aktualisierung Implementierung

  • Unnötige Cache-Manipulationen wurden aus dem Einrichtungsprozess entfernt. Zuvor schrieb Magento Open Source seine Konfiguration unnötig auf die Festplatte, wenn bin/magento setup:db-data:upgrade sie ausgeführt wurde oder bin/magento setup:upgrade ausgeführt wurde, was zu Problemen mit SOM-Modulen während des Setups führte. GitHub-38124
  • Bereitstellungsprobleme aufgrund von unzureichendem Arbeitsspeicher und großen Tabellen wurden behoben. Der bin/magento setup:upgrade Befehl schlägt nicht mehr aufgrund von Fehlern fehl, die im Zusammenhang mit großen MySQL-Tabellen auftreten, wenn der Arbeitsspeicher überschritten wird.
  • bin/magento setup:install wird jetzt erfolgreich abgeschlossen, nachdem app/etc/config.php es gelöscht wurde. Zuvor wurde die fehlende Datei während der Installation nicht neu generiert und Magento Open Source ein Fehler ausgegeben. GitHub-37805
  • bin/magento setup:upgrade wurde so umgestaltet, dass es erfolgreich ausgeführt wird, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörige mview-Indexer installiert. GitHub-37304
  • Die Datenbankwiederherstellung schlägt aufgrund eines Trennzeichen-Fehlers nicht mehr fehl. Zuvor gab Magento Open Source diesen Fehler bei der Ausführung von bin/magento setup:rollback --db aus: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • Der bin/magento setup:upgrade-Befehl schlägt mit diesem mit der Speicherbegrenzung in MySQL zusammenhängenden Fehler nicht mehr fehl: PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes). Die Migration von Attributen mit mehreren Auswahlmöglichkeiten wurde optimiert, um während der setup:upgrade weniger Speicher zu verbrauchen.
  • Das Generieren eines Datenbank-Backups funktioniert jetzt sowohl von der Admin- als auch von der Befehlszeile erwartungsgemäß. Zuvor gab Magento Open Source diesen Fehler aus: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • Wenn Sie setup:config:set ausführen, ohne den --lock-db-prefix-Parameter anzugeben, wird der aktuelle Wert nicht mehr aus der env.php gelöscht.
  • Die Lackkonfiguration wurde aktualisiert, um Gastbenutzer am Zugriff auf zwischengespeicherte Inhalte zu hindern, die sich auf andere Kundengruppen beziehen.
  • bin/magento setup:upgrade wird jetzt erfolgreich abgeschlossen, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörige mview-Indexer installiert.
  • bin/magento setup:upgrade zeigt jetzt eine informativere Fehlermeldung an, wenn ein Warteschlangenthema keinen Themennamen enthält. GitHub-34246
  • bin/magento setup:upgrade zeigt jetzt eine informativere Fehlermeldung an, wenn zusammengeführte XML-Dateien ungültig werden. Die Fehlermeldung enthält jetzt den Dateinamen.

Admin-UI

  • Diagramme sind jetzt erfolgreich standardmäßig auf der Dashboard deaktiviert. GitHub-38430
  • Das Menü Admin Sales zeigt jetzt die Untermenüs korrekt an. Zuvor funktionierte der Spaltenumbruch nicht ordnungsgemäß und einige Untermenüs wurden nicht angezeigt. GitHub-37812
  • Select Dropdown-Menüoptionen sind jetzt auf Admin-> Content Pages sichtbar, wenn mehrere Seiten im Raster ausgewählt sind. GitHub-35386
  • Der Pfad wurde auf den Standardwert von system/dashboard/enable_charts in den Konfigurationseinstellungen korrigiert. Diagramme werden nun wie erwartet im Admin-Bereich angezeigt. GitHub-37668
  • Anzeigeproblem mit Admin-Kundenrastern wurde behoben. Zuvor waren Rasterspalten nicht vollständig in der angezeigten Seite enthalten.
  • Hover-Farben werden jetzt erwartungsgemäß auf die Zeilen der statischen Admin-Raster angewendet. GitHub-35358
  • Der Checkout-Workflow zeigt keine Warnung mehr an, wenn ein Käufer eine Postleitzahl für Griechenland eingibt, die keine Leerzeichen enthält. GitHub-36676
  • Der Link Admin-It's time to change your password wird jetzt erwartungsgemäß zur Seite „Administratorkennwort ändern“ weitergeleitet. GitHub-37902
  • Seitentitel-Suffixe sind jetzt sowohl im title-Tag als auch im meta title-Tag für Produktseiten enthalten. GitHub-37680
  • Die Bedingung für den Produktbestandsstatus wird jetzt korrekt auf die Regeln für zugehörige Produkte angewendet.
  • Die Login as Customer-Schaltfläche wird nun auf Mobilgeräten korrekt angezeigt.
  • Adobe Commerce zeigt die Schaltfläche Admin Add new customer group nicht mehr an, wenn der angemeldete Admin-Benutzer nicht über die Berechtigung zum Hinzufügen einer neuen Kundengruppe verfügt.
  • Ein Admin-Benutzer mit eingeschränkten Berechtigungen kann jetzt ein untergeordnetes Produkt speichern, dessen übergeordnetes Produkt einem anderen Bereich zugewiesen ist. Zuvor hat Commerce den Cache für ein übergeordnetes Produkt, das nicht dem Umfang zugewiesen wurde, in dem das untergeordnete Produkt geändert wurde, ungültig gemacht.
  • Admin-Benutzer können jetzt erfolgreich zwischen Admin-Filteransichten wechseln, ohne dass die Ansichtsdaten beschädigt oder verloren gehen. GitHub-37529

Produkte im Paket

  • Die customerCart-Abfrage gibt jetzt wie erwartet alle angewendeten Rabatte auf Bundle-Produkte zurück. Zuvor wurden die gesamten Rabatte, die auf ein Produktpaket angewendet wurden, als Null zurückgegeben.
  • Produktdetailseiten zeigen jetzt den korrekten Preis für Bundle-Produkte an, für die ein Rabatt von 100 % angewendet wurde. Zuvor hat Magento Open Source keinen 100%igen Rabatt auf die Bundle-Produktpreise angewendet.
  • Die Regeln zum Warenkorbpreis werden jetzt auf Produktpakete angewendet, anstatt auf jedes untergeordnete Produkt für Pakete mit dynamischem Preis.
  • Es wurde ein Fehler korrigiert, der auftritt, wenn Sie den POST V1/shipment-Endpunkt verwenden, um eine Sendung mit einem Produktpaket zu erstellen. Der Endpunkt fügt jetzt erwartungsgemäß Elemente hinzu und gibt nicht mehr diesen Fehler zurück: The shipment couldn't be saved.
  • Sie können jetzt die GET V1/shipment/ API-Route verwenden, um eine Sendung mit einem Paket Produkt zu erstellen, wenn für das Produkt die together Sendungsart festgelegt ist. Paketprodukte werden jetzt auch auf Grundlage ihrer Eigenschaft „Sendungstyp“ validiert.
  • Käufer können jetzt die Menge eines Bundle-Produkts in ihrem Warenkorb bearbeiten. Zuvor verarbeitete Adobe Commerce keine Nullwerte für ItemId, wenn Produkte im Warenkorb der Storefront bearbeitet wurden, und zeigte einen Fehler an. GitHub-37696
  • Bundle-Produkte können jetzt mithilfe von SKUs mit einem Schrägstrich (/) erfolgreich zu einer Admin-Bestellung hinzugefügt werden. Zuvor konnten Admin-Benutzer diese Methode nicht verwenden, um Produkte zu einer Admin-Bestellung hinzuzufügen, und Magento Open Source gab einen JavaScript-Fehler aus.
  • Admin-Benutzer können jetzt Dezimalstandardwerte für neu hinzugefügte Bundle-Optionen festlegen, wenn Qty Uses Decimal für das entsprechende einfache Produkt aktiviert ist. Zuvor konnten Dezimalwerte nur für gespeicherte Auswahlen festgelegt werden.
  • Optimierte Leistung zum Speichern von Bundle-Produkten mit einer großen Anzahl von Optionen
  • Paketprodukte werden jetzt erfolgreich importiert, ohne SKUs in den Produktoptionen zu duplizieren. Zuvor hat Magento Open Source mehrere doppelte SKUs in den Produktoptionen erstellt, wenn Sie Bundle-Produkte mit doppelten Einträgen importiert haben.
  • Der Preis des Bundles wird jetzt korrekt berechnet, wenn eines der Produkte im Bundle nicht mehr vorrätig ist. Wenn ein Produkt, das Teil des Pakets war, nicht vorrätig war, wurde es aus der Preisberechnung entfernt.
  • Paketprodukte werden jetzt als nicht vorrätig angezeigt, wenn das letzte ihrer erforderlichen untergeordneten Produkte gekauft wird. Zuvor wurden Bundle-Produkte in der Storefront als vorrätig angezeigt, wenn ihre einfachen Produkte nicht vorrätig waren.
  • Leistungsprobleme beim Hinzufügen von Paket Produkten mit nicht erforderlichen Optionen zur Warenkorb, die die addBundleProductsToCart Mutation verwenden, wurden behoben.
  • Das categoryList Abfrage gibt nun alle Paket Optionen wie erwartet zurück, wenn die Show out-of-stock products Konfigurationseinstellung aktiviert ist. Bisher waren nicht vorrätige Optionen in der Antwort auf die Abfrage enthalten.
  • Mit POST V1/products erstellte Bundle-Produkte sind jetzt erfolgreich, wenn der Katalogpreisbereich auf website festgelegt ist. Zuvor ist eine Verletzung der Integritätsbeschränkung aufgetreten. GitHub-35595

Cache

  • Kategorien sind jetzt für Käufer in Geschäften sichtbar, in denen der Cache auf Fastly CDN (Caching Application=Fastly CDN) festgelegt ist. Dies betraf sowohl Gastkäufer als auch registrierte Kunden.
  • Die Cache-Cookies nach der Anmeldung sind nun nach dem Browsen auf der Website identisch. Zuvor hat der Anmelde-Controller das falsche Cache-Cookie gesendet, und Seiten wurden möglicherweise mehrmals zwischengespeichert.
  • Antworten von GraphQL GET-Vorgängen auf CMS-Seiten, die CMS-Blöcke enthalten, werden jetzt wie erwartet im Fastly-Cache gelöscht. Nachfolgende Zeitplanaktualisierungen zeigen jetzt genaue, aktualisierte Inhalte für diese Seiten an.
  • Der Seiten-Cache wird jetzt für ein übergeordnetes Produkt erwartungsgemäß gelöscht, wenn eines seiner untergeordneten Produkte vom Administrator gespeichert wurde. Es wurde eine Plug-in-Prüfung eingeführt, um die Cache-Invalidierung für konfigurierbare Varianten zu erreichen, ähnlich wie bei anderen Produkttypen, unabhängig vom Indexerstatus (geplant oder in Echtzeit). Bisher wurden die Preise in der Storefront nicht ordnungsgemäß aktualisiert, nachdem eine konfigurierbare Variante vom Administrator aktualisiert wurde.
  • Es wurde ein Caching Mechanismus für AWS-Anmeldeinformationen hinzugefügt. Ein Anbieter von Anmeldeinformationen verwendet jetzt den Commerce-Cache, um Anmeldeinformationen zwischenzuspeichern, die von AWS für die EC2-Konfiguration abgerufen wurden.
  • Die Plug-in, deren Zweck es ist, die konfigurierbare Cache-Tag hinzuzufügen, wenn ein einfaches Produkt, das mit einem konfigurierbaren Produkt verknüpft ist, gespeichert wird, funktioniert jetzt wie erwartet. Alle relevanten konfigurierbaren Cache-Tags werden erwartungsgemäß entfernt, wenn ein einfaches Produkt von aktualisiert wird POST V1/products. Zuvor wurden nicht alle Preise in der Storefront aktualisiert, und Caches mussten manuell geleert werden. GitHub-36726