Notes de mise à jour de Magento Open Source 2.4.0

Magento Open Source 2.4.0 prend désormais en charge PHP 7.4, Elasticsearch 7.6.x et MySQL 8.0. Les modifications de sécurité substantielles incluent l’activation par défaut de l’authentification à deux facteurs dans l’administrateur.

Avec cette version, l’intégration de la méthode Authorize.Net a été supprimée du code principal. Les commerçants doivent migrer vers l’extension officielle disponible sur le Commerce Marketplace.

NOTE
Intégration des paiements de Braintree : avant la version 2.4.0, il était recommandé aux vendeurs d’installer et de configurer l’extension officielle d’intégration des paiements de Braintree à partir du Commerce Marketplace pour remplacer l’intégration principale. Avec cette version (2.4.0), l’extension est désormais incluse dans la version. Les commerçants doivent suivre d’autres étapes pour s’assurer que Braintree fonctionne correctement dans un déploiement 2.4.0. Voir Braintree pour plus d’informations sur la migration vers la version 2.4.0.

Cette version comprend toutes les améliorations de la qualité de base incluses dans la version 2.3.5-p1, plus de 100 nouveaux correctifs de code principal et 30 améliorations de la sécurité. Elle comprend la résolution de 226 problèmes GitHub par les membres de notre communauté. Ces contributions de la communauté vont du nettoyage mineur du code principal à des améliorations significatives dans Inventory management et GraphQL.

NOTE
Les mises à jour mineures apportent des améliorations importantes au code. Avant la mise à niveau vers la version 2.4.0, vérifiez que votre environnement respecte les exigences techniques de pile minimales.
NOTE
Les versions d’Adobe Commerce peuvent contenir des modifications incompatibles avec l’arrière-plan (BIC). Pour passer en revue les modifications incompatibles avec l’arrière-plan, voir Référence BIC. Les problèmes majeurs d’compatibilité descendante sont décrits dans la section Mise en évidence BIC. Toutes les versions n’introduisent pas de code BIC majeur.
NOTE
Les noms de modules des versions de sécurité sont généralement ajoutés avec -p1. Cependant, nous ne pouvions pas éviter de dévier de ces conventions d’appellation avec la version 2.3.5, qui à son tour a eu un effet d’entraînement temporaire sur les noms de modules de sécurité suivants. Plus précisément, la version 2.3.5 complète est 2.3.5-p1. La version de sécurité que nous publierons à la version 2.4.0 de la version GA sera 2.3.5-p2. Nous espérons revenir aux conventions de dénomination habituelles dans les prochaines versions.

Appliquez AC-3022.patch pour continuer à proposer DHL comme opérateur de transport

DHL a introduit la version 6.2 du schéma et va abandonner la version 6.0 dans un avenir proche. Adobe Commerce 2.4.4 et les versions antérieures qui prennent en charge l’intégration DHL ne prennent en charge que la version 6.0. Les commerçants qui déploient ces versions doivent appliquer AC-3022.patch dès que possible pour continuer à proposer DHL en tant qu'opérateur de transport. Pour plus d’informations sur le téléchargement et l’installation du correctif, reportez-vous à l’article Appliquer un correctif pour continuer à proposer DHL comme opérateur de transport de la base de connaissances.

Correctif de sécurité disponible

Les vendeurs peuvent désormais installer des correctifs de sécurité sensibles au temps sans appliquer les centaines de correctifs fonctionnels et d’améliorations apportés par une version trimestrielle complète (par exemple, 2.3.5-p2). Le correctif 2.3.5.2 (module du compositeur 2.3.5-p2) est un correctif de sécurité qui fournit des correctifs pour les vulnérabilités identifiées dans notre version trimestrielle précédente, 2.3.5-p1. Tous les correctifs qui ont été appliqués à la version 2.3.5 sont inclus dans ce correctif de sécurité. (Un correctif fournit un correctif à une version publiée qui résout un problème ou un bogue spécifique.)

Pour obtenir des informations générales sur les correctifs de sécurité, reportez-vous à la section Présentation de la nouvelle version du correctif de sécurité. Pour obtenir des instructions sur le téléchargement et l’application des correctifs de sécurité (y compris le correctif 2.3.5-p2), reportez-vous à la section Installation sur site rapide. Les correctifs de sécurité incluent uniquement des correctifs de sécurité, et non les améliorations de sécurité supplémentaires incluses dans le correctif complet.

Autres informations de mise à jour

Bien que le code de ces fonctionnalités soit fourni avec des versions trimestrielles , plusieurs de ces projets (par exemple, Inventory management et Progressive Web Application (PWA) Studio) sont également publiés indépendamment. Les correctifs de bogues pour ces projets sont documentés dans les informations de mise à jour distinctes et spécifiques au projet disponibles dans la documentation de chaque projet.

Tons clairs

Dans cette version, recherchez les points forts suivants :

Améliorations substantielles de la sécurité

Cette version comprend plus de 30 correctifs de sécurité et améliorations de la sécurité de la plateforme.

Plus de 30 améliorations de sécurité permettant de fermer les vulnérabilités d’exécution de code distant (RCE) et de script de site à site (XSS)

Aucune attaque confirmée liée à ces problèmes n'a été survenue à ce jour. Cependant, certaines vulnérabilités peuvent être exploitées pour accéder aux informations sur les clients ou prendre le contrôle des sessions d’administrateur. La plupart de ces problèmes nécessitent qu’un attaquant obtienne d’abord l’accès à l’administrateur. Par conséquent, nous vous rappelons de prendre toutes les mesures nécessaires pour protéger votre administrateur, y compris, mais sans s’y limiter, les efforts suivants : placé sur la liste autorisée IP, authentification à deux facteurs, utilisation d’un VPN, utilisation d’un emplacement unique plutôt que /admin, et bonne hygiène du mot de passe. Voir Mises à jour de sécurité disponibles pour Magento pour une discussion sur ces problèmes résolus. pour une discussion sur ces problèmes résolus.

Améliorations supplémentaires de la sécurité

  • Mise en oeuvre de 2FA pour les comptes d’administrateur, les comptes d’utilisateur magento.com et l’accès SSH cloud

    • Sécurisation de votre compte administrateur. L’authentification à deux facteurs (2FA) est désormais requise pour l’administrateur. Les utilisateurs administrateurs doivent d’abord configurer leur compte 2FA avant de se connecter à l’administrateur par le biais de l’interface utilisateur ou d’une API web. 2FA est activé par défaut. Il est vivement déconseillé de désactiver le module 2FA. Cette étape supplémentaire d’authentification rend plus difficile pour les utilisateurs malveillants de se connecter à l’administrateur sans autorisation. Voir Authentification à deux facteurs (2FA).

    • Sécurisation de votre compte. L’authentification à deux facteurs (2FA) offre une couche de sécurité supplémentaire facultative afin de mieux protéger votre compte magento.com contre les utilisateurs non autorisés qui souhaitent utiliser votre compte d’une manière que vous ne souhaitez pas. Voir Sécurisation de votre compte.

  • Sécurisation de l’accès SSH Cloud. L’Adobe sur l’infrastructure cloud permet l’application de l’authentification multifactorielle (MFA) pour gérer les exigences d’authentification pour l’accès SSH aux environnements cloud. L’authentification multifactorielle pour 2FA n’est pas activée par défaut sur un projet. Adobe recommande vivement d’activer cette fonctionnalité. Contactez l’assistance technique pour obtenir de l’aide. Voir Activation de l’authentification multifactorielle pour l’accès SSH.

  • Le mode strict du filtre de modèle est désormais activé par défaut. Les composants (y compris les pages et les blocs CMS) qui utilisent le filtre de modèle en mode hérité peuvent être vulnérables à l’exécution de code distant (RCE). L’activation du mode strict par défaut garantit que les attaques RCE ne peuvent pas être délibérément activées.

  • Le rendu des données pour les fournisseurs de données de l’interface utilisateur est désormais désactivé par défaut. Cela supprime l’opportunité pour les utilisateurs malveillants d’exécuter des JavaScript arbitraires.

  • Nouvelle classe \Magento\Framework\Escaper. Cette classe est fournie pour les modèles .phtml et les classes PHP responsables de la génération de l’HTML. Cette classe contient des méthodes d’assainissement d’HTML adaptées à plusieurs contextes. La variable locale $escaper est disponible dans les modèles .phtml et doit être utilisée à la place de la variable $block->escape{method} obsolète. Utilisez $escaper plutôt que $block, car l’utilisation de $block->escape{method} a été abandonnée.

  • Prise en charge du nouveau fichier security.txt. Ce fichier est un fichier standard du secteur sur le serveur qui aide les chercheurs en sécurité à signaler les problèmes de sécurité potentiels aux administrateurs du site.

  • Améliorations de la prise en charge des stratégies de sécurité du contenu (CSP). SecureHtmlRenderer a été ajouté à la structure et est disponible dans les modèles .phtml pour whitelister les balises intégrées style et script. Les scripts et les styles intégrés ne sont pas autorisés avec la configuration CSP par défaut, qui peut être remplacée par des fichiers XML.

NOTE
À compter de la version 2.3.2, nous assignerons et publierons des numéros CVE (Vulnérabilités et expositions courantes indexées) avec chaque bogue de sécurité signalé par des tiers externes. Cela permet aux utilisateurs d’identifier plus facilement les vulnérabilités non corrigées dans leur déploiement. Vous pouvez en savoir plus sur les identifiants CVE à l’adresse CVE.

Mises à niveau de la plateforme

Les mises à niveau suivantes de la plateforme permettent d’améliorer la sécurité et les performances du site web. Les versions prises en charge de PHP et PHPUnit, Elasticsearch, MySQL et d’autres dépendances sont répertoriées dans la configuration requise pour la pile de technologies.

  • Prise en charge de PHP 7.4 introduite et de PHP 7.1 et 7.2 obsolète. 2.4.0 introduit la prise en charge de PHP 7.4.

  • Prise en charge de PHPUnit 9.x et abandon de PHPUnit 6.5. PHP 7.4 nécessite l’utilisation de la dernière structure de test PHPUnit, qui est PHPUnit 9.x. Les fournisseurs d’extensions Commerce Marketplace doivent confirmer que toutes les nouvelles versions d’extension sont compatibles avec PHP 7.4 et que tous les tests d’unité et d’intégration ont été configurés pour être exécutés avec PHPUnit 9.

  • Prise en charge d’Elasticsearch 7.6.x. Elasticsearch 7.6.x est désormais le moteur de recherche de catalogue par défaut pour Adobe Commerce et Adobe Commerce. Vous ne pouvez pas installer ni mettre à niveau vers la version 2.4.0 sans installer également Elasticsearch 7.6.x. Le code de la version 2.x de l’Elasticsearch a été supprimé. Les versions 5.x et 6.x des Elasticsearch ont été abandonnées et ne sont plus prises en charge. Voir Conditions préalables pour le moteur de recherche.

  • Prise en charge de MySQL 8.0. La version 2.4.x prend en charge MySQL 8.x. (La version 2.4.0 a été testée avec MySQL 8.0.20.) Les commerçants sont encouragés à migrer leurs déploiements vers MySQL 8.x afin de tirer parti de ses performances, sécurité et fiabilité améliorées. Bien que MySQL 5.7 soit toujours pris en charge pour Magento 2.4.x, MySQL 5.6 ne l’est plus. Vous ne pouvez pas héberger la version 2.4.x avec une base de données MySQL 5.6. Voir MySQL.

  • Suppression du moteur de recherche de catalogue MySQL. Le moteur de recherche MySQL a été supprimé de la version 2.4.0 et remplacé en tant que moteur de recherche par défaut par Elasticsearch. Elasticsearch offre des fonctionnalités de recherche supérieures ainsi que des optimisations des performances du catalogue. Tous les commerçants doivent disposer d’un Elasticsearch pour installer et déployer la version 2.4.0. Voir Vérifiez que l’Elasticsearch est installé.

  • Prise en charge de MariaDB 10.4. La prise en charge de MySQL 8.0 permet aux commerçants de déployer MariaDB 10.4 avec Magento Open Source. Bien que les commerçants puissent encore utiliser MariaDB 10.2 avec la version 2.4.0, nous vous recommandons de passer à MariaDB 10.4 pour améliorer les performances et la fiabilité. MariaDB 10.0 et 10.1 ne sont plus prises en charge (en raison de la suppression de la prise en charge de MySQL 5.6 dans cette version).

  • Migration des dépendances sur Zend Framework vers le projet Laminas pour refléter la transition de Zend Framework vers le projet Laminas de la Fondation Linux. Zend Framework est obsolète. Voir la publication DevBlog Migration de Zend Framework vers le projet Laminas .

  • La décomposition des contrôleurs permet aux développeurs d’extensions de mettre en oeuvre ActionInterface directement sans classes "supertype de couche". Voir la publication Décomposition des contrôleurs DevBlog . Amélioration lancée par Vinai Kopp dans la requête de tirage 16268 et finalisée par Lukasz Bajsarowicz dans la requête de tirage 26778. GitHub-9582

  • Suppression de l’intégration principale du code de protection de fraude Signifyd. Cette fonctionnalité principale n’est plus prise en charge. Les commerçants doivent migrer vers l’extension Signifyd Fraud & Chargeback Protection disponible sur le Commerce Marketplace.

  • Le module de Braintree principal a été supprimé de la base de code. Le module Paiements du Braintree fournit désormais le même ensemble de fonctionnalités. Voir Paiements de Braintree.

  • Le navigateur Internet Explorer 11.x n’est plus pris en charge.

Améliorations des infrastructures

Cette version contient des améliorations de la qualité de base, qui améliorent la qualité du framework et ces modules : compte client, catalogue, CMS, importation, panier et passage en caisse, et B2B.

  • Suppression de l’intégration principale des méthodes de paiement tierces. Avec cette version, l’intégration du mode de paiement Authorize.Net a été supprimée du code principal. Les commerçants doivent migrer vers l’extension officielle disponible sur le Commerce Marketplace. Voir l’article de devblog Abandon des intégrations de paiement .

  • Prise en charge de la recherche de mots partiels pour Elasticsearch (nouveau moteur de recherche par défaut). Elasticsearch prend désormais en charge l’utilisation de mots partiels dans les termes de recherche pour les noms de produits et les SKU lors de l’utilisation de la recherche rapide. Cette fonctionnalité a été prise en charge par le moteur de recherche MySQL, qui a été abandonné et remplacé par Elasticsearch dans cette version.

  • Mise à niveau du SDK PayPal JavaScript. Nous avons migré l’intégration du paiement express PayPal vers le dernier SDK JavaScript PayPal, un SDK qui collecte et transmet automatiquement les paramètres de risque nécessaires à PayPal. Le comportement du mode de paiement PayPal Express Checkout reste inchangé. Cependant, la mise à niveau de ce SDK vers la dernière version permet aux commerçants d’accéder aux dernières fonctionnalités et améliorations de sécurité.

  • Abandon et suppression de l’assistant de configuration web. Vous devez utiliser la ligne de commande pour installer ou mettre à niveau la version 2.4.0. Voir Installation du Magento.

  • Module externe de mise à jour du compositeur. Le module externe Composer simplifie le processus de mise à niveau en résolvant les modifications qui doivent être apportées au fichier racine du projet composer.json avant la mise à jour vers une nouvelle version. Ce plug-in protège contre le remplacement des personnalisations. Voir Mise à niveau à l’aide du module externe racine du compositeur.

  • Achat assisté par le vendeur. Cette fonctionnalité permet aux marchands de voir le storefront pour le compte de leurs clients. Les clients choisissent d’autoriser le storefront à accéder à leurs comptes. Cette fonctionnalité développée par la communauté comprend une extension d’origine développée par MAGEFAN. Voir Seller Assisted Shopping. Les fonctionnalités incluent :

    • Liste de contrôle d’accès pour contrôler quels administrateurs peuvent se connecter aux comptes clients sur une base de site web
    • Compatibilité avec plusieurs sites web et portées de compte client
    • Les commandes passées pour le compte des clients sont enregistrées dans le storefront et dans l’administrateur.
    • Toutes les sessions sont détruites suite à la déconnexion de l’administrateur et les administrateurs ne peuvent pas accéder aux mots de passe des clients.

Amélioration des performances

  • Améliorations de la logique d’invalidation de la section de données client. Cette version introduit une nouvelle méthode d’invalidation de toutes les données des sections client, qui permet d’éviter un problème connu avec le stockage local lorsque des invalidations sections.xml personnalisées sont actives. (Auparavant, le contenu privé (stockage local) n’était pas correctement renseigné lorsque vous aviez un etc/frontend/sections.xml personnalisé avec des invalidations d’action.) Voir Contenu privé.

  • Optimisations multiples pour redéfinir les performances. Les améliorations ont permis de réduire le nombre de requêtes envoyées à Redis qui sont effectuées sur chaque requête. Ces optimisations incluent :

    • Diminution de la taille des transferts de données réseau entre Redis et Magento

    • Réduction de la consommation des cycles du processeur par Redis en améliorant la capacité de l’adaptateur à déterminer automatiquement ce qui doit être chargé.

    • Réduction des conditions de concurrence sur les opérations d’écriture Redis

    Voir Utiliser des Redis pour la page et le cache par défaut et Configurer la mise en cache.

  • Amélioration de la mise en cache des résultats des requêtes SQL dans les tables d’inventaire. Ces améliorations incluent :

    • Mise en cache des requêtes SQL vers la table inventory_stock_sales_channel (1 requête au lieu de 16)

    • Mise en cache des résultats des requêtes dans la table inventory_stock (1 requête au lieu de 16)

  • Amélioration de 25 à 30 % des performances du module complémentaire de panier de commande rapide.

  • Les vendeurs peuvent désormais utiliser le chargement différé pour charger les images.

Intégration Adobe Stock v2.0

Possibilité d’obtenir une licence pour les aperçus d’images de stock à partir de la galerie de médias. Les vendeurs peuvent désormais trouver n’importe quelle image d’aperçu Adobe Stock dans la galerie de médias, ce qui réduit le nombre d’étapes requises pour obtenir une licence de l’image d’aperçu du stock.

Ce remplacement de l’ancienne galerie de médias offre une nouvelle interface pouvant faire l’objet de recherches pour les ressources multimédia. Les administrateurs peuvent désormais rechercher, filtrer et trier les images jusqu’à 30 fois plus rapidement qu’avec la version précédente de cette fonctionnalité. Les vendeurs peuvent utiliser cet outil pour évaluer l’utilisation des images du storefront. Les développeurs d’extensions doivent savoir que les extensions développées pour la galerie de médias ne fonctionneront pas comme prévu avec la nouvelle galerie de médias.

Inventory management

Les améliorations apportées à Inventory management dans cette version incluent la prise en charge de la récupération en magasin et de la prise en charge des produits par lots. Voir les notes de mise à jour d’Inventory management pour une discussion plus détaillée sur les correctifs de bogues Inventory management récents.

GraphQL

Les améliorations de GraphQL sont les suivantes :

  • La requête pickupLocations prend en charge la fonction de récupération en magasin du stock
  • La requête categories renvoie une liste de catégories correspondant à un filtre spécifié. Cette requête diffère de la requête categoryList dans la mesure où elle prend en charge la pagination.
  • La mutation reorderItems permet à un utilisateur connecté d’ajouter dans son panier tous les produits d’une commande précédente.

Consultez le Guide du développeur de GraphQL pour plus d’informations à ce sujet et sur d’autres améliorations. Voir les notes de mise à jour pour une discussion détaillée sur les correctifs de bogues récents de GraphQL.

PWA Studio

Voir compatibilité pour obtenir la liste des versions de PWA Studio et de leurs versions compatibles. Pour plus d’informations sur les améliorations et les correctifs, voir Versions de PWA Studio.

Structure de test fonctionnel (MFTF)

MFTF v3.0.0 comprend ces nouvelles fonctionnalités et prend en charge PHP 7.4 et PHPUnit 9 :

  • Les assistants MFTF, qui peuvent créer des actions personnalisées en dehors de la structure de test
  • mises à jour des schémas pour les entités de test
  • sous-dossiers dans les modules de test
  • syntaxe d’assertion imbriquée
  • vérification statique qui vérifie et signale les références aux entités de test obsolètes

Cette version supprime également les actions obsolètes et met à niveau les scripts qui ont été ajoutés pour mettre à niveau les tests vers les exigences de version MFTF majeures.

Améliorations des extensions développées par le fournisseur

Cette version de inclut des extensions développées par des fournisseurs tiers. Il introduit à la fois des améliorations de qualité et d’expérience utilisateur à ces extensions et une extension de la couverture MFTF.

Les fournisseurs d’extensions Commerce Marketplace doivent confirmer que leurs extensions sont compatibles avec PHP 7.4 lors de la publication d’une nouvelle version de leur extension pour la version 2.4.0.

Amazon Pay

Cette version comprend les éléments suivants :

  • Mises à jour des listes autorisées CSP
  • Possibilité d’effectuer plusieurs autorisations pour un ordre de plusieurs éléments
  • Prise en charge des adresses japonaises

Paiements Braintree

Cette extension remplace notre intégration de Braintree principal. Il fournit les mêmes fonctionnalités que l’intégration principale de Braintree. Voir Paiements de Braintree.

Klarna

Cette version comprend de nouvelles options de messagerie sur site pour aider les acheteurs à comprendre les options de crédit et de financement disponibles. Elle comprend également des améliorations apportées aux éléments suivants :

  • remboursements
  • Efficacité des API
  • cookies et tests unitaires
  • remises
  • Les paramètres de configuration contiennent désormais une section Messagerie sur site pour le contrôle de l’affichage de la vitrine des messages promotionnels Klarna.

Vertex

Cette version de Vertex comprend les nouvelles fonctionnalités et améliorations suivantes :

  • Améliorations de l’expérience utilisateur de la configuration d’administration
  • Remplacement des scripts d'installation et de mise à niveau par des fichiers de schéma XML et des correctifs
  • Suppression du code obsolète (ApiClient et ClientInterface)

