Current File : /var/www/prestashop/docs/CHANGELOG.txt
Copyright since 2007 PrestaShop SA and Contributors
PrestaShop is an International Registered Trademark & Property of PrestaShop SA

NOTICE OF LICENSE

This source file is subject to the Open Software License (OSL 3.0)
that is bundled with this package in the file LICENSE.md.
It is also available through the world-wide-web at this URL:
https://opensource.org/licenses/OSL-3.0
If you did not receive a copy of the license and are unable to
obtain it through the world-wide-web, please send an email
to license@prestashop.com so we can send you a copy immediately.

DISCLAIMER

Do not edit or add to this file if you wish to upgrade PrestaShop to newer
versions in the future. If you wish to customize PrestaShop for your
needs please refer to https://devdocs.prestashop.com/ for more information.

@author    PrestaShop SA and Contributors <contact@prestashop.com>
@copyright Since 2007 PrestaShop SA and Contributors
@license   https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0)

Changelog for PrestaShop 8

####################################
#   v8.0.2 - (2023-03-01)
####################################

- Back Office:
  - Bug fix:
    - #30957: Redirect to product list with warning message instead of raising an exception when we try to access a product which doesn't exist (by @lartist)
    - #31514: Fix sorting attribute do not works (by @mflasquin)
    - #31667: Catch PrestaShopException to validate sql-requests properly in PHP 8.X (by @boherm)
    - #31654: Fix addslashes not working (by @mflasquin)
    - #31603: Fix generating of preload.tpl (by @kpodemski)
    - #30962: Module from theme with tab using SF routing fails after enabling the theme (by @jolelievre)
    - #29358: Fix price formatting in MoneyType (by @zuk3975)
    - #29647: BO - Import files - Do not show generated csv files from import/csvfromexcel folder in history of uploaded files (by @mflasquin)
    - #30415: Fix applying special char on translations (by @mflasquin)
    - #29488: Module translations no longer take translations from another lang if its default one. (by @margud)
    - #29837: Avoid possibility to create product with combinations when combinations feature is disabled (by @mflasquin)
    - #30818: Fix access for read only permissions (by @dingedi)
    - #30745: Load default language if employee id lang does not exist (by @mflasquin)
- Front Office:
  - Bug fix:
    - #31152: Always use id_country from request if provided (by @atomiix)
    - #31148: Change domain to fix translation issue (by @atomiix)
    - #30992: Fix customer isLogged property in FO (by @Hlavtox)
- Core:
  - Improvement:
    - #31707: Update composer.lock for modules contactform and ps_contactinfo (by @matthieu-rolland)
    - #31574: Lock theme classic version to 2.0.8 (by @matthieu-rolland)
    - #31575: Add missing licence  (by @matthieu-rolland)
    - #30676: Upgraded classic theme and ps_contactinfo module (by @nicosomb)
  - Bug fix:
    - #31503: Filter empty values for modulesFromHooks (by @sowbiba)
    - #31137: Disable module's hook before upgrading it (by @atomiix)
    - #31241: Improved session availability test (by @Hlavtox)
    - #31006: Fix conversion of hex color codes (by @lmeyer1)
    - #30834: Fix SQL error introduced by da10f001 (by @lmeyer1)
- Web Services:
  - Bug fix:
    - #31023: Backport #30309 : Fix broken result in webservices for 8.0.x (by @boubkerbribri)
    - #30993: Fix issue #26568 about customer blank schema (by @ceer)
- Tests:
  - Bug fix:
    - #29751: Fixed testsuite with sebastian/comparator release (by @nicosomb)
  - Refactoring:
    - #31389: Functional tests - Add scripts to run each test less than 30 minutes (by @nesrineabdmouleh)

####################################
#   v8.0.1 - (2022-12-27)
####################################

- Back Office:
  - New feature:
    - #29039: Product list preview in product list V2 (by @jolelievre)
  - Improvement:
    - #29695: Do not clear system cache on bulk install,remove,upgrade module (by @mflasquin)
    - #29783: Migrate node-sass to sass-embedded on default theme (by @NeOMakinG)
    - #29574: Remove product image dropzone flex that was adding space (by @margud)
    - #29021: Add webP to allowed format on the DropZone help (by @PrestaEdit)
  - Bug fix:
    - #30511: Save settings before generating htaccess (by @atomiix)
    - #30512: Allow negative number for attribute quantity (by @atomiix)
    - #30326: Force AbstractColumn::name to never be null (by @jolelievre)
    - #30362: Fix filemanager undefined translations (by @Hlavtox)
    - #29132: Fix stock policy propagation on product combination (by @FabienPapet)
    - #29693: Update material icons lib to fix the slow npm installation (by @NeOMakinG)
    - #29084: 27054: fixed taxes for wrong countries (by @margud)
    - #29465: Add available_now & available_later labels constraints (by @zuk3975)
    - #29372: Hide suppliers if there are no suppliers on product v2 (by @NeOMakinG)
    - #29066: Fix combination deletion error (by @margud)
    - #29859: Fix update status button responsive on order page (by @NeOMakinG)
    - #29846: Fix 29341 - Rate impact calculation (by @FabienPapet)
    - #29587: Replace exception message by custom error message when uploading avatar with invalid extension (by @lartist)
    - #29554: Replace exception message by custom message on invalid avatar on employee page (by @lartist)
    - #29942: Fix alert spacing inside modal content of product page v2 (by @NeOMakinG)
    - #29047: Fix ordering by product name + add ordering by product id (movements page) (by @marsaldev)
    - #29791: Fix form layout in Advanced Parameters > Security > Password policy (by @eternoendless)
    - #29847: Fix product page v1 footer responsive (by @NeOMakinG)
    - #29584: Fix duplicate / wrongly pluralized error message on field length in BO (by @yanmakouf)
    - #29224: Fix subcategories for multishop (by @MeKeyCool)
    - #29553: Add min height on alert to center icons vertically (by @lartist)
- Front Office:
  - Bug fix:
    - #28838: Update AbstractForm.php for Multilanguage fields (by @panariga)
    - #30084: Added check to see if delivery option is an array (by @nicosomb)
    - #30093: Add install fixtures for new registration page. (by @Hlavtox)
    - #30252: Do not return customization values if cart is not set (by @Prestaworks)
    - #29715: Fix discount detail in cart when a product has en ecotax with applied tax (by @mflasquin)
    - #29619: Remove inifinite loop on actionObjectUpdateAfter hook (by @lartist)
    - #29910: Fix image size when zooming on tablet (by @NeOMakinG)
    - #29665: Fix bad selector to fix checkbox issues on RMA (by @mflasquin)
    - #29632: Select new invoice address automatically (by @lartist)
- Core:
  - Improvement:
    - #30676: Upgraded classic theme and ps_contactinfo module (by @nicosomb)
    - #30454: Update composer dependencies (by @mflasquin)
    - #30437: Upgraded to latest symfony 4.4.x (by @nicosomb)
    - #30230: Upgrade cancel-workflow-action so that previous AND next same jobs are canceled except the last one (by @lartist)
    - #29586: [BC Break] Disable execution of multiple statements in a single SQL query (by @atomiix)
    - #29636: Upgrade Smarty to 3.1.47 (by @mflasquin)
    - #29235: Update prestashop 1.7.8.x composer dependencies (by @matks)
    - #29831: Convert 1.7.9 to 8.0.0 in deprecation message (by @matks)
  - Bug fix:
    - #30465: fix(Cart): fix notice saving customization when customer field is empty and not required (by @davidglezz)
    - GHSA-9qgp-9wwc-v29r: Potential Information exposure in the upload directory (by @atomiix)
    - #30273: Test id_manufacturer index before accessing it (by @Hlavtox)
    - #30114: Do not build a domain from the module name (Cherry pick of #30080) (by @atomiix)
    - #29079: Change default assignation of Product::pack_stock_type (by @abramofranchetti)
- Installer:
  - Improvement:
    - #29616: Remove prestashop/prestashop-git from development environment (by @FabienPapet)
  - Bug fix:
    - #30099: Fix issue on fresh installation with docker in branch 1.7.8.x (by @sefirosweb)
    - #29615: Fixed installation screen when some config keys were missing (by @nicosomb)
- Web Services:
  - Bug fix:
    - #29756: Fix error on patch method because of php 8.0 throw a fatal error (by @mflasquin)
- Localization:
  - Improvement:
    - #30521: Fix translations (by @atomiix)
  - Bug fix:
    - #30107: Add missing trans method instead of hard-coded wording (by @jolelievre)
- Tests:
  - Improvement:
    - #30451: Functional Tests : Split Tests (by @Progi1984)
    - #30191: Replace deprecated usage of ::set-output in Github actions (by @jolelievre)
    - #30222: BO - Orders - Credit Slips - Sort & Pagination Credit Slips (by @cfarhani06)
    - #30057: Remove Aria-label attribute to improve BO pagination selectors (by @boubkerbribri)
    - #29785: Functional Tests : FO - Consult credit slip list & View PDF Credit slip & View order (by @Progi1984)
    - #29960: Functional Tests : BO - Search bar (by @Progi1984)
    - #29954: Functional Tests : BO - View my shop (by @Progi1984)
    - #29898: Functional Tests : BO - Orders - Shopping carts - View carts (by @Progi1984)
    - #29657: Functional tests : BO - My Profile (by @Progi1984)
  - Bug fix:
    - #30395: Fix CI for ubuntu-22.04 (by @atomiix)
    - #29992: Better escape PR description for the Pull Request Validator Github action (by @atomiix)
    - #30048: Fix linkchecker script for UI tests (by @boubkerbribri)
    - #29980: Functional Tests : Nightly - Fixed the successful message for the My Profile Page (by @Progi1984)
    - #29912: Delete run on label 'TE' for UI code checks (by @sarahdib)
    - #29844: Functional Tests : Fixed errors from the script `check:step-identifiers` (by @Progi1984)
    - #29698: Disable apache mpm_event module in the CI (cherry-pick) (by @atomiix)
  - Refactoring:
    - #30328: Remove multi statement SQL queries from integration tests (by @jolelievre)
    - #30265: Backport #30257 - Fix random errors 10-11 (by @nesrineabdmouleh)
    - #29802: Functional tests - Refacto BO - bulk duplicate products (by @khouloudbelguith)
    - #30188: Functional tests  - Fix invalid format image error message (by @nesrineabdmouleh)
    - #30184: Functional test - Fix errors in Nightly 02-11-2022 (by @nesrineabdmouleh)
    - #30066: Functional tests - Refacto BO - Catalog - crud category (by @khouloudbelguith)
    - #29872: Functional tests - Add new test 'BO > Catalog > Cart rules customer group restriction (by @cfarhani06)
    - #30082: Functional tests - Refacto (Rename combinations by attributes in all project) (by @nesrineabdmouleh)
    - #30068: Functional tests - Fix nightly 19/10 (Fix FO > send message test) (by @nesrineabdmouleh)
    - #30049: Functional Tests : BO - Cart rules - Case 10 - Country Restriction (by @cfarhani06)
    - #30037: Functional tests - Fix 'BO > Orders > Preview order' test (by @nesrineabdmouleh)
    - #29860: Functional tests - Add new test 'FO > Quick view product' (by @nesrineabdmouleh)
    - #29956: Functional tests - Fix nightly 10/10/2022 (by @nesrineabdmouleh)
    - #29928: Refacto tests - Delete 'Data>FO' & fix nightly (by @nesrineabdmouleh)
    - #29805: Functional tests - Add new test 'BO > Catalog > Cart rules carrier restriction' (by @cfarhani06)
    - #29896: Functional tests - Add new test 'FO > Marchandise returns > check order return PDF' (by @nesrineabdmouleh)
    - #29864: Fix nightly 04/10/2022 - Fix  'BO > Header > My profile' test (by @nesrineabdmouleh)
    - #29855: Refacto UI tests login page to simplify usage (by @boubkerbribri)
    - #29835: Functional tests - Add new test 'FO > Check slider' (by @nesrineabdmouleh)
    - #29823: Functional tests - Fix nightly 30-09-2022 (FO > User account > Get data in CSV file ) (by @nesrineabdmouleh)
    - #29757: Functional  tests - Add new test 'FO > Consult merchandise returns details' (by @nesrineabdmouleh)
    - #29726: Functional tests - Add new test 'FO > User account > Get GDPR data in csv' (by @nesrineabdmouleh)
    - #29800: Functional tests - Add new test 'FO > Contact us > Add attachment' (by @nesrineabdmouleh)

####################################
#   v8.0.0 - (2022-10-26)
####################################

- Back Office:
  - Bug fix:
    - #29996: Fix saving status code 410 on the product page v1 (by @kpodemski)
- Front Office:
  - Improvement:
    - #30104: Dynamic import for zxcvbn library (by @Oksydan)
  - Bug fix:
    - #30113: Update classic theme (by @jolelievre)
    - #30064: Remove infinite loop on actionObjectUpdateAfter hook (backport #29619) (by @jolelievre)
- Core:
  - Improvement:
    - #30005: Update Classic to v2.0.5 (by @kpodemski)
  - Bug fix:
    - #30116: Update twig dependency (by @jolelievre)
    - #30080: Do not force new translation system when no domain is provided (by @atomiix)

####################################
#   v8.0-rc.1 - (2022-09-28)
####################################

