Skip to content

Commit 808abc8

Browse files
authored
[sdk-traces] SamplingResult constructors accept null parameters (#5614)
1 parent 1bbafaa commit 808abc8

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

src/OpenTelemetry/.publicApi/Stable/PublicAPI.Shipped.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -315,8 +315,8 @@ OpenTelemetry.Trace.SamplingResult.Equals(OpenTelemetry.Trace.SamplingResult oth
315315
OpenTelemetry.Trace.SamplingResult.SamplingResult() -> void
316316
OpenTelemetry.Trace.SamplingResult.SamplingResult(bool isSampled) -> void
317317
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision) -> void
318-
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision, string! traceStateString) -> void
319-
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string!, object!>>! attributes) -> void
318+
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision, string? traceStateString) -> void
319+
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string!, object!>>? attributes) -> void
320320
OpenTelemetry.Trace.SamplingResult.SamplingResult(OpenTelemetry.Trace.SamplingDecision decision, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string!, object!>>? attributes, string? traceStateString) -> void
321321
OpenTelemetry.Trace.SamplingResult.TraceStateString.get -> string?
322322
OpenTelemetry.Trace.TraceIdRatioBasedSampler

src/OpenTelemetry/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@
2525
supported in stable builds.
2626
([#5607](https://github.com/open-telemetry/opentelemetry-dotnet/pull/5607))
2727

28+
* Fixed the nullable annotations for the `SamplingResult` constructors
29+
to allow `null` being supplied as `attributes` or `traceStateString`
30+
which has always been supported.
31+
([#5614](https://github.com/open-telemetry/opentelemetry-dotnet/pull/5614))
32+
2833
## 1.8.1
2934

3035
Released 2024-Apr-17

src/OpenTelemetry/Trace/SamplingResult.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public SamplingResult(bool isSampled)
3232
/// <param name="decision">indicates whether an activity object is recorded and sampled.</param>
3333
/// <param name="attributes">Attributes associated with the sampling decision. Attributes list passed to
3434
/// this method must be immutable. Mutations of the collection and/or attribute values may lead to unexpected behavior.</param>
35-
public SamplingResult(SamplingDecision decision, IEnumerable<KeyValuePair<string, object>> attributes)
35+
public SamplingResult(SamplingDecision decision, IEnumerable<KeyValuePair<string, object>>? attributes)
3636
: this(decision, attributes, traceStateString: null)
3737
{
3838
}
@@ -42,7 +42,7 @@ public SamplingResult(SamplingDecision decision, IEnumerable<KeyValuePair<string
4242
/// </summary>
4343
/// <param name="decision">indicates whether an activity object is recorded and sampled.</param>
4444
/// <param name="traceStateString">traceStateString associated with the created Activity.</param>
45-
public SamplingResult(SamplingDecision decision, string traceStateString)
45+
public SamplingResult(SamplingDecision decision, string? traceStateString)
4646
: this(decision, attributes: null, traceStateString)
4747
{
4848
}
@@ -67,7 +67,7 @@ public SamplingResult(SamplingDecision decision, IEnumerable<KeyValuePair<string
6767
}
6868

6969
/// <summary>
70-
/// Gets a value indicating indicates whether an activity object is recorded and sampled.
70+
/// Gets a value indicating whether an activity object is recorded and sampled.
7171
/// </summary>
7272
public SamplingDecision Decision { get; }
7373

0 commit comments

Comments
 (0)