Yotpo

Les évaluations et les révisions de Yotpo sont intégrées au créateur de pages.

Problèmes résolus

Nous avons corrigé des centaines de problèmes dans le code principal 2.4.0.

Installation, mise à niveau, déploiement

  • Vous pouvez désormais supprimer un site web avec les paramètres de configuration spécifiques à la portée du site web dans app/etc/config.php comme prévu. Auparavant, lorsque vous tentiez de supprimer le site web, l’opération échouait et l’application affichait cette erreur : The website with code xxx that was requested wasn't found. Verify the website and try again. En outre, l’application a affiché cette erreur sur le storefront : Config files have changed. Run app:config:import or setup:upgrade command to synchronize configuration. GitHub-24061
  • Les paramètres de configuration désactivés dans index.php ne sont plus modifiables à partir de l’administrateur.

L’installation du Magento Open Source se termine maintenant correctement et les magasins sont créés comme prévu, lorsque la configuration du magasin est prédéfinie dans config.php.

  • \Magento\Store\App\Config\Source\RuntimeConfigSource::getEntities a été restructuré pour diminuer le nombre de requêtes SHOW TABLE STATUS qu’il crée. (Cette modification rétablit le comportement de cette fonction affiché dans la version 2.3.3.)
  • Les scripts de données ne sont plus exécutés lorsque vous tentez de mettre à niveau la base de données en exécutant bin/magento setup:upgrade. Auparavant, les scripts de mise à niveau étaient réexécutés inutilement, ce qui affectait les performances. GitHub-19469
  • L’application affiche désormais les comportements suivants lorsque votre connexion à Redis est interrompue. Auparavant, l’application ne rechargeait pas la page active et affichait cette erreur : An error has happened during application run. See exception log for details.

    • Les sessions d’administration et de storefront expirent
    • Les administrateurs et les utilisateurs de storefront doivent se reconnecter.
    • Les données de session sont enregistrées dans var/session/
    • Aucune erreur ou exception n’est consignée.
  • La commande bin/magento setup:di:compile n’échoue plus avec les classes anonymes. Correctif soumis par Yevhen Sentiabov dans la demande d’extraction 26533. GitHub-26532, GitHub-21555
  • Les problèmes liés à la compilation LESS dans le thème Luma du Magento lors de l’utilisation d’un autre compilateur LESS que celui fourni avec l’application par défaut ont été résolus. Correctif soumis par Pieter Hoste dans la demande d’extraction 24003. GitHub-23619
  • Vous n’avez plus besoin d’avoir un fichier env.php modifiable lors du passage en mode de maintenance. À la place, l’application définit les en-têtes no-cache pour toutes les requêtes frontales en mode de maintenance (Cache-Control). Auparavant, vous ne pouviez pas activer le mode de maintenance lorsque env.php était en lecture seule et l’application tentait de désactiver le FPC lors du passage en mode de maintenance. Correctif soumis par Marco K̦ pcke dans la demande d'extraction 25790. GitHub-24229
  • db-ssl-verify ne génère plus d’erreur d’index non définie lors d’une configuration de ddev. Correctif soumis par Daniel Ruf dans la demande d’extraction 26763. GitHub-26762
  • Les dépendances du compositeur ont été mises à jour afin de mettre en oeuvre l’expiration de la clé Redis, ce qui a amélioré les performances de Redis. Correctif soumis par une toxix dans la demande d’extraction 25488. GitHub-25487

Intégration Adobe Stock

  • Des styles CSS ont été ajoutés à l’affichage de l’image Adobe Stock pour prendre en charge la mise en surbrillance de l’image sélectionnée. Correctif soumis par Serhiy Zhovnir dans la demande d’extraction 25864. GitHub-761
  • La navigation par le biais des images d’aperçu Adobe Stock n’est plus déclenchée par le déplacement du curseur du champ de saisie à l’aide des touches fléchées. Correctif soumis par Adarsh Manickam dans la demande d'extraction 27138. GitHub-973
  • L’application met désormais en cache les messages d’erreur qui se produisent lorsqu’un client tente d’appliquer un filtre aux images Adobe Stock. Correctif soumis par Shankar Konar dans la demande d'extraction 26502. GitHub-863
  • L’application n’enregistre plus l’aperçu d’une image Adobe Stock lorsque vous déplacez le curseur vers la barre de défilement verticale gauche de la fenêtre après avoir cliqué sur Enregistrer l’aperçu mais sans confirmer l’opération d’enregistrement. Correctif soumis par Serhiy Zhovnir dans la demande d’extraction 27399. GitHub-1002

Serveur principal

  • Les modèles de courrier électronique (Admin > Marketing > Communications > Modèles de courrier électronique) peuvent désormais être prévisualisés à partir de l’administrateur lorsque la minification JavaScript est activée. Auparavant, lorsque vous tentiez de prévisualiser un modèle d’email, la fenêtre contextuelle Aperçu d’un email était vide. GitHub-25068
  • Les administrateurs peuvent désormais se connecter à l’administrateur comme prévu après la création d’un compte administrateur disposant de privilèges limités. Auparavant, l’administrateur n’était pas accessible. Les utilisateurs disposant de ces autorisations étaient redirigés vers le storefront avec une erreur 404. Correctif soumis par Eden Duong dans la demande d'extraction 25909. GitHub-25881
  • L’application ne duplique plus les données d’optimisation pour les moteurs de recherche telles que la clé d’URL, le méta-titre, les méta-mots-clés et la méta-description lorsque vous dupliquez un produit. Correctif soumis par le modèle Dasharth dans la demande d’extraction 26659. GitHub-26054
  • L’application ne renvoie plus d’erreur lorsque vous supprimez une image d’une page lors de sa création à partir de Admin > Contenu > Pages > Ajouter une nouvelle page. Auparavant, l’application renvoyait cette erreur dans la console du développeur : 500 (Internal Server Error). Correctif soumis par Eden Duong dans la demande d'extraction 25924. GitHub-25893

Lot de produits

  • Les performances de l’opération de réindexation catalog_product_price pour les produits de lot ont été améliorées.
  • Les administrateurs ne peuvent plus entrer manuellement une classe de taxe dans l’Admin d’un produit en bundle lorsque les paramètres Tax Class et Dynamic Price du bundle sont désactivés pour la vue de magasin par défaut. Auparavant, lorsqu’un administrateur décochait l’option Utiliser la valeur par défaut en regard de Classe fiscale, l’application activait l’option, ce qui permettait à un administrateur de saisir une autre valeur et d’enregistrer le produit.
  • Les prix des produits groupés sont désormais correctement calculés sur les pages de produits.
  • Vous pouvez désormais ajouter un nombre illimité de produits groupés à votre panier sans erreur. Auparavant, lorsque vous ajoutiez un produit groupé à votre panier, puis que vous accédiez au panier, l’application affichait cette erreur : Please correct the quantity for some products.

Cache

  • Le schéma cache.xsd de Magento\Framework\Cache a été restructuré de sorte qu’un type de cache sans attribut instance ne provoque plus d’exceptions lorsque vous désactivez un module par le biais de la gestion du cache d’administration. Auparavant, lorsque vous créiez un type de cache à l’aide de cache.xml sans l’argument instance, l’application envoyait une exception lorsque vous tentiez de le désactiver. Correctif soumis par Andrii Beziazychnyi dans la demande d'extraction 27307. GitHub-26224
  • health_check.php n’échoue plus si un moteur de cache de base de données est configuré dans votre déploiement. Correctif soumis par Andrii Beziazychnyi dans la demande d'extraction 25722. GitHub-25669

Panier et passage en caisse

  • L’application ne renvoie plus d’erreur lors de l’extraction lorsque le paramètre de configuration Synchroniser avec le serveur principal est activé. GitHub-23833
  • Les boutons radio des méthodes d’expédition sont désormais activés comme prévu dans le workflow de passage en caisse.
  • La page de révision des commandes du workflow de passage en caisse se charge désormais correctement pour une commande envoyée à plusieurs adresses lorsque les conditions générales avec le paramètre Appliqué manuellement sont activées. Auparavant, la page Révision n’était pas validée et l’application affichait une erreur 404.
  • L’application affiche désormais l’icône de rotation lorsque les prix sont mis à jour sur le panier.
  • L’application affiche désormais un message informatif lorsqu’un produit du mini panier est en rupture de stock avant le passage en caisse. Une fois que vous avez supprimé l’article en rupture de stock, l’application affiche le bouton Passez en caisse . Auparavant, l’application n’affichait pas ce bouton.
  • L’application affiche désormais un message d’erreur informatif lorsque vous essayez d’ajouter un produit en cliquant sur Commander par SKU lorsque le fichier à charger est corrompu. Auparavant, l’application affichait une page vierge.
  • L’application applique désormais les règles de prix de panier uniquement aux produits enfants de produit groupé qui correspondent aux critères de règle. Auparavant, l’application appliquait la règle de prix du panier à tous les produits enfants appartenant au produit du lot.
  • StorefrontMiniCartSection a été remplacé parStorefrontMinicartSection dans les tests MFTF. Correctif soumis par Andrii Kalinich dans la demande d'extraction 27955. GitHub-27897
  • Les références codées en dur au composant de sélecteur de pays sur le formulaire d’adresse de livraison ont été supprimées. Correctif soumis par Mateusz Krzeszowiak dans la demande d'extraction 25541. GitHub-22416
  • L’application ne souligne plus l’icône Supprimer dans le panier lorsque le curseur survole l’icône lors de l’affichage de la vitrine dans Internet Explorer. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26173. GitHub-26164
  • Le changement de la rue de facturation ne modifie plus l’adresse de livraison d’un client lorsqu’une seule adresse a été sélectionnée pour les adresses de facturation et de livraison. Correctif soumis par Yurii Tvardyi dans la demande d'extraction 26279. GitHub-26276
  • La région de promotion du mini-panier est désormais rendue comme prévu. Correctif soumis par Matti Vapa dans la demande d’extraction 25375. GitHub-25373

Règle de prix du panier

  • Les règles de prix du panier basées sur des méthodes de paiement sont désormais appliquées pendant le workflow de passage en caisse. GitHub-24206
  • Correction du comportement de l’élément de page du sélecteur de date sur Admin > Marketing > Promotions > Règle de prix du catalogue. Correctif soumis par Hitesh dans la demande d'extraction 26290. GitHub-26289
  • StorefrontMiniCartSection a été remplacé par StorefrontMinicartSection dans les tests MFTF. Correctif soumis par Andrii Kalinich dans la demande d'extraction 27955. GitHub-27897
  • La grille de coupon inutilisée dans le workflow de création de règles de prix de panier a été désactivée. Correctif soumis par Eden Duong dans la demande d'extraction 24471. GitHub-24468
  • Le changement de la rue de facturation ne modifie plus l’adresse de livraison d’un client lorsqu’une seule adresse a été sélectionnée pour les adresses de facturation et de livraison. Correctif soumis par Yurii Tvardyi dans la demande d'extraction 26279. GitHub-26276

Catalogue

  • L’application ne renvoie plus d’erreur lorsque vous modifiez le nom d’un produit intermédiaire inclus dans une mise à jour planifiée. Auparavant, lorsque vous tentiez d’enregistrer le produit sous un nouveau nom, l’application affichait cette erreur : SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '3-0-0-2.0000-0' for key 'UNQ_EBC6A54F44DFA66FA9024CAD97FED6C7', query was: INSERT INTO catalog_product_entity_tier_price (all_groups, customer_group_id, qty, value, website_id, percentage_value, row_id) VALUES (?, ?, ?, ?, ?, ?, ?)
  • Les valeurs d’attribut personnalisées peuvent désormais être enregistrées comme prévu depuis l’administrateur.
  • La fonction Afficher les produits récemment affiche désormais les produits associés uniquement à la vue de magasin actuelle dans les déploiements multi-magasins lorsque Magasins > Configurations > Catalogue > Produits récemment consultés/comparés > Afficher pour actuel est défini sur vue de magasin. Auparavant, l’application affichait les produits récemment consultés de tous les sites web, quel que soit le site web auquel le produit était affecté.
  • L’application affiche désormais les images du produit dans le mini panier sans distorsion. Auparavant, l’application étirait l’image dans le mini panier pour remplir l’intégralité de la largeur et de la hauteur du conteneur d’images.
  • La fonction getBasePrice renvoie désormais une valeur en virgule flottante, comme prévu, plutôt qu’une chaîne.
  • La fonction de comparaison des produits fonctionne désormais comme prévu. Elle affiche désormais uniquement les produits figurant dans la liste de comparaison de l’utilisateur actuel.
  • Vous pouvez désormais attribuer un filigrane par défaut à un thème. Auparavant, après avoir attribué le filigrane, l’application entraînait une erreur fatale.
  • Vous pouvez désormais éditer un produit configurable avec de nombreuses variantes (environ 5 000) depuis l’administrateur. Auparavant, lorsque vous tentiez de modifier un produit configurable avec de nombreux sous-produits, l’application affichait cette erreur : Warning: DOMDocumentFragment::appendXML(): Entity: line 1: parser error : CData section too big found in /vendor/magento/framework/View/TemplateEngine/Xhtml/Template.php on line 60
  • Le tri sur les ensembles d’attributs sur Admin > Catalogue > Produits est désormais basé sur l’ordre alphabétique comme prévu.
  • La fonction Produits récemment consultés fonctionne désormais comme prévu dans les déploiements multi-magasins.
  • La case à cocher Produit sur les sites web de la nouvelle page de produit est désormais activée par défaut pour les administrateurs à accès limité dans les déploiements de sites multiples. Auparavant, la case à cocher du site web autre que celui par défaut n’était pas présélectionnée et si l’administrateur laissait la case désélectionnée, l’application affichait un message d’erreur.
  • Les événements addToCart sont désormais suivis comme prévu dans la couche de données. Auparavant, après avoir modifié les options configurables d’un produit, puis cliqué sur Ajouter au panier, le nouvel événement addToCart n’était pas ajouté à la couche de données.
  • Le mini panier et le panier d’achat Admin (Admin > Clients > Gérer le panier d’achat) affichent désormais les prix corrects lorsqu’une règle de prix catalogue est appliquée. Auparavant, le panier de la vitrine affichait le prix correct du produit, mais le mini panier et le panier d’administration affichaient le prix d’origine du produit.
  • Le filtrage sur la colonne Admin grille de produit du site web fonctionne désormais comme prévu. Auparavant, les résultats du filtre n’affichaient pas le nombre correct de produits, mais affichaient systématiquement le nombre total de produits sous la forme 1.
  • La condition de prix utilise catalog_product_entity_decimal pour filtrer par prix. Cependant, cette table ne contient aucun enregistrement pour les produits configurables, dynamiques et groupés, car ces produits n'ont pas de prix fixe. La table correcte à utiliser pour le filtrage par prix est catalog_product_index_price.
  • Le catalogue d’administration et les listes de produits affichent désormais des symboles de devise dans les colonnes MSRP, Coût et Prix spécial. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27261. GitHub-21910, GitHub-20906, GitHub-20472
  • La fenêtre contextuelle Ajouter au prix du groupe client (Admin > Catalogue > Produits > Nouveau produit > Tarifs avancés) se ferme désormais comme prévu lorsque vous cliquez sur l’icône de fermeture. Correctif soumis par Ashna-Jahan dans la demande d'extraction 25759. GitHub-25433
  • L’exemple de description fourni pour la description et le titre d’un nouveau produit ne contient plus de guillemets doubles. Correctif soumis par Nathan Morgan dans la demande d'extraction 25655. GitHub-25654
  • L’application ne renvoie plus d’erreur lorsque vous tentez de filtrer les produits de la page Catégorie à l’aide d’un prix non valide. Auparavant, l’application consignait cette erreur dans le journal système. Correctif soumis par Ihor Sviziev dans la demande d'extraction 25912. GitHub-25911
  • Vous pouvez désormais naviguer dans les résultats de recherche de catégorie multi-pages. Auparavant, l’application créait des pages de résultats de recherche en double lorsque vous tentiez d’utiliser le bouton Précédent pour revenir à la première page des résultats. Correctif soumis par Douglas Radburn dans la demande d'extraction 25337. GitHub-14971
  • Correction du type de retour sur string|null pour la méthode getSourceModel dans la classe Eav\Attribute.php. Correctif soumis par Mychailo dans la demande d'extraction 2533. GitHub-25278
  • L’enregistrement d’un nouveau produit (dupliqué) n’entraîne plus la duplication des images du produit plusieurs centaines de fois. Correctif soumis par Jeroen dans la demande d’extraction 25875. GitHub-9466
  • L’application ne renvoie plus d’erreur JavaScript lorsque vous supprimez un produit avec une option personnalisée de type file lors de la création d’une commande de la part de l’administrateur. Correctif soumis par adrian-martinez-interactive4 dans la requête de tirage 24843. GitHub-24842
  • Si vous créez un produit sans image en utilisant product_page_image_large dans votre mise en page, une image d’espace réservé s’affiche comme prévu. Auparavant, l’application générait cette erreur : Fatal error: PHP Fatal error: Uncaught TypeError: Argument 1 passed to Magento\Catalog\Block\Product\ImageFactory::getRatio() must be of the type integer, null given. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26974. GitHub-26973
  • Vous pouvez utiliser le point d’entrée POST /V1/:sku/links pour définir des liens de produit avec un tableau vide de produits lorsque le produit comporte des liens existants. Auparavant, l’application entraînait une erreur. Correctif soumis par Sathish Subramanian dans la demande d'extraction 26979. GitHub-26800
  • Vous pouvez désormais utiliser le menu déroulant Actions de la grille Produits pour indiquer si un produit a un poids lorsque vous mettez à jour plusieurs attributs de produits depuis l’administrateur. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26075. GitHub-6310
  • La logique de validation a été ajoutée aux champs Produits par page sur les valeurs autorisées de la grille et Produits par page sur la valeur par défaut de la grille de la page de configuration du magasin. Auparavant, les administrateurs de magasin pouvaient saisir des valeurs indisponibles dans ces champs. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 27093. GitHub-27089_

Widget de catalogue

  • La liste de produits CatalogWidget fonctionne désormais comme prévu avec les catégories d’ancres, et les produits des catégories d’ancres correspondent et s’affichent désormais. Auparavant, lorsque vous sélectionniez une catégorie parente qui était une ancre, mais qui ne contenait pas de produits attribués, les produits n’étaient pas visibles dans le widget.
  • L’application affiche désormais tous les enfants d’une catégorie parente sélectionnée comme prévu. Auparavant, si vous sélectionniez une catégorie parente qui était une ancre, mais qui ne contenait pas de produits attribués, l’application n’affichait pas tous les produits imbriqués.
  • Le widget Produits récemment consultés fonctionne désormais correctement lorsque Magasins > Configuration > Catalogue > Catalogue > Récemment consultés/Comparés > Synchroniser les produits de widget avec stockage principal est défini sur Oui.

Nettoyage

  • Suppression d’une balise de fermeture supplémentaire du code XML du module. Correctif soumis par Tejash Kumbhare dans la demande d'extraction 26339. GitHub-26338
  • Correction d’un mauvais alignement de Mon adresse de facturation et de livraison est la même dans la section de la page Révision et paiements du workflow de passage en caisse. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26169. GitHub-26168
  • Suppression de l’espace blanc superflu entre les libellés de champ et les astérisques dans la section Adresse d’expédition du workflow de passage en caisse. Correctif soumis par Daniel Ruf dans la demande d’extraction 26285. GitHub-26275
  • Correction d’un désalignement des boutons radio dans la section Méthodes d’expédition du workflow de passage en caisse. Correctif soumis par Hitesh dans la demande d'extraction 25966. GitHub-25962
  • Correction de l’espacement incohérent des menus dans la vue mobile. Correctif soumis par Hitesh dans la demande d'extraction 26238. GitHub-26235
  • Correction du désalignement des icônes Modifier et Supprimer du mini panier dans la vue mobile. Correctif soumis par Vasilii Burlacu dans la demande d'extraction 27493. GitHub-26652
  • Correction d’un désalignement de la plage de codes postaux du taux de taxe et de la case à cocher sur la page Ajouter un nouveau taux de taxe/code postal (Admin > Magasin > Taxes > Zones et taux de taxe). Correctif soumis par Sathish Subramanian dans la demande d’extraction 26932. GitHub-26917
  • Le lien de l’assistant de configuration vers l’administrateur fonctionne désormais comme prévu. Correctif soumis par Oleh Usik dans la demande d'extraction 26100. GitHub-24990
  • Le tri a été désactivé dans la colonne d’état de la grille Gestion du cache dans l’Admin. Correctif soumis par Sathish Subramanian dans la demande d'extraction 26215. GitHub-26208
  • Correction d’un mauvais alignement des éléments de page sur la boîte de dialogue Admin > Magasins > Attributs > Évaluations > Ajouter de nouvelles évaluations. Correctif soumis par Sathish Subramanian dans la demande d'extraction 27014. GitHub-26992
  • Correction du décalage de l’icône du calendrier sur la page Ajouter un changement de conception . Correctif soumis par Eduard Chitoraga dans la demande d'extraction 26063. GitHub-20379
  • Suppression de l’espace superflu dans le sous-menu de l’affichage dans le menu de survol de la page d’accueil. Correctif soumis par Hitesh dans la demande d'extraction 25973. GitHub-25972
  • Correction du désalignement des étiquettes de prix sur la page des détails du produit storefront. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26237. GitHub-25936
  • Correction d’un mauvais alignement du texte en rupture de stock par rapport au bouton Ajouter au panier sur la page de liste de produits en mode mobile. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26183. GitHub-26181
  • Le message de réussite de l’intégration affiché sur Admin > Système > Extensions > Intégrations s’affiche désormais correctement. Correctif soumis par divyajyothi5321 dans la demande d’extraction 26011. GitHub-25930

