Skip to content

Releases: elastic/elasticsearch-net

1.5.0

08 May 15:38
Compare
Choose a tag to compare

This is the 1.5 release! This release contains full feature parity with Elasticsearch 1.5. As always, thank you to everyone who contributed!

Also, checkout our new tutorial repository that will guide you through building a search interface for NuGet packages. It's a great way to get started with NEST and Elasticsearch.

New Features

  • #1369 INNER HITS SUPPORT !
  • We now support lazy deserialization of documents using IDocument (side-effect of implementing inner hits)
  • Low-level client now up to date with 1.5 rest spec
  • #998 You can now use variables in .Suffix() in property path Expressions
  • #1387 Fielddata fields support on Search()
  • #1316 Added UsePrettyRequests() and PrettyJson() to Connectionsettings
  • #1295 Added script_file to transform mapping (ty @markuslindberg!)
  • #1300 Added an internal elasticsearch timespan string parser (ty @aochsner!)
  • #1305 Special .ConditionlessWhen(true_expression) to functionscore queries to control its conditionless nature separately
  • #1325 Included index property for Indices Filter ty @abibell!
  • #1307 IncludeInParent support in attribute based mappings ty @robertlyson!
  • #1333 Missing fuzzy_transpositions support in MatchQuery ty @robertlyson!
  • #1368 Added percentage and scripted heuristics to significant terms
  • #1362 Support for supplying index settings on restore ty @robertlyson!
  • #1376 Added status and total memory to cat indices response
  • #1341 MLT query: Support for artificial documents
  • #1354 MLT query: Support for minimum_should_match parameter
  • #1109 MLT query: Support for per_field_analyzer
  • #1373 Support for min_score parameter on function score query ty @robertlyson!
  • #1342 Added timezone to query_string
  • #1343 Added format to range filter and query
  • #1374 Support for cat segments API
  • #1356 Support for minimum_should_match option on query_string_query ty @robertlyson!
  • #1388 Has child/top children: support for min score type and min/max_children
  • #1105 Added default and ignore_missing to timestamp mappings
  • #1350 Added new columns in the cat nodes API
  • #1352 Added support for _field_names mapping
  • #1357 Added support for analyze_wildcard on simeple_query_string
  • #1358 Added max_determinized_states to regexp filter and query and query string query
  • #1363 Added more translog stats on recovery api and cat recovery
  • #1364 Added pending tasks to cluster health and cat health API

Bug Fixes

  • #1347 Fix bad nuspec output path for .NET 4.0 nuget packages ty @cstlaurent!!
  • #1336 Fix id property lookup methods configured on connection settings not being cached
  • #1292 Allow sort() on fluent search descriptor no longer throws when passed null
  • Script sort should not be conditionless when only file is set
  • #1297 Conditonless queries inside dismax_query wre serialized as {} ty @danielsilva!
  • #1306 Fixed some several typo's in links in the documentation ty @romansp!
  • #1317 Fieldvalue helpers on response should not throw if field is missing
  • #993 and #992 Better documented some of the breaking changes from NEST 0.* to 1.*
  • Fixed typo in SnapshotBytesPerSecondMaximum() reported by @shanekenney 7a52b89

1.4.3

27 Mar 16:40
Compare
Choose a tag to compare

This 1.4.3 release is compatible with all Elasticsearch 1.x releases.
The previous 1.4.2 release is compatible up to (but not including) Elasticsearch 1.5.

Bug Fixes

  • #1291 Fix broken aggregations on Elasticsearch 1.5 due to elastic/elasticsearch#10284
  • #901 Fix enums from being skipped when calling MapFromAttributes(). They are now mapped as integers by default.
  • #1254 Fixed exception occurring when using Thrift and opening many simultaneous async connections (Ty @lukapor !)
  • #1281 Added support for standard deviation bounds to the extended stats aggregation response
  • #1279 Fixed an ArgumentNullException that occurred when using the MultiSearch object initializer syntax
  • #1275 Aliases was missing from cluster state response

Enhancements

  • #1267 Improved tracing: requests are now traced when they begin and end
  • #1280 Added a convenience extension method for passing a template name directly to TemplateExists() rather than using descriptors

1.4.2