- Back Office:
  - New feature:
    - #28752: [BC Break] Improve extendability of the new product page form (by @jolelievre)
  - Improvement:
    - #29101: Remove useless controller permission suffix (by @FabienPapet)
  - Bug fix:
    - #29530: Fixed exception when downloading credit slip on an order with a deleted product (by @nicosomb)
    - #29406: Assign product suppliers to combination during combination csv import (by @zuk3975)
    - #29503: Fix prefilling non-default lang product name (by @zuk3975)
    - #29660: Fix ModuleManager exception when ps_distributionapiclient is not installed (by @atomiix)
    - #29635: Do not reset customization in FO when changing combination (178x) (by @zuk3975)
    - #29322: Fix decorating controllers from module (by @zuk3975)
    - #29392: Fix menu items not showing on mobile (by @NeOMakinG)
    - #29551: Text troncated on combine several attribute input (by @lartist)
    - #29589: Wrong error message display on NumberType symfony input (by @lartist)
    - #29281: Fix overflow of combination history (by @zuk3975)
    - #29549: Fix validateSql method not accepting EXISTS after WHERE (by @atomiix)
    - #29280: Fix updating empty combination reference from list (by @zuk3975)
    - #29545: Fix php 8.1 Filemanager (by @FabienPapet)
    - #29512: Fix module upgrade button menu (by @MeKeyCool)
    - #29060: Order page in BO > partial refund block, bad displaying of products “Quantity” field (by @okom3pom)
    - #29246: Fix Stock page style with RTL (by @MeKeyCool)
    - #29426: Put product v2 feature flag in the beta form instead of stable (by @atomiix)
    - #29441: Fix module translations (by @MeKeyCool)
    - #29497: Extract missing modules translations (by @jolelievre)
    - #28923: Fix product import for Product page v2. (by @MeKeyCool)
    - #29534: Fix broken icon-font on RTL after upgrade (by @matthieu-rolland)
    - #29523: Combination fields list updated for partial update in Product::updateAttribute (by @jolelievre)
    - #29195: Fix product state multishop (by @FabienPapet)
    - #29375: Fix SVG Upload, do not check dimensions if file is svg. (by @FabienPapet)
    - #29481: Fix BO - The images are not well displayed after adding it in file manager with php8.1 (by @FabienPapet)
    - #29417: Fix delivery time for multishop (by @MeKeyCool)
    - #29324: Fix click event not sent in addPaymentButton (by @FabienPapet)
    - #29416: Fix customer form validation from module (by @zuk3975)
    - #29388: Fix customer voucher "active" column in customer view page (by @zuk3975)
    - #29307: Remove module_card.js from the product page v1 (by @NeOMakinG)
    - #29306: Fix specific price creation for dedicated customer (by @zuk3975)
    - #29214: Fix logo on pdf for RTL (by @MeKeyCool)
    - #29180: Fix order payment currency unit (by @FabienPapet)
    - #29272: Making PHP8.1 implicit conversion explicit (by @FabienPapet)
    - #29278: Fix undefined quantity index in light product list (by @zuk3975)
    - #29256: When there no module upgrade script to run, make module upgrade succeed (by @Quetzacoalt91)
    - #29096: BO - Bad display on Your Profile button on all of pages when hover and click on it (by @okom3pom)
  - Refactoring:
    - #29714: Functional tests - Refacto the BO - Delivery Slip - Enable Disable Product Image (by @khouloudbelguith)
    - #29567: Functional tests - Refacto the BO - Invoices -  generate invoice by status test (by @khouloudbelguith)
    - #29575: Functional tests - Refacto test BO - Invoices - Enable Disable Invoices (by @khouloudbelguith)
    - #29566: Functional tests -  refacto the BO - Header - quick access test  (by @khouloudbelguith)
    - #29288: Restructurize horizontal migration Bridge directories (by @zuk3975)
    - #28886: Refacto bridge controller initiation and resolve feedback (by @zuk3975)
- Front Office:
  - Improvement:
    - #29752: Lock classic-theme version to 2.0.0 (by @matks)
  - Bug fix:
    - #29400: Fix "undefined" error when modifying product quantity in FO product quick view  (by @yanmakouf)
    - #29471: Fix ps_facetedsearch - bad display after clearing a filter of no result (by @leemyongpakvn)
    - #29413: Fix displayPackPrice compare price value instead of formatted price (by @jolelievre)
    - #29122: Fix FO address forms reload when switching address's country (by @yanmakouf)
    - #29373: Fix checkout when one module and no cgv validation (by @okom3pom)
- Core:
  - Improvement:
    - #29172: Save Smarty caching type setting in file instead of DB (by @atomiix)
    - #29537: Update productcomments v5.0.2 (by @kpodemski)
    - #29535: Update ps_linklist to 5.0.5 (by @matks)
    - #29410: [BC Break] Update hooks for dynamic hooks (by @jolelievre)
    - #29319: Upgrade symfony version (by @kpodemski)
    - #29227: Bump wishlist to 2.1.2 (by @NeOMakinG)
  - Bug fix:
    - #29595: Add source parameter to actionBeforeInstallModule & actionBeforeUpgradeModule hooks (by @atomiix)
    - #29484: Fix doctrine cache configuration (by @atomiix)
    - #29469: Fix hook registration and module enabling/disabling processes (by @matthieu-rolland)
    - #29502: Do not add theme translation resources if theme is null (by @atomiix)
    - #29504: Cherry-pick #29502 (by @atomiix)
    - #27422: [BC Break] Use core translations sources for themes in addition to the translations of the theme itself (by @atomiix)
    - #GHSA-hrgx-p36p-89q4: Chain: SQL Injection (CWE-89) and Eval Injection (CWE-95) (by @atomiix)
- Installer:
  - Improvement:
    - #29244: Update PHP-CS-Fixer to make it compatible with PHP 8.1 (by @FabienPapet)
  - Bug fix:
    - #29670: Restore install sprintf JS lib integrity (by @matks)
    - #29420: Clear translations cache before translating fixtures (by @atomiix)
- Web Services:
  - Bug fix:
    - #29638: WS : Handle PATCH requests for attachments (by @matks)
    - #29320: Update class name used by product_option_values ressource (by @PrestaEdit)
- Localization:
  - Improvement:
    - #29279: Fix wrong translation domain (by @jolelievre)
  - Bug fix:
    - #29582: Fix wording typos (by @jolelievre)
- Tests:
  - Improvement:
    - #29683: Functional tests : FO - Search no result / Search product bar, consult autocomplete list / Search a product and validate (by @Progi1984)
    - #29576: Functional tests - Add test "FO - Send message while logged out" (by @Progi1984)
  - Bug fix:
    - #29773: Bump `prestashop/classic` to 2.0.1 (by @Progi1984)
    - #29690: Disable apache mpm_event module in the CI (by @atomiix)
    - #29643: Lock sebastian/comparator to 4.0.6 (by @atomiix)
  - Refactoring:
    - #29492: Sanity tests - Add new test "Bulk delete products" V2 (by @nesrineabdmouleh)
    - #29772: Add events types and fix path on UI tests code checks workflow (by @boubkerbribri)
    - #29713: Functional tests - Add new test 'FO > Contact us on GDPR page' (by @nesrineabdmouleh)
    - #29737: Functional tests - Refacto BO - Catalog -  preview product from the list (by @khouloudbelguith)
    - #29735: Fix Trigger ESLint on UI tests (by @boubkerbribri)
    - #29725: Functional Tests - Add New test 'BO - Cart rules - Case 9 - Check Total available'  (by @cfarhani06)
    - #29718: Functional tests : Refacto BO - Customers - CRUD (by @Progi1984)
    - #29640: Functional tests - Refacto test BO - Invoices - Other Options (by @khouloudbelguith)
    - #29697: Add dotenv dependency and create .env.ci file for tests/UI (by @boubkerbribri)
    - #29691: Functional tests - Add new test FO > User account > 'Check gdpr data in pdf'  (by @nesrineabdmouleh)
    - #29706: Run code checks only for tests/UI repository (by @boubkerbribri)
    - #29662: Add functional Tests - User account log out (by @cfarhani06)
    - #29444: Add workflow for product V2 sanity tests (by @boubkerbribri)
    - #29687: Functional tests - Fix 'Customer service tests' in FO and BO (by @nesrineabdmouleh)
    - #29479: Sanity tests - Add new test 'Delete product' V2 (by @nesrineabdmouleh)
    - #29639: Functional Tests - Add new tests to display all products on FO Page (by @cfarhani06)
    - #29378: Functional tests - Add new test "Customers > Outstanding page" Pagination - Sort - Filter (by @khouloudbelguith)
    - #29620: Sanity tests - Fix enable/disable new product page method (by @nesrineabdmouleh)
    - #29578: Functional tests - Refacto test BO - Invoices - Enable Disable Tax Breakdown (by @khouloudbelguith)
    - #29555: Fix 'FO > Create and check footer link widget' test (by @nesrineabdmouleh)
    - #29528: Fix errors in nightly 8.0.x (by @nesrineabdmouleh)
    - #29514: Sanity tests - Fix random error in 'Create product' V2 test (by @nesrineabdmouleh)
    - #29511: Fix nightly 8.0.x 01/09/2022 - Fix 'FO > Edit information' , 'FO > CRUD address' and 'BO > Payment block' tests (by @nesrineabdmouleh)
    - #29468: Sanity tests - Refacto and add new test 'CRUD virtual product' (by @nesrineabdmouleh)
    - #29438: Sanity tests - Add new test 'CRUD product with combinations' V2 (by @nesrineabdmouleh)
    - #29443: Functional tests - Fix errors on nightly 8.0.x (by @nesrineabdmouleh)
    - #29452: Functional tests - Fix 'FO > User account> Edit information' test (by @nesrineabdmouleh)
    - #29430: Sanity tests - Add new test 'CRUD standard product' V2 (by @nesrineabdmouleh)
    - #29387: Sanity tests - Add new test 'Filter products table' V2 (by @nesrineabdmouleh)
    - #28906: Functional tests - Fix CRUD address test on FO (by @nesrineabdmouleh)
    - #29311: Functional tests - Skip some steps on 'FO > Edit information' test after the new behavior (by @nesrineabdmouleh)
    - #29290: Fix nightly 8.0.x - 09/08/2022 - 'Enable/Disable guest checkout' and 'Check links in footer page' (by @nesrineabdmouleh)
    - #28846: Functional tests - Add new test 'Change Currency' in FO (by @sallemiines)

####################################
#   v8.0-beta.1 - (2022-08-08)
####################################