Contenu CMS

  • Vous pouvez désormais enregistrer et dupliquer toutes les pages CMS. Auparavant, l’application renvoyait cette exception lorsque vous tentiez de dupliquer certaines pages : Unique constraint violation found.
  • L’application permet désormais de créer des blocs CMS portant des noms identiques si les blocs sont attribués à des vues de magasin différentes.
  • Les miniatures d’image de la galerie sont désormais mises en cache comme prévu. Auparavant, ces images étaient redimensionnées à la volée.
  • L’application ne renvoie plus d’erreur lorsque vous enregistrez une page CMS qui a été affectée à plusieurs magasins. Auparavant, lorsque vous créiez ou modifiez une page CMS, l’application enregistrait la page, mais envoyait également cette erreur : Item (Magento\VersionsCms\Model\Hierarchy\Node) with the same ID "PAGE_ID" already exists.
  • De nouvelles pages CMS sont désormais ajoutées comme prévu à la hiérarchie des pages de magasin d’un site web.
  • La logique de mise à jour de la mise en page personnalisée de la page CMS a été améliorée. L’application applique désormais des modifications de mise en page spécifiques à partir de cms_page_view_selectable_home_somechanges.xml. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27131. GitHub-26758

Produits configurables

  • Les produits enfants d’un produit configurable peuvent désormais être désactivés avec succès via l’API.
  • Les règles de prix du panier avec une condition définie comme Catégorie (parent uniquement) fonctionnent désormais de manière cohérente comme prévu.
  • Vous pouvez maintenant ajouter un produit configurable au panier à partir de l’onglet Ventes croisées . Lorsque vous sélectionnez un produit et cliquez sur Ajouter au panier dans cet onglet, vous accédez maintenant à la page des détails du produit, où vous pouvez sélectionner des options de produit spécifiques. Auparavant, l’application vous redirigeait vers une page d’erreur 404.
  • L’application ne lie plus un produit simple à un produit configurable lorsque l’appel API pour lier ces produits échoue.
  • Correction du rendu des SKU dans la liste Variations actuelles pour un produit configurable. Correctif soumis par KaushikChavda dans la demande d’extraction 26007. GitHub-25591
  • Vous pouvez désormais enregistrer des informations de configuration system.xml en entrant des valeurs dans Admin > Système > Configuration dans les champs qui n’ont pas d’étiquettes associées. Correctif soumis par Andrii Chorniy dans la demande d’extraction 25985. GitHub-23899
  • Les performances de \Magento\ConfigurableProduct\Model\Product\Type\Configurable::isSalable ont été optimisées. Correctif soumis par Stanislav Ilnytskyi dans la demande d'extraction 26071. GitHub-26065
  • La logique responsable de la mise à jour des images de produits configurables a été améliorée. Auparavant, les produits simples associés à un produit configurable affichaient uniquement l’image par défaut associée au produit configurable, et l’application affichait parfois une image principale incorrecte pour le produit. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 26560. GitHub-26473, GitHub-26856, GitHub-26858
  • L’application affiche désormais le prix spécial d’un produit, comme prévu, lorsque vous sélectionnez une option de réduction pour un produit configurable. Auparavant, class="normal-price" n’était pas remplacé par class="special-price" lorsqu’une option de réduction était sélectionnée. Correctif soumis par Ravi Chandra dans la demande d’extraction 26170. GitHub-24972

Cookies

  • Les fonctions setRedirectCookie et clearRedirectCookie fonctionnent désormais comme prévu. Auparavant, ces fonctions envoyaient des cookies au navigateur, mais tous les paramètres de cookie manquaient. GitHub-24547
  • Des métadonnées ont été ajoutées aux fonctions setRedirectCookie et clearRedirectCookie . Correctif soumis par Alexander Lukyanov dans la demande d'extraction 24612. GitHub-24547

Attributs du client personnalisés

  • L’application ne renvoie plus d’erreur lorsque vous incluez un champ d’attribut du client vide dans le champ Forms à utiliser dans lors de la création d’un compte de société sur le storefront. Auparavant, l’application générait cette erreur : PHP Fatal error: Uncaught TypeError: Argument 2 passed to Magento\Eav\Model\Attribute\Data\Text::validateLength() must be of the type string, null given.

Client

  • Les clients abonnés aux newsletters en tant qu’invités ne sont plus désabonnés après s’être inscrits à un nouveau compte.
  • L’application utilise désormais un nouveau PHPSession pour chaque changement de mot de passe.
  • Vous pouvez désormais créer un client et l’associer à un site web particulier à l’aide du menu déroulant Associer au site web sur Clients > Tous les clients > Ajouter un nouveau client. Auparavant, lorsque vous tentiez d’associer un nouveau client au site web autre que le site par défaut dans un déploiement multi-site, l’application affichait cette erreur : The store view is not in the associated website.
  • L’application enregistre désormais les informations qu’un client saisit dans les champs de facturation et d’expédition par défaut lors du passage en caisse, lorsque la transaction est initialement refusée en raison d’une carte de crédit non valide, mais que la transaction s’est terminée avec succès. Auparavant, bien que l’application ait créé la commande lorsque le client a saisi des informations de paiement valides, elle n’avait pas mis à jour les adresses de facturation ou de livraison par défaut dans la section Mon compte du workflow de passage en caisse.
  • L’application respecte désormais les paramètres du groupe de clients lorsque vous créez un client à partir de l’administrateur dans un déploiement multisite.
  • L’application importe désormais correctement les données client à l’aide de l’option Client et adresses (fichier unique) lorsque cron est activé et que l’indexeur de grille client est défini sur Mettre à jour par planification. Une fois que cron s’exécute, les informations client importées sont disponibles dans l’administrateur comme prévu. Auparavant, l’application importait les données du client, mais ne mettait pas à jour la grille du client avec les enregistrements de client nouvellement importés.
  • Vous pouvez maintenant créer un client à partir du storefront lorsque la date de naissance est requise. Auparavant, vous ne pouviez pas créer de client lorsque ce champ était obligatoire, même lorsque vous avez saisi des valeurs DOB valides. GitHub-26700
  • La création de client à partir de l’administrateur respecte désormais le paramètre de groupe de clients par défaut comme prévu.
  • L’élément PHPSessionId est désormais modifié comme prévu une fois qu’un client s’est déconnecté, puis s’est reconnecté.
  • La vue Admin d’un panier client affiche désormais tous les produits qui ont été ajoutés au panier à partir de plusieurs sites web dans un déploiement multisite. Auparavant, lorsqu’un client ajoutait un produit à son panier à partir d’un site web autre que celui par défaut, le produit ne s’affichait pas dans l’administrateur même si l’option Partager le compte client était définie sur Global.
  • L’application affiche désormais uniquement les produits que le client a placés dans son panier lorsque le panier est consulté à partir de l’administrateur. Auparavant, le panier d’un client affichait tous les produits du catalogue lorsqu’il les affichait à partir de l’administrateur. Correctif soumis par Ravinder dans la demande d’extraction 26489. GitHub-26437
  • La validation fonctionne désormais comme prévu pour le champ Date de naissance lors de la modification d’un client à partir de l’administrateur. Auparavant, l’application n’avait pas tenu compte des paramètres régionaux de l’utilisateur et, pour certaines dates de naissance, cette erreur s’affichait : The Date of Birth should not be greater than today. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27149. GitHub-27027
  • Le champ de courrier électronique n’est plus nécessaire lorsque vous passez une commande à partir de l’administrateur. Correctif soumis par solwininfotech dans la demande d’extraction 24479. GitHub-22251
  • Le tableau de bord Mon compte affiche désormais correctement les valeurs des adresses électroniques dans la vue mobile. Correctif soumis par Eden Duong dans la demande d'extraction 25942. GitHub-25935
  • Cliquer plusieurs fois sur le bouton Créer un compte du formulaire d’enregistrement d’un client n’envoie plus la demande d’enregistrement plusieurs fois. Correctif soumis par princeCB dans la demande d'extraction 26642. GitHub-26590
  • Les clients abonnés aux newsletters en tant qu’invités ne sont plus désabonnés après s’être inscrits à un nouveau compte.
  • L’application utilise désormais un nouveau PHPSession pour chaque changement de mot de passe.
  • Vous pouvez désormais créer un client et l’associer à un site web particulier à l’aide du menu déroulant Associer au site web sur Clients > Tous les clients > Ajouter un nouveau client. Auparavant, lorsque vous tentiez d’associer un nouveau client au site web autre que le site par défaut dans un déploiement multi-site, l’application affichait cette erreur : The store view is not in the associated website.
  • L’application enregistre désormais les informations qu’un client saisit dans les champs de facturation et d’expédition par défaut lors du passage en caisse, lorsque la transaction est initialement refusée en raison d’une carte de crédit non valide, mais que la transaction s’est terminée avec succès. Auparavant, bien que l’application ait créé la commande lorsque le client a saisi des informations de paiement valides, elle n’avait pas mis à jour les adresses de facturation ou de livraison par défaut dans la section Mon compte du workflow de passage en caisse.
  • L’application respecte désormais les paramètres du groupe de clients lorsque vous créez un client à partir de l’administrateur dans un déploiement multisite.
  • L’application importe désormais correctement les données client à l’aide de l’option Client et adresses (fichier unique) lorsque cron est activé et que l’indexeur de grille client est défini sur Mettre à jour par planification. Une fois que cron s’exécute, les informations client importées sont disponibles dans l’administrateur comme prévu. Auparavant, l’application importait les données du client, mais ne mettait pas à jour la grille du client avec les enregistrements de client nouvellement importés.
  • Vous pouvez maintenant créer un client à partir du storefront lorsque la date de naissance est requise. Auparavant, vous ne pouviez pas créer de client lorsque ce champ était obligatoire, même lorsque vous avez saisi des valeurs DOB valides. GitHub-26700
  • La création de client à partir de l’administrateur respecte désormais le paramètre de groupe de clients par défaut comme prévu.
  • L’élément PHPSessionId est désormais modifié comme prévu une fois qu’un client s’est déconnecté, puis s’est reconnecté.
  • La vue Admin d’un panier client affiche désormais tous les produits qui ont été ajoutés au panier à partir de plusieurs sites web dans un déploiement multisite. Auparavant, lorsqu’un client ajoutait un produit à son panier à partir d’un site web autre que celui par défaut, le produit ne s’affichait pas dans l’administrateur même si l’option Partager le compte client était définie sur Global.
  • La validation fonctionne désormais comme prévu pour le champ Date de naissance lors de la modification d’un client à partir de l’administrateur. Auparavant, l’application n’avait pas tenu compte des paramètres régionaux de l’utilisateur et, pour certaines dates de naissance, cette erreur s’affichait : The Date of Birth should not be greater than today. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27149. GitHub-27027
  • Le champ de courrier électronique n’est plus nécessaire lorsque vous passez une commande à partir de l’administrateur. Correctif soumis par solwininfotech dans la demande d’extraction 24479. GitHub-22251
  • L’application affiche désormais uniquement les produits que le client a placés dans son panier lorsque le panier est consulté à partir de l’administrateur. Auparavant, le panier d’un client affichait tous les produits du catalogue lorsqu’il les affichait à partir de l’administrateur. Correctif soumis par Ravinder dans la demande d’extraction 26489. GitHub-26437
  • Le tableau de bord Mon compte affiche désormais correctement les valeurs des adresses électroniques dans la vue mobile. Correctif soumis par Eden Duong dans la demande d'extraction 25942. GitHub-25935
  • Cliquer plusieurs fois sur le bouton Créer un compte du formulaire d’enregistrement d’un client n’envoie plus la demande d’enregistrement plusieurs fois. Correctif soumis par princeCB dans la demande d'extraction 26642. GitHub-26590

Répertoire

  • Le menu déroulant État par défaut est désormais renseigné par des données basées sur les pays autorisés qui ont été affectés au site web sélectionné lorsque vous configurez une valeur pour le champ Calcul de la destination fiscale par défaut. Auparavant, cette liste déroulante répertorie les pays affectés au site web par défaut.

Téléchargeable

  • Vous pouvez désormais utiliser un fichier d’importation pour mettre à jour les produits téléchargeables en bloc par SKU et par description. Auparavant, des erreurs de validation se produisaient et l’importation échouait.

EAV

  • L’application respecte désormais les paramètres propres au magasin qui déterminent si le champ du numéro de téléphone du workflow de passage en caisse est requis dans un déploiement multisite. Auparavant, dans les déploiements où un magasin nécessitait ce champ dans le workflow de passage en caisse et où un autre magasin ne l’avait pas renseigné, les clients qui n’ont pas renseigné ce champ lors de l’extraction du magasin qui ne le nécessitait pas rencontraient cette erreur : Please check the shipping address information. "telephone" is required. Enter and try again.
  • L’ordre de tri des fichiers EAV par attribute option_id fonctionne désormais comme prévu. Correctif soumis par Tan Sezer dans la demande d’extraction 24360. GitHub-24357
  • Vous pouvez désormais créer un produit après avoir ajouté un nouvel attribut via REST et l’avoir affecté à un ensemble d’attributs à partir de l’administrateur. Auparavant, l’application générait une erreur 500. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27191. GitHub-26827

Email

  • Les courriers électroniques d’autorisation envoyés à un client lorsqu’il demande un retour contiennent désormais le statut RMA attendu. Auparavant, ce courrier électronique affichait une chaîne vide au lieu de l’état de retour attendu.
  • Les clients ne sont plus redirigés à partir du site web actuel lorsqu’ils signalent un mot de passe oublié dans les déploiements multisites où les comptes clients sont partagés à l’échelle mondiale. Auparavant, les clients étaient redirigés vers le site web sur lequel le compte était créé.
  • Les emails de confirmation de commande envoyés aux clients incluent désormais la liste des articles commandés, comme prévu. Auparavant, lorsque vous créez un modèle d’email dans l’administrateur en chargeant et en enregistrant le modèle par défaut, les emails générés à partir de ce modèle n’incluaient pas la liste des éléments commandés. GitHub-26882

Frameworks

  • Les dépendances de Zend Framework ont été migrées vers le projet Laminas pour refléter la transition de Zend Framework vers le projet Laminas de la Fondation Linux. Zend Framework est obsolète. Correctif soumis par Ihor Sviziev dans la demande d'extraction 26436. GitHub-26335
  • Les paramètres de plage de prix spéciaux (dates de début et de fin) fonctionnent désormais correctement pour les comptes d’administrateur utilisant un paramètre régional néerlandais.
  • php bin/magento cron:run ne traite plus les éléments de la table du journal des modifications plusieurs fois. Auparavant, lorsque vous aviez plus de 100000 nouvelles versions dans la table du journal des modifications, les actions pouvaient être appelées plusieurs fois pour le même entity id.

  • La commande php bin/magento setup:cron:run a maintenant été supprimée. Les références à ce paramètre dans les onglets doivent être supprimées lors de la mise à niveau.

  • Le fichier update/cron.php a été supprimé dans la version 2.4.0. S’il existe dans votre installation, il peut être supprimé en toute sécurité. Supprimez également les références à ce fichier dans les onglets lors de la mise à niveau.

  • L’action Mettre à jour l’attribut met désormais correctement à jour l’horodatage de updated_at column d’un produit à partir de catalog_product_entity lorsque vous mettez à jour le produit à partir de la page Modifier le produit de l’administrateur.
  • La définition de 'persistent' => '1' dans env.php ne renvoie plus d'erreur lorsque vous exécutez setup:upgrade.
  • La Clé de formulaire non valide. Actualisez la chaîne de texte de page sur la page de connexion est maintenant traduite comme prévu.
  • Nous avons amélioré les performances de la fonction Magento\Framework\App\DeploymentConfig\Reader::load. Auparavant, lorsqu’une demande était envoyée à Magento, cette fonction était appelée de manière répétitive, ce qui entraînait le chargement des fichiers config.php et env.php config chaque fois que la méthode était appelée.
  • L’application ne télécharge plus de page blank.html lorsqu’un administrateur clique sur un produit lors de la création d’une commande à partir de l’administrateur.
  • Les blocs non mises en cache ajoutés à la mise en page par défaut dans les instructions de référence pour les composants non existants (non déclarés) de la page n’affectent plus la mise en cache de la page. L’ajout de blocs non pouvant être mis en cache aux gestionnaires de mise en page par défaut rend toutes les pages non mises en cache. Cela résulte du processus de génération de la mise en page : lors de la génération de la mise en page, l’application collecte toutes les poignées de mise en page disponibles pour une page donnée et fusionne les instructions à partir de ces poignées dans la structure de mise en page finale de la page. La poignée de mise en page par défaut est utilisée comme poignée de base pour chaque page. Par conséquent, les mises à jour de mise en page déclarées pour le gestionnaire par défaut apparaissent sur chaque page. GitHub-9041
  • Le gestionnaire de verrouillage MySQL est désormais le gestionnaire principal de verrouillage. Par conséquent, la version minimale requise de MySQL est 5.7.9.
  • queue_consumer.xml autorise désormais les nombres dans la classe handler. Auparavant, lorsqu’un gestionnaire contenait un nombre dans son chemin d’accès, la validation XSD échouait. Correctif soumis par Eden Duong dans la demande d'extraction 25952. GitHub-25731
  • Une référence @var incorrecte dans le bloc doc de la variable de membre de classe $queueIterator dans la classe \Magento\Framework\MessageQueue\Topology\Config a été corrigée. Correctif soumis par Artem Voloznov dans la demande d’extraction 24976. GitHub-24971
  • Les écouteurs de chargement de page JavaScript sont désormais déclenchés pour se déclencher lorsqu’un document n’est plus loading au lieu d’attendre qu’il soit marqué comme complete comme étant en attente jusqu’à ce que le document soit marqué comme complete, ce qui peut entraîner de graves délais dans le rendu du contenu JavaScript. Correctif soumis par John Hughes dans la demande d’extraction 23313 et la demande d’extraction 50}. GitHub-22909
  • L’application affiche désormais le message informatif suivant lorsque vous essayez d’ajouter un produit à votre liste de souhaits avec une quantité de 0 ou un nombre négatif : Please enter a valid number in this field. Auparavant, l’application affichait cette erreur : We can't update your Wish List right now. Correctif soumis par Pawe Tylek dans la demande d’extraction 25641. GitHub-25032
  • L’application ne prend plus en charge l’héritage des classes DTO de la classe Magento\Framework\Api\AbstractExtensibleObject. Annotation PHP manquante @api a été ajouté à AbstractExtensibleModel et le @deprecated manquant annotation a été ajoutée à AbstractExtensibleObject. Correctif soumis par Alexander Taranovsky dans la demande d’extraction 22011. GitHub-22010
  • Vous pouvez désormais enregistrer les produits comme prévu après la modification d’une date liée aux produits (par exemple, news_from_date, news_to_date, special_price_from_date, special_price_to_date) dans les magasins implémentant des paramètres régionaux autres que l’anglais. Auparavant, l’application renvoyait une erreur similaire à celle-ci : Invalid input datetime format of value '22/5/2019.