25 Feb 17:18
Compare
Choose a tag to compare
  • #1241 Added lenient support to multi match query. (ty @jekstrom)
  • #1243 Added execution support to range filter. (ty @robertlyson)
  • #1244 Added shard query cache setting to index settings. (ty @Tasteful)
  • #1247 Added precision and orientation to geo_shape mapping.
  • #1249 Added file option to sort descriptor. (ty @nickelbob)
  • #1251 Improved type inference for TypeExists.
  • #1260 Exposed the ability to specify TcpKeepAlive at the request level via ConnectionSettings rather than setting it globally via the static ServicePointManager .NET class.

Bug Fixes

  • #1253 Terms filter did not allow passing an IEnumerable<T> field.
  • #1255 Host wasn't being populated in the response from node stats.
  • #1263 SniffOnStartup() was causing the client to sniff every time an ElasticClient was instantiated.

1.4.1

06 Feb 18:11
Compare
Choose a tag to compare

Bug Fixes

  • #1236 Aggregation response wasn't being read to completion if it contained a metric result with a null value.
  • #1223 FunctionScoreQuery was missing the Weight function.
  • #1222 Added the ability to specifiy predefined language-specific stopwords. (ty @danielsilva)
  • #1239 Added missing language analyzers: Irish, Latvian, and Sorani. (ty @coreycoto)

1.4.0

28 Jan 17:31
Compare
Choose a tag to compare

Transport Fixes

  • #1093 Do not retry when timeout is hit
  • #1157 Support for TCompactProtocol when using thrift (ty @robertlyson)
  • #1176 Inner Exception not available in MaxRetryException in a couple of scenarios
  • #1159 Thrift connection now listens to connect timeout (ty @eddyzanda)
  • When not using connection pooling, NEST 1.3 ignored the MaxRetries() setting when set explicitly
  • #1203 @aochsner spotted an instance where we were if checking on connect timeout but returning request timeout
  • #1189 Thrift did not work with SniffingConnectionPool at all!
    • Thift IConnection now opens connections as needed as suppose to once in the constructor

We also extended our Shield support:

We now know when you are running a cluster using SSL nodes in this case our default connect timeout is now 2 seconds. We also increased the default connect timeout from 200ms to 1s. From feedback we realized 200ms was a little to stringent in the cloud!
When sniffing whilst using SSL enabled nodes we make sure all the newly discovered nodes are https as well.

Aggregations

  • #1094 support extended_bounds on Histogram (ty @ftoft)
  • #1108 support pre_offset and post_offset on histogram aggregation
  • #1064 filters aggregation support added
  • #1063 scripted metric aggregation support added
  • #1132 children aggregation support added
  • #1168 top hits aggragation did not fully expose all options
  • #1169 Fix parsing of the top hits aggregation response
  • #1180 added missing execution hint options to terms aggregation
  • #1178 add background_filter support on significant_terms aggregation
  • #1206 Made the internal constructor that initializes aggregate responses public (ty @mausch)
  • #994 keys that looked like dates were translated to DateTime first and then tostring'ed
  • #1127 Lang was blatently missing on metric aggregations
  • #1111 Added google normalized distance and chi square to significant_terms agg.
  • #1079 Fix parsing inner aggregations of histograms when they represent ints.
  • #1106 Add pre_offset and post_offset params to histogram aggregation
  • #955 Default date histogram aggregation format to date_optional_time

Endpoint

  • #1115 Coordinated back and restore endpoint (ty @robertlyson)
  • #983 Search exists API
  • #496 Cluster reroute
  • #1098 Repository validation
  • #1084 Snapshot validation
  • #1040 Updrade API
  • #1083 Get Index API
  • #1212 Cat endpoints were missing from IElasticClient
  • #1146 DeleteByQuery responses contained a .Found property from Delete responses that does not exist causing confusion

New Features

  • #1100 Throttling related properties returned under indexing stats
  • #1113 Fluent DSL was missing highlight options on percolate and mpercolate
  • #1103 KeepTypes token filter fix
  • #1104 Support multiple geo points while sorting
  • #407 Configure id property of types in code
  • #1164 NodeInfo now also lists plugins (ty @ptming)
  • #1217 Add matched_queries to search response, NEST only supports named filters for the moment though.
  • #1102 Update API: Add support for scripted upserts
  • #1101 Term Vectors: add support for scripted upserts
  • #1216 FunctionScoreQuery now accepts a collection of functions

