Notas de la versión de Adobe Commerce 2.4.6

Adobe Commerce 2.4.6 presenta soporte para PHP 8.2. PHP 8.1 sigue siendo totalmente compatible, pero se ha eliminado el soporte para PHP 7.4. Incluye mejoras significativas en rendimiento y escalabilidad. Se han optimizado las operaciones de GraphQL para operaciones de carro de compras por lotes y respuesta de procesamiento del árbol de categorías. Esta versión presenta el metapaquete de extensión de Adobe Commerce.

Esta versión incluye más de 300 correcciones y mejoras de calidad. Las dependencias del Compositor principal y las bibliotecas de terceros se han actualizado a las últimas versiones compatibles con PHP 8.2.

NOTE
Las versiones de Adobe Commerce pueden contener cambios incompatibles con versiones anteriores (BIC). Para revisar los cambios incompatibles con versiones anteriores, consulte Referencia BIC. Los principales problemas incompatibles con versiones anteriores se describen en Puntos destacados de BIC. No todas las versiones introducen BIC importantes.

Otra información de la versión

Aunque el código de estas funciones está empaquetado con versiones del código principal de Adobe Commerce, varios de estos proyectos (por ejemplo, B2B, Page Builder y Progressive Web Application (PWA) Studio) también se publican de forma independiente. Las correcciones de errores para estos proyectos se documentan en la información de versión independiente y específica del proyecto que está disponible en la documentación de cada proyecto.

Elementos destacados de Adobe Commerce 2.4.6

Busque los siguientes aspectos destacados en esta versión.

Mejoras de seguridad

Esta versión incluye ocho correcciones de seguridad y mejoras de seguridad de la plataforma.

Hasta la fecha no se han producido ataques confirmados relacionados con estos problemas. Sin embargo, es posible que se aprovechen ciertas vulnerabilidades para acceder a la información de los clientes o hacerse cargo de las sesiones de administrador. La mayoría de estos problemas requieren que un atacante obtenga acceso primero al administrador. Como resultado, le recordamos que tome todas las medidas necesarias para proteger a su administrador, incluidas, entre otras, las siguientes:

  • INCLUSIÓN EN LA LISTA DE PERMITIDOS IP
  • Autenticación de doble factor
  • Uso de una VPN
  • Uso de una ubicación única en lugar de /admin
  • Buena higiene de las contraseñas

Consulte Boletín de seguridad del Adobe para conocer la última discusión de estos problemas corregidos.

Mejoras de seguridad adicionales

Las mejoras de seguridad para esta versión mejoran el cumplimiento de las prácticas recomendadas de seguridad más recientes, que incluyen:

  • Se han corregido las lagunas en los registros de acciones de administración con una auditoría más específica de las acciones dentro de las vistas de cuadrícula, acciones masivas y exportaciones.

  • La validación de reCAPTCHA ya no falla durante el cierre de compra cuando se producen errores inesperados durante el procesamiento del pago. GitHub-35093

  • Nueva configuración del sistema para requerir confirmación por correo electrónico cuando un usuario administrador cambia su correo electrónico. Para reducir la vulnerabilidad del sitio, se agregó una nueva configuración del sistema (deshabilitada de forma predeterminada) para requerir confirmación por correo electrónico cuando un usuario administrador cambia su correo electrónico: Stores > Settings:Configuration > Customers > Customer Configuration > Account Information Options > Require email confirmation if an email has been changed. Cuando esta opción está habilitada, la aplicación solicitará una confirmación por correo electrónico cada vez que el usuario administrador cambie su dirección de correo electrónico. El siguiente módulo se ve afectado por este cambio: Magento_Customer.

Mejoras de Platform

Adobe Commerce 2.4.6 presenta soporte para PHP 8.2. PHP 8.1 sigue siendo totalmente compatible.

La compatibilidad con PHP 7.4 se ha eliminado de esta versión. No se puede ejecutar Adobe Commerce 2.4.6 en PHP 7.4.

Adobe Commerce 2.4.6 ahora es compatible con:

  • Composer 2.2.x. Se ha eliminado Composer 1.x.

  • Redis 7.0.x Aunque sigue siendo compatible con Redis 6.2, recomendamos implementar esta versión con Redis 7.0.x porque se espera que Redis 6.2 llegue al final de su vida útil en 2024.

  • OpenSearch ahora se admite como motor de búsqueda predeterminado para implementaciones locales y en la nube de Adobe Commerce. Se admite como motor de búsqueda independiente para Magento Open Source. Esta versión es compatible con OpenSearch v2.x y se ha probado con OpenSearch 2.5. Aunque sigue siendo compatible con OpenSearch 1.x, recomendamos utilizar esta versión con OpenSearch 2.x. Puede instalar y ejecutar Adobe Commerce y Magento Open Source 2.4.6 con OpenSearch 2.x tanto en la nube como en línea Requisitos previos del motor de búsqueda.

  • Elasticsearch 8.x. Consulte Elasticsearch de actualización.

  • MariaDB 10.6 (versión LTS). Esta versión sigue siendo compatible con MariaDB 10.4, pero recomendamos actualizar a MariaDB 10.6.

Otras actualizaciones y reemplazos

  • El esquema DHL se ha migrado de la versión 6.2 a la versión 10.0.

  • Las bibliotecas de JavaScript obsoletas se han actualizado a sus versiones más recientes y se han eliminado las dependencias obsoletas. Estos cambios son compatibles con versiones anteriores.

  • La compatibilidad con PHP 7.4 se ha eliminado de la base de código de Commerce.

  • Las dependencias de Symfony se han actualizado a la nueva versión de LTS. Las dependencias incluyen:

    • friendsofphp/php-cs-fixer
    • symfony/console
    • symfony/event-dispatcher
    • symfony/finder
    • symfony/process
    • web-token/jwt-framework
  • jquery-migrate se ha eliminado de la base de código de Commerce. GitHub-21406

  • Actualizado jQuery/fileUpload a la versión 10.32.

  • Los componentes del marco Zend (ZF1) que han llegado al final de su vida útil se han eliminado de la base de código. Consulte Cambios incompatibles con versiones anteriores resaltados.

  • Las dependencias de Laminas se han actualizado para admitir PHP 8.2.

  • El laminas/laminas-dependency-plugin Se ha eliminado el complemento Composer. GitHub-36515

  • Reemplazado Zend_Filter con laminas/laminas-filter.

  • Actualizado web-token/jwt-framework a la versión 3.0.5. (versión más reciente)

  • Actualizado allure-framework/allure-phpunit a v2.x.

  • Se ha actualizado el Chart-js biblioteca a la versión 3.9.1

Mejoras de rendimiento y escalabilidad

  • Rendimiento mejorado para las operaciones que afectan a muchos segmentos de clientes. Los comerciantes pueden mejorar el rendimiento de las operaciones que implican más de 100 segmentos de clientes habilitando una nueva configuración. El Real-time Check if Customer is Matched by Segment La configuración se puede deshabilitar según sea necesario para reducir el tiempo de procesamiento al reducir la validación de cada segmento de cliente con respecto a los clientes. Consulte Validación de segmentos del cliente.

  • Nueva configuración del sistema para limitar el número de productos mostrados en la cuadrícula de productos. Los comerciantes pueden utilizar el nuevo Limit Number of Products in Grid configuración para mejorar el rendimiento de la cuadrícula de productos. Este límite está configurado para 20000 de forma predeterminada y solo afecta a las colecciones de productos que utilizan los componentes de la interfaz de usuario. Limitar el número de productos mostrados puede mejorar el rendimiento de las operaciones para cuadrículas con más de 200 000 productos. Consulte Limitar el número de productos en la cuadrícula

  • Rendimiento de importación mejorado (hasta 100 000 registros por minuto). Los comerciantes pueden utilizar el nuevo POST /rest/<store_view_code>/V1/import/csv Extremo de la API de REST para importar datos en Adobe Commerce. Este punto de conexión proporciona las mismas capacidades que la función de importación de administración y admite el uso de un archivo CSV para crear, actualizar y eliminar productos, precios de productos y entidades de clientes. Consulte Importar datos.

  • Rendimiento de procesamiento de pedidos de alto rendimiento mejorado mediante el equilibrio de carga. Adobe Commerce 2.4.6 en la nube Los clientes de infraestructura en la nube que tienen un gran volumen de pedidos simultáneos (1000 pedidos por minuto) ahora pueden mejorar el rendimiento del procesamiento de pedidos al equilibrar la carga en su base de datos en diferentes nodos. Los comerciantes pueden volver a equilibrar esta carga habilitando conexiones secundarias para las instancias de base de datos MySQL y Redis. Consulte Procesamiento de pedidos de alto rendimiento

Metpaquete de extensión de Adobe Commerce

Esta versión presenta la extensión de Adobe Commerce metapackage v1.1.0, que agrupa automáticamente las extensiones de Adobe Commerce seleccionadas con esta versión principal. Las versiones de estas extensiones que se incluyen en este metapaquete se instalan cuando composer update se ejecuta, lo que simplifica el proceso de actualización de estas extensiones al actualizar a la última versión principal. Estas extensiones seguirán manteniendo programaciones de versiones independientes.

El metapaquete de extensión de Adobe Commerce para Adobe Commerce 2.4.6 incluye estas dos extensiones:

Las versiones futuras de este metapaquete de extensión contendrán extensiones adicionales.

Eventos de Adobe I/O para Adobe Commerce

Eventos de Adobe I/O para Adobe Commerce captura eventos de comercio y transfiere datos de Adobe Commerce a otros sistemas de Adobe. Los desarrolladores pueden crear aplicaciones nativas de la nube en el Generador de aplicaciones de Adobe Developer que se suscriban a eventos de Commerce, como actualizaciones de inventario, cambios de estado de pedidos y actualizaciones de precios. Los desarrolladores pueden utilizar esta capacidad para intercambiar datos para la organización de todo el recorrido comprador en sus sistemas esenciales.

Actualizaciones de accesibilidad

El enfoque de esta versión ha sido crear una experiencia de tienda en Venia (PWA) que sea más perceptible, operable, comprensible y robusta. Estas mejoras incluyen:

  • La etiqueta de texto visual para Sign in ahora coincide con su nombre accesible. (Una práctica recomendada recomienda que el nombre accesible de un elemento de la interfaz de usuario comience con el texto de etiqueta visible).
  • Se han agregado nombres descriptivos accesibles a los botones de toda la tienda.
  • Se han añadido etiquetas descriptivas verbales a Has Video casillas de verificación en los filtros de búsqueda.
  • Los usuarios solo de teclado ahora pueden acceder a todas las funciones de la página en la tienda. Anteriormente, los compradores no podían acceder a los vínculos de subnavegación pulsando únicamente las teclas.

