mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2026-05-28 11:14:54 -04:00
fix: be case-insensitive when using bleve for issue search (#11022)
The indexer previously used a `camelcase` filter which could be problamatic for certain queries. This commit removes the faulty filter for bleve, matching the behaviour of the database "indexer". closes !10997 Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/11022 Reviewed-by: Gusted <gusted@noreply.codeberg.org> Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com> Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
This commit is contained in:
parent
d996dfb476
commit
217da2ae7f
2 changed files with 9 additions and 3 deletions
|
|
@ -13,7 +13,6 @@ import (
|
|||
|
||||
"github.com/blevesearch/bleve/v2"
|
||||
"github.com/blevesearch/bleve/v2/analysis/analyzer/custom"
|
||||
"github.com/blevesearch/bleve/v2/analysis/token/camelcase"
|
||||
"github.com/blevesearch/bleve/v2/analysis/token/lowercase"
|
||||
"github.com/blevesearch/bleve/v2/analysis/token/unicodenorm"
|
||||
"github.com/blevesearch/bleve/v2/analysis/tokenizer/unicode"
|
||||
|
|
@ -24,7 +23,7 @@ import (
|
|||
const (
|
||||
issueIndexerAnalyzer = "issueIndexer"
|
||||
issueIndexerDocType = "issueIndexerDocType"
|
||||
issueIndexerLatestVersion = 5
|
||||
issueIndexerLatestVersion = 6
|
||||
)
|
||||
|
||||
const unicodeNormalizeName = "unicodeNormalize"
|
||||
|
|
@ -100,7 +99,7 @@ func generateIssueIndexMapping() (mapping.IndexMapping, error) {
|
|||
"type": custom.Name,
|
||||
"char_filters": []string{},
|
||||
"tokenizer": unicode.Name,
|
||||
"token_filters": []string{unicodeNormalizeName, camelcase.Name, lowercase.Name},
|
||||
"token_filters": []string{unicodeNormalizeName, lowercase.Name},
|
||||
}); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,6 +53,13 @@ func searchIssueWithKeyword(t *testing.T) {
|
|||
},
|
||||
[]int64{2},
|
||||
},
|
||||
{
|
||||
"ISSUe2", // case-insensitive search
|
||||
&SearchOptions{
|
||||
RepoIDs: []int64{1},
|
||||
},
|
||||
[]int64{2},
|
||||
},
|
||||
{
|
||||
"first",
|
||||
&SearchOptions{
|
||||
|
|
|
|||
Loading…
Reference in a new issue