Skip to content

Releases: Smile-SA/elasticsuite

2.11.19-rc1

22 Apr 13:13
8bc4147

Choose a tag to compare

2.11.19-rc1 Pre-release
Pre-release

📦 Features

  • 💎 [InstantSearch] Highlighting of results (products, terms) by @rbayet
  • 💎 [LayeredNavigation] Add discount percentage filter by @vahonc
  • [Tracker] Add child simple order item of configurable product by @rbayet in #3819

🐛 Fixes

💻 Technical

  • 💎 [BehavioralAutocomplete] Better performance for trending queries by @rbayet
  • [Catalog] Allow override filter type for specific attributes by @vahonc in #3821
  • [Catalog] Change the visibility of the private methods for Decimal filter by @vahonc in #3824
  • [Catalog] Support percent as UNIT in attribute property display_pattern (slider) by @vahonc in #3825
  • 💎 [Compat] 2.4.9/Symfony 7.x compat by @rbayet
  • [Core] Stemming override rule for Swedish (SE) by @rbayet in #3818
  • [Core] Introducing support for highlighting results by @rbayet in #3827
  • [Tracker] 2.4.9/Symfony 7.x compat by @rbayet in #3820

Full Changelog: 2.11.18.1...2.11.19-rc1

2.10.34-rc1

22 Apr 13:13
c7dde6d

Choose a tag to compare

2.10.34-rc1 Pre-release
Pre-release

📦 Features

  • 💎 [InstantSearch] Highlighting of results (products, terms) by @rbayet
  • 💎 [LayeredNavigation] Add discount percentage filter by @vahonc
  • [Tracker] Add child simple order item of configurable product by @rbayet in #3819

🐛 Fixes

  • [Core] Fix #3822, search placeholder german translation by @vahonc in #3823
  • [Core] Adding missing Search Relevance Config controller by @rbayet in #3829

💻 Technical

  • 💎 [BehavioralAutocomplete] Better performance for trending queries by @rbayet
  • [Catalog] Allow override filter type for specific attributes by @vahonc in #3821
  • [Catalog] Change the visibility of the private methods for Decimal filter by @vahonc in #3824
  • [Catalog] Support percent as UNIT in attribute property display_pattern (slider) by @vahonc in #3825
  • [Core] Stemming override rule for Swedish (SE) by @rbayet in #3818
  • [Core] Introducing support for highlighting results by @rbayet in #3827

Full Changelog: 2.10.33.1...2.10.34-rc1

2.11.18.1

26 Mar 07:45

Choose a tag to compare

Maintenance release

Both Elasticsuite and Magento native search features rely on the opensearch-project/opensearch-php package which provides an Elasticsearch/OpenSearch PHP client.

As Magento requirement for that package was less restrictive than Elasticsuite's latest 2.11.x versions, trying to install Elasticsuite's for the first time with composer require smile/elasticsuite ~2.11.0 on a Magento 2.4.8/2.4.8-pX version would

  • actually install Elasticsuite version 2.11.10 (published in december 2024 !)
  • force one to retry installing Elasticsuite using the composer require option --with-all-dependencies to allow composer to downgrade the opensearch-project/opensearch-php package to a version meeting Elasticsuite's stricter requirements

This release relaxes Elasticsuite's requirement on opensearch-project/opensearch-php versions and so should greatly reduce the need to use the --with-all-dependencies for installing Elasticsuite for the first time to the cases where a known buggy (performance wise) version of opensearch-project/opensearch-php is already installed (versions 2.4.0, 2.4.1 and 2.4.2).

🐛 Fixes

  • 💎 [Beacon] Fix reading the client ID by @rbayet
  • [Core] Restrict min score to real fulltext queries/containers by @rbayet in #3814

💻 Technical

Full Changelog: 2.11.18...2.11.18.1

2.10.33.1

26 Mar 07:44
ee3b942

Choose a tag to compare

Maintenance release

🐛 Fixes

  • 💎 [Beacon] Fix reading the client ID by @rbayet
  • [Core] Restrict min score to real fulltext queries/containers by @rbayet in #3814

💻 Technical

Full Changelog: 2.10.33...2.10.33.1

2.11.18

19 Mar 10:16

Choose a tag to compare

🏆 Main features

Catalog: Tool to migrate product positions in categories

Elasticsuite uses a specific database table to contain manual product positions in categories.
The logic being that

  • Elasticsuite's optimizers feature should relieve you from the cumbersome task of manually merchandise your products in all categories for the most part
  • but then you still had the ability to assign manual positions there and there