Integración de Adobe Commerce con Adobe IMS

Los siguientes módulos IMS de Adobe se han desunido del código principal de Adobe Commerce 2.4.6 y ahora se empaquetan como un metapaquete independiente:

  • adobe-ims
  • adobe-ims-api
  • admin-adobe-ims

El nuevo adobe-ims-metapackage La versión 2.2.0 está integrada con Adobe Commerce 2.4.6. En esta versión no se han producido cambios en la funcionalidad.

B2B

La función Pedidos de compra para empresas ahora está totalmente expuesta por la API de GraphQL. Esta versión presenta dos esquemas de GraphQL:

  • El esquema de GraphQL de pedidos de compra cubre la funcionalidad de gestión de pedidos de compra del usuario de la empresa B2B, como la creación, edición y eliminación de pedidos de compra. Consulte Pedidos de compra (B2B).
  • El esquema de GraphQL de reglas de pedidos de compra permite crear, editar y eliminar reglas de aprobación, así como validar manualmente pedidos de compra. Consulte Reglas de aprobación de pedidos de compra (B2B).

Esta versión incluye varias correcciones de errores. Consulte Notas de la versión B2B.

Braintree

  • El Pay Later El botón y los titulares (mensajes) de Italia y España se han habilitado para Braintree.
  • Se han activado los mensajes PayAfter con PayPal Vault.
  • Se agregaron los enlaces web Protección contra el fraude y ACH. El enlace web de Protección contra el Fraude se activa cuando se ha tomado una decisión sobre el riesgo en Braintree. El enlace web ACH se activa cuando el estado de un pago ACH se actualiza a settled o settlement decline.
  • Se ha añadido el enlace web LPM (métodos de pago locales).

GraphQL

Las mejoras de rendimiento de GraphQL incluyen:

Se ha mejorado el tiempo de respuesta al consultar categorías con permisos de categoría habilitados. Los tiempos de respuesta han mejorado al consultar productos en categorías para las que los permisos de categoría están habilitados y que contienen muchos grupos de clientes o catálogos compartidos. Los cambios de código que admiten esta mejora de rendimiento incluyen:

  • Se ha optimizado la operación de resolución de GraphQL.
  • El proveedor de datos ya no vuelve a establecer los datos en caché en tiempo de ejecución para cada nuevo producto que se procese, lo que ha mejorado el rendimiento.
  • El procesamiento de permisos del producto se ha optimizado en la resolución de GraphQL. Los permisos de producto ahora se aplican a colecciones de productos en lugar de ahora por producto.
  • Permisos optimizados leídos en catálogos compartidos en la addProductsToCart mutación.
  • Los permisos del producto se han optimizado con fragmentos en línea del producto.

Rendimiento optimizado del procesamiento del árbol de categorías. El categoryList La consulta de se ha optimizado para admitir clientes con un gran número de categorías. Los comerciantes que utilicen esta consulta para buscar más de 1500 categorías con hasta cinco niveles de subcategorías anidadas notarán una mejora del rendimiento. La carga de elementos secundarios de categoría mediante la refactorización del código se ha mejorado eliminando las llamadas a métodos innecesarias, mejorando el almacenamiento en caché del árbol de categorías y cargando los datos de categoría de forma recursiva. Los cambios de código que admiten esta mejora de rendimiento incluyen:

  • Se ha mejorado la captura de metadatos de atributos personalizados para modelos de categoría.
  • Se ha mejorado la búsqueda de ID de categoría y getChildren se han reducido las llamadas de.
  • Se ha mejorado la carga de elementos secundarios de categoría.

Tiempos de respuesta de consulta de operaciones de carro de compras masivas reducidos. Las mutaciones de productos añadidos se han optimizado para mejorar el rendimiento de las consultas al añadir hasta 500 productos simples y configurables. Los productos agrupados no se ven afectados. Las mutaciones optimizadas incluyen addProductsToCart, addConfigurableProductsToCart, addDownloadableProductsToCart, addSimpleProductsToCart, addVirtualProductsToCart,addWishlistItemsToCart, y updateCartItems.

la consulta del cliente ahora admite la ordenación de pedidos. El orders objeto de salida del customer La consulta ahora contiene un campo de ordenación. Ahora puede ordenar los pedidos por número de orden o fecha de creación y en orden ascendente o descendente.

Nuevas mutaciones:

deleteCustomer

Page Builder

Page Builder 1.7.3 es compatible con Adobe Commerce 2.4.6.

PWA Studio

PWA Studio v.13.0.x es compatible con Adobe Commerce 2.4.6. Incluye varias mejoras para mejorar la accesibilidad. Para obtener información sobre la corrección de errores, consulte Versiones del PWA Studio. Consulte Compatibilidad de versión para obtener una lista de versiones de PWA Studio y sus versiones principales de Adobe Commerce compatibles.

Problema conocido

Problema: New Relic no es compatible actualmente con PHP 8.2. Las implementaciones que ejecuten New Relic pueden ejecutar Adobe Commerce 2.4.6 en PHP 8.1, pero no en PHP 8.2. Solución: Ejecute Adobe Commerce 2.4.6 en PHP 8.1 hasta que se publique una nueva versión de New Relic compatible con PHP 8.2. Este lanzamiento está previsto para el verano de 2023.

Problemas solucionados

Hemos corregido cientos de problemas en el código principal de Adobe Commerce 2.4.6. A continuación, se describe un subconjunto de los problemas corregidos incluidos en Adobe Commerce 2.4.6.

Instalación, actualización e implementación

  • La implementación de contenido estático ya no agota el tiempo de espera o falla durante las implementaciones estándar o compactas con varias configuraciones regionales y sitios web.
  • La estrategia de compactación ya no hace referencia no válida a un dominio externo al ejecutar la implementación de contenido estático (bin/magento set:static-content:deploy -f --strategy compact).
  • Ejecutando bin/magento setup:di:compile -vvv (o con el -v o -vv opciones) ahora devuelve un mensaje informativo en caso de error. GitHub-35391
  • Adobe Commerce ya no genera la siguiente excepción cuando se ejecuta el bin/magento setup:upgrade en una implementación que ya ejecuta la herramienta de migración de datos: PHP Fatal error: Declaration of Migration\Logger\Logger::addRecord(int $level, string $message, array $context = []): bool must be compatible with Monolog\Logger::addRecord(int $level, string $message, array $context = [], ?Monolog\DateTimeImmutable $datetime = null): bool in /var/www/html/vendor/magento/data-migration-tool/src/Migration/Logger/Logger.php on line 34. GitHub-35604
  • El bin/magento setup:db:status ya no falla en entornos que ejecutan MySQL 8.0.29. Anteriormente, la salida del comando indicaba erróneamente que el esquema declarativo estaba obsoleto. GitHub-35671
  • El composer install ya no se sobrescribe el comando .gitignore archivos. GitHub-32888
  • Ejecutando bin/magento sampledata:remove para eliminar los datos de ejemplo después de la actualización en Alpine Linux ya no falla con este error: Undefined constant "MagentoHackathon\Composer\Magento\Deploystrategy\GLOB_BRACE. GitHub-36062
  • bin/magento setup:upgrade ahora se ejecuta correctamente después de la primera ejecución composer install --no-dev. GitHub-36351
  • Las entradas de seguimiento de pila de excepciones y excepciones ahora se incluyen en var/log/exception.log. GitHub-36054
  • Adobe Commerce ahora genera un error de validación de parámetros cuando se utiliza la línea de comandos para establecer una conexión de Redis sin contraseña.

Accesibilidad

  • El Proceed to Checkout, Review Order, y Place Order Los botones del flujo de trabajo de cierre de compra ahora funcionan según lo esperado con la entrada de teclado.
  • Indicación visual del enfoque en los botones al utilizar TAB o SHIFT + TAB la navegación por los controles de página ahora funciona según lo esperado.

Lectores de pantalla

  • El lector de pantalla de la página del historial de pedidos ahora lee la descripción de imagen correcta.

Los lectores de pantalla ahora anuncian:

  • Se encontró el recuento total de elementos en los resultados de búsqueda según lo esperado
  • Nombre del usuario que ha iniciado sesión cuando un usuario inicia sesión correctamente con los controles del teclado
  • El encabezado de la página de resultados de búsqueda de productos ahora lee el valor correcto para <title> elemento
  • Si los campos de entrada son obligatorios
  • Corregir el estado actual de los elementos de acordeón (contraídos y expandidos)
  • Cuando el contenido de la página se ha actualizado después de que el usuario haya hecho clic en Create an account botón

Paquete de productos

  • La actualización del producto del paquete a través de la API para una vista de tienda específica ahora no anula los datos de otras vistas de tienda del mismo producto del paquete. Anteriormente, los títulos de opciones de producto del paquete se sobrescribían con el primer título de opción para otras vistas de tienda.
  • Los productos agrupados ahora se pueden filtrar correctamente desde el administrador Catalog > Products cuando se utiliza una configuración regional neerlandesa. Anteriormente, Adobe Commerce mostraba este error cuando se intentaba filtrar Type: Bundle Product: Something went wrong with processing the default view and we have restored the filter to its original state. GitHub-35704
  • La cuadrícula de productos ya no genera una excepción cuando los productos agrupados tienen un precio especial que supera los 1000. Anteriormente, al buscar el producto por SKU o al navegar a Catalog > Products Sin embargo, Adobe Commerce arrojó este error: Non Numeric value encountered. GitHub-36284)
  • Las columnas de los PDF de notas de abono y facturas para pedidos que contienen una combinación de paquete y productos simples ahora se representan correctamente. Anteriormente, las columnas estaban distorsionadas o mal alineadas.
  • En consultas de GraphQL que contienen un BundleProduct fragmento, el items.options.product El objeto contiene datos según lo esperado. Anteriormente, el objeto podía ser nulo en algunas circunstancias.
  • Las cantidades decimales para las opciones de paquete ahora se representan correctamente cuando Quantity uses decimals está activada. Anteriormente, solo se representaba la parte entera de la cantidad, no el componente fraccional. Por ejemplo, una cantidad de 1,5 se procesó como 1,0. GitHub-35964
  • Las consultas de productos de GraphQL ahora solo devuelven opciones de productos agrupados dentro del ámbito del almacén que se consulta.
  • Los productos que no están asignados a categorías pero que son opciones de producto para paquetes o productos agrupados ahora se devuelven en respuestas cuando la variable Allow Category Browsing La configuración de está habilitada para que el cliente envíe la consulta.

