[2.4.8-beta]{class="badge informative"}

Magento Open Source 2.4.8-beta release notes

IMPORTANT
Beta releases can contain defects and are provided “AS IS” without warranty of any kind. Adobe has no obligation to maintain, correct, update, change, modify or otherwise support (from Adobe Support Services or any other service) the beta releases. Customers should use caution and not rely in any way on the correct functioning or performance of beta releases and/or any accompanying documentation or materials. Accordingly, any use of the beta releases is entirely at the customer’s own risk.
NOTE
Adobe Commerce releases can contain backward-incompatible changes (BICs). To review backward-incompatible changes, see BIC reference. Major backward-incompatible issues are described in BIC highlights. Not all releases introduce major BICs.

Highlights

The following 49 highlights apply to the Magento Open Source 2.4.8 release.

Framework

  • AC-10721: Upgrade the league/flysystem Composer dependencies upgrading to latest version

  • AC-11495: 2.4.8-beta1 Platform Components Upgrade

  • AC-11673: Investigate php-amqplib/php-amqplib latest versions

  • AC-11723: Refactoring of Integration Test framework for phpunit 10 compatibility - IntegrationTest.php not found

    • Fix note: PHPUnit 9 is upgraded to PHPUnit 10 with Integration and WebAPI Test framework changes of Adobe Commerce. PHPUnit 10 changes are backward compatible.
    • GitHub code contribution: <https://github.com/magento/magento2/ (Internal, Unmerged)>
  • AC-11813: WebApi Test framework for phpunit 10 compatibility - Issue related to RabbitMQ connectivity with SOAP and B2B modules

    • Fix note: PHPUnit 9 is upgraded to PHPUnit 10 with Integration and WebAPI Test framework changes of Adobe Commerce. PHPUnit 10 changes are backward compatible.
    • GitHub code contribution: <https://github.com/magento/magento2/ (Internal, Unmerged)>
  • AC-11816: Add compatibility with MySQL 8.4 LTS

  • AC-11911: jQuery/fileuploader css cleanup after migration to uppy library

  • AC-11995: Add compatibility with MySQL 8.4 LTS for Magento CE

  • AC-12014: Mark elasticsearch 8 module as deprecated

  • AC-12015: ExtJs folder cleanup after migration to jsTree library

  • AC-12022: Upgrade monolog/monolog system dependency to the latest major version

    • Fix note: The system has been updated to use the latest major version of the “monolog/monolog:^3.x” library, ensuring compatibility and improved performance. Previously, the system was using an outdated version of the “monolog/monolog” library which could have led to potential issues and limitations.
    • GitHub code contribution: https://github.com/magento/magento2/commit/edcd0dcc
  • AC-12023: Upgrade wikimedia/less.php dependency to the latest major version

    • Fix note: The system has been updated to use the latest major version 5.x of the “wikimedia/less.php” library, ensuring compatibility and up-to-date functionality. Previously, the system was using an outdated version of the library which could have led to security issues.
    • GitHub code contribution: https://github.com/magento/magento2/commit/edcd0dcc
  • AC-12024: Upgrade jquery/validate library dependency to the latest minor version

  • AC-12025: Upgrade moment.js system dependency to the latest minor version

  • AC-12032: Add compatibility with MySQL 8.4 LTS for EE

  • AC-12034: Add compatibility with MySQL 8.4 LTS for B2B

  • AC-12074: Add compatibility with MySQL 8.4 LTS for bundle extensions

  • AC-12085: Add compatibility with MariaDB 11.4 LTS For CE

  • AC-12165: Subscribers Optimisation - PhpUnit10

  • AC-12267: Support connection retries for Redis session and compatible with colinmollenhour/php-redis-session-abstract v2.0.0

  • AC-12268: Upgrade league/flysystem Composer dependencies to latest version

    • Fix note: Upgrade the 2.x league/flysystem Composer dependencies to latest version 3.x
  • AC-12576: Investigate the automation tests failures with MySQL 8.4 LTS

  • AC-12595: Add compatibility with MariaDB 11.4 LTS For EE

  • AC-12693: Investigate on Data Migration tool (DMT) with MySQL 8.4 LTS

  • AC-12715: Update laminas composer dependencies upgrading to latest version

    • Fix note: The system now supports the latest versions of laminas composer dependencies:
      laminas/laminas-servicemanager
      laminas/laminas-server
      laminas/laminas-stdlib
      laminas/laminas-validator
      ensuring compatibility and up-to-date functionality. Previously, updating to the latest versions of these dependencies could cause backward incompatibility issues and test failures.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b34c0a75
  • AC-12752: Add compatibility with MariaDB 11.4 LTS For Data Migration tool

    • Fix note: Added MariaDB 11.4 support with Adobe Commerce and extensions
  • AC-12823: Investigate the unit test failure due to phpunit patch update during component upgrade

  • AC-12897: SVC and EAT tool compatibility with MySQL 8.4

  • AC-12898: UCT tool compatibility with MySQL 8.4

    • Fix note: The Upgrade Compatibility Tool (UCT) is now compatible with MySQL 8.4, ensuring smooth operation and compatibility checks for instances running on this version. Previously, the UCT tool was not tested and verified for compatibility with MySQL 8.4.
  • AC-9749: PHPUnit 10 upgrade

    • Fix note: Updated the phpunit/phpunit composer dependencies to compatible version - “phpunit/phpunit”:“10.x”

Install & Administer

  • AC-6819: Set indexers to “Update by Schedule” by default

Order

  • ACP2E-2709: [Feature Request] Customer suggests that Submit Comment Button on Order Details page is confusing and should be changed to something else

Other

  • AC-11420: Set indexers appear in Ready status default when new version of Adobe Commerce is installed

  • AC-11421: In existing Magento installation when install third party indexer module set indexers in update by schedule by default.

  • AC-12480: Elasticsearch 7 and 8 options should come with Deprecated in Admin config.

  • AC-12481: Add text note when Elasticsearch option is selected in Admin Configuration

  • AC-12870: SVC and EAT tool compatibility with MariaDB 11.4

    • Fix note: SVC and EAT tool compatibility with MariaDB 11.4
  • AC-12876: UCT tool compatibility with MariaDB 11.4

  • LYNX-374: Document Email Confirmation via GraphQL

  • LYNX-376: Document getting configurations for reCAPTCHA in GraphQL

  • LYNX-409: DB Query Optimizations for Update Cart Items Mutation

Security

UI Framework

  • AC-12726: [2.4.8-beta1] TinyMCE 5 migration to TinyMCE 7

    • Fix note: Migrated TinyMCE 5 to TinyMCE 7.3.0 to be a supported version for Adobe Commerce, previously system was using 5.10.2 which was out dated and reported security vulnerability
    • GitHub code contribution: https://github.com/magento/magento2/commit/edcd0dcc
  • AC-12825: [2.4.8-beta1] TinyMCE 5 migration to TinyMCE 7 Page Builder

    • Fix note: Migrated TinyMCE 5 to TinyMCE 7.3.0 to be a supported version for Adobe Commerce, previously system was using 5.10.2 which was out dated and reported security vulnerability
    • GitHub code contribution: https://github.com/magento/magento2/commit/edcd0dcc
  • AC-12844: [2.4.8-beta1] TinyMCE 5 migration to TinyMCE 7 - Magento2-infra - banned words

    • Fix note: Migrated TinyMCE 5 to TinyMCE 7.3.0 to be a supported version for Adobe Commerce, previously system was using 5.10.2 which was out dated and reported security vulnerability
    • GitHub code contribution: https://github.com/magento/magento2/commit/edcd0dcc
  • AC-12901: Require.js upgrade to the latest version 2.3.7 (security vulnerability CVE-2024-38999)

Fixed issues

We have fixed 254 issues in the Magento Open Source 2.4.8 core code. A subset of the fixed issues included in this release is described below.