Correctifs généraux

  • Le module Client ne dépend plus du module Révision. Auparavant, vous ne pouviez pas désactiver le module de révision en raison de cette dépendance.
  • La page de modification du produit se charge désormais correctement lorsque l’ensemble d’attributs par défaut de la page contient un attribut de liste déroulante avec le libellé sélectionné.
  • Le graphique des commandes accessible à partir de l’onglet Commandes sur l’Admin reflète désormais précisément la quantité de commandes.
  • L’URL d’administration d’un magasin ne redirige plus vers l’URL du storefront lorsque ces deux URL diffèrent.
  • La génération de réécriture d’URL pour les sous-catégories fonctionne désormais correctement lors de l’utilisation du profil de la boîte à outils de performance avec plusieurs sites web.
  • Vous pouvez désormais supprimer un modèle utilisateur vide sans supprimer le rôle Administrateurs auquel il est affecté.
  • L’éditeur TinyMCE4 prend désormais en charge toutes les balises d’HTML.
  • Cliquer sur le bouton Rembourser hors ligne dans le processus de création d’une note de crédit génère désormais une note de crédit comme prévu. Auparavant, une erreur JavaScript désactivait ce bouton et la demande ne créait pas d’note de crédit.
  • Les vendeurs peuvent désormais créer un attribut de produit de type Decimal. Auparavant, en raison d’un correctif de bogue précédent, l’application n’affichait pas le type d’attribut de produit Price. GitHub-26949
  • L’application ne renvoie plus d’erreur 500 lorsque vous essayez d’ouvrir une page Catégorie sur le storefront lorsque Disposition = Produit - Largeur complète a été défini à partir de l’onglet Conception de la page Catégorie.
  • Correction d’un bogue dans AbstractSimpleObjectBuilder.php.
  • Le MAP (prix minimum annoncé) fonctionne désormais comme prévu pour les produits de groupe.
  • L’application vous redirige désormais vers la page d’accueil de la vue de magasin appropriée lorsque vous modifiez la langue sur les pages CMS dans un déploiement multi-magasin. Auparavant, l’application affichait une page 404 lorsque vous changiez de langue sur certaines pages CMS.
  • Les requêtes de commande (SalesOrderIndexGridAsyncInsertCron) ont été reconfigurées afin de réduire la taille de l’ensemble de données renvoyé et la fréquence des requêtes.
  • Vous pouvez désormais créer une page CMS et l’affecter à la catégorie racine du site web dans la hiérarchie CMS.
  • Les invités peuvent maintenant afficher un prix de produit ou ajouter un produit au panier lorsque les autorisations de catégorie sont activées (par exemple, lorsque le groupe de clients Non connecté a reçu ces privilèges).
  • Les règles de produit s’appliquent désormais aux produits en rupture de stock comme prévu. Auparavant, l’application n’affichait pas les produits en rupture de stock dans la liste des produits associés, même lorsque la règle était configurée pour afficher les produits en rupture de stock.
  • Si vous cliquez sur le bouton Suivi de l’expédition pour une commande à partir de l’administrateur, les informations de suivi s’affichent désormais dans une fenêtre contextuelle comme prévu. Auparavant, ce lien dirigeait l’administrateur vers la page Connexion .
  • L’application affiche désormais un message d’erreur informatif et continue d’afficher le formulaire d’enregistrement comme prévu si une erreur se produit lorsqu’un client tente de remplir un formulaire d’enregistrement contenant un attribut de client à sélection multiple. Auparavant, l’application affichait une erreur 500.
  • La demande affiche désormais le bouton Note de crédit après le remboursement partiel d’une commande. Auparavant, la demande n’affichait pas ce bouton après la création d’un remboursement partiel et vous ne pouviez pas créer d’avoir pour le reste de la commande.
  • Les mises à jour des commandes en bloc via REST modifient désormais l’état de la commande comme prévu. Auparavant, l’application générait cette erreur : report.ERROR: Property "AdditionalInformation" does not have accessor method "setAdditionalInformation" in class "Magento\Sales\Api\Data\OrderPaymentInterface".
  • Les filtres d’attributs s’affichent désormais comme prévu dans le bloc Options d’achat de la page Catégorie .
  • Les adresses de facturation et de livraison du client s’affichent désormais comme prévu sous l’onglet Adresses de la page Modifier le client d’administration lorsqu’elles sont affichées dans Internet Explorer. Correctif soumis par Vasilii Burlacu dans la demande d'extraction 27383. GitHub-27370
  • Toutes les vues de signet restent modifiables lorsque vous en supprimez une. Auparavant, toutes les vues des signets devenaient non modifiables une fois la première vue supprimée pour les comptes avec plusieurs vues de signets. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26263. GitHub-14913
  • La navigation par calques n’interrompt plus la validation HTML5 du module d’échantillon. Auparavant, des erreurs de validation d’HTML se produisaient pour les attributs qui n’étaient pas définis dans le service de validation des balises W3C, mais ces attributs ont été modifiés en attributs de données. Correctif soumis par Nirav Patel dans la demande d'extraction 26055. GitHub-22363
  • Un alias require.JS inutilisé (critical-css-loader ) has been removed from app/code/Magento/Theme/view/frontend/requirejs-config.js. Correctif soumis par Tu Nguyen dans la demande d'extraction 26987. GitHub-26963
  • L’application implémente désormais l’ interface throwablede PHP7.x afin de permettre la capture de toutes les erreurs susceptibles d’exposer des informations sensibles telles que les mots de passe. Correctif soumis par miszyman dans la demande d'extraction 25250. GitHub-23350
  • Appuyez sur la touche Échap lorsque vous saisissez le nom d’un nouveau dossier dans la fenêtre contextuelle Créer un dossier ferme désormais la fenêtre contextuelle comme prévu sans créer le dossier. Correctif soumis par Shankar Konar dans la demande d'extraction 25349. GitHub-572
  • Correction d’une structure d’HTML imbriquée. Auparavant, cette structure entraînait une mise en page rompue pour la liste des produits associés, de ventes incitatives ou de ventes croisées. Correctif soumis par Pieter Hoste dans la demande d’extraction 27926. GitHub-27920
  • Suppression de l’appel dupliqué à addToolbarBlock, qui avait entraîné deux conditions similaires dans ORDER BY. Correctif soumis par Vasilii Burlacu dans la demande d'extraction 27263. GitHub-26708
  • Les vendeurs peuvent désormais définir une date d’expiration sur les comptes d’utilisateurs administrateurs. Correctif soumis par Laura Folco dans la demande d’extraction 22837. GitHub-22833
  • Nous avons ajouté l’annotation @api PHP à AbstractExtensibleModel, l’annotation @deprecated PHP à AbstractExtensibleObject et @see à AbstractExtensibleModel. Correctif soumis par Alexander Taranovsky dans la demande d’extraction 22011. GitHub-22010

GraphQL

  • L’application renvoie désormais le message GraphQL The cart isn't active au lieu de Current user does not have an active cart dans certains cas lorsqu’un panier devient inactif et qu’un nouvel ID de panier est créé. Correctif soumis par Vadim Malesh dans la demande d'extraction 27187. GitHub-26117
  • Suppression du code qui provoquait une erreur lors de l’utilisation de GraphQL pour ajouter des produits à un panier lorsqu’un produit précédemment ajouté devenait en rupture de stock. Correctif soumis par AleksLi dans la demande d'extraction 27015. GitHub-26683
  • Correction d’un problème dans GraphQL en raison duquel l’application ne renvoyait pas toutes les informations requises lors de l’utilisation de fragments sur la requête de produits. Correctif soumis par Riccardo Tempesta dans la demande d’extraction 26218. GitHub-26217

  • La mutation GraphQL setShippingMethodsOnCart ne récupère plus les mauvaises données dans l’attribut available_shipping_methods. Correctif soumis par Vadim Malesh dans la demande d'extraction 27004. GitHub-26742

Produits regroupés

  • Vous pouvez désormais ajouter un produit simple appartenant à un produit de groupe au panier lorsqu’un autre produit simple appartenant à ce même groupe est en rupture de stock. Correctif soumis par Gihovani Filipp Pereira Dem̩ trio dans la demande d'extraction 24955. GitHub-22304
  • L’application envoie désormais un courrier électronique aux clients au sujet des produits de groupe remboursés, comme prévu. Correctif soumis par Alexander Taranovsky dans la demande d'extraction 26246. GitHub-26245
  • Vous pouvez désormais ajouter un produit enfant d’un produit groupé à votre panier lorsque l’un des autres produits enfants du produit groupé est en rupture de stock. Auparavant, lorsqu’un produit enfant était en rupture de stock, vous ne pouviez pas ajouter d’autres produits enfants au panier.

Images

  • Les images sont désormais enregistrées dans pub/media/catalog/category comme prévu lors de l’enregistrement des images de catégorie. Auparavant, l’application enregistrait ces images dans pub/media/catalog/tmp/category.
  • Les images de filigrane n’obscurcissent plus l’image du produit qu’elles recouvrent. Auparavant, lorsque l’image de filigrane était plus grande que l’image de produit à laquelle elle était appliquée, l’image de produit n’était pas visible.
  • Vous pouvez désormais enregistrer une image dans une catégorie à partir de l’administrateur. Auparavant, une fois l’image enregistrée, une partie de l’URL était manquante et vous ne pouviez pas la rouvrir.
  • L’application affiche désormais .png images comme prévu après le téléchargement.
  • L’utilisation de REST pour ajouter ou mettre à jour une image crée désormais une miniature comme prévu. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27170. GitHub-26825
  • Les attributs personnalisés des images générées par Block\Product\ImageFactory s’affichent désormais correctement. Auparavant, vous ne pouviez pas ajouter vos propres attributs personnalisés aux balises d’attribut en raison d’une séquence d’échappement incorrecte de la sortie de l’HTML. Correctif soumis par alexander-aleman dans la demande d'extraction 26959. GitHub-25219
  • Les images ne sont plus floues lorsqu’une vitrine est vue à partir d’une iPhone. Correctif soumis par Dimitri dans la demande d'extraction 24743. GitHub-24735
  • Les images sur le storefront sont désormais réactives. Auparavant, la hauteur de l’image était déformée. Correctif soumis par Sean van Zuidam dans la demande d'extraction 27041. GitHub-27040
  • Le logo de magasin par défaut est maintenant visible sur le storefront lorsque le thème Magento_blank est utilisé. Correctif soumis par Vasilii Burlacu dans la demande d'extraction 27497. GitHub-27496

Import/export

  • L’application ne renvoie plus d’erreur lors de l’importation lorsque les données importées incluent une clé swatch_image de vue de magasin avec une valeur no_selection. Auparavant, l’application générait cette erreur : Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s): 1. GitHub-25026
  • L’application met à jour les images comme prévu lorsque vous utilisez le paramètre hide_from_product_page lors de l’importation de produits dans des déploiements avec plusieurs vues de magasin.
  • Les options personnalisables sont désormais importées comme prévu lorsque row_id n’est pas égal à entity_id d’un produit. Auparavant, l’application n’importait pas d’options personnalisables lorsque row_id n’était pas égal à entity_id d’un produit, ce qui empêchait l’importation de certains produits.
  • Les images associées aux produits configurables sont désormais correctement chargées lors de l’importation et disponibles pour affichage comme prévu dans la page de modification du produit.
  • Les fichiers .csv exportés reflètent désormais les paramètres de filtre pour inclure les produits en stock ou en rupture de stock. Auparavant, l’application exportait tous les produits, quel que soit le paramètre de stock sélectionné.
  • Vous pouvez désormais importer ou mettre à jour des clients avec succès à l'aide de l'option Client et adresses un seul fichier du workflow d'import. Auparavant, lorsque vous sélectionniez cette option, l’application n’importait pas les données du client et affichait cette erreur : Invalid data for insert.
  • L’indexeur de stock est maintenant déclenché comme prévu après l’importation et met à jour l’état du produit. Auparavant, l’indexeur Stock n’indexait pas les données d’inventaire des produits modifiées.
  • L’application importe désormais toutes les options personnalisées pour les produits enfants d’un produit configurable lorsque store_view_code est spécifié. Cela fonctionne que vous choisissiez d’importer des produits configurables individuellement ou collectivement. Auparavant, l’application n’importait pas toutes les options personnalisées lorsque le fichier d’importation contenait plusieurs éléments et que store_view_code était spécifié.
  • L’application fournit désormais un message lors de l’importation du produit qui identifie les produits du fichier .csv importés ayant des clés dupliquées. Les vendeurs peuvent utiliser ces informations pour résoudre les conflits. Auparavant, l’application affichait cette erreur : Notice: Undefined index: name in /var/www/html/ee233dev/app/code/Magento/CatalogImportExport/Model/Import/Product.php on line 2524
  • L’application affiche désormais un message d’erreur plus informatif et n’affiche pas de lien de téléchargement lorsque vous essayez de supprimer un répertoire de la liste Système > Exporter. Auparavant, lorsque vous tentiez de supprimer un répertoire de cette liste, l’application continuait à afficher un lien de téléchargement pour les fichiers qui ne pouvaient pas être téléchargés et affichait un message d’erreur informatif.
  • Le fichier .csv utilisé lors de l’importation contient désormais les liens appropriés pour les produits téléchargeables et est désormais correctement formaté pour prendre en charge l’importation et la mise à jour des produits téléchargeables.
  • L’application exporte désormais avec succès un fichier .csv lorsque vous définissez le comportement d’importation pour Remplacer, sélectionnez un fichier .csv précédemment exporté et cliquez sur Vérifier les données. Auparavant, l’application affichait cette erreur : Data validation failed. Please fix the following errors and upload the file again et Following Error(s) has been occurred during importing process.
  • L’indexeur de stock est maintenant déclenché comme prévu après l’importation et met à jour l’état du produit. Auparavant, l’indexeur Stock n’indexait pas les données d’inventaire des produits modifiées.
  • Les fichiers .csv générés lors de l’importation de produits contiennent désormais des titres de groupe pour les produits téléchargeables comme prévu. Auparavant, une validation inutile de group_title pendant l’importation empêchait l’affichage des titres de groupe pour les produits téléchargeables.
  • Lorsque cron est activé et que vous effectuez un import client à l’aide de l’option (Client et adresses (fichier unique)), l’application remplit les données sur la grille client d’administration comme prévu. La grille du client affiche les clients une fois la réindexation manuelle terminée pour customer_grid indexer. Auparavant, l’application ne mettait pas à jour la grille client avec les adresses client nouvellement importées.
  • L’application affiche désormais la liste des clients comme prévu après la réindexation automatique. Auparavant, même si l’exécution manuelle de bin/magento index:reindex fonctionnait, la grille du client n’affichait pas les informations du client après la réindexation automatique.
  • L’application supprime désormais les fichiers temporaires de <Magento_home>/var comme prévu une fois l’importation du produit terminée.
  • L’application ne crée plus de SKU en double dans l’administrateur lorsque des produits sont importés par le fichier .csv.
  • L’importation n’échoue plus lorsque l’attribut configurable importé inclut un signe égal (=) dans sa valeur. Correctif soumis par dhoang89 dans la demande d’extraction 25194. GitHub-25188
  • Toutes les données de grille exportées (données Magento Open Sources et personnalisées) ont désormais des libellés d’option au lieu de valeurs d’option pour toutes les colonnes de type Select ou Multiselect. Auparavant, lors de l’exportation de ces données, la feuille de calcul exportée contenait des colonnes avec identifiant plutôt que les valeurs affichées dans la grille. Correctif soumis par Maxim Novik dans la demande d'extraction 26523. GitHub-25963
  • L’application affiche désormais les produits groupés sur le storefront comme prévu après la mise à jour d’un produit par l’importation d’un fichier .csv. Correctif soumis par Pavel Bystritsky dans la demande d'extraction 25664. GitHub-25540

Index

  • Nous avons amélioré les performances de indexer_update_all_views. L’indexation est désormais plus rapide, les règles inactives ne sont plus traitées et les caches sont effacés des entrées pour les produits modifiés uniquement.
  • Les prix des produits sur le storefront reflètent désormais fidèlement l’application d’une mise à jour planifiée de la règle de prix du catalogue. Auparavant, les prix ne reflétaient pas la règle de prix du panier planifiée tant que vous n’avez pas réindexé manuellement (php bin/magento indexer:reindex catalogrule_rule).
  • Vous pouvez désormais réindexer la base de données de produits après avoir ajouté un attribut qui ne peut pas faire l’objet de recherches (c’est-à-dire que les attributs is_searchable, is_filterable et is_visible_in_advanced_search sont désactivés).
  • L’application affiche désormais un message qui identifie l’indexeur et le temps pris par l’opération d’indexation lorsqu’une opération de réindexation échoue. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26207. GitHub-26206
  • Les produits enregistrés dans les magasins où l’indexeur onthefly et les tables plates sont activés respectent désormais les affectations de site web. Auparavant, si vous supprimiez toutes les affectations de site web d’un produit, puis que vous l’enregistriez, toutes les tables plats incluaient le produit, en dépit des affectations de site web spécifiées. Correctif soumis par Abel Truong dans la demande d'extraction 27365. GitHub-16315

Infrastructure

  • Le navigateur Internet Explorer 11.x n’est plus pris en charge.
  • La logique de validation associée au champ Date of birth (Date de naissance) du formulaire d’enregistrement du client ne déclenche plus d’erreur JavaScript.
  • Ajout d’un test d’intégration pour couvrir $storeId pour la méthode get() du référentiel de catégorie. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 27048. GitHub-27044
  • L’activation du paramètre Bloquer tous les cookies dans Safari ne génère plus d’erreurs JavaScript et l’application affiche le message cookies disabled comme prévu. Auparavant, l’application affichait plusieurs erreurs SecurityError (DOM Exception 18): The operation is insecure dans la console. Correctif soumis par Ra̼ l Verdugo Lorenzo dans la demande d'extraction 25324. GitHub-13865
  • L’application ne renvoie plus cette erreur lors de l’exécution des tests d’intégration : Error: Call to a member function findFile() on array (/var/www/html/lib/internal/Magento/Framework/Code/Generator/DefinedClasses.php:59). Auparavant, un problème avec AutoloaderRegistry::getAutoloader provoquait l’échec aléatoire des tests d’intégration. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26480. GitHub-26479
  • La balise date de /module-sales/view/frontend/templates/order/order_date.phtml a été corrigée sur span. Auparavant, l’application consignait une erreur dans le fichier exception.log lorsque vous cliquiez sur la page Afficher la commande du storefront Mon compte > Mes commandes. Correctif soumis par Andrii Chorniy dans la demande d’extraction 25895. GitHub-13269, GitHub-25738
  • Le module de mixin JavaScript a été restructuré afin d’améliorer le chargement et l’application des mixins pour les modules groupés avancés. Auparavant, l’application ne chargeait pas ni n’appliquait de mixins pour les modules groupés avancés. Correctif soumis par Mateusz Krzeszowiak dans la demande d'extraction 25587. GitHub-25586
  • La commande grunt clean nettoie désormais les dossiers de code et de métadonnées générés comme prévu. Correctif soumis par Andrii Beziazychnyi dans la demande d'extraction 25765. GitHub-25739
  • Le résultat getVersion (ProductMetadata::getVersion) est maintenant mis en cache, ce qui améliore les performances de la méthode ProductMetadata::getVersion. Correctif soumis par Lukasz Lewandowski dans la demande d’extraction 26001. GitHub-24025
  • Un paramètre manquant pour additional_information a été ajouté à OrderPaymentInterface, ce qui résout une incohérence entre sa déclaration de schéma et les propriétés acceptées. Correctif soumis par Antonino Bonumore dans la demande d'extraction 26748. GitHub-26745, GitHub-13222
  • L’application effectue désormais le rendu de l’attribut Oui/Non sur la page Catégorie lorsque l’option Utiliser dans la navigation par couches : filtrable (avec les résultats) est activée pour les propriétés du storefront.
  • La redondance \Magento\Sales\Model\Order\Email\Sender\ShipmentSender a été abandonnée au profit de \Magento\Sales\Model\Order\Shipment\Sender\EmailSender. Correctif soumis par Adarsh Manickam dans la demande d'extraction 26714. GitHub-14885

Galerie de médias

  • Cliquez sur Entrée après avoir nommé un nouveau dossier dans la galerie de médias pour enregistrer toutes les modifications que vous avez apportées. Auparavant, si vous cliquiez sur Entrée au lieu d’utiliser la souris pour sélectionner OK, toutes les modifications étaient perdues. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27029. GitHub-26847
  • Vous pouvez désormais créer sous la galerie multimédia un sous-dossier portant le même nom que le dossier principal. Auparavant, vous ne pouviez pas enregistrer le sous-dossier portant le même nom. Correctif soumis par Vadim Malesh dans la demande d'extraction 27976. GitHub-1270

Stockage multimédia

  • var/resource_config.json n’est plus régénéré chaque fois qu’une image est demandée par get.php. Auparavant, ce fichier était réécrit à chaque appel à get.php.

Newsletter

  • Les clients peuvent désormais s’abonner comme prévu aux newsletters. Auparavant, lorsqu’un client tentait de confirmer son abonnement, l’application affichait cette erreur : This is an invalid subscription confirmation code.
  • Le champ de saisie de newsletter du pied de page du storefront est désormais rendu de manière identique par tout navigateur pris en charge. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26182. GitHub-26176
  • Les messages Storefront relatifs aux abonnements à des newsletters sont désormais rendus comme prévu dans HTML. Correctif soumis par Oleh Usik dans la demande d'extraction 26455. GitHub-25162

Commandes

  • Les sous-totaux de résumé de commande n’affichent plus les taxes exclues lorsque les paramètres d’affichage du site web spécifient que les taxes doivent être exclues. Auparavant, lorsque plusieurs sites web étaient configurés avec des paramètres d’affichage différents, le paramètre défini dans la variable de serveur était utilisé pour le magasin en dépit des configurations au niveau du magasin.

Modes de paiement

  • L’intégration des méthodes de paiement tierces Authorize.Net, eWay, CyberSource, Braintree et Worldpay dans le code principal a été supprimée. Les commerçants doivent migrer vers les extensions officielles disponibles sur le Commerce Marketplace.
  • Vous pouvez désormais terminer une commande et revenir à la page d’accueil du marchand lorsque la solution hébergée Web payment Pro est configurée. Auparavant, lorsque vous cliquiez sur Retour au marchand, l’application générait cette erreur : Invalid Form Key. Please refresh the page.
  • Le changement de l’adresse de facturation n’entraîne plus le rendu du texte de la fonction JavaScript dans la section paiement du workflow de passage en caisse du storefront. Correctif soumis par Chris Pook dans la demande d'extraction 26378. GitHub-26375
  • Les notes de crédit affichent désormais le montant correct dans le champ Remboursement de l’ajustement de la présentation Mémo de crédit. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27343. GitHub-13851
  • Vous pouvez désormais supprimer des informations supplémentaires de la table quote_payment column additional_information après avoir enregistré un guillemet. Auparavant, vous ne pouviez pas supprimer ces informations après l’enregistrement du guillemet, car la méthode unsAdditionalInformation dans \Magento\Payment\Model\Info n’initialisait pas correctement les données. Correctif soumis par Marco Oliveira dans la demande d'extraction 26084. GitHub-26083
  • Les instructions de paiement sont désormais dérivées de la vue de magasin à partir de laquelle une commande a été effectuée. Auparavant, les instructions de paiement étaient utilisées à partir de la vue de magasin par défaut, car la méthode BeforeOrderPaymentSaveObserver récupérait les instructions de paiement de la vue de magasin par défaut. Correctif soumis par Karyna Tsymbal dans la demande d'extraction 26399. GitHub-26332
  • La demande collecte désormais les informations de paiement affichées à la fois sur l’administrateur et dans les factures et factures de l’entrepôt dans lequel la commande a été passée dans des déploiements avec plusieurs magasins. Auparavant, l’application dérivait des informations de paiement du magasin par défaut. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26765. GitHub-17933

