- Added support for ES 8.19.3
- Added support for ES 8.17.2
- Added support for ES 8.18.0
- Add support for manually and automatically following indices for cross-cluster replication
- Add support for rethrottling reindex tasks
- Add support for reindex API
- Remove CI checks for ES 5.6.15
- Unlock faraday_middleware version to allow 1.x
- Replace
Faraday::Error::*withFaraday::*error classes - Handle all
Faraday::Errorinstead ofFaraday::Error::ClientError - Unlock faraday version to allow 1.0.0
- Bump the minimum version of faraday and faraday middleware
- Add ES 8.13 REST API spec
- Update CI and development versions from 8.7.0 to 8.13.0
- Change Opaque ID error handling to not throw OpaqueIDError for 5xx responses
- Move Opaque ID middleware to the end of the Faraday middleware chain
- Remove default retry logic, requiring consumers to implement their own
- Remove support for ES 7
- Move to support only the latest Ruby version
- Allow passing a Faraday connection configuration block to the client.
- Remove logic extracting parameters from document in bulk requests. Parameters now must be sent separately from the document to be parsed correctly.
- Replace usage of "found" field by "result" in tests for the delete API (#275)
- Reduce the noise of the client during an inspect call by hiding connection info (#276)
- Rename MiniTest to Minitest (#277)
- Remove support for
timestampandttlindex parameters
- Allow deprecated underscored parameters to work for Bulk API for versions ES 7+.
- Allow non-underscored parameters to work for Bulk API for version ES 5.
- Add ES 8.7 REST API spec
- Remove deprecated
typeparameter fromsearch_shardsAPI
- Fix bug in bulk API preventing string
_idfrom being removed if empty - Remove
_typefrom document body during bulk requests for versions ES 7+
- Rename Elastomer to ElastomerClient (and elastomer to elastomer_client)
- Fix query values specified in path get removed when query values are specified with params (#261)
- Add support for
update_by_query(#263)
- Fix ES 7+ handling of params like
routingthat were prefixed with an underscore in earlier versions
- Fix a bug in the bulk API interface that prevents a version check from working correctly
- Add ES 7 and ES 8 compatibility for existing functionality
- Remove ES 2 support
- Add support for newer Ruby versions (3.0, 3.1, 3.2)
- Remove support for older Ruby versions (< 3.0)
- Fix warnings in Ruby 2.7 whan passing a Hash to a method that is expecting keyword arguments
- Update Webmock to ~> 3.5 to support Ruby 2.6+ (#222)
- Ignore basic_auth unless username and password are present
- Add config based basic and token auth to
Elastomer::Client#connection - Filter
Elastomer::Client#inspectoutput to hide basic and token auth info, and reduce noisiness when debugging
- Add new more granular exception type
- Output opaque ID information when a conflict is detected
- Updating the
semanticgem
- Added the
strict_paramsflag for enforcing params passed to the REST API - Added the
RestApiSpecmodule and classes for enforcing strict params
- Fixed argument passing to
app_delete_by_query - Explicitly close scroll search contexts when scroll is complete
- Fixed swapped args in {Client,Index}#multi_percolate count calls using block API
- Support for Elasticsearch 5.x
- Uses Elasticsearch's built-in
_delete_by_querywhen supported - GET and HEAD requests are retried when possible
- Add support for
_tasksAPI - Replace
scanqueries withscrollsorted bydoc_id
- Remove Elasticsearch 1.x and earlier code paths
- Fix CI and configure an Elasticsearch 5.6 build
- Added a
clear_scrollAPI - JSON timestamps include milliseconds by default
- Removing Fixnum usage
- Bulk index only rejects documents larger than the maximum request size
- Added enforcement of maximum request size
- Added some exception wrapping
- Fix bug in delete by query when routing is required
- Support Elasticsearch 2
- Adding support for the
/_suggestAPI endpoint - Documentation cleanup - thank you Matt Wagner @wags
- Replace yanked 0.8.0
- Fix code style based on Rubocop recommendations
- BREAKING: Remove
Client#warmermethod - Add the Percolate API
- Add streaming bulk functionality via
bulk_stream_items - Make Delete by Query compatible with Elasticsearch 2.0
- Support all URL parameters when using
Client.#scroll - BREAKING: Moved some
Scrollerreader methods intoScroller.opts
- Add response body to notification payload
- BREAKING: rename action.available notification to action.ping
- Index Component
- client.index no longer requires a name
- Documents Component
- client.docs no longer requires an index name
- added an
exists?method - added
termvectorandmulti_termvectorsmethods - added a
search_shardsmethod - added an
mgetalias formulti_get
- Adding more documentation
- Rename client.available? to client.ping (aliased as available?)
- Updating tests to pass with ES 1.4.X
- Enabling regular scroll queries vi
Client#scroll
- Support for index
_recoveryendpoint - Fix Faraday 0.8 support
- Wrap all Faraday exceptions
- Correctly wrap single-command reroute with a command array
- BREAKING: docs.add alias for docs.index removed
- BREAKING: Faraday exceptions are now raised as Elastomer exceptions
- Repository and snapshot support
- Support cluster state filtering on 1.x
- Support node stats filtering on 1.x
- New apis: cluster stats, cluster pending_tasks
- Support single-index alias get, add, delete
- Allow symbols as parameter values #67
- Make underscore optional in bulk params #66
- First rubygems release
- Make
update_aliasesmore flexible - Add
Client#semantic_versionfor ES version comparisons