Caché

  • La caché de página completa ya no se vacía después de la realización del pedido a menos que el producto solicitado esté agotado. Anteriormente, la caché se depuraba para la categoría cada vez que se creaba un envío.
  • Ahora los datos se almacenan en caché correctamente cuando la caché L2 está configurada y los datos remotos se desalojan parcialmente. Anteriormente, después de vaciar únicamente la caché de datos sin hash de esos datos, la nueva caché no se guardaba mientras existían los hash de datos.
  • Defectos corregidos en CatalogUrlResolverIdentity y CmsUrlResolverIdentity que impedía el almacenamiento en caché. Esto afectó al almacenamiento en caché de consultas de ruta en varias solicitudes.

Carro y cierre de compra

  • Los compradores ahora pueden agregar un artículo adicional al carro de compras cuando este contiene la cantidad mínima del producto simple.
  • Las llamadas a la API de REST para recuperar datos del carro de compras ahora devuelven lo mismo grand_total y base_grand_total valores cuando la moneda de almacenamiento y la moneda base son la misma. GitHub-34649
  • El valor exportado de Maximum Qty Allowed in Shopping Cart ahora coincide con el valor predeterminado establecido en la configuración de la administración.
  • Adobe Commerce ahora calcula correctamente el total general de los reembolsos de pedidos con un descuento en el envío.
  • Google reCAPTCHA ahora funciona según lo esperado para pedidos de tiendas. Anteriormente, Adobe Commerce mostraba estos errores cuando no se seleccionaba Google ReCAPTCHA por primera vez antes de que un comprador intentara realizar un pedido por primera vez: ReCaptcha validation failed, please try again y No such cart with id = ID.
  • La actualización de la imagen CAPTCHA ahora respeta la configuración de la administración y no se activa cuando la configuración está desactivada. Anteriormente, la actualización se activaba cada vez que cambiaba el método de pago, independientemente de si la configuración estaba habilitada o deshabilitada. GitHub-34855
  • Adobe Commerce ahora muestra una ventana emergente de confirmación como se espera antes de redirigir al comprador a la página siguiente cuando cambia la cantidad de productos en la página del carro de compras sin actualizar el carro de compras y luego intenta navegar a la página siguiente.
  • Los compradores ahora pueden reducir la cantidad de un producto de su carro de compras después de que se haya reducido en el Administrador. Anteriormente, Adobe Commerce arrojaba el siguiente error cuando un comprador intentaba reducir la cantidad de productos: The requested qty is not available. GitHub-35780
  • Adobe Commerce ya no genera un error en la consola de JavaScript cuando la cantidad de productos supera el máximo configurado durante el cierre de compra de envío múltiple. En su lugar, Adobe Commerce ahora muestra un mensaje de error informativo. GitHub-36184
  • La cantidad de artículos en la página del carro de compras ya no se representa como un número negativo cuando un comprador utiliza la tecla de flecha hacia abajo en el teclado para cambiar la cantidad de productos. GitHub-36299
  • Los compradores ya no pueden añadir al carro de compras un producto de una categoría que ahora no está permitida después de cambiar el grupo de clientes al que pertenece el comprador. Adobe Commerce ahora comprueba el acceso a los permisos del grupo de clientes para categorías específicas cuando se cambian los ajustes de configuración de los permisos.
  • Los carros de compras de los clientes ya no se vacían antes de la creación del pedido del administrador y el contenido del carro de compras ahora se restaura si se cancela o abandona el pedido. Los artículos ahora se eliminan del carro de compras solo después de la creación del pedido. Anteriormente, cada vez que un usuario administrador intentaba crear un pedido en la página Administrar carro de compras, se vaciaba el carro de compras.
  • El minicarrito ahora muestra las imágenes de producto correctas después de ejecutar bin/magento catalog:image:resize. Anteriormente, todas las imágenes se reemplazaban por la imagen de marcador de posición de producto predeterminada. GitHub-35535
  • El cierre de compra ahora se puede completar correctamente cuando la dirección de envío contiene un atributo de extensión. Anteriormente, Adobe Commerce arrojaba este error: Object of class Magento\Quote\Api\Data\AddressExtension could not be converted to string. GitHub-34202
  • El addBundleProductsToCart la mutación ya no añade productos a una cotización si una opción de producto requerida no tiene valor. GitHub-25676
  • Adobe Commerce ahora devuelve un mensaje informativo cuando una addProductsToCart la mutación falla al añadir un producto al carro de compras con permisos insuficientes.
  • Adobe Commerce ya no genera un error en la página del carro de compras cuando se utiliza el pedido rápido para agregar un producto en una cantidad que supera el inventario disponible.
  • El setGiftOptionsOnCart la mutación ahora requiere la autorización del cliente para las operaciones del carro de compras del cliente.

Regla de precio del carro

  • Las opciones de envío gratuito establecidas durante la creación de reglas de la regla de precios del carro de compras ahora se aplican a los pedidos según lo esperado. Anteriormente, las opciones de envío gratuito aplicadas durante la creación de la regla se omitían durante el cierre de compra y no se permitía el envío gratuito cuando se aplicaba la regla. GitHub-35013
  • El discount_percent de la columna sales_order_item La tabla de un producto ahora se rellena según lo esperado con el porcentaje de descuento cuando la cantidad de descuento del artículo no está establecida o es mayor o igual que la cantidad del artículo del pedido. Anteriormente, esta columna no se rellenaba cuando se aplicaba una regla de precio de carro de compras a este producto.
  • El widget de lista de productos ya no muestra precios incorrectos o almacenados en caché para un comprador que ha iniciado sesión. El precio mostrado en el widget de página de inicio ahora coincide con la dirección del comprador y se actualiza cuando el comprador actualiza la dirección. Anteriormente, la caché del explorador no actualizaba los precios del producto en la página de inicio en función de las reglas fiscales del grupo de clientes.
  • La función de lista Comparar productos ahora funciona correctamente en una implementación de varios sitios web y depende del sitio web.
  • Adobe Commerce ya no muestra los datos de la página anterior cuando vuelve a cargar una página de detalles del producto. Anteriormente, cuando se volvía a cargar la página de detalles del producto, los datos de la primera pestaña se combinaban con los datos recién cargados durante una división de segundo.
  • Ahora, las categorías con subcategorías se pueden expandir en el menú principal en dispositivos móviles según lo esperado. Anteriormente, los compradores no podían abrir ni expandir categorías con subcategorías en implementaciones móviles. GitHub-35329
  • Los listados de categorías ahora se actualizan según lo esperado cuando se asigna un producto a un nuevo sitio web o tienda. Anteriormente, el indizador de precios del producto no se marcaba como no válido y, a continuación, se volvía a activar en un cron ejecute según lo esperado. Como resultado, la entrada de precios del producto no aparecía en la tabla de índices de precios y no se mostraba en la nueva tienda o sitio web.
  • El recuento de inventario de tienda ahora es preciso cuando la variable Display Out of Stock Products La opción de configuración está habilitada. GitHub-35899
  • La página de categoría ya no está vacía cuando se activa la opción Allow All Products Per Page La configuración está habilitada. GitHub-35900
  • El Display Out of Stock Products La opción de configuración ahora funciona según lo esperado cuando está habilitada. Anteriormente, todos los productos se mostraban como agotados en la tienda cuando esta opción estaba habilitada en el Administrador. GitHub-35898
  • Los clientes asignados a un grupo de mayoristas ahora pueden agregar un producto agrupado al carro de compras cuando lo permitan los permisos de categoría. Si este permiso no está definido para un grupo de clientes, la configuración tiene prioridad.
  • La ordenación de productos por atributos booleanos ahora funciona según lo esperado. GitHub-36390
  • Los descuentos de la regla de precio de catálogo ya no se aplican a las opciones de producto personalizadas de precio fijo, sino que solo se aplican al precio original del producto.
  • Los productos relacionados ahora se recuperan correctamente en la página de detalles del producto de la tienda cuando se generan mediante la regla de producto relacionada para los atributos de producto alfanuméricos. GitHub-36285
  • Las reglas de precios de catálogo ahora tienen en cuenta el ámbito seleccionado y se aplican a los productos únicamente para los sitios web para los que el atributo tiene un valor de opción que coincide con la regla. Anteriormente, la regla no tenía en cuenta el ámbito seleccionado en implementaciones de varios sitios. GitHub-36049
  • Los atributos de tamaño y color de las opciones de muestra ahora se preseleccionan en la página de detalles del producto cuando un comprador modifica el producto configurable de la página Mi carro de compras. (La versión 3.x de jQuery ahora admite el swatchRenderer nombre del widget, que ahora es camel case). Anteriormente, la opción de muestra no estaba preseleccionada.
  • Ahora se notifica a los clientes de las caídas de precios de productos cuando el cliente está suscrito a la alerta de caída de precios. Anteriormente, las notificaciones de caída de precios no siempre se enviaban debido al almacenamiento en caché de nivel de aplicación.
  • Reglas de catálogo basadas en SKU con is not one of Las condiciones de ahora funcionan según lo esperado.
  • Adobe Commerce ya no supone erróneamente que una categoría es la categoría principal de otra según la ruta de la categoría. Anteriormente, cuando dos categorías eran adyacentes y un ID de categoría empezaba por el ID de categoría de otra categoría, Adobe Commerce suponía que las categorías tenían la misma categoría principal. GitHub-32464

Productos configurables

  • Adobe Commerce ya no genera un error cuando un usuario administrador agrega productos manualmente a un producto configurable que ya tiene muchos productos simples asignados. Anteriormente, Adobe Commerce mostraba este error: Something went wrong with processing the default view and we have restored the filter to its original state.
  • Los compradores ya no pueden agregar productos configurables con una cantidad comercializable de 0 al carro de compras en implementaciones con pedidos pendientes deshabilitados. Adobe Commerce ahora indica que el producto está agotado. GitHub-35319
  • La creación de un nuevo producto mediante la importación de un producto configurable con muchas opciones desde una vista de tienda diferente ahora resulta en una copia exacta del primer producto según lo esperado. Anteriormente, el orden de clasificación de las opciones configurables del nuevo producto era incorrecto y los títulos no se traducían a la configuración regional de la nueva vista de tienda en implementaciones con varias vistas de tienda y configuraciones regionales. GitHub-35200
  • Los productos configurables con todos los productos secundarios agotados ahora se muestran como agotados en la tienda.
  • Los SKU y los nombres de productos configurables ahora se muestran con precisión. Anteriormente, los nombres y SKU se mostraban como indefinidos después de mover un grupo de atributos sobre el grupo Detalles del producto en Stores > Attribute set. GitHub-36309