APIs

  • AC-10042: /V1/transactions REST API returns error when parent_txn_id = txn_id

    • Fix note: The system now correctly handles the parent and child concept transactions where the parent transaction ID is the same as the transaction ID, preventing an infinite loop when querying the /V1/transactions REST API endpoint. Previously, this scenario would result in a fatal error due to maximum execution time being exceeded.
    • GitHub code contribution: https://github.com/magento/magento2/commit/1bafc571
  • AC-11878: [Graphql] Type issue in 2.4.7

  • ACP2E-2927: [REST API]: Use Default value in store view does not stay checked after adding configurations for a configurable product

    • Fix note: The issue has been fixed by ensuring correct database entries for the customizable options for a non-default store. The checkbox for the custom store in the “admin > Catalogue > Product Edit > Customizable Options” section was previously unchecked owing to inaccurate database entries, even if the option title for the custom store stayed the same as the default store.
    • GitHub code contribution: https://github.com/magento/magento2/commit/3056e9cb
  • ACP2E-2969: REST API unable to make requests with slash (/) in SKU when using Oauth1

    • Fix note: Prior to the fix, you were not able to make a successful API call for a product that had “/” in its SKU. Now, you can issue a successful API get request for product details even though its SKU has a forward slash in it.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b21e5d91
  • ACP2E-3079: Customer address update failing when updating through REST API if “validateDefaultAddress” enabled

  • ACP2E-3091: [Cloud] Creating the Duplicate website group price customer group in Tier Prices Api.

    • Fix note: Now Tier Price Rest Api doesn’t allow to create the Duplicate website group price customer group.
      Previously it was possible to create the Duplicate website group price customer group in Tier Prices Api that would not pass validation in Admin during product save.
    • GitHub code contribution: https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3130: Can’t add order comment with status via REST API

    • Fix note: The issue has been resolved by allowing the change in order status if it is from the current state only. Previously, it was not honouring the order state and preventing changes in any order status, even if it was from the same state.
    • GitHub code contribution: https://github.com/magento/magento2/commit/93d50f8d

Account

Admin UI

  • AC-11588: Data validation is success and Import button is present during Import products with Replace behavior

    • Fix note: The system now correctly validates data and hides the “Import” button during the product import process with “Replace” behavior, preventing any unintended data replacement. Previously, the system incorrectly validated the data and displayed the “Import” button, leading to potential data inconsistencies.
    • GitHub code contribution: https://github.com/magento/magento2/commit/0574ac23
  • AC-12167: [Bug] Magento 2.4.7 doesn’t allow product photo’s with capital letter file extension.

  • AC-6975: [Issue] Set default indexer mode to ‘schedule’

  • AC-7700: [Issue] Drop indexer changelog tables on mview unsubscribe

    • Fix note: The system now automatically removes unused changelog tables when an index is switched from ‘update on schedule’ to ‘update on save’, marking the index as invalid to ensure no entries are missed. Previously, switching an index to ‘update on save’ would leave unused changelog tables in the system and mark all changed indexes as ‘valid’.
    • GitHub issue: https://github.com/magento/magento2/issues/29789
    • GitHub code contribution: https://github.com/magento/magento2/pull/25859
  • AC-9843: i18n:collect-phrases breaks the translations integrity

    • Fix note: The bin/magento i18n:collect-phrases -o command now correctly collects and adds new phrases from JavaScript and .phtml files, ensuring that translations are accurately reflected in the translation file. Previously, the system failed to include multiline translation phrases from JavaScript files and phrases from .phtml files in the translation file, leading to incomplete or incorrect translations.
    • GitHub code contribution: https://github.com/magento/magento2/commit/0c53bbf7
  • ACP2E-2787: Apostrophe in store view name is replaced by '

  • ACP2E-2847: Favicon upload fails to validate .ico files

    • Fix note: The file validation error has been updated to “File validation failed. Please verify the Image Processing Settings in the Store Configuration.” Previously, it was simply “File validation failed.”
    • GitHub code contribution: https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2957: Gallery in PageBuilder is showing old image thumbnail instead of newly uploaded image

  • ACP2E-2978: Saving product by admin user with different role scope overwrites/deletes existing Related product information in the product

    • Fix note: Previously, before the fix, the related products were reset and became empty when the secondary admin user clicked on the save button without changing in related product. After this fix, the secondary admin user clicks on the save button and the product doesn’t reset and is saved successfully.
    • GitHub code contribution: https://github.com/magento/magento2/commit/3056e9cb
  • ACP2E-3033: Unable to export more than 200 orders

    • Fix note: The server limits for the request size of previously submitted selected IDs have been neglected by altering the HTTP request from GET to POST in order to fix the issue. Previously, due to the server limitations for GET request size, the issue was encountered.
    • GitHub code contribution: https://github.com/magento/magento2/commit/93d50f8d
  • ACP2E-3037: Checkout page Validation message incorrect.

    • Fix note: If any required field is left empty, such as “address,” the server-side validation will not display the message. The client-side validation will ensure that the required field error notification appears, stating “This is a required field.” Previously, the message “address is required” would appear if any required field was left empty, in addition to the client-side validation message.
    • GitHub code contribution: https://github.com/magento/magento2/commit/9af794a4
  • ACP2E-3125: Password reset template issue with Admin user

    • Fix note: The issue has been resolved by using the correct key, which now includes the admin username in the email template and properly completes the subject. Previously, the problem stemmed from an outdated key that was being used.
    • GitHub code contribution: https://github.com/magento/magento2/commit/93d50f8d
  • ACP2E-3149: Double slashes in customer segment URL

  • ACP2E-3171: COD is not available for allowed specific countries

  • ACP2E-3178: Cannot update Custom created Order status

Admin UI, Performance

  • ACP2E-3169: After update to 2.4.5-p8 500 errors occur when creating order from admin

    • Fix note: Previously, when enabling HTML minification, an order from admin could not be placed. Now, with HTML minification enabled, the order from admin can be placed successfully.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b21e5d91

Admin UI, Shipping

  • ACP2E-2519: The coupon code count does not update in the “Time Used” column in the Manage Coupon Codes tab if an order is placed with multi-shipping.

    • Fix note: Earlier, when an order was placed with multi-shipping, the coupon code count did not update in the “Time Used” column on the Manage Coupon Codes tab. Now, the correct count is displayed in both the “Time Used” reflecting the desired values with multi shipping.
    • GitHub code contribution: https://github.com/magento/magento2/commit/4745100c

Analytics / Reporting

  • ACP2E-2570: Advance Report is not working

    • Fix note: The system now supports the generation of Advance Reporting data files for extra-large datasets by loading and writing reports in batches of 10,000. Previously, the Advance Reporting module was unable to generate data files for extra-large datasets, causing “MySQL server has gone away” errors during the execution of the analytics_collect_data cron job.
    • GitHub code contribution: https://github.com/magento/magento2/commit/a12063bd
  • ACP2E-3080: Admin Ordered Products Report date range visibility issue.

  • ACP2E-3096: Incorrect curl headers making newrelicdeploy-marker not working

Analytics / Reporting, B2B

  • ACP2E-2300: B2B - sitemap includes products/categories not assigned to Shared Catalog

    • Fix note: Restrict the sitemap generated categories and products to the categories and product assigned only to the public shared catalog and / or the catalog category permission setup.
    • GitHub code contribution: https://github.com/magento/magento2/commit/ea79f7dd

Analytics / Reporting, Cloud

  • ACP2E-3067: Magento discards most New Relic cron transactions #34108

    • Fix note: AC is correctly reporting cron job related transactions to NewRelic. Previously, some cron job related transactions would be shown as “OtherTransaction/Action/unknown” in NR
    • GitHub code contribution: https://github.com/magento/magento2/commit/35b1b1da

B2B

  • ACP2E-3044: Unnecessary borders on the My Orders section

    • Fix note: Previously an additional container(order references) was created that applied additional CSS classes, which caused unnecessary border lines were appearing below the order number inside the My Orders section, which isn’t visible now.
    • GitHub code contribution: https://github.com/magento/magento2/commit/9af794a4

B2B, Framework

  • AC-9607: Filtering Company Grid & Then Attempting Grid CSV Export Will Fail & Throw Exception

    • Fix note: The system now allows successful CSV export of the Companies grid data in the admin panel, even when filters such as ‘Outstanding Balance’ and ‘Company Type’ are applied. Previously, applying certain filters and attempting to export the grid data would result in a failure and an exception being thrown.
    • GitHub code contribution: https://github.com/magento/magento2/commit/44cef3a9

