Commit Graph
42 Commits
Author SHA1 Message Date
Bruno MurinoandGitHub 7815c6abe8 Small refactor of AWS Signer classes for both sync and async clients (#866)
* made custom headers be available to async aws signer

Signed-off-by: Bruno Murino <[email protected]>

* updated changelog

Signed-off-by: Bruno Murino <[email protected]>

* added tests for using host header for AWS request signature on both sync and async clients

Signed-off-by: Bruno Murino <[email protected]>

* added documentation guide about aws auth when accessing via tunnel

Signed-off-by: Bruno Murino <[email protected]>

* small refactor of AWS Signer classes on sync and async clients; improved testing on them as well

Signed-off-by: Bruno Murino <[email protected]>

* changelog

Signed-off-by: Bruno Murino <[email protected]>

* fixed test

Signed-off-by: Bruno Murino <[email protected]>

* lint fix

Signed-off-by: Bruno Murino <[email protected]>

---------

Signed-off-by: Bruno Murino <[email protected]>
2024-12-03 08:13:50 -05:00
Bruno MurinoandGitHub 6f761abf5e made custom headers be available to async aws signer (#863)
* made custom headers be available to async aws signer

Signed-off-by: Bruno Murino <[email protected]>

* updated changelog

Signed-off-by: Bruno Murino <[email protected]>

* added tests for using host header for AWS request signature on both sync and async clients

Signed-off-by: Bruno Murino <[email protected]>

* added documentation guide about aws auth when accessing via tunnel

Signed-off-by: Bruno Murino <[email protected]>

---------

Signed-off-by: Bruno Murino <[email protected]>
2024-12-01 08:31:51 -05:00
Étienne BeauléandGitHub 1b0440a33f Ignore name of index when fetching settings (#823)
This commit fixes a situation where an index cannot be updated through this client as the index is aliased, with the client pointing to the alias.

As the `GET /<index>/_settings` request will only ever return the settings for the specified index (through the alias), it would only have one key, so the name of the key would not matter. We can pop the key to get the settings object for the index through the alias.

Signed-off-by: Étienne Beaulé <[email protected]>
2024-09-26 14:02:13 -04:00
def00facfb Added support for the bucket aggregation. (#797)
Signed-off-by: dblock <[email protected]>
Co-authored-by: mckirk <[email protected]>
2024-08-15 07:49:58 -07:00
be56ae82b8 fix: retry_on_conflicts is not bool (#795)
Signed-off-by: dblock <[email protected]>
Co-authored-by: Patrick Rice <[email protected]>
2024-08-15 10:34:37 -04:00
55f9940d51 Remove HEAD-handling hack. (#794)
* remove HEAD -> GET workaround

Signed-off-by: dblock <[email protected]>

* Removed remaining HEAD-handling code.

Signed-off-by: dblock <[email protected]>

* Fixed remaining references to admin:admin.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
Co-authored-by: Vincent Castaneda <[email protected]>
2024-08-15 10:15:13 -04:00
Godefroy Amaury de MalefèteandGitHub a68e8b7daf Allow the use of percent string in Bool.__and__ method (#780)
Signed-off-by: Godefroy Amaury de Malefète <[email protected]>
2024-07-25 13:46:50 -04:00
Hugo van KemenadeandGitHub 6e3f1a1194 Remove redundant mock backport dependency and upgrade syntax for Python 3.8+ (#785)
* Upgrade syntax with pyupgrade --py38-plus

Signed-off-by: Hugo van Kemenade <[email protected]>

* Convert to f-strings with flynt

Signed-off-by: Hugo van Kemenade <[email protected]>

* Format with Black

Signed-off-by: Hugo van Kemenade <[email protected]>

* Remove redundant mock backport dependency

Signed-off-by: Hugo van Kemenade <[email protected]>

* isort imports

Signed-off-by: Hugo van Kemenade <[email protected]>

* Add changelog entry

Signed-off-by: Hugo van Kemenade <[email protected]>

---------

Signed-off-by: Hugo van Kemenade <[email protected]>
2024-07-20 16:19:20 -04:00
Hugo van KemenadeandGitHub de96d28e45 Remove redundant six dependency (#781)
* Don't create universal wheel for Python 3 only

Signed-off-by: Hugo van Kemenade <[email protected]>

* Update Black target version to match min Python supported

Signed-off-by: Hugo van Kemenade <[email protected]>

* Upgrade files using six to Python 3 syntax

Signed-off-by: Hugo van Kemenade <[email protected]>

* Remove redundant six dependency

Signed-off-by: Hugo van Kemenade <[email protected]>

* Format with Black

Signed-off-by: Hugo van Kemenade <[email protected]>

* Add changelog entry

Signed-off-by: Hugo van Kemenade <[email protected]>

---------

Signed-off-by: Hugo van Kemenade <[email protected]>
2024-07-20 12:30:37 -04:00
VatsalandGitHub f0bce7cf33 Fixed issue 769:Collapse not preserved when chaining a search instance (#771)
* Fixed issue 769:Collapse not preserved when chaining a search instance

Signed-off-by: vatsal <[email protected]>

* Fixed issue 769:Collapse not preserved when chaining a search instance

Signed-off-by: vatsal <[email protected]>

* Fixed issue 769:Collapse not preserved when chaining a search instance

Signed-off-by: vatsal <[email protected]>

* Fixed issue 769:Collapse not preserved when chaining a search instance

Signed-off-by: vatsal <[email protected]>

* Fixed issue 769:Collapse not preserved when chaining a search instance

Signed-off-by: vatsal <[email protected]>

---------

Signed-off-by: vatsal <[email protected]>
2024-07-09 09:39:19 -07:00
Sai Medhini Reddy MaryadaandGitHub ba715b9d3f Dropped support for python 3.6, 3.7 and added support for python 3.12 (#717)
Signed-off-by: saimedhi <[email protected]>
2024-04-06 11:18:47 -04:00
Mark CohenandGitHub a80bab2ad5 Assignment from no return (#658)
* added unnecessary-dunder-call to pylintrc files; disabled for certain lines

in run_tests.py, exception thrown by 'git remote add origin' when the remote already exists will not exit

Signed-off-by: Mark Cohen <[email protected]>

* updates to adhere to assignment-from-no-return lint

Signed-off-by: Mark Cohen <[email protected]>

* simplified get_value_filter in Facet to return None
added assert to test get_value_filter returning None

Signed-off-by: Mark Cohen <[email protected]>

* added option to output HTML test coverage locally from run_tests.py

returning None from test_faceted_search.Facet.get_value_filter

Signed-off-by: Mark Cohen <[email protected]>

* added unused-variable lints; replaced unused variables with _ or referenced them

Signed-off-by: Mark Cohen <[email protected]>

* updated CHANGELOG to point to the right PR

Signed-off-by: Mark Cohen <[email protected]>

---------

Signed-off-by: Mark Cohen <[email protected]>
2024-01-25 15:17:09 -08:00
Mark CohenandGitHub 6e58837993 added unnecessary-dunder-call to pylintrc files; disabled for certain lines (#655)
in run_tests.py, exception thrown by 'git remote add origin' when the remote already exists will not exit

Signed-off-by: Mark Cohen <[email protected]>
2024-01-22 09:12:57 -05:00
DJ CarrilloandGitHub db61b5943b Added fix for key error because of missing 'hits' key. (#616)
Updated CHANGELOG.md.



nox formatting applied.



Added new unit test for actions scan function.



Added type hints & nox formatting.



Added fix to async scan function & added matching unit tests for async.

Signed-off-by: Djcarrillo6 <[email protected]>
2023-12-04 09:26:25 -05:00
Samuel OrjiandGitHub 6f26eb3e8e remove unnecessary utf-8 header in .py files (#615)
* remove unnecessary utf-8 header in .py files

Signed-off-by: samuel orji <[email protected]>

* review feedback: add link to changelog

Signed-off-by: samuel orji <[email protected]>

---------

Signed-off-by: samuel orji <[email protected]>
2023-11-24 16:19:50 -05:00
Daniel (dB.) DoubrovkineandGitHub 1801ada270 Added pylint, enforce naming. (#590)
* Added pylint.

Signed-off-by: dblock <[email protected]>

* Enforce pylint:invalid-name.

Signed-off-by: dblock <[email protected]>

* Updated the generated code header to prevent broken links.

Signed-off-by: dblock <[email protected]>

* Swapped order of messages.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-11-21 10:04:39 -08:00
Daniel (dB.) DoubrovkineandGitHub 103bc89486 Fixes a suspicious setattr that should be taking an Any (#604)
* Fix invalid value type.

Signed-off-by: dblock <[email protected]>

* Workaround Incompatible types in assignment (expression has type float, variable has type Double)  [assignment]

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-11-17 16:54:54 -05:00
Daniel (dB.) DoubrovkineandGitHub 7509a15ef3 Fix Amazon OpenSearch Serverless integration with LangChain. (#603)
Signed-off-by: dblock <[email protected]>
2023-11-17 16:09:19 -05:00
Daniel (dB.) DoubrovkineandGitHub c66e1e37be Fix: TypeError on calling parallel_bulk. (#601)
* Fix: TypeError on calling parallel_bulk.

Signed-off-by: dblock <[email protected]>

* Added a sample that uses a bulk function generator.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-11-17 10:18:42 -08:00
Daniel (dB.) DoubrovkineandGitHub 56c96d7c4f Expanded type coverage to benchmarks, samples and tests. (#566)
* Renamed json samples to fix duplicate module name.

Signed-off-by: dblock <[email protected]>

* Enabled mypy on all source files.

Signed-off-by: dblock <[email protected]>

* Added missing types.

Signed-off-by: dblock <[email protected]>

* Added CHANGELOG.

Signed-off-by: dblock <[email protected]>

* Move type: ignore to fix untyped decorator makes function untyped.

Signed-off-by: dblock <[email protected]>

* Fix nox -rs lint-3.7.

Signed-off-by: dblock <[email protected]>

* Fixed incorrect import.

Signed-off-by: dblock <[email protected]>

* Fix broken test.

Signed-off-by: dblock <[email protected]>

* Fixed TestBulk::test_bulk_works_with_bytestring_body.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-11-09 10:51:20 -05:00
Daniel (dB.) DoubrovkineandGitHub dcb79cc322 Merge .pyi type stubs inline (#563)
* Merged types into .py code.

Signed-off-by: dblock <[email protected]>

* Fix: nox -rs generate.

Signed-off-by: dblock <[email protected]>

* Updated CHANGELOG.

Signed-off-by: dblock <[email protected]>

* Use lowest common python version for lint.

Signed-off-by: dblock <[email protected]>

* Fix: don't typeshed.

Signed-off-by: dblock <[email protected]>

* Removed unneeded comment.

Signed-off-by: dblock <[email protected]>

* Simplify OPENSEARCH_URL.

Signed-off-by: dblock <[email protected]>

* Fix: positional ignore_status used as chunk_size.

Signed-off-by: dblock <[email protected]>

* Fix: parse version string.

Signed-off-by: dblock <[email protected]>

* Remove future annotations for Python 3.6.

Signed-off-by: dblock <[email protected]>

* Fix: types in documentation.

Signed-off-by: dblock <[email protected]>

* Improve CHANGELOG text.

Signed-off-by: dblock <[email protected]>

* Re-added missing separator.

Signed-off-by: dblock <[email protected]>

* Remove duplicate licenses.

Signed-off-by: dblock <[email protected]>

* Get rid of Optional[Any].

Signed-off-by: dblock <[email protected]>

* Fix docs with AsyncOpenSearch.

Signed-off-by: dblock <[email protected]>

* Fix: undo comment.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-11-06 10:08:19 -08:00
Daniel (dB.) DoubrovkineandGitHub 0da60b2623 Added a utf-8 header to all .py files (#557)
Signed-off-by: dblock <[email protected]>
2023-10-26 13:34:34 -04:00
Daniel (dB.) DoubrovkineandGitHub 627e717534 Remove support for Python 2.x. (#548)
Signed-off-by: dblock <[email protected]>
2023-10-24 07:57:21 -07:00
Daniel (dB.) DoubrovkineandGitHub a1f942b6f9 Added support for AWS Sigv4 for UrlLib3. (#547)
* WIP: Added support for AWS Sigv4 for UrlLib3.

Signed-off-by: dblock <[email protected]>

* Refactored common implementation.

Signed-off-by: dblock <[email protected]>

* Added sigv4 samples.

Signed-off-by: dblock <[email protected]>

* Updated CHANGELOG.

Signed-off-by: dblock <[email protected]>

* Add documentation.

Signed-off-by: dblock <[email protected]>

* Use the correct class in tests.

Signed-off-by: dblock <[email protected]>

* Renamed samples.

Signed-off-by: dblock <[email protected]>

* Split up requests and urllib3 unit tests.

Signed-off-by: dblock <[email protected]>

* Rename AWSV4Signer.

Signed-off-by: dblock <[email protected]>

* Clarified documentation of when to use Urllib3AWSV4SignerAuth vs. RequestHttpConnection.

Signed-off-by: dblock <[email protected]>

* Move fetch_url inside the signer class.

Signed-off-by: dblock <[email protected]>

* Added unit test for Urllib3AWSV4SignerAuth adding headers.

Signed-off-by: dblock <[email protected]>

* Added unit test for signing to include query string.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-10-23 19:46:19 -04:00
Daniel (dB.) DoubrovkineandGitHub 2bfc409177 Fix: typos. (#526)
* Fix: typo.

Signed-off-by: dblock <[email protected]>

* Fix: typo.

Signed-off-by: dblock <[email protected]>

* Fixed its.

Signed-off-by: dblock <[email protected]>

* Added Visual Code settings to .gitignore.

Signed-off-by: dblock <[email protected]>

* Added loop type for async client.

Signed-off-by: dblock <[email protected]>

---------

Signed-off-by: dblock <[email protected]>
2023-10-09 10:45:18 -07:00
Logan AttwoodandGitHub fca8bd3d0e Fix race condition in AWS request signers (#470)
* Fix race condition in AWS request signers

Signed-off-by: Logan Attwood <[email protected]>

* Conditionally expose get_frozen_credentials on mock_session

Signed-off-by: Logan Attwood <[email protected]>

* Use inheritance to make tests cleaner

Signed-off-by: Logan Attwood <[email protected]>

---------

Signed-off-by: Logan Attwood <[email protected]>
2023-08-10 13:32:53 -04:00
db972e615b feat: Add a collapse method to opensearchpy.helpers.search.Search (#409)
Signed-off-by: Quentin Coumes <[email protected]>
Signed-off-by: Daniel (dB.) Doubrovkine <[email protected]>
Co-authored-by: Daniel (dB.) Doubrovkine <[email protected]>
2023-06-26 19:19:15 -04:00
Sai Medhini Reddy MaryadaandGitHub 2b9aee73a5 Added async support for helpers that are merged from opensearch-dsl-py (#329)
Signed-off-by: saimedhi <[email protected]>
2023-03-17 12:03:46 -07:00
aiudirogandGitHub f1f73e7ff2 Fixed utils/build-dists.py which was broken by 49ae7c7 (#316)
* Fixed utils/build-dists.py which was broken by 49ae7c7
Previously the async helpers imported AsyncOpenSearch and therefore failed to import anytime it did

Signed-off-by: Roger Aiudi <[email protected]>

* Refactor async helpers try block to a simple if statement

Signed-off-by: Roger Aiudi <[email protected]>

* Remove newline to pass black

Signed-off-by: Roger Aiudi <[email protected]>

---------

Signed-off-by: Roger Aiudi <[email protected]>
2023-03-08 17:34:43 -08:00
Sai Medhini Reddy MaryadaandGitHub c58375aa7b Merging opensearch-dsl-py to opensearch-py (#287)
Signed-off-by: saimedhi <[email protected]>
2023-02-14 15:03:56 -08:00
Sai Medhini Reddy MaryadaandGitHub 93636399ec Removed 'out/opensearchpy' folder which was produced while generating pyi files for plugins (#288)
Signed-off-by: saimedhi <[email protected]>
2023-02-14 11:09:14 -08:00
Theo Nam TruongandGitHub 58aa041db3 Fixed Sigv4 Signing for Managed Service (#279)
Fixed SigV4 Signing for Async Requests with QueryStrings

Signed-off-by: Theo Truong <[email protected]>

Signed-off-by: Theo Truong <[email protected]>
2023-01-23 18:38:31 -08:00
Sai Medhini Reddy MaryadaandGitHub 176c78c58e Updated CI tests to make them work locally (#275)
Signed-off-by: saimedhi <[email protected]>

Signed-off-by: saimedhi <[email protected]>
2023-01-19 15:20:19 -08:00
Harsha Vamsi KalluriandGitHub 5c1c890f69 Abstract away service name (#268)
* Abstract away service name

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Compuute x-amz-content-256 header

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Fix async signing

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Adds types-six to dependencies

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Optionally remove Content-Length

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Fix dict typo

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Remove requirement for x-amz-content-sha256 header

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Remove deletion of content-length

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Fix capitalization

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Adding unit tests

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>
2023-01-18 18:06:59 -05:00
Harsha Vamsi KalluriandGitHub cfb2cf7b60 Adding async support for AWSSigV4 (#254)
* Adding async support for AWSSigV4

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Fix names for connection classes

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Update tests to async name space

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Add import exceptions to python < 3.6

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>
2023-01-02 17:25:48 -05:00
Sai Medhini Reddy MaryadaandGitHub dea10c80e5 Updated bulk action in helpers (#239)
Signed-off-by: saimedhi <[email protected]>

Signed-off-by: saimedhi <[email protected]>
2022-11-23 14:04:05 -05:00
2672f3f572 Check OpenSSL environment variables before defaulting to certifi (#196)
* Check OpenSSL environment variables before defaulting to certifi

Signed-off-by: Roger Aiudi <[email protected]>

* Fix formatting

Signed-off-by: Roger Aiudi <[email protected]>

* Moved CA_CERTS to the base Connection module

Signed-off-by: Roger Aiudi <[email protected]>

* Updated requests Connection to use common CA_CERTS by default

Signed-off-by: Roger Aiudi <[email protected]>

* Pass nox linting

Signed-off-by: Roger Aiudi <[email protected]>

* Update CHANGELOG.md and USER_GUIDE.md

Signed-off-by: Roger Aiudi <[email protected]>

* Updated AIOHttpConnection to only load CA_CERTS if verify_certs is True

Signed-off-by: Roger Aiudi <[email protected]>

* Added test cases for CA_CERTS handling in each Connection implementation

Signed-off-by: Roger Aiudi <[email protected]>

* Move CA cert handling to Connection.default_ca_certs()
Add test cases for the different CA cert configurations

Signed-off-by: Roger Aiudi <[email protected]>

* Update actions to test unsupported Python versions on ubuntu-20.04

Signed-off-by: Roger Aiudi <[email protected]>

* Fix Python versions being interpreted as floats

Signed-off-by: Roger Aiudi <[email protected]>

* Workaround Monkeypatch not available on old pytest versions

Signed-off-by: Roger Aiudi <[email protected]>

Signed-off-by: Roger Aiudi <[email protected]>
Co-authored-by: Harsha Vamsi Kalluri <[email protected]>
2022-11-22 11:33:45 -05:00
2d03dc773b Alerting Plugins (#93)
* Alert Plugin

Signed-off-by: Arnav Das <[email protected]>

* lint file header license

Signed-off-by: Arnav Das <[email protected]>

* Tests For Alerting[Monitors]

Signed-off-by: Arnav Das <[email protected]>

* Tests For Alerting[Destinations]

Signed-off-by: Arnav Das <[email protected]>

* dynamic lookup 90#issuecomment-1003396742

Signed-off-by: Arnav Das <[email protected]>

* Alerting Async

Signed-off-by: Arnav Das <[email protected]>

* Lint Changes

Signed-off-by: Arnav Das <[email protected]>

* alerting plugins integration tests

Signed-off-by: Arnav Das <[email protected]>

* Integ UnitTests Skip on OPENSEARCH_VERSION >= 2.0.0

Signed-off-by: Arnav Das <[email protected]>

* Unit Test Skip Complete

Signed-off-by: Arnav Das <[email protected]>

* License Headers fixed

Signed-off-by: Arnav Das <[email protected]>

* test_urllib3_connection timeout

Signed-off-by: Arnav Das <[email protected]>

* lint

Signed-off-by: Arnav Das <[email protected]>

* Fix licenses in all files

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Remove elastic search licenses on new files

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

* Fix formatting

Signed-off-by: Harsha Vamsi Kalluri <[email protected]>

Signed-off-by: Arnav Das <[email protected]>
Signed-off-by: Harsha Vamsi Kalluri <[email protected]>
Co-authored-by: Harsha Vamsi Kalluri <[email protected]>
2022-10-03 14:45:18 -04:00
Vacha ShahandGitHub b1eaba0064 Type removal breaking changes (#151)
* Breaking changes for type removal

Signed-off-by: Vacha Shah <[email protected]>

* Adding support to test against unreleased OpenSearch

Signed-off-by: Vacha Shah <[email protected]>

* Formatting

Signed-off-by: Vacha Shah <[email protected]>

* Addressing comments to refactor run-opensearch.sh

Signed-off-by: Vacha Shah <[email protected]>
2022-04-13 10:47:48 -07:00
Shivam DharandShivam Dhar 6ab90be906 adds IAM auth support
Signed-off-by: Shivam Dhar <[email protected]>
2022-03-09 13:12:45 -08:00
Shivam DharandShivam Dhar 25ff092c8f removes cert usage from CI module
Signed-off-by: Shivam Dhar <[email protected]>
2022-01-08 15:15:15 +05:30
Rushi Agrawal ef0c23c0e4 Rename module to opensearchpy
To avoid conflict with an existing package by name 'opensearch' being
present

Signed-off-by: Rushi Agrawal <[email protected]>
2021-09-16 21:23:38 +05:30