Skip to content

Bump Elastic.Clients.Elasticsearch from 9.3.0 to 9.5.3 - #167

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/ErsatzTV.Infrastructure/Elastic.Clients.Elasticsearch-9.5.3
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/ErsatzTV.Infrastructure/Elastic.Clients.Elasticsearch-9.5.3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 28, 2026

Copy link
Copy Markdown
Contributor

Updated Elastic.Clients.Elasticsearch from 9.3.0 to 9.5.3.

Release notes

Sourced from Elastic.Clients.Elasticsearch's releases.

9.5.3

[!WARNING]
This release contains a breaking change in the generated security types. Review the Breaking entry below before upgrading.

What's Changed

Full Changelog: elastic/elasticsearch-net@9.5.2...9.5.3

9.5.2

[!WARNING]
This release contains breaking changes in generated types. Please review the breaking changes listed below before upgrading.

What's Changed

  • Regenerate client by @​flobernd in [9.5] Regenerate client elastic/elasticsearch-net#8990
    • DenseVectorIndexOptions gains the bbq_disk properties AutoCalibrate, Bits, ClusterSize,
      DefaultVisitPercentage and Precondition.
    • DenseVectorIndexOptions.ConfidenceInterval is now marked [Obsolete] (deprecated since 9.5.0).
    • SourceFieldMode gains ColumnarStored (columnar_stored), so index templates and mappings that use the new mode
      no longer fail deserialization.
    • Breaking: InnerRetriever.Normalizer and InnerRetriever.Weight are now optional (ScoreNormalizer? and
      float? instead of required), following the spec change that made normalizer and weight optional on the linear
      retriever's inner retrievers. The [SetsRequiredMembers] constructor no longer takes normalizer and weight
      arguments.
    • Breaking: RoleDescriptor.Global, QueryRole.Global and RoleDescriptorRead.Global now use a single
      GlobalPrivilege instead of a collection, matching the server-side parser, which only accepts an object for the
      global privilege. The Global descriptor methods replace their params array overloads with a single-object
      overload.

Full Changelog: elastic/elasticsearch-net@9.5.1...9.5.2

9.5.1

[!WARNING]
This release contains breaking changes in generated types. Please review the breaking changes listed below before upgrading.