PayPal

  • L’application affiche désormais un message d’erreur informatif chaque fois qu’un client clique sur Payer avec PayPal après avoir saisi une adresse de livraison non valide dans le workflow de passage en caisse. Auparavant, l’application affichait un message d’erreur uniquement lorsque le client cliquait pour la première fois sur le bouton, et non pour les clics suivants.
  • L’application ne modifie plus l’état d’une commande en Processing dans la section Révision des paiements du workflow de passage en caisse lorsqu’un paiement avec PayPal échoue.
  • Vous pouvez désormais terminer une commande à l’aide du mode de paiement Lien de flux de production . Auparavant, le mode de paiement Lien de flux de production rejetait toujours le paiement, car l’état de la commande restait dans l’état de paiement Pending, même si l’état de la commande dans les journaux des méthodes de paiement était Approved.
  • Les commandes passées à l’aide de PayPal Payflow Pro sont désormais définies sur l’état Suspected Fraud lorsque des filtres de fraude sont déclenchés.
  • Vous pouvez désormais utiliser le paiement express PayPal avec n’importe quelle carte de crédit prise en charge. Auparavant, lorsque vous cliquiez sur un bouton de carte de crédit lors de l’utilisation du paiement express PayPal pour terminer une commande, la demande était suspendue et vous ne pouviez saisir aucune information de carte de crédit.
  • Les commandes passées dans PayPal Payflow Pro sont désormais définies sur le statut Suspected Fraud lorsque des filtres de fraude sont déclenchés. Auparavant, l’état des transactions de paiement sur PayPal n’était pas validé avant l’approbation du paiement du côté de la demande.
  • Payflow Pro fonctionne désormais comme prévu lorsque les restrictions de site web sont activées.
  • L’application traite désormais correctement les commandes passées avec PayPal Express Checkout, où l’adresse d’expédition de la commande spécifie une région du pays que le client a saisie manuellement dans le champ de texte plutôt que d’être sélectionné dans le menu déroulant de la page Expédition. Auparavant, l’application affichait cette erreur sur la page de révision des commandes : Error 500: NOTICE: PHP message: PHP Fatal error: Uncaught Error: Call to a member function getId() on null in httpdocs/vendor/magento/module-paypal/Model/Api/Nvp.php:1527. GitHub-26698
  • Le mode de paiement PayPal Pro fonctionne désormais comme prévu dans le navigateur Chrome 80. Ce mode de paiement a précédemment appelé un point de terminaison de rappel qui devait accéder à la session du client — accès que la nouvelle fonctionnalité de cookie Chrome SameSite par défaut ne permet pas. GitHub-26840
  • Vous pouvez désormais utiliser PayPal Express pour payer une commande lorsque le panier de passage en caisse persistant a été activé et que le paramètre Effacer la persistance à se déconnecter est défini sur no. Auparavant, l’application vous redirigeait vers la page Connexion .
  • Les paiements de Paypal Express et Web payment Pro passent désormais à l’état Processing comme prévu une fois le traitement commencé. Auparavant, les paiements Paypal Web Payments Pro étaient dans l’état de paiement Pending même lorsque les informations de paiement se trouvaient dans l’état Processing. Correctif soumis par azambon dans la demande d'extraction 25876. GitHub-25659

Performances

  • La logique d’invalidation de la section de données client a été améliorée. Cette version introduit une nouvelle méthode d’invalidation de toutes les données des sections client, qui permet d’éviter un problème connu avec le stockage local lorsque des invalidations sections.xml personnalisées sont actives. (Auparavant, le contenu privé (stockage local) n’était pas correctement renseigné lorsque vous aviez un etc/frontend/sections.xml personnalisé avec des invalidations d’action.) Voir Contenu privé.
  • L'import des comptes clients a été refactorisé afin d'améliorer la vitesse d'import.
  • Les graphiques de tableau de bord ont été migrés vers la bibliothèque chart.js. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26923. GitHub-186
  • Les performances des opérations exécutées sur des catalogues volumineux qui contiennent de nombreux attributs de produit (sur l’échelle de 3 000 à 2 300 options) ont été améliorées par la refactorisation de la manière dont les tableaux d’options d’attribut sont créés. Correctif soumis par Behnam Shayani dans la demande d'extraction 25452. GitHub-20966

Tarifs

  • L’application enregistre et affiche désormais le prix correct pour les produits divisés, même après avoir modifié plusieurs fois des produits. Auparavant, l’application n’enregistrait pas les dernières modifications apportées au prix du produit. Correctif soumis par Ravi Chandra dans la demande d’extraction 26162. GitHub-25195
  • Le pourcentage d’épargne fixe et de réduction est désormais correctement appliqué au prix final d’une commande. Auparavant, l’application affichait un pourcentage d’économies de niveau incorrect (à la fois fixe et réduit) sur la page des détails du produit. Correctif soumis par Sathish Subramanian dans la demande d'extraction 26584. GitHub-26583
  • L’e-mail d’alerte de stock envoyé aux clients concernant le réapprovisionnement d’un produit configurable contient désormais le prix correct du produit. Auparavant, cet email contenait un prix de produit de 0.
  • Le désabonnement de l’alerte du stock de produits fonctionne désormais lorsque la session d’un utilisateur a expiré. Auparavant, lorsque vous cliquiez sur le lien Cliquez ici pour arrêter les alertes pour ce produit, l’application affichait une erreur 404.
  • Les actions de désabonnement pour les alertes de produit fonctionnent désormais comme prévu. Auparavant, lorsqu’un client cliquait sur le lien Cliquez ici pour arrêter les alertes pour ce produit, l’application affichait une erreur 404.

Vidéo produit

  • Vous pouvez désormais utiliser REST pour mettre à jour les vidéos YouTube (PUT rest/V1/products/{SKU}). Auparavant, l’application affichait une miniature pour la vidéo, mais le lecteur vidéo ne se chargeait pas lorsque vous cliquiez sur le bouton Lire . GitHub-23194

Rapports

  • Les listes de produits classent désormais les produits configurables par SKU, qui regroupe les produits configurables par variations. Auparavant, le rapport regroupait les produits par product_id. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 25858. GitHub-25856
  • La table Admin > Rapports > Actualiser les statistiques affiche désormais l’état Mis à jour à = Null sous la forme Jamais dans la colonne Mise à jour au lieu de non définie. Correctif soumis par Eden Duong dans la demande d'extraction 25932. GitHub-25931
  • Le rapport Faible stock n’inclut plus les produits désactivés. Correctif soumis par Mohamed-Asar dans la demande d'extraction 26862. GitHub-26838
  • L’application affiche désormais une valeur exacte pour le champ Démarrages à date/année dans Admin > Magasins > Configuration > Général > Rapports. Correctif soumis par Priya-V-Panchal dans la demande d’extraction 27088. GitHub-27086

Révisions

  • L’application désactive désormais le bouton Submit Review une fois que l’utilisateur a cliqué sur le bouton. Auparavant, l’application ne désactivait pas ce bouton après le premier clic et créait plusieurs révisions lorsque l’utilisateur cliquait plusieurs fois sur le bouton Submit Review.
  • La liste de filtres Admin > Rapports > Révisions > Par produits affiche désormais les résultats comme prévu. Auparavant, lorsque vous tentiez de filtrer cette liste, l’application n’affichait aucun résultat.
  • L’option de menu Révisions en attente est désormais activée comme prévu sur Admin > Marketing > Contenu utilisateur > Révisions en attente. Correctif soumis par Ravinder dans la demande d’extraction 26230. GitHub-26229

Ventes

  • Les commandes terminées apparaissent désormais à la fois dans le système de paiement et dans le Magento Open Source. Auparavant, les commandes apparaissaient dans le système de paiement, mais pas dans le Magento Open Source. GitHub-25862
  • L’application respecte désormais l’adresse de livraison par défaut d’un client. Auparavant, l’application ne respectait pas les adresses de facturation et de livraison par défaut en fonction des paramètres, et le paramètre Identique à l’adresse de facturation n’était pas activé automatiquement.
  • L’application calcule désormais correctement les remboursements pour les commandes qui incluent des remises. Auparavant, la demande calculait incorrectement la taxe de livraison et la remise, et le total remboursé ne correspondait pas au total payé.
  • L’application affecte désormais l’ID de groupe correct lorsqu’un nouveau client crée une commande dans le cadre de déploiements multi-sites. Auparavant, l’application appliquait les paramètres du groupe de clients par défaut.
  • Les administrateurs disposant d’autorisations restreintes qui incluent l’autorisation d’afficher des notes de crédit, des factures et des envois peuvent désormais afficher des factures et des envois à partir de la page Commandes comme prévu. Auparavant, lorsqu’un administrateur restreint tentait d’afficher une commande, l’application affichait cette erreur : Something went wrong with processing the default view and we have restored the filter to its original state.
  • L’application n’affiche plus d’erreur lorsqu’un client ajoute au panier une quantité de produit qui dépasse la moitié du stock de produits existant, mais ne dépasse pas le stock total. Auparavant, dans ces circonstances, l’application affichait cette erreur : The requested qty is not available. Github-24365
  • Vous pouvez maintenant ajouter un produit au panier avec succès depuis l’administrateur lorsque la quantité de stock est de 1. Auparavant, l’application n’ajoutait pas le produit au panier et affichait le message suivant : The requested qty is not available. Correctif soumis par Serhii Petrychenko dans la demande d'extraction 26650. GitHub-25675
  • L’application affiche désormais un message d’erreur informatif lorsqu’un administrateur de magasin tente de réorganiser un produit dont l’option personnalisée comporte un nom supérieur au nombre maximal de caractères. Auparavant, dans ces conditions, l’application affichait la page Rapport et non un message. Correctif soumis par Mudit Shukla dans la demande d'extraction 26348. GitHub-26345
  • La mise en page du formulaire de modification des informations sur les adresses de commande de ventes a été restructurée pour correspondre aux conventions de la bibliothèque des formulaires d’administration. Correctif soumis par Alexey Rakitin dans la demande d’extraction 25699. GitHub-19805
  • Les cases à cocher de la section Produits de la page Catalogue > Catégories fonctionnent désormais comme prévu. Correctif soumis par Denis Kopylov dans la demande d'extraction 22990. GitHub-22988
  • La méthode getCustomer renvoie désormais l’objet client tel que défini dans le bloc phpdoc. Auparavant, cette méthode renvoyait NULL et le bloc phpdoc ne mettait pas en évidence que cette méthode pouvait renvoyer NULL. Correctif soumis par Fanis Strezos dans la demande d’extraction 26423. GitHub-25268
  • Les commandes de nouveau sont désormais désactivées comme prévu lorsqu’un commerçant désactive le Admin > Magasin > Configuration > Ventes > Réorganiser > Autoriser la commande. Correctif soumis par Eden Duong dans la demande d'extraction 26051. GitHub-25130
  • La méthode getPrice() renvoie désormais une valeur flottante ou nulle au lieu d’une chaîne lors de la définition d’un prix personnalisé pour une commande dans l’administrateur. Correctif soumis par Andrii Chorniy dans la demande d’extraction 26313. GitHub-25968
  • La colonne Code d’état et titre de Admin > Magasins > Paramètres > État de la commande affiche désormais l’état au lieu de l’état prévu. Correctif soumis par Oleh Usik dans la demande d'extraction 26569. GitHub-17847
  • Les factures de PDF capturent désormais la date d’achat correcte lorsqu’elles sont créées dans un paramètre régional en Go. Correctif soumis par Eden Duong dans la demande d'extraction 26701. GitHub-26675

Règle de vente

  • quote_item.applied_rule_ids est désormais mis à jour comme prévu après la désactivation d’une règle de prix de panier. GitHub-24526
  • L’application affiche désormais les arborescences de catégorie comme prévu lorsque vous essayez de créer ou de modifier une règle de prix de panier. Auparavant, la sélection d’une catégorie dans la section Condition lors de la création ou de la modification d’une règle entraînait des erreurs JavaScript.
  • L’application calcule désormais correctement les remises fixes au niveau du panier à l’aide des règles de prix du panier lorsqu’un produit configurable est ajouté pour la première fois au panier. Correctif soumis par Lachlan Turner dans la demande d'extraction 26623. GitHub-26622

Rechercher search-heading

  • Elasticsearch 7.6.x est désormais le moteur de recherche de catalogue par défaut pour Adobe Commerce et Magento Open Source. Vous ne pouvez pas installer ni mettre à niveau vers la version 2.4.0 sans installer également Elasticsearch 7.6.x. Le code de la version 2.x de l’Elasticsearch a été supprimé. Les versions 5.x et 6.x des Elasticsearch ont été abandonnées et ne sont plus prises en charge. Voir Conditions préalables pour le moteur de recherche.
  • L’application effectue désormais correctement le rendu des symboles < et > dans les chaînes de recherche de catalogue du storefront.
  • Les produits s’affichent désormais comme prévu dans les catégories après l’exécution de cron:run dans les déploiements mettant en oeuvre Elasticsearch.
  • L’application n’a plus besoin d’une réindexation de recherche complète pour qu’un nouvel attribut de produit puisse faire l’objet de recherches sur le storefront.
  • Elasticsearch fonctionne désormais comme prévu lorsque vous triez une liste de produits contenant des produits regroupés par noms de produits alphabétisés.
  • Les résultats du filtrage n’incluent plus les options en rupture de stock lorsque vous filtrez des produits configurables dans une catégorie.
  • La sélection de tous les produits de la page de liste de produits à l’aide d’Elasticsearch affiche désormais tous les produits dans les résultats de recherche comme prévu. Auparavant, l’application n’affichait aucun résultat de recherche.
  • Elasticsearch affiche désormais correctement les résultats des pages de catégorie lorsque vous modifiez le nombre de résultats de recherche affichés par page. Auparavant, lorsque vous aviez modifié le nombre de résultats de recherche à afficher sur la page des résultats de recherche, l’application affichait une page vierge et cette erreur : "0":"SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near'
  • Le tri des prix fonctionne désormais correctement pour les produits configurables en rupture de stock.
  • L’application ne renvoie plus d’exception lorsqu’un client utilise la recherche rapide storefront dans des déploiements de sites Web multiples.
  • L’application n’affiche plus d’avertissement lorsqu’un commerçant ouvre la page du terme de recherche en cliquant sur l’option Termes de recherche dans le pied de page de Marketing > SEO & Search > Termes de recherche. Correctif soumis par vishal-webkul dans la demande d’extraction 25246. GitHub-25245
  • L’application ne redimensionne plus la fenêtre d’affichage lorsque vous cliquez sur la zone de saisie de recherche lors de l’exécution de Safari dans la vue mobile. Correctif soumis par Pawe Tylek dans la demande d’extraction 27603. GitHub-27506
  • Les versions Elasticsearch sont désormais identifiées par la notation X.x au lieu de la notation X.0+ dans l’Admin (Magasins > Paramètres > Configuration > Catalogue > Catalogue > Recherche catalogue). Correctif soumis par Andreas Mautz dans la demande d’extraction 25838. GitHub-25674

Expédition

  • Vous pouvez désormais envoyer une commande à plusieurs adresses si l’un des produits commandés est un produit virtuel. Auparavant, l’application effectuait une commande pour les produits physiques, mais la commande virtuelle était vide.
  • L’application applique désormais correctement des remises sur le panier entier fixes pour les commandes expédiées à plusieurs adresses. Auparavant, ce type de remise était appliqué plusieurs fois lorsqu’un client extrayait une commande à l’aide de l’option Extraire avec plusieurs adresses. GitHub-25834
  • La liste déroulante disponible pour sélectionner les méthodes d’expédition lors du processus de création d’une règle de prix de panier contient désormais uniquement des valeurs valides. Auparavant, cette liste déroulante contenait des valeurs vides ou supplémentaires.
  • L’application imprime désormais les libellés d’expédition sous la forme d’un fichier .pdf comme prévu lorsque vous sélectionnez Imprimer le libellé d’expédition dans la liste déroulante Action d’une commande dans la liste d’archives de commandes. Auparavant, l’application affichait une erreur 404.
  • Les règles de prix d’expédition gratuits affectent désormais uniquement les produits pertinents lorsqu’un panier contient des produits provenant de catégories qui sont incluses par la règle de prix d’expédition gratuit , ainsi que des produits provenant de catégories qui ne sont pas incluses dans la règle. Auparavant, lorsqu’un panier comprenait des produits des catégories d’expédition gratuite et d’autres catégories qui n’étaient pas incluses dans la règle de prix, l’expédition gratuite n’était appliquée à aucun produit.
  • L’application n’affiche plus de page vierge au lieu d’afficher tous les opérateurs de livraison dans la liste déroulante ou la zone à sélection multiple. Auparavant, une erreur se produisait dans la fonction toOptionArray de vendor/magento/module-shipping/Model/Config/Source/Allmethods.php. Correctif soumis par Marc Rodriguez dans la demande d'extraction 25315. GitHub-13136

  • L’application n’applique plus de remise à montant fixe plusieurs fois lorsqu’un client crée une commande qui sera envoyée à plusieurs adresses. Correctif soumis par Mahesh Singh dans la demande d'extraction 26419. GitHub-25834

  • Les modules externes pour Magento\Ups\Model\Carrier qui implémentent des di.xml personnalisés fonctionnent désormais correctement en mode développeur. Auparavant, l’application générait cette erreur : 1 exception(s): Exception #0 (BadMethodCallException): Missing required argument $data of Magento\Ups\Model\Carrier. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26130. GitHub-25390

Plan du site

  • L’application utilise désormais l’URL de base du projet comme prévu lorsque vous générez un plan de site.
  • Les mappages de site générés incluent désormais l’URL de la page d’accueil. Correctif soumis par deep-snair dans la demande d'extraction 26445. GitHub-25761

Magasin

  • Les sessions clients persistent désormais comme prévu lorsqu’un client se connecte à un magasin, ajoute des produits au panier, puis passe à un nouveau magasin lors d’un déploiement multi-magasin. Auparavant, lorsque le client accédait au deuxième magasin, l’application déconnectait le client et vidait le panier.
  • L’application supprime désormais les enregistrements liés à une vue de magasin supprimée des tables sale_sequence_meta et sales_sequence_profile comme prévu. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 22296. GitHub-14958
  • Le sélecteur de magasin fonctionne désormais comme prévu lors du changement entre les magasins qui ont des URL de base différentes. Auparavant, lorsqu’un client utilisait le sélecteur de magasin pour passer d’un magasin à l’autre, la demande échouait si le magasin cible avait une URL de base différente de celle du magasin actuel. Correctif soumis par Tobias Nilsson dans la demande d'extraction 26548. GitHub-23755, GitHub-26384

Nuancier

  • Les commerçants peuvent désormais ajouter des attributs d’échantillon de couleur à des produits à l’aide de l’option Épisode visuel sur Magasins > Attributs > Produit > Nouvel attribut. Auparavant, une erreur JavaScript était déclenchée lorsque vous tentiez d’ouvrir l’attribut d’échantillon nouvellement créé.
  • Le prix publicitaire minimum change désormais comme prévu lorsqu’un client sélectionne une nouvelle option d’échantillon pour un produit configurable. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 26241. GitHub-26240
  • L’application ne duplique plus le Prix publicitaire minimum d’un produit configurable lorsque vous sélectionnez une nouvelle option d’échantillon. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 26317. GitHub-26314
  • Correction de problèmes liés au comportement du menu déroulant dans la zone Gérer l’échantillon (valeurs de votre attribut) de la page Nouvel attribut de produit. Correctif soumis par Oleh Usik dans la demande d'extraction 26090. GitHub-25910

TargetRule

  • Le bloc de produit associé affiché pour un produit sur le storefront affiche désormais les produits qui répondent aux critères définis dans la règle de produit connexe. Auparavant, l’application n’affichait aucun produit associé.

Taxe

  • L’application met à jour les tarifs d’expédition et les prix comme prévu lorsqu’un client change le pays de destination pour une commande lors du passage en caisse.
  • La livraison gratuite est désormais appliquée comme prévu en fonction de la règle de prix du panier applicable. Auparavant, les règles de prix du panier ne prenaient pas en compte les taxes lors du calcul de la conformité d’une commande aux critères de livraison gratuite.

Test

NOTE
MFTF utilise désormais l’authentificateur Google pour exécuter des tests avec 2FA activé. MFTF ne fonctionnera pas avec la version 2.4.0 sans étapes de configuration supplémentaires pour activer l’authentificateur Google. Voir Configuration de MFTF pour l’authentification à deux facteurs (2FA).
  • Les URL codées en dur dans les tests et les groupes d’actions ont été remplacées par des références de page. Correctif soumis par Lukasz Bajsarowicz dans la demande d’extraction 117 dans le référentiel privé Partners-magento2ee. GitHub-26331
  • Les tests couvrent désormais la tâche de journalisation des actions d’administration liées aux pages CMS. Correctif soumis par Lukasz Bajsarowicz dans la demande d’extraction 172 dans le référentiel privé partner-magento2ee. GitHub-171
  • Les noms de test fonctionnels non valides ont été modifiés pour suivre les bonnes pratiques. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 27118 et la demande d'extraction 151 dans le référentiel privé partner-magento2ee. GitHub-27117
  • Le Magento Open Source cron est désormais utilisé pour la réindexation après la création de données de test et, le cas échéant, cache:flush config remplace cache:flush. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26990. GitHub-26989
  • Les tests d’acceptation suivent désormais les conventions d’appellation pour les modules Magento/Indexer et Magento/Backup. Correctif soumis par Shankar Konar dans la demande d'extraction 27515. GitHub-27503
  • Le test AdminReorderWithCatalogPrice a été restructuré et n’échoue plus pendant le processus de validation de l’interface utilisateur (CI). Correctif soumis par Lukasz Bajsarowicz dans la demande d’extraction 135 dans le référentiel privé Partners-magento2ee. GitHub-26607
  • Les tests AdminAddingNewOptionsWithImagesAndPricesToConfigurableProduct et StorefrontApplyPromoCodeDuringCheckout ont été restructurés et n’échouent plus pendant le processus de validation de CI. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26611 et la demande d'extraction 26614. GitHub-26612, GitHub-26610
  • Les tests DeleteProduct and DeleteCustomer Action Groups ont été restructurés et n’échouent plus pendant le processus de validation de l’interface utilisateur (CI). Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26407. GitHub-26396
  • Les tests AdminMoveAnchoredCategoryTest.xml ont été restructurés et n’échouent plus pendant le processus de validation de l’interface utilisateur (CI). Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26395. GitHub-26396

Tests d’intégration

  • Les requêtes consécutives dans les tests d’intégration n’échouent plus. Auparavant, les tests échouaient, car les objets de requête étaient partagés entre les envois. La méthode resetRequest vide désormais l’état de request. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 27300. GitHub-27299
  • Des tests d’intégration supplémentaires ont été ajoutés pour couvrir les fonctionnalités de messagerie Magento_Customer. Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 27606. GitHub-27607