Cupones

  • Se ha añadido una lógica de validación al flujo de trabajo Administrar códigos de cupones para aplicar la configuración del código de cupones al generar cupones. Anteriormente, la generación de código de cupón ignoraba el Code Length configuración cuando la variable Cantidad de cupones valor mayor que 2500.
  • Los puntos de recompensa ahora se añaden a la cuenta de un cliente como se espera cuando se aplica un cupón de recompensa durante el pago con el método de pago PayPal Express.
  • Ahora puede aplicar un código de cupón durante la creación de la solicitud de administración cuando la regla de precio del carro de compras tenga el peso como condición. Anteriormente, los códigos de cupón no se establecían si no se seleccionaban otros campos para el producto. GitHub-36271
  • Ahora puede filtrar informes de cupones según varias reglas de precio del carro de compras. GitHub-36272
  • Las opciones personalizadas ahora se aplican y se guardan cuando un usuario administrador pulsa Enter al configurar un producto con opciones personalizadas. Anteriormente, podía seleccionar opciones y agregar el producto a un pedido, pero las opciones no se guardaban y se le pedía al usuario administrador que volviera a seleccionar las opciones del producto. GitHub-35284
  • Los códigos de cupones ahora se pueden exportar correctamente a Excel XML. Anteriormente, el archivo generado no contenía todos los códigos de cupones seleccionados, sino solo tantos elementos como se seleccionaron en el selector elementos por página.GitHub-36073

cron

  • El catalog_index_refresh_price el trabajo cron ahora se ejecuta correctamente. Anteriormente, Adobe Commerce registraba este error durante la ejecución de cron: report.ERROR: Cron Job catalog_index_refresh_price has an error: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens.

Moneda

  • Se ha agregado un espacio que falta entre los símbolos de moneda personalizados y los precios a los precios de productos de tienda y administrador. Se han agregado la condición y la expresión regex adecuadas para permitir un NBSP personalizado en los símbolos de moneda. Por ejemplo, IDRx 105.00 se mostraba anteriormente como IDRx105.00.

Segmento de cliente

  • El filtro Sí/No en la cuadrícula Segmentos de cliente de administración durante la creación de una nueva regla de precios del carro de compras ahora funciona según lo esperado.

Correo electrónico

  • Adobe Commerce ya no envía correos electrónicos duplicados a los clientes después de crear un pedido desde el administrador.
  • Los correos electrónicos de solicitud del administrador ya no se envían cuando el Email order confirmation La configuración está deshabilitada. GitHub-36256
  • Las opciones de imagen ya no se muestran como marcado de HTML en la nota de crédito, la confirmación de pedido y los correos electrónicos de cliente de factura (plantilla predeterminada) para productos con opciones personalizadas.

Marcos

  • Los usuarios administradores ahora pueden abrir correctamente el Administrador Store > Configuration página cuando no hay ningún país en Países de la Unión Europea configuración (Stores > Configuration > General > Country options > European Union Countries). Anteriormente, cuando un usuario administrador intentaba abrir esta página, Adobe Commerce arrojaba este error: TypeError: explode(): Argument #2 ($string) must be of type string, null given in /var/www/php/folder/vendor/magento/module-config/ViewModel/CountryFilter.php:46. GitHub-35901
  • jquery.cookie Las dependencias ahora funcionan según lo esperado con dependencias de JavaScript. Anteriormente, no se podían utilizar alias para jquery/jquery.cookie. GitHub-35913
  • El bin/magento i18n:collect-phrases El comando ahora incluye <title> texto en el archivo CSV exportado. GitHub-35462
  • Magento\Framework\Code\Reader\ArgumentsReader::getParentCall() ahora admite argumentos de constructor con nombre. Ahora puede llamar a una función configurando los parámetros por su nombre.
  • Los errores ahora se registran según lo esperado en la exception.log archivo. Anteriormente, aunque los errores se registraban en system.log archivo, no se han registrado errores var/log/exception.log.
  • Los comerciantes ahora pueden especificar un proveedor SMTP externo personalizado. GitHub-26104
  • Ahora, las integraciones de OAuth se pueden volver a autorizar como se espera en implementaciones que ejecuten Adobe Commerce 2.4.3-p2. Anteriormente, la reautorización fallaba con este error: The attempt to post data to consumer failed due to an unexpected error. Please try again later. Adobe Commerce también intentó descifrar valores no cifrados. GitHub-35313
  • La correcta rowId El parámetro ahora se pasa cuando la categoría urlKey se guarda para las categorías que tienen categorías secundarias. Anteriormente, el categoryId se pasó al guardar la categoría URLKey.
  • El código de atributo del producto event se ha agregado a la lista de códigos de atributos de producto reservados, lo que elimina los errores asociados con el uso de un atributo con este nombre en la tienda. Anteriormente, la aplicación arrojaba este error en las páginas de detalles del producto y búsqueda/lista de productos al event se utilizó: report.CRITICAL: Error: Call to a member function getStatus() on string in /home/mer33515/public_html/ee24develop/magento2ee/app/code/Magento/CatalogEvent/Observer/ApplyIsSalableToProduct.php:23.
  • Los mensajes de error de validación de tienda que se producen durante la realización del pedido ahora se muestran de forma coherente. Anteriormente, los mensajes aparecían, se contraían y luego volvían a aparecer. GitHub-35651
  • Los consumidores de AMQP ya no fallan debido a un trim() en implementaciones que ejecuten PHP 8.1. Anteriormente, cuando el consumidor de AMQP se iniciaba después de la instalación, Adobe Commerce arrojaba este error: Deprecated Functionality: trim(): Passing null to parameter #1 ($string) of type string is deprecated in .../vendor/magento/framework-amqp/Config.php on line 143. GitHub-35380
  • El getFilteredTimerIds ahora funciona según lo esperado. Clase Magento\Framework\Profiler\Driver\Standard\Stat ahora es compatible con PHP 8.1. Anteriormente, Adobe Commerce arrojaba una excepción cuando se llamaba a este método. GitHub-35307
  • Se ha eliminado la dependencia del imagemin-svgo biblioteca.
  • El proceso de plantilla de minificación ahora procesa correctamente comentarios consecutivos cuando el primer comentario comienza con //. GitHub-34880
  • Se ha corregido una consulta de base de datos emitida por el BundleGraphQl módulo que devolvió este error: "debugMessage": "Notice: Undefined offset: 16 in vendor/magento/module-bundle-graph-ql/Model/Resolver/Options/Collection.php on line 130".GitHub-34991

Correcciones generales

  • Adobe Commerce ahora muestra un intervalo de tiempo preciso cuando un usuario administrador selecciona la variable Last 24 Hours del panel de estadísticas de administración. Anteriormente, Adobe Commerce mostraba un intervalo de tiempo incorrecto. Esto ocurrió porque la zona horaria de la base de datos permaneció sin cambios.
  • Ahora se pueden generar notas de abono para cantidades enteras y decimales. Anteriormente, solo se admitían cantidades enteras.
  • Regla de validación de entrada del código postal del cliente para el tipo solo numérico ahora funciona según lo esperado en la Edit Customer Address field (Store > Attribute > Customer Address). Anteriormente, la información de la dirección del cliente se guardaba sin validar el código postal.
  • Los usuarios administradores con acceso restringido a un sitio web ahora pueden iniciar sesión correctamente en el Administrador mediante la función Iniciar sesión como cliente.
  • Las cuentas de cliente compartidas globalmente ahora tienen direcciones validadas con la lista de países permitidos para el sitio web actual y guardadas correctamente. Anteriormente, estas cuentas se validaban incorrectamente en los países permitidos del sitio web en el que se registraba el cliente.
  • Las rutas de exploración de la jerarquía de páginas de CMS ya no se muestran cuando Enable Hierarchy Functionality está deshabilitada. Anteriormente, se mostraban las rutas de exploración y, cuando los compradores hacían clic en ellas, se mostraba una página 404. GitHub-35513
  • La eliminación de un producto de todos los sitios web a través del administrador ya no provoca el siguiente error: SQLSTATE[42000]: Syntax error or access violation. GitHub-35133
  • Los clientes que superen el número máximo de intentos fallidos de inicio de sesión ahora pueden iniciar sesión después de restablecer la contraseña. GitHub-34981
  • El componente de filas dinámicas ahora se comporta como se espera cuando un usuario administrador agrega un nuevo elemento. Anteriormente, el componente de fila se comportaba incorrectamente cuando se agregaba un nuevo producto simple a un producto agrupado. GitHub-34850
  • Corrección de errores tipográficos y gramática incorrecta en app/code/Magento/Backend/etc/menu.xsd archivo.
  • El app/code/Magento/Authorization/README.md se ha actualizado el archivo para describir con precisión la creación de tablas.
  • El recordLogin se ha actualizado para establecer los valores de inicio de sesión en el modelo de usuario, así como para conservar los valores correctos en la variable logdate y lognum campos del admin_user tabla. Anteriormente, no se registraban los intentos de inicio de sesión de los usuarios administradores actualizados.
  • Las plantillas de problemas de GitHub se han convertido en formularios de problemas para problemas de experiencia del desarrollador y solicitudes de funciones.
  • El Is required El atributo de cliente ahora se implementa correctamente por ámbito de sitio web para el formulario de edición del cliente de administración.
  • El Grid Filter Condition Type el campo de los atributos cliente y dirección del cliente ya no está visible en la página de edición de atributos cuando Use in Filter Options La configuración está deshabilitada.
  • Adobe Commerce ahora muestra un mensaje de error informativo si un comerciante no introduce un valor de atributo SKU opcional al crear un producto. Anteriormente, la aplicación arrojaba esta excepción cuando el atributo era opcional: Deprecated Functionality: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/mg244/project-community-edition/vendor/magento/module-eav/Model/Entity/AbstractEntity.php on line 932. GitHub-35810
  • El Show my quotes filtro en el My Quotes La página de ahora funciona según lo esperado. Anteriormente, los resultados de los filtros incluían citas de otros usuarios administradores.

Tarjetas de regalo

  • Las cantidades de productos de la tarjeta de regalo ahora son las mismas que las especificadas en un archivo CSV durante la importación. Se han añadido comprobaciones de las opciones existentes y los valores anteriores ahora se actualizan en función de una clave única. Anteriormente, las cantidades de tarjetas regalo se duplicaban cuando las tarjetas regalo se importaban varias veces.

Envoltorio para regalos

  • El precio del envoltorio para regalos ahora se muestra como se espera en el bloque de resumen del pedido cuando el envoltorio para regalos se ha aplicado en el nivel de pedido a un pedido que contiene productos físicos y virtuales. Anteriormente, Adobe Commerce no mostraba el precio del envoltorio para regalos.

