Roundup Tracker - Issues

Issue 2551188

classification
Use whoosh query syntax AND/OR/NEAR/wildcard/fuzzy
Type: rfe Severity: normal
Components: Web interface Versions:
process
Status: new remind
:
: : rouilj
Priority: low : StarterTicket

Created on 2022-01-17 00:54 by rouilj, last changed 2023-07-26 03:47 by rouilj.

Messages
msg7440 Author: [hidden] (rouilj) Date: 2022-01-17 00:54
One of the indexers we support is whoosh. It has a few features that we aren't using.

One of which is a search language that supports:

  * AND and OR operations (along with ANDNOT, ANDMAYBE, and NOT )
  * "phrase searching"
  * NEAR operations
  * explicit fuzzy~ search (maybe replace current automatic fuzzy 1 change search)
  * (grouping and wildcards*) and more ...

https://whoosh.readthedocs.io/en/latest/parsing.html
https://whoosh.readthedocs.io/en/latest/querylang.html

We need:

  1) code to support extended queries rather than the simple word1 word2 with implied
     AND we currently use. Consider supporting a subset of the full query language
     and query parser. Something maybe googlish? Full support may be too confusing
     by default.

  2) admin options to enable extended queries - might be simple on/off/fuzzy or
     have a more extensive list that turns on sets of options.

  3) can the roundup admin override our simple option choices by using interfaces.py
     to permit more extensive customization?

  4) documentation for the changes - for admin and user
msg7616 Author: [hidden] (rouilj) Date: 2022-07-24 08:05
The code that handles full text search can use the:

  self.db.indexer.query_language

which should be set to True if the indexer has a query language. This should allow
the full text search string to be passed, unchanged to the indexer.

So the new whoosh interface(s??) should set query_language to true to get the user's query
correctly.
History
Date User Action Args
2023-07-26 03:47:45rouiljsetresolution: remind
2022-07-24 08:05:51rouiljsetmessages: + msg7616
2022-01-17 00:56:01rouiljsetkeywords: + StarterTicket
2022-01-17 00:54:51rouiljcreate