What's Changed

  • Regenerate client by @​flobernd in [9.5] Regenerate client elastic/elasticsearch-net#8957 and [9.5] Regenerate client elastic/elasticsearch-net#8981
    • Transform destinations now accept aliases, each with an optional move_on_creation flag, through the new DestinationAlias type.
    • Request converter sources regenerated to emit the full client invocation.
    • Breaking: KnnRetriever.NumCandidates is now optional (int? instead of required int), following the spec change that made num_candidates optional on the kNN retriever. The [SetsRequiredMembers] constructor no longer takes a numCandidates argument.
    • Breaking: TransformSummary.Dest and UpdateTransformResponse.Dest now use Elastic.Clients.Elasticsearch.TransformManagement.Destination instead of Elastic.Clients.Elasticsearch.Core.Reindex.Destination.
  • Restore delegate caching in IdResolver by @​fresh55 in Restore delegate caching in IdResolver elastic/elasticsearch-net#8973
    • The getter delegate was only cached when resolution failed, so it was rebuilt on every successful call.
    • 100k resolves of the same type improve from 64 ms / 55.2 MB to 3.5 ms / 40 bytes. Partially addresses (#​7664).

Full Changelog: elastic/elasticsearch-net@9.5.0...9.5.1

9.5.0

What's Changed

Initial 9.5.x release.

[!WARNING]
This release regenerates the client against the Elasticsearch 9.5 specification and contains breaking changes. Please review the list below before upgrading.

  • Regenerate client against the Elasticsearch 9.5 specification by @​flobernd in [9.5] Add request-converter code generation (#8612) elastic/elasticsearch-net#8930 and [9.5] Regenerate client elastic/elasticsearch-net#8944
    • New experimental client.Encryption.Reset endpoint, plus a ProjectEncryptionKey indicator on the health report
    • New experimental ES|QL data federation APIs: PutDataSource / GetDataSource / DeleteDataSource and PutDataset / GetDataset / DeleteDataset, with the supporting ESQLDataSource, ESQLDataset and DatasetMapping types
    • New experimental Inference region policy APIs: PutRegionPolicy / GetRegionPolicy / DeleteRegionPolicy
    • New _slice routing parameter (RouteSlice) across the search, get, index, delete, update and bulk APIs, as well as on the multi-search header and the reindex destination
    • FrequentItemSets aggregations now round-trip correctly. The generated variant used an empty discriminator where the converter expected frequent_item_sets, so the property always read back as null
    • Role-template queries in index privileges now deserialize to RoleTemplateQuery. Previously any object-shaped query was unconditionally read as a regular QueryDsl.Query
    • SpanGap and RoleMappingRule.Field variant accessors now return null instead of a default KeyValuePair when the union holds a different variant
    • New enum members: EmbeddingContentType.Audio / .Pdf / .Video, AnthropicTaskType.ChatCompletion, OpenAITaskType.Embedding, and the ClusterPrivilege.ManageReindex / .MonitorReindex values
    • Breaking (mapping): DocValues on 32 property types changes from bool? to Union<bool, DocValuesConfig>? to carry the new doc_values.multi_value setting. The parameterless DocValues() descriptor overload is gone, and reading the property into a bool? no longer compiles. SourceField.Compress and CompressThreshold are removed, and TextIndexPrefixes.MinChars / MaxChars become optional (int?), dropping the two-argument constructor
    • Breaking (ES|QL): the named-parameter arm of Params on EsqlQuery and AsyncQuery changes from KeyValuePair<string, ICollection<FieldValue>> to KeyValuePair<string, Union<ICollection<FieldValue>, ClassifiedNamedParameter>>, which affects every existing named-parameter call site. Both requests also gain a Settings body property
    • Breaking (inference): Rerank now accepts the expanded multimodal request format, so Input becomes Union<ICollection<string>, ICollection<RerankInputObject>>, Query becomes Union<string, RerankInputObject>, and the Input(params string[]) overload is removed. EmbeddingContentObject.Content becomes ICollection<EmbeddingContentObjectItem> and EmbeddingContentObjectContents is gone, OpenAIServiceSettings.ApiKey is now optional, and JinaAIServiceSettings.ElementType is renamed to EmbeddingType
    • Breaking (snapshot): SourceOnlyRepositorySettings is replaced by the ISourceOnlyRepositorySettings variant family with per-backend settings types, constructed through SourceOnlyRepositorySettingsFactory (ForAzure, ForGcs, ForReadOnlyUrl, ForS3, ForSharedFileSystem). SourceOnlyRepository.Settings now takes the interface, and its descriptor overloads are replaced by a factory callback
    • Breaking (security): RoleInfo.Indices changes from IndicesPrivileges to IndicesPrivilegesRead, and role definitions gain DataSourcePrivileges
    • Breaking (stats): GetStats.Time is renamed to GetTime, ShardStats.Indices becomes a dictionary of ShardStats, the DenseVectorOffHeapStats.TotalCenifSize typo is corrected to TotalCenivfSize, and newly required members change the positional constructors of IndexingStats, SearchStats, FlushStats, MappingStats and MachineLearning.Defaults
  • Make custom JSON converters safe for multi-segment readers by @​flobernd in Make custom JSON converters safe for multi-segment readers elastic/elasticsearch-net#8923
    • The hand-written date, duration, stringified and fractional numeric converters no longer fail when the Utf8JsonReader is constructed over a multi-segment ReadOnlySequence<byte>, which unblocks sequence-based deserializers such as a streaming reader over a PipeReader
    • The existing single-segment typed deserialization path is unchanged

New Contributors

Full Changelog: elastic/elasticsearch-net@9.4.2...9.5.0

9.4.2

What's Changed

  • Add plugin-defined (non-exhaustive) variant registry by @​flobernd in Add plugin-defined (non-exhaustive) variant registry elastic/elasticsearch-net#8911
    • Unknown discriminators on variant union families (properties, analyzers, char filters, token filters, tokenizers, repositories, similarity settings, aggregations, queries, etc.) now deserialize into an Unknown* carrier and re-serialize losslessly — no data is dropped for plugin-defined or future variants the client doesn't model
    • Opt into strong typing by registering a CLR type for a discriminator: settings.Variants.Register<IProperty, MyPluginProperty>("my_plugin"); registrations are scoped per client instance and AOT-safe — see the Plugin-defined variant types documentation for details
  • Regenerate client by @​flobernd in [9.4] Regenerate client elastic/elasticsearch-net#8908 and [9.4] Regenerate client elastic/elasticsearch-net#8917
    • Generated Unknown* carrier types for all variant families (properties, analyzers, char filters, token filters, tokenizers, repositories, similarity settings, aggregations, queries, suggesters, rescorers) to support the non-exhaustive variant registry
    • Improved XML documentation coverage across generated client methods, request/response types, and type members that previously had no IntelliSense descriptions

Full Changelog: elastic/elasticsearch-net@9.4.1...9.4.2

9.4.1

What's Changed

  • Regenerate client by @​flobernd in [9.4] Regenerate client elastic/elasticsearch-net#8899 and [9.4] Regenerate client elastic/elasticsearch-net#8907
    • Fixes (de-)serialization of unions with three or more variants — previously, hand-rolled union converters could fail to select the correct variant
    • Search response shape fix in InnerHits: the Fields property is split into Field (single-field selector using Fields) and a new Fields collection of FieldAndFormat — existing usages of InnerHits.Fields = … may need to be retargeted to Field
    • DataStreamLifecycle gains EffectiveRetention and RetentionDeterminedBy; new GlobalRetention and RetentionSource types; GetDataLifecycleResponse now exposes GlobalRetention
    • Reindex rethrottle response now models parent task progress via the new ParentReindexStatus type
    • Inference and _mvt content-type alignment: chat_completion_unified / stream_completion send Content-Type: application/json; _mvt uses the versioned application/vnd.elasticsearch+vnd.mapbox-vector-tile Accept header

Full Changelog: elastic/elasticsearch-net@9.4.0...9.4.1

9.4.0

What's Changed

Initial 9.4.x release.

Full Changelog: elastic/elasticsearch-net@9.3.7...9.4.0

9.3.7

What's Changed

  • Regenerate client by @​flobernd in [9.3] Regenerate client elastic/elasticsearch-net#8898
    • Set explicit ContentType: application/json for ChatCompletionUnified and StreamCompletion streaming inference requests
    • Switch SearchMvt Accept header to application/vnd.elasticsearch+vnd.mapbox-vector-tile (Elasticsearch product-flavored content-type)
    • Bump Elastic.Transport to 0.17.1
    • Document default max_page_search_size values for pivot (500) and latest (5000) transforms

Full Changelog: elastic/elasticsearch-net@9.3.6...9.3.7

9.3.6

What's Changed

Full Changelog: elastic/elasticsearch-net@9.3.5...9.3.6

9.3.5

What's Changed

Full Changelog: elastic/elasticsearch-net@9.3.4...9.3.5

9.3.4

What's Changed

Full Changelog: elastic/elasticsearch-net@9.3.3...9.3.4

9.3.3

What's Changed

Full Changelog: elastic/elasticsearch-net@9.3.2...9.3.3

9.3.2

What's Changed

New Contributors

Full Changelog: elastic/elasticsearch-net@9.3.1...9.3.2

9.3.1

What's Changed

Full Changelog: elastic/elasticsearch-net@9.3.0...9.3.1

Commits viewable in compare view.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: Elastic.Clients.Elasticsearch
  dependency-version: 9.5.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Sep 28, 2026
@dependabot @github

dependabot Bot commented on behalf of github Sep 28, 2026

Copy link
Copy Markdown
Contributor Author

Assignees

The following users could not be added as assignees: jasongdove. Either the username does not exist or it does not have the correct permissions to be added as an assignee.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot dependabot Bot added the .NET Pull requests that update .NET code label Sep 28, 2026
@ddakotac ddakotac closed this Sep 28, 2026
@ddakotac
ddakotac deleted the dependabot/nuget/ErsatzTV.Infrastructure/Elastic.Clients.Elasticsearch-9.5.3 branch September 28, 2026 23:33
@dependabot @github

dependabot Bot commented on behalf of github Sep 28, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

1 participant