Skip to content

v2.1.0

Choose a tag to compare

@PierreGauthier PierreGauthier released this 15 Apr 15:15
· 174 commits to main since this release

New features

Define analyzer by source field

You can now override the analyzer used by OpenSearch for indexing and searching a specific field directly from the search configuration screen.

This update introduces a new prebuilt analyzer: standard_edge_ngram. Its purpose is to generate n-grams for the field's value, enabling partial matches during searches.

Eg: if a field has the value "Organic Cotton", the generated n-grams will be: "org", "orga", "organ", "organi", "organic", "cot", "cott", "cotto", "cotton".
Therefore, searching for "org" or "cot" in Front-office will allow the products having the value "Organic cotton" to be shown.

Note: Please keep in mind that this feature is not meant to be enabled on all attributes, and that it's not recommended to enable it on long text fields (description, etc...) because of the noise and the performance issues it can generates with such fields.

image

💎 Proportional Boosts premium

Introducing field value-based boosts, a new type of boost that applies a linear/proportional scoring based on the value of a numeric or decimal attribute.

This feature is designed exclusively for numeric or decimal fields and enables dynamic relevance scoring depending on the field's value.

image

New field type: File

A new File field type has been added to Gally. You can now send file content as a base64-encoded string as the value of a field.

OpenSearch will automatically extract text content from the file using the Apache Tika library via its ingest attachment plugin.

Span Queries

A new configuration column has been added with a toggle "Use for span queries".

In Gally's full-text search, this enables span queries — a mechanism that gives higher relevance scores to documents where the searched terms appear closer together in the text.

Example:
Consider the following two products:

SKU Name Description
AAA Lorena Cardigan The Lorena Cardigan is a simple way to dress up any outfit while remaining comfortable. Wide sleeves provide ease of movement while the back offers beautiful inset summer detail.
BBB Petra Flowers The Petra flowers is a summer dress that strikes a delightful balance between fun and functional. The easy style of this dress lends itself to relaxing and having a good time. Put your hands in the pockets and just chill.

If a user searches for "summer dress", both products will match because both terms appear in the descriptions.

However, with span queries enabled, product BBB will receive a higher score because the terms "summer" and "dress" are closer to each other in the text.

New request product_category_count

We add a new request type in the product search api : product_category_count.
This will help you to get the number of product by category from Gally.

image

Performance Improvements

We optimized Doctrine SQL queries and cache managment to minimize the number of database calls, resulting in significantly faster response times.

image

📦 Features

🐛 Fixes

  • [Example App] Price slider blinking and add range value by @matthias-goupil in #654
  • [CORS] Fix nelmio_cors config and env variable CORS_ALLOW_ORIGIN not corectly configured in compose.yml by @botisSmile in #652
  • [SSL] Fix certbot volume for renewal by @romainruaud in #655
  • [Deployment] Fix delivery workflow, add parenthesis on OR conditions to avoid the skipping of errors in AND conditions and move 'generate-keypair' to the end to avoid building of a wrong Docker images by @botisSmile in #662

🔨 Quality

Full Changelog: 2.0.0...v2.1.0