- Back Office:
  - New feature:
    - #27304: [BC Break] Add packed product type (by @Amoifr)
    - #27246: [BC Break] Introducing Horizontal Migration code for listings (by @tegbessou)
    - #28482: Handle product ecotax in product v2 (for both standard and combination form) (by @jolelievre)
    - #28504: Add hook to allow additional search panels (by @sowbiba)
    - #28597: Combination tab out of stock (by @jolelievre)
    - #28577: Combination list form inside product form, and combinations available labels (by @jolelievre)
    - #28451: New product price display and product summary (by @jolelievre)
    - #28407: Combination list edit mode (by @jolelievre)
    - #28380: Add module ps_distributionapiclient (by @atomiix)
    - #26716: [BC Break] Make Shop Parameters > Traffic & SEO > SEO & URLs forms multistore compatible (by @micka-fdz)
    - #27469: Add hook to allow adding content after themes list in the BO (by @sowbiba)
    - #25872: [BC Break] Make Shop Parameters > Order Settings forms multistore compatible (by @micka-fdz)
    - #27233: [BC Break] Integrate new header design for product page (by @jolelievre)
    - #27673: Remove ecotax field when the product is virtual (by @Progi1984)
    - #27663: Fixed wording on Security page (by @Progi1984)
    - #27461: Add hook to allow adding extra buttons in module configure toolbar (by @sowbiba)
    - #27442: [BC Break] Multistore - Shipping > Preferences - Add checkboxes (by @okom3pom)
    - #25914: [BC Break] Multistore - Advanced Parameters > Webservice - Add checkboxes  (by @okom3pom)
    - #25464: [BC Break] Product multishop prices (by @jolelievre)
    - #26506: [BC Break] Introduce CQRS query to search combinations for association (by @jolelievre)
    - #26086: Create CommandAccessor component which will be used by the command builders services (by @jolelievre)
    - #25726: Added API status block in WebService page (by @Progi1984)
    - #22731: Migrate product list - part 1 - Base (by @JevgenijVisockij)
    - #24398: Partially restore feature search in Back Office (by @eternoendless)
  - Improvement:
    - #29230: [BC Break] Add help.prestashop-project.org documentation links & fix popup opening (by @FabienPapet)
    - #29022: Display an error while the file format does not match the allowed formats (by @PrestaEdit)
    - #28959: Combination form ux improvement (by @jolelievre)
    - #28668: Add recommended length counters to SEO fields in CMS Pages Add/Edit and SEO Add/Edit URLs (by @Progi1984)
    - #28594: [BC Break] Feature flags improvements (by @matthieu-rolland)
    - #28330: Extra message on module description (by @sowbiba)
    - #28277: [BC Break] Fix bugs for RTL languages by SCSS in BO (by @mparvazi)
    - #28375: Add reset button to reset category filter in products list (by @marsaldev)
    - #28328: Catalog rules: don't display the shop column if there is only one shop (by @kpodemski)
    - #28318: Extra message to display for an empty modules category (by @sowbiba)
    - #28066: Add select2 in large select options (by @PululuK)
    - #28161: Add shop name in customer search result. (by @lmeyer1)
    - #28183: Add default group to customer listing (by @Hlavtox)
    - #28143: Migration - Adds commands for Store delete and bulk delete (by @LouisAUTHIE)
    - #25156: Add validator method select on admin controller (by @ytilotti)
    - #27328: [BC Break] Handle product tags in v2 page (by @jolelievre)
    - #28166: Set Tax included as default value for amounts in cart rule form. (by @lmeyer1)
    - #27606: Show confirmation modal before deleting order status and order return status (by @Progi1984)
    - #28243: Updated wording about the error when upload a module bigger than post_max_size or upload_max_filesize (by @marsaldev)
    - #27917: [BC Break] Remove deprecated admin endpoints (by @eternoendless)
    - #28177: [BC Break] Remove live exchange rate toggle in Currencies (by @lmeyer1)
    - #28146: Update wording of a tooltip in products settings page (by @marsaldev)
    - #27440: Update BO architecture in product settings page (by @PierreRambaud)
    - #27611: Use Vazir font with a node module instead of CDN (by @NeOMakinG)
    - #26377: Allow to print order messages (by @PululuK)
    - #27632: [BC Break] New extensible module manager API (by @atomiix)
    - #27404: Simplify multistore service call in controllers (by @PululuK)
    - #27853: BO Migration Contact > Stores - Add command, command handler and behat tests for bulk status toggle (by @LouisAUTHIE)
    - #27969: Add the possibility to load PHP / XML files for modules services (by @intraordinaire)
    - #28010: [BC Break] Remove OrderSlip::createOrderSlip deprecated function (by @nenes25)
    - #28001: In Stock Movement page, localize date & time (by @Progi1984)
    - #27925: [BC Break] Remove all deprecated templates in /admin-dev/themes/default/template/controllers/modules_positions/ (by @eternoendless)
    - #28009: [BC Break] Remove OrderHistory getLastOrderState deprecated function (by @nenes25)
    - #27895: Handle seo data for multishop (by @saulaski)
    - #27825: Migrate 'International > Locations > States' Listing (by @Progi1984)
    - #27851: [BC Break] Simply Delivery Slip Form (by @Progi1984)
    - #27275: [BC Break] Move condition field from options to specifications tab (by @jolelievre)
    - #27373: BO Migration Contact > Stores - Add command, command handler and behat tests for status toggle (by @LouisAUTHIE)
    - #27510: Improve wording tooltip Traffic & SEO > Schema of URLs (by @okom3pom)
    - #27719: [BC Break] Product multi shop stock (by @jolelievre)
    - #27751: Removed dead code about Aviary in FileManager (by @Progi1984)
    - #27525: [BC Break] Multistore - International > Taxes > Taxes - Add checkboxes (by @okom3pom)
    - #27481: Product page v2 accessible in menu (by @jolelievre)
    - #27443: Minor cleanup and styling (by @Hlavtox)
    - #27584: [BC Break] Multishop product basic (by @jolelievre)
    - #21120: Create Back-Office page(s) to manage customer and employee sessions SQL tables (by @PierreRambaud)
    - #27563: Multistore - Shop parameters > Order settings > Statuses : Add information message (by @Progi1984)
    - #27514: Use new url quick access for orders list (by @okom3pom)
    - #27408: Hide Merchandise return tab when  Merchandise return is disabled (by @okom3pom)
    - #27271: Redesign sidebar menu UI (by @mparvazi)
    - #27421: Improve products return controller (by @okom3pom)
    - #27346: Redesign SEO preview (by @mparvazi)
    - #27268: [BC Break] Add product link in order preview (by @PululuK)
    - #27358: Add Value Object and Exceptions to migrate Contact>Store in BO (by @LouisAUTHIE)
    - #25080: Display customer groups in order detail (by @Hlavtox)
    - #27108: Add the required length to create a webservice key into form (by @PrestaEdit)
    - #27106: Update webservice doc URL to reach 8 version (by @PrestaEdit)
    - #26024: [BC Break] New add product modal (by @jolelievre)
    - #26022: Add some more precises TypeScript interfaces (by @NeOMakinG)
    - #24403: [BC Break] When creating category, select all groups by default (by @jf-viguier)
    - #25236: Migrate translations page to TypeScript (by @NeOMakinG)
    - #26958: Remove dead code. JS is trigger, but DOM elements are already deleted. (by @intraordinaire)
    - #26689: Optimize cart list in customer detail (a bit) (by @Hlavtox)
    - #25595: Refacto some sensible selectors and add some missing selectors to classic selector map (by @NeOMakinG)
    - #26669: Refactor and simplify rendering of KPI row (by @Hlavtox)
    - #25917: [BC Break] Update new-theme bootstrap and remove unused dependencies (by @NeOMakinG)
    - #26910: [BC Break] Remove hard coded ads (by @okom3pom)
    - #26917: Remove the card "Visit the theme catalog" from Theme config page (by @intraordinaire)
    - #26909: Remove calls to addons API when searching in BO (by @intraordinaire)
    - #26665: Stack min-max inputs to get more space (by @Hlavtox)
    - #25207: Remove id_tax_rules_group in carrier table (by @jf-viguier)
    - #24357: Add order_reference to PaymentModule::validateOrder (by @viglu)
    - #25091: Display customer group when searching for a customer (by @Hlavtox)
    - #26063: Clean Back-office templates, part 4 - catalog (by @Hlavtox)
    - #26064: Clean Back-office templates, part 5 - orders (by @Hlavtox)
    - #26616: [BC Break] In BackOffice, removes unused RTL files and its calls (by @mparvazi)
    - #26601: Do not use hook alias - follow-up (by @SharakPL)
    - #25920: [BC Break] Handle related products in new product page (by @jolelievre)
    - #26239: Move dashboard right column elements into a hook (by @intraordinaire)
    - #26062: Clean Back-office templates, part 3 - improve (by @Hlavtox)
    - #26061: Clean Back-office templates, part 2 - configure (by @Hlavtox)
    - #23889: [BC Break] Display customer company when creating an order in the BO (by @tom-combet)
    - #26494: Changed colorPicker width in BackOffice (by @hibatallahAouadni)
    - #26464: Use latest npm version on JS routing GA (by @NeOMakinG)
    - #26021: Update every package-lock with npm 7 (by @NeOMakinG)
    - #26060: Clean Back-office templates, part 1 - common (by @Hlavtox)
    - #25869: [BC Break] Product quantity is now handled by delta modification (by @jolelievre)
    - #26055: Add placeholders in product settings page (by @okom3pom)
    - #26081: Switch new-theme to esbuild-loader from babel-loader and add webpack-dev-server (by @NeOMakinG)
    - #25686: Use editable customer and avoid loading unnecessary data (by @Hlavtox)
    - #25066: [BC Break] Removed links in employee menu & Added hook for adding links (by @Progi1984)
    - #25976: Update webpack dependencies of classic theme (by @NeOMakinG)
    - #25936: Update webpack, babel and others webpack dependencies of new-theme (by @NeOMakinG)
    - #25964: Make admin directory folder name longer (by @matks)
    - #25935: Search products association query (by @jolelievre)
    - #25899: Correct some typescript ignore and external libraries (by @NeOMakinG)
    - #25184: [BC Break] Attachment iframe modal (by @jolelievre)
    - #25745: Do not use Math.random for cart rule code generation (by @matks)
    - #25744: Fix wrong word in docker_run_git.sh (by @nenes25)
    - #24401: [BC Break] Remove support for legacy Core translation dictionaries in Back Office (by @eternoendless)
    - #24790: Migrate modern admin theme JS components to TypeScript (by @NeOMakinG)
    - #25054: Order feature by position then id_feature_value in productForm V2 (by @e-gaulue)
    - #25314: Don't set UPGRADE as a main button in module list (by @Hlavtox)
    - #25440: Localized dates on BackOffice pages (by @Progi1984)
    - #22401: Allow extending order-create form summary (by @zuk3975)
    - #25186: Refacto stock page using TypeScript (by @NeOMakinG)
    - #25419: [BC Break] Introduce new product form structure for BO Experimental Product page (by @jolelievre)
    - #25169: Cart rule category selection : display categories in a hierarchical way (by @jf-viguier)
    - #24932: Fix unexpected condition in country-state-selection-toggler (by @davidglezz)
    - #25153: Make color picker global in back office (by @matthieu-rolland)
    - #25089: Fixed replaced image in product page (by @NoZTurn)
    - #24808: Remove white-space : nowrap to the category tree. (by @Socrapop)
    - #23515: Add category products number in BO list (by @PululuK)
    - #24803: Add "chosen" to filter available fields on Import page (by @kpodemski)
    - #24785: Fix mispelled word in AdminController (by @prestaforum)
    - #23221: [BC Break] Add typescript on BO migrated pages and refacto grid system (by @NeOMakinG)
    - #23863: Enable to extends module `card_list.html.twig` and use custom actions (by @PululuK)
    - #24345: No alert displayed when we click on "Save then add another value" button (by @okom3pom)
    - #24127: Add missing param phpdoc in LayoutExtension::getLegacyLayout (by @matks)
  - Bug fix:
    - #29024: Fixes BO Dashdoard Button wrong display (by @LouisAUTHIE)
    - #29174: Toggle condition availability based on show_condition (by @zuk3975)
    - #29199: Fix 29165 BO input unit display (by @FabienPapet)
    - #29158: Fix product type error when enabling experimental product page (by @zuk3975)
    - #29190: Fix menu display for legacy pages (by @MeKeyCool)
    - #29186: Fix supplier / product v1 association (by @MeKeyCool)
    - #29073: Remove select2 for categories in product v1 (by @atomiix)
    - #29162: [BC Break] Remove smarty caching_type (by @FabienPapet)
    - #29054: [BC Break] Fix BO Units on inputs (by @FabienPapet)
    - #28416: Do not throw an exception if a module is invalid (by @atomiix)
    - #29086: Fix filtering by date in Movements page (stock section) (by @marsaldev)
    - #29069: Fix install theme without hooks (by @FabienPapet)
    - #29025: Fix module link in adminsearch (by @okom3pom)
    - #29067: Fix permissions for read-only user (by @FabienPapet)
    - #28660: Fix exception during profil edition if invalid field given with avatar (by @MeKeyCool)
    - #29019: BO - Brands & Suppliers - the red alert "Image format not recognized" is missing the webp (by @okom3pom)
    - #29020: Use LegacyModule instance instead of ModuleAdaptater (by @PrestaEdit)
    - #28706: Fix orders export limit (by @Seb33300)
    - #29003: BO - Trivial display in Geolocation (by @okom3pom)
    - #28987: Fix associated categories in product page v1 (by @atomiix)
    - #28930: Fix features and attributes list for multishop (by @MeKeyCool)
    - #28984: Fix customer edit/add select all group access (by @atomiix)
    - #28936: Fix configure warning when module is disabled or uninstalled (by @okom3pom)
    - #28898: BO - Customer view page - The status of the voucher is always disabled (by @okom3pom)
    - #28973: Do not allow 0 as number of products per page (by @atomiix)
    - #28829: Fix performances links spaces and URLs (by @NeOMakinG)
    - #28477: Adjust footer on V2 product page (by @Amoifr)
    - #28392: Fix back-office translations when multishop and multiple languages (by @MeKeyCool)
    - #28821: Handle fallback when currency has empty display names (by @jolelievre)
    - #28802: Fix notice admin search controller (by @okom3pom)
    - #28817: Fix notices in email translation (by @okom3pom)
    - #28788: Fix carrier Exeption with free shipping (by @okom3pom)
    - #28592: Remove id from entity search input templates (by @jolelievre)
    - #28654: Add default fallback if no customer name (by @atomiix)
    - #28535: Removes old images and their hight DPI (by @w-jerome)
    - #28266: Add regex constraint to the webservice key (by @marsaldev)
    - #28458: HelperList: remove notice if specificConfirmDelete is set to false #27718 (by @jf-viguier)
    - #27308: Restore needed removed row in customer view (by @NeOMakinG)
    - #28140: Fix the sorting mechanism on the Stock page (by @marsaldev)
    - #28447: Use toolbar buttons array index as class when missing (by @sowbiba)
    - #28332: Module manager : Restore modules actions order (by @sowbiba)
    - #28307: Fixed the position of the selection card (by @Progi1984)
    - #28068: [BC Break] Specific Price Form : Changing currency change the symbol (by @Progi1984)
    - #28153: Fix cart rule shop association (by @lmeyer1)
    - #28226: Fix notifications color contrast on module manager page (by @NeOMakinG)
    - #28019: Fixed display of Vouchers id in Customer View (by @Progi1984)
    - #28319: BO: Fix overlapping checkoxes on configure buttons (by @hibatallahAouadni)
    - #28235: Fix back button style on login page (by @NeOMakinG)
    - #28314: Fix the stock supplier filter on the Stock page (by @kpodemski)
    - #28281: Fix non closing modal after module install (by @sowbiba)
    - #28223: Fix the load of CSS file to be able to load them with version (by @intraordinaire)
    - #28094: Fix displayHeader is not available when transplanting modules/hooks (by @Prestaworks)
    - #28225: Fix dropdown id on translatable group (by @NeOMakinG)
    - #28086: [BC Break] Remove already migrated code in AdminModulesPositionsController (by @eternoendless)
    - #28173: Upgrade module when already installed (by @atomiix)
    - #28178: Update prestakit to 1.2.5 (by @jolelievre)
    - #28172: Remove unwanted pnpm-lock.yml file (by @NeOMakinG)
    - #28050: Fix iframe modal scrollbars (by @jolelievre)
    - #28118: Fix contextual notification in Product Page v2 Edit Page (by @Progi1984)
    - #27839: Wrong error message in logs (by @tlgsoledis)
    - #27795: Fixed notice 'Undefined index: reduction_applies' (by @Progi1984)
    - #28104: Removed duplicate in SpecificPriceRule::getAffectedProducts (by @Progi1984)
    - #27439: [BC Break] Don't use 0 value for carrier name (by @okom3pom)
    - #28023: Fixed the wording translation for Enable/Disable Mobile in Modules page (by @Progi1984)
    - #26774: Fix missing canonicals (by @Prestaworks)
    - #27781: Fixes error which occurred when you try to modify any customer information after the import (by @kgleizes)
    - #27667: Multistore - Payment > Payment methods - Do not display content and update message in all shops or in a group context (by @Progi1984)
    - #27669: Multistore - Design > Position - Do not display content and update message in all shops or in a group context (by @Progi1984)
    - #28003: Fixed wording and color button on exit button for the bulk delete (by @Progi1984)
    - #28022: Fixed the exception when we disable the tax in the BO > International > Taxes page (by @Progi1984)
    - #27626: [BC Break] Fix stock movement creation from new order (by @saulaski)
    - #24797: Force disabled discounts (CartRules) to show if needed (by @kpodemski)
    - #27850: Move notifications divs to the vuejs app (by @atomiix)
    - #27889: Fixed the display of the dropdown 'No voucher was found' (by @Progi1984)
    - #27860: Added hooks for blockwishlist in classic theme (by @Progi1984)
    - #27793: BO - Customer Page - Allow only positive number for Maximum number of payment days (by @Progi1984)
    - #27848: Check href exists before replacing it in multistore header (by @atomiix)
    - #27813: Fix css specificity issue in mobile menu (by @amaury-hanser)
    - #27394: Improve Cart Rule Form Responsive footer (by @Progi1984)
    - #27720: MultiStore - Sell > Customer Service > Merchandise Return - Add Checkbox & Simplify Form (by @Progi1984)
    - #27620: Multistore - Catalog > Stocks > Stocks & Movements - Update message in all shops or in a group context (by @Progi1984)
    - #27815: Display Ecotax select when ecotax is enabled, without saving (by @Progi1984)
    - #27808: Fixes Security controller help frame opening CORS Problem (by @LouisAUTHIE)
    - #27762: Add help field when integer type is used to a form (by @okom3pom)
    - #27767: Add autocomplete="off" to date picker inputs in helpers (by @jf-viguier)
    - #27697: In Import Page, allow all languages (active and inactive) (by @Progi1984)
    - #27698: Fixed Help Link in Merchandise Returns page (by @Progi1984)
    - #27228: Fix FormSubmitButton selector (by @atomiix)
    - #27175: Avoid exception and display appropriate message in database backup (by @Amoifr)
    - #27381: Removed double escape for Tree Node template (by @Progi1984)
    - #25805: Override : Create directory if not exists (by @Progi1984)
    - #27441: Don't search all word for customer search when we create an order (by @okom3pom)
    - #27564: Correct namespace for MaintenanceConfigurationTest (by @okom3pom)
    - #27560: Fixes Experimental page combination table row border styling issue (by @Progi1984)
    - #26056: [BC Break] No tracking Number for return product tab (by @okom3pom)
    - #27457: Remove NotBlank constraint on CreditSlipOptionsType (by @matks)
    - #25992: Fix mail templates (by @lmeyer1)
    - #27285: Fix bad display of the notifications dropdown in medium screen (by @mparvazi)
    - #27012: Removed AdminParent controllers from search in BackOffice (by @Progi1984)
    - #26883: Preload fonts in the BO (by @NeOMakinG)
    - #27329: Fix filters reset in BO stock movements (by @saulaski)
    - #27283: Fix bad display of header toolbar in Product page and Stock page (by @mparvazi)
    - #27317: Fix form mapper to handle mapping with only one selector (by @jolelievre)
    - #26700: In BackOffice, fixed problems for RTL languages (by @mparvazi)
    - #27052: Fix unclosed foreach (by @okom3pom)
    - #27250: Fixes edit of cart rule of a country (by @Progi1984)
    - #26609: [BC Break] Fix combination supplier changes not taking effect (by @zuk3975)
    - #27091: [BC Break] Return integer instead of bool into checkModulesNames() (by @PrestaEdit)
    - #27066: Allow null for ip maintenance and maintenance message fields (by @matthieu-rolland)
    - #22520: Update HookRepository.php (by @Prestaworks)
    - #26994: Multistore: fix configuration value not saved for current context (by @matthieu-rolland)
    - #26475: Fix Combination::getIdByReference returns wrong id (by @alexandrebrubeyonds)
    - #27006: Update node-sass in order to be compatible with Node 16 (by @NeOMakinG)
    - #27014: Remove addons call (by @NeOMakinG)
    - #24120: Fix wrong multishop detection in AdminInvoiceController (by @gennaris)
    - #26488: Disable 'Apply new Quantity' Button before request is sent (by @beattie282)
    - #26546: Fix display for invalid characters in tax name (by @okom3pom)
    - #26561: Don't encode quotes in column name filter value (by @yo7hli)
    - #26805: Fixed the error "The message body is empty" in AdminCustomerThreadsController.php (by @okom3pom)
    - #26522: Fixed display of errors in Carrier Wizard (by @Progi1984)
    - #25327: [BC Break] Improve layout of datetime columns when there's not enough space (by @eternoendless)
    - #26430: Fix legacy tinymce layout is too small (by @NeOMakinG)
    - #26509: Fix module manager wrong behaviors (by @NeOMakinG)
    - #26425: Fix duplication of specific prices that apply to a single combination (by @samaij)
    - #26560: In BackOffice, fixed the missing link of CSS bundles for RTL languages (by @mparvazi)
    - #26538: Fixed filemanager new folder (by @alexandrebrubeyonds)
    - #26220: Repair sorting on block address in customer view (by @tegbessou)
    - #24780: Fix to keep the main product category after importing a product update (by @SergioQuinonez)
    - #26512: Fixed search on Profile Grid in BackOffice (by @Progi1984)
    - #26051: [BC Break] Improve sync between wholesale price and default supplier price in both CQRS and page v2 (by @jolelievre)
    - #26188: Add a float parser for the wholesale price of attributes (by @andromaque)
    - #25265: Add employee in mobile menu and quickaccess on search bar on mobile migrated pages (by @NeOMakinG)
    - #26068: Footer from next invoice shown on invoice when exporting multiple invoices (i.e. invoices by date range) (by @Ashley-Butcher)
    - #21420: [BC Break] Filters : Set Placeholder for Yes/NO & Fix bug when filters are emptied (by @Progi1984)
    - #26372: Dashboard - Correct display of the titles with panel-heading when the screen is reduced (by @khouloudbelguith)
    - #26215: Checked select all checkboxes if all options are checked (by @tegbessou)
    - #26241: Disable sorting on customer discount vouchers (by @tegbessou)
    - #26353: Fix display edit country (by @okom3pom)
    - #26210: [BC Break] Disable override button in performance page (by @okom3pom)
    - #25787: Fix when duplicating product, out of stock ordering behavior is not copied (by @gennaris)
    - #25775: Fixed import of macros for infotip use in multistore mode (by @Progi1984)
    - #26042: Allow # ° ... for credit slip prefix (by @okom3pom)
    - #26118: Change material-icons library causing a too long install (by @NeOMakinG)
    - #26043: Remove bad deprecated comment (by @okom3pom)
    - #25995: Remove duplicate actionCategoryUpdate call on toggling category display status (by @yo7hli)
    - #25776: Removed use of service parameter in controller (by @Progi1984)
    - #25115: [BC Break] Use AsyncToggleColumnExtension for Customers list (by @matks)
    - #25900: Fix broken multistore config forms's javascript (by @matthieu-rolland)
    - #25858: Fix warning on the Customer Threads page (by @kpodemski)
    - #25692: In BO > Orders: Fix disabled add voucher button (by @Progi1984)
    - #25302: Fixed sort for naming in Admin > Carriers list (by @Progi1984)
    - #25559: [BC Break] Removed Addons Connect button in Edit Employee Form in BO (by @Progi1984)
    - #24491: BO SpecificPriceRule - Fix Multi Shop filter on conditions (by @Seb33300)
    - #25558: Fixed save in Symfony Form Merchandise Return Options (by @Progi1984)
    - #25491: Fix actionAdminOrdersTrackingNumberUpdate call location (by @ytilotti)
    - #25548: Set template for customization in div (by @Progi1984)
    - #25442: Fix module uninstallation from the Module Manager (by @kpodemski)
    - #25465: Fix option selection issue in order creation page (by @matthieu-rolland)
    - #25056: Fix BO order create responsivity (by @Hlavtox)
    - #25157: Improve admin product list header (by @Hlavtox)
    - #25439: BO - Customer View page - Added alert when removing a voucher (by @Progi1984)
    - #25305: States : Added add button only on listing pages (by @Progi1984)
    - #25139: Fix the path of the "form_warehouse_combination" (by @tups)
    - #25301: Display validation when Enable/Disable webservice keys by bulk actions (by @Progi1984)
    - #25295: Allow enable/disable selection for customers in Customer Groups (by @Progi1984)
    - #25152: Fix selectors map not being set in experimental product combinations page (by @zuk3975)
    - #24982: Fix getting products count on category list (by @kpodemski)
    - #25087: Fix form label alignment, switch precision and alignment (by @Hlavtox)
    - #25085: Kick border radius of the middle button of search bar (by @NeOMakinG)
    - #25072: BO: Product Form V2 : Show inactive categories in the category tree (by @e-gaulue)
    - #25012: Fix color picker bug (by @unlocomqx)
    - #25048: Fix mobile boostrap column spacing and forgotten class (by @Hlavtox)
    - #24933: Old products.js fixes (by @davidglezz)
    - #24895: Fix empty data by < in invoice note (by @okom3pom)
    - #24952: Limit id min-max width on product list (by @NeOMakinG)
    - #24958: Allow HOOK_DISPLAY_PDF to fill the whole page area (by @tswfi)
    - #24909: Fix steps height on carrier page on mobile (by @NeOMakinG)
    - #24919: Update node sass (by @NeOMakinG)
    - #24823: [BC Break] Validate image if needed first when adding new brand (by @kpodemski)
    - #24897: Fix translations escaping for BO header (by @kpodemski)
    - #24796: Checking for url existence in possible new default shop (by @kpodemski)
    - #24595: Wrong mimetype for svg file (by @Shagshag)
    - #24835: Fix customers delete bulk selector map  (by @NeOMakinG)
    - #24805: Fix customer delete regression and tests (by @NeOMakinG)
    - #24688: Correctly displayed precise product weight (by @kpodemski)
    - #24555: Fix for product combination quantity change in RTL panel  (by @samberrry)
    - #24352: Search Conf Incorrect successful alert message (by @okom3pom)
    - #24359: Email Preview - wrong value in {total_products} (by @okom3pom)
    - #24328: Email "Fwd: Customer" message ; link is not correct (by @okom3pom)
    - #24183: Handle info flash messages in Twig layout (by @matks)
    - #24184: Make color required for order state forms (by @matks)
    - #21174: Fix color picker template (by @bpato)
  - Refactoring:
    - #28598: [BC Break] Improve FormFieldDisabler into FormFieldToggler and use it for "show prices" and "delivery times" in product page (by @jolelievre)
    - #28553: [BC Break] Autofill empty link_rewrite in product update handlers (by @zuk3975)
    - #28751: Combination bulk actions progress modal (by @zuk3975)
    - #28352: Light product list (by @zuk3975)
    - #28749: Add Pagination for specific price list in product page (by @zuk3975)
    - #28438: Migrate Country list to symfony (by @margud)
    - #28619: [BC Break] Replace unit type with a form type extension (by @tom-combet)
    - #28584: Product list bulk delete and duplicate actions (by @zuk3975)
    - #28561: Toggle "show price" and "delivery times" inputs visibility (by @zuk3975)
    - #28533: Introduce SetDefaultCombinationCommand (by @zuk3975)
    - #28558: Add fixed quantity update to bulk combination edition (by @zuk3975)
    - #26004: [BC Break] Migrating product list part 2 (by @JevgenijVisockij)
    - #28390: Improve / refactor specific price form on page V2 (by @matthieu-rolland)
    - #28526: Fix wording (by @marsaldev)
    - #28506: Empty state for combinations list (by @zuk3975)
    - #28459: Combination bulk action. Handle new bulk choices: select all | select all in page (by @zuk3975)
    - #27353: [BC Break] Refacto combination suppliers (by @jolelievre)
    - #27892: [BC Break] Simplify Product Preferences Form (by @Progi1984)
    - #28359: Bulk delete combinations (by @zuk3975)
    - #28075: Migrate the Customers > Title pages (Only the list) (by @Progi1984)
    - #28282: Add images selector to bulk combination form (by @zuk3975)
    - #27216: Combination bulk form (by @zuk3975)
    - #27670: Handle multishop for product shipping form (by @zuk3975)
    - #12428: [BC Break] Migration of Permissions configuration (by @sarjon)
    - #27783: Handle multishop for product options tab (by @zuk3975)
    - #26938: SpecificPrice priority form (by @zuk3975)
    - #27098: [BC Break] Remove the page `Referrers` (by @Progi1984)
    - #27710: [BC Break] Removed dead code relative to Addons (by @Progi1984)
    - #27288: [BC Break] Remove AdminAttributeGeneratorController & Use about (unused) table attribute_impact (by @Progi1984)
    - #27700: Refactor gelocation configuration form before it can be migrated as multistore compatible (by @matthieu-rolland)
    - #27444: [BC Break] Remove code relative to the (removed) news block on dashboard (by @Progi1984)
    - #25879: Refacto improper card markup on migrated pages (by @NeOMakinG)
    - #25806: Migrate Product page v2 to TypeScript (by @NeOMakinG)
    - #26617: Update combination using delta quantity (by @zuk3975)
    - #27273: [BC Break] Clean shortcuts code from product form (by @jolelievre)
    - #25742: Add specific price modal in experimental product page (by @zuk3975)
    - #26762: [BC Break] Refactor product unit price (by @jolelievre)
    - #27015: Remove dead code about Dashboard Push (by @Progi1984)
    - #24077: Adding html column (by @JevgenijVisockij)
    - #25956: [BC Break] Refactor on AbstractMultistoreConfiguration class + unit tests + integration tests (by @matthieu-rolland)
    - #26836: [BC Break] Move StockController into Admin/Sell/Catalog/ (by @eternoendless)
    - #25750: Migrate router, store and mixin files of stock page to TypeScript (by @NeOMakinG)
    - #25562: [BC Break] Move TranslationsController into Admin/Improve/International (by @eternoendless)
    - #26449: [BC Break] Refactor product status command (by @jolelievre)
    - #24667: Implement EditProductSpecificPriceCommand (by @zuk3975)
    - #25342: Introduce a first v1 for Category modal (new product page) (by @zuk3975)
    - #25689: [BC Break] Rename Form to FormTheme in experimental product templates (by @zuk3975)
    - #25573: Remove unused-var in AdminImportController (by @nenes25)
    - #25175: Introduce BulkDeleteCombinationCommand (by @zuk3975)
    - #24786: [BC Break] Remove unused backoffice footer (by @Progi1984)
    - #24878: [BC Break] Refactor entity search element to make more generic and reusable (by @jolelievre)
    - #24658: Deprecate Domain\SpecificPrice namespace (by @zuk3975)
    - #24791: [BC Break] Migrate pages files to typescript (by @NeOMakinG)
    - #23441: Migrate "Shop parameters > Traffic & SEO > Search Engines" and create/edit of search engines (by @ks129)
    - #24649: Remove irrelevant "todo" reminder (by @zuk3975)
    - #24628: Add router to defined javascript components (by @zuk3975)
