Releases: Smile-SA/elasticsuite
2.10.15.1
2.11.1
📦 Features
In this release we introduced various improvements for relevance and UX (#2886) :
Boost on "spans" (aka boost on beginning of the fields)
We introduced a mechanism allowing to boost results that contains the search terms in the beginning of their values.
This feature is disabled by default and has to be enabled in the Elasticsuite > Relevance Configuration > Span Match Configuration.
Then it must be enabled on the targeted attributes (most of time, "name" will be the only targeted).
Eg :
- without this feature, customers are searching for "laptop" but in result page they view first "Bag for laptop","Cleaning set for laptop"
- with this feature enabled on "name" attribute : the products having a name beginning with "Laptop" will have an higher score
Allow to disable "norms"
By default with Elasticsearch, the score of a given field depends on the field length. You can now disable this on attribute level, in Stores > Attributes > Product > Attribute Edit page > Storefront properties > Advanced Elasticsuite Configuration > Disable norms : Yes
Eg :
- with norms enabled (default behavior) on the "name" field, a customer search for "dress", a product named "red dress" will have an higher score than a product named "red dress with long sleeves" (for the "name" field).
- with norms disabled : these 2 products will have the same score for the "name" field.
Attribute configuration screen refactoring
Due to huge number of parameters in the Stores > Attributes > Product > Attribute Edit page > Storefront properties we decided to split the search related configurations into three different fieldsets :
- Search configuration
- Layered navigation configuration
- Advanced Elasticsuite configuration
🐛 Fixes
- Fix cron error "Deprecation functionality: creation of dynamic property" by @Shiriaev in #2875
- Prevent thesaurus to apply on a query that already contains the expan… by @romainruaud in #2883
- Fix #2862, add 'category_uid' to the aggregation in the GraphQl response by @vahonc in #2884
- Enhanced reference fields (sku) matching when fuzzy searching by @rbayet in #2881
- Fix #2873, DateTime exception for ElasticSuite Indices by @vahonc in #2885
- Fix numerical-only synonims by @udovicic in #2894
- Feature #2882, allow to choose 'score_mode' and 'boost_mode' for optimizers from admin by @vahonc in #2889
- Fix setup when using table prefix by @romainruaud in #2902
- Relevance improvement by @romainruaud in #2886
- Remove erratic plugin of Magento_InventoryCatalog by @romainruaud in #2903
- Fix #2892 Optimizer schema by @romainruaud in #2904
- Refactoring the Attribute configuration options. by @romainruaud in #2905
- Refactoring the thesaurus wordings. by @romainruaud in #2906
New Contributors
Full Changelog: 2.11.0...2.11.1
2.10.15
📦 Features
In this release we introduced various improvements for relevance and UX (#2886) :
Boost on "spans" (aka boost on beginning of the fields)
We introduced a mechanism allowing to boost results that contains the search terms in the beginning of their values.
This feature is disabled by default and has to be enabled in the Elasticsuite > Relevance Configuration > Span Match Configuration.
Then it must be enabled on the targeted attributes (most of time, "name" will be the only targeted).
Eg :
- without this feature, customers are searching for "laptop" but in result page they view first "Bag for laptop","Cleaning set for laptop"
- with this feature enabled on "name" attribute : the products having a name beginning with "Laptop" will have an higher score
Allow to disable "norms"
By default with Elasticsearch, the score of a given field depends on the field length. You can now disable this on attribute level, in Stores > Attributes > Product > Attribute Edit page > Storefront properties > Advanced Elasticsuite Configuration > Disable norms : Yes
Eg :
- with norms enabled (default behavior) on the "name" field, a customer search for "dress", a product named "red dress" will have an higher score than a product named "red dress with long sleeves" (for the "name" field).
- with norms disabled : these 2 products will have the same score for the "name" field.
Attribute configuration screen refactoring
Due to huge number of parameters in the Stores > Attributes > Product > Attribute Edit page > Storefront properties we decided to split the search related configurations into three different fieldsets :
- Search configuration
- Layered navigation configuration
- Advanced Elasticsuite configuration
🐛 Fixes
- Prevent thesaurus to apply on a query that already contains the expanded query by @romainruaud in #2883
- Fix #2862, add 'category_uid' to the aggregation in the GraphQl response by @vahonc in #2884
- Enhanced reference fields (sku) matching when fuzzy searching by @rbayet in #2881
- Fix numerical-only synonims by @udovicic in #2894
- Feature #2882, allow to choose 'score_mode' and 'boost_mode' for optimizers from admin by @vahonc in #2889
- Fix setup when using table prefix by @romainruaud in #2902
- Relevance improvement by @romainruaud in #2886
New Contributors
Full Changelog: 2.10.14...2.10.15
2.11.0
📦 What's Changed
In this new major version we added compatibility with :
- Magento 2.4.6
- Elasticsearch 8.x
- Opensearch 2.x
So if you plan to migrate your project to Magento 2.4.6 you should use this release and the upcoming releases on the 2.11.x branch.
🐛 Fixes
- Make jQuery ajax request for autocomplete cacheable by @lumnn in #2467
- Fixed typo in variable name by @prog08 in #2851
- Fixes #2130 Convert Schema Scripts to DB Schema XML by @pykettk in #2148
- WIP : ES8 compatibility by @romainruaud in #2852
- Feature magento 246 by @romainruaud in #2854
- IsDiscount for configurable and grouped products with optimized performance by @Bashev in #2677
- [Layered Attribut] #1203199 - Add customer group in is_discount filter by @PierreGauthier in #2855
- Fix issue #2856: Pagination, sorting and limit on virtual category tree by @Bashev in #2857
- [Layered Attribut] #1203199 - Fix Interface Typing by @PierreGauthier in #2858
- [Layered Attribut] #1203199 - Fix Interface Typing by @PierreGauthier in #2859
- [Virtual Category] Unset virtual category root before setting it #1203860 #2829 by @PierreGauthier in #2860
- Fix rendering issue with multiple slider filters by @frank-bokdam in #2863
- Fix issue #2853 - Add additional logic to map parent and child ids. by @Bashev in #2865
- Add missing propertymapping for eav attribute creation/updates by @brosenberger in #2804
- Use coverage modifier in adminhtml by @romainruaud in #2867
- Set proper key for catalogsearch_fulltext index. by @romainruaud in #2868
- Fixing Datetime issues by @romainruaud in #2869
New Contributors
- @prog08 made their first contribution in #2851
- @pykettk made their first contribution in #2148
- @frank-bokdam made their first contribution in #2863
- @brosenberger made their first contribution in #2804
Full Changelog: 2.10.13.3...2.11.0
2.10.14
📦 What's Changed
- Fixed typo in variable name by @prog08 in #2851
- IsDiscount for configurable and grouped products with optimized performance by @Bashev in #2677
- [Layered Attribut] #1203199 - Add customer group in is_discount filter by @PierreGauthier in #2855
- Fix issue #2856: Pagination, sorting and limit on virtual category tree by @Bashev in #2857
- [Layered Attribut] #1203199 - Fix Interface Typing by @PierreGauthier in #2858
- [Layered Attribut] #1203199 - Fix Interface Typing by @PierreGauthier in #2859
- [Virtual Category] Unset virtual category root before setting it #1203860 #2829 by @PierreGauthier in #2860
- Fix rendering issue with multiple slider filters by @frank-bokdam in #2863
- Fix issue #2853 - Add additional logic to map parent and child ids. by @Bashev in #2865
- Add missing propertymapping for eav attribute creation/updates by @brosenberger in #2804
- Use coverage modifier in adminhtml by @romainruaud in #2867
- Set proper key for catalogsearch_fulltext index. by @romainruaud in #2868
New Contributors
- @prog08 made their first contribution in #2851
- @frank-bokdam made their first contribution in #2863
- @brosenberger made their first contribution in #2804
Full Changelog: 2.10.13.3...2.10.14
2.10.13.3
🐛 Fixes
- [Search Merchandizing] Filter boost and use search merchandising in autocomplete by @PierreGauthier in #2837
- [Optimizer] Sort by boost weight in admin grid by @PierreGauthier in #2844
- [Search Merchandizing] Set search query to load optimizers by @PierreGauthier in #2845
- Prevent adding null queryFilters on ProductsListPlugin by @pomppa in #2848
New Contributors
Full Changelog: 2.10.13.2...2.10.13.3
2.10.13.2
🐛 Fixes
Full Changelog: 2.10.13.1...2.10.13.2
2.10.13.1
📦 Improvements
- Adding support of extended_bounds for date_histogram by @romainruaud in #2833
Full Changelog: 2.10.13...2.10.13.1
2.10.13
📦 Features & Improvements
In this release you will find a new Back-Office screen allowing you to test the Elasticsearch analyzers. This is a more convenient way to troubleshoot Elasticsearch relevance rather than having to connect directly to the server. (#2794 by @vahonc )
You can now also index child products SKUs separately and prevent them from being merged into the parent product. This behavior was a source of misunderstandings for merchants when building SKU-based widgets. You can now ensure children SKUs are not merged by switching it to Yes throught Stores > Configuration > Elasticsuite > Catalog Search > Enable indexing child product SKU in dedicated subfield (#2753 by @vahonc )
We also improved how the optimizers list is retrieved when building their preview. There was a performance issue if you were having a lot of boosts. Beware, this could break backward-compatibility if you have custom developments extending/rewriting the ApplierList class (#2790 by @romainruaud )
🐛 Fixes
- #2737, WIP: Allow indexing attribute value with validate-number by @vahonc in #2750
- Fix #2772 by removing magento inventory plugin. by @romainruaud in #2774
- #2757, Add frontend_input type of attributes in GraphQl response by @vahonc in #2764
- Added some isset checks for array keys being used in GraphQl by @barbazul in #2761
- Fix exception on PHP 8.1 by @peterjaap in #2779
- Fix #2771 where products having a position at global level but no pos… by @romainruaud in #2793
- Fix search.max_buckets default value by @PierreGauthier in #2783
- #2769, Update fetching the status attribute by @vahonc in #2787
- Add missing plurals in french stemmer by @PierreGauthier in #2799
- Add the option to configure the maximum number of request retries for the elasticsearch client by @gusdemayo in #2802
- Fix thesaurus containing numerical terms (Eg : EAN13) by @romainruaud in #2814
- Fix #1951 issue by using proper date format from admin locale. by @romainruaud in #2816
- Fix #1266 by making the term vectors on all shards and search field. by @romainruaud in #2812
- Fixes to preview and sorting in admin if prices are with too many signs. by @Bashev in #2691
- Use 2x image size to prevent blurry images in search dropdown by @vovayatsyuk in #2821
- #2810, Fix using 'category_ids' as condtion for virtual category rule on widget collection by @vahonc in #2820
- Replace deprecated .bind method with .on (jQuery) by @vovayatsyuk in #2819
- Fix a bug when previewing a search query not existing. by @romainruaud in #2827
- #2765 WIP: jQuery 3 stability and compatibility enhancement by @vahonc in #2822
- Fix #2765 by replacing bind event on jquery touchpunch. by @romainruaud in #2830
New Contributors
- @barbazul made their first contribution in #2761
- @Bashev made their first contribution in #2691
- @vovayatsyuk made their first contribution in #2821
Full Changelog: 2.10.12.1...2.10.13
2.10.12.1
🐛 Fixes
- Move the routing guard function after product rewrite. by @romainruaud in #2748
- Do not compute sub-categories aggregations when category filter is di… by @romainruaud in #2755
- Fix #2630 Adding greek lowercase filter by @romainruaud in #2756
Full Changelog: 2.10.12...2.10.12.1