Up to now, when migrating to Elasticsuite, if you really wanted to keep some legacy manual product positions in some categories, you had to manually migrate the data from the native Magento database table catalog_category_product to Elasticsuite's smile_virtualcategory_catalog_category_product_position with a custom data setup or executing SQL queries in your database.

This release introduces the interactive CLI command elasticsuite:category-position:migrate which allows you to migrate product positions either for specific categories (or all if you really feel like it, even though we don't recommend it).

/var/www/html $ php bin/magento elasticsuite:category-position:migrate --help
Description:
  Migrate category product positions to ElasticSuite table.

Usage:
  elasticsuite:category-position:migrate [options]

Options:
      --category=CATEGORY  Category ID to migrate (omit to process all categories).
      --dry-run            Dry-run: preview only (no database changes will be made).
  -h, --help               Display help for the given command. When no command is given display help for the list command
  -q, --quiet              Do not output any message
  -V, --version            Display this application version
      --ansi|--no-ansi     Force (or disable --no-ansi) ANSI output
  -n, --no-interaction     Do not ask any interactive question
  -v|vv|vvv, --verbose     Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

As Elasticsuite only supports strictly positive positions and to be able to only pick some positions, the command will ask you how to deal with

  • negative positions
  • zero positions
  • positive positions
/var/www/html $ php bin/magento elasticsuite:category-position:migrate --dry-run
Transfer negative positions to positive and contiguous ones (y/n) y
Transfer zero positions? (y/n) n
Transfer positive positions? (y/n) y

We encourage you to use the "dry run" mode and to test on a select few categories.

💎 Product recommender: option to add parent grouped product(s) to Upsell recommendations

Elasticsuite already provides an option to keep the native Magento behavior of automatically adding the parent bundle products to the manual Upsell recommendations of a product.

This release introduces the Stores > Configuration > Elasticsuite > Recommender > Upsell products > Systematically add parent grouped products to manually selected upsell products setting that will allow you to do that for the parent grouped product(s) of the product you want Upsell recommendations for.

📦 Features

  • [Catalog] Feature #3464, migrate legacy product positions in categories to ElasticSuite by @vahonc in #3698
  • 💎 [Explain] Behavioral Boosts score detail: extract metrics value and show on tooltip by @vahonc
  • 💎 [Recommender] Upsell: add ability to automatically add parent grouped products as well as bundle by @rbayet

🐛 Fixes

  • 💎 [Metapackages][GoogleAnalytics] Removing GA module from magento/CE metapackages by @rbayet
  • 💎 [Explain] Fix null coalesce on translation string generating error by @vahonc
  • [Swatch] Fix error when value is not an array fixes #3800 by @PierreGauthier in #3806
  • [VirtualCategories] Fixes #3055 Router vs subcategories w/ same url_key by @rbayet in #3802

💻 Technical

  • [Core] Extra unit tests/deprecation fixes by @rbayet in #3795 and #3796
  • 💎 [Explain] Differenciate visually highlight and field raw value if multiple values by @rbayet

Full Changelog: 2.11.17.1...2.11.18

2.10.33

19 Mar 10:16
e36ff03

Choose a tag to compare

🏆 Main features

Catalog: Tool to migrate product positions in categories

Elasticsuite uses a specific database table to contain manual product positions in categories.
The logic being that

  • Elasticsuite's optimizers feature should relieve you from the cumbersome task of manually merchandise your products in all categories for the most part
  • but then you still had the ability to assign manual positions there and there

Up to now, when migrating to Elasticsuite, if you really wanted to keep some legacy manual product positions in some categories, you had to manually migrate the data from the native Magento database table catalog_category_product to Elasticsuite's smile_virtualcategory_catalog_category_product_position with a custom data setup or executing SQL queries in your database.

This release introduces the interactive CLI command elasticsuite:category-position:migrate which allows you to migrate product positions either for specific categories (or all if you really feel like it, even though we don't recommend it).

/var/www/html $ php bin/magento elasticsuite:category-position:migrate --help
Description:
  Migrate category product positions to ElasticSuite table.

Usage:
  elasticsuite:category-position:migrate [options]

Options:
      --category=CATEGORY  Category ID to migrate (omit to process all categories).
      --dry-run            Dry-run: preview only (no database changes will be made).
  -h, --help               Display help for the given command. When no command is given display help for the list command
  -q, --quiet              Do not output any message
  -V, --version            Display this application version
      --ansi|--no-ansi     Force (or disable --no-ansi) ANSI output
  -n, --no-interaction     Do not ask any interactive question
  -v|vv|vvv, --verbose     Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

As Elasticsuite only supports strictly positive positions and to be able to only pick some positions, the command will ask you how to deal with

  • negative positions
  • zero positions
  • positive positions
/var/www/html $ php bin/magento elasticsuite:category-position:migrate --dry-run
Transfer negative positions to positive and contiguous ones (y/n) y
Transfer zero positions? (y/n) n
Transfer positive positions? (y/n) y

We encourage you to use the "dry run" mode and to test on a select few categories.

💎 Product recommender: option to add parent grouped product(s) to Upsell recommendations

Elasticsuite already provides an option to keep the native Magento behavior of automatically adding the parent bundle products to the manual Upsell recommendations of a product.

This release introduces the Stores > Configuration > Elasticsuite > Recommender > Upsell products > Systematically add parent grouped products to manually selected upsell products setting that will allow you to do that for the parent grouped product(s) of the product you want Upsell recommendations for.

📦 Features

  • [Catalog] Feature #3464, migrate legacy product positions in categories to ElasticSuite by @vahonc in #3698
  • 💎 [Explain] Behavioral Boosts score detail: extract metrics value and show on tooltip by @vahonc
  • 💎 [Recommender] Upsell: add ability to automatically add parent grouped products as well as bundle by @rbayet

🐛 Fixes

  • 💎 [Metapackages][GoogleAnalytics] Removing GA module from magento/CE metapackages by @rbayet
  • 💎 [Explain] Fix null coalesce on translation string generating error by @vahonc
  • [Swatch] Fix error when value is not an array fixes #3800 by @PierreGauthier in #3806
  • [VirtualCategories] Fixes #3055 Router vs subcategories w/ same url_key by @rbayet in #3802

💻 Technical

  • [Core] Extra unit tests/deprecation fixes by @rbayet in #3796
  • 💎 [Explain] Differenciate visually highlight and field raw value if multiple values by @rbayet

Full Changelog: 2.10.32.1...2.10.33

2.11.17.1

17 Feb 14:29

Choose a tag to compare

Maintenance release

💻 Technical

  • [Catalog] Prevent XSS in the filter's search box by @saltomorales in #3793
  • [Core] Adding extra unit tests by @rbayet in #3792
  • [Thesaurus] Do not always enforce SPELLING_TYPE_EXACT for rewritten queries by @rbayet in #3791

Full Changelog: 2.11.17...2.11.17.1

2.10.32.1

17 Feb 14:29
8e1b140

Choose a tag to compare

Maintenance release

💻 Technical

  • [Catalog] Prevent XSS in the filter's search box (2.10.x) by @saltomorales in #3794
  • [Core] Adding extra unit tests by @rbayet in #3792
  • [Thesaurus] Do not always enforce SPELLING_TYPE_EXACT for rewritten queries by @rbayet in #3791

Full Changelog: 2.10.32...2.10.32.1

2.11.17

11 Feb 16:07

Choose a tag to compare

🏆 Main features

💎 Amasty compatibility module

The new Elasticsuite Premium package smile/module-elasticsuite-amasty-compatibility (module Smile_ElasticsuiteAmastyCompatibility) provides seamless compatibility with the following Amasty modules (and their own Hyvä compatibility modules)

  • Shop by Brand module (amasty/module-shop-by-brand and amasty/module-shop-by-brand-hyva-compatibility)
  • Quick Order module (amasty/module-quick-order and amasty/module-quick-order-hyva)
  • Ajax Infinite Scroll module (amasty/ajax-scroll and amasty/module-scroll-hyva)

It handles automatically the presence of any of those Amasty feature modules.

As it can also handle the total absence of those modules without any side effect, it is already part of our Elasticsuite Premium metapackages smile/elasticsuite-premium-commerce and smile/elasticsuite-premium-magento.
Performing a composer upgrade -w [your-elasticsuite-premium-metapackage] will thus automatically install that new package / module.

💎 Instant Search: better support of special prices, multiple currencies and displaying prices including/excluding tax

The Elasticsuite Premium Instant Search module now displays the original price of products having a special price :
image

It also handles Magento stores with multiple currencies configured :
image

Based on your price input and tax display configurations, for instance if the product prices are entered excluding tax in Magento admin and are supposed to be displayed including tax (or including and excluding tax), the Instant Search products price rendering will adapt accordingly :
image

📦 Features

  • 💎 [AmastyCompat] Add module to metapackages by @rbayet
  • [Healthcheck] Feature #3769, introduce invalid tracker events check by @vahonc
  • 💎 [InstantSearch] Display original price if discount price by @rbayet
  • 💎 [InstantSearch] Support multi-currencies stores by @rbayet
  • 💎 [InstantSearch][Hyva] Support multi-currencies stores by @rbayet
  • 💎 [InstantSearch] Display prices incl. or excl. tax according to store configuration by @rbayet
  • [Thesaurus] Fix #3768, remove warning if term repeated only in right hand side of expansions by @vahonc in #3771
  • 💎 [Virtual Attribute] Add "is one of" operator by @PierreGauthier

🐛 Fixes

💻 Technical

  • 💎 [Analytics][AB Campaign] Fix #396, update position of the AB Testing Campaign block by @vahonc
  • [Analytics] Optimization of KPI report(s) by @rbayet in #3753
  • [Analytics][Dashboard] Update positions of the blocks by @vahonc in #3759
  • 💎 [CascadeSearch] Add missing db_schema_whitelist.json by @rbayet
  • [Core] Adding missing db_schema_whitelist.json files by @rbayet in #3764
  • [Core] Add missing db_schema_whitelist.json for db_schema.xml managed tables (2.10.x) by @rbayet in #3762
  • [Core] Support translating install options for opensearch to elasticsuite config by @rbayet in #3788
  • [Cosmetic] Fix #3770, add a new brand identity logo by @vahonc in #3776
  • 💎 [Explain] Updated thesaurus index constructor by @rbayet
  • 💎 [InstantSearch] Remove lazy loading of ACP component by @rbayet
  • 💎 [MetaPackages] Changing dependency syntax to self.version by @rbayet
  • 💎 [NeuralSearch] Add missing db_schema_whitelist.json by @rbayet

Full Changelog: 2.11.16.1...2.11.17

2.10.32

11 Feb 16:06
0c6e0fc

Choose a tag to compare

🏆 Main features

💎 Amasty compatibility module

The new Elasticsuite Premium package smile/module-elasticsuite-amasty-compatibility (module Smile_ElasticsuiteAmastyCompatibility) provides seamless compatibility with the following Amasty modules (and their own Hyvä compatibility modules)

  • Shop by Brand module (amasty/module-shop-by-brand and amasty/module-shop-by-brand-hyva-compatibility)
  • Quick Order module (amasty/module-quick-order and amasty/module-quick-order-hyva)
  • Ajax Infinite Scroll module (amasty/ajax-scroll and amasty/module-scroll-hyva)

It handles automatically the presence of any of those Amasty feature modules.

As it can also handle the total absence of those modules without any side effect, it is already part of our Elasticsuite Premium metapackages smile/elasticsuite-premium-commerce and smile/elasticsuite-premium-magento.
Performing a composer upgrade -w [your-elasticsuite-premium-metapackage] will thus automatically install that new package / module.

💎 Instant Search: better support of special prices, multiple currencies and displaying prices including/excluding tax

The Elasticsuite Premium Instant Search module now displays the original price of products having a special price :
image

It also handles Magento stores with multiple currencies configured :
image

Based on your price input and tax display configurations, for instance if the product prices are entered excluding tax in Magento admin and are supposed to be displayed including tax (or including and excluding tax), the Instant Search products price rendering will adapt accordingly :
image

📦 Features

  • 💎 [AmastyCompat] Add module to metapackages by @rbayet
  • [Healthcheck] Feature #3769, introduce invalid tracker events check by @vahonc in #3782
  • 💎 [InstantSearch] Display original price if discount price by @rbayet
  • 💎 [InstantSearch] Support multi-currencies stores by @rbayet
  • 💎 [InstantSearch][Hyva] Support multi-currencies stores by @rbayet
  • 💎 [InstantSearch] Display prices incl. or excl. tax according to store configuration by @rbayet
  • [Thesaurus] Fix #3768, remove warning if term repeated only in right hand side of expansions by @vahonc in #3771
  • 💎 [Virtual Attribute] Add "is one of" operator by @PierreGauthier

🐛 Fixes

💻 Technical

  • 💎 [Analytics][AB Campaign] Fix #396, update position of the AB Testing Campaign block by @vahonc
  • [Analytics] Optimization of KPI report(s) by @rbayet in #3753
  • [Analytics][Dashboard] Update positions of the blocks by @vahonc in #3759
  • 💎 [CascadeSearch] Add missing db_schema_whitelist.json by @rbayet
  • [Core] Add missing db_schema_whitelist.json for db_schema.xml managed tables (2.10.x) by @rbayet in #3762
  • [Core] Support translating install options for opensearch to elasticsuite config by @rbayet in #3788
  • [Cosmetic] Fix #3770, add a new brand identity logo by @vahonc in #3776
  • 💎 [Explain] Updated thesaurus index constructor by @rbayet
  • 💎 [InstantSearch] Remove lazy loading of ACP component by @rbayet
  • 💎 [MetaPackages] Changing dependency syntax to self.version by @rbayet

Full Changelog: 2.10.31.1...2.10.32