GraphQL

  • Types que implementan varias interfaces en el código de GraphQL ahora pueden separarse con una & así como , de acuerdo con la GraphQL @docespecificación.
  • El setShippingAddressesOnCart La mutación ahora admite la configuración de códigos de región numéricos como region. Anteriormente, esta mutación no funcionaba correctamente para valores numéricos de código de región.
  • El products La consulta ahora solo devuelve las revisiones asociadas con el ámbito especificado. Anteriormente, las consultas devolvían revisiones de todas las tiendas.
  • Los permisos de categoría ahora se respetan durante las solicitudes de GraphQL.
  • El customer query ahora filtra los pedidos con un especificado from y to intervalo correctamente. GitHub-31537
  • El product La consulta ahora devuelve los datos de categoría correctos en la agregación. Anteriormente, attribute_code.category_uid devolvió el valor de category_id en lugar de category_uid.
  • El customerOrders la consulta ya no emite un \"model\" value should be specifiederror. GitHub-35852
  • El customer query ahora filtra pedidos según el ámbito. Ahora puede especificar si la consulta debe filtrar los pedidos por tienda, sitio web o globalmente.
  • El categoryList query ahora devuelve un recuento de productos preciso tanto para las categorías principales ancladas como para las no ancladas. El nuevo is_anchor se ha agregado el atributo a la lista de columnas seleccionadas de la colección de categorías. Anteriormente, las solicitudes devolvían un recuento de productos 0. GitHub-36300
  • El generateCustomerTokenAsAdmin La mutación ahora funciona como se espera al crear un token para iniciar sesión en un almacén no predeterminado en una implementación de varias tiendas. GitHub-35084
  • El createEmptyCart La mutación de ahora genera una excepción como se espera cuando se utiliza un token caducado. GitHub-26112
  • Los mensajes de error de consulta del carro de compras son más informativos. GitHub-34546
  • Datos de agregación en la respuesta de un products la consulta ahora incluye valores correctos para el atributo de tipo de precio attribute_code y label. GitHub-28878
  • El products La consulta devuelve información de categoría como se espera cuando el prefijo de base de datos tiene un valor no nulo. Anteriormente, devolvía un Internal server error. GitHub-36117
  • Se ha corregido el tipo de valor devuelto para getCustomerIsGuest método. GitHub-29529
  • El Magento\CatalogGraphQl\Plugin\DesignLoader se ha refactorizado el complemento.
  • La recarga del carro de compras ahora se activa una sola vez, tal como se espera, cuando el carro de compras se inicializa mediante mutaciones de GraphQL. Anteriormente, la carga del carro de compras activaba una revalidación innecesaria contra el inventario de existencias, lo que consumía recursos significativos cada vez que se cargaba el carro de compras.
  • Se ha añadido la gift_message escriba en el OrderItemInterface. GitHub-29418
  • Las opciones de producto devueltas en las respuestas de GraphQL ahora incluyen solo los productos que están dentro del catálogo al que pertenece el usuario. Si el usuario pertenece a un catálogo compartido, solo se devolverán los productos de los catálogos compartidos. Si el usuario es un invitado o no forma parte de un catálogo compartido personalizado, solo se devuelven los productos del catálogo público.

Google ReCAPTCHA

  • Un error reCAPTCHA en var/log/exception.log para el inicio de sesión del administrador de reCAPTCHA de Google V3 se ha resuelto y no se registran mensajes de error. Anteriormente, se producía el siguiente error cada pocos segundos cuando un usuario administrador configuraba su Configuration > Security > Google reCAPTCHA Admin Panel configuración: main.ERROR: Can not resolve reCAPTCHA parameter. {"exception":"[object] (Magento\Framework\Exception\InputException(code: 0): Can not resolve reCAPTCHA parameter. at /home/xxxxxxx/public_html/vendor/magento/module-re-captcha-ui/Model/CaptchaResponseResolver.php:25)"} []. GitHub-34975

Imagen

  • Se han actualizado las recomendaciones sobre el tamaño del logotipo para el albarán de factura de PDF.

Importar/exportar

  • La importación de un producto con la misma clave URL numérica que un producto existente pero sin su carácter alfabético de terminal ya no provoca un error de validación cuando la variable Product URL Suffix se establece en empty en Admin.
  • El bin/magento app:config:importahora el comando importa correctamente el contenido de un config.php cuando contiene ciertos cron expresiones. Anteriormente, la importación fallaba con este error: Import failed: Notice: Trying to access array offset on value of type null in [..]/vendor/magento/module-config/Model/Config/Backend/Currency/Cron.php on line 66. GitHub-31428
  • La exportación completa ahora funciona correctamente cuando AWS S3 se utiliza como almacenamiento remoto. Anteriormente, la exportación fallaba debido al tamaño del archivo cargado.
  • El estado del producto ahora se importa correctamente cuando faltan columnas de datos de inventario en el archivo CSV. Anteriormente, después de la importación del producto, se asignaba automáticamente el origen predeterminado al producto, su cantidad se establecía en cero y su estado se enumeraba como agotado cuando faltaban columnas de datos de inventario en el archivo CSV.
  • La importación de valores de precios avanzados ahora proporciona el recuento correcto de registros nuevos y actualizados cuando la importación incluye más de 100 registros. Anteriormente, el mensaje de éxito de la importación proporcionaba un recuento incorrecto.
  • Los archivos CSV exportados ahora contienen las rutas correctas a los nombres de categoría guardados en varios idiomas. Se ha agregado un ID de tienda para la colección de categorías. Anteriormente, los archivos exportados contenían rutas mixtas con diferentes idiomas en lugar de una ruta de categoría derivada de la vista de almacén predeterminada.
  • La actualización de las opciones personalizadas de un producto en una vista de tienda específica mediante la importación ahora se realiza correctamente. Anteriormente, se producía un error interno del servidor si las filas relacionadas con un producto se dividían en varios lotes.
  • El Fixer.io el servicio de importación ahora funciona según lo esperado. Las tasas de cambio ahora se importan correctamente. GitHub-36010

Índice

  • Indexador batch_size para el catalogpermissions_category ahora se cambia al valor proporcionado en la variable env.php como se esperaba. Anteriormente, se producía un error tipográfico en la ruta de acceso del indizador batch_size la anulación impidió cambiar el tamaño del lote al valor proporcionado en env.php. GitHub-652
  • La reindexación de precios ahora se ejecuta correctamente cuando el catálogo contiene productos agrupados que no están asignados a ningún sitio web. Anteriormente, se producía el siguiente error cuando se ejecutaba el índice de precios del producto: Warning: Undefined array key <bundel product id > in vendor/magento/module-bundle/Model/ResourceModel/Indexer/Price/DisabledProductOptionPriceModifier.php on line 117. GitHub-35796

Infraestructura

  • Se ha añadido la desinfección de DATE y DATETIME valores en volcados de base de datos para la compatibilidad con Adobe Commerce. Anteriormente, los campos de tipo fecha y hora no se saneaban para las tablas cliente/oferta/pedido en la tabla de copia de seguridad de la base de datos.
  • El escaper.js escapeHtml ahora convierte el carácter especial ampersand (&) en "$amp;" por el InnerHtml regla. Esta solución genérica resuelve los problemas de conversión de referencias a caracteres y caracteres especiales en el cuadro de entrada del título y guarda el valor exacto como insertado. Anteriormente, los caracteres ampersand (&) se codificaban incorrectamente en los nombres de nodo en la jerarquía de contenido.
  • Problemas con el tercero colinmollenhour/php-redis-session-abstract y PHP 8.1 se han resuelto. GitHub-35634

Galería de medios

  • La Galería multimedia heredada ahora está deshabilitada de forma predeterminada. Anteriormente, Enable old Media gallery se estableció en Yes.
  • La Galería de nuevos medios se ha optimizado para mejorar la carga del árbol de directorios en la página de categorías.

Registro

  • Ahora puede generar informes del sistema para archivos de registro de 0 bytes. Anteriormente, Adobe Commerce arrojaba un error al generar un informe para una colección de archivos de registro cuando uno o más archivos estaban vacíos.

Pedido

  • La página Administrador de notas de abono de pedidos de venta ahora muestra el total general correcto para los pedidos creados con crédito de tienda y varias facturas. Anteriormente, el cálculo del total general era incorrecto y el usuario no podía generar una nota de crédito.
  • El prefijo de pedido que se pasa en la secuencia de comandos de instalación ahora se agrega correctamente al ID de pedido.
  • La página de detalles del pedido ahora se carga correctamente cuando el pedido contiene un producto con un valor de texto personalizado largo. Anteriormente, la página de detalles del pedido no se cargaba y el valor en sales_order_item.product_options La columna no se almacenaba correctamente si un producto contenía un valor largo para una opción personalizada de texto.
  • El estado de los pedidos de tienda ahora es preciso para los pedidos parcialmente reembolsados. Anteriormente, un pedido permanecía en el estado de procesamiento después del envío cuando se aplicaba un reembolso parcial. GitHub-35528
  • El grupo de clientes ahora se representa con precisión como Sin sesión iniciada para un pedido creado por un usuario invitado. Anteriormente, el grupo de clientes era NULL en los resúmenes de pedidos de invitado, lo que afectaba a los correos electrónicos de confirmación y a la exportación de pedidos. GitHub-35440
  • Un estado de Closed ahora se asigna a pedidos virtuales como se espera después de que se haya emitido una nota de abono y se reembolse al cliente. Anteriormente, los productos virtuales se mostraban como Complete en la lista desplegable Estado, pero Closed en el pie de página de los comentarios de pedidos cuando se agregó el comentario desde el Administrador. GitHub-35283
  • Los clientes ahora pueden realizar pedidos de productos con una cantidad inferior a uno y la cantidad de productos ahora está estrictamente escrita como float. Anteriormente, debido a que la cantidad de productos se escribía estrictamente como intSin embargo, los pedidos de una cantidad de producto inferior a una no se han satisfecho con este mensaje: Some of the products are disabled. GitHub-36060
  • Los reembolsos por envío ahora se calculan correctamente cuando la variable Apply discount on prices La opción de configuración se ha definido en including taxes.
  • Las cuadrículas de facturas, envíos y notas de abono ahora se actualizan de forma asíncrona después de archivar los pedidos.
  • Los pedidos duplicados ya no son el resultado de solicitudes de GraphQL simultáneas e idénticas. Las ofertas ahora están bloqueadas durante un máximo de 10 segundos para evitar la creación de pedidos duplicados y la segunda solicitud falla con estos errores: The cart isn't active o The order has already been placed and is currently processing. Este valor de bloqueo se puede configurar mediante el ID para Magento\Quote\Model\PlaceOrderMutex clase lockWaitTimeout parámetro. GitHub-36274
  • Añadir un comentario a un pedido archivado ya no lo devuelve a la cuadrícula de pedidos no archivados y mantiene su estado archivado.
  • Los valores de atributos de la compañía ahora se muestran según lo esperado en las secciones de dirección de facturación y envío del flujo de trabajo de cierre de compra. Anteriormente, los atributos de empresa no se mostraban correctamente en la página de detalles del pedido porque las tiendas no se configuraban correctamente durante la creación del pedido. Los valores de atributo se almacenaban correctamente solo cuando el Mostrar compañía la propiedad se estableció en optional para Sitio web principal en implementaciones de varias tiendas.
  • El customer_address_id ahora se establece el valor esperado para una nueva dirección de facturación cuando My billing and shipping address are the same La casilla de verificación está activada. Se ha introducido una condición adicional para identificar si la dirección de facturación es la misma que la de envío antes de establecer el ID de dirección del cliente para la dirección de envío.
  • Se han resuelto los problemas de simultaneidad con la colocación del pedido. Anteriormente, si dos pedidos se realizaban desde exploradores diferentes al mismo tiempo o casi al mismo tiempo, a ambos se les asignaba el mismo ID de pedido. GitHub-35833
  • Realizar un pedido facturado automáticamente de un producto gratuito cuando la indexación asíncrona está habilitada ahora funciona según lo esperado. No se han agregado entradas al sales_order_grid or sales_invoice_grid para estos pedidos. Anteriormente, Adobe Commerce arrojaba una excepción porque la aplicación intentaba indexar las cuadrículas durante la colocación del pedido en lugar de depender de cron. GitHub-36334

