gitea/modules/indexer/internal
Bruno Sofiato f64fbd9b74
Updated tokenizer to better matching when search for code snippets (#32261)
This PR improves the accuracy of Gitea's code search. 

Currently, Gitea does not consider statements such as
`onsole.log("hello")` as hits when the user searches for `log`. The
culprit is how both ES and Bleve are tokenizing the file contents (in
both cases, `console.log` is a whole token).

In ES' case, we changed the tokenizer to
[simple_pattern_split](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-simplepatternsplit-tokenizer.html#:~:text=The%20simple_pattern_split%20tokenizer%20uses%20a,the%20tokenization%20is%20generally%20faster.).
In such a case, tokens are words formed by digits and letters. In
Bleve's case, it employs a
[letter](https://blevesearch.com/docs/Tokenizers/) tokenizer.

Resolves #32220

---------

Signed-off-by: Bruno Sofiato <bruno.sofiato@gmail.com>
2024-11-06 20:51:20 +00:00
..
bleve Updated tokenizer to better matching when search for code snippets (#32261) 2024-11-06 20:51:20 +00:00
db Fix Init of db indexer (#25470) 2023-06-23 14:39:52 +00:00
elasticsearch Refactor and enhance issue indexer to support both searching, filtering and paging (#26012) 2023-07-31 06:28:53 +00:00
meilisearch Update go dependencies (#32389) 2024-10-31 12:05:54 +00:00
base32.go Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
indexer.go Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
paginator.go Use db.ListOptions directly instead of Paginator interface to make it easier to use and fix performance of /pulls and /issues (#29990) 2024-03-24 18:51:08 +00:00