Braintree

  • BUNDLE-3367: Pay via LPM

    • Fix note: The system now correctly renders Local Payment Methods (LPM) on initial load, even when a logged-in customer’s shipping and billing addresses do not match, ensuring a smooth checkout process. Previously, a mismatch between a customer’s shipping and billing addresses would prevent LPM from rendering, causing potential disruptions during checkout.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204
  • BUNDLE-3368: Configurable with Virtual as Child Product

    • Fix note: The system now allows express payment methods for configurable products that have a virtual child product, ensuring a smooth checkout process. Previously, express payment methods were not available when a configurable product with a virtual child product was added to the cart.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204
  • BUNDLE-3369: CVV Verification failed error

  • BUNDLE-3370: Vaulting Via the account Area Issues 247

    • Fix note: The system now allows customers to save new card or PayPal account information across multiple websites without encountering authorization errors. Previously, customers were unable to save new payment methods across different websites and were presented with an authorization error message.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204
  • BUNDLE-3371: Ship to an address from a different country

    • Fix note: The system now allows transactions to be processed without errors when shipping to an address from a different country, ensuring a smooth checkout process. Previously, attempting to ship to an address from a different country would result in console errors, despite no visible errors on the frontend.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204
  • BUNDLE-3372: Credit Card - Teardown function

    • Fix note: The system now correctly handles the teardown of Braintree PayPal components when a customer navigates back from the payment page to the shipping page, preventing any errors and ensuring that PayPal Express buttons render correctly. Previously, navigating back to the shipping page from the payment page sometimes resulted in an error when trying to teardown the Braintree PayPal components.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204
  • BUNDLE-3373: Shipping Callback for PayPal Express

    • Fix note: The system now correctly displays available shipping methods in the PayPal Express modal, allowing customers to select their preferred shipping method before proceeding to the review page or completing their transaction. Previously, no shipping methods were available to select from in the PayPal Express modal, requiring customers to select a shipping method on a separate review page before they could complete their transaction.
    • GitHub code contribution: https://github.com/magento/ext-braintree/pull/204

Cart & Checkout

  • AC-10660: Exception is not getting handled properly while adding a product to cart in the compare product page

  • AC-10698: GTag not send transaction prices and totals.

  • AC-11641: [Issue] [Checkout] Depend directives updated in failed payment email template

  • AC-11876: [Issue] Sales Rules regression in 2.4.7

  • AC-11993: [Issue] The loader blocks the shipping methods after the postcode is changed, shipping rates validation rules

    • Fix note: The system now correctly handles custom shipping methods without shipping rates validation rules, ensuring that the loader does not block the shipping methods after the postcode is changed in the shipping address during checkout. Previously, changing the postcode in the shipping address during checkout would cause the loader to block the shipping methods and not disappear when custom shipping methods without shipping rates validation rules were used.
    • GitHub issue: https://github.com/magento/magento2/issues/38742
    • GitHub code contribution: https://github.com/magento/magento2/commit/1bafc571
  • AC-12170: Coupon code feature is not working properly in the checkout page on Magento 2.4.7

  • AC-8103: Translation VAT in address renderer

  • ACP2E-2055: Duplicate orders with same Quote Id at same time with few time difference

  • ACP2E-2470: Persistent shopping cart cleared during checkout step

  • ACP2E-2518: Reorder adds non assigned product to cart

    • Fix note: Previously, for the different stores products can be reordered from the other store. After this fix is applied only the same store , same scope product can be reordered when the customer account share is enabled
    • GitHub code contribution: https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2620: In admin, the “Shopping Cart” on left side doesn’t get updated when selecting the items and “Move to Shopping Cart” from the right side

    • Fix note: The “Shopping cart” on the left side gets updated when selecting the items and “Move to shopping cart” from the right side in the admin side. Previously this functionality was not working because the transformed cart items were not getting empty from the session.
    • GitHub code contribution: https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2646: [Cloud] Sales Rule not applied to first order of Multi Shipping

  • ACP2E-2664: [Cloud] Production Parallel Requests to Add Same Product to Cart Result In Two Separate Items In The Cart rest API

    • Fix note: The system now correctly processes multiple parallel requests to add the same product to the cart into a single line item, preventing the creation of separate line items for the same SKU. Previously, making parallel requests to add the same product to the cart via the REST API would result in multiple line items for the same SKU.
    • GitHub code contribution: https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2704: Getting Unable to send the cookie. Size of ‘mage-messages’ while trying to Reorder

  • ACP2E-2798: Default shipping address is not selected on checkout

  • ACP2E-2897: [CLOUD] graphql addProductsToCart api issue with custom option

  • ACP2E-2923: Multiple addresses added to the account when checkout as new customer

  • ACP2E-3004: Reordering customer order via guest order form results an empty cart

    • Fix note: Previously, when placing a reorder through the Orders and Returns page, the customer was redirected to the login page. After this fix is applied, the registered customer is correctly redirected to the View Cart page when placing a reorder. The flow works the same as like as guest customers.
    • GitHub code contribution: https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3025: Admin User with limited Role Resources unable to view Shopping Carts

    • Fix note: Previously, the restricted admin could not see the abandoned shopping cart from the admin panel for an associated website. After this fix is applied, the restricted admin can see the abandoned shopping cart from the admin panel.
    • GitHub code contribution: https://github.com/magento/magento2/commit/d1f7dc95

Cart & Checkout, Checkout/ One Page Checkout

  • AC-9386: [Random BUG] Email field isn’t rendered or takes a lot of time show up in Checkout Shipping or Payment page

Cart & Checkout, Order

  • ACP2E-3097: Datepicker for product with multiple Customizable Options with date fields not working when placing order from admin

    • Fix note: The system now correctly displays the date picker for all date fields when configuring a product with multiple customizable date options in the admin order creation process. Previously, the date picker was only displayed for the first date field, leaving the remaining fields without a date picker.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b21e5d91

Cart & Checkout, Shipping