- Front Office:
  - New feature:
    - #27292: Add category additional description (by @Hlavtox)
    - #27347: Added contextual information messages in multistore context (by @Progi1984)
    - #24656: Introduce ability to version Media (by @samberrry)
    - #24738: Add a hook 'actionValidateOrderAfter', This hook is called after the complete creation of an order (by @olecorre)
  - Improvement:
    - #28232: Optimizing queries for checking address existence (by @Progi1984)
    - #27755: Move registration logic to new controller (by @Hlavtox)
    - #28297: FO: Add page number in meta titles for new-products, best-sales, prices-drop (by @Amazzing)
    - #27397: Add the minimum required to the error message, when trying to apply a cart rule with a minimum (by @Prestaplugins)
    - #27941: [BC Break] Hook displayOverrideTemplate not executed on checkout page due to naming issue. (by @Amit-Kumar-Tiwari-Webkul)
    - #27756: [BC Break] FO:  Remove Front controller deprecated properties (by @nenes25)
    - #27467: Support 410 gone http code (by @jf-viguier)
    - #27437: Add hook to display custom content before checkout confirmation (by @ShaiMagal)
    - #26898: Display fixed index in profiling for easier navigation (by @unlocomqx)
    - #27022: Do not autohook ps_featuredproducts on displayCrossSellingShoppingCart (by @Hlavtox)
    - #25866: Get unique product ids at specific prices (by @kusflo)
    - #26890: Automatic update of rewrite url only on creation (by @jf-viguier)
    - #25668: [BC Break] Global smarty $urls variable changes when child theme is being used (by @Oksydan)
    - #23959: Support shop logo in svg (by @jf-viguier)
    - #25064: Link improvements, mainly for customers not logged in (by @Hlavtox)
    - #25204: Fix return for virtual product  (by @okom3pom)
    - #26285: Unify reporting of query types (by @Hlavtox)
    - #26393: Show breadcrumbs on mobile (by @alexandrebrubeyonds)
    - #23803: Fix static vars not using scss vars on new-theme and classic (by @NeOMakinG)
    - #25543: Add `supplier` and `manufacturer` image link in `smarty url helper` (by @PululuK)
    - #24684: Option to override CMS category template (by @kpodemski)
    - #25067: Added clickable phone number on navbar and footer (by @henri9813)
    - #24437: Add "recycled packaging" in order_conf and new_order mail and on order summary page and order confirmation page (by @okom3pom)
    - #25026: Clean some Classic outdated files (by @matks)
    - #24730: Add product page link and move download in order details (by @marekjedrzejewski)
    - #24348: Use right link and add redirect (by @okom3pom)
    - #13585: Query optimization in CartRule (by @Rolige)
  - Bug fix:
    - #29055: Fix anchor links in product list (by @jolelievre)
    - #28904: Fix responsive for product quick view. (by @MeKeyCool)
    - #28524: Fix select2 style in order view (by @MeKeyCool)
    - #27841: Multistore - Product on category page display out of stock flag instead of availlable on order (by @Rizzen59)
    - #27187: Set country from browser language if option is set in customer address (by @Amoifr)
    - #28231: Fix totals excluding tax in confirmation email (by @Seb33300)
    - #28426: Fix product images size consistency (by @MeKeyCool)
    - #27738: FO : Fix offset for "NEW" products listing (by @idnovate)
    - #27803: No more auto created carts on login (by @Prestaworks)
    - #26048: Check quantities at any point of checkout process (by @Hlavtox)
    - #27830: Fixes php notice because $result maybe false value (by @buggyzap)
    - #26854: Prevent customization modal open if qty changed in cart on classic (by @NeOMakinG)
    - #27475: Fix: prestashop event functions are overwritten in the "classic" theme (by @tups)
    - #27446: Display Line Breaks in Order messages (by @Progi1984)
    - #27159: [BC Break] Fix check by delivery price/weight in case of hook usage (by @jf-viguier)
    - #26806: [BC Break] Move informational message in my account sections to template (by @Hlavtox)
    - #27095: Fix forbidden access page in Front Office (by @eternoendless)
    - #26954: Customer is able to see order detail page via link even order share is disabled in multishop (by @Amit-Kumar-Tiwari-Webkul)
    - #27079: Fix the checkout button for the longer text (by @kpodemski)
    - #26791: Add redirect with notifications (by @Lionel-dev)
    - #26663: Fix position of cart crosselling hook (by @Hlavtox)
    - #25883: Fix update qty of cart when qty is set to 0 on front-office (by @NeOMakinG)
    - #26673: Fix button alignment inside input-group (by @SharakPL)
    - #25069: [BC Break] In case multiple payment options are available (by @moncef-essid)
    - #24798: Get quantity_wanted for product only when it is needed (by @kpodemski)
    - #25818: [BC Break] Change jQuery-ui position before theme.js to avoid overriding bootstrap ones (by @NeOMakinG)
    - #26586: Added modules to hook DisplayHome in classic theme (by @Progi1984)
    - #25501: Smarty Modifier Classname - compatibility with CSS BEM method (by @tups)
    - #26477: Fix error while compiling theme assets (by @templatin)
    - #25972: Do not reject cart creation if no cookie, only exclude bots (by @psyray)
    - #26347: Fix for issue with customizable products returns (by @Prestaworks)
    - #26242: Respect display_taxes_label in ps_shoppingcart classic theme template (by @tswfi)
    - #26392: Fix Gift message bug if clicking fast (by @alexandrebrubeyonds)
    - #26414: Use proper variable for checking category active (by @Hlavtox)
    - #26394: Customization product text fix display (by @marwachelly)
    - #26380: Fix Simple anchors do not work (by @alexandrebrubeyonds)
    - #26363: Do not display unnecessary li tag ( ps_categorytree ) (by @okom3pom)
    - #26201: Order addresses by alias on checkout (by @tegbessou)
    - #25882: Respect country setting "Display tax label (e.g. "Tax incl.")" in cart and order confirmation page (by @tswfi)
    - #26194: Fix product brand in microdata (by @Hlavtox)
    - #25395: Fix revisiting order confirmation and guest to customer conversion in FO (by @Hlavtox)
    - #25834: Fix the StoreController and add missing data (by @kpodemski)
    - #25987: Fixed URL encoding when Friendly URL is disabled (by @Progi1984)
    - #25835: Add missing brands/manufacturer URL to the $urls (by @kpodemski)
    - #22389: Fixed case where the "Place Order" button is disabled when the order is free and "Terms of service" is disabled (by @tswfi)
    - #25396: Fixes Search that would return no result if semicolon is used (by @venditdevs)
    - #25564: In checkout, shipping method is not displayed if cart is only virtual (by @Progi1984)
    - #25460: Fix missing row element and additional padding (by @Hlavtox)
    - #25567: Use _DB_PREFIX_ constant instead of ps_ in SQL queries (by @idnovate)
    - #25433: Fix `ObjectModel::add()` force_id usage for multilang model (by @jf-viguier)
    - #25210: Add download link when an order have 2 product type virtual and normal (by @okom3pom)
    - #23698: Can't show module on the Left Column (by @nenes25)
    - #25151: Remove useless 50x.html pages in classic (by @jf-viguier)
    - #24509: Remove old selected_filters route  (by @jf-viguier)
    - #24920: Fixed duplicate address in checkout (by @jf-viguier)
    - #24792: If the product has no combinations then the `specific_references` must be filled in (by @levyn)
    - #24846: Remove extracted comments from webpack config of core js (by @NeOMakinG)
    - #16138: Fixed the bad discount amount for specific prices (by @levyn)
    - #24426: Fix error on favicon when maintenance mode is enabled (by @okom3pom)
    - #24155: Making the inline tag working for js and css (by @Prestaworks)
  - Refactoring:
    - #26931: [BC Break] Remove empty methods in FrontController (by @matks)
    - #25856: Subcategories template refacto (by @Oksydan)
    - #24080: Improve complexity of `CategoryController::getCanonicalURL` and Add doc to the parent function (by @Sinepel)
    - #24940: Refactor cartPresenter to reflect the real business need (by @arouiadib)
    - #24019: Improve complexity of assignCase var in CMS Controller (by @Sinepel)