tests unitaires PHP

  • Les tests unitaires PHP ne génèrent plus cette erreur fatale : Fatal error: Class Mock_CartExtensionInterface_0ba80a0b contains 2 abstract methods and must therefore be declared abstract or implement the remaining methods (Magento\Quote\Api\Data\CartExtensionInterface::getAmazonOrderReferenceId, Magento\Quote\Api\Data\CartExtensionInterface::setAmazonOrderReferenceId) in /var/www/html/vendor/phpunit/phpunit-mock-objects/src/Generator.php(264) : eval()'d code on line 1. Correctif soumis par Lukasz Bajsarowicz dans les demandes d’extraction 178 dans le référentiel privé Partners-magento2ee et 27701}. GitHub-27638
  • Les tests pour Offline_Payments sont désormais compatibles avec PHPUnit 8. Correctif soumis par Cristiano Pacheco dans la demande d'extraction 27627. GitHub-27500
  • Les tests unitaires pour Framework, AdminAnalytics, AdminNotification et AMPQ ont été mis à jour pour PHPUnit 8. Correctif soumis par Ihor Sviziev dans les demandes d'extraction 27522, 27521, 27519, 27522}. GitHub-27500
  • Vous pouvez désormais exécuter le test unitaire \Magento\Downloadable\Test\Unit\Helper\DownloadTest sans être connecté à Internet. Correctif soumis par aleromano89 dans la demande d'extraction 26264. GitHub-23521
  • Ajout d’un test unitaire pour app/code/Magento/Fedex/Model/Source/Generic.php. Correctif soumis par Sathish Subramanian dans la demande d'extraction 26549.
  • <magentoCron> a été ajouté à plusieurs tests, ce qui déclenche une réindexation partielle. Cette modification résout des problèmes qui ont créé de faux négatifs dans les tests fonctionnels qui couvraient Magento_Bundle, CatalogImportExport, CatalogInventory, CatalogRule, Backend, Braintree et Captcha. Correctif soumis par Lukasz Bajsarowicz dans les demandes d'extraction 27322, 27323, 27321. GitHub-27320
  • Toutes les utilisations incorrectes de <amOnPage> ont été remplacées par un <actionGroup> approprié pour la déconnexion de l’administrateur le cas échéant dans les tests. Correctif soumis par Lukasz Bajsarowicz dans la demande d’extraction 116 dans le référentiel privé Partners-magento2ee. GitHub-26331
  • Chaque groupe d’actions d’un test a été déplacé dans un fichier distinct afin de suivre les bonnes pratiques MFTF et les noms de fichiers incohérents ont été modifiés. Les tests pour les modules suivants ont été affectés :

    • permission-catalogue-module
    • module-shared-catalog
    • module-catalog-event
    • module-banner
    • module-admin-gws
    • module-advanced-checkout
    • livraison-module
    • module-ui
    • livraison-module
    • module-checkout-address-search
    • module-sales
    • module-catalog
    • module-catalogue-règle-staging
    • module-visuel-merchandiser
    • module-customer

    Correctif soumis par Lukasz Bajsarowicz dans les demandes d'extraction 25800, 26323, 26321, 26320, 26319, 26322, 25828, 26329 (et demandes d’extraction 104, 105, 106, 107, 108, 109 , 111, 119, 120, 121 dans le référentiel privé (partenaires-magento2ee). GitHub-22853

Thème

  • Nous avons résolu un bogue dans JsFooterPlugin.php qui affectait l’affichage des blocs dynamiques. Auparavant, l’application affichait cette erreur lorsque vous accédiez directement à /banner/ajax/load/url : Uncaught TypeError: strpos() expects parameter 1 to be string, null given in.
  • La méthode i18n permet d’ajouter une chaîne aux modèles de trait de soulignement. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 26435. GitHub-18012
  • Le module section-config a été restructuré. Cette refactorisation a réduit les erreurs provoquées par des modules tiers qui envoyaient des demandes de POST ou demandaient des données client directement avant que le module ne soit initialisé par data-mage-init. Correctif soumis par Mateusz Krzeszowiak dans la demande d'extraction 25764. GitHub-17125
  • LoadCssAsync Correction des erreurs de format d’HTML. Correctif soumis par Sathish Subramanian dans la demande d'extraction 26764. GitHub-26760
  • Lorsque vous créez des fichiers default.xml et catalog_product_view.xml dans le cadre de la création d’un nouveau thème, l’application crée ces pages ou consigne les erreurs dans les fichiers journaux comme prévu. Auparavant, l’application consignait des erreurs dans le fichier vendor/magento/framework/View/Page/Config/Renderer.php. Correctif soumis par Vinh Le dans la demande d'extraction 27026. GitHub-27009

Traduction et paramètres régionaux

  • La traduction en ligne fonctionne désormais comme prévu sur le storefront lorsque Admin > Magasins > Configuration > Avancé > Développeur > Traduire en ligne > Activé pour Storefront est défini.
  • La traduction en ligne fonctionne désormais comme prévu lorsqu’elle est activée pour un storefront.
  • Les clés d’URL de produit sont désormais translittérées comme prévu. Correctif soumis par DanieliMi dans la demande d’extraction 26506. GitHub-26499
  • Le paramètre régional es_US Spanish (United States) est désormais pris en charge. Correctif soumis par Vinh Le dans la demande d'extraction 26857. GitHub-26843
  • Le nombre d’espaces réservés numériques et le nombre d’espaces réservés du code JavaScript sont désormais identiques. Auparavant, le code JavaScript utilisait 0 %, tandis que le nombre d’espaces réservés numériques commençait par %1. Correctif soumis par korostii dans la demande d’extraction 25359. GitHub-25243
  • Vous pouvez désormais désactiver la traduction du titre de la page des détails du produit (page.main.title), qui est activée par défaut. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26269. GitHub-7065
  • Les problèmes de rendu de l’arabe et de l’hébreu dans les PDF de facture ont été résolus. Correctif soumis par Ihor Sviziev dans la demande d'extraction 27887. GitHub-25769
  • L’ordre d’héritage du module de langue est désormais appliqué sur la première liste, selon les besoins et comme décrit dans la documentation. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 26420. GitHub-8691
  • L’application affiche désormais ce message d’erreur lorsque vous saisissez un caractère non latin pour un nom de dossier dans les paramètres régionaux où seules les lettres latines sont prises en charge : Please rename the folder using only Latin letters, numbers, underscores and dashes. Correctif soumis par Eden Duong dans la demande d'extraction 25904. GitHub-25896
  • La longueur de la colonne locale pour directory_country_region_name a été augmentée de 8 à 16 pour prendre en charge des paramètres régionaux tels que zh_Hans_CN. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26268. GitHub-14001

Interface utilisateur

  • Le bouton Retour fonctionne désormais comme prévu à partir de Admin > Magasins > État de la commande > Modifier l’état de la commande. Correctif soumis par Vadim Malesh dans la demande d'extraction 27976. GitHub-1270
  • Les images d’aperçu ne changent plus inopinément lorsque vous utilisez les touches fléchées pour déplacer le curseur dans le champ Nom de fichier de la liste Adobe Stock. Correctif soumis par Adarsh Manickam dans la demande d’extraction 25991. GitHub-847
  • Le champ Votre mot de passe de la section Vérification de l’identité de l’utilisateur actuelle de la page Admin > Système > Intégrations hérite désormais des styles comme prévu. Correctif soumis par Eduard Chitoraga dans la demande d’extraction 25918. GitHub-25917
  • Les entrées validées par le programme de validation JavaScript sur le storefront seront également validées par l’administrateur. Auparavant, le programme de validation JavaScript comptabilisait les nouvelles lignes comme un caractère unique sur le storefront, tandis que, côté serveur, \Magento\Catalog\Model\Product\Option\Type\maxCharacters comptabilisait les nouvelles lignes comme deux caractères. Correctif soumis par Grzegorz Bogusz dans la demande d'extraction 26033. GitHub-25974
  • La balise subTitle n’est plus effacée lorsque vous modifiez un titre modal à l’aide de l’appel setTitle(). Auparavant, lorsque vous tentiez de créer une fenêtre contextuelle ou un modal personnalisé avec un titre et un sous-titre, puis que vous modifiez le titre avec la méthode setTitle(), l’élément subTitle était supprimé. Correctif soumis par Andrea Parmeggiani dans la demande d'extraction 26142. GitHub-26141
  • Le sous-menu de l’onglet Admin Marketing s’ajuste désormais automatiquement à la longueur des éléments du menu comme prévu. Vous pouvez également faire défiler l’écran horizontalement. Correctif soumis par Paweł Tylek dans la demande d'extraction 26034. GitHub-18687
  • La colonne quote de la table customer_note utilise désormais le type text comme prévu. Auparavant, il utilisait le type varchar(255). Correctif soumis par Ravi Chandra dans la demande d’extraction 26160. GitHub-26155
  • Correction de problèmes d’affichage avec l’en-tête du tableau dans la table Mon compte > Carnet d’adresses Entrées d’adresse. Correctif soumis par Abrar Pathan dans la demande d'extraction 27336. GitHub-27335
  • Le symbole monétaire utilisé dans l’étape de prix de navigation par calques est désormais basé sur les paramètres par défaut, comme prévu. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 24815. GitHub-21684
  • Le symbole de la monnaie biélorusse (BYR) a été mis à jour vers BYN. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 25723. GitHub-24713
  • La section Comparer les produits de la page Catalogue s’affiche désormais comme prévu dans la vue mobile sur les affichages dont la résolution est inférieure à 767 px. Correctif soumis par Hitesh dans la demande d'extraction 26418. GitHub-26416
  • Le défilement des pages de produits fonctionne désormais comme prévu dans la vue mobile. Correctif soumis par Mateusz Krzeszowiak dans la demande d'extraction 25385. GitHub-10518, GitHub-21717
  • Vous pouvez désormais faire défiler les images miniatures de la galerie sur la page du produit dans la vue mobile comme prévu. Correctif soumis par iGerchak dans la demande d’extraction 25839. GitHub-21014
  • Cliquer sur le titre du thème sur Admin > Contenu > Thèmes n’entraîne plus d’enregistrements en double. Correctif soumis par Eden Duong dans la demande d'extraction 25926. GitHub-25925
  • La mise en page de la page Admin Adresse de facturation/Adresse d’expédition a été restructurée afin de respecter les conventions d’affichage des formulaires d’administration. Correctif soumis par Alexey Rakitin dans la demande d’extraction 25699. GitHub-23481, GitHub-19805
  • Le lien Ajouter à la comparaison de la page des détails du produit s’affiche désormais correctement en mode mobile sur des écrans de résolution inférieure à 640 pixels. Correctif soumis par Pawe Tylek dans la demande d’extraction 26424 et Tejash Kumbhare dans la demande d’extraction 26365}. GitHub-26364
  • L’étiquette Trier par ne chevauche plus le bouton Shop By sur la page de catégorie dans la vue mobile. Correctif soumis par Andrii Kartavtsev dans la demande d'extraction 26381. GitHub-25300
  • Vous pouvez maintenant mettre à jour la valeur de l’exemple de produit téléchargeable et le titre du lien en activant la case à cocher Utiliser la valeur par défaut . Correctif soumis par Abel Truong dans la demande d'extraction 27295. GitHub-27169
  • Correction de l’espacement entre le bouton Mettre à jour et le champ Qté du mini panier. Correctif soumis par Hitesh dans la demande d'extraction 26234. GitHub-26227
  • La couleur de bordure inférieure de la table Entrées d’adresse supplémentaires de la page Carnet d’adresses correspond désormais à la couleur de bordure thead et tbody. Correctif soumis par Tejash Kumbhare dans la demande d'extraction 26649. GitHub-26648
  • Les modèles d’invite n’exécutent plus d’action de confirmation lorsqu’un utilisateur clique sur la superposition modale. Correctif soumis par Serhiy Zhovnir dans la demande d’extraction 27399.

URL

  • Le référentiel de catégories (méthode d’enregistrement) a été refactorisé, ce qui vous empêchait auparavant de créer des chemins d’accès uniques lors de la modification d’une clé d’URL de catégorie. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27304. GitHub-14080
  • La validation de la logique de clé d’URL de catégorie a été améliorée. Correctif soumis par Sergiy Vasiutynskyi dans la demande d'extraction 27412. GitHub-13689

URL rewrites

  • Les clients qui changent de langue sur une page CMS peuvent désormais accéder avec succès à la vue de magasin qu’ils ont sélectionnée. Auparavant, l’application affichait une erreur 404.
  • La génération de réécriture d’URL pour les URL de produit pour lesquelles vous avez activé l’inclusion de chemin de catégorie fonctionne désormais comme prévu. Auparavant, dans les déploiements avec plusieurs vues de magasin, l’application générait parfois des réécritures d’URL incorrectes en utilisant la valeur par défaut du chemin d’URL de catégorie au lieu du chemin d’URL spécifique à l’affichage de l’historique. Correctif soumis par Pieter Hoste dans la demande d’extraction 26784. GitHub-25124, GitHub-11616
  • Nous avons ajouté une vérification pour empêcher les redirections d’URL si le chemin de requête est identique au chemin cible. Correctif soumis par Bartomiej Szubert dans la demande d'extraction 26902. GitHub-20309
  • Les opérations de réécriture d’URL ne suppriment plus une chaîne de requête d’une URL lorsque celle-ci comporte une barre oblique. Correctif soumis par Alexey Arendarenko dans la demande d’extraction 25603. GitHub-18717

TVA

Structure de l’API web

  • Correction de problèmes liés aux appels /rest/default/async/bulk/V1/orders du POST.
  • Correction de problèmes liés aux appels /rest/default/async/bulk/V1/products du POST.
  • La méthode getList a été restructurée pour récupérer l’attribut d’extension is_subscribed. Auparavant, vous ne pouviez pas récupérer cet attribut lors de la récupération d’une entité client via l’API. Correctif soumis par enriquei4 dans la demande d’extraction 25311. GitHub-13252
  • La mise à jour des informations sur les clients via /V1/customers/:id ne réinitialise plus inutilement le group_id. Auparavant, lorsque vous mettiez à jour un client via REST, le groupe de clients était remplacé par 1 si le corps ne contenait pas de groupe de clients. Correctif soumis par MaxRomanov4669 dans la demande d’extraction 25958. GitHub-14663
  • Les accesseurs Get Nullables dans les contrats de service ne génèrent plus d’erreurs de réflexion lorsqu’ils sont utilisés dans l’API web. Les méthodes qui peuvent renvoyer une valeur nulle et un type valide fonctionnent désormais correctement, quel que soit l’ordre. Correctif soumis par Marco K̦ pcke dans la demande d'extraction 25806. GitHub-25656
  • Vous pouvez désormais utiliser POST /V1/guest-carts/:cartId/items pour ajouter des produits à un panier spécifique. Auparavant, lorsque vous utilisiez cet appel, l’application ignorait la valeur de cartId. Correctif soumis par Vadim Malesh dans la demande d'extraction 27172. GitHub-14086
  • Vous pouvez désormais utiliser le point de terminaison PUT /V1/cmsPage/:id pour enregistrer le titre d’une page CMS sans modifier les valeurs des autres champs. Correctif soumis par Vadim Malesh dans la demande d'extraction 27237. GitHub-24704
  • La pagination des résultats des requêtes REST est désormais exacte. Auparavant, lorsque vous demandiez des résultats à partir d’une page spécifique (par exemple, page_size = 1 et une valeur current_page hors portée), l’appel renvoyait la dernière page de résultats répétée plutôt qu’un message informatif . Correctif soumis par Lukasz Bajsarowicz dans la demande d'extraction 26988. GitHub-26986, GitHub-8099
  • Le résultat de l’GET /V1/orders/items/{id} inclut désormais un élément d’attribut d’extension qui inclut les données de message cadeau. Correctif soumis par Laura Folco dans la demande d’extraction 25946. GitHub-19093

Wishlist

  • Une liste bloquée fonctionne désormais comme prévu lorsqu’elle est activée au niveau de l’affichage en magasin et désactivée au niveau global. Auparavant, lorsque ces paramètres étaient en place, l’ajout d’un produit à une liste bloquée générait une erreur 404.
  • Nous avons amélioré le message d’erreur qui s’affiche lorsqu’un client tente de partager sa liste de souhaits avec plus d’adresses électroniques que ce qui est autorisé. Correctif soumis par divyajyothi5321 dans la demande d'extraction 26066. GitHub-26064
  • L’application affiche désormais la page Ma liste de souhaits comme prévu dans les affichages avec une résolution supérieure à 768 px et inférieure à 1 023 px. Correctif soumis par Hitesh dans la demande d'extraction 26546. GitHub-26543
  • L’e-mail généré lorsque vous cliquez sur Share Wishlist affiche désormais les mêmes images de produit que la page Wishlist. Correctif soumis par Michael Bottens dans la demande d'extraction 27125. GitHub-27124
  • Les clients peuvent désormais ajouter à une liste de souhaits un produit simple qui fait partie d’un produit groupé et le même produit simple avec une quantité différente. Correctif soumis par MaxRomanov4669 dans la demande d’extraction 26258. GitHub-11209

WYSIWYG

  • Le téléchargeur d’images WYSIWYG utilise désormais pub/media/wysiwyg comme racine de stockage. Auparavant, le fichier téléchargé utilisait pub/media comme racine de stockage, ce qui rendait ces images téléchargées inaccessibles après des modifications récentes du code du téléchargeur d’images. Correctif soumis par Pieter Hoste dans la demande d’extraction 24878. GitHub-22609
  • TinyMCE4 sur le navigateur Chrome gère désormais les caractères codés sur deux octets comme prévu. Auparavant, TinyMCE4 ne pouvait pas gérer correctement les caractères à deux octets (comme utilisé en chinois) sur Chrome. Correctif soumis par Hirokazu Nishi dans la demande d'extraction 25454. GitHub-24637

Problèmes connus — Général

Problème : les anomalies dans les messages d’erreur storefront se produisent dans les déploiements où PHP 7.4.2 est installé. Lorsque la version 2.4.0 est déployée avec PHP 7.4.2, les symboles d’espace dans les messages d’erreur storefront sont remplacés par des caractères plus (+). Ce bogue est natif de PHP 7.4.2 et ne peut pas être corrigé par Magento Open Source. Solution : Nous vous recommandons d’utiliser d’autres versions de PHP 7.4.x. Reportez-vous à l’article Affichage brut des données de message sur le storefront de la base de connaissances.

Problème : les vendeurs ne peuvent pas ajouter de produits commandés à un module à partir de la page Admin Créer un module et enregistrer le module. Voir l’article Création d’étiquettes d’expédition de la base de connaissances. Le correctif MC-35514-2.4.0-CE-compositeur.patch pour ce problème est désormais disponible à partir des versions.

Problème : l’application affiche ce message d’erreur lors de l’installation avec des extensions tierces qui ont des dépendances sur les API pour le module Store dans les commandes de l’interface de ligne de commande : The default website isn't defined. Set the website and try again. Solution : supprimez les dépendances des extensions tierces du compositeur, installez le Magento, puis installez les extensions tierces.

Problème : le bouton Ajouter des sélections à mon panier situé au bas du panier ne fonctionne pas. Solution de contournement : utilisez le bouton Ajouter des sélections à mon panier en haut de la page. Voir Le bouton Ajouter des sélections à mon panier ne fonctionne pas article de la base de connaissances.

Problème : les vendeurs ne peuvent pas créer de commande à partir de l’administrateur car les instances Ajouter des produits par SKU et Ajouter des produits Les boutons ne figurent pas dans la page de création de commande lorsque le regroupement JavaScript est activé. Solution : désactivez le regroupement JavaScript pour votre déploiement.

Problème : l’application est une erreur 404 not found lorsqu’un client tente de supprimer des points de récompense lors de l’extraction d’une commande envoyée à plusieurs adresses.

Problème : la modification d’un produit configurable à partir de la liste de souhaits d’un client entraîne un comportement inattendu : un champ inattendu s’affiche sur la page Configurer le produit et la page Configurer le produit ne disparaît pas après avoir cliqué sur OK. L’application affiche également ce message : Please load Wish List item. Solution : rechargez la page Configurer le produit .

Problème : les clients ne peuvent pas modifier le nombre de commandes affichées par page lorsque la liste Commandes s’étend sur plusieurs pages. Actuellement, l’application affiche ce message lorsque vous accédez à la dernière page des commandes et essayez de modifier le nombre de commandes affichées par page : You have placed no orders. Voir l’article Erreur d’affichage des commandes de la base de connaissances. Solution : la réouverture de la page Mes commandes entraînera l’affichage de la liste Commandes.

Problème : cliquer directement sur le bouton Exporter les taux de taxe de la page Ajouter une nouvelle règle fiscale (Magasins > Règles fiscales) ne télécharge pas le fichier tax_rates.csv comme prévu. Solution : cliquez sur le bord du bouton Exporter les taux de taxe . Voir l’article Exporter les taux d’imposition ne fonctionne pas de la base de connaissances.

Problème : les boutons Actualiser des sections Derniers éléments triés, Produits dans la liste de comparaison et Produits récemment comparés de la page Admin Activités clients ne fonctionnent pas comme prévu. Actuellement, l’application fait défiler la page chaque fois que l’utilisateur clique sur le bouton Actualiser et n’affiche pas le nom du produit. Voir l’article Actualiser les activités du client ne fonctionne pas de la base de connaissances.

Problèmes connus — VBE

Amazon Pay

  • Problème : les méthodes de paiement sont manquantes dans le workflow de passage en caisse lorsqu’un client clique sur Revenir à la caisse standard lors de l’extraction avec paiement Amazon. Solution : actualisez la page de passage en caisse pour afficher les méthodes manquantes.

  • Problème : l’application affiche deux méthodes de paiement Amazon identiques dans la liste déroulante Mode de paiement disponible lors de la création d’une règle de prix du panier.