Catalog

  • AC-10910: Cleanup of cron_schedule database table doesn’t cleanup non-existing jobs

    • Fix note: The system now automatically cleans up the cron_schedule database table, removing entries for jobs that no longer exist in the system. This ensures optimal performance by maintaining a minimal number of rows in the table. Previously, entries for jobs from inactive or removed modules were not cleaned up, leading to unnecessary data accumulation in the cron_schedule table.
    • GitHub issue: https://github.com/magento/magento2/issues/38217
    • GitHub code contribution: https://github.com/magento/magento2/pull/38693
  • AC-10953: Tier Price is not being deleted from Configurable Product

    • Fix note: The system now correctly removes the tier price of a product when it is converted from a simple product to a configurable product, ensuring accurate price display on the frontend. Previously, the tier price of a configurable product was not deleted when a product was converted from a simple product to a configurable product, leading to a mismatch in the displayed price.
    • GitHub issue: https://github.com/magento/magento2/issues/38390
    • GitHub code contribution: https://github.com/magento/magento2/pull/38427
  • AC-11804: Category description WYSIWYG is empty on non default storeview

  • AC-12076: [Issue] Fix wording of filter item on layered navigation

  • AC-12164: Date and Time Format for Custom Option Not Working

  • AC-6738: Missing unique key on eav_attribute_option_value table

    • Fix note: The system now includes a unique key on the ‘option_id’ and ‘store_id’ columns in the ‘eav_attribute_option_value’ table, preventing the possibility of an option having multiple values for the same store view. Previously, faulty code could result in an option having multiple values for the same store view, causing issues when editing products or attributes.
    • GitHub issue: https://github.com/magento/magento2/issues/24718
    • GitHub code contribution: https://github.com/magento/magento2/pull/28796
  • AC-8297: [Issue] Use visibility class for category product indexer, instead of hardcoded values

  • AC-9375: Currency code not change in New product widget

  • ACP2E-2224: Regular Price does not show on PLP for Configurable Product

  • ACP2E-2478: Stock information not showing right on Visual Merchandising grid

  • ACP2E-2621: Widget content is not updating on cms page

    • Fix note: The system now updates the widget content on a CMS page when a product is set as new and saved, ensuring that the page displays the updated product collection. Previously, the page was not updated to show the new product due to the incorrect cache identities used for the widget in the cache.
    • GitHub code contribution: https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2630: Issues saving advanced pricing on bundle products

  • ACP2E-2652: [On-Premise] Re-index process is inefficient when creating Catalog Price Rules

  • ACP2E-2679: Updating time of Date and Time type product attributes via CSV import

  • ACP2E-2689: No Appropriate error message when website id is wrong in the request

    • Fix note: Now the appropriate error message was added to display when the website id is wrong in the request. Previously there was no validation when the website id was wrong in the request.
    • GitHub code contribution: https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2785: Product image is lost after deleting an existing Scheduled Update that doesn’t affect the image

  • ACP2E-2799: [Cloud] Wrong bundle product price when used with tier prices

  • ACP2E-2805: Catalog Promotions Rule not working with quantity_and_stock_status attribute

  • ACP2E-2837: Product entity updated_at column values not updating while updating price through REST API

    • Fix note: The product ‘last updated at’ column from the admin is updated the proper date time while updating the existing products through the REST API. Previously the column ‘last updated at’ is not updated properly.
    • GitHub code contribution: https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2840: It’s possible to set non-unique values via product import

  • ACP2E-2843: Products on the frontend use store specific data when Single-Store Mode is enabled

    • Fix note: Previously, when we enabled single store mode for the default store view, the changes were not migrated to the website-level scope. After this fix is applied, when we enable single store mode, the default store view-specific data will be synced with website-level-specific data and will resolve the possible conflicts for products and categories.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8931218
  • ACP2E-2857: Cannot set “Default Sort By” in a category using the rest API

  • ACP2E-2871: [Cloud] The Merchant is facing issues with wishlist count

    • Fix note: Adding a product to the wishlist in one store no longer increases the wishlist count in other stores open in the same browser. Previously, if both stores were loaded in the same browser, the wishlist count would increase in the other store as well.
    • GitHub code contribution: https://github.com/magento/magento2/commit/3a7c4d17
  • ACP2E-2874: Category Page at frontend shows empty slots when using bundle product

  • ACP2E-2905: [Cloud] Issue of Quote in multi-website architecture

  • ACP2E-2909: dynamic-rows.js:658 Uncaught TypeError: dataRecord.slice while editing bundle products

  • ACP2E-2950: [Cloud] Bundle Product wrong pricing in order confirmation

  • ACP2E-2956: YouTube Video Adding Bug

    • Fix note: Product images and videos are configured in global scope. Given that you can’t have a product video in one scope and not in another, Youtube API key setting has been set to global scope.
    • GitHub code contribution: https://github.com/magento/magento2/commit/a4fbf702
  • ACP2E-2964: [Cloud] URL update only for store_id=0

    • Fix note: The “URL Path” is now stored with the correct store ID. Previously, the store ID was incorrect, resulting in incorrect URL paths remaining in the database when moving categories.
    • GitHub code contribution: https://github.com/magento/magento2/commit/9af794a4
  • ACP2E-3009: async.operations.all executed and created an error.

  • ACP2E-3029: [Cloud] Mobile Issue Only not able to pinch on the PDP image

    • Fix note: The system now supports pinch-to-zoom functionality on product detail page images in mobile view on Chrome, enhancing the mobile user experience. Previously, double-tapping on the image in mobile view on Chrome did not zoom in on the image as expected.
    • GitHub code contribution: https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3058: Missing label in LayeredNavigation with option name 0

  • ACP2E-3069: Customers see prices from other customer groups

  • ACP2E-3076: Error when deleting bundle options

    • Fix note: The system now correctly deletes bundle options without triggering an error or causing the page to become unresponsive. Previously, attempting to delete bundle options would result in a “Page Unresponsive” error and prevent the product from being saved.
    • GitHub code contribution: https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3100: [Cloud] Image File does not exist in New Relic Error Log

    • Fix note: The system now synchronizes custom placeholder images to local storage, ensuring that they render correctly when using remote storage such as AWS S3. Previously, custom placeholder images failed to render when using remote storage, resulting in a broken image display and error logs.
    • GitHub code contribution: https://github.com/magento/magento2/commit/d1f7dc95
  • ACP2E-3126: [Cloud] Product Media Gallery GQL response is not sorted by image position

  • ACP2E-3136: [Cloud] Sub Category items are not displayed on the widgets edit on the admin backend

    • Fix note: The category tree on the new widget page should no longer have issues loading Level 5+ categories. Previously, some categories were missing when loading the tree past Level 5 categories.
    • GitHub code contribution: https://github.com/magento/magento2/commit/148c3ead

Catalog, Framework

  • ACP2E-2949: [Cloud]Follow-up: Mismatch in Data Comparison when checking if data has changes

    • Fix note: Previously, the save object was called every time without any data changes (for any numeric data field - like int/float/double). It triggers the flag _hasDataChanges to be true and calls the save function. It also does not check the floating numbers encapsulated by string. After this fix applies, the save function will call only if the data is changed. The data value for int/float/double-check with the value passing to the function and does strict type matching
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8931218

Catalog, GraphQL

  • ACP2E-3090: Handling Category Filters in GraphQL: includeDirectChildrenOnly and category_uid

  • ACP2E-3166: [Cloud] Graphql Product sorting do not work

Catalog, Pricing, Staging & Preview

  • ACP2E-2672: [Cloud] Special price API endpoint returns error when updating large numbers of products concurrently

    • Fix note: Now Special Price bulk update API will create a single campaign for each date range instead of multiple scheduled updates for each product and date range. Also, it will support concurrent API requests for faster processing of large number of SKUs.
    • GitHub code contribution: https://github.com/magento/magento2/commit/f89a447e

Catalog, Product

  • AC-7050: Category selection tree in edit product is not in the same order as set in Catalog->Categories

    • Fix note: The system now correctly displays the category selection tree in the product edit section in the same order as set in Catalog->Categories, making product administration easier in large catalogues. Previously, the category tree in the product edit section was displayed in the order of category creation, regardless of the display order set in Catalog->Categories.
    • GitHub issue: https://github.com/magento/magento2/issues/36101
    • GitHub code contribution: https://github.com/magento/magento2/pull/36104
  • ACP2E-2757: Products not showing on category and search but direct links are working

  • ACP2E-3053: [Cloud] Elastic search error on certain category pages

    • Fix note: Previously, with the configuration ticket mentioned, when we put price 0 for multiple products, it will throw an exception at the frontend category page. After this fix applied when multiple product price 0 and we load category page at frontend it wont throw any exception and will load category page successfully.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8931218

Cloud

  • ACP2E-3010: [Cloud] PHPSESSID is changing each POST Request

    • Fix note: PHPSESSID no longer regenerates on POST requests on frontend area for a logged-in customer if L2 Redis cache is enabled and the customer was updated from the backend
    • GitHub code contribution: https://github.com/magento/magento2/commit/6a185204

