Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Throw specific exceptions when attempting filters on empty lists #933

Open
tsmith023 opened this issue Mar 5, 2024 · 1 comment
Open
Labels
good first issue Good for newcomers

Comments

@tsmith023
Copy link
Contributor

tsmith023 commented Mar 5, 2024

Currently, passing an empty list to any of the methods available on wvc.query.Filter throws index out of range errors.

Instead, we should catch this edge case and throw a specific exception notifying that filtering empty lists is not supported at all by Weaviate, as first encountered here: #929

@tsmith023 tsmith023 added the good first issue Good for newcomers label Mar 5, 2024
@tsmith023 tsmith023 changed the title Throw a specific exception when filtering on empty lists Throw specific exceptions when attempting filters on empty lists Mar 5, 2024
@saireddythfc
Copy link

saireddythfc commented Mar 23, 2024

I tried creating a new feature branch to address this issue but I ran into this during the process:

(Edit for context):
black....................................................................Failed

  • hook id: black
  • files were modified by this hook

reformatted weaviate/collections/filters.py

All done! ✨ 🍰 ✨
1 file reformatted.

don't commit to branch...................................................Passed
trim trailing whitespace.................................................Passed
linting..................................................................Passed
docstrings...............................................................Passed
mypy.....................................................................Passed

  • hook id: mypy
  • duration: 32.01s

Static checking ./weaviate:
Success: no issues found in 142 source files
Static checking ./integration:
Success: no issues found in 23 source files

pyright..................................................................Failed

  • hook id: pyright
  • exit code: 1

/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/collection.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/collection.py:199:9 - error: Overload 2 for "iterator" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/collection.py:232:9 - error: Overload 5 for "iterator" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_image.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_image.py:34:9 - error: Overload 2 for "near_image" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_object.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_object.py:32:9 - error: Overload 2 for "near_object" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_text.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_text.py:35:9 - error: Overload 2 for "near_text" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_vector.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/near_vector.py:32:9 - error: Overload 2 for "near_vector" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/over_all.py
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/aggregations/over_all.py:26:9 - error: Overload 2 for "over_all" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/generate.pyi:37:9 - error: Overload 2 for "bm25" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/generate.pyi:97:9 - error: Overload 5 for "bm25" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/query.pyi:34:9 - error: Overload 2 for "bm25" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/bm25/query.pyi:85:9 - error: Overload 5 for "bm25" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_object_by_id/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_object_by_id/query.pyi:29:9 - error: Overload 2 for "fetch_object_by_id" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_object_by_id/query.pyi:56:9 - error: Overload 5 for "fetch_object_by_id" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/generate.pyi:94:9 - error: Overload 5 for "fetch_objects" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/query.pyi:35:9 - error: Overload 2 for "fetch_objects" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/query.pyi:80:9 - error: Overload 5 for "fetch_objects" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/fetch_objects/query.pyi:110:9 - error: Overload 7 for "fetch_objects" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/generate.pyi:40:9 - error: Overload 2 for "hybrid" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/generate.pyi:109:9 - error: Overload 5 for "hybrid" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/query.pyi:37:9 - error: Overload 2 for "hybrid" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/hybrid/query.pyi:97:9 - error: Overload 5 for "hybrid" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/generate.pyi:42:9 - error: Overload 2 for "near_image" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/generate.pyi:108:9 - error: Overload 5 for "near_image" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/generate.pyi:175:9 - error: Overload 8 for "near_image" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/generate.pyi:241:9 - error: Overload 11 for "near_image" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/query.pyi:39:9 - error: Overload 2 for "near_image" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/query.pyi:96:9 - error: Overload 5 for "near_image" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/query.pyi:156:9 - error: Overload 8 for "near_image" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_image/query.pyi:213:9 - error: Overload 11 for "near_image" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/generate.pyi:50:9 - error: Overload 2 for "near_media" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/generate.pyi:119:9 - error: Overload 5 for "near_media" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/generate.pyi:189:9 - error: Overload 8 for "near_media" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/generate.pyi:258:9 - error: Overload 11 for "near_media" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/query.pyi:47:9 - error: Overload 2 for "near_media" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/query.pyi:107:9 - error: Overload 5 for "near_media" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/query.pyi:170:9 - error: Overload 8 for "near_media" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_media/query.pyi:230:9 - error: Overload 11 for "near_media" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/generate.pyi:40:9 - error: Overload 2 for "near_object" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/generate.pyi:106:9 - error: Overload 5 for "near_object" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/generate.pyi:173:9 - error: Overload 8 for "near_object" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/generate.pyi:239:9 - error: Overload 11 for "near_object" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/query.pyi:37:9 - error: Overload 2 for "near_object" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/query.pyi:94:9 - error: Overload 5 for "near_object" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/query.pyi:154:9 - error: Overload 8 for "near_object" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_object/query.pyi:211:9 - error: Overload 11 for "near_object" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/generate.pyi:49:9 - error: Overload 2 for "near_text" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/generate.pyi:121:9 - error: Overload 5 for "near_text" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/generate.pyi:194:9 - error: Overload 8 for "near_text" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/generate.pyi:266:9 - error: Overload 11 for "near_text" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/query.pyi:46:9 - error: Overload 2 for "near_text" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/query.pyi:109:9 - error: Overload 5 for "near_text" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/query.pyi:175:9 - error: Overload 8 for "near_text" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_text/query.pyi:238:9 - error: Overload 11 for "near_text" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/generate.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/generate.pyi:40:9 - error: Overload 2 for "near_vector" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/generate.pyi:106:9 - error: Overload 5 for "near_vector" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/generate.pyi:173:9 - error: Overload 8 for "near_vector" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/generate.pyi:239:9 - error: Overload 11 for "near_vector" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/query.pyi
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/query.pyi:37:9 - error: Overload 2 for "near_vector" will never be used because its parameters overlap overload 1 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/query.pyi:94:9 - error: Overload 5 for "near_vector" will never be used because its parameters overlap overload 4 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/query.pyi:154:9 - error: Overload 8 for "near_vector" will never be used because its parameters overlap overload 7 (reportOverlappingOverload)
/Users/hurrikane/Desktop/GitHub/Open Source Repos/weaviate-python-client/weaviate/collections/queries/near_vector/query.pyi:211:9 - error: Overload 11 for "near_vector" will never be used because its parameters overlap overload 10 (reportOverlappingOverload)
61 errors, 0 warnings, 0 informations

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants