From 7d2612275752c82f1b34683b03ee7e4da52845e2 Mon Sep 17 00:00:00 2001 From: Mpdreamz Date: Tue, 14 Feb 2017 15:55:12 +0100 Subject: [PATCH 1/2] add xmlDocs:true to relevant dotnet core projects --- src/Elasticsearch.Net/project.json | 3 ++- src/Nest/project.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Elasticsearch.Net/project.json b/src/Elasticsearch.Net/project.json index e9aeb61563e..68a4ae889f7 100644 --- a/src/Elasticsearch.Net/project.json +++ b/src/Elasticsearch.Net/project.json @@ -29,7 +29,8 @@ }, "copyright": "2014-2016 Elasticsearch BV", "buildOptions": { - "warningsAsErrors": false + "warningsAsErrors": false, + "xmlDocs":true }, "configurations": { "Debug": { diff --git a/src/Nest/project.json b/src/Nest/project.json index 35ce9fb88a1..629d0a0fd3f 100644 --- a/src/Nest/project.json +++ b/src/Nest/project.json @@ -29,7 +29,8 @@ }, "copyright": "2014-2016 Elasticsearch BV", "buildOptions": { - "warningsAsErrors": false + "warningsAsErrors": false, + "xmlDoc" : true }, "configurations": { "Debug": { From 2bdcc56de38a8f6bd8fc70f5fd1484419e8791a3 Mon Sep 17 00:00:00 2001 From: Mpdreamz Date: Tue, 14 Feb 2017 16:46:18 +0100 Subject: [PATCH 2/2] fix #2564 netstandard will now ship with xmldocs as well, fixed several xmldocs related warnings --- build/Elasticsearch.Net.nuspec | 1 + build/NEST.nuspec | 1 + .../geo-distance-aggregation-usage.asciidoc | 8 +- .../range/range-aggregation-usage.asciidoc | 8 +- .../terms/terms-aggregation-usage.asciidoc | 9 +- .../time-unit/time-units.asciidoc | 82 ++++++++++++++++++- docs/mapping/scalar/scalar-usage.asciidoc | 26 ++++++ .../range/numeric-range-query-usage.asciidoc | 7 +- src/Elasticsearch.Net/project.json | 3 +- .../Analysis/Analyzers/LanguageAnalyzer.cs | 2 +- .../Icu/Collation/IcuCollationStrength.cs | 8 +- .../Multiple/Bulk/BulkOperation/BulkUpdate.cs | 26 +++--- .../Multiple/BulkAll/BulkAllRequest.cs | 1 + .../MultiGet/Request/MultiGetOperation.cs | 1 - .../Multiple/Reindex/ReindexRequest.cs | 2 +- .../ReindexOnServer/ReindexRouting.cs | 3 +- .../Multiple/ScrollAll/ScrollAllRequest.cs | 3 +- .../Similarity/DFR/DFRSimilarity.cs | 12 +-- .../Similarity/IB/IBSimilarity.cs | 6 +- .../ElasticClient-GetIndexTemplate.cs | 1 - src/Nest/Ingest/Processors/JsonProcessor.cs | 2 +- .../AllocationAwarenessSettings.cs | 16 ++-- .../AllocationFilteringSettings.cs | 20 ++--- .../Modules/Cluster/ClusterModuleSettings.cs | 32 ++++---- .../Modules/Indices/IndicesModuleSettings.cs | 16 ++-- .../CreateRepositoryRequest.cs | 25 ++---- .../ElasticClient-DeleteRepository.cs | 2 +- .../Repositories/HdfsRepository.cs | 12 ++- .../GetSapshot/ElasticClient-GetSnapshot.cs | 2 +- .../Specialized/Script/ScriptQuery.cs | 2 +- src/Nest/project.json | 3 +- .../Versions/ElasticsearchVersion.cs | 2 - src/Tests/project.json | 5 +- 33 files changed, 225 insertions(+), 124 deletions(-) diff --git a/build/Elasticsearch.Net.nuspec b/build/Elasticsearch.Net.nuspec index e7b6d8922b4..36f99f73647 100644 --- a/build/Elasticsearch.Net.nuspec +++ b/build/Elasticsearch.Net.nuspec @@ -43,5 +43,6 @@ + \ No newline at end of file diff --git a/build/NEST.nuspec b/build/NEST.nuspec index 126584b9801..4d0ef0c1431 100644 --- a/build/NEST.nuspec +++ b/build/NEST.nuspec @@ -48,5 +48,6 @@ + \ No newline at end of file diff --git a/docs/aggregations/bucket/geo-distance/geo-distance-aggregation-usage.asciidoc b/docs/aggregations/bucket/geo-distance/geo-distance-aggregation-usage.asciidoc index 8be4f701c37..05470c99b6d 100644 --- a/docs/aggregations/bucket/geo-distance/geo-distance-aggregation-usage.asciidoc +++ b/docs/aggregations/bucket/geo-distance/geo-distance-aggregation-usage.asciidoc @@ -43,11 +43,11 @@ new SearchRequest { Field = Field((Project p) => p.Location), Origin = "52.376, 4.894", - Ranges = new List + Ranges = new List { - new Nest.Range { To = 100 }, - new Nest.Range { From = 100, To = 300 }, - new Nest.Range { From = 300 } + new AggregationRange { To = 100 }, + new AggregationRange { From = 100, To = 300 }, + new AggregationRange { From = 300 } } } } diff --git a/docs/aggregations/bucket/range/range-aggregation-usage.asciidoc b/docs/aggregations/bucket/range/range-aggregation-usage.asciidoc index ebff04d33eb..3a9c1825a8a 100644 --- a/docs/aggregations/bucket/range/range-aggregation-usage.asciidoc +++ b/docs/aggregations/bucket/range/range-aggregation-usage.asciidoc @@ -41,11 +41,11 @@ new SearchRequest Aggregations = new RangeAggregation("commit_ranges") { Field = Field(p => p.NumberOfCommits), - Ranges = new List + Ranges = new List { - { new Nest.Range { To = 100 } }, - { new Nest.Range { From = 100, To = 500 } }, - { new Nest.Range { From = 500 } } + { new AggregationRange { To = 100 } }, + { new AggregationRange { From = 100, To = 500 } }, + { new AggregationRange { From = 500 } } } } } diff --git a/docs/aggregations/bucket/terms/terms-aggregation-usage.asciidoc b/docs/aggregations/bucket/terms/terms-aggregation-usage.asciidoc index 72616eff135..6745bb01fd3 100644 --- a/docs/aggregations/bucket/terms/terms-aggregation-usage.asciidoc +++ b/docs/aggregations/bucket/terms/terms-aggregation-usage.asciidoc @@ -132,8 +132,9 @@ states.Meta["foo"].Should().Be("bar"); s => s .Size(0) .Aggregations(a => a - .Terms("commits", st => st + .Terms("commits", st => st .Field(p => p.NumberOfCommits) + .Missing(-1) ) ) ---- @@ -145,9 +146,10 @@ s => s new SearchRequest { Size = 0, - Aggregations = new TermsAggregation("commits") + Aggregations = new TermsAggregation("commits") { Field = Infer.Field(p => p.NumberOfCommits), + Missing = -1 } } ---- @@ -160,7 +162,8 @@ new SearchRequest "aggs": { "commits": { "terms": { - "field": "numberOfCommits" + "field": "numberOfCommits", + "missing": -1 } } } diff --git a/docs/common-options/time-unit/time-units.asciidoc b/docs/common-options/time-unit/time-units.asciidoc index 554208e3366..b2ef21fecb0 100644 --- a/docs/common-options/time-unit/time-units.asciidoc +++ b/docs/common-options/time-unit/time-units.asciidoc @@ -134,6 +134,20 @@ twoDays.Should().BeLessThan(twoWeeks); (twoDays <= new Time("2d")).Should().BeTrue(); ---- +Special Time values `0` and `-1` can be compared against eachother +and other Time values although admittingly this is a tad nonsensical. + +[source,csharp] +---- +Time.MinusOne.Should().BeLessThan(Time.Zero); + +Time.Zero.Should().BeGreaterThan(Time.MinusOne); + +Time.Zero.Should().BeLessThan(twoDays); + +Time.MinusOne.Should().BeLessThan(twoDays); +---- + And assert equality [source,csharp] @@ -146,9 +160,73 @@ twoDays.Should().Be(new Time("2d")); (new Time("2.1d") == new Time(TimeSpan.FromDays(2.1))).Should().BeTrue(); -(new Time("1") == new Time(1)).Should().BeTrue(); +(new Time("-1") == new Time(-1)).Should().BeFalse(); + +(new Time("-1") == Time.MinusOne).Should().BeTrue(); +---- + +[source,csharp] +---- +private class StringParsingTestCases : List> +{ + public void Add(string original, TimeSpan expect, string toString) => + this.Add(Tuple.Create(original, expect, toString)); + + public void Add(string bad, string argumentExceptionContains) => + this.Add(Tuple.Create(bad, TimeSpan.FromDays(1), argumentExceptionContains)); +} +---- + +[source,csharp] +---- +var testCases = new StringParsingTestCases +{ + { "1000 nanos", new TimeSpan(10) , "1000nanos"}, + { "1000nanos", new TimeSpan(10), "1000nanos"}, + { "1000 NANOS", new TimeSpan(10), "1000nanos" }, + { "1000NANOS", new TimeSpan(10), "1000nanos" }, + { "10micros", new TimeSpan(100), "10micros" }, + { "10 MS", new TimeSpan(0, 0, 0, 0, 10), "10ms" }, + { "10ms", new TimeSpan(0, 0, 0, 0, 10), "10ms" }, + { "10 ms", new TimeSpan(0, 0, 0, 0, 10), "10ms" }, + { "10s", new TimeSpan(0, 0, 10), "10s" }, + { "-10s", new TimeSpan(0, 0, -10), "-10s" }, + { "-10S", new TimeSpan(0, 0, -10), "-10s" }, + { "10m", new TimeSpan(0, 10, 0) , "10m"}, + { "10M", new TimeSpan(300, 0, 0, 0), "10M" }, // 300 days not minutes + { "10h", new TimeSpan(10, 0, 0), "10h" }, + { "10H", new TimeSpan(10, 0, 0) , "10h"}, + { "10d", new TimeSpan(10, 0, 0, 0) , "10d"}, +}; +---- + +[source,csharp] +---- +foreach (var testCase in testCases) +{ + var time = new Time(testCase.Item1); + time.ToTimeSpan().Should().Be(testCase.Item2, "we passed in {0}", testCase.Item1); + time.ToString().Should().Be(testCase.Item3); +} +---- + +[source,csharp] +---- +var testCases = new StringParsingTestCases +{ + { "1000", "missing an interval"}, + { "1000x", "string is invalid"}, +}; +---- -(new Time("-1") == new Time(-1)).Should().BeTrue(); +[source,csharp] +---- +foreach (var testCase in testCases) +{ + Action create = () => new Time(testCase.Item1); + var e = create.Invoking((a) => a()).ShouldThrow(testCase.Item1).Subject.First(); + e.Message.Should().Contain(testCase.Item3); +} ---- === Units of Time diff --git a/docs/mapping/scalar/scalar-usage.asciidoc b/docs/mapping/scalar/scalar-usage.asciidoc index deb4183eb60..d76fb6f2f59 100644 --- a/docs/mapping/scalar/scalar-usage.asciidoc +++ b/docs/mapping/scalar/scalar-usage.asciidoc @@ -103,6 +103,12 @@ public class ScalarPoco public IEnumerable Strings { get; set; } public ScalarEnum Enum { get; set; } + + public DateRange DateRange { get; set; } + public DoubleRange DoubleRange { get; set; } + public IntegerRange IntegerRange { get; set; } + public FloatRange FloatRange { get; set; } + public LongRange LongRange { get; set; } } ---- @@ -179,6 +185,11 @@ f => f .Scalar(p => p.String, m => m) .Scalar(p => p.Strings, m => m) .Scalar(p => p.Enum, m => m) + .Scalar(p => p.DateRange, m => m) + .Scalar(p => p.IntegerRange, m => m) + .Scalar(p => p.FloatRange, m => m) + .Scalar(p => p.LongRange, m => m) + .Scalar(p => p.DoubleRange, m => m) ) ---- @@ -394,6 +405,21 @@ null }, "enum": { "type": "integer" + }, + "dateRange": { + "type": "date_range" + }, + "integerRange": { + "type": "integer_range" + }, + "doubleRange": { + "type": "double_range" + }, + "longRange": { + "type": "long_range" + }, + "floatRange": { + "type": "float_range" } } } diff --git a/docs/query-dsl/term-level/range/numeric-range-query-usage.asciidoc b/docs/query-dsl/term-level/range/numeric-range-query-usage.asciidoc index 45e27ff0752..cabe94f7cf4 100644 --- a/docs/query-dsl/term-level/range/numeric-range-query-usage.asciidoc +++ b/docs/query-dsl/term-level/range/numeric-range-query-usage.asciidoc @@ -28,6 +28,7 @@ q .GreaterThanOrEquals(1.1) .LessThan(2.1) .LessThanOrEquals(2.0) + .Relation(RangeRelation.Within) ) ---- @@ -43,7 +44,8 @@ new NumericRangeQuery GreaterThan = 1.0, GreaterThanOrEqualTo = 1.1, LessThan = 2.1, - LessThanOrEqualTo = 2.0 + LessThanOrEqualTo = 2.0, + Relation = RangeRelation.Within } ---- @@ -58,7 +60,8 @@ new NumericRangeQuery "gt": 1.0, "gte": 1.1, "lt": 2.1, - "lte": 2.0 + "lte": 2.0, + "relation": "within" } } } diff --git a/src/Elasticsearch.Net/project.json b/src/Elasticsearch.Net/project.json index 68a4ae889f7..38f9a1955f4 100644 --- a/src/Elasticsearch.Net/project.json +++ b/src/Elasticsearch.Net/project.json @@ -30,7 +30,8 @@ "copyright": "2014-2016 Elasticsearch BV", "buildOptions": { "warningsAsErrors": false, - "xmlDocs":true + "xmlDocs":true, + "nowarn": ["CS1591", "1591", "1573"] }, "configurations": { "Debug": { diff --git a/src/Nest/Analysis/Analyzers/LanguageAnalyzer.cs b/src/Nest/Analysis/Analyzers/LanguageAnalyzer.cs index 0e1323e00a2..0d6d5b9a157 100644 --- a/src/Nest/Analysis/Analyzers/LanguageAnalyzer.cs +++ b/src/Nest/Analysis/Analyzers/LanguageAnalyzer.cs @@ -44,8 +44,8 @@ public override string Type /// public IEnumerable StemExclusionList { get; set; } - [JsonIgnore] /// + [JsonIgnore] public Language? Language { get { return _type.ToEnum(); } set { _type = value.GetStringValue().ToLowerInvariant(); } diff --git a/src/Nest/Analysis/Plugins/Icu/Collation/IcuCollationStrength.cs b/src/Nest/Analysis/Plugins/Icu/Collation/IcuCollationStrength.cs index 8615f06d5bd..bd1139c11dc 100644 --- a/src/Nest/Analysis/Plugins/Icu/Collation/IcuCollationStrength.cs +++ b/src/Nest/Analysis/Plugins/Icu/Collation/IcuCollationStrength.cs @@ -13,13 +13,13 @@ namespace Nest public enum IcuCollationStrength { /// - /// Typically, this is used to denote differences between base characters (for example, "a" < "b"). + /// Typically, this is used to denote differences between base characters (for example, "a" < "b"). /// It is the strongest difference. For example, dictionaries are divided into different sections by /// base character. /// [EnumMember(Value="primary")] Primary, /// - /// Accents in the characters are considered secondary differences (for example, "as" < "às" < "at"). + /// Accents in the characters are considered secondary differences (for example, "as" < "às" < "at"). /// Other differences between letters can also be considered secondary differences, depending on /// the language. A secondary difference is ignored when there is a primary difference anywhere /// in the strings. @@ -27,7 +27,7 @@ public enum IcuCollationStrength [EnumMember(Value="secondary")] Secondary, /// /// Upper and lower case differences in characters are distinguished at tertiary strength - /// (for example, "ao" < "Ao" < "aò"). In addition, a variant of a letter differs from the base + /// (for example, "ao" < "Ao" < "aò"). In addition, a variant of a letter differs from the base /// form on the tertiary strength (such as "A" and "Ⓐ"). Another example is the difference between /// large and small Kana. A tertiary difference is ignored when there is a primary or secondary /// difference anywhere in the strings. @@ -36,7 +36,7 @@ public enum IcuCollationStrength /// /// When punctuation is ignored (see Ignoring Punctuations in the User Guide) at PRIMARY to /// TERTIARY strength, an additional strength level can be used to distinguish words with - /// and without punctuation (for example, "ab" < "a-b" < "aB"). This difference is ignored + /// and without punctuation (for example, "ab" < "a-b" < "aB"). This difference is ignored /// when there is a PRIMARY, SECONDARY or TERTIARY difference. The QUATERNARY strength should /// only be used if ignoring punctuation is required. /// diff --git a/src/Nest/Document/Multiple/Bulk/BulkOperation/BulkUpdate.cs b/src/Nest/Document/Multiple/Bulk/BulkOperation/BulkUpdate.cs index 17002817020..eb6dddc10cd 100644 --- a/src/Nest/Document/Multiple/Bulk/BulkOperation/BulkUpdate.cs +++ b/src/Nest/Document/Multiple/Bulk/BulkOperation/BulkUpdate.cs @@ -9,7 +9,7 @@ public interface IBulkUpdateOperation : IBulkOperat where TPartialDocument : class { /// - /// Infers the id of the object to update from the provided object. + /// Infers the id of the object to update from the provided object. /// See to apply a partial object merge. /// TDocument IdFrom { get; set; } @@ -25,8 +25,8 @@ public interface IBulkUpdateOperation : IBulkOperat TPartialDocument Doc { get; set; } /// - /// Instead of sending a partial doc with plus an upsert doc - /// with , setting to true will + /// Instead of sending a partial doc with plus an upsert doc + /// with , setting to true will /// use the contents of doc as the upsert value. /// bool? DocAsUpsert { get; set; } @@ -74,7 +74,7 @@ public BulkUpdateOperation(TDocument idFrom, TPartialDocument update, bool useId protected override Type ClrType => typeof(TDocument); - protected override Id GetIdForOperation(Inferrer inferrer) => + protected override Id GetIdForOperation(Inferrer inferrer) => this.Id ?? new Id(new[] { this.IdFrom, this.Upsert }.FirstOrDefault(o=>o != null)); protected override object GetBody() => @@ -87,7 +87,7 @@ protected override object GetBody() => }; /// - /// Infers the id of the object to update from the provided object. + /// Infers the id of the object to update from the provided object. /// See to apply a partial object merge. /// public TDocument IdFrom { get; set; } @@ -103,8 +103,8 @@ protected override object GetBody() => public TPartialDocument Doc { get; set; } /// - /// Instead of sending a partial doc with plus an upsert doc - /// with , setting to true will + /// Instead of sending a partial doc with plus an upsert doc + /// with , setting to true will /// use the contents of doc as the upsert value. /// public bool? DocAsUpsert { get; set; } @@ -139,11 +139,11 @@ protected override object GetBulkOperationBody() => _DocAsUpsert = Self.DocAsUpsert }; - protected override Id GetIdForOperation(Inferrer inferrer) => + protected override Id GetIdForOperation(Inferrer inferrer) => Self.Id ?? new Id(new[] { Self.IdFrom, Self.Upsert }.FirstOrDefault(o=>o != null)); /// - /// Infers the id of the object to update from the provided object. + /// Infers the id of the object to update from the provided object. /// See to apply a partial object merge. /// public BulkUpdateDescriptor IdFrom(TDocument @object, bool useAsUpsert = false) @@ -163,11 +163,11 @@ public BulkUpdateDescriptor IdFrom(TDocument @objec public BulkUpdateDescriptor Doc(TPartialDocument @object) => Assign(a => a.Doc = @object); /// - /// Instead of sending a partial doc with plus an upsert doc - /// with , setting to true will + /// Instead of sending a partial doc with plus an upsert doc + /// with , setting to true will /// use the contents of doc as the upsert value. /// - public BulkUpdateDescriptor DocAsUpsert(bool partialDocumentAsUpsert = true) => + public BulkUpdateDescriptor DocAsUpsert(bool partialDocumentAsUpsert = true) => Assign(a => a.DocAsUpsert = partialDocumentAsUpsert); /// @@ -179,7 +179,7 @@ public BulkUpdateDescriptor Script(Func /// How many times an update should be retried in the case of a version conflict. /// - public BulkUpdateDescriptor RetriesOnConflict(int? retriesOnConflict) => + public BulkUpdateDescriptor RetriesOnConflict(int? retriesOnConflict) => Assign(a => a.RetriesOnConflict = retriesOnConflict); } } diff --git a/src/Nest/Document/Multiple/BulkAll/BulkAllRequest.cs b/src/Nest/Document/Multiple/BulkAll/BulkAllRequest.cs index 6a4998cefd5..42768870428 100644 --- a/src/Nest/Document/Multiple/BulkAll/BulkAllRequest.cs +++ b/src/Nest/Document/Multiple/BulkAll/BulkAllRequest.cs @@ -190,6 +190,7 @@ public BulkAllDescriptor BackOffRetries(int? backoffs) => /// When set each scroll request will additionally wait on as well as /// if set. Not that the consumer has to call /// on the same instance every time it is done. + /// /// The minimum maximum concurrency which would be the bottleneck of the producer consumer pipeline /// The maximum amplification back pressure of the greedier part of the producer consumer pipeline public BulkAllDescriptor BackPressure(int maxConcurrency, int? backPressureFactor = null) => diff --git a/src/Nest/Document/Multiple/MultiGet/Request/MultiGetOperation.cs b/src/Nest/Document/Multiple/MultiGet/Request/MultiGetOperation.cs index f556e4be5cd..d545eddbf30 100644 --- a/src/Nest/Document/Multiple/MultiGet/Request/MultiGetOperation.cs +++ b/src/Nest/Document/Multiple/MultiGet/Request/MultiGetOperation.cs @@ -68,7 +68,6 @@ public MultiGetOperationDescriptor() /// See also: https://github.com/elasticsearch/elasticsearch/issues/3636 /// /// - /// public MultiGetOperationDescriptor(bool allowExplicitIndex) : this() { diff --git a/src/Nest/Document/Multiple/Reindex/ReindexRequest.cs b/src/Nest/Document/Multiple/Reindex/ReindexRequest.cs index 07de5e7c910..42ccd106cd7 100644 --- a/src/Nest/Document/Multiple/Reindex/ReindexRequest.cs +++ b/src/Nest/Document/Multiple/Reindex/ReindexRequest.cs @@ -39,7 +39,7 @@ public interface IReindexRequest /// /// Provide a factory for the bulk all request, the first argument is the lazy collection of scroll results which is a mandatory - /// argument to create or + /// argument to create or /// /// Note that is always overriden as well as /// diff --git a/src/Nest/Document/Multiple/ReindexOnServer/ReindexRouting.cs b/src/Nest/Document/Multiple/ReindexOnServer/ReindexRouting.cs index 6c05aedba60..d9cb8af5ad0 100644 --- a/src/Nest/Document/Multiple/ReindexOnServer/ReindexRouting.cs +++ b/src/Nest/Document/Multiple/ReindexOnServer/ReindexRouting.cs @@ -11,9 +11,8 @@ public class ReindexRouting /// /// Use ReindexRouting.Keep or ReindexRouting.Discard if you want to sent "keep" or "discard", this - /// constructor always sends prefixed with '=' + /// constructor always sends newRoutingValue prefixed with '=' /// - /// public ReindexRouting(string newRoutingValue) : this(newRoutingValue, false) { } private ReindexRouting(string newRoutingValue, bool noPrefix) diff --git a/src/Nest/Document/Multiple/ScrollAll/ScrollAllRequest.cs b/src/Nest/Document/Multiple/ScrollAll/ScrollAllRequest.cs index c935e58f992..473552daf62 100644 --- a/src/Nest/Document/Multiple/ScrollAll/ScrollAllRequest.cs +++ b/src/Nest/Document/Multiple/ScrollAll/ScrollAllRequest.cs @@ -98,12 +98,13 @@ public ScrollAllDescriptor RoutingField(Expression> objectPat public ScrollAllDescriptor Search(Func, ISearchRequest> selector) => Assign(a => a.Search = selector?.Invoke(new SearchDescriptor())); + //TODO rename maxConsumers to maxConcurrency /// /// Simple back pressure implementation that makes sure the minimum max concurrency between producer and consumer /// is not amplified by the greedier of the two by more then a given back pressure factor /// When set each bulk request will call /// - /// The minimum maximum concurrency which would be the bottleneck of the producer consumer pipeline + /// The minimum maximum concurrency which would be the bottleneck of the producer consumer pipeline /// The maximum amplification back pressure of the greedier part of the producer consumer pipeline public ScrollAllDescriptor BackPressure(int maxConsumers, int? backPressureFactor = null) => Assign(a => a.BackPressure = new ProducerConsumerBackPressure(backPressureFactor, maxConsumers)); diff --git a/src/Nest/IndexModules/Similarity/DFR/DFRSimilarity.cs b/src/Nest/IndexModules/Similarity/DFR/DFRSimilarity.cs index aa866c1c2d6..c0e29d166cf 100644 --- a/src/Nest/IndexModules/Similarity/DFR/DFRSimilarity.cs +++ b/src/Nest/IndexModules/Similarity/DFR/DFRSimilarity.cs @@ -4,9 +4,9 @@ namespace Nest { /// - /// Implements the divergence from randomness (DFR) framework introduced in Gianni Amati and Cornelis Joost Van Rijsbergen. 2002. + /// Implements the divergence from randomness (DFR) framework introduced in Gianni Amati and Cornelis Joost Van Rijsbergen. 2002. /// Probabilistic models of information retrieval based on measuring the divergence from randomness. ACM Trans. Inf. Syst. 20, 4 (October 2002), 357-389. - /// The DFR scoring formula is composed of three separate components: the basic model, the aftereffect and an additional normalization component, + /// The DFR scoring formula is composed of three separate components: the basic model, the aftereffect and an additional normalization component, /// represented by the classes BasicModel, AfterEffect and Normalization, respectively.The names of these classes were chosen to match the names of their counterparts in the Terrier IR engine. /// public interface IDFRSimilarity : ISimilarity @@ -21,7 +21,7 @@ public interface IDFRSimilarity : ISimilarity Normalization? Normalization { get; set; } /// - /// Normalization model that assumes a uniform distribution of the term frequency. + /// Normalization model that assumes a uniform distribution of the term frequency. /// [JsonProperty("normalization.h1.c")] double? NormalizationH1C { get; set; } @@ -80,7 +80,7 @@ public class DFRSimilarityDescriptor public DFRSimilarityDescriptor NoNormalization() => Assign(a => a.Normalization = Normalization.No); /// - /// Normalization model that assumes a uniform distribution of the term frequency. + /// Normalization model that assumes a uniform distribution of the term frequency. /// /// hyper-parameter that controls the term frequency normalization with respect to the document length. public DFRSimilarityDescriptor NormalizationH1(double? c) => Assign(a => @@ -112,7 +112,7 @@ public DFRSimilarityDescriptor NormalizationH3(double? mu) => Assign(a => /// /// Pareto-Zipf Normalization /// - /// represents A/(A+1) where A measures the specificity of the language.. + /// represents A/(A+1) where A measures the specificity of the language.. public DFRSimilarityDescriptor NormalizationZ(double? z) => Assign(a => { a.Normalization = Normalization.Z; @@ -120,4 +120,4 @@ public DFRSimilarityDescriptor NormalizationZ(double? z) => Assign(a => }); } -} \ No newline at end of file +} diff --git a/src/Nest/IndexModules/Similarity/IB/IBSimilarity.cs b/src/Nest/IndexModules/Similarity/IB/IBSimilarity.cs index 91dbd361d7f..b321b90b904 100644 --- a/src/Nest/IndexModules/Similarity/IB/IBSimilarity.cs +++ b/src/Nest/IndexModules/Similarity/IB/IBSimilarity.cs @@ -15,7 +15,7 @@ public interface IIBSimilarity : ISimilarity Normalization? Normalization { get; set; } /// - /// Normalization model that assumes a uniform distribution of the term frequency. + /// Normalization model that assumes a uniform distribution of the term frequency. /// [JsonProperty("normalization.h1.c")] double? NormalizationH1C { get; set; } @@ -74,7 +74,7 @@ public class IBSimilarityDescriptor public IBSimilarityDescriptor NoNormalization() => Assign(a => a.Normalization = Normalization.No); /// - /// Normalization model that assumes a uniform distribution of the term frequency. + /// Normalization model that assumes a uniform distribution of the term frequency. /// /// hyper-parameter that controls the term frequency normalization with respect to the document length. public IBSimilarityDescriptor NormalizationH1(double? c) => Assign(a => @@ -106,7 +106,7 @@ public IBSimilarityDescriptor NormalizationH3(double? mu) => Assign(a => /// /// Pareto-Zipf Normalization /// - /// represents A/(A+1) where A measures the specificity of the language.. + /// represents A/(A+1) where A measures the specificity of the language.. public IBSimilarityDescriptor NormalizationZ(double? z) => Assign(a => { a.Normalization = Normalization.Z; diff --git a/src/Nest/Indices/IndexSettings/IndexTemplates/GetIndexTemplate/ElasticClient-GetIndexTemplate.cs b/src/Nest/Indices/IndexSettings/IndexTemplates/GetIndexTemplate/ElasticClient-GetIndexTemplate.cs index 4cad5938779..62d3054d65b 100644 --- a/src/Nest/Indices/IndexSettings/IndexTemplates/GetIndexTemplate/ElasticClient-GetIndexTemplate.cs +++ b/src/Nest/Indices/IndexSettings/IndexTemplates/GetIndexTemplate/ElasticClient-GetIndexTemplate.cs @@ -16,7 +16,6 @@ public partial interface IElasticClient /// Gets an index template /// http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-templates.html#getting /// - /// The name of the template to get /// An optional selector specifying additional parameters for the get template operation IGetIndexTemplateResponse GetIndexTemplate(Func selector = null); diff --git a/src/Nest/Ingest/Processors/JsonProcessor.cs b/src/Nest/Ingest/Processors/JsonProcessor.cs index 131c8aa46d9..bb1ba230614 100644 --- a/src/Nest/Ingest/Processors/JsonProcessor.cs +++ b/src/Nest/Ingest/Processors/JsonProcessor.cs @@ -7,7 +7,7 @@ namespace Nest { /// /// Converts a JSON string into a structured JSON object. - /// + /// [JsonObject(MemberSerialization.OptIn)] [JsonConverter(typeof(ProcessorJsonConverter))] public interface IJsonProcessor : IProcessor diff --git a/src/Nest/Modules/Cluster/AllocationAwareness/AllocationAwarenessSettings.cs b/src/Nest/Modules/Cluster/AllocationAwareness/AllocationAwarenessSettings.cs index ab6674e56cd..d7cebc031d5 100644 --- a/src/Nest/Modules/Cluster/AllocationAwareness/AllocationAwarenessSettings.cs +++ b/src/Nest/Modules/Cluster/AllocationAwareness/AllocationAwarenessSettings.cs @@ -5,10 +5,10 @@ namespace Nest { public interface IAllocationAwarenessSettings { - /// Determines which node attributes are taken into account when balancing shards across the shards + /// Determines which node attributes are taken into account when balancing shards across the shards IEnumerable Attributes { get; set; } - - /// With forced awareness shard copies are NEVER allicated within the same attribute + + /// With forced awareness shard copies are NEVER allicated within the same attribute IAllocationAttributes Forced { get; set; } } @@ -16,19 +16,19 @@ public class AllocationAwarenessSettings : IAllocationAwarenessSettings { /// public IEnumerable Attributes { get; set; } - + /// public IAllocationAttributes Forced { get; set; } } - public class AllocationAwarenessSettingsDescriptor + public class AllocationAwarenessSettingsDescriptor : DescriptorBase, IAllocationAwarenessSettings { /// IEnumerable IAllocationAwarenessSettings.Attributes { get; set; } - + /// IAllocationAttributes IAllocationAwarenessSettings.Forced { get; set; } @@ -42,8 +42,8 @@ public class AllocationAwarenessSettingsDescriptor public AllocationAwarenessSettingsDescriptor Force(IAllocationAttributes forceValues) => Assign(a => a.Forced = forceValues); /// - public AllocationAwarenessSettingsDescriptor Force(Func selector) => + public AllocationAwarenessSettingsDescriptor Force(Func selector) => Assign(a => a.Forced = selector?.Invoke(new AllocationAttributesDescriptor())); } -} \ No newline at end of file +} diff --git a/src/Nest/Modules/Cluster/AllocationFiltering/AllocationFilteringSettings.cs b/src/Nest/Modules/Cluster/AllocationFiltering/AllocationFilteringSettings.cs index 03defa5b905..bbc410b447e 100644 --- a/src/Nest/Modules/Cluster/AllocationFiltering/AllocationFilteringSettings.cs +++ b/src/Nest/Modules/Cluster/AllocationFiltering/AllocationFilteringSettings.cs @@ -4,13 +4,13 @@ namespace Nest { public interface IAllocationFilteringSettings { - /// Assign the index to a node whose {attribute} has at least one of the comma-separated values. + /// Assign the index to a node whose {attribute} has at least one of the comma-separated values. IAllocationAttributes Include { get; set; } - /// Assign the index to a node whose {attribute} has all of the comma-separated values. + /// Assign the index to a node whose {attribute} has all of the comma-separated values. IAllocationAttributes Exclude { get; set; } - /// Assign the index to a node whose {attribute} has none of the comma-separated values. + /// Assign the index to a node whose {attribute} has none of the comma-separated values. IAllocationAttributes Require { get; set; } } @@ -25,11 +25,11 @@ public class AllocationFilteringSettings : IAllocationFilteringSettings /// public IAllocationAttributes Require { get; set; } - + } - public class AllocationFilteringSettingsDescriptor + public class AllocationFilteringSettingsDescriptor : DescriptorBase, IAllocationFilteringSettings { @@ -41,26 +41,26 @@ public class AllocationFilteringSettingsDescriptor /// IAllocationAttributes IAllocationFilteringSettings.Require { get; set; } - + /// public AllocationFilteringSettingsDescriptor Include(IAllocationAttributes include) => Assign(a => a.Include = include); /// - public AllocationFilteringSettingsDescriptor Include(Func selector) => + public AllocationFilteringSettingsDescriptor Include(Func selector) => Assign(a => a.Include = selector?.Invoke(new AllocationAttributesDescriptor())); /// public AllocationFilteringSettingsDescriptor Exlude(IAllocationAttributes include) => Assign(a => a.Exclude = include); /// - public AllocationFilteringSettingsDescriptor Exclude(Func selector) => + public AllocationFilteringSettingsDescriptor Exclude(Func selector) => Assign(a => a.Exclude = selector?.Invoke(new AllocationAttributesDescriptor())); /// public AllocationFilteringSettingsDescriptor Require(IAllocationAttributes include) => Assign(a => a.Require = include); /// - public AllocationFilteringSettingsDescriptor Require(Func selector) => + public AllocationFilteringSettingsDescriptor Require(Func selector) => Assign(a => a.Require = selector?.Invoke(new AllocationAttributesDescriptor())); } -} \ No newline at end of file +} diff --git a/src/Nest/Modules/Cluster/ClusterModuleSettings.cs b/src/Nest/Modules/Cluster/ClusterModuleSettings.cs index 4ad77ca6967..de0c62f01ad 100644 --- a/src/Nest/Modules/Cluster/ClusterModuleSettings.cs +++ b/src/Nest/Modules/Cluster/ClusterModuleSettings.cs @@ -6,28 +6,28 @@ namespace Nest /// Settings to control where, when, and how shards are allocated to nodes. public interface IClusterModuleSettings { - /// + /// bool? ReadOnly { get; set; } - /// + /// IDictionary Logger { get; set; } - /// + /// IAllocationAwarenessSettings AllocationAwareness { get; set; } - /// + /// IAllocationFilteringSettings AllocationFiltering { get; set; } - /// + /// IDiskBasedShardAllocationSettings DiskBasedShardAllocation { get; set; } - /// + /// IShardAllocationSettings ShardAllocation { get; set; } - /// + /// IShardBalancingHeuristicsSettings ShardBalancingHeuristics { get; set; } - /// + /// IShardRebalancingSettings ShardRebalancing { get; set; } } @@ -87,33 +87,33 @@ public class ClusterModuleSettingsDescriptor : DescriptorBase logger) => Assign(a => a.Logger = logger); /// - public ClusterModuleSettingsDescriptor Logger(Func, FluentDictionary> selector) => + public ClusterModuleSettingsDescriptor Logger(Func, FluentDictionary> selector) => Assign(a => a.Logger = selector?.Invoke(new FluentDictionary())); /// - public ClusterModuleSettingsDescriptor AllocationAwareness(Func selector) => + public ClusterModuleSettingsDescriptor AllocationAwareness(Func selector) => Assign(a => a.AllocationAwareness = selector?.Invoke(new AllocationAwarenessSettings())); /// - public ClusterModuleSettingsDescriptor AllocationFiltering(Func selector) => + public ClusterModuleSettingsDescriptor AllocationFiltering(Func selector) => Assign(a => a.AllocationFiltering = selector?.Invoke(new AllocationFilteringSettingsDescriptor())); /// - public ClusterModuleSettingsDescriptor DiskBasedShardAllocation(Func selector) => + public ClusterModuleSettingsDescriptor DiskBasedShardAllocation(Func selector) => Assign(a => a.DiskBasedShardAllocation = selector?.Invoke(new DiskBasedShardAllocationSettingsDescriptor())); /// - public ClusterModuleSettingsDescriptor ShardAllocation(Func selector) => + public ClusterModuleSettingsDescriptor ShardAllocation(Func selector) => Assign(a => a.ShardAllocation = selector?.Invoke(new ShardAllocationSettingsDescriptor())); /// - public ClusterModuleSettingsDescriptor ShardBalancingHeuristics(Func selector) => + public ClusterModuleSettingsDescriptor ShardBalancingHeuristics(Func selector) => Assign(a => a.ShardBalancingHeuristics = selector?.Invoke(new ShardBalancingHeuristicsSettingsDescriptor())); /// - public ClusterModuleSettingsDescriptor ShardRebalancing(Func selector) => + public ClusterModuleSettingsDescriptor ShardRebalancing(Func selector) => Assign(a => a.ShardRebalancing = selector?.Invoke(new ShardRebalancingSettingsDescriptor())); } -} \ No newline at end of file +} diff --git a/src/Nest/Modules/Indices/IndicesModuleSettings.cs b/src/Nest/Modules/Indices/IndicesModuleSettings.cs index e1322b342d5..3f9fc1381f0 100644 --- a/src/Nest/Modules/Indices/IndicesModuleSettings.cs +++ b/src/Nest/Modules/Indices/IndicesModuleSettings.cs @@ -5,16 +5,16 @@ namespace Nest /// Settings to control where, when, and how shards are allocated to nodes. public interface IIndicesModuleSettings { - /// + /// string QeueriesCacheSize { get; set; } - /// + /// ICircuitBreakerSettings CircuitBreakerSettings { get; set; } - /// + /// FielddataSettings FielddataSettings { get; set; } - /// + /// IIndicesRecoverySettings RecoverySettings { get; set; } } @@ -53,15 +53,15 @@ public class IndicesModuleSettingsDescriptor : DescriptorBase - public IndicesModuleSettingsDescriptor CircuitBreaker(Func selector) => + public IndicesModuleSettingsDescriptor CircuitBreaker(Func selector) => Assign(a => a.CircuitBreakerSettings = selector?.Invoke(new CircuitBreakerSettingsDescriptor())); - //fielddatasettings are static + //fielddatasettings are static /// - public IndicesModuleSettingsDescriptor IndicesRecovery(Func selector) => + public IndicesModuleSettingsDescriptor IndicesRecovery(Func selector) => Assign(a => a.RecoverySettings = selector?.Invoke(new IndicesRecoverySettingsDescriptor())); } -} \ No newline at end of file +} diff --git a/src/Nest/Modules/SnapshotAndRestore/Repositories/CreateRepository/CreateRepositoryRequest.cs b/src/Nest/Modules/SnapshotAndRestore/Repositories/CreateRepository/CreateRepositoryRequest.cs index ef20fe8adb0..74cf4385758 100644 --- a/src/Nest/Modules/SnapshotAndRestore/Repositories/CreateRepository/CreateRepositoryRequest.cs +++ b/src/Nest/Modules/SnapshotAndRestore/Repositories/CreateRepository/CreateRepositoryRequest.cs @@ -5,12 +5,12 @@ namespace Nest { [JsonConverter(typeof(CreateRepositoryJsonConverter))] - public partial interface ICreateRepositoryRequest + public partial interface ICreateRepositoryRequest { ISnapshotRepository Repository { get; set; } } - public partial class CreateRepositoryRequest + public partial class CreateRepositoryRequest { public ISnapshotRepository Repository { get; set; } } @@ -21,24 +21,20 @@ public partial class CreateRepositoryDescriptor ISnapshotRepository ICreateRepositoryRequest.Repository { get; set; } /// - /// The shared file system repository ("type": "fs") is using shared file system to store snapshot. - /// The path specified in the location parameter should point to the same location in the shared - /// filesystem and be accessible on all data and master nodes. + /// The shared file system repository ("type": "fs") is using shared file system to store snapshot. + /// The path specified in the location parameter should point to the same location in the shared + /// filesystem and be accessible on all data and master nodes. /// - /// - /// public CreateRepositoryDescriptor FileSystem(Func selector) => Assign(a => a.Repository = selector?.Invoke(new FileSystemRepositoryDescriptor())); /// - /// The URL repository ("type": "url") can be used as an alternative read-only way to access data - /// created by shared file system repository is using shared file system to store snapshot. + /// The URL repository ("type": "url") can be used as an alternative read-only way to access data + /// created by shared file system repository is using shared file system to store snapshot. /// - /// - /// public CreateRepositoryDescriptor ReadOnlyUrl(Func selector) => Assign(a => a.Repository = selector?.Invoke(new ReadOnlyUrlRepositoryDescriptor())); - + /// /// Specify an azure storage container to snapshot and restore to. (defaults to a container named elasticsearch-snapshots) /// @@ -48,17 +44,12 @@ public CreateRepositoryDescriptor Azure(Func /// Create an snapshot/restore repository that points to an HDFS filesystem /// - /// - /// public CreateRepositoryDescriptor Hdfs(Func selector) => Assign(a => a.Repository = selector?.Invoke(new HdfsRepositoryDescriptor())); /// /// Snapshot and restore to an Amazon S3 bucket /// - /// - /// - /// public CreateRepositoryDescriptor S3(Func selector) => Assign(a => a.Repository = selector?.Invoke(new S3RepositoryDescriptor())); diff --git a/src/Nest/Modules/SnapshotAndRestore/Repositories/DeleteRepository/ElasticClient-DeleteRepository.cs b/src/Nest/Modules/SnapshotAndRestore/Repositories/DeleteRepository/ElasticClient-DeleteRepository.cs index 8651e06ef5a..de550996a49 100644 --- a/src/Nest/Modules/SnapshotAndRestore/Repositories/DeleteRepository/ElasticClient-DeleteRepository.cs +++ b/src/Nest/Modules/SnapshotAndRestore/Repositories/DeleteRepository/ElasticClient-DeleteRepository.cs @@ -11,7 +11,7 @@ public partial interface IElasticClient /// Delete a repository, if you have ongoing restore operations be sure to delete the indices being restored into first. /// http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-snapshots.html#_repositories /// - /// The name of the repository + /// The names of the repositories /// Optionaly provide the delete operation with more details> IDeleteRepositoryResponse DeleteRepository(Names repositories, Func selector = null); diff --git a/src/Nest/Modules/SnapshotAndRestore/Repositories/HdfsRepository.cs b/src/Nest/Modules/SnapshotAndRestore/Repositories/HdfsRepository.cs index 52aa984a842..7563505a59c 100644 --- a/src/Nest/Modules/SnapshotAndRestore/Repositories/HdfsRepository.cs +++ b/src/Nest/Modules/SnapshotAndRestore/Repositories/HdfsRepository.cs @@ -47,7 +47,7 @@ public interface IHdfsRepositorySettings : IRepositorySettings public class HdfsRepositorySettings : IHdfsRepositorySettings { internal HdfsRepositorySettings() { } - + public HdfsRepositorySettings(string path) { this.Path = path; @@ -63,7 +63,7 @@ public HdfsRepositorySettings(string path) public string Uri { get; set; } } - public class HdfsRepositorySettingsDescriptor + public class HdfsRepositorySettingsDescriptor : DescriptorBase, IHdfsRepositorySettings { string IHdfsRepositorySettings.Uri { get; set; } @@ -100,14 +100,12 @@ public HdfsRepositorySettingsDescriptor ConfigurationLocation(string configurati /// /// 'inlined' key=value added to the Hadoop configuration /// - /// - /// public HdfsRepositorySettingsDescriptor InlinedHadoopConfiguration(Func, FluentDictionary> inlineConfig) => Assign(a => a.InlineHadoopConfiguration = inlineConfig(new FluentDictionary()) ); /// - /// When set to true metadata files are stored in compressed format. This setting doesn't + /// When set to true metadata files are stored in compressed format. This setting doesn't /// affect index files that are already compressed by default. Defaults to false. /// /// @@ -128,10 +126,10 @@ public HdfsRepositorySettingsDescriptor InlinedHadoopConfiguration(Func Assign(a => a.ChunkSize = chunkSize); } - public class HdfsRepositoryDescriptor + public class HdfsRepositoryDescriptor : DescriptorBase, IHdfsRepository { - string ISnapshotRepository.Type { get { return "hdfs"; } } + string ISnapshotRepository.Type { get { return "hdfs"; } } IHdfsRepositorySettings IRepository.Settings { get; set; } diff --git a/src/Nest/Modules/SnapshotAndRestore/Snapshot/GetSapshot/ElasticClient-GetSnapshot.cs b/src/Nest/Modules/SnapshotAndRestore/Snapshot/GetSapshot/ElasticClient-GetSnapshot.cs index 9f7e9095f13..12cc2a2ad58 100644 --- a/src/Nest/Modules/SnapshotAndRestore/Snapshot/GetSapshot/ElasticClient-GetSnapshot.cs +++ b/src/Nest/Modules/SnapshotAndRestore/Snapshot/GetSapshot/ElasticClient-GetSnapshot.cs @@ -12,7 +12,7 @@ public partial interface IElasticClient /// http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-snapshots.html#_snapshot /// /// The repository name under which the snapshots live - /// The names of the snapshots we want information from (can be _all or wildcards) + /// The names of the snapshots we want information from (can be _all or wildcards) /// Optionally further describe the get snapshot operation IGetSnapshotResponse GetSnapshot(Name repository, Names snapshots, Func selector = null); diff --git a/src/Nest/QueryDsl/Specialized/Script/ScriptQuery.cs b/src/Nest/QueryDsl/Specialized/Script/ScriptQuery.cs index b896f9163cb..20686174669 100644 --- a/src/Nest/QueryDsl/Specialized/Script/ScriptQuery.cs +++ b/src/Nest/QueryDsl/Specialized/Script/ScriptQuery.cs @@ -74,7 +74,7 @@ public class ScriptQueryDescriptor /// it is preferable to use the ability to pass parameters to the script itself. /// /// - /// script: "doc['num1'].value > param1" + /// script: "doc['num1'].value > param1" /// param: "param1" = 5 /// /// param diff --git a/src/Nest/project.json b/src/Nest/project.json index 629d0a0fd3f..d50a7d9639c 100644 --- a/src/Nest/project.json +++ b/src/Nest/project.json @@ -30,7 +30,8 @@ "copyright": "2014-2016 Elasticsearch BV", "buildOptions": { "warningsAsErrors": false, - "xmlDoc" : true + "xmlDoc" : true, + "nowarn": ["CS1591", "1591", "1573"] }, "configurations": { "Debug": { diff --git a/src/Tests/Framework/Configuration/Versions/ElasticsearchVersion.cs b/src/Tests/Framework/Configuration/Versions/ElasticsearchVersion.cs index 4e3653b8e93..00d15209298 100644 --- a/src/Tests/Framework/Configuration/Versions/ElasticsearchVersion.cs +++ b/src/Tests/Framework/Configuration/Versions/ElasticsearchVersion.cs @@ -1,8 +1,6 @@ using System; using System.Collections.Concurrent; -using System.IO.Packaging; using System.Linq; -using System.Text.RegularExpressions; using System.Threading; using System.Xml.Linq; using Version = SemVer.Version; diff --git a/src/Tests/project.json b/src/Tests/project.json index 3aa7037bc4f..99092d39162 100644 --- a/src/Tests/project.json +++ b/src/Tests/project.json @@ -3,17 +3,18 @@ "buildOptions": { "emitEntryPoint": true, "warningsAsErrors": false, + "nowarn": ["CS1591", "1591", "1573"], "embed": [ "Document\\Single\\Attachment\\Attachment_Test_Document.pdf" ] }, "dependencies": { - "Bogus": "7.1.4", + "Bogus": "9.0.2", "BenchmarkDotNet": "0.10.0", "System.Buffers": "4.0.0", "DiffPlex": "2.0.0-alpha1", "Elasticsearch.Net": { "target": "project" }, - "FluentAssertions": "4.6.3", + "FluentAssertions": "4.19", "Nest": { "target": "project" }, "Newtonsoft.Json": "9.0.1", "Rx-Main": "2.3.0-beta2",