Content

  • AC-10539: [Issue] issue with the price display in the Recently Viewed widget

    • Fix note: The system now correctly displays the price of out-of-stock simple products in the “Recently Viewed Product” widget, ensuring consistency across all widgets and product list pages. Previously, the price of out-of-stock simple products was not displayed in the “Recently Viewed Product” widget due to a condition in the price loading templates.
    • GitHub issue: https://github.com/magento/magento2/issues/38167
    • GitHub code contribution: https://github.com/magento/magento2/pull/38159
  • AC-10596: [Issue] Correct typo and grammar in acl.xsd file

  • AC-10845: Pagebuilder banner image not visible in gallery

    • Fix note: The system now correctly displays banner images uploaded in newly created folders in the Pagebuilder gallery, eliminating previous console errors. Prior to this fix, banner images were not visible in the gallery if they were uploaded in a new folder, causing a console error.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8f87c25
  • AC-12283: “Area code not set” after update to 2.4.5-p8

    • Fix note: The system now successfully completes the static content deployment process when the Magento_CSP module is enabled and “dev/js/translate_strategy” is set to “embedded”, without triggering the “Area code not set” error. Previously, under these conditions, the static content deployment process would fail with an “Area code not set” error.
    • GitHub issue: https://github.com/magento/magento2/issues/38845
    • GitHub code contribution: https://github.com/magento/magento2/pull/38922
  • AC-9638: [Issue] file upload issue in WYSIWYG editor on product page

    • Fix note: The system now correctly displays the folder tree and allows image uploads in the WYSIWYG editor on the product page, even after expanding the ‘Image and Videos’ tab first. Previously, expanding the ‘Image and Videos’ tab first resulted in the folder tree not being displayed and an error message when attempting to upload an image in the WYSIWYG editor.
    • GitHub issue: https://github.com/magento/magento2/issues/38026
    • GitHub code contribution: https://github.com/magento/magento2/pull/38025
  • ACP2E-2392: [On-PREM] Dynamic block issue

  • ACP2E-2693: [Cloud] Frontend not loading due to issue in newsletter template

  • ACP2E-2836: ACP2E-2836: [Cloud] Investigate exception found in the log: InvalidArgumentException: Class does not exist in vendor/magento/module-rule/Model/ConditionFactory.php

    • Fix note: Removing a condition on PageBuilder products content settings no longer causes an exception to be recorded in the log files. Previously, removing a condition on PageBuilder products content settings would cause a critical exception to be recorded in the logs, despite not causing any issues on the frontend.
    • GitHub code contribution: https://github.com/magento/magento2-page-builder/commit/36c0f5df
  • ACP2E-2842: Switching to single store mode - global content no longer appears

    • Fix note: The system now synchronizes store view design configurations with website design configurations when enabling single store mode, ensuring that content updates are visible on the frontend. Previously, switching to single store mode would prevent content updates from being reflected on the storefront.
    • GitHub code contribution: https://github.com/magento/magento2/commit/7e0e5582
  • ACP2E-2903: Page Builder replaces image when trying to add link and other usability glitches.

    • Fix note: Now clicking on an image, links in wysiwyg editor in Page Builder text element will load proper data in the image, link configuration dialog. Also adding a link to an image in the editor now works properly. Previously, the image was replaced with a link.
    • GitHub code contribution: https://github.com/magento/magento2-page-builder/commit/4d5db10a
  • ACP2E-2970: Old media gallery fails to render images when a 0-byte image is placed in the directory

    • Fix note: The system now handles 0-byte images in the media gallery without disrupting functionality, allowing other images in the directory to be displayed and selected as expected. Previously, the presence of a 0-byte image in the media gallery would prevent all images in the directory from being displayed or selected.
    • GitHub code contribution: https://github.com/magento/magento2/commit/35b1b1da
  • ACP2E-3064: Error Page Builder when editing CMS Block

  • ACP2E-3092: [CLOUD] No buttons of checkout or edit cart on the cart section

  • ACP2E-3127: imagecreatetruecolor(): Argument #2 ($height) must be greater than 0. Can’t upload specific image

    • Fix note: Resolved the issue causing errors in the admin when uploading images with a height of 0 via the media gallery, and successful the assets synchronization using the sync command. Previously can’t upload the image via the media gallery and the sync command also fails when a specific image is in the gallery.
    • GitHub code contribution: https://github.com/magento/magento2/commit/6f4805f8
  • ACP2E-3154: Prototype.js Array.from in conflict with Google Maps API

Customer/ Customers

  • AC-12162: Front end - Date of birth validation is failing in Customer creation page