- Core:
  - New feature:
    - #27485: Add hook to allow adding buttons to modules catalogue toolbar (by @sowbiba)
    - #27683: Add a warning log when a module registers to a hook but implements no hook listener (by @Progi1984)
    - #27223: Add new hook `actionFilterDeliveryOptionList` (by @PululuK)
    - #26183: Console command for config (by @tswfi)
    - #26264: Add new cli command for getting and setting debug mode (by @tswfi)
    - #24394: Added support for WebP (by @Progi1984)
    - #25611: Introduce new Symfony ArrayFinder to replace Shudrum ArrayFinder (by @matks)
    - #25714: [BC Break] Remove unused parameters from Tools::addonsRequest() (by @eternoendless)
    - #23886: Add composer.json CS normalizer to CI (by @mvorisek)
    - #23413: Allow DKIM signing emails (by @Hlavtox)
    - #24124: Allow .webp image format in /img/.htaccess. (by @lmeyer1)
  - Improvement:
    - #29261: Bump distribution API module to 1.0.1 (by @matks)
    - #29239: Update composer deps and lock classic to beta-2.0.0 (by @matks)
    - #28658: Bump `prestashop/ps_cashondelivery` to 2.0.1 (by @Progi1984)
    - #28127: [BC Break] Implement a new password policy based on zxcvbn (by @PierreRambaud)
    - #28624: Bump phpstan/phpstan from 1.5.4 to 1.7.4 (by @Progi1984)
    - #28615: Add Db::ON_DUPLICATE_KEY into available possibilities (by @PrestaEdit)
    - #28402: [BC Break] PHP 8.1 compatibility (by @atomiix)
    - #28559: Micro performance optimizations in Order class (by @kpodemski)
    - #28545: [BC Break] Remove deprecated in Cart model (by @PrestaEdit)
    - #28544: [BC Break] Removed deprecated in Carrier class (by @jf-viguier)
    - #28072: Be able to skip CSV Header in CSV export (by @Shoprunners)
    - #28461: Bump guzzle version to 7.4 (PHP 8.1 compatibility) (by @intraordinaire)
    - #28198: [BC Break] Remove deprecated method inside AbstractProvider (by @PrestaEdit)
    - #27575: [BC Break] CountryId and CustomerId VO not allow zero (by @Amoifr)
    - #28290: Add product property `manufacturer_name` (by @PululuK)
    - #28339: Bump version to 2.1.0 for `blockwishlist` (by @Progi1984)
    - #28274: Update guzzle psr7 to 2.2.1 (by @matks)
    - #28273: Update Symfony to 4.4.40 (by @matks)
    - #28175: Add module name parameter to displayModuleConfigureExtraButtons hook (by @sowbiba)
    - #28197: [BC Break] Remove deprecated method inside SearchProvider (by @PrestaEdit)
    - #26587: Use filename property instead of generating a new filename + remove duplicate code for PDF invoice formatting (by @JoryHogeveen)
    - #28244: Change internationalization API urls to i18n.prestashop-project.org (by @eternoendless)
    - #28194: [BC Break] Remove deprecated method inside OrderPayment class (by @PrestaEdit)
    - #28191: [BC Break] Remove deprecated methods inside Cart class (by @PrestaEdit)
    - #28193: [BC Break] Remove deprecated OrderDiscount model (by @PrestaEdit)
    - #28192: [BC Break] Remove deprecated methods inside Product class (by @PrestaEdit)
    - #28195: [BC Break] Remove deprecated HookDispatcher adapter (by @PrestaEdit)
    - #28196: [BC Break] Remove deprecated method inside ThemeProvider (by @PrestaEdit)
    - #28020: [BC Break] Remove deprecated methods in CacheClearer class (by @PierreRambaud)
    - #27957: [BC Break] Remove getSafeModeStatus method (by @PierreRambaud)
    - #27960: [BC Break] Remove Adapter\Tools::link_rewrite (by @PierreRambaud)
    - #28119: Bump phpstan/phpstan to 1.5.4 (by @Progi1984)
    - #26743: Provide modules information about old order status (by @Hlavtox)
    - #27983: Fix PHPDoc on Address class (by @comxd)
    - #28060: Removed phpstan-ignore with use of `dynamicConstantNames` (by @Progi1984)
    - #27723: [BC Break] Bump PHPStan from 0.12.88 to 1.5 (by @Progi1984)
    - #28021: [BC Break] Remove HookExtension::hookCount method (by @PierreRambaud)
    - #27958: [BC Break] Remove Tools::display404Error (by @PierreRambaud)
    - #27959: [BC Break] Remove AdminController deprecated (by @PierreRambaud)
    - #27955: [BC Break] Remove getCldr and array_replace (by @PierreRambaud)
    - #27956: [BC Break] Remove useless parameters in displayDate method (by @PierreRambaud)
    - #27914: [BC Break] Remove deprecated include "images.inc.php" (by @eternoendless)
    - #27913: [BC Break] Remove deprecated date picker functions (by @eternoendless)
    - #27527: [BC Break] Remove deprecated enable_mobile|disable_mobile (by @PrestaEdit)
    - #27859: Update decimal to make it work without bcmath (by @PierreRambaud)
    - #27641: Added CQRS Commands & Queries for State domain (by @Progi1984)
    - #27797: [BC Break] Removed old constants (for removed directories) (by @Progi1984)
    - #27754: Removed dead code about `vatnumber` Module (by @Progi1984)
    - #27546: Use CSSO Webpack plugin everywhere (by @NeOMakinG)
    - #26913: [BC Break] PHPStan (Level 5) on classes/ (by @Progi1984)
    - #27417: PHPStan (Level 5) on controllers/ (by @Progi1984)
    - #27425: Add hooks in the form process for dataProvider (by @Progi1984)
    - #27562: Use remove instead of delete (by @PrestaEdit)
    - #27102: PHPStan (Level 4) on controllers/ (by @Progi1984)
    - #27360: Simplify CmpPrice functions (by @davidglezz)
    - #27359: Use mbstring functions without checking, in Tools class (by @davidglezz)
    - #27337: Upgrade Smarty to 3.4.43 (by @matks)
    - #27127: Allow overriding _PS_DISPLAY_COMPATIBILITY_WARNING_ in defines_custom.inc.php (by @PrestaEdit)
    - #27166: Updated state.xml MX Aguascalientes ISO 3166 code, and reorderded CMX… (by @rickygzz)
    - #27126: Bump modules (by @Progi1984)
    - #27107: PHPStan (Level 2) on tests/ (by @Progi1984)
    - #27044: Add new Twig namespace PrestaShopCore (by @atomiix)
    - #26946: Use github actions for nightly tests (by @boubkerbribri)
    - #27070: Improve license headers (by @matks)
    - #27092: Deprecate stripslashes (by @kpodemski)
    - #27082: Fix wording about footer display in Controller class (by @PrestaEdit)
    - #26682: [BC Break] Remove Combination::location and quantity (by @PierreRambaud)
    - #27004: [BC Break] PHPStan (Level 3) on controllers/ (by @Progi1984)
    - #26952: Remove duplicate call hook actionAdminProductsListingFieldsModifier (by @Amit-Kumar-Tiwari-Webkul)
    - #26914: [BC Break] Remove deprecated methods into Helper models  (by @PrestaEdit)
    - #26864: [BC Break] PHPStan (Level 2) on controllers/ (by @Progi1984)
    - #26923: [BC Break] Remove shudrum/array-finder from composer deps (by @matks)
    - #26294: [BC Break] Remove deprecated admin/ajax-tab.php (by @eternoendless)
    - #26727: PHPStan (Level 4) on classes/ (by @Progi1984)
    - #26746: Improvements to profiling: display order of query execution, (by @lmeyer1)
    - #26770: PHPStan (Level 1) on controllers/ (by @Progi1984)
    - #26685: [BC Break] Remove Order::$shipping_number (by @PierreRambaud)
    - #26681: [BC Break] Remove Tools::jsonEncode and Tools::jsonDecode (by @PierreRambaud)
    - #26744: PHPStan (Level 5) on js/ (by @Progi1984)
    - #26683: Order::$total_paid_real is not deprecated and used in the new Order page (by @PierreRambaud)
    - #26518: PHPStan (Level 0) on controllers/ (by @Progi1984)
    - #26478: [BC Break] PHPStan (Level 3) on classes/ (by @Progi1984)
    - #26637: Delete ACKNOWLEDGEMENTS.md (by @le-melon)
    - #24172: Bump version to 8.0.0 (by @PululuK)
    - #26324: [BC Break] Remove deprecated methods into taxes related classes (by @PrestaEdit)
    - #26571: [BC Break] Use the ModuleInterface interface instead of class Module (by @PierreRambaud)
    - #26479: PHPStan (Level 5) on config/ (by @Progi1984)
    - #26164: [BC Break] PHPStan (Level 2) on classes/ (by @Progi1984)
    - #26292: Remove deprecated admin/ajax.php and js/admin-categories-tree.js (by @eternoendless)
    - #25794: [BC Break] Remove upgrade scripts in favor of autoupgrade process (by @PierreRambaud)
    - #26312: [BC Break] Remove _isPresent() in PrestaShopLogger (by @PrestaEdit)
    - #26310: [BC Break] Remove getJqueryPath() method (by @PrestaEdit)
    - #26259: Add actionPresentPaymentOptions hook (by @PrestaEdit)
    - #26311: [BC Break] Remove formatProductAndVoucherForEmail() in PaymentModule (by @PrestaEdit)
    - #26314: [BC Break] Remove deprecated methods into Uploader (by @PrestaEdit)
    - #26318: [BC Break] Remove getExentedMessage() (by @PrestaEdit)
    - #26316: [BC Break] Remove Windows class (by @PrestaEdit)
    - #26313: [BC Break] Remove deprecated PS_SEARCH_MAX_WORD_LENGTH define (by @PrestaEdit)
    - #26309: [BC Break] Remove deprecated methods in Language (by @PrestaEdit)
    - #26304: [BC Break] Remove deprecated in Category and update code related to it (by @PrestaEdit)
    - #26300: [BC Break] Remove deprecated in AddressFormat (by @PrestaEdit)
    - #26301: [BC Break] Remove deprecated param into Alias constructor (by @PrestaEdit)
    - #26303: [BC Break] Remove deprecated into CartRule (by @PrestaEdit)
    - #26306: [BC Break] Remove deprecated in Configuration (by @PrestaEdit)
    - #26308: [BC Break] Remove deprecated into ImageType (by @PrestaEdit)
    - #26315: [BC Break] Remove isPasswd() method (by @PrestaEdit)
    - #26317: [BC Break] Remove _getPDO() (by @PrestaEdit)
    - #26322: [BC Break] Remove deprecated getTheme() in Shop (by @PrestaEdit)
    - #26323: [BC Break] Remove deprecated in Stock (by @PrestaEdit)
    - #26305: [BC Break] Remove deprecated code in CmsCategory (by @PrestaEdit)
    - #26307: [BC Break] Remove deprecated into GroupReduction (by @PrestaEdit)
    - #26189: Remove useless mod php5 check (by @PierreRambaud)
    - #25245: [BC Break] Remove Theme & Modules Catalog and PrestaTrust calls (by @PierreRambaud)
    - #25916: PHPStan (Level 1) on classes/ (by @Progi1984)
    - #26057: Update 1.8 into 8.0 version (by @PrestaEdit)
    - #26041: Introduce Nullable DateTime (by @jolelievre)
    - #26049: Update Symfony v4.4.32 (by @matks)
    - #25949: Easily override default value for primary user on docker (by @boubkerbribri)
    - #26015: Fix wording of prestashop:update:sql-upgrade-file-hooks-listing (by @PrestaEdit)
    - #25954: Update modules list in composer.json (by @PierreRambaud)
    - #25908: Fix wrong PrestaShopBundle templates directory (by @atomiix)
    - #25847: [BC Break] Update cssjanus 1.2 to 2.1, stop relying on PrestaShop fork (by @matks)
    - #25844: Deprecate fields.php usage (by @matks)
    - #25842: [BC Break] Update egulias/email-validator to latest version (by @PierreRambaud)
    - #25839: [BC Break] Removed mcrypt dependencies (by @Progi1984)
    - #25781: Upgrade to Symfony 4.4.30 (by @matks)
    - #25702: Create "modules" directory inside "var" for data (by @PierreRambaud)
    - #25563: Deprecate FrameworkBundleAdminController::overviewAction (by @eternoendless)
    - #24581: Assign ID prop to null instead of unset (by @mvorisek)
    - #25435: [BC Break] Update twig to v3 (by @atomiix)
    - #25391: Fixed PHPDoc (by @Progi1984)
    - #25296: Make PrestaShop compatible with PHP 8.0 (by @atomiix)
    - #25287: Removed code related to Gamification module (by @Progi1984)
    - #25052: [BC Break] Remove Symfony 4.4 deprecations (by @atomiix)
    - #24985: In dev mode, hooks must not swallow exceptions (by @lmeyer1)
    - #25037: Be able to use subquery when using DbQuery class (by @PierreRambaud)
    - #24609: [BC Break] Upgrade to symfony 4.4 (by @atomiix)
    - #24799: Improved performance for watermarking on import (by @kpodemski)
    - #24927: Add unit tests for javascript (by @PierreRambaud)
    - #24854: Fix typo in comments of class Mail (by @comxd)
    - #24701: [BC Break] Deprecate Tools::safePostVars method (by @mvorisek)
    - #24382: Add alignment option to GridColumn  (by @PululuK)
    - #24022: Register feature flag page hooks (by @matks)
    - #24113: Improve `OrderSlip::create` code readability  (by @PululuK)
  - Bug fix:
    - #29068: Regenerate modern mail theme (by @atomiix)
    - #28780: Add cache to AddressFactory::addressExists() (by @eternoendless)
    - #29064: Move email alerts module default translations (by @atomiix)
    - #28608: Set $registeredHookName as renderWidget when no hook given (by @PrestaEdit)
    - #28725: Add new default password for docker image for 8.0.x (by @boubkerbribri)
    - #28445: [BC Break] Allow clearing modules cache for all shops (by @sowbiba)
    - #26572: Add a button for disabling all non native-in modules in Performance page (by @Progi1984)
    - #28315: Fix delivery information for the product (by @kpodemski)
    - #28358: Avoid ` ConnectException` check Webservice Endpoint (by @PululuK)
    - #28310: Validate by github action if phpunit tests don't change repos state (by @MeKeyCool)
    - #28103: Fixed profiler in PHP8.0 in migrated page (by @Progi1984)
    - #28237: Wrap PDOException in PrestaShopException to cast the string error code to an int (by @atomiix)
    - #28267: Prevent yaml cache folders creation in wrong filesystem path (by @gennaris)
    - #27176: Fix replaceAccentedChars function (by @davidglezz)
    - #28132: [BC Break] Remove ModuleZipManager service as class is missing (by @sowbiba)
    - #28205: Added module blockreassurance (by @Progi1984)
    - #27962: Added module psgdpr (by @Progi1984)
    - #27662: Allow X at the end of ISBN (by @okom3pom)
    - #27933: Allow longer product names in the order detail (by @kpodemski)
    - #28015: Added module ps_googleanalytics (by @Progi1984)
    - #27364: Deprecate Tools::redirectLink (by @davidglezz)
    - #27923: Added module ps_emailalerts (by @Progi1984)
    - #27868: The delivery slip date in the template must be the delivery date and not the invoice creation date (by @thalassa-web)
    - #27822: Don't allow emails without TLD in the Email Validator (by @Progi1984)
    - #27646: Added module productcomments (now compatible with PS 8.0) (by @Progi1984)
    - #27811: Removed execute bit set on PHP files (by @Progi1984)
    - #24584: Database update command - Wrong SQL Query generated (by @RomsC)
    - #27276: [BC Break] Remove useless legacyContextLoader (by @atomiix)
    - #26246: Fix robots.txt and generate new one when action on languages (by @okom3pom)
    - #27240: Fix uploader types validation (by @atomiix)
    - #27587: Update Twig to 3.3.8 (by @kpodemski)
    - #27355: Do not pad ps_versions_compliancy for PrestaShop >= 8 (by @atomiix)
    - #27234: Fix regexp of "id_product_attribute" keyword in product route (by @saulaski)
    - #27367: Fix LocalizationWarmer condition (by @davidglezz)
    - #27339: Set disabled class for label if the input is disabled (by @Progi1984)
    - #26267: [BC Break] Trigger a deprecated when using a hook alias and correctly handle errors (by @PierreRambaud)
    - #27057: Add missing smarty variable (by @atomiix)
    - #26934: Use getSemVersion instead of getVersion to have the correct version (by @sowbiba)
    - #26731: Fix display bugs in profiling (by @lmeyer1)
    - #26867: Repair nightly build (by @PierreRambaud)
    - #26799: Remove duplicate files and remove line-length for yamllint (by @PierreRambaud)
    - #26769: Fix docker setup for shared volumes (by @SharakPL)
    - #26075: Do not use virtual cart for saving quantity in stock (by @Hlavtox)
    - #26415: Fix old deleted customization fields copied after duplicating a product (by @Matt75)
    - #24707: PrestashopLogger should save object type, even if object id is not set. (by @lmeyer1)
    - #25913: Fix object model partial update (by @jolelievre)
    - #25940: Update to node 14 and correctly use mounted directories in docker-compose (by @PierreRambaud)
    - #17101: Fixed in mutishop weight for attributes in cart (by @Progi1984)
    - #23969: Fix glob result when path is outside open_basedir (by @mvorisek)
    - #25572: Do not upgrade module on module installation process (by @PierreRambaud)
    - #25445: Fix wrong service for TranslationExtension (by @kpodemski)
    - #25410: Make sure order variable exists and also return the order_list variable in actionValidateOrderAfter hook (by @PierreRambaud)
    - #25147: Do not strict type for compatibility reason (by @PierreRambaud)
    - #25003: Use defined() with quotes, they're not optional. (by @lmeyer1)
    - #24910: CO allow merchant and customer to add < } in a message (by @okom3pom)
    - #24634: [BC Break] Remove _PS_SMARTY_DIR_ pointing to no longer existing directory (by @mvorisek)
    - #24760: Drop leftover code, /tools/http_build_url/ was removed (by @mvorisek)
    - #24782: Check that $session is set before using it (by @tswfi)
    - #24757: Make getValue more strict to avoid false negative (by @RomainMazB)
    - #23692: A lot of HTML errors are breaking DOM parsing (by @PierreRambaud)
    - #24116: Fix thumbnail regeneration for files other than jpg (by @lmeyer1)
    - #24119: When saving an image as a square png, add always a transparent border (by @lmeyer1)
  - Refactoring:
    - #28644: Use `is_int` instead of `is_numeric` for ID Value Objects (by @Progi1984)
    - #28578: [BC Break] Remove deprecated in Core namespace (by @Progi1984)
    - #28547: Remove use of Tools::stripslashes (by @kpodemski)
    - #28460: Use config vars in `GetOrderForViewingHandler` (by @PululuK)
    - #27227: Don't reassign global vars in front controller (by @PululuK)
    - #28348: Minor code refato `ModuleManager` (by @PululuK)
    - #28190: [BC Break] Remove deprecated $bo_show_screencast property (by @PrestaEdit)
    - #28088: Simplify `LoadServicesFromModulesPass::process` (by @PululuK)
    - #27657: [BC Break] Deprecate cleanNonUnicodeSupport function (by @davidglezz)
    - #27961: [BC Break] Remove Adapter\Tools::bcadd (by @PierreRambaud)
    - #27644: Remove unused FrontController properties (by @davidglezz)
    - #27592: Remove classic theme from project and include it through composer (by @eternoendless)
    - #27416: Remove unused variables in Cart::applyProductCalculations() (by @eternoendless)
    - #27401: Use mbstring functions without check if exist (by @davidglezz)
    - #27566: [BC Break] Removed dead code relative to PrestaShop Addons (by @Progi1984)
    - #27354: [BC Break] Removed dead code about Marketplace (by @Progi1984)
    - #26773: Get specific prices: let mysql optimize the query. (by @lmeyer1)
    - #27361: Deprecate Tools::arrayReplaceRecursive() (by @davidglezz)
    - #27111: [BC Break] Remove Tools::addonsRequest('module') calls (by @Progi1984)
    - #27242: Remove code about AdminSupplyOrders, AdminStockCover, AdminStockInstantState, AdminStockConfiguration & AdminStockMvt (by @Progi1984)
    - #27291: [BC Break] Removed deprecated in class Cookie (by @Progi1984)
    - #27112: [BC Break] Remove Tools::addonsRequest('service') calls (Part 2) (by @Progi1984)
    - #27113: [BC Break] Remove Tools::addonsRequest('customer_themes') calls (Part 2) (by @Progi1984)
    - #27116: Replace a die() by PrestaShopException (by @clotairer)
    - #26947: [BC Break] Removed PrestaShop API Calls (install-modules & check-customer) (by @Progi1984)
    - #26662: Remove code linked to `trackingfront` & `watermark` Modules (by @Progi1984)
    - #26874: Simplify huge IF-ELSE blocks in validateOrder (by @pnucci)
    - #26981: [BC Break] Remove deprecated constant `_PS_HOST_MODE_` (by @Progi1984)
    - #26664: [BC Break] Removed PrestaShop API Call (check_module & module_download) (by @Progi1984)
    - #25937: Replace Shudrum ArrayFinder by Symfony ArrayFinder in Theme (by @matks)
    - #25919: Replace Shudrum ArrayFinder usage by Symfony ArrayFinder in PhpParameters (by @matks)
    - #26650: Remove code linked to `gapi` Module (by @Progi1984)
    - #25713: [BC Break] Remove PrestaShop API Calls (native, native_all, customer, must-have) (by @Progi1984)
    - #26489: Removing some duplicated code lines (by @beattie282)
    - #26268: Deleting extra parameter (by @christophe-rouille)
    - #25406: Add doc block + improve readability of HistoryController::getUrlToInvoice & HistoryController::getUrlToReorder (by @Sinepel)
    - #26408: Use `_PS_PRODUCT_IMG_DIR_`  instead of  `_PS_PROD_IMG_DIR_` to avoid confusion with `prod` and `dev` env. (by @PululuK)
    - #26395: PaymentModule: an array is only updated, but never queried (by @Matt75)
    - #26382: Changed 1.7.9.0 in 8.0.0 in deprecated messages (by @Progi1984)
    - #26251: Fixed call to Order::getCurrentState() method (by @Progi1984)
    - #25843: Rework create-test-db command from tests-legacy to tests folder (by @Progi1984)
    - #25673: Remove the old `deprecated` comment to avoid confusion with new hook (by @PululuK)
    - #21227: Refacto ObjectModel::existsInDatabase (by @PululuK)
    - #25636: Restore Carrier class history (by @eternoendless)
    - #25520: Fixed the use of deprecated functions in Uploader.php (by @WebHelpersPau)
    - #25212: Fixed typo `Country.php` (by @Arnaud104)
    - #23798: Replace ProductInterface occurences by RedirectType (by @Sinepel)
    - #25242: Minor code refacto `Order.php` (by @PululuK)
    - #25268: Fix isCatalogMode condition and Remove the price-drop link from the the best seller display condition (by @Sinepel)
    - #25267: Replace getsupplierlink with getSupplierLink (by @Sinepel)
    - #25187: Replace getmanufacturerLink with getManufacturerLink (by @Sinepel)
    - #24834: Check if regeneration is wanted before checking filesystem (by @RomainMazB)
    - #23546: CategoryDataFactory : Avoid code duplicate (by @PululuK)
    - #24289: Fix visibility of constants (by @matks)
    - #24222: Fix comment (by @arouiadib)
    - #24027: Improve `Tools::passwdGen` method (by @PululuK)
    - #24125: Some fixes of English mispells (by @matks)