Query DSL

  • #1090 relation added to geoshape filter
  • #1099 add support for pre/post/dist to span_not query
  • #1218 Support for has child filters (ty @BuriakovNick!)
  • #1190 indices filter/query now supports all and none as shortcuts to actual filters on no_match_filter
  • #1158 add time_zone parameter to range query and filer

Bug Fixes

  • #1148 Sort information did not survive serialize => deserialize roundtrip
  • #1172 Fix wrong property mapping in SearchShard (ty @UdiBen)
  • #1174 Fix typo in json property name for execution hint
  • #629 Fix exception when deserializing relative Uri's
  • #1214 Function score only accepted weights as long and not as double.
  • #1160 When no default index is set we now default to _all explictly
  • #1154 GetSnapshot() did not parse errors correctly
  • #1209 Also gzip content when sent to Elasticsearch if compression is enabled

Build

  • #1188 Now support gitlink for automatic downloading of source locations straight from github!
  • #1149 We now continuously build on mono as well courtesy of travis!
  • #1207 Refactored build into logical modules
  • #1136 We now build separate .NET 4.5 dlls this to explicitly support dot net core when targeting
    the desktop clr.
  • #1207 We moved to paket since it resolves packages at build time and makes multi targeting that much easier. we might move back to nuget 3.0 once its on future parity with paket. This only affects how we consume nuget packages, we still publish to nuget!

Special Mentions

  • #1181 @amironoff tested filters aggregation on our bleeding edge builds and spotted a very particular parsing error and gave us one of the most detailed reproduce ever!
  • @dpen2000 fixed some casing issues on hour homepage
  • @anshudatta fixed our QueryRaw example in our documentation.

1.3.1

09 Dec 21:30
Compare
Choose a tag to compare

Bug Fixes

  • Added MaxRetryTimeout to safeguard against retrying timed out queries on other nodes. (#1093)
  • Added missing Relation option to GeoShape filters. (#1090)
  • Basic authentication mistakenly referred to as basic authorization. Marked all references to BasicAuthorization as obsolete in favor of BasicAuthentication. (#1117)

1.3.0

26 Nov 19:45
Compare
Choose a tag to compare

New Features

Bug Fixes

  • SniffingConnectionPool: Increased ping before sniff default timeout to 200 ms (previously 50 ms). (#1058)
  • Elasticsearch.Net.JsonNet: downgraded target framework to 4.0 to align with Elasticsearch.Net. (#1053)
  • Fixed GetMapping() so that multiple mappings can be retrieved. (#1066)
  • Typo fix in DeleteTemplateAsync method name. (#1070) Ty @ilivewithian!
  • Fixed a mapping issue with generic types that had multiple type arguments (#1044). Ty @radiosterne!
  • Fixed NullReferenceException in MappingWalker (#1068)

Internal

  • Refactored the Elasticsearch.Net internals unit tests into more logical units and amended it with unit tests for the way we handle streams internally for all code paths. This gave us enough confidence to refactor our transport layer, giving it less responsibilities. (#1060)

1.2.3

11 Nov 15:43
Compare
Choose a tag to compare

This release addresses a compatibility issue with aggregations between NEST and Elasticsearch 1.4. See #1041, #1042, and #1051 for details.

Bug Fixes

  • Fixed NullReferenceException in AggregationsHelper when a bucket aggregation is not found. (#1048) Thank you @mausch.

1.2.2

31 Oct 18:15
Compare
Choose a tag to compare

Bug Fixes

  • Fixed aggregation parsing error when running Elasticsearch 1.4.0.Beta1. (#1025)
  • Fixed Get<T>from treating a 404 (document doesn't exist) as an invalid response. (#1026)
  • Fixed CommonTermsQuery incorrectly serializing to common_terms instead of common. (#1027)
  • Fixed hash collision issue due to incorrect Equals logic in marker classes. (#1029)

1.2.1

22 Oct 22:38
Compare
Choose a tag to compare

Bug Fixes

  • Fixed NullReferenceException in TransportRequestState when Metrics was disabled. (#1009)
  • Fixed null dictionary values from being ignored when serialized even with setting NullValueHandling to Include. (#1004)