Framework

  • AC-10654: V1/customers/password endpoint question/issue

    • Fix note: The system now adheres to the constraints set within the management GUI when processing password change requests via the API, preventing potential abuse of the password reset function. Previously, the API could process password change requests outside of the rules defined in the management GUI, potentially allowing for a constant stream of reset emails if valid emails were known.
    • GitHub issue: https://github.com/magento/magento2/issues/38238
    • GitHub code contribution: https://github.com/magento/magento2/commit/0c53bbf7
  • AC-10721:

    • Fix note: Upgrade the league/flysystem Composer dependencies upgrading to latest version
    • GitHub issue: <https://github.com/magento/magento2/commit/91cb4d46>
    • GitHub code contribution: Upgrade the 2.x league/flysystem Composer dependencies to latest version 3.x
  • AC-10838: Catalog search index process error indexation process

  • AC-10941: Added created_at, status and grand_total filters to customer Orders query and fixed multiple filters failure

  • AC-10971: https://github.com/magento/magento2/issues/38415

    • Fix note: PHP 8.2/8.3, only one dependency fails the php linter at the moment: league/flysystem
    • GitHub issue: <https://github.com/magento/magento2/commit/672a2e61>
    • GitHub code contribution: The system now supports PHP 8.2/8.3 by updating the league/flysystem package to version 3.0.20, ensuring no PHP linting errors occur. Previously, running PHP files through the PHP linter with PHP 8.3 resulted in linting errors in the league/flysystem package.
  • AC-10991: Randomly getting flooded with queries from related / upsell / crosssell blocks and price indexing

  • AC-11423: Exception: Warning: Trying to access array offset in… -> Calendar.php since upgrade to ICU 74.1 (PHP Intl)

  • AC-11476: [Issue] Fix issues with Customer Data when form contains element with name method

    • Fix note: The system now correctly identifies the ‘method’ attribute in form submissions, even when an element named ‘method’ is present in the form. This ensures accurate processing of customer data. Previously, if a form element was named ‘method’, it would interfere with the identification of the ‘method’ attribute in form submissions, leading to potential issues with customer data handling.
    • GitHub issue: https://github.com/magento/magento2/issues/38484
    • GitHub code contribution: https://github.com/magento/magento2/pull/38449
  • AC-11489: [Issue] Fix PHPDocs for \Magento\Framework\Data\Collection::getItemById

    • Fix note: The PHPDocs for the \Magento\Framework\Data\Collection::getItemById method have been updated to include null as a possible return type, addressing issues with static analysis tools. Previously, the method’s PHPDocs did not specify null as a possible return type, leading to warnings or errors in static analysis when the method was used in conditional statements.
    • GitHub issue: https://github.com/magento/magento2/issues/38485
    • GitHub code contribution: https://github.com/magento/magento2/pull/38439
  • AC-11651: Magento trying to modify read-only property in __wakeup method of LoggerProxy

  • AC-11673:

  • AC-11681: [Issue] AC-2039 AC-1667 upgrade TinyMCE references

  • AC-11696: ChangelogBatchWalker does not work in multiple threads

  • AC-11781: [Issue] Rename wrongly named variable

  • AC-11808:

    • Fix note: Investiagte and upgrade Adobe Commerce Core dependencies list
    • GitHub code contribution: Need upgrade Adobe Commerce Core dependencies list
  • AC-11819: Built-in FPC cache is broken in 2.4.7 for some configurations

  • AC-11829: [Issue] Fix exception handling inconsistency between developer and production modes

    • Fix note: The system now consistently handles exceptions between developer and production modes, preventing unexpected redirection to the login page when an exception is thrown. Previously, an inconsistency in exception handling could cause a redirect to the login page in production mode instead of displaying the exception message.
    • GitHub issue: https://github.com/magento/magento2/issues/38639
    • GitHub code contribution: https://github.com/magento/magento2/pull/37712
  • AC-11852: Replace ‘PayPal Account’ translation in token_list.phtml

    • Fix note: The system now labels the section for tokenizable account payment methods as “Account” instead of “PayPal Account” in the Stored Payment Methods page, making it more representative of its function. Previously, this section was specifically labeled as “PayPal Account”, which was misleading when other tokenizable account payment methods were added.
    • GitHub issue: https://github.com/magento/magento2/issues/35622
    • GitHub code contribution: https://github.com/magento/magento2/pull/37959
  • AC-11905: [Issue] Static content deploy - Type error

  • AC-11911:

  • AC-12002: [Issue] [View] Removed extra space in link and script tag

  • AC-12015:

  • AC-12022:

    • Fix note: Upgrade monolog/monolog system dependency to the latest major version
    • GitHub issue: <https://github.com/magento/magento2/commit/edcd0dcc>
    • GitHub code contribution: The system has been updated to use the latest major version of the “monolog/monolog:^3.x” library, ensuring compatibility and improved performance. Previously, the system was using an outdated version of the “monolog/monolog” library which could have led to potential issues and limitations.
  • AC-12023:

    • Fix note: Upgrade wikimedia/less.php dependency to the latest major version
    • GitHub issue: <https://github.com/magento/magento2/commit/edcd0dcc>
    • GitHub code contribution: The system has been updated to use the latest major version 5.x of the “wikimedia/less.php” library, ensuring compatibility and up-to-date functionality. Previously, the system was using an outdated version of the library which could have led to security issues.
  • AC-12024:

  • AC-12025:

  • AC-12267:

    • Fix note: Support connection retries for Redis session and compatible with colinmollenhour/php-redis-session-abstract v2.0.0
    • GitHub issue: <https://github.com/magento/magento2/commit/672a2e61>
    • GitHub code contribution: Updated latest version of colinmollenhour/php-redis-session-abstract v2.0.0 compatible with adobe commerce
  • AC-12268:

    • Fix note: Upgrade league/flysystem Composer dependencies to latest version
    • GitHub code contribution: Upgrade the 2.x league/flysystem Composer dependencies to latest version 3.x
  • AC-12594: [Issue] Use compiled config for generated data instead of general config

    • Fix note: The system now uses the compiled configuration for generated data instead of the general configuration, reducing network transfer and overhead of data that depends on a certain version of code. This change prevents cache overriding in shared instances during container swapping, leading to improved stability and reduced downtime. Previously, certain core classes used shared config type, which could lead to cache overriding or application downtime due to differences in code versions across multiple servers.
    • GitHub issue: https://github.com/magento/magento2/issues/38785
    • GitHub code contribution: https://github.com/magento/magento2/pull/29954
  • AC-12597: [Issue] Remove references to files from extjs which got removed in e1ccdb…

  • AC-12715:

    • Fix note: Update laminas composer dependencies upgrading to latest version
    • GitHub issue: <https://github.com/magento/magento2/commit/b34c0a75>
    • GitHub code contribution: The system now supports the latest versions of laminas composer dependencies:
      laminas/laminas-servicemanager
      laminas/laminas-server
      laminas/laminas-stdlib
      laminas/laminas-validator
      ensuring compatibility and up-to-date functionality. Previously, updating to the latest versions of these dependencies could cause backward incompatibility issues and test failures.
  • AC-12778: [Issue] Minor cleanup: fixed wrong usage of sprintf, it only takes 2 placeholders here and w…

  • AC-12866:

  • AC-12868:

  • AC-12869: [Issue] Fixes incorrect classes being referenced in Magento modules.

    • Fix note: The system now correctly references classes in modules, ensuring smoother operation and preventing crashes due to non-existing classes. This includes a bugfix in the Indexer and Creditmemo modules, and the implementation of the HttpGetActionInterface in the PrintAction class. Previously, incorrect class references led to errors and potential system crashes, and certain functionalities, such as the filename for creditmemo PDF files and reindexing of stocks, were not working as expected.
    • GitHub issue: https://github.com/magento/magento2/issues/39126
    • GitHub code contribution: https://github.com/magento/magento2/pull/37784
  • AC-6754: typo error on a js file.

  • AC-8353: [Issue] Remove forbidden @author tag

  • AC-8356: [Issue] Remove forbidden @author tag from Magento_Customer (part 2)

  • AC-8659: Space in editorconfig syntax breaks rule for [{composer,auth}.json]

  • AC-8984: [Issue] Adds some more colors to the output of certain setup cli commands

  • AC-9630: Upgrading Magento resets general/region/state_required when new country with required state/region is added.

    • Fix note: The system now only adds the modified country to the ‘general/region/state_required’ configuration when a new country with required states is added, preventing any disruption to custom code that assumes the region is disabled. Previously, adding a new country with required states would reset the ‘general/region/state_required’ configuration to default countries with a required state, potentially breaking the shop.
    • GitHub issue: https://github.com/magento/magento2/issues/37796
    • GitHub code contribution: https://github.com/magento/magento2/pull/38076
  • AC-9712: https://github.com/magento/magento2/issues/37841

    • Fix note: Difference in less compilation between php & nodejs library (grunt) with complicated calc expressions
    • GitHub issue: <https://github.com/magento/magento2/commit/b34c0a75>
    • GitHub code contribution: Fix the difference in less compilation between php & nodejs library (grunt) after update wikimedia/less.php:^5.x
  • ACP2E-2692: “Base table or view not found” error occurs when partial indexing is executed

  • ACP2E-2844: Issues after upgrading MariaDB to 10.5.1 or higher

  • ACP2E-2855: Type Mismatch in Data Comparison when checking if data has changes

    • Fix note: Previously, the save object was called every time without any data changes (for any numeric data field - like int/float/double). It triggers the flag _hasDataChanges to be true and calls the save function. After this fix applies, the save function will call only if the data is changed. The data value for int/float/double-check with the value passing to the function and does strict type matching.
    • GitHub code contribution: https://github.com/magento/magento2/commit/57a32313
  • ACP2E-2959: [Cloud] import cannot be used with directory var

  • ACP2E-2966: In ipad mini the menu and header loads as mobile, instead they should load as desktop.

Framework, GraphQL

GraphQL

  • AC-11729: Magento_GraphQl execute headers processing even if the header value does not pass validation

    • Fix note: The system now ensures that header processing is only executed once and only if the header value passes validation, enhancing security and preventing potential vulnerabilities. Previously, header processing was executed even if the header value did not pass validation, leading to potential vulnerabilities and unexpected behavior due to double processing of header values.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8f87c25
  • AC-8951: Physical Giftcard options don’t have the right sorting order

    • Fix note: The system now correctly sorts the options of physical gift card products when queried via GraphQL, ensuring consistent rendering with the Luma theme. Previously, the sort order was incorrect according to luma theme, leading to incorrect display and ordering of options such as sender name, recipient name, and amount.
    • GitHub code contribution: https://github.com/magento/magento2/commit/1bafc571
  • AC-9157: [GraphQL] Resolver Cache is Invalidated When Creating/Editing/Moving/Deleting a Staging Update

    • Fix note: The system now ensures that the resolver cache is not invalidated when creating, editing, moving, or deleting a staging update, but only when the staging update is applied to the entity. Previously, the resolver cache was invalidated prematurely, even before the staging update was applied, which led to unnecessary cache invalidations.
    • GitHub code contribution: https://github.com/magento/magento2/commit/0c53bbf7
  • ACP2E-2642: Fastly cache not cleared for content staging update

  • ACP2E-2653: Disabling Layered Navetion - Does not remove aggregation from Graphql

    • Fix note: The issue has been fixed after applying the check while requesting a product search with category aggregations through a GraphQL query when the admin configuration setting of “Catalog > Layered Navigation > Display Category Filter”.
    • GitHub code contribution: https://github.com/magento/magento2/commit/12e071c3
  • ACP2E-2928: GraphQL Products call containing the price filter {from:“0”} returns no result

    • Fix note: Previously graphql products search with filter for zero prices did not return any results at all due to a thrown exception. Now the search returns results as expected.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c971859e
  • ACP2E-3128: [Cloud] Broken GraphQL call for getPurchaseOrder with node quote

  • ACP2E-3184: [Cloud] Configurable Products not shown in Production Site if Product is not enabled in “All Store Views”

    • Fix note: The system now correctly displays configurable products in the site even if the product is not enabled in “All Store Views”, but is enabled in specific store view scopes.
      Previously, if a product was disabled in “All Store Views” and enabled only in specific store view scopes, the product attributes would not be displayed correctly in the GraphQL response, leading to the product not being displayed properly.
    • GitHub code contribution: https://github.com/magento/inventory/commit/3f300077
  • ACP2E-3190: [Cloud] Products graphql having error when same simple product has assigned to multiple configurable products

    • Fix note: Previously, with separate configurable products with the same simple product, grapQL returns an error. After this fix apply, different configurable products with the same simple product, grapQL returns result without no error.
    • GitHub code contribution: https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3253: GraphQL cart itemsV2 pagination is not working correctly

    • Fix note: The issue has been fixed by passing the correct value for the current page argument in the collection query. Previously, the wrong value was getting passed to set the current page, causing the issue.
    • GitHub code contribution: https://github.com/magento/magento2/commit/8459b17d