- Installer:
  - New feature:
    - #25596: Provide full stack trace when install fails (by @eternoendless)
  - Improvement:
    - #27099: Add capability to select modules and theme to install during the installation process (by @PierreRambaud)
    - #26819: PHPStan (Level 5) on install-dev/ (by @Progi1984)
    - #26166: Update INSTALL.txt for PS 8 (by @matks)
    - #26126: Do not use md5 password for fixtures (by @PierreRambaud)
    - #25771: Remove marketplace calls and links into the installer (by @PierreRambaud)
    - #24676: [BC Break] Remove addons modules on install and add postinstall execution (by @PierreRambaud)
  - Bug fix:
    - #28845: Update to latest blockwishlist module version 2.1.1 (by @jolelievre)
    - #28647: Update min & max php version of the installer (by @atomiix)
    - #28258: Install theme before modules (by @atomiix)
    - #27931: Check if the directory name match the module file name (by @kpodemski)
    - #26588: Make sure `checkSelectPrivilege` check privileges for both InnoDB and MyISAM (by @onlime)
    - #26893: Fix post install error when fixture installation is disabled (by @unlocomqx)
    - #26591: Fix wording in the installer (by @kpodemski)
    - #26132: Add missing hooks actionCustomerLogout & displayCheckoutSummaryTop (by @okom3pom)
    - #24970: Remove useless static cache and make sure CI exit in status 1 when installation failed (by @PierreRambaud)
    - #24588: Fix fixtures when addons modules are not installed (by @PierreRambaud)
  - Refactoring:
    - #26848: Installer : Remove dead code in installer (Upload Logo) (by @Progi1984)
