• Robert Knight's avatar
    Rewrite and simplify view-filter service. · a2373770
    Robert Knight authored
    Rewrite the view filter service to make it easier to verify and fix a
    bug in the handling of "any" queries:
    
    The input filter object representing the parsed search query is
    translated into a tree of filter primitives, where each primitive is
    either a TermFilter that tests whether an annotation matches a single
    (field, term) or a BinaryOpFilter that combines other filters using AND
    or OR operators. The list of annotations are then matched against the
    tree's root filter.
    
    This system allows a nicer representation of "any" field queries by
    expanding a query such as "foo bar" into:
    
      (quote:foo OR text:foo OR ...) AND (quote:bar OR text:bar OR ...)
    
    In the process a mistake was uncovered in a test case for the "any"
    filter which incorrectly allowed the previous broken implementation to
    pass.
    a2373770
Name
Last commit
Last update
.github Loading commit data...
docs Loading commit data...
images Loading commit data...
scripts Loading commit data...
src Loading commit data...
.babelrc Loading commit data...
.eslintignore Loading commit data...
.eslintrc Loading commit data...
.gitignore Loading commit data...
.npmignore Loading commit data...
.npmrc Loading commit data...
.travis.yml Loading commit data...
CHANGELOG.md Loading commit data...
CODE_OF_CONDUCT Loading commit data...
Jenkinsfile Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
gulpfile.js Loading commit data...
package-lock.json Loading commit data...
package.json Loading commit data...
requirements-dev.in Loading commit data...
yarn.lock Loading commit data...