GraphQL, Inventory / MSI

GraphQL, Inventory / MSI, Performance

GraphQL, Performance

  • AC-9569: [GraphQL Resolver] Customer Resolver Data is Not Invalidated From Import

    • Fix note: GraphQL customer resolver cache is now invalidated as expected when a customer is edited or deleted through imports. Previously, the cache was not invalidated, and customer data could be edited or deleted during import.
    • GitHub code contribution: https://github.com/magento/magento2/commit/0574ac23
  • ACP2E-2809: GraphQL product list sorting by multiple parameters doesn’t work

Import / export

  • AC-12172: Issue at product import when provided with custom options-type: file (Created Product does not contain price for custom-option and show only the first file type extension provided)

    • Fix note: The system now correctly imports product data with custom options of type ‘file’, ensuring that all provided file extensions are displayed and the price for the custom option is included. Previously, during product import, if a custom option of type ‘file’ was provided with more than one file extension, only the first extension was displayed and the price for the custom option was missing.
    • GitHub issue: https://github.com/magento/magento2/issues/38805
    • GitHub code contribution: https://github.com/magento/magento2/pull/38926
  • ACP2E-2710: Wrong execution time for import operation in Import History grid

  • ACP2E-2737: Duplicate customers being created with same email address using import

  • ACP2E-2902: Add/Update Import on Products Duplicating Customizable Options

    • Fix note: The issue has been resolved by assigning the correct store to product options during product options CSV imports.
      Previously, assigned to the admin store instead of their respective store.
    • GitHub code contribution: https://github.com/magento/magento2/commit/3a7c4d17
  • ACP2E-2990: Customer “created_at” date Not Converted to store time zone upon export

  • ACP2E-3165: [Cloud] Getting error while checking the data in import data using CSV

    • Fix note: There is no error when checking the data during CSV import. Previously, the error message displayed was: “We can’t find a customer who matches this email and website code in row(s): 1” when checking the data in the import section using CSV from the admin.
    • GitHub code contribution: https://github.com/magento/magento2/commit/8459b17d

Install & Administer

Inventory / MSI

  • AC-11593: Google google API key is not working while adding Map with attributes

    • Fix note: The system now supports the latest Google Maps API version 3.56, allowing users to successfully add a Map content block from the PageBuilder menu to the stage without encountering any errors. Previously, users were unable to add a Map content block due to compatibility issues with the Google Maps API version, resulting in a “something went wrong” error message.
    • GitHub code contribution: https://github.com/magento/magento2/commit/0574ac23
  • ACP2E-2794: [Cloud] Critical Issue with Product Listing with Empty Spaces

Order

  • AC-10828: Backend order overview screen: Backordered quantity not visible on order item level

    • Fix note: The system now displays the number of backordered items in the quantity column on the backend order overview screen. This ensures that users can accurately track the status of all items in an order. Previously, the quantity column only showed the number of items that were ordered, invoiced, and shipped, but did not display the number of backordered items.
    • GitHub issue: https://github.com/magento/magento2/issues/38252
    • GitHub code contribution: https://github.com/magento/magento2/pull/38320
  • AC-10994: [Issue] Wrong store ID used in Order Address Renderer

    • Fix note: The system now correctly uses the store ID associated with an order when rendering the order address, ensuring that addresses are formatted correctly according to their respective store ID. Previously, the system was incorrectly using the current store ID, which could lead to incorrect address formatting in cases where multiple order emails from different stores needed to be sent.
    • GitHub issue: https://github.com/magento/magento2/issues/38412
    • GitHub code contribution: https://github.com/magento/magento2/pull/37932
  • AC-11798: [Issue] Shipping price showing diffrent in printed pdf

  • ACP2E-2622: Unable to save changes to phone number in existing order details

  • ACP2E-2734: Emails are failing to send

    • Fix note: The system now includes a configuration option async_sending_attempts to specify the number of attempts to send an email before stopping, improving the handling of failed email sends when “Asynchronous sending” is enabled. Previously, if an email failed to send, the system would continuously attempt to resend it, resulting in an endless loop of error messages in the system log.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-2756: [Cloud] Order Status changed to complete when partially refund of a partially shipped order

  • ACP2E-3002: [CLOUD] Cannot Disable Send Emails from Admin UI as Dev Docs shows

    • Fix note: The system now correctly prevents sales emails from being sent when email communication is disabled. These emails will no longer be sent when email communication is re-enabled. Previously, sales emails initiated while email communication was disabled would still be sent once email communication was re-enabled.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c8931218
  • ACP2E-3045: Order closed without fully refunded

    • Fix note: The system now correctly maintains the order status as ‘Processing’ and the invoice status as ‘Pending’ when an order with an uncaptured payment has a shipment created. This ensures that orders are only marked as ‘Closed’ after being fully refunded. Previously, creating a shipment for an order with a pending invoice would incorrectly change the order status to ‘Closed’.
    • GitHub code contribution: https://github.com/magento/magento2/commit/6a185204

Order, Returns

  • ACP2E-2982: Order refund results in duplicate credit memo

Order, Tax

  • ACP2E-3003: [CLOUD] Incorrect base_row_total in RESTFUL order API when enabling cross-border transactions and applying coupon discounts

Other Developer Tools

Payments

  • ACP2E-2841: Payflow creates new transaction each time we click on fetch button on the view transaction screen

    • Fix note: The system now correctly fetches transaction information without creating a new payment transaction each time the fetch button is clicked on the view transaction screen. Previously, clicking the fetch button would incorrectly create a new payment transaction for an order that had already been paid.
    • GitHub code contribution: https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-3028: Paylater message not showing in PDP for Canadian paypal merchant account

    • Fix note: The system now correctly displays the PayLater message for Canadian PayPal merchant accounts on the Product Detail Page (PDP) when the buyer’s country can be determined from the account billing address or shipment. Previously, the PayLater message was not displayed due to a missing parameter, resulting in an error in the browser console.
    • GitHub code contribution: https://github.com/magento/magento2/commit/6a185204

Performance

  • AC-12000: [Issue] Code cleanup and add new critical head block and move critical css before assets

  • AC-12176: Theme compilation breaks when mysql host contains port information

  • ACP2E-2494: Performance issue when loading product attributes in cart rules

  • ACP2E-2673: Price partial indexing performance

  • ACP2E-2850: Order gets rejected on multi-store setup when using Async-order processing + Terms and Conditions

  • ACP2E-2910: Order Rest API call is taking a long time to execute

    • Fix note: The system now executes the Order Rest API call within a reasonable timeframe, improving the performance when fetching a large number of orders. Previously, the Order Rest API call was taking a long time to execute, causing delays when retrieving a large number of orders.
    • GitHub code contribution: https://github.com/magento/magento2/commit/001e5188

Product

  • AC-10535: Special characters in configurable associate product name are being Converted to HTML Entities.

  • AC-10947: ProductRepository function GetById does not create the correct cache key

    • Fix note: The system now correctly creates a cache key in the ProductRepository’s function GetById, regardless of whether the store ID is passed as a string or an integer. This ensures that the product is retrieved from memory on subsequent calls, improving performance. Previously, the system would retrieve the product from the database each time the function was called, even with the same parameters, due to incorrect cache key creation.
    • GitHub issue: https://github.com/magento/magento2/issues/38384
    • GitHub code contribution: https://github.com/magento/magento2/pull/38433
  • AC-11992: [Issue] [MFTF] Added AdminClickAddOptionForBundleItemsActionGroup

  • AC-5969: AlertProcessor - Argument #2 ($storeId) must be of type int, string given

  • ACP2E-2944: [Cloud] addFilterToMap function is not working for certain columns