Page Builder

  • Ahora puede utilizar la función de arrastrar y soltar de Page Builder para importar imágenes en lote en la galería.
  • Se han resuelto los problemas con la regla CSS del regulador de Page Builder. GitHub-34527
  • Dropdown, Text area, y Text field Los atributos de ya están disponibles en la lista de atributos del producto de Page Builder. Anteriormente, solo Dropdown y Text area atributos estaban disponibles.

Pago

  • El método de pago contra reembolso ya no se muestra en el flujo de trabajo de cierre de compra de la tienda cuando se exime el pago contra reembolso en el país especificado en las direcciones de envío y facturación. Anteriormente, no se implementaban las opciones de configuración de administración de esta función.
  • La información de pago de Vault ya no se muestra en la sección Pago del flujo de trabajo de creación de pedidos de administración si el comprador no ha guardado un token. GitHub-33954
  • Los precios personalizados ya no se duplican después de aplicar un descuento mediante la regla de precio del carro de compras. GitHub-35154
  • El nuevo estado de pedido pendiente ahora se acepta como se espera cuando se realiza un pedido mediante el método de pago de cierre de compra de subtotal cero.
  • La configuración del correo electrónico de invitado ahora se respeta durante la creación del pedido para un comprador invitado con PayPal Express a través de GraphQL. Anteriormente, el conjunto de direcciones de correo electrónico se sobrescribía con la dirección de correo electrónico establecida en la cuenta de PayPal.

Braintree

  • Los ID de pedido ahora se añaden a las solicitudes de liquidación de las transacciones de pago.
  • Adobe Commerce ya no genera el siguiente error cuando un comerciante hace clic en Reports > Braintree Settlement: Error: Undefined constant Braintree\PaymentInstrumentType::ANDROID_PAY_CARD in /var/www/html/vendor/paypal/module-braintree-core/Ui/Component/Report/Listing/Column/PaymentType.php:49. GitHub-35434
  • El customerPaymentTokens query ya no devuelve tokens de Braintree cuando el depósito está desactivado en Admin.
  • El Pay Later El botón y los titulares se han habilitado para Italia y España.
  • Los usuarios administradores ahora pueden crear un pedido o reordenar cuando el método de pago del Braintree está activado. Anteriormente, Adobe Commerce arrojaba este error: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174.
  • El proceso de Pago y envío mediante el método de pago al Braintree ahora se completa correctamente cuando el Braintree PayPal está activado y Enable Card Payments está deshabilitada. Anteriormente, la barra de progreso nunca se resolvía y Adobe Commerce mostraba este error de consola: adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66). GitHub-35961
  • Se han implementado enlaces web de protección contra el fraude, pago ACH y método de pago local. El enlace web de protección contra el fraude se activa solo si se ha tomado una decisión de riesgo en el Braintree. El enlace web ACH se activa solo después de que un pago ACH se haya actualizado a settled o settlement decline.
  • El Tagline y Layout Los campos de configuración de se han eliminado de todas las PayPal botones en la sección Estilo de administración.
  • La opción de método de pago de Braintree Vault permanece seleccionada en el flujo de trabajo de cierre de compra cuando un comprador actualiza su dirección de facturación. Anteriormente, el método de pago se anulaba cuando el comprador anulaba la selección del método My billing and shipping address are the same botón.
  • Los artículos de línea ahora se transfieren para transacciones de PayPal cuando la variable Send Line Items La configuración de está habilitada desde el Administrador.
  • Lógica de validación en el método de pago ACH Account Number El campo ahora admite texto de cuatro a 17 dígitos.
  • El customerPaymentTokens query ya no devuelve tokens de Braintree cuando el depósito está desactivado por el administrador.
  • Los usuarios administradores ahora pueden crear un pedido o repedido para los clientes cuando el método de pago del Braintree está activado. Anteriormente, Adobe Commerce arrojaba este error: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174
  • Los compradores ahora pueden utilizar el método de pago del Braintree en tiendas donde Enable Card Payments se ha deshabilitado. Anteriormente, Adobe Commerce arrojaba este error de JavaScript: _adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66).

Rendimiento

  • El indexador de precios ahora elimina los datos obsoletos como se espera después de reemplazar registros durante la reindexación parcial de catálogos grandes. Anteriormente, el proceso de reindexación eliminaba los registros obsoletos antes de reemplazarlos, lo que provocaba que los productos desaparecieran temporalmente de la tienda. GitHub-35616
  • El rendimiento de la bin/magento/setup:upgrade se ha mejorado el comando. Anteriormente, este comando recreaba los déclencheur de la base de datos, lo que causaba un tiempo de inactividad significativo durante la ejecución del comando. Además, los indexadores no volvieron al modo programado y permanecieron en modo de guardado. GitHub-33386
  • La actualización de los precios de nivel por API ahora se ejecuta más rápido. Anteriormente, la actualización de los precios de nivel generaba innecesarios SELECT consultas, que retrasaban la ejecución cuando se asignaban muchos grupos de clientes a un producto.
  • Se ha optimizado la carga de páginas que incluyen la lista de productos del widget de catálogo. Anteriormente, los atributos no globales se cargaban directamente desde la base de datos.

Informes

  • El informe de registro de administración ahora muestra un Value before change valor cuando se actualiza una regla de categoría.
  • El informe Total del pedido de y hasta las fechas ahora se muestran correctamente después de seleccionarlas en el selector de fechas.
  • El ANDROID_PAY_CARD entrada constante Braintree/Ui/Component/Report/Listing/Column/PaymentType.php ha reemplazado GOOGLE_PAY_CARD. Esto resuelve los problemas con el informe de Braintree.