Braintree

  • Problème : l’application affiche une erreur lorsqu’un administrateur tente d’accéder à la page Rapport de règlement du Braintree (Admin > Rapports ). Actuellement, l’application affiche ce message : An error has happened during application run. See exception log for details. Voir l’article Échec du chargement du rapport de règlement du Braintree de la base de connaissances. Le correctif BUNDLE-2683_AgreementReport.patch pour ce problème est désormais disponible à partir des versions.

  • Problème : les marchands ne peuvent pas créer de factures partielles pour les commandes dans les déploiements où Venmo est activé et le paramètre Activer Vault pour les paiements par carte est désactivé. Actuellement, l’application affiche cette erreur : The "vault_capture" command doesn't exist. Verify the command and try again.

  • Problème : l’application affiche deux méthodes PayPal identiques dans la liste déroulante Mode de paiement disponible lors de la création d’une règle de prix du panier.

  • Problème : l’application peut être une erreur lors de l’ouverture de Sales > Braintree Virtual Terminal. Bien que le formulaire contienne des éléments d’IU corrompus, il accepte toujours les paiements. Solution : enregistrez les informations d’identification du Braintree correctes, ce qui corrige les champs d’entrée réduits. Voir l’article La page Braintree Virtual Terminal est corrompue de la base de connaissances. Le correctif BUNDLE-2670_VirtualTerminal.patch pour ce problème est désormais disponible à partir des versions.

  • Problème : l’application affiche un message d’erreur dans les pays suivants lorsqu’un client sélectionne un mode de paiement local lors du passage en caisse : Belgique, Pays-Bas, Italie, Espagne et Pologne. Solution : ignorez le message d’erreur et continuez le paiement.

Klarna

  • Problème : laisser le champ Thème de conception vide dans la messagerie Klarna On-Site (Admin > Magasins > Configuration > Paramètres Klarna) donne une page vierge. Solution : sélectionnez un thème de conception et enregistrez.

Vertex

  • Problème : l’application affiche un bouton Vérification de l’adresse dans la section d’expédition du workflow de passage en caisse même lorsque la validation de l’adresse est désactivée. Le programme de validation des adresses ne vérifie pas à nouveau l’adresse mise à jour et continue d’afficher un message indiquant que l’adresse est invalide lorsqu’un client saisit une adresse correcte après avoir saisi une adresse incorrecte, même si la validation de l’adresse est activée. Solution : désactivez la validation de l’adresse Vertex.

Contributions de la communauté

Nous sommes reconnaissants à l’ensemble de la communauté des Magento Open Sources et tenons à saluer leurs contributions à cette version. Découvrez les façons suivantes d’en savoir plus sur les contributions de la communauté à nos versions actuelles :

  • Si un membre de la communauté a fourni un correctif pour cette version, nous identifions le correctif dans la section Problème résolu de ces notes avec l’expression "Correctif fourni par le membre de la communauté @member_name".

  • L’équipe d’ingénierie de communauté contributeurs Magento conserve une liste des principaux contributeurs et partenaires par mois, trimestre et année. Sur cette page Contributeurs, vous pouvez suivre les liens vers leurs relations publiques fusionnées sur GitHub.

Contributions des partenaires

Le tableau suivant présente les contributions des partenaires. Ce tableau répertorie le partenaire qui a contribué à la demande d’extraction, la demande d’extraction externe et le numéro de problème GitHub qui lui est associé (le cas échéant).

Partenaire
Requêtes de tirage
Problèmes GitHub connexes
Atwix
magento/magento2#25774, magento/magento2#25913, magento/magento2#25765, magento/magento2#25918, magento/magento-functional-tests-migration#744, magento/magento-functional-tests-migration#746, magento/magento-functional-tests-migration#711, magento/magento2#26069, magento/magento2#26063, magento/magento2#25697, magento/magento2#26154, magento/magento2#26150, magento/magento2#26148, magento/magento2#26096, magento/magento2#26028, magento/magento2#25864, magento/magento2#26029, magento/magento2#26251, magento/magento2#25985, magento/magento-functional-tests-migration#760, magento/magento-functional-tests-migration#757, magento/magento-functional-tests-migration#701, magento/magento2#26312, magento/magento2#26311, magento/magento2#26305, magento/magento2#26402, magento/magento2#26313, magento/magento2#26464, magento/magento2#26452, magento/partners-magento2ee#129, magento/partners-magento2ee#128, magento/magento2#26558, magento/magento2#26490, magento/magento2#26478, magento/magento2#26455, magento/magento2#26435, magento/magento2#26000, magento/magento2#26525, magento/magento2#26487, magento/magento2#26439, magento/magento2#26429, magento/magento2#26241, magento/magento2#26579, magento/magento2#26574, magento/magento2#26569, magento/magento2#26496, magento/magento2#26476, magento/magento2#26430, magento/magento2#26399, magento/magento2#26420, magento/magento2#26770, magento/magento2#26715, magento/magento2#26246, magento/magento2#26816, magento/magento2#26846, magento/magento2#26844, magento/magento2#26839, magento/magento2#26835, magento/magento2#26769, magento/magento2#26712, magento/magento2#26317, magento/magento2#26904, magento/magento2#26899, magento/magento2#26894, magento/magento2#26878, magento/magento2#26710, magento/magento2#26617, magento/partners-magento2ee#134, magento/magento2#26833, magento/magento2#26755, magento/magento2#26090, magento/magento2#25895, magento/magento2#27021, magento/magento2#26947, magento/magento2#26944, magento/magento2#26912, magento/magento2#26842, magento/magento2#27010, magento/magento2#27114, magento/magento2#27057, magento/magento2#27149, magento/magento2#27131, magento/magento2#27029, magento/partners-magento2ee#141, magento/partners-magento2ee#140, magento/partners-magento2ee#139, magento/magento2#26563, magento/partners-magento2ee#154, magento/magento2#25722, magento/magento2#27261, magento/magento2#27170, magento/magento2#27266, magento/magento2#27165, magento/magento2#26560, magento/magento2#27191, magento/magento2#26015, magento/magento2#27304, magento/magento2#27263, magento/magento2#27390, magento/magento2#27353, magento/magento2#27334, magento/magento2#27307, magento/magento2#22011, magento/magento2#27412, magento/magento2#27383, magento/magento2#27371, magento/magento2#27493, magento/magento2#27492, magento/magento2#26100, magento/magento2#27399, magento/partners-magento2ee#162, magento/magento-functional-tests-migration#724, magento/magento-functional-tests-migration#723, magento/magento-functional-tests-migration#710, magento/magento-functional-tests-migration#707, magento/magento-functional-tests-migration#706, magento/magento2#27526, magento/magento2#27497, magento/magento2#27495, magento/magento2#27563, magento/magento2#27343, magento/magento2#27671, magento/magento-functional-tests-migration#765, magento/magento-functional-tests-migration#764, magento/magento-functional-tests-migration#762, magento/magento-functional-tests-migration#761, magento/magento-functional-tests-migration#759, magento/magento-functional-tests-migration#751, magento/magento2#27676, magento/magento2#27689, magento/magento2#27677, magento/magento2#27843, magento/magento2#27841, magento/magento2#27692, magento/magento2#27846
magento/magento2#25739, magento/magento2#25917, magento/magento2#20379, magento/magento2#761, ento/magento2#23899, magento/magento2#25968, magento/magento2#25162, magento/magento2#180 2, magento/magento2#26240, magento/magento2#17847, magento/magento2#26332, magento/magento2#8691, magento/magento2#26245, magento/magento2#26314, magento/Partners-magento2ee#10 0, magento/magento2#25910, magento/magento2#13269, magento/magento2#25738, magento/magento2#27027, magento/magento2#26758, magento/magento2#26847, magento/magento2#25 669, magento/magento2#20472, magento/magento2#20906, magento/magento2#21910}, 0}magento/magento2#26825🔗, magento/magento2#26473, magento/magento2#26856, magento/magento2 6858, magento/magento2#26827, magento/magento2#14080, magento/magento2#26708🔗 magento/magento2#26224, magento/magento2#22010, magento/magento2#13689, magento/magento 2#27370, magento/magento2#26652, magento/magento2#24990, magento/magento2#1002, magento/magento2#27496, magento/magento2#13851
Mediotype
magento/magento2#26225, magento/magento2#26274, magento/magento2#26273, magento/magento2#26259, magento/magento2#26207, magento/Partners-magento2ee#120, magento/Partners-magento2ee#108, magento/Partners-magento2ee#1111 07, magento/Partners-magento2ee#106, magento/Partners-magento2ee#105, magento/Partners-magento2ee#104, to/magento2#26407, magento/magento2#26395, magento/magento2#26323, magento/magento2#263 21, magento/magento2#26320, magento/magento2#26319, magento/Partners-magento2ee#109, magento/Partners-magento2ee#119, magento/Partners-magento2ee#111, magento/magento2#26322, magento/Partners-magento2ee#12 1, magento/Partners-magento2ee#117, magento/magento2#26391, magento/Partners-magento2ee#124, to/Partners-magento2ee#102, magento/magento2#26614, magento/magento2#26480, magento/magento2#2633 5, magento/magento2#26611, magento/magento2#26621, magento/Partners-magento2ee#116, ento/Partners-magento2ee#115, magento/magento2#26608, magento/Partners-magento2ee#135, magento/magento2#258 8, magento/magento2#26974, magento/magento2#25828, magento/magento2#27048, magento/magento2#26779, magento/magento2#26329, magento/magento2#26778, magento/Partners-magento2ee2#1 332, magento/magento2#26990, magento/magento2#27281, magento/magento2#27277, 2}magento/magento2#27274, magento/magento2#27249, magento/magento2#27118, magento/partenaires-magento2ee#151, magento/magento2#27255, magento/magento2#27273, magento/magento2#272 98, magento/magento2#27292, magento/magento2#27214, magento/Partners-magento2ee#155 8, magento/magento2#27276, magento/magento2#27000, magento/magento2#27378, magento/magento2#27381, magento/magento2#27427, 🔗magento/magento2#27425 123}, magento/magento2#27322, magento/magento2#27321, 🔗magento/magento2#27597{17 229}, magento/Partners-magento2ee#172, magento/magento2#26988, 🔗magento/magento2#27552{13 5}, magento/magento2#27701, magento/Partners-magento2ee#178, 🔗magento/magento2#27325🔗, magento/magento2#27606, magento/magento2#27300, magento/magento2#27323, magento/magento2#27093, magento/magento2#27964
magento/magento2#26206, magento/magento2#26331, magento/magento2#26396, magento/magento2#26612, magento/magento2#26479, magento/magento2#26610, magento/Partners-magento2ee#26607, magento/magento2 25856, magento/magento2#26973, magento/magento2#27044, 🔗magento/magento2#26989,magento/Partners-magento2ee#27117, magento/magento2#27320, magento/Partners-magento2ee#171, /magento magento2#26986, magento/magento2#27607, magento/magento2#27299, magento/magento2#2708 9
Strix
magento/magento2#25822, magento/magento2#25812, magento/magento2#25803, magento/magento2#25792,} magento/magento2#25791, magento/magento2#25954, magento/magento2#26009, magento/magento2#25 854, magento/magento2#25846, magento/magento2#25845, magento/magento2#25844, 22}magento/magento2#25842🔗, magento/magento2#25841, magento/magento2#25836, magento/magento2 25831, magento/magento2#25830, magento/magento2#25829, magento/magento2#25825, magento/magento2#25823, magento/magento2#25821, magento/magento2#25820, magento/magento to2#25819, magento/magento2#25818, magento/magento2#25817, 🔗magento/magento2#25816 49}, magento/magento2#25815, magento/magento2#25813, magento/magento2#25811, /magento2#25807, magento/magento2#25804, magento/magento2#25802, magento/magento2#2580 0, magento/magento2#25799, magento/magento2#25797, magento/magento2#25794, magento/magento2#25793, magento/magento2#25788, magento/magento2#25787, magento/magento2#25 784, magento/magento2#25783, magento/magento2#26128, magento/magento2#2613, 4}magento/magento2#26129, magento/magento2#26126, magento/magento2#26125, magento/magento2 5957
magento/magento2#22047
Ziffity
magento/magento2#25808, magento/magento2#26057, magento/magento2#26050, magento/magento2#25920, magento/magento2#26068, magento/magento2#26136, magento/magento2#26215, magento/magento2#62 540, magento/magento2#26537, magento/magento2#26549, magento/magento2#26568, 22}magento/magento2#26782🔗, magento/magento2#26764, magento/magento2#26820, magento/magento2 26771, magento/magento2#26768, magento/magento2#26761, magento/magento2#26584🔗, magento/magento2#26932, magento/magento2#26862, magento/magento2#26979, magento/magento to2#26928, magento/magento2#27014, magento/magento2#27740, magento/magento2#26886 49}
magento/magento2#26208, magento/magento2#26760, magento/magento2#26583, 🔗magento/magento2#26917}, magento/magento2#26838, magento/magento2#26800, magento/magento2#26992
Chat blanc rapide
magento/magento2#25723, magento/magento2#26130, magento/magento2#24815, magento/magento2#26268, magento/magento2#26263, magento/magento2#26354, magento/magento2#26269, magento/magento2#62 360, magento/magento2#26684, magento/magento2#26398, magento/magento2#22296, 22}magento/magento2#26982🔗, magento/magento2#27054, magento/magento2#26765, magento/magento2 27084, magento/magento2#27083, magento/magento2#27082, magento/magento2#27080🔗, magento/magento2#26964, magento/magento2#26902, magento/magento2#27145, magento/magento to2#27215, magento/magento2#26923, magento/magento2#27319, 🔗magento/magento2#27393 49}, magento/magento2#27385, magento/magento2#27384, magento/Partners-magento2ee#150, /magento magento2#26075, magento/magento2#27462, magento/magento2#26397, magento/magento2#2746 3, magento/magento2#27491
magento/magento2#24713, magento/magento2#25390, magento/magento2#21684, magento/magento2#1401, magento/magento2#14913, magento/magento2#7065, magento/magento2#14958, magento/magento2#179 33, magento/magento2#20309, magento/magento2#186, magento/magento2#6310
creativestyle
magento/magento2#25541, magento/magento2#25587, magento/magento2#26037, magento/magento2#26034,} magento/magento2#26033, magento/magento2#26424, magento/magento2#25385, magento/magento2#25 16}magento/magento2#27360, magento/magento2#260360, magento/magento2#26036, 22}magento/magento2#27603🔗, magento/magento2#27589 🔗
magento/magento2#22416, magento/magento2#25586, magento/magento2#18687, magento/magento2#25974,} magento/magento2#26364, magento/magento2#10518, magento/magento2#21717, magento/magento2#17 1125, magento/magento2#25032, magento/magento2#27506
Fisheye
magento/magento2#25655, magento/magento2#25624, magento/magento2#23313, magento/Partners-magento2ee#50, magento/magento2#25860, magento/magento2#25297
magento/magento2#25654, magento/Partners-magento2ee#22909
Vaimo
magento/magento2#25452, magento/magento2#26213, magento/magento2#27015, magento/magento2#2748,} magento/magento2#27578
magento/magento2#20966, magento/magento2#26683
Wagento
magento/magento2#25973, magento/magento2#26234, magento/magento2#26290, magento/magento2#26238,} magento/magento2#26365, magento/magento2#25966, magento/magento2#26546, magento/magento2#62 339, magento/magento2#26342, magento/magento2#26659, magento/magento2#26418, 22}magento/magento2#26649🔗
magento/magento2#25972, magento/magento2#26227, magento/magento2#26289, magento/magento2#26235,} magento/magento2#26364, magento/magento2#25962, magento/magento2#26543, magento/magento2#62 338, magento/magento2#26054, magento/magento2#26416, magento/magento2#26648
Krish TechnoLabs
magento/magento2#26160, magento/magento2#26170, magento/Partners-magento2ee#118, magento/magento2#26162, 8}magento/Partners-magento2ee#143🔗, magento/magento2#27336
magento/magento2#26155, magento/magento2#24972, magento/magento2#25195, magento/magento2#27335}
i95Dev
magento/magento2#26011, magento/magento2#25759, magento/magento2#26173, magento/magento2#26182,} magento/magento2#26066, magento/magento2#26237, magento/magento2#26183, magento/magento2#62 1169
magento/magento2#25930, magento/magento2#25433, magento/magento2#26164, magento/magento2#26176,} magento/magento2#26064, magento/magento2#25936, magento/magento2#26181, magento/magento2#62 168
Quelque chose de numérique
magento/magento2#26359, magento/magento2#26185, magento/Partners-magento2ee#60
Comwrap
magento/Partners-magento2ee#68, magento/magento2#27257
Zilker Technology
magento/magento2#25428, magento/magento2#26714, magento/magento2#25991, magento/magento2#27138}
magento/magento2#14885, magento/magento2#847, magento/magento2#973
Youwe
magento/magento2#24360, magento/magento2#25194, magento/magento2#26748
magento/magento2#24357, magento/magento2#25188, magento/magento2#26745
Atteindre le numérique
magento/magento2#25875
magento/magento2#9466
Cedcommerce
magento/magento2#26628, magento/magento2#26348, magento/magento2#27886
magento/magento2#26345, magento/magento2#27874
Divante
magento/magento-fonctionnel-tests-migration#718, magento/magento-Func-tests-migration#720, magento/magento-Func-tests-migration#719, magento/magento-Func-tests-migration#717
Interactive4
magento/magento2#24843, magento/magento2#25311
magento/magento2#24842, magento/magento2#13252
Monsoon
magento/magento2#26044, magento/Partners-magento2ee#136, magento/magento2#26869, magento/magento2#26868, 8}magento/magento2#26821🔗, magento/magento2#26697
MediaCT
magento/Partners-magento2ee#145
AEM Consulting
magento/magento2#26623, magento/magento2#26781
magento/magento2#26622
Maginus
magento/magento2#26413, magento/magento2#27196
integer_net GmbH
magento/magento2#25851, magento/magento2#24485
Veriteworks
magento/magento2#25454
magento/magento2#24637

Contributions des contributeurs individuels

Le tableau suivant répertorie les contributions des membres de notre communauté. Ce tableau répertorie les demandes d’extraction externes, le numéro de problème GitHub qui y est associé (le cas échéant) et le membre de la communauté qui a contribué à la demande d’extraction.