Promotion

  • ACP2E-2602: Customer attribute not visible when creating account from invitation

  • ACP2E-2627: Coupon code with Uses per Coupon limit is not getting released for payment failed with order cancel

    • Fix note: The system now immediately updates coupon usages when an order is created or cancelled, and adds rule usages to a queue to prevent potential deadlocks. This ensures that a coupon code with a “Uses per Coupon” limit is released and can be reused if an order is cancelled due to a failed payment. Previously, the system did not release the coupon code for reuse in such cases, resulting in an error message stating that the coupon code was not valid.
    • GitHub code contribution: https://github.com/magento/magento2/commit/c971859e
  • ACP2E-2811: [Cloud] Reindexing Catalog Rule Product Indexer throws SQLSTATE[HY000]: General error: 2006 MySQL server has gone away.

    • Fix note: The system now correctly handles custom “batchCount” value in the di.xml for the “Magento\CatalogRule\Model\Indexer\IndexBuilder”, preventing SQL errors such as “General error: 2006 MySQL server has gone away” during the reindexing of the Catalog Rule Product Indexer due to the incorrect batch size on large catalogs
    • GitHub code contribution: https://github.com/magento/magento2/commit/b2286ecf

SEO

  • AC-11907: Adding URL rewrites with an accent causes infinite loading

  • ACP2E-2641: Multi Store Wrong category url-rewrite for third level category

  • ACP2E-2770: Double-byte characters (special characters) in Product Name field blocks product creation in backend

    • Fix note: A new setting has been added that allows you to apply transliteration to product URL or not. Setting is available here: Stores > Configuration > Catalog > Catalog > Search Engine Optimization: “Apply transliteration for product URL”
    • GitHub code contribution: https://github.com/magento/magento2/commit/b2286ecf

Security

  • AC-11762:

    • Fix note: Update 2FA OTP window field with correct description and default value after BiC change
    • GitHub code contribution: Updated command for the way of how otp_window period will be entered from now bin/magento config:set twofactorauth/google/otp_window VALUE
      to bin/magento config:set twofactorauth/google/leeway VALUE
  • AC-11855: [Issue] Missing Font CSP Paylater Popup

    • Fix note: The system now allows the loading of the font ‘https://www.paypalobjects.com/webstatic/mktg/2014design/font/PP-Sans/PayPalSansBig-Medium.woff’ without violating the Content Security Policy directive, ensuring the correct display of the Paylater Popup. Previously, the font was refused to load due to a violation of the Content Security Policy directive, causing display issues with the Paylater Popup.
    • GitHub issue: https://github.com/magento/magento2/issues/38624
    • GitHub code contribution: https://github.com/magento/magento2/pull/37401
  • AC-11937:

    • Fix note: Update 2FA OTP window field with correct description and default value after BiC change
    • GitHub code contribution: Updated command for the way of how otp_window period will be entered from now bin/magento config:set twofactorauth/google/otp_window VALUE
      to bin/magento config:set twofactorauth/google/leeway VALUE
  • AC-12309:

    • Fix note: Update user documentation for two-factor authentication (2FA) to change otp_window command
    • GitHub code contribution: Update user documentation for two-factor authentication (2FA) to change OTP_WINDOW settings command as per: https://jira.corp.adobe.com/browse/AC-11762

Shipping

  • AC-10757: [Issue] Fixed typo in tracking.phtml - renamed JS-functions “currier” to “carrier”

    • Fix note: The system now correctly uses the term “carrier” instead of the misspelled “currier” in the JavaScript handler functions used in the order tracking template, ensuring proper function naming and code clarity. Previously, the misspelled term “currier” was used, leading to potential confusion and inconsistency in the codebase.
    • GitHub issue: https://github.com/magento/magento2/issues/34523
    • GitHub code contribution: https://github.com/magento/magento2/pull/33414
  • AC-11811:

  • AC-11916:

    • Fix note: [QPT] UPS REST “A shipment cannot have a KGS/IN or LBS/CM or OZS/CM as its unit of measurements”
    • GitHub code contribution: UPS rates is visible in checkout and cart.
  • AC-11938: UPS REST “A shipment cannot have a KGS/IN or LBS/CM or OZS/CM as its unit of measurements”

  • AC-11983:

    • Fix note: [QPT] UPS REST “A shipment cannot have a KGS/IN or LBS/CM or OZS/CM as its unit of measurements”
    • GitHub code contribution: UPS rates is visible in checkout and cart.
  • AC-11984:

    • Fix note: [QPT] UPS REST “A shipment cannot have a KGS/IN or LBS/CM or OZS/CM as its unit of measurements”
    • GitHub code contribution: UPS rates is visible in checkout and cart.
  • ACP2E-2738: Tracking Window showing wrong Expected Delivery Date

  • ACP2E-2763: Table Rates Still Showing Even Though Free Shipping Is Applied

  • ACP2E-2765: MFTF test AdminCreatingShippingLabelTest failing due to credentials not added in Jenkins environment

Targeting

  • AC-9432: [Issue] Allow use of CIDR ranges in maintenance allow list

Test framework

  • AC-11491:

    • Fix note: [Skip] Need to be Un-skip again Integration test
    • GitHub issue: <https://github.com/magento/magento2/commit/493e01f5>
    • GitHub code contribution: Un-skip all integration test which are skipped in this PR - https://github.com/magento-commerce/magento2ce/pull/8811/
  • AC-11654: Integration test failing testDbSchemaUpToDate due to JSON column type

    • Fix note: The system now correctly recognizes JSON column types in the database schema during integration tests, preventing test failures due to a mismatch between the database schema and the declarative schema. Previously, the system incorrectly identified JSON column types as LONGTEXT in MariaDB, causing integration tests to fail.
    • GitHub code contribution: https://github.com/magento/magento2/commit/ef81f5a2

UI Framework

  • AC-12128: Prototype.js security vulnerability fix CVE-2020-27511

    • Fix note: The system has been updated to address the security vulnerability CVE-2020-27511 in Prototype.js 1.7.3, enhancing the overall security of the system. Prior to this update, the system was susceptible to a Regular Expression Denial of Service (ReDOS) through stripping crafted HTML tags.
    • GitHub code contribution: https://github.com/magento/magento2/commit/de4dfb8e
  • AC-12128:

    • Fix note: Prototype.js security vulnerability fix CVE-2020-27511
    • GitHub issue: <https://github.com/magento/magento2/commit/de4dfb8e>
    • GitHub code contribution: The system has been updated to address the security vulnerability CVE-2020-27511 in Prototype.js 1.7.3, enhancing the overall security of the system. Prior to this update, the system was susceptible to a Regular Expression Denial of Service (ReDOS) through stripping crafted HTML tags.
  • AC-12189: Grunt Less uses pub/ prefix for sourcemaps

  • AC-1306: Static content is deploying for disabled modules

  • AC-9007: [Issue] Do not load backend block context on frontend

    • Fix note: The system now ensures that backend block context is not loaded on the frontend, preventing the creation of unnecessary backend sessions and potential session locks. Previously, the system was incorrectly loading the backend block context on the frontend, leading to the creation of backend sessions and potential session locks.
    • GitHub issue: https://github.com/magento/magento2/issues/37617
    • GitHub code contribution: https://github.com/magento/magento2/pull/36368
  • ACP2E-2529: Exception when checking a gift card balance when Recaptcha is enabled

  • ACP2E-2729: [CLARIFICATION] Feature Request ADA Compliance

    • Fix note: The system now ensures ADA compliance by removing unsupported CSS properties and replacing them with supported ones in the print.css file. Previously, the use of unsupported CSS properties led to browser compatibility issues.
    • GitHub code contribution: https://github.com/magento/magento2/commit/57a32313
  • ACP2E-3061: [Cloud] Confusion library code in effect-drop.js of AC 2.4.4-p8

    • Fix note: The system now correctly implements the effect-drop.js library, ensuring the proper functioning of jQuery UI effects. Previously, the effect-drop.js library was mistakenly overwritten with the effect-clip.js library, causing potential issues with jQuery UI effects.
    • GitHub code contribution: https://github.com/magento/magento2/commit/35b1b1da
recommendation-more-help
1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f