Autorizaciones de devolución de mercancía (RMA)

  • El campo de comentarios RMA (Orders > Return) ya no contiene espacios en blanco redundantes. (La <textarea> y <?php las etiquetas ahora están en una línea.
  • El Use Config Settings casilla de verificación para Enable RMA Ahora, el campo guarda su valor como se espera cuando se guarda un producto.

Críticas

  • Los usuarios administradores con acceso restringido a un ámbito específico ahora pueden eliminar críticas de producto según lo esperado.

Funciones

  • Se ha agregado una ACL que falta para Stores > Configuration > Services > OAuth. Anteriormente, no se podía definir el acceso a esta configuración de OAuth al configurar permisos de funciones.

Buscar search-heading

  • Las búsquedas de cadenas entre comillas ahora funcionan según lo esperado cuando la variable Minimum Terms to Match La opción de configuración está habilitada. Anteriormente, Adobe Commerce arrojaba este error: {"error":{"root_cause":[{"type":"parsing_exception","reason":"[match_phrase] query does not support [minimum_should_match]' ....
  • El Punto de registro el filtro de búsqueda de registros de clientes en las cuadrículas de clientes de pedidos de venta ahora funciona según lo esperado durante la creación del pedido.
  • Se ha mejorado la calidad de las sugerencias de búsqueda para consultas de varias palabras.
  • Los resultados de la búsqueda ahora incluyen salidas de opciones agotadas para todos los productos disponibles cuando Display Out Of Stock Products está habilitado GitHub-36055

Envío

  • Las tarifas de envío de FedEx, USPS y UPS se calculan correctamente cuando la regla del carro de envío gratuito está configurada para que coincida únicamente con un subconjunto de artículos del carro de compras.
  • La página de envío Administrador ya no muestra la opción de envío gratuito cuando el total del pedido es inferior al importe mínimo especificado que es apto para el envío gratuito. GitHub-33697
  • Adobe Commerce ahora honra al cliente administrador Show Company configuración al mostrar la dirección de envío o de cliente. Cuando esta opción está deshabilitada, la empresa de envío ya no se incluye en el envío, la dirección del cliente ni en el registro de pedidos de la base de datos. Anteriormente, la información se mostraba a pesar de la deshabilitación de la configuración. GitHub-33729
  • Se ha eliminado una operación de guardado superflua en las ofertas al estimar el envío.
  • storeId ahora se aplica directamente desde $request->getStoreId() para garantizar que el ámbito no se pierda cuando un usuario administrador crea una cotización. Anteriormente, ocasionalmente se producían problemas con los métodos de envío cuando se creaba una oferta desde el administrador utilizando módulos de terceros.
  • Ahora se generan direcciones URL compatibles con SEO para los productos cuya url_key La configuración de se anula en el nivel de vista de tienda. Anteriormente, las direcciones URL de productos de categorías no se redirigían a direcciones URL compatibles con SEO.
  • Adobe Commerce ya no genera un error de importe mínimo de pedido cuando se aplica un descuento a los costes de envío.
  • Los reembolsos de envío ahora se calculan correctamente cuando se aplican impuestos después de aplicar un descuento al envío.
  • Todas las promociones aplicables para un carro solicitado a través de GraphQL cart Las consultas se devuelven juntas. Las promociones incluyen descuentos de artículos de línea, reglas/descuentos de carro de compras, cupones, tarjetas regalo y crédito de la tienda. GitHub-35545
  • Se ha añadido la price_excl_tax y price_excl_tax a la salida de la variable setShippingMethodsOnCart mutación. GitHub-31206
  • Los ID de envío únicos ahora se pasan en las respuestas de GraphQL según lo esperado con los detalles de envío de los pedidos enviados a varias direcciones para consultas de GraphQL.

Ensayo

  • La reprogramación de la fecha de finalización de una actualización de ensayo ya no genera un error una vez completada la actualización. Anteriormente, los administradores no podían abrir páginas de productos ni cuadrículas de productos, y Adobe Commerce arrojaba este error: report.CRITICAL: Exception: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "1" already exists.
  • El panel de ensayo ahora muestra el número total correcto de registros, y la paginación del panel ahora funciona según lo esperado. Anteriormente. el tablero mostraba un máximo de 20 registros.
  • Las previsualizaciones de ensayo de contenido ahora se cargan más rápido en implementaciones con muchos almacenes. Vista previa de reindexación ahora reindexe solo las tiendas seleccionadas.
  • Ahora, los productos se pueden añadir al carro de compras en el modo de vista previa de programación. Al actualizar los vínculos de rutas de exploración en el modo de vista previa de programación con estos parámetros, se ha corregido este problema: version, timestamp, y signature.

Impuestos

  • El Display Zero Tax Subtotal La configuración de ahora se aplica según lo esperado a los pedidos en implementaciones que ofrecen varios métodos de envío. Anteriormente, el campo de impuestos cero estaba visible en la página del carro de compras durante el cierre de compra antes de seleccionar un método de envío, incluso cuando esta configuración estaba deshabilitada. GitHub-35561
  • Adobe Commerce ahora puede mostrar productos agrupados con impuestos en la página de categoría de tienda en implementaciones que ejecuten PHP 8.1. Anteriormente, Adobe Commerce no mostraba una lista de productos y arrojaba esta excepción: main.CRITICAL: Exception: Deprecated Functionality: ucfirst(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/m24/vendor/magento/module-tax/Pricing/Render/Adjustment.php on line 188 in /var/www/m24/vendor/magento/framework/App/ErrorHandler.php:61. GitHub-35500
  • Los comerciantes ya no pueden mover una actualización programada a otra actualización que contenga el mismo ID de regla. Anteriormente, las actualizaciones de programación para reglas de precios de carro de compras creaban programaciones duplicadas cuando una actualización se movía a otra actualización que contenía el mismo ID de regla.
  • La asignación automática de grupos de clientes ahora funciona cuando no hay ningún ID de IVA asociado a la dirección del cliente. Si la dirección no contiene un ID de IVA, se trata como perteneciente a un cliente registrado sin IVA y Adobe Commerce cambia el grupo de clientes a un grupo sin IVA. Anteriormente, cuando Enable Automatic Assignment to Customer Group se ha activado, la cuenta de cliente no se ha asignado automáticamente a customerGroup cuando se eliminó el ID de IVA de la cuenta del cliente.
  • Ahora se muestran los bloques dinámicos correctos para las reglas de catálogo organizadas en el modo de vista previa provisional. Anteriormente, se mostraban bloques dinámicos no relacionados.
  • Ahora se representan correctamente varios impuestos en la sección Resumen de Impuestos de facturas y notas de abono cuando se aplica el envío múltiple durante el cierre de compra.
  • Los descuentos ya no se aplican cuando un subtotal de pedido, incluidos los impuestos, junto con el importe de impuestos fijos sobre productos supera la condición de regla de carro de compras en la página de carro de compras. Anteriormente, los descuentos se aplicaban incluso cuando el total superaba la condición de regla del carro de compras.
  • Ahora puede especificar un vat_id cuando se utiliza GraphQL para agregar o actualizar la dirección de un comprador invitado.

Prueba

  • Se corrigieron errores de pruebas unitarias para diferentes versiones del ICU y libxml bibliotecas.
  • Ahora los desarrolladores pueden indicar al sistema que ejecute un accesorio de datos en una vista de almacén específica. El nuevo parámetro opcional scope acepta un string que corresponde al alias de la sujeción de almacén.
  • Se ha añadido la capacidad de generar varias instancias de una sujeción de datos utilizando el count parámetro.
  • Eliminado no nativo array_first función de las dependencias dev en el marco MFTF.

Traducciones y configuraciones regionales

  • La traducción en línea ahora funciona correctamente con caracteres especiales, incluidos caracteres Unicode extendidos, en frases ubicadas en etiquetas SCRIPT. Anteriormente, los caracteres japoneses se representaban incorrectamente en el script editado al utilizar la traducción en línea.
  • El ñ en el nombre de un producto ahora se convierte en n durante la generación de claves URL.
  • El resultado de la ejecución bin/magento i18n:collect-phrases ahora incluye traducciones de plantillas de correo en depend construye según lo esperado. GitHub-35449
  • Ahora, los caracteres japoneses se pueden introducir directamente en el conjunto de atributos de la página de productos (cuadro combinado). Anteriormente, al introducir directamente caracteres japoneses en este cuadro combinado, se cambiaban o eliminaban caracteres al ejecutar el explorador Firefox en MacOS. El textInput El atributo HTML, que gestiona mejor la conversión de caracteres japoneses en todos los navegadores, ha reemplazado al Value y valueUpdate atributos.
  • El getOptions ahora recupera correctamente el método price valores de etiqueta de atributo basados en la vista de tienda. Anteriormente, la variable price El atributo se tradujo durante las operaciones de GraphQL para una vista de tienda incorrecta.

IU

  • La moneda específica del sitio web ahora se utiliza según lo esperado para las columnas Precio especial, Coste y MSRP en la cuadrícula de productos del administrador. Anteriormente, el símbolo de moneda correcto no se mostraba en la cuadrícula de productos del catálogo de administración al filtrar por la vista de la tienda para un precio especial.
  • La funcionalidad de arrastrar y soltar de las opciones personalizadas del producto ahora funciona según lo esperado. Ahora puede mover una opción personalizable de una página a otra cuando hay varias páginas disponibles en la cuadrícula de opciones personalizables.
  • Los gráficos del tablero de administración ahora muestran los intervalos de tiempo hasta la fecha desde el comienzo del año natural actual hasta la fecha actual según lo esperado. Anteriormente, los intervalos de fechas incluían más de 12 meses.
  • Se ha añadido un icono de favoritos predeterminado que falta en la página principal de la tienda. GitHub-35493
  • El administrador ahora muestra correctamente la última fecha de inicio de sesión de cada usuario administrador. Anteriormente, cuando un usuario administrador iniciaba sesión en el Administrador por primera vez, se mostraba un valor de fecha de inicio de sesión vacío en la cuadrícula del usuario Administrador.
  • La función de previsualización de plantilla de correo electrónico (Marketing > Communications > Email Templates) ahora muestra las plantillas correctamente. Anteriormente, la imagen de vista previa se truncaba. GitHub-35697
  • Se ha añadido la new-shipping-address-modal para admitir el estilo del modal de la nueva dirección de envío.
  • Se ha añadido texto informativo debajo de Search Weight atributo de Storefront Properties campo de entrada en administración Stores > Attributes > Product.
  • Las vistas previas de correo electrónico ahora se abren en una pestaña independiente en lugar de en una ventana emergente, que proporciona una vista más amplia del contenido del correo electrónico. Anteriormente, el contenido del correo electrónico se truncaba.
  • La función de filtro para la cuadrícula de funciones del usuario (Administrador) System > Permissions > User roles > Administrators) ahora funciona según lo esperado. El valor de la matriz ahora se gestiona por separado. Anteriormente, cuando se intentaba introducir una consulta en esta cuadrícula, Adobe Commerce generaba este error de consola y la página no se cargaba: Uncaught TypeError: Cannot read properties of null. GitHub-35993
  • Se ha añadido validación para valores de atributo al crear un cliente a través de la API de REST. El proceso de creación falla ahora cuando se proporcionan valores de atributos no válidos. Anteriormente, no había ninguna validación para el sexo, que no es un campo obligatorio. Durante la creación del cliente, el valor que se pasó para el sexo se guardó en la variable customer_entity tabla.
  • Las direcciones añadidas durante el cierre de compra ahora mantienen el formato esperado. Anteriormente, se omitían las líneas en blanco.
  • Cambiar la vista de cuadrícula de columnas de la cuadrícula de producto y seleccionar nuevas columnas para una vista personalizada ya no déclencheur la acción Seleccionar todas las columnas de cuadrícula. Anteriormente, el cuadro de columna desaparecía y los productos de la cuadrícula se seleccionaban o anulaban su selección. GitHub-36302
  • Los usuarios administradores ahora pueden borrar el registro de tareas completadas de administración correctamente. Anteriormente, el administrador mostraba este error: Something went wrong. GitHub-36255
  • La configuración del encabezado del tema Welcome Text ahora puede contener un carácter de comillas simples. Anteriormente, Adobe Commerce arrojaba este error de JavaScript: Uncaught SyntaxError: Unable to process binding "ifnot: function(){return customer().fullname }".

Reescrituras de URL

  • Cambio de la visibilidad del producto a Not Visible Individually en el ámbito global de Todas las vistas de tienda ahora elimina solo las reescrituras de URL para vistas de tienda que no han anulado el atributo de visibilidad. Cambiar la visibilidad del producto de esta manera también genera reescrituras de URL para todas las vistas de tienda, incluidas aquellas que han anulado el atributo de clave de URL (pero no la configuración de visibilidad). Anteriormente, las reglas de reescritura de URL no se aplicaban cuando se cambiaba la configuración de visibilidad.

Visual Merchandiser

  • Ya no puede cambiar manualmente las posiciones de los productos en los listados de categorías de Visual Merchandiser cuando los productos coinciden con una regla.
  • Los usuarios administradores con acceso restringido a un único almacén ya no pueden arrastrar y soltar productos dentro de una categoría en Visual Merchandiser. En su lugar, ahora pueden utilizar el Position para reorganizar la posición del producto. Anteriormente, estos usuarios solo podían cambiar la posición del producto dentro de una categoría arrastrando y soltando.
  • La sección Productos en categoría de la página de edición de categorías ahora muestra la cantidad correcta de productos configurables. La columna de tabla correcta ahora se utiliza para recuperar la cantidad de productos configurables.

Marco de API web

  • La API de REST DELETE /rest/V1/products/:sku/media/:entryId ahora devuelve un mensaje de error si la imagen no se elimina del producto porque está asignada a una función en otras vistas de la tienda. Anteriormente, la API devolvía una respuesta correcta incluso cuando la imagen no se eliminaba correctamente.
  • Los comerciantes ahora pueden utilizar la API de REST para crear un abono para un pedido con un total general cero. Anteriormente, Adobe Commerce mostraba este error: The order does not allow a credit memo to be created. The credit memo's total must be positive. We can't create a credit memo for the invoice/order.
  • La página de edición del producto Administrador ahora refleja con precisión las asignaciones de un producto después de que la asignación del sitio web del producto se haya cambiado mediante la API de REST. GitHub-36281
  • Ya no se pueden incluir ID de opción duplicados para atributos de selección múltiple durante solicitudes de API de REST masivas para actualizar productos. Anteriormente, se podían establecer ID de opción duplicados para atributos de selección múltiple al enviar una solicitud de API masiva para actualizar un producto. Cuando ese atributo de selección múltiple se configuró para su inclusión en la navegación por capas, la indexación EAV falló con un Duplicate entry error.
  • Los nombres de productos en los carros de compras ahora utilizan los valores especificados de la vista de la tienda según lo esperado. Anteriormente, los nombres de producto en el carro de compras siempre devolvían el valor de vista de tienda predeterminado en las respuestas del carro de compras de la API de REST.
  • Los valores de opciones personalizadas de elementos del carro de compras ahora se pueden actualizar mediante la API de REST. GitHub-35768
  • Solicitudes de API masivas para más de 20 sourceItems ahora se completan correctamente en implementaciones en las que el inventario está habilitado.
  • El servicio de moneda Fixer ahora funciona como se espera con las claves generadas a través de ApiLayer, y las tasas de moneda se exportan correctamente. Anteriormente, Adobe Commerce generaba un error cuando un comerciante intentaba importar tasas de cambio a través del administrador.
  • Ahora puede utilizar la API de REST /rest/V1/bulk?searchCriteria[filter_groups] solicitud para consultar operaciones masivas por criterios de búsqueda. Anteriormente, se devolvía el siguiente error: report.CRITICAL: Report ID: webapi-624bbb1db96c4; Message: Item (Magento\AsynchronousOperations\Model\Operation) with the same ID "0" already exists.
  • Los precios de los productos ahora se actualizan correctamente en las páginas de búsqueda del catálogo de administración y de tienda mediante la API Administrar precio base. GitHub-33767

Lista de deseos

  • Los compradores ahora pueden añadir productos a su lista de deseos después de iniciar sesión. Anteriormente, debido a problemas con la validación de la clave del formulario después de iniciar sesión, la clave del formulario enviada con la solicitud de complemento a la lista de deseos se invalidó.
  • Los productos ahora se añaden según lo esperado a la lista de deseos desde la lista de productos y la vista de páginas después de que un cliente invitado confirme su cuenta mediante un correo electrónico de confirmación. Anteriormente, los productos no se añadían a la lista de deseos después de la confirmación de la cuenta.
  • El addProductsToWishlist query ahora devuelve un mensaje de error informativo cuando un comprador intenta añadir un artículo a una lista de artículos deseados con un valor no válido para el producto select opción personalizada. Anteriormente, faltaba la validación del servidor para el valor de la opción personalizada desplegable, lo que provocaba un valor no válido en la base de datos. Como resultado, el extremo devolvió este error interno del servidor: GraphQL endpoint returns Internal server error with "Call.

Problema conocido

Problema: Las etiquetas de reglas de ventas escalonadas pueden no coincidir después de actualizar a Adobe Commerce 2.4.6 o posterior desde versiones anteriores a la 2.4.5. Solución: aplique ACSD-50625_2.4.5-P1.patch durante la actualización antes del paso Actualizar metadatos. Consulte salesRules etiqueta los problemas al actualizar desde versiones < 2.4.5 Artículo de la Base de conocimiento.

Pasos generales para resolver este problema:

  1. Descargue el parche necesario. Consulte la salesRules etiqueta los problemas al actualizar desde versiones < 2.4.5 Artículo de la Base de conocimiento.
  2. Siga los pasos de actualización descritos en la fase Administrar paquetes del proceso de actualización Realización de una actualización.
  3. Aplique este parche durante la actualización después de la fase Administrar paquetes y antes de la fase Actualizar metadatos. Consulte Cómo aplicar un parche del compositor proporcionado por el Adobe .
  4. Complete el proceso de actualización.

Problema: no se puede crear una nota de abono cuando la opción de envío gratuito está activada (Stores > Configuration > Sales > Delivery Methods) y el precio de envío mostrado incluye impuestos. Cuando intenta crear una nota de abono, Adobe Commerce genera esta excepción: "Division by zero".vendor/magento/module-sales/Model/Order/Creditmemo/Total/Tax.phpLine 139. GitHub-36800

Solución: Ya está disponible una corrección rápida para este problema. Ir a Herramienta Parches de Calidad: Buscar parches y busque el parche ACSD-50814.

Contribuciones de socios

En el cuadro siguiente se destacan las contribuciones de los asociados. Esta tabla enumera el socio que contribuyó con la solicitud de extracción, el número de solicitud de extracción externa y el número de problema de GitHub asociado a ella (si está disponible).

Socio
Solicitudes de extracción
Problemas relacionados con GitHub
Ampersand
magento/magento2#36529 magento/magento2#36224 magento/magento2#34117
magento/magento2#36726 magento/magento2#35546 magento/magento2#36334 magento/magento2#36628
Elgentos
magento/magento2#36414
magento/magento2#36831
Ojo De Peces
magento/magento2#36329 magento/magento2#36304 magento/magento2#36239 magento/magento2#36187 magento/magento2#35738 magento/magento2#35631 magento/magento2#35540 magento/magento2#35436 magento/magento2#35033 magento/magento2#34186
magento/magento2#36641 magento/magento2#36338 magento/magento2#36554 magento/magento2#36646 magento/magento2#36648 magento/magento2#35325 magento/magento2#35711 magento/magento2#35488 magento/magento2#34321
Perspective Studio
magento/magento2#36036 magento/magento2#36031 magento/magento2#36027
magento/magento2#36337
MRM Commerce
magento/magento2#35807 magento/magento2#32979
magento/magento2#35994
Interactiv4
magento/magento2#35564
magento/magento2#35568
Atwix
magento/magento2#33411 magento/magento2#33148 magento/magento2#33093 magento/magento2#32889 magento/magento2#32481 magento/magento2#31794 magento/magento2#29417 magento/magento2#25677
magento/magento2#35858 magento/magento2#29418
Asesoría inteligente
magento/magento2#31606
magento/magento2#31643 magento/magento2#31866
Blue Acorn iCi
magento/magento2#31360 magento/magento2#31355
magento/magento2#31443 magento/magento2#31373 magento/magento2#32625
creativestyle
magento/magento2#30647
magento/magento2#30672 magento/magento2#32985 magento/magento2#30613

Contribuciones de colaborador individual

La siguiente tabla identifica las contribuciones de los miembros de nuestra comunidad. Esta tabla enumera el miembro de la comunidad que contribuyó con la solicitud de extracción, el número de solicitud de extracción externa y el número de problema de GitHub asociado a ella (si está disponible).

Miembro de la comunidad colaborador
Solicitudes de extracción
Problemas relacionados con GitHub
poner a prueba
magento/magento2#36663
magento/magento2#14495
conveniente
magento/magento2#36529
magento/magento2#36726 magento/magento2#35546
rehén
magento/magento2#36495
magento/magento2#36515
sinhaparul
magento/magento2#36458
magento/magento2#36639
barryvdh
magento/magento2#36452
magento/magento2#32004 magento/magento2#36891
peterjaap
magento/magento2#36414
magento/magento2#36831
engcom-Delta
magento/magento2#36411
magento/magento2#35971 magento/magento2#36841
liofilizado
magento/magento2#36379
magento/magento2#36640
linitskyi
magento/magento2#36370
magento/magento2#36482 magento/magento2#36471
pykettk
magento/magento2#36329
magento/magento2#36641
sofocado
magento/magento2#36304
magento/magento2#36338
asim-blueprintprep
magento/magento2#36253
magento/magento2#36252
texboy
magento/magento2#36241
magento/magento2#36349 magento/magento2#29448
conveniente
magento/magento2#36224
magento/magento2#36334
sofocado
magento/magento2#36187
magento/magento2#36554
serbinia
magento/magento2#36036
magento/magento2#36337
dshevtsov
magento/magento2#35990
magento/magento2#36230 magento/magento2#36651
Bashev
magento/magento2#35986
magento/magento2#35899 magento/magento2#36055 magento/magento2#36312 Smile-SA/elasticsuite#2772 plumrocket/module-layered-navigation-fix-magento-2.4.5#1
lbajsarowicz
magento/magento2#35948
magento/magento2#36539
tkotosz
magento/magento2#35940
magento/magento2#36642
MeCapron
magento/magento2#35885
magento/magento2#36042
poner a prueba
magento/magento2#35848
magento/magento2#35939
Viper9x
magento/magento2#35846
magento/magento2#36643
lalittmohan
magento/magento2#35818
magento/magento2#36644
vo1
magento/magento2#35817
magento/magento2#36645
pavoroso
magento/magento2#35816
magento/magento2#36593
bgorski
magento/magento2#35807
magento/magento2#35994
pykettk
magento/magento2#35738
magento/magento2#36646
mrtuvn
magento/magento2#35656
magento/magento2#36647
pykettk
magento/magento2#35631
magento/magento2#36648
pmzandbergen
magento/magento2#35572
magento/magento2#35579 Smile-SA/magento2-module-store-locator#134
osrecio
magento/magento2#35564
magento/magento2#35568
sofocado
magento/magento2#35540
magento/magento2#35325 magento/magento2#35711
nicka101
magento/magento2#35524
magento/magento2#35719
nazarklovanych
magento/magento2#35441
magento/magento2#35558
pykettk
magento/magento2#35436
magento/magento2#35488
VladyslavSikailo
magento/magento2#35216
magento/magento2#35417
Sental
magento/magento2#35060
magento/magento2#32177
novakivskiy
magento/magento2#34992
magento/magento2#34991
erfanimani
magento/magento2#34232
magento/magento2#34246 magento/magento2#34247
sofocado
magento/magento2#34186
magento/magento2#34321
conveniente
magento/magento2#34117
magento/magento2#36628
khoimm92
magento/magento2#34061
magento/magento2#35481
dudzio12
magento/magento2#33892
magento/magento2#33820
kassner
magento/magento2#33859
magento/magento2#34439
duxabilii
magento/magento2#33841
magento/magento2#35187
sergeynezbritskiy
magento/magento2#33803
magento/magento2#33802
sean-breeden
magento/magento2#33742
magento/magento2#34524
SilinMykola
magento/magento2#32889
magento/magento2#35858
aligent-lturner
magento/magento2#31606
magento/magento2#31643 magento/magento2#31866
lbajsarowicz
magento/magento2#31360
magento/magento2#31443
lbajsarowicz
magento/magento2#31355
magento/magento2#31373 magento/magento2#32625
krzksz
magento/magento2#30647
magento/magento2#30672 magento/magento2#32985 magento/magento2#30613
Usik2203
magento/magento2#29417
magento/magento2#29418

Requisitos del sistema

Nuestra pila de tecnología está construida sobre PHP y MySQL. Para obtener más información, consulte Requisitos del sistema.

Instrucciones de instalación y actualización

Puede instalar Adobe Commerce 2.4.6 mediante Compositor.

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