🏆 Main features
Health-checks feature
We're introducing in this release a new screen in Elasticsuite > System > Healthcheck where are re-located some previous admin system notification messages: invalid configuration for shards and replicas, notifications about ghost indices, etc.
For the time being, it is restricted to some of the basic technical health checks but it will grow from there to include more tracker related or functional health checks.
A decoration mechanism in the admin menu helps you know immediately how many checks are currently failing.
💎 Introducing advanced analysis module and word decompounding for germanic languages
We're introducing a new Elasticsuite Premium module/package smile/module-elasticsuite-advanced-analysis that brings with it support for Hyphenation Word Decompounding which will be useful for germanic languages in order to avoid having to create many synonyms rules between words in their compound and separated forms.
It has been tested for German and Dutch successfully but in a limited scope and it will require on your end to do some fine tuning and provide and deploy data files on your OpenSearch / Elasticsearch cluster.
This mechanism relies on new settings available at the store scope in Elasticsuite > Analyzers Settings > Hyphenation Words decompounder configuration and requires essentially two things
- a XML file containing your language hyphenation patterns (how a word processor is allowed to break your language compound words when it needs to justify text)
- a dictionary that will act has a white list of words allowed to be generated by this hyphenation mechanism: this can be provided directly in admin as a list of words, or as a flat text file to be deployed on your cluster
When enabled, the word decompounder is injected into the text analyzers standard, standard_edge_ngram, shingle before (or after depending in your configuration) the stemmer.
Due to licensing consideration, we cannot provide you directly with adequate data files to configuration the word decompounder, but they are available online
- for Dutch and German, we've relied on OFFO hyphenation patterns provided as a link to a offo-hyphenation_v1.2.zip archive in Elasticsearch online documentation.
- for the Dutch dictionary, good results were obtained using the "OpenTaal-210G-basis-gekeurd" dictionary from OpenTaal.
Decompounding the Dutch word "klauwverzorging" and "afrasteringspalen"
Decompounding the German word "Kaffeetassenwärmer"
📦 Features
- 💎 [AdvancedAnalysis] Module initialization. by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#312
- [Analytics] Feature #3535, add Analytics filters configuration by @vahonc in #3537
- [Core] Feature #3432, add the Healthcheck Page by @vahonc in #3450
- [Core] Add Estonian stemmer by @romainruaud in #3484
- [Core] Adding fine-tuning options for the autocompletion by @rbayet in #3487
- [Indices] Feature #3453: Add detection for closed indices by @vahonc in #3472
- [Indices] Feature #3452, add number of primary shards and replicas in the Indices grid by @vahonc in #3477
- [Tracker] Allow ignoring bots generated tracker hits by @rbayet in #3480
- [Tracker] Feature #3489, change the default tracker strategy to REST/API mode by @vahonc in #3502
- [Catalog][Tracker] Feature #3451, allow to track the redirected search terms by @vahonc in #3503
💻 Technical
- [Analytics] i18n for new filters related settings by @rbayet in #3539
- 💎 [CascadeSearch] Update cascade search UX by @romainruaud in Elastic-Suite/magento2-elasticsuite-premium#314
- [CatalogLayer] Added default attribute label by @mhaagen85 in #3444
- [CatalogSearch] Forcefull add mview trigger removed in 2.4.6 by @rbayet in #3514
- [Core] ProductMetadata/ComposerInformation rework by @rbayet in #3494
- [Core] Adding noop token filters around stemmer by @rbayet in #3510
- [Core] add column type in db_schema.xml, required from magento 2.4.8-beta1 by @Bashev in #3520
- [Core] Ensure Opensearch 2.4.0 will not be used until they fix memory issue by @romainruaud in #3527
- [Healthchecks] tweaks and i18n by @rbayet in #3485
- [Healtchecks] Composer version mismatch check (for OS and ESP packages) by @rbayet in #3495
- [Healthchecks] Hyva compatibility modules check by @rbayet in #3497
- [Healthchecks] Feature #3488, add AbstractCheck class and code refactoring by @vahonc in #3516
- [Healthchecks] Replaced success/warning by passed/failed by @rbayet in #3532
- [HealthChecks] Feature #3490, add search engine config check by @vahonc in #3534
- [HealthChecks] Admin nav. menu decoration by number of warnings by @rbayet in #3492
- 💎 [Healthchecks] Composer mismatch packages declaration by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#308
- 💎 [Healthchecks] Hyva compatibility modules check (esp side) by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#309
- 💎 [InstantSearch] Ensure Instant Search is using the new settings and objects by @romainruaud in Elastic-Suite/magento2-elasticsuite-premium#302
- 💎 [InstantSearch] Handle total lack of indexed price structure by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#319
- 💎 [NeuralSearch] Ensure Neural search remains compatible with Opensearch client >=2.4.0 by @romainruaud in Elastic-Suite/magento2-elasticsuite-premium#317
- 💎 [NeuralSearch] Do not add knn fields into optimizer percolator index by @romainruaud in Elastic-Suite/magento2-elasticsuite-premium#318
- [Tracker] Adding additional Facebook bots by @rbayet in #3482
- [Tools] CI/CD phpstan require with --no-update by @rbayet in #3512
🐛 Fixes
- [Admin] Do not apply the currentcategory filter in admin. by @romainruaud in #3515
- [Analytics] Date picker vs switchers (store, customer group, company) by @rbayet in #3475
- [Analytics] Ignore filtered search pages for avg result count by @rbayet in #3478
- [Analytics] Ignore non-first page for avg. count/0 result pages by @rbayet in #3483
- 💎 [ConfigurableProduct] Avoid GraphQL exceptions when no configurable products by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#310
- [Core] Fixing namespace in some unit tests by @rbayet in #3511
- 💎 [FacetRecommender] Fixing display on all standard page layouts by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#305
- 💎 [GA] Fix result count type by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#307
- 💎 [NeuralSearch] Fixing module dependencies by @rbayet in Elastic-Suite/magento2-elasticsuite-premium#320
- [PageBuilder] Fix #3493, apply a negation to the category_ids condition by @vahonc in #3501
- [Tracker] Fixes #3500 loss of X-Magento-Vary cookie by @rbayet in #3504
- [Tracker] Fix tracker data when redirecting by @romainruaud in #3517
- [Tracker] Fix #3513, Ensure sessionData is always an array by @vahonc in #3519
New Contributors
- @mhaagen85 made their first contribution in #3444
Full Changelog: 2.11.10.1...2.11.11