- Web Services:
  - Improvement:
    - #27952: Adding the PATCH method to the REST API (webservices) + API cache management FIX (by @nsorosac)
  - Bug fix:
    - #28280: Fix PHP7.4 bug webservice blank schemas for resources (by @preoteasa)
    - #27770: Webservice symfony less for multilang entities and category creation (by @jolelievre)
    - #27741: Remove PSWS-Version header as it's added after and only if we are authenticated (by @PrestaEdit)
    - #27554: Fixed JSON Output when fetching a specific resource (by @Progi1984)
    - #22969: Fixed API inconsistent return format of JSON (by @Kyaary)
- Localization:
  - Improvement:
    - #27021: Update Mexico unit settings (by @rickygzz)
    - #22811: Add VAT for Monaco (by @micka-fdz)
    - #24921: Reset Germany tax rates (by @micka-fdz)
    - #24936: In PDF, Use "freeserif" for Armenian language (hy) (by @mrAKAR)
- Tests:
  - Improvement:
    - #29099: Add docker-compose.override.yml to ignored files (by @FabienPapet)
    - #28412: Remove useless PrestaShop install (by @atomiix)
    - #27055: Split integration workflows into two, get rid of processIsolation (by @jolelievre)
    - #27974: Pin setup-gcloud to v0 instead of master (by @sethvargo)
    - #27649: Added survival test for Outstanding page (by @Progi1984)
    - #27494: Clean combinations behat step (by @jolelievre)
    - #27287: PHPStan (Level 5) on tests/ (by @Progi1984)
    - #27247: PHPStan (Level 5) on tests-legacy/ (by @Progi1984)
    - #27141: PHPStan (Level 4) on tests/ (by @Progi1984)
    - #27125: PHPStan (Level 3) on tests/ (by @Progi1984)
    - #26592: PHPStan (Level 1) on tests/ (by @Progi1984)
    - #26473: Fix PHPStan because of GDImage (by @jolelievre)
    - #26362: Added Behat Tests for Language Domain (by @Progi1984)
    - #24162: Added Behat Tests for WebService (by @Progi1984)
    - #26185: Add unit test for B2BFeature (by @matks)
    - #25846: Add unit test for SwiftMailerValidation (by @PierreRambaud)
    - #25411: Use only one file for sanity, remove sanity-80.yml (by @PierreRambaud)
    - #25325: Allow GitHub UI tests to run on branch push (by @matks)
    - #24629: Test adapter `Validate::isUnsignedInt`  (by @PululuK)
    - #23954: Reduce number of GH jobs, run one PHPUnit job per PHP version (by @mvorisek)
    - #22547: [BC Break] PHPStan (Level 5) (by @Progi1984)
    - #24212: Add an unit test for refreshCaCertFile (by @jf-viguier)
    - #24146: Nightly : Added branch 1.7.8.x (by @Progi1984)
  - Bug fix:
    - #28690: Fix YAML lint on GH workflow files (by @matks)
    - #28381: Fix error in title controller test, and fix a warning in module tests (by @jolelievre)
    - #28163: [BC Break] Fix PHPstan error (by @jolelievre)
    - #28095: Fix phpstan test with different php versions (by @atomiix)
    - #27996: Fix indent on state.yml (by @matks)
    - #27685: Add 410 gone redirect type test (by @okom3pom)
    - #27067: Do not trust the new composer binary mode for CI (by @PierreRambaud)
    - #27046: Fix behat configuration (by @matks)
    - #26765: Freeze php-cs-fixer version (by @matks)
    - #26697: Upgrade pcre2 in Github Actions (by @atomiix)
    - #26265: Use nodejs 14 for JS routing update cron GitHub Action (by @PierreRambaud)
    - #26209: Fix yamllint warnings and errors (by @PierreRambaud)
    - #26138: Properly copy property content instead of the whole directory when copying it into gcloud (by @PierreRambaud)
    - #26047: Fix bugs that occur in CI because of non-resilient code (by @jolelievre)
    - #25708: Wrong hook path for nightly reports (by @PierreRambaud)
    - #25676: Use node_14.x instead of node_10.x (by @PierreRambaud)
    - #25403: Fixed Unit Tests (by @Progi1984)
    - #24997: Cancel previous build when it's possible (by @PierreRambaud)
    - #25266: Fix develop tests crashing because of outdated translation wordings (by @atomiix)
  - Refactoring:
    - #28922: Functional tests - Refactoring of 'Check footer links on FO' test (by @nesrineabdmouleh)
    - #28991: Update faker dependency for UI tests (by @boubkerbribri)
    - #28948: Functional tests - Add new test 'Change language in FO' (by @nesrineabdmouleh)
    - #29010: Fix number of groups to check on customer view page (by @boubkerbribri)
    - #29032: Fix nightly 11-07-2022 - Fix some random errors (by @nesrineabdmouleh)
    - #28975: Functional tests - Add new test 'View vouchers in FO' (by @nesrineabdmouleh)
    - #28962: Fix nightly 8.0.x - Fix 'CRUD customer' test (by @nesrineabdmouleh)
    - #28918: Functional tests - Refactoring of 'Check header links on FO' test (by @nesrineabdmouleh)
    - #28884: Fix errors on nightly 8.0.x  (by @nesrineabdmouleh)
    - #28809: Functional tests - Add new test 'Logout from FO' (by @nesrineabdmouleh)
    - #28866: Fix nightly 8.0.x - Add pre-condition to clear cache in 'Check footer links FO' test (by @nesrineabdmouleh)
    - #28717: Functional tests - Add new test "Customers > Outstanding page"  Help card - View order - View Invoice (by @khouloudbelguith)
    - #28828: Functional tests - Add new test 'Edit personal information' in FO (by @nesrineabdmouleh)
    - #28815: Functional tests - Add new test 'Create account on FO' (by @nesrineabdmouleh)
    - #28800: Functional tests - Add some fixes to 'FO > Password reminder' test (by @nesrineabdmouleh)
    - #28768: Functional tests - Fix 'Gift option' test (by @nesrineabdmouleh)
    - #28769: Functional test - Add new test to check login in FO (by @nesrineabdmouleh)
    - #28756: Fix nightly 15-06-2022 : Fix check help side bar test of features page (by @nesrineabdmouleh)
    - #28741: Add node and npm versions for UI tests (by @nesrineabdmouleh)
    - #28641: Functional tests - Add new test 'Preview order' (by @nesrineabdmouleh)
    - #28694: Functional tests - Fix customer faker password (by @nesrineabdmouleh)
    - #28691: Functional tests - Add test to Import csv file to Brand pagination test  (by @nesrineabdmouleh)
    - #28682: Functional tests - Fix some random errors on nightly 178x (by @nesrineabdmouleh)
    - #28356: Functional tests - Add new test "Design > Theme & Logo > Advanced customization page" (by @khouloudbelguith)
    - #28665: Fix nightly 02/06/2022 - Fix random error on 'Choose address' test (by @nesrineabdmouleh)
    - #28554: UI tests - Fix step double identifer and remove doubles (by @boubkerbribri)
    - #28536: Functional tests - Add new test 'Check summary' on create order page (by @nesrineabdmouleh)
    - #28527: Functional Tests - Add test 'Choose address' in create order page (by @nesrineabdmouleh)
    - #28575: Fix UI tests by selecting country on FO (by @boubkerbribri)
    - #28507: Fix nightly 16/05/2022 - Fix help card test on attributes page (by @nesrineabdmouleh)
    - #28493: Fix nightly 13/05/2022 - Fix failed Orders tests (by @nesrineabdmouleh)
    - #28456: Functional tests - Add 'data-role' attribute to 'header-desc' selectors (by @nesrineabdmouleh)
    - #28309: Functional tests - Refacto 'Update order status' (by @nesrineabdmouleh)
    - #28464: Fix nightly 11/05/2022 - Fix tests in 'Catalog > Stock' page (by @nesrineabdmouleh)
    - #28437: Functional tests - Delete close onboarding method (by @nesrineabdmouleh)
    - #28423: Functional tests - Add test to create and import csv file of addresses (by @nesrineabdmouleh)
    - #28414: Fix nightly 04/05/2022 (by @nesrineabdmouleh)
    - #28370: Functional tests - Add test 'Pagination of orders table' (by @nesrineabdmouleh)
    - #28399: Fix Nightly 03/05/2022 - Fix export customer test (by @nesrineabdmouleh)
    - #28340: Functional tests - Add new test 'Bulk open in new tab' (by @nesrineabdmouleh)
    - #28298: Functional tests - Fix nightly 20-04-2022 and 19-04-2022 (by @nesrineabdmouleh)
    - #28252: Functional tests - Refacto 'Pagination and sort categories' (by @nesrineabdmouleh)
    - #28262: Functional tests - Refacto 'Sort orders table' test (by @nesrineabdmouleh)
    - #28268: Fix nightly 15-04-2022 (by @nesrineabdmouleh)
    - #28261: Functional tests - Refacto 'Pagination and sort customers table' (by @nesrineabdmouleh)
    - #28251: Functional tests - Add a post condition for 'View guest ' test on Orders page (by @nesrineabdmouleh)
    - #28248: Functional tests - Add new test 'Choose shipping' from add order page (by @nesrineabdmouleh)
    - #28234: Fix nightly 12/04/2022 - Fix sort and pagination employees test (by @nesrineabdmouleh)
    - #28219: Fix nightly 11-04-2022 - Fix CRUD employee test (by @nesrineabdmouleh)
    - #28159: Functional tests - Add new test 'Search, add and remove voucher from new order page' (by @nesrineabdmouleh)
    - #28181: Fix nightly 08/04/2022 - Fix default customer and address IDs (by @nesrineabdmouleh)
    - #28170: Functional tests - Fix log tests (by @nesrineabdmouleh)
    - #28168: Functional tests - Fix product settings tests (by @nesrineabdmouleh)
    - #28138: Fix nightly 05/04/2022 and fix some random errors (by @nesrineabdmouleh)
    - #27945: Functional tests - Add new test 'Add product to cart' in BO (by @nesrineabdmouleh)
    - #27454: Functional tests - Add new test "Select previous carts from BO > Add new order page" (by @khouloudbelguith)
    - #27828: Functional tests - Fix monitoring tests (by @nesrineabdmouleh)
    - #27820: Functional tests - Add new test 'Select previous order' (by @nesrineabdmouleh)
    - #27826: Functional tests -  Fix import test (by @nesrineabdmouleh)
    - #27804: Fix nightly 27-02-2022 and 26-02-2022 (by @nesrineabdmouleh)
    - #27792: Functional Tests - Refacto search customer test (by @nesrineabdmouleh)
    - #27636: Add more pre-conditions and post-conditions on separatly tests (by @nesrineabdmouleh)
    - #27729: Fix nightly 18-02-2022  (by @nesrineabdmouleh)
    - #27687: Functional tests - Add some refacto to 'Search customer' test from new order page (by @nesrineabdmouleh)
    - #27682: Functional tests - Add some refacto to 'Create customer' test from new order page (by @nesrineabdmouleh)
    - #27668: Functional tests - Fix quick access link test and unskip fixed tests (by @nesrineabdmouleh)
    - #27664: Fix nightly 14-02-2022 (by @nesrineabdmouleh)
    - #27612: Fix nightly 07-02-2022 (by @nesrineabdmouleh)
    - #27583: Functional tests - Separate view order page on blocks (by @nesrineabdmouleh)
    - #27544: Fix preview email themes test (by @boubkerbribri)
    - #27426: Fix js doc generation for for faker and utils (by @boubkerbribri)
    - #27424: Delete unused files for UI tests (by @boubkerbribri)
    - #27460: Functional tests - Fix nightly 25/01/2022 (by @nesrineabdmouleh)
    - #27059: Functional tests - Add new test 'Check invoice' (by @nesrineabdmouleh)
    - #27260: Functional tests - Add new test 'Check multi invoice' (by @nesrineabdmouleh)
    - #27368: Fix nightly - Change credit slip row value on table (by @nesrineabdmouleh)
    - #27349: Fix nightly 12/01/2022 - Fix Credit slip options test (by @nesrineabdmouleh)
    - #27269: Create basic helper file (by @nesrineabdmouleh)
    - #27241: Separate steps and navigation for FO products tests (by @boubkerbribri)
    - #27224: Functional tests - Fix multistore test (by @nesrineabdmouleh)
    - #27174: Increase navigation timeout on add shop tests (by @nesrineabdmouleh)
    - #27076: Functional tests - Move PRE-conditions and POST-conditions tests from test to common tests (by @nesrineabdmouleh)
    - #26551: Functional tests - Add new test 'Check messages block from view order page' (by @nesrineabdmouleh)
    - #26801: Functional tests - Add new test 'Change order status' (by @nesrineabdmouleh)
    - #27152: Fix Nightly - Add test to delete cart rule from create simple order from BO (by @nesrineabdmouleh)
    - #27151: Increase navigation timeout on multistore tests and fix ecotax test (by @boubkerbribri)
    - #27138: Support disabling DEV_MODE on Docker (by @boubkerbribri)
    - #27105: Fix nightly workflow by adding branch to push job (by @boubkerbribri)
    - #27100: Functional test - Fix 'Add discount' test (by @nesrineabdmouleh)
    - #27053: Fix script to run tests (by @nesrineabdmouleh)
    - #27002: Improve exception checking in Behat tests (by @jolelievre)
    - #26959: Upgrade nodemailer tests/UI folder (by @boubkerbribri)
    - #26815: Functional tests - Separate create date from test to Utils (by @nesrineabdmouleh)
    - #26851: POC optimize behat tests DB restoring (by @jolelievre)
    - #26894: Functional tests - Add new test  'Add discount' from view order page (by @nesrineabdmouleh)
    - #26822: Fix orders payment and status tests (by @boubkerbribri)
    - #26790: Fix nightly 25-11-21 - Delete check the footer link 'Vouchers' from check links in footer test (by @nesrineabdmouleh)
    - #26359: Functional tests - Add new test 'Check status tab from view order page' (by @nesrineabdmouleh)
    - #26757: Fix nightly 25/11 - Fix footer links test (by @nesrineabdmouleh)
    - #26688: Improve some selectors on FO and view suppliers page (by @boubkerbribri)
    - #26615: Functional tests - Add new test to check 'Payment block in view order page' (by @nesrineabdmouleh)
    - #26652: Add config SMTP and reset SMTP to common tests (by @nesrineabdmouleh)
    - #26505: Functional tests - Add new test 'Check merchandise returns tab from view order page' (by @nesrineabdmouleh)
    - #26649: Move (data, commonTests, tools, utils) from campaigns to UI directory  (by @nesrineabdmouleh)
    - #26533: Moved ContextMocker from tests-legacy/ to tests/ (by @Progi1984)
    - #26520: Fix select hidden checkboxes on customers and localization pages (by @boubkerbribri)
    - #26214: Functional tests - Refacto Advanced Parameters tests (by @nesrineabdmouleh)
    - #26496: Upgrade playwright to v1.16.2 (by @boubkerbribri)
    - #25693: Update test scripts on package.json (by @boubkerbribri)
    - #26495: Fix name of screenshot on sanity workflow (by @boubkerbribri)
    - #26445: Functional  tests - Add new test to check 'Carriers tab from view order page' (by @nesrineabdmouleh)
    - #26423: Functional tests - Add new test 'Check documents tab on view order page' (by @nesrineabdmouleh)
    - #26443: Fix categories and cart rules tests (by @boubkerbribri)
    - #26437: Refactor controller tests (by @jolelievre)
    - #26416: Not using href as a selector on order history page (by @boubkerbribri)
    - #26295: Functional tests - Fix and add some steps to ' Customer block & Product block' on create order page BO (by @nesrineabdmouleh)
    - #26367: Fix FO addresses tests (by @boubkerbribri)
    - #26217: Sanity Tests - Refacto all sanity tests (by @nesrineabdmouleh)
    - #25979: Add script to generate .md files with jsdoc (by @boubkerbribri)
    - #26228: Fix message displayed when enabling fuzzy search (by @boubkerbribri)
    - #26124: Functional tests - Refacto Shop Parameters > Product Settings tests (by @nesrineabdmouleh)
    - #26165: Functional Tests - Refacto Shop Parameters > Contact tests (by @nesrineabdmouleh)
    - #26163: Functional Tests - Refacto  Shop Parameters > Customer Settings tests (by @nesrineabdmouleh)
    - #26190: Functional tests - Refacto Shop Parameters > Traffic & SEO - Search tests (by @nesrineabdmouleh)
    - #26148: Delete module catalog page, and add test checking its access (by @boubkerbribri)
    - #26122: Revert changes on the smtp server to fix nightly tests (by @boubkerbribri)
    - #26116: Functional tests - Refacto Shop Parameters > Order Settings tests (by @nesrineabdmouleh)
    - #26120: Fix selectors for Sql manager page (by @boubkerbribri)
    - #26112: Functional tests - Refacto shop parameters general (by @nesrineabdmouleh)
    - #26110: Fix selectors for db backup page (by @boubkerbribri)
    - #26079: Fixing titles, steps and comments on FO tests (by @boubkerbribri)
    - #25988: Removed phake/phake as dev dependency (by @Progi1984)
    - #25953: Use playwright@1.13.1 for UI tests (by @boubkerbribri)
    - #25993: Add jsDoc on tests helpers (by @boubkerbribri)
    - #25965: Update test to get growl message after quick editing customer (by @boubkerbribri)
    - #25830: Install "Products comments" module when its not to fix test (by @boubkerbribri)
    - #25767: Fix date to filter with on cutomers and logs tests (by @boubkerbribri)
    - #25721: Removed Gamification module in tests (by @Progi1984)
    - #25017: Upgrade mochawesome version and fix merge reports (by @boubkerbribri)
    - #25580: Add class to identify pagination block on product page (by @boubkerbribri)
    - #25285: Add search for newsletter module before going to module configuration on tests (by @boubkerbribri)
    - #25238: Migrated some Legacy Tests to Integration/Unit Tests (by @Progi1984)
    - #25146: Separate functional tests to BO and FO and Add regression campaign to the actual run (by @boubkerbribri)
    - #25196: Removed phpunit-controllers tests (by @Progi1984)
    - #25127: Migrated some Legacy Tests to Integration/Unit Tests (by @Progi1984)
    - #24188: Migrated some Legacy Tests to Integration/Unit Tests (by @Progi1984)
    - #24981: Fix order status test after deleting status added by addons modules (by @boubkerbribri)
    - #24879: Update JS documentation for international pages (by @nesrineabdmouleh)
    - #24623: Refacto `TinyMceMaxLengthValidator` (by @PululuK)
    - #24618: Improve `Tools` protocol check (by @PululuK)
    - #24592: Add `DbQueryCore` phpunit test  (by @PululuK)
    - #24396: Fix nightly tests on develop for 07-05-2021 (by @boubkerbribri)
    - #24121: Migrated some Legacy Tests to Unit Tests (by @Progi1984)