Contribuer aux membres de la communauté
Requêtes de tirage
Problèmes GitHub connexes
Eden Duong
#25905
N/A
Ajith
#25808
N/A
Marco Köpcke
#25790
24229
Edouard Chitoraga
#25774
N/A
Edward Simpson
#25604
N/A
Mateusz Krzeszowiak
#25541
22416
Eden Duong
#25939
N/A
Eden Duong
#25928
N/A
Edouard Chitoraga
#25913
N/A
Lukasz Bajsarowicz
#25822
N/A
Lukasz Bajsarowicz
#25812
N/A
Lukasz Bajsarowicz
#25803
N/A
Lukasz Bajsarowicz
#25791
N/A
Lukasz Bajsarowicz
#25792
N/A
Andrii Beziazychnyi
#25765
25739
Nathan Morgan
#25655
25654
Eden Duong
#25952
25731
Eden Duong
#25942
25935
Eden Duong
#25932
25931
Eden Duong
#25926
25925
Edouard Chitoraga
#25918
25917
Ihor Sviziev
#25912
25911
Adam Mellen
#25995
N/A
Eden Duong
#25984
N/A
Eden Duong
#25982
N/A
Lukasz Bajsarowicz
#25954
N/A
Eden Duong
#25924
25893
Eden Duong
#25904
25896
Bartłomiej Szubert
#25723
24713
Alexey Rakitin
#25699
19805, 23481
Phil
#25262
N/A
Eden Duong
#26016
N/A
Eden Duong
#25997
N/A
Eden Duong
#25993
N/A
Nazar Klovanych
#25992
N/A
Hitesh
#25973
25972
maslii
#25975
N/A
Dan Wallis
#25624
N/A
Namrata
#25114
N/A
Mateusz Krzeszowiak
#25587
25586
Edouard Chitoraga
#26069
N/A
Eden Duong
#26067
N/A
Edouard Chitoraga
#26063
20379
Sathish Subramanian
#26057
N/A
Sathish Subramanian
#26050
N/A
Giancarlo Peris
#26044
N/A
Eden Duong
#26045
N/A
Eden Duong
#26042
N/A
Eden Duong
#26043
N/A
Krzysztof Daniel
#26037
N/A
Paweł Tylek
#26034
18687
Eden Duong
#26003
N/A
Łukasz Lewandowski
#26001
24025
Sergueï Dovbenko
#25940
100
Edouard Chitoraga
#25697
N/A
Rafael Corrêa Gomes
#25523
N/A
Tan Sezer
#24360
24357
Eden Duong
#26060
N/A
Eden Duong
#26059
N/A
Matheus Gontijo
#26058
N/A
divyajyothi5321
#26011
25930
Eden Duong
#26004
N/A
Sathish Subramanian
#25920
N/A
Eden Duong
#26082
N/A
Eden Duong
#26076
N/A
Sathish Subramanian
#26068
N/A
Lukasz Bajsarowicz
#26009
N/A
Ashna-Jahan
#25759
25433
Lukasz Bajsarowicz
#25854
N/A
Lukasz Bajsarowicz
#25846
N/A
Lukasz Bajsarowicz
#25845
N/A
Lukasz Bajsarowicz
#25844
N/A
Lukasz Bajsarowicz
#25842
N/A
Lukasz Bajsarowicz
#25841
N/A
Lukasz Bajsarowicz
#25831
N/A
Lukasz Bajsarowicz
#25836
N/A
Lukasz Bajsarowicz
#25830
N/A
Lukasz Bajsarowicz
#25829
N/A
Lukasz Bajsarowicz
#25825
N/A
Lukasz Bajsarowicz
#25823
N/A
Lukasz Bajsarowicz
#25821
N/A
Lukasz Bajsarowicz
#25819
N/A
Lukasz Bajsarowicz
#25820
N/A
Lukasz Bajsarowicz
#25818
N/A
Lukasz Bajsarowicz
#25817
N/A
Lukasz Bajsarowicz
#25816
N/A
Lukasz Bajsarowicz
#25815
N/A
Lukasz Bajsarowicz
#25813
N/A
Lukasz Bajsarowicz
#25811
N/A
Lukasz Bajsarowicz
#25807
N/A
Lukasz Bajsarowicz
#25804
N/A
Lukasz Bajsarowicz
#25802
N/A
Lukasz Bajsarowicz
#25800
N/A
Lukasz Bajsarowicz
#25799
N/A
Lukasz Bajsarowicz
#25797
N/A
Lukasz Bajsarowicz
#25794
N/A
Lukasz Bajsarowicz
#25793
N/A
Lukasz Bajsarowicz
#25788
N/A
Lukasz Bajsarowicz
#25787
N/A
Lukasz Bajsarowicz
#25784
N/A
Lukasz Bajsarowicz
#25783
N/A
Gihovani Filipp Pereira Demétrio
#26157
N/A
Ravi Chandra
#26160
26155
Edouard Chitoraga
#26154
N/A
Edouard Chitoraga
#26150
#26148
Eden Duong
#26140
N/A
Sathish Subramanian
#26136
N/A
Lukasz Bajsarowicz
#26128
N/A
Eden Duong
#26127
N/A
Edouard Chitoraga
#26096
N/A
Andrii Beziazychnyi
#26028
N/A
Sergueï Zhovnir
#25864
761
Daniel Ruf
#24849
N/A
Lukasz Bajsarowicz
#26131
N/A
Lukasz Bajsarowicz
#26129
N/A
Lukasz Bajsarowicz
#26125
N/A
Grzegorz Bogusz
#26033
25974
Pavel Bystritski
#25915
N/A
Andreas Mautz
#25838
25674
Marc Rodriguez
#25315
13136
Lukasz Bajsarowicz
#25957
22047
David Lambauer
#24103
N/A
divyajyothi5321
#26173
26164
Ravi Chandra
#26170
24972
azambon
#25876
25659
Adarsh Manickam
#25428
N/A
Andrey Legayev
#25125
N/A
Lukasz Bajsarowicz
#26225
N/A
Alexey Arendarenko
#25603
18717
divyajyothi5321
#26182
26176
Bartłomiej Szubert
#26130
25390
Marco Oliveira
#26084
26083
divyajyothi5321
#26066
26064
MaxRomanov4669
#25958
14663
Anton Kaplya
#25479
N/A
Torben Höhn
#25640
N/A
Edward Simpson
#25478
N/A
Behnam Shayani
#25452
20966
Bartłomiej Szubert
#24815
21684
Eden Duong
#24471
24468
Pavel Bystritski
#22917
22856
Lukasz Bajsarowicz
#26274
N/A
Lukasz Bajsarowicz
#26273
N/A
Bartłomiej Szubert
#26268
14001
aleromano89
#26264
23521
Lukasz Bajsarowicz
#26259
N/A
divyajyothi5321
#26237
25936
Hitesh
#26234
26227
Sathish Subramanian
#26215
26208
Lukasz Bajsarowicz
#26207
26206
divyajyothi5321
#26183
26181
divyajyothi5321
#26169
26168
Yaroslav Rogoza
#26029
N/A
Laura Folco
#25946
19093
miszyman
#25250
23350
Hitesh
#26290
26289
Marco Oliveira
#26270
22964
Bartłomiej Szubert
#26263
14913
Edouard Chitoraga
#26251
N/A
Riccardo Tempesta
#26218
26217
Pawan Kumar Parmar
#26048
N/A
Andrii Chorniy
#25985
23899
Douglas Radburn
#25337
14971
Denis Kopylov
#22990
22988
Bartłomiej Szubert
#26360
N/A
Patrick McLain
#26359
N/A
Bartłomiej Szubert
#26354
N/A
Alexander Taranovski
#26312
N/A
Edouard Chitoraga
#26311
N/A
Eduard Chitoraga)
#26305
N/A
Bartłomiej Szubert
#26269
7065
MaxRomanov4669
#26258
11209
Hitesh
#26238
26235
Patrick McLain
#26185
N/A
Eden Duong
#26051
25130
Eden Duong
#25909
25881
Benjamin Rosenberger
#25718
N/A
Benjamin Rosenberger
#25716
N/A
Matti Vapa
#25375
25373
Mychailo
#25333
25278
dhoang89
#25194
25188
Thomas Klein
#25083
N/A
Gihovani Filipp Pereira Demétrio
#24955
22304
John Hughes
#23313
22909
Lukasz Bajsarowicz
#26407
26396
Lukasz Bajsarowicz
#26395
26396
Lukasz Bajsarowicz
#26323
26331
Lukasz Bajsarowicz
#26321
26331
Lukasz Bajsarowicz
#26320
26331
Lukasz Bajsarowicz
#26319
26331
Paweł Tylek
#26424
26364
Alexander Taranovski
#26402
N/A
Tejash Kumbhare
#26365
26364
Andrii Chorniy
#26313
25968
Timon de Groot
#26495
N/A
Alexander Taranovski
#26464
N/A
Alexander Taranovski
#26452
N/A
Lukasz Bajsarowicz
#26322
26331
Lukasz Bajsarowicz
#26391
N/A
Vikalp Saxena
#26628
N/A
Lukasz Bajsarowicz
#26614
26612
Edouard Chitoraga
#26558
N/A
Ajith
#26540
N/A
Ajith
#26537
N/A
Fred Orosko Dias
#26512
N/A
Fred Orosko Dias
#26511
N/A
Fred Orosko Dias
#26509
N/A
Andrii Chorniy
#26490
N/A
Ravinder
#26489
26437
Lukasz Bajsarowicz
#26480
26479
Karyna Tsymbal
#26478
N/A
Oleh Usik
#26455
25162
deep aksnair
#26445
25761
Sérieusement Vasiutynskyi
#26435
18012
Tjitse
#26434
N/A
Andrii Kartavtsev
#26381
25300
Gerchak
#26327
N/A
Daniel Ruf
#26285
26275
Stanislav Ilnytskyi
#26071
26065
Fred Orosko Dias
#25994
N/A
Gerchak
#25839
21014
Mateusz Krzeszowiak
#25385
10518, 21717
Lukasz Bajsarowicz
#26355
N/A
Manuel Eduardo Cánepa Cihuelo
#26296
N/A
Alexander Taranovski
#26000
N/A
Hitesh
#25966
25962
Jeroen
#25875
9466
Mateusz Krzeszowiak
#25764
17125
Vinai Kopp
#24460
N/A
Namrata
#26634
N/A
Lukasz Bajsarowicz
#26611
26610
Sathish Subramanian
#26549
N/A
Karyna Tsymbal
#26525
N/A
Karyna Tsymbal
#26487
N/A
Alexander Taranovski
#26439
N/A
Alexander Taranovski
#26429
N/A
Sérieusement Vasiutynskyi
#26241
26240
Risha Tiwari
#26641
N/A
Karyna Tsymbal
#26579
N/A
Dmitri Tsymbal
#26574
N/A
Oleh Usik
#26569
17847
Ajith
#26568
N/A
Mayank Zalavadia
#26542
N/A
Yevhen Sentiabov
#26533
21555, 26532
Edouard Chitoraga
#26496
N/A
Alexander Taranovski
#26476
N/A
Erfan Shamabadi
#26462
N/A
Michael Fantetti
#26451
N/A
Karyna Tsymbal
#26430
N/A
Karyna Tsymbal
#26399
26332
Paavo Pokkinen
#26213
N/A
KaushikChavda
#26007
25591
Dan Wallis
#25860
N/A
Willem Wigman
#25851
N/A
jimuld
#25742
N/A
Raúl Verdugo Lorenzo
#25324
13865
George Babarus
#24648
N/A
Andreas von Studnitz
#24485
N/A
Chris Pook
#26378
26375
Paweł Tylek
#25641
25032
Andreï Nikolaev
#25285
N/A
Sérieusement Vasiutynskyi
#26420
8691
Raul E Watson
#26413
N/A
Ravi Chandra
#26162
25195
Lachlan Turner
#26623
26622
Lukasz Bajsarowicz
#26621
N/A
Hitesh
#26546
26543
Fanis Strezos
#26423
25268
Tejash Kumbhare
#26339
26338
Jens Scherbl
#24691
N/A
Ajith
#26782
N/A
Matthew O'Loughlin
#26781
N/A
Karyna Tsymbal
#26770
N/A
Sathish Subramanian
#26764
26760
Adarsh Manickam
#26714
14885
Karyna Tsymbal
#26715
N/A
Shankar Konar
#26502
863
Yurii Tvardyi
#26279
26276
Alexander Taranovski
#26246
26245
Andrea Parmeggiani
#26142
26141
toxix
#25488
25487
Nikita Sarychev
#25249
N/A
vishal-webkul
#25246
25245
adrian-martinez-interactive4
#24843
24842
Sathish Subramanian
#26820
N/A
Karyna Tsymbal
#26816
N/A
Ajith
#26771
N/A
Bartłomiej Szubert
#26684
N/A
Pratik Mehta
#26674
N/A
Tejash Kumbhare
#26342
N/A
Adarsh Manickam
#25991
847
Vinh Le
#26857
26843
Alexander Taranovski
#26846
N/A
Karyna Tsymbal
#26844
N/A
Karyna Tsymbal
#26835
N/A
Karyna Tsymbal
#26839
N/A
Karyna Tsymbal
#26769
N/A
Ajith
#26768
N/A
Karyna Tsymbal
#26712
N/A
Vova Yatsyuk
#26688
N/A
Dasharth Patel
#26659
26054
Bartłomiej Szubert
#26398
N/A
Sérieusement Vasiutynskyi
#26317
26240, 26314
Alexander Lukyanov
#24612
24547
Edouard Chitoraga
#26904
N/A
Karyna Tsymbal
#26899
N/A
Stanislav Ilnytskyi
#26897
N/A
Karyna Tsymbal
#26894
N/A
Edouard Chitoraga
#26878
N/A
Vladimir Fishchenko
#26869
N/A
Vladimir Fishchenko
#26868
N/A
Milan Osztromok
#26863
N/A
Stanislav Ilnytskyi
#26790
N/A
Sathish Subramanian
#26761
N/A
Edouard Chitoraga
#26710
N/A
Eden Duong
#26701
26675
Serhii Petrychenko
#26650
25675
Karyna Tsymbal
#26617
N/A
Sathish Subramanian
#26584
26583
Maksym Novik
#26523
25963
Hitesh
#26418
26416
Marco Köpcke
#25806
25656
Benjamin Rosenberger
#25626
N/A
Brice
#25426
N/A
Rafael Corrêa Gomes
#25417
N/A
Rafael Corrêa Gomes
#25321
N/A
Artem Voloznov
#24976
24971
Bartłomiej Szubert
#22296
14958
Alexander Taranovski
#26833
N/A
Lukasz Bajsarowicz
#26608
26607
Grayson
#26772
N/A
Lukasz Bajsarowicz
#25858
25856
Denis Kopylov
#23570
N/A
Petar Borisovski
#26995
N/A
Bartłomiej Szubert
#26982
N/A
Lukasz Bajsarowicz
#26974
26973
Max Mezhensky
#26947
N/A
Max Mezhensky
#26944
N/A
Sathish Subramanian
#26932
26917
Nandhini Nagaraj
#26928
N/A
Andrii Kasian
#26916
N/A
Max Mezhensky
#26912
N/A
Mohamed-Asar
#26862
26838
Vladimir Fishchenko
#26821
N/A
Oleh Usik
#26755
N/A
Vladimir Fishchenko
#26697
N/A
Fred Orosko Dias
#26586
N/A
Ravinder
#26230
26229
Oleh Usik
#26090
25910
Andrii Chorniy
#25895
13269, 25738
Shankar Konar
#25349
572
Chris Frewin
#25161
N/A
Sathish Subramanian
#26979
26800
Max Mezhensky
#26842
N/A
Alastair Mucklow
#26615
N/A
Lukasz Bajsarowicz
#25828
26331
enriquei4
#25311
13252
Bartłomiej Szubert
#27054
N/A
Lukasz Bajsarowicz
#27048
27044
Sean van Zuidam
#27041
27040
Karyna Tsymbal
#27021
N/A
Max Mezhensky
#27010
N/A
Lukasz Bajsarowicz
#26779
N/A
Bartłomiej Szubert
#26765
17933
Tobias Nilsson
#26548
23755, 26384
Lukasz Bajsarowicz
#26329
26331
korostii
#25359
25243
Hôte du pipeline
#24003
23619
Alexander Taranovski
#27114
N/A
Oleh Usik
#27057
N/A
Timon de Groot
#27033
27032
Dominic Fernando
#26907
N/A
Tu Nguyen
#26619
N/A
Lukasz Bajsarowicz
#26778
N/A
Lukasz Bajsarowicz
#26990
26989
Raul E Watson
#27196
N/A
Sérieusement Vasiutynskyi
#27149
27027
Adarsh Manickam
#27138
973
Sérieusement Vasiutynskyi
#27131
26758
Bartłomiej Szubert
#27084
N/A
Bartłomiej Szubert
#27083
N/A
Bartłomiej Szubert
#27082
N/A
Bartłomiej Szubert
#27080
N/A
Sérieusement Vasiutynskyi
#27029
26847
Vinh Le
#27026
27009
Sathish Subramanian
#27014
26992
Bartłomiej Szubert
#26964
N/A
Ihor Sviziev
#26939
N/A
Bartłomiej Szubert
#26902
20309
Tejash Kumbhare
#26649
26648
princeCB
#26642
26590
Alexander Taranovski
#26563
N/A
Hirokazu Nishi
#25454
24637
Hôte du pipeline
#24878
22609
Dmitri
#24743
24735
Francis
#23742
N/A
wardcapp
#22442
N/A
Vadim Malesh
#27172
14086
Franciszek Wawrzak
#27179
N/A
Bartłomiej Szubert
#27145
N/A
alexander-aleman
#26959
25219
DanieliMi
#26506
26499
Andrii Beziazychnyi
#25722
25669
Ihor Sviziev
#27284
N/A
Lukasz Bajsarowicz
#27281
N/A
Lukasz Bajsarowicz
#27277
N/A
Lukasz Bajsarowicz
#27274
N/A
Sérieusement Vasiutynskyi
#27261
20472, 20906, 21910
Navarre Barnier
#27249
N/A
Hôte du pipeline
#26784
4112, 11615, 11616, 25124, 26393
Piotr Markiewicz
#26746
N/A
Mudit Shukla
#26348
26345
Vadim Malesh
#27187
26117
Sérieusement Vasiutynskyi
#27170
26825
Eden Duong
#25733
N/A
Lukasz Bajsarowicz
#27118
27117
Dmitri Tsymbal
#27266
N/A
Lukasz Bajsarowicz
#27255
N/A
Vasilii Burlacu
#27165
N/A
AleksLi
#27015
26683
Tu Nguyen
#26987
26963
Sérieusement Vasiutynskyi
#26560
26473, 26856, 26858
Dan Wallis
#25297
N/A
solwininfotech
#24479
22251
Lukasz Bajsarowicz
#27273
N/A
Vadim Malesh
#27237
24704
Bartłomiej Szubert
#27215
N/A
Sérieusement Vasiutynskyi
#27191
26827
Michael Bottens
#27125
27124
Yaroslav Rogoza
#26015
N/A
M. Lewis
#25734
N/A
Alexandre Menk
#23191
N/A
Abrar Pathan
#27336
27335
Sérieusement Vasiutynskyi
#27304
14080
Lukasz Bajsarowicz
#27298
N/A
Lukasz Bajsarowicz
#27292
N/A
Vasilii Burlacu
#27263
26708
Lukasz Bajsarowicz
#27214
N/A
Michael Fantetti
#27116
N/A
Antonino Bonumore
#26748
26745
Bartłomiej Szubert
#26923
186
Andrii Beziazychnyi
#27390
N/A
Fil Maj
#27375
N/A
Oleh Usik
#27353
N/A
Dmitri Tsymbal
#27334
N/A
Bartłomiej Szubert
#27319
N/A
Andrii Beziazychnyi
#27307
26224
Lukasz Bajsarowicz
#27276
N/A
Lukasz Bajsarowicz
#27000
N/A
Tjitse
#26538
N/A
Pavel Bystritski
#25664
25540
Alexander Taranovski
#22011
22010
Lukasz Bajsarowicz
#27378
N/A
Nirav Patel
#26055
22363
Sérieusement Vasiutynskyi
#27412
13689
Bartłomiej Szubert
#27393
N/A
Bartłomiej Szubert
#27385
N/A
Bartłomiej Szubert
#27384
N/A
Vasilii Burlacu
#27383
27370
Lukasz Bajsarowicz
#27381
N/A
Mateusz Krzeszowiak
#27360
N/A
Priya-V-Panchal
#27088
27086
Laura Folco
#22837
22833
Bartłomiej Szubert
#26075
6310
Shankar Konar)
#27388
N/A
Graham Wharton
#26999
N/A
Vasilii Burlacu
#27371
N/A
Vadim Malesh
#27509
N/A
Bartłomiej Szubert
#27462
N/A
Lukasz Bajsarowicz
#27427
N/A
Lukasz Bajsarowicz
#27425
N/A
Nazar Klovanych
#27413
N/A
Abel Truong
#27365
16315
Lyzun Oleksandr
#27257
N/A
Daniel Ruf
#26763
26762
Shankar Konar
#26736
N/A
Tu Nguyen
#26618
N/A
Stanislav Ilnytskyi
#26417
N/A
Vasilii Burlacu
#27493
26652
Andrii Beziazychnyi
#27492
N/A
Sergueï Zhovnir
#27399
1002
Bartłomiej Szubert
#26397
N/A
Oleh Usik
#26100
24990
Simon Sprankel
#27545
N/A
Tu Nguyen
#27544
N/A
Oleh Usik
#27526
N/A
Ihor Sviziev
#27521
27500
Vasilii Burlacu
#27497
27496
Vasilii Burlacu
#27495
N/A
Bartłomiej Szubert
#27463
N/A
Abel Truong
#27295
27169
Mark Shust
#26900
N/A
Hôte du pipeline
#26801
N/A
Ihor Sviziev
#27519
27500
Lukasz Bajsarowicz
#27322
27320
Lukasz Bajsarowicz
#27321
27320
Nazar Klovanych
#27652
N/A
Cristiano Pacheco
#27627
27500
Lukasz Bajsarowicz
#27597
171
Oleh Usik
#27563
N/A
Bartłomiej Szubert
#27491
N/A
Sérieusement Vasiutynskyi
#27343
13851
Lukasz Bajsarowicz
#26988
26986
Tu Nguyen
#26926
N/A
Krzysztof Daniel
#26036
N/A
Oleh Usik
#27671
N/A
Lukasz Bajsarowicz
#27552
N/A
Marcus Pettersen Irgens
#27547
N/A
Oleh Usik
#27676
N/A
Ihor Sviziev
#27522
27500
Eino Keskitalo
#27448
N/A
Lukasz Bajsarowicz
#27701
27638
Oleh Usik
#27689
N/A
Bartosz Górski
#27685
N/A
Oleh Usik
#27677
N/A
Paweł Tylek
#27603
27506
Lukasz Bajsarowicz
#27325
N/A
Oleh Usik
#27843
N/A
Oleh Usik
#27841
N/A
Oleh Usik
#27692
N/A
Lukasz Bajsarowicz
#27606
27607
Matheus Gontijo
#26293
N/A
Oleh Usik
#27846
N/A
Lukasz Bajsarowicz
#27300
27299
Sergii Iouchtchenko
#27499
N/A
Sergii Iouchtchenko
#27536
N/A
Nazar Klovanych
#27566
N/A
Nazar Klovanych
#27966
N/A
Hôte du pipeline
#27926
27920
Hôte du pipeline
#27892
N/A
Ihor Sviziev
#27887
25769
Shikha Mishra
#27886
27874
Ajith
#27740
N/A
Oleksandr Kravchuk
#27578
N/A
Lukasz Bajsarowicz
#27323
27320
Lukasz Bajsarowicz
#27093
27089
Alexander Shkurko
#27994
N/A
Vadim Malesh
#27976
1270
Lukasz Bajsarowicz
#27964
N/A
Andrii Kalinich
#27955
27897
Shankar Konar
#27515
27503
Ajith
#26886
N/A
Nazar Klovanych
#28048
N/A
Volodymyr Zaets
#27948
N/A
Volodymyr Zaets
#27662
N/A
Ajith
#26704
N/A
Tu Nguyen
#27572
27058
Dzung Nguyen
#27455
23440
Rohan Hapani
#27359
27358

Configuration requise

Notre pile de technologie est basée sur PHP et MySQL. Pour plus d’informations, voir Configuration requise.

Instructions d’installation et de mise à niveau

Vous pouvez installer Magento Open Source 2.4.0 à l’aide du compositeur.

Kits d’outils de migration

L’outil de migration des données permet de transférer les données de magasin Magento 1.x existantes vers Magento 2.x. Cette interface de ligne de commande comprend des fonctions de vérification, de suivi de progression, de journalisation et de test. Pour obtenir des instructions sur l’installation, voir Installation de l’outil de migration de données. Envisagez d’explorer le référentiel de migration de données ou d’y contribuer.

La boîte à outils de migration de code permet de transférer les extensions et personnalisations de magasin Magento 1.x existantes vers Magento 2.x. L’interface de ligne de commande comprend des scripts pour la conversion des modules et des mises en page Magento 1.x.

recommendation-more-help
1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f