Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove OptionsWrapper members
These were only available as non-obsolete in 2.0 and there is zero usage
on nuget.org.
  • Loading branch information
ericstj committed Jun 14, 2023
commit 58a8cf4f6ceef12e1ab432882f8fb1f577fc4cdf
Original file line number Diff line number Diff line change
Expand Up @@ -218,12 +218,6 @@ public OptionsValidationException(string optionsName, System.Type optionsType, S
public partial class OptionsWrapper<[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicParameterlessConstructor)] TOptions> : Microsoft.Extensions.Options.IOptions<TOptions> where TOptions : class
{
public OptionsWrapper(TOptions options) { }
[System.ObsoleteAttribute("This method is retained only for compatibility.", error: true)]
public void Add(string name, TOptions options) { }
[System.ObsoleteAttribute("This method is retained only for compatibility.", error: true)]
public TOptions Get(string name) { throw null; }
[System.ObsoleteAttribute("This method is retained only for compatibility.", error: true)]
public bool Remove(string name) { throw null; }
public TOptions Value { get { throw null; } }
}
public partial class PostConfigureOptions<TOptions> : Microsoft.Extensions.Options.IPostConfigureOptions<TOptions> where TOptions : class
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- https://learn.microsoft.com/en-us/dotnet/fundamentals/package-validation/diagnostic-ids -->
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Suppression>
<DiagnosticId>CP0002</DiagnosticId>
<Target>M:Microsoft.Extensions.Options.OptionsWrapper`1.Add(System.String,`0)</Target>
<Left>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Left>
<Right>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Right>
<IsBaselineSuppression>true</IsBaselineSuppression>
</Suppression>
<Suppression>
<DiagnosticId>CP0002</DiagnosticId>
<Target>M:Microsoft.Extensions.Options.OptionsWrapper`1.Get(System.String)</Target>
<Left>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Left>
<Right>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Right>
<IsBaselineSuppression>true</IsBaselineSuppression>
</Suppression>
<Suppression>
<DiagnosticId>CP0002</DiagnosticId>
<Target>M:Microsoft.Extensions.Options.OptionsWrapper`1.Remove(System.String)</Target>
<Left>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Left>
<Right>lib/netstandard2.0/Microsoft.Extensions.Options.dll</Right>
<IsBaselineSuppression>true</IsBaselineSuppression>
</Suppression>
<Suppression>
<DiagnosticId>CP0015</DiagnosticId>
<Target>M:Microsoft.Extensions.Options.OptionsWrapper`1.Add(System.String,`0):[T:System.ObsoleteAttribute]</Target>
Expand Down
30 changes: 1 addition & 29 deletions src/libraries/Microsoft.Extensions.Options/src/OptionsWrapper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.

using System;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;

namespace Microsoft.Extensions.Options
Expand All @@ -27,34 +28,5 @@ public OptionsWrapper(TOptions options)
/// The options instance.
/// </summary>
public TOptions Value { get; }

/// <summary>
/// This method is retained only for compatibility.
/// </summary>
[Obsolete("This method is retained only for compatibility.", error: true)]
public void Add(string name, TOptions options)
{
throw new NotImplementedException();
}

/// <summary>
/// This method is retained only for compatibility.
/// </summary>
/// <param name="name">This parameter is ignored.</param>
/// <returns>The <see cref="Value"/>.</returns>
[Obsolete("This method is retained only for compatibility.", error: true)]
public TOptions Get(string name)
{
return Value;
}

/// <summary>
/// This method is retained only for compatibility.
/// </summary>
[Obsolete("This method is retained only for compatibility.", error: true)]
public bool Remove(string name)
{
throw new NotImplementedException();
}
}
}