Fix APIDiff to include NETCore references for AspNetCore and WindowsDesktop (#9989)
* Initial plan * Add NETCore reference support for AspNetCore and WindowsDesktop API diffs Co-authored-by: ericstj <8918108+ericstj@users.noreply.github.com> * Run the updated script --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: ericstj <8918108+ericstj@users.noreply.github.com> Co-authored-by: Eric StJohn <ericstj@microsoft.com>
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
public sealed class CircuitOptions
|
||||
{
|
||||
+ public Microsoft.Extensions.Caching.Hybrid.HybridCache? HybridPersistenceCache { get; set; }
|
||||
+ public System.Nullable<System.TimeSpan> PersistedCircuitDistributedRetentionPeriod { get; set; }
|
||||
+ public System.TimeSpan? PersistedCircuitDistributedRetentionPeriod { get; set; }
|
||||
+ public int PersistedCircuitInMemoryMaxRetained { get; set; }
|
||||
+ public System.TimeSpan PersistedCircuitInMemoryRetentionPeriod { get; set; }
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
```diff
|
||||
namespace Microsoft.AspNetCore.Components.Routing
|
||||
{
|
||||
public sealed class NotFoundEventArgs
|
||||
public sealed class NotFoundEventArgs : System.EventArgs
|
||||
{
|
||||
- public NotFoundEventArgs();
|
||||
+ public NotFoundEventArgs(string url);
|
||||
|
||||
@@ -3,36 +3,43 @@
|
||||
```diff
|
||||
- namespace Microsoft.AspNetCore.Http.Validation
|
||||
- {
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public interface IValidatableInfo
|
||||
- {
|
||||
- System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.AspNetCore.Http.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
- }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public interface IValidatableInfoResolver
|
||||
- {
|
||||
- bool TryGetValidatableParameterInfo(System.Reflection.ParameterInfo parameterInfo, out Microsoft.AspNetCore.Http.Validation.IValidatableInfo? validatableInfo);
|
||||
- bool TryGetValidatableTypeInfo(System.Type type, out Microsoft.AspNetCore.Http.Validation.IValidatableInfo? validatableInfo);
|
||||
- }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public abstract class ValidatableParameterInfo : Microsoft.AspNetCore.Http.Validation.IValidatableInfo
|
||||
- {
|
||||
- protected ValidatableParameterInfo(System.Type parameterType, string name, string displayName);
|
||||
- protected abstract System.ComponentModel.DataAnnotations.ValidationAttribute[] GetValidationAttributes();
|
||||
- public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.AspNetCore.Http.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
- }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public abstract class ValidatablePropertyInfo : Microsoft.AspNetCore.Http.Validation.IValidatableInfo
|
||||
- {
|
||||
- protected ValidatablePropertyInfo(System.Type declaringType, System.Type propertyType, string name, string displayName);
|
||||
- protected abstract System.ComponentModel.DataAnnotations.ValidationAttribute[] GetValidationAttributes();
|
||||
- public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.AspNetCore.Http.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
- }
|
||||
- public sealed class ValidatableTypeAttribute
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public sealed class ValidatableTypeAttribute : System.Attribute
|
||||
- {
|
||||
- public ValidatableTypeAttribute();
|
||||
- }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public abstract class ValidatableTypeInfo : Microsoft.AspNetCore.Http.Validation.IValidatableInfo
|
||||
- {
|
||||
- protected ValidatableTypeInfo(System.Type type, System.Collections.Generic.IReadOnlyList<Microsoft.AspNetCore.Http.Validation.ValidatablePropertyInfo> members);
|
||||
- public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.AspNetCore.Http.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
- }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public sealed class ValidateContext
|
||||
- {
|
||||
- public ValidateContext();
|
||||
@@ -45,9 +52,12 @@
|
||||
- public class ValidationOptions
|
||||
- {
|
||||
- public ValidationOptions();
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public bool TryGetValidatableParameterInfo(System.Reflection.ParameterInfo parameterInfo, out Microsoft.AspNetCore.Http.Validation.IValidatableInfo? validatableInfo);
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public bool TryGetValidatableTypeInfo(System.Type type, out Microsoft.AspNetCore.Http.Validation.IValidatableInfo? validatableTypeInfo);
|
||||
- public int MaxDepth { get; set; }
|
||||
- [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
- public System.Collections.Generic.IList<Microsoft.AspNetCore.Http.Validation.IValidatableInfoResolver> Resolvers { get; }
|
||||
- }
|
||||
- }
|
||||
|
||||
@@ -3,8 +3,7 @@
|
||||
```diff
|
||||
namespace Microsoft.AspNetCore.Identity
|
||||
{
|
||||
public class SignInManager<TUser>
|
||||
where TUser : class
|
||||
public class SignInManager<TUser> where TUser : class
|
||||
{
|
||||
+ public SignInManager(Microsoft.AspNetCore.Identity.UserManager<TUser> userManager, Microsoft.AspNetCore.Http.IHttpContextAccessor contextAccessor, Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory<TUser> claimsFactory, Microsoft.Extensions.Options.IOptions<Microsoft.AspNetCore.Identity.IdentityOptions> optionsAccessor, Microsoft.Extensions.Logging.ILogger<Microsoft.AspNetCore.Identity.SignInManager<TUser>> logger, Microsoft.AspNetCore.Authentication.IAuthenticationSchemeProvider schemes, Microsoft.AspNetCore.Identity.IUserConfirmation<TUser> confirmation, Microsoft.AspNetCore.Identity.IPasskeyHandler<TUser> passkeyHandler);
|
||||
+ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyCreationOptions> ConfigurePasskeyCreationOptionsAsync(Microsoft.AspNetCore.Identity.PasskeyCreationArgs creationArgs);
|
||||
@@ -21,7 +20,7 @@
|
||||
+ {
|
||||
+ public AuthenticatorSelectionCriteria();
|
||||
+ public string? AuthenticatorAttachment { get; set; }
|
||||
+ public bool? RequireResidentKey { get; }
|
||||
+ public bool RequireResidentKey { get; }
|
||||
+ public string? ResidentKey { get; set; }
|
||||
+ public string UserVerification { get; set; }
|
||||
+ }
|
||||
@@ -41,8 +40,7 @@
|
||||
+ System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser>> PerformAssertionAsync(Microsoft.AspNetCore.Identity.PasskeyAssertionContext<TUser> context);
|
||||
+ System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.PasskeyAttestationResult> PerformAttestationAsync(Microsoft.AspNetCore.Identity.PasskeyAttestationContext<TUser> context);
|
||||
+ }
|
||||
+ public sealed class PasskeyAssertionContext<TUser>
|
||||
+ where TUser : class
|
||||
+ public sealed class PasskeyAssertionContext<TUser> where TUser : class
|
||||
+ {
|
||||
+ public PasskeyAssertionContext();
|
||||
+ public required string CredentialJson { get; init; }
|
||||
@@ -58,16 +56,17 @@
|
||||
+ public static Microsoft.AspNetCore.Identity.PasskeyAssertionResult<TUser> Success<TUser>(Microsoft.AspNetCore.Identity.UserPasskeyInfo passkey, TUser user)
|
||||
+ where TUser : class;
|
||||
+ }
|
||||
+ public sealed class PasskeyAssertionResult<TUser>
|
||||
+ where TUser : class
|
||||
+ public sealed class PasskeyAssertionResult<TUser> where TUser : class
|
||||
+ {
|
||||
+ public Microsoft.AspNetCore.Identity.PasskeyException? Failure { get; }
|
||||
+ public Microsoft.AspNetCore.Identity.UserPasskeyInfo? Passkey { get; }
|
||||
+ public bool? Succeeded { get; }
|
||||
+ [System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute(true, "Passkey")]
|
||||
+ [System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute(true, "User")]
|
||||
+ [System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute(false, "Failure")]
|
||||
+ public bool Succeeded { get; }
|
||||
+ public TUser? User { get; }
|
||||
+ }
|
||||
+ public sealed class PasskeyAttestationContext<TUser>
|
||||
+ where TUser : class
|
||||
+ public sealed class PasskeyAttestationContext<TUser> where TUser : class
|
||||
+ {
|
||||
+ public PasskeyAttestationContext();
|
||||
+ public required string CredentialJson { get; init; }
|
||||
@@ -81,14 +80,16 @@
|
||||
+ public static Microsoft.AspNetCore.Identity.PasskeyAttestationResult Success(Microsoft.AspNetCore.Identity.UserPasskeyInfo passkey);
|
||||
+ public Microsoft.AspNetCore.Identity.PasskeyException? Failure { get; }
|
||||
+ public Microsoft.AspNetCore.Identity.UserPasskeyInfo? Passkey { get; }
|
||||
+ public bool? Succeeded { get; }
|
||||
+ [System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute(true, "Passkey")]
|
||||
+ [System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute(false, "Failure")]
|
||||
+ public bool Succeeded { get; }
|
||||
+ }
|
||||
+ public sealed class PasskeyCreationArgs
|
||||
+ {
|
||||
+ public PasskeyCreationArgs(Microsoft.AspNetCore.Identity.PasskeyUserEntity userEntity);
|
||||
+ public string Attestation { get; set; }
|
||||
+ public Microsoft.AspNetCore.Identity.AuthenticatorSelectionCriteria? AuthenticatorSelection { get; set; }
|
||||
+ public System.Nullable<System.Text.Json.JsonElement> Extensions { get; set; }
|
||||
+ public System.Text.Json.JsonElement? Extensions { get; set; }
|
||||
+ public Microsoft.AspNetCore.Identity.PasskeyUserEntity UserEntity { get; }
|
||||
+ }
|
||||
+ public sealed class PasskeyCreationOptions
|
||||
@@ -98,22 +99,21 @@
|
||||
+ public override string ToString();
|
||||
+ public Microsoft.AspNetCore.Identity.PasskeyUserEntity UserEntity { get; }
|
||||
+ }
|
||||
+ public sealed class PasskeyException
|
||||
+ public sealed class PasskeyException : System.Exception
|
||||
+ {
|
||||
+ public PasskeyException(string message, System.Exception? innerException);
|
||||
+ public PasskeyException(string message);
|
||||
+ }
|
||||
+ public sealed class PasskeyOriginInfo
|
||||
+ public readonly struct PasskeyOriginInfo
|
||||
+ {
|
||||
+ public PasskeyOriginInfo(string origin, bool crossOrigin);
|
||||
+ public bool CrossOrigin { get; }
|
||||
+ public string Origin { get; }
|
||||
+ }
|
||||
+ public sealed class PasskeyRequestArgs<TUser>
|
||||
+ where TUser : class
|
||||
+ public sealed class PasskeyRequestArgs<TUser> where TUser : class
|
||||
+ {
|
||||
+ public PasskeyRequestArgs();
|
||||
+ public System.Nullable<System.Text.Json.JsonElement> Extensions { get; set; }
|
||||
+ public System.Text.Json.JsonElement? Extensions { get; set; }
|
||||
+ public TUser? User { get; set; }
|
||||
+ public string UserVerification { get; set; }
|
||||
+ }
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{
|
||||
public class HttpSysOptions
|
||||
{
|
||||
- public System.Action<Microsoft.AspNetCore.Http.Features.IFeatureCollection, System.ReadOnlySpan<byte>> TlsClientHelloBytesCallback { get; set; }
|
||||
- public System.Action<Microsoft.AspNetCore.Http.Features.IFeatureCollection, System.ReadOnlySpan<byte>>? TlsClientHelloBytesCallback { get; set; }
|
||||
}
|
||||
+ public interface IHttpSysRequestPropertyFeature
|
||||
+ {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{
|
||||
public class Matcher
|
||||
{
|
||||
+ public Matcher(System.StringComparison comparisonType = 5, bool preserveFilterOrder = false);
|
||||
+ public Matcher(System.StringComparison comparisonType = System.StringComparison.OrdinalIgnoreCase, bool preserveFilterOrder = false);
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
@@ -11,8 +11,7 @@
|
||||
{
|
||||
+ public static readonly System.Version Version3;
|
||||
}
|
||||
public class UserManager<TUser>
|
||||
where TUser : class
|
||||
public class UserManager<TUser> : System.IDisposable where TUser : class
|
||||
{
|
||||
+ public virtual System.Threading.Tasks.Task<TUser?> FindByPasskeyIdAsync(byte[] credentialId);
|
||||
+ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.UserPasskeyInfo?> GetPasskeyAsync(TUser user, byte[] credentialId);
|
||||
@@ -21,7 +20,7 @@
|
||||
+ public virtual System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.IdentityResult> SetPasskeyAsync(TUser user, Microsoft.AspNetCore.Identity.UserPasskeyInfo passkey);
|
||||
+ public virtual bool SupportsUserPasskey { get; }
|
||||
}
|
||||
+ public interface IUserPasskeyStore<TUser> : Microsoft.AspNetCore.Identity.IUserStore<TUser> where TUser : class
|
||||
+ public interface IUserPasskeyStore<TUser> : Microsoft.AspNetCore.Identity.IUserStore<TUser>, System.IDisposable where TUser : class
|
||||
+ {
|
||||
+ System.Threading.Tasks.Task<TUser?> FindByPasskeyIdAsync(byte[] credentialId, System.Threading.CancellationToken cancellationToken);
|
||||
+ System.Threading.Tasks.Task<Microsoft.AspNetCore.Identity.UserPasskeyInfo?> FindPasskeyAsync(TUser user, byte[] credentialId, System.Threading.CancellationToken cancellationToken);
|
||||
@@ -40,12 +39,11 @@
|
||||
+ public int ChallengeSize { get; set; }
|
||||
+ public string? ServerDomain { get; set; }
|
||||
+ public System.TimeSpan Timeout { get; set; }
|
||||
+ public sealed class CredentialBackupPolicy
|
||||
+ public enum CredentialBackupPolicy
|
||||
+ {
|
||||
+ public const Microsoft.AspNetCore.Identity.PasskeyOptions.CredentialBackupPolicy Allowed = 1;
|
||||
+ public const Microsoft.AspNetCore.Identity.PasskeyOptions.CredentialBackupPolicy Disallowed = 2;
|
||||
+ public const Microsoft.AspNetCore.Identity.PasskeyOptions.CredentialBackupPolicy Required = 0;
|
||||
+ public int value__;
|
||||
+ Required = 0,
|
||||
+ Allowed = 1,
|
||||
+ Disallowed = 2,
|
||||
+ }
|
||||
+ }
|
||||
+ public class UserPasskeyInfo
|
||||
|
||||
@@ -3,8 +3,7 @@
|
||||
```diff
|
||||
namespace Microsoft.AspNetCore.Identity
|
||||
{
|
||||
+ public class IdentityUserPasskey<TKey>
|
||||
+ where TKey : System.IEquatable<TKey>
|
||||
+ public class IdentityUserPasskey<TKey> where TKey : System.IEquatable<TKey>
|
||||
+ {
|
||||
+ public IdentityUserPasskey();
|
||||
+ public virtual byte[] AttestationObject { get; set; }
|
||||
|
||||
@@ -10,39 +10,46 @@
|
||||
+ }
|
||||
+ namespace Microsoft.Extensions.Validation
|
||||
+ {
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public interface IValidatableInfo
|
||||
+ {
|
||||
+ System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.Extensions.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
+ }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public interface IValidatableInfoResolver
|
||||
+ {
|
||||
+ bool TryGetValidatableParameterInfo(System.Reflection.ParameterInfo parameterInfo, out Microsoft.Extensions.Validation.IValidatableInfo? validatableInfo);
|
||||
+ bool TryGetValidatableTypeInfo(System.Type type, out Microsoft.Extensions.Validation.IValidatableInfo? validatableInfo);
|
||||
+ }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public abstract class ValidatableParameterInfo : Microsoft.Extensions.Validation.IValidatableInfo
|
||||
+ {
|
||||
+ protected ValidatableParameterInfo(System.Type parameterType, string name, string displayName);
|
||||
+ protected abstract System.ComponentModel.DataAnnotations.ValidationAttribute[] GetValidationAttributes();
|
||||
+ public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.Extensions.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
+ }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public abstract class ValidatablePropertyInfo : Microsoft.Extensions.Validation.IValidatableInfo
|
||||
+ {
|
||||
+ protected ValidatablePropertyInfo(System.Type declaringType, System.Type propertyType, string name, string displayName);
|
||||
+ protected abstract System.ComponentModel.DataAnnotations.ValidationAttribute[] GetValidationAttributes();
|
||||
+ public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.Extensions.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
+ }
|
||||
+ public sealed class ValidatableTypeAttribute
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public sealed class ValidatableTypeAttribute : System.Attribute
|
||||
+ {
|
||||
+ public ValidatableTypeAttribute();
|
||||
+ }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public abstract class ValidatableTypeInfo : Microsoft.Extensions.Validation.IValidatableInfo
|
||||
+ {
|
||||
+ protected ValidatableTypeInfo(System.Type type, System.Collections.Generic.IReadOnlyList<Microsoft.Extensions.Validation.ValidatablePropertyInfo> members);
|
||||
+ public virtual System.Threading.Tasks.Task ValidateAsync(object? value, Microsoft.Extensions.Validation.ValidateContext context, System.Threading.CancellationToken cancellationToken);
|
||||
+ }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public sealed class ValidateContext
|
||||
+ {
|
||||
+ public event System.Action<Microsoft.Extensions.Validation.ValidationErrorContext?>? OnValidationError { add; remove; }
|
||||
+ public event System.Action<Microsoft.Extensions.Validation.ValidationErrorContext>? OnValidationError { add; remove; }
|
||||
+ public ValidateContext();
|
||||
+ public int CurrentDepth { get; set; }
|
||||
+ public string CurrentValidationPath { get; set; }
|
||||
@@ -50,7 +57,9 @@
|
||||
+ public System.Collections.Generic.Dictionary<string, string[]>? ValidationErrors { get; set; }
|
||||
+ public required Microsoft.Extensions.Validation.ValidationOptions ValidationOptions { get; set; }
|
||||
+ }
|
||||
+ public sealed class ValidationErrorContext
|
||||
+ [System.Diagnostics.DebuggerDisplayAttribute("{GetDebuggerDisplay(),nq}")]
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public readonly struct ValidationErrorContext
|
||||
+ {
|
||||
+ public required object? Container { get; init; }
|
||||
+ public required System.Collections.Generic.IReadOnlyList<string> Errors { get; init; }
|
||||
@@ -60,9 +69,12 @@
|
||||
+ public class ValidationOptions
|
||||
+ {
|
||||
+ public ValidationOptions();
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public bool TryGetValidatableParameterInfo(System.Reflection.ParameterInfo parameterInfo, out Microsoft.Extensions.Validation.IValidatableInfo? validatableInfo);
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public bool TryGetValidatableTypeInfo(System.Type type, out Microsoft.Extensions.Validation.IValidatableInfo? validatableTypeInfo);
|
||||
+ public int MaxDepth { get; set; }
|
||||
+ [System.Diagnostics.CodeAnalysis.ExperimentalAttribute("ASP0029", UrlFormat = "https://aka.ms/aspnet/analyzer/{0}")]
|
||||
+ public System.Collections.Generic.IList<Microsoft.Extensions.Validation.IValidatableInfoResolver> Resolvers { get; }
|
||||
+ }
|
||||
+ }
|
||||
|
||||
@@ -3,28 +3,30 @@
|
||||
```diff
|
||||
+ namespace System.Formats.Cbor
|
||||
+ {
|
||||
+ public sealed class CborConformanceMode
|
||||
+ public enum CborConformanceMode
|
||||
+ {
|
||||
+ public const System.Formats.Cbor.CborConformanceMode Canonical = 2;
|
||||
+ public const System.Formats.Cbor.CborConformanceMode Ctap2Canonical = 3;
|
||||
+ public const System.Formats.Cbor.CborConformanceMode Lax = 0;
|
||||
+ public const System.Formats.Cbor.CborConformanceMode Strict = 1;
|
||||
+ public int value__;
|
||||
+ Lax = 0,
|
||||
+ Strict = 1,
|
||||
+ Canonical = 2,
|
||||
+ Ctap2Canonical = 3,
|
||||
+ }
|
||||
+ public class CborContentException
|
||||
+ public class CborContentException : System.Exception
|
||||
+ {
|
||||
+ [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called or extended by application code.", DiagnosticId = "SYSLIB0051", UrlFormat = "https://aka.ms/dotnet-warnings/{0}")]
|
||||
+ protected CborContentException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
|
||||
+ public CborContentException(string? message, System.Exception? inner);
|
||||
+ public CborContentException(string? message);
|
||||
+ protected CborContentException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);
|
||||
+ }
|
||||
+ public class CborReader
|
||||
+ {
|
||||
+ public CborReader(System.ReadOnlyMemory<byte> data, System.Formats.Cbor.CborConformanceMode conformanceMode = 1, bool allowMultipleRootLevelValues = false);
|
||||
+ public CborReader(System.ReadOnlyMemory<byte> data, System.Formats.Cbor.CborConformanceMode conformanceMode = System.Formats.Cbor.CborConformanceMode.Strict, bool allowMultipleRootLevelValues = false);
|
||||
+ public System.Formats.Cbor.CborReaderState PeekState();
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public System.Formats.Cbor.CborTag PeekTag();
|
||||
+ public System.Numerics.BigInteger ReadBigInteger();
|
||||
+ public bool ReadBoolean();
|
||||
+ public byte[] ReadByteString();
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public ulong ReadCborNegativeIntegerRepresentation();
|
||||
+ public System.DateTimeOffset ReadDateTimeOffset();
|
||||
+ public decimal ReadDecimal();
|
||||
@@ -42,13 +44,16 @@
|
||||
+ public void ReadNull();
|
||||
+ public System.Formats.Cbor.CborSimpleValue ReadSimpleValue();
|
||||
+ public float ReadSingle();
|
||||
+ public System.Nullable<int> ReadStartArray();
|
||||
+ public int? ReadStartArray();
|
||||
+ public void ReadStartIndefiniteLengthByteString();
|
||||
+ public void ReadStartIndefiniteLengthTextString();
|
||||
+ public System.Nullable<int> ReadStartMap();
|
||||
+ public int? ReadStartMap();
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public System.Formats.Cbor.CborTag ReadTag();
|
||||
+ public string ReadTextString();
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public uint ReadUInt32();
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public ulong ReadUInt64();
|
||||
+ public System.DateTimeOffset ReadUnixTimeSeconds();
|
||||
+ public void Reset(System.ReadOnlyMemory<byte> data);
|
||||
@@ -61,62 +66,60 @@
|
||||
+ public System.Formats.Cbor.CborConformanceMode ConformanceMode { get; }
|
||||
+ public int CurrentDepth { get; }
|
||||
+ }
|
||||
+ public sealed class CborReaderState
|
||||
+ public enum CborReaderState
|
||||
+ {
|
||||
+ public const System.Formats.Cbor.CborReaderState Boolean = 19;
|
||||
+ public const System.Formats.Cbor.CborReaderState ByteString = 3;
|
||||
+ public const System.Formats.Cbor.CborReaderState DoublePrecisionFloat = 17;
|
||||
+ public const System.Formats.Cbor.CborReaderState EndArray = 10;
|
||||
+ public const System.Formats.Cbor.CborReaderState EndIndefiniteLengthByteString = 5;
|
||||
+ public const System.Formats.Cbor.CborReaderState EndIndefiniteLengthTextString = 8;
|
||||
+ public const System.Formats.Cbor.CborReaderState EndMap = 12;
|
||||
+ public const System.Formats.Cbor.CborReaderState Finished = 20;
|
||||
+ public const System.Formats.Cbor.CborReaderState HalfPrecisionFloat = 15;
|
||||
+ public const System.Formats.Cbor.CborReaderState NegativeInteger = 2;
|
||||
+ public const System.Formats.Cbor.CborReaderState Null = 18;
|
||||
+ public const System.Formats.Cbor.CborReaderState SimpleValue = 14;
|
||||
+ public const System.Formats.Cbor.CborReaderState SinglePrecisionFloat = 16;
|
||||
+ public const System.Formats.Cbor.CborReaderState StartArray = 9;
|
||||
+ public const System.Formats.Cbor.CborReaderState StartIndefiniteLengthByteString = 4;
|
||||
+ public const System.Formats.Cbor.CborReaderState StartIndefiniteLengthTextString = 7;
|
||||
+ public const System.Formats.Cbor.CborReaderState StartMap = 11;
|
||||
+ public const System.Formats.Cbor.CborReaderState Tag = 13;
|
||||
+ public const System.Formats.Cbor.CborReaderState TextString = 6;
|
||||
+ public const System.Formats.Cbor.CborReaderState Undefined = 0;
|
||||
+ public const System.Formats.Cbor.CborReaderState UnsignedInteger = 1;
|
||||
+ public int value__;
|
||||
+ Undefined = 0,
|
||||
+ UnsignedInteger = 1,
|
||||
+ EndArray = 10,
|
||||
+ StartMap = 11,
|
||||
+ EndMap = 12,
|
||||
+ Tag = 13,
|
||||
+ SimpleValue = 14,
|
||||
+ HalfPrecisionFloat = 15,
|
||||
+ SinglePrecisionFloat = 16,
|
||||
+ DoublePrecisionFloat = 17,
|
||||
+ Null = 18,
|
||||
+ Boolean = 19,
|
||||
+ NegativeInteger = 2,
|
||||
+ Finished = 20,
|
||||
+ ByteString = 3,
|
||||
+ StartIndefiniteLengthByteString = 4,
|
||||
+ EndIndefiniteLengthByteString = 5,
|
||||
+ TextString = 6,
|
||||
+ StartIndefiniteLengthTextString = 7,
|
||||
+ EndIndefiniteLengthTextString = 8,
|
||||
+ StartArray = 9,
|
||||
+ }
|
||||
+ public sealed class CborSimpleValue
|
||||
+ public enum CborSimpleValue : byte
|
||||
+ {
|
||||
+ public const System.Formats.Cbor.CborSimpleValue False = 20;
|
||||
+ public const System.Formats.Cbor.CborSimpleValue Null = 22;
|
||||
+ public const System.Formats.Cbor.CborSimpleValue True = 21;
|
||||
+ public const System.Formats.Cbor.CborSimpleValue Undefined = 23;
|
||||
+ public byte value__;
|
||||
+ False = 20,
|
||||
+ True = 21,
|
||||
+ Null = 22,
|
||||
+ Undefined = 23,
|
||||
+ }
|
||||
+ public sealed class CborTag
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public enum CborTag : ulong
|
||||
+ {
|
||||
+ public const System.Formats.Cbor.CborTag Base16StringLaterEncoding = 23UL;
|
||||
+ public const System.Formats.Cbor.CborTag Base64 = 34UL;
|
||||
+ public const System.Formats.Cbor.CborTag Base64StringLaterEncoding = 22UL;
|
||||
+ public const System.Formats.Cbor.CborTag Base64Url = 33UL;
|
||||
+ public const System.Formats.Cbor.CborTag Base64UrlLaterEncoding = 21UL;
|
||||
+ public const System.Formats.Cbor.CborTag BigFloat = 5UL;
|
||||
+ public const System.Formats.Cbor.CborTag DateTimeString = 0UL;
|
||||
+ public const System.Formats.Cbor.CborTag DecimalFraction = 4UL;
|
||||
+ public const System.Formats.Cbor.CborTag EncodedCborDataItem = 24UL;
|
||||
+ public const System.Formats.Cbor.CborTag MimeMessage = 36UL;
|
||||
+ public const System.Formats.Cbor.CborTag NegativeBigNum = 3UL;
|
||||
+ public const System.Formats.Cbor.CborTag Regex = 35UL;
|
||||
+ public const System.Formats.Cbor.CborTag SelfDescribeCbor = 55799UL;
|
||||
+ public const System.Formats.Cbor.CborTag UnixTimeSeconds = 1UL;
|
||||
+ public const System.Formats.Cbor.CborTag UnsignedBigNum = 2UL;
|
||||
+ public const System.Formats.Cbor.CborTag Uri = 32UL;
|
||||
+ public ulong value__;
|
||||
+ DateTimeString = 0UL,
|
||||
+ UnixTimeSeconds = 1UL,
|
||||
+ UnsignedBigNum = 2UL,
|
||||
+ Base64UrlLaterEncoding = 21UL,
|
||||
+ Base64StringLaterEncoding = 22UL,
|
||||
+ Base16StringLaterEncoding = 23UL,
|
||||
+ EncodedCborDataItem = 24UL,
|
||||
+ NegativeBigNum = 3UL,
|
||||
+ Uri = 32UL,
|
||||
+ Base64Url = 33UL,
|
||||
+ Base64 = 34UL,
|
||||
+ Regex = 35UL,
|
||||
+ MimeMessage = 36UL,
|
||||
+ DecimalFraction = 4UL,
|
||||
+ BigFloat = 5UL,
|
||||
+ SelfDescribeCbor = 55799UL,
|
||||
+ }
|
||||
+ public class CborWriter
|
||||
+ {
|
||||
+ public CborWriter(System.Formats.Cbor.CborConformanceMode conformanceMode = 1, bool convertIndefiniteLengthEncodings = false, bool allowMultipleRootLevelValues = false, int initialCapacity = -1);
|
||||
+ public CborWriter(System.Formats.Cbor.CborConformanceMode conformanceMode = System.Formats.Cbor.CborConformanceMode.Strict, bool convertIndefiniteLengthEncodings = false, bool allowMultipleRootLevelValues = false, int initialCapacity = -1);
|
||||
+ public CborWriter(System.Formats.Cbor.CborConformanceMode conformanceMode, bool convertIndefiniteLengthEncodings, bool allowMultipleRootLevelValues);
|
||||
+ public byte[] Encode();
|
||||
+ public int Encode(System.Span<byte> destination);
|
||||
@@ -126,6 +129,7 @@
|
||||
+ public void WriteBoolean(bool value);
|
||||
+ public void WriteByteString(byte[] value);
|
||||
+ public void WriteByteString(System.ReadOnlySpan<byte> value);
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public void WriteCborNegativeIntegerRepresentation(ulong value);
|
||||
+ public void WriteDateTimeOffset(System.DateTimeOffset value);
|
||||
+ public void WriteDecimal(decimal value);
|
||||
@@ -141,14 +145,17 @@
|
||||
+ public void WriteNull();
|
||||
+ public void WriteSimpleValue(System.Formats.Cbor.CborSimpleValue value);
|
||||
+ public void WriteSingle(float value);
|
||||
+ public void WriteStartArray(System.Nullable<int> definiteLength);
|
||||
+ public void WriteStartArray(int? definiteLength);
|
||||
+ public void WriteStartIndefiniteLengthByteString();
|
||||
+ public void WriteStartIndefiniteLengthTextString();
|
||||
+ public void WriteStartMap(System.Nullable<int> definiteLength);
|
||||
+ public void WriteStartMap(int? definiteLength);
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public void WriteTag(System.Formats.Cbor.CborTag tag);
|
||||
+ public void WriteTextString(System.ReadOnlySpan<char> value);
|
||||
+ public void WriteTextString(string value);
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public void WriteUInt32(uint value);
|
||||
+ [System.CLSCompliantAttribute(false)]
|
||||
+ public void WriteUInt64(ulong value);
|
||||
+ public void WriteUnixTimeSeconds(double seconds);
|
||||
+ public void WriteUnixTimeSeconds(long seconds);
|
||||
|
||||
@@ -3,24 +3,23 @@
|
||||
```diff
|
||||
namespace System.Windows.Forms
|
||||
{
|
||||
public class DataGridView : System.Windows.Forms.Control
|
||||
public class DataGridView : System.Windows.Forms.Control, System.ComponentModel.ISupportInitialize
|
||||
{
|
||||
+ protected override System.Windows.Forms.CreateParams CreateParams { get; }
|
||||
}
|
||||
public class Form : System.Windows.Forms.ContainerControl
|
||||
{
|
||||
+ public System.Windows.Forms.ScreenCaptureMode? FormScreenCaptureMode { get; set; }
|
||||
+ public System.Windows.Forms.ScreenCaptureMode FormScreenCaptureMode { get; set; }
|
||||
}
|
||||
public class TabPage : System.Windows.Forms.Panel
|
||||
{
|
||||
+ protected override System.Windows.Forms.CreateParams CreateParams { get; }
|
||||
}
|
||||
+ public sealed class ScreenCaptureMode
|
||||
+ public enum ScreenCaptureMode
|
||||
+ {
|
||||
+ public const System.Windows.Forms.ScreenCaptureMode Allow = 0;
|
||||
+ public const System.Windows.Forms.ScreenCaptureMode HideContent = 1;
|
||||
+ public const System.Windows.Forms.ScreenCaptureMode HideWindow = 2;
|
||||
+ public int value__;
|
||||
+ Allow = 0,
|
||||
+ HideContent = 1,
|
||||
+ HideWindow = 2,
|
||||
+ }
|
||||
}
|
||||
```
|
||||
|
||||
@@ -381,13 +381,28 @@ Function RunApiDiff {
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]
|
||||
$afterFriendlyName
|
||||
,
|
||||
[Parameter(Mandatory = $false)]
|
||||
[string]
|
||||
$beforeReferenceFolder = ""
|
||||
,
|
||||
[Parameter(Mandatory = $false)]
|
||||
[string]
|
||||
$afterReferenceFolder = ""
|
||||
)
|
||||
|
||||
VerifyPathOrExit $apiDiffExe
|
||||
VerifyPathOrExit $beforeFolder
|
||||
VerifyPathOrExit $afterFolder
|
||||
|
||||
RunCommand "$apiDiffExe -b '$beforeFolder' -a '$afterFolder' -o '$outputFolder' -tc '$tableOfContentsFileNamePrefix' -eas '$assembliesToExclude' -eattrs '$attributesToExclude' -bfn '$beforeFriendlyName' -afn '$afterFriendlyName'"
|
||||
$referenceParams = ""
|
||||
if (-not [string]::IsNullOrEmpty($beforeReferenceFolder) -and -not [string]::IsNullOrEmpty($afterReferenceFolder)) {
|
||||
VerifyPathOrExit $beforeReferenceFolder
|
||||
VerifyPathOrExit $afterReferenceFolder
|
||||
$referenceParams = " -rb '$beforeReferenceFolder' -ra '$afterReferenceFolder'"
|
||||
}
|
||||
|
||||
RunCommand "$apiDiffExe -b '$beforeFolder' -a '$afterFolder' -o '$outputFolder' -tc '$tableOfContentsFileNamePrefix' -eas '$assembliesToExclude' -eattrs '$attributesToExclude' -bfn '$beforeFriendlyName' -afn '$afterFriendlyName'$referenceParams"
|
||||
}
|
||||
|
||||
Function CreateReadme {
|
||||
@@ -599,10 +614,21 @@ Function ProcessSdk
|
||||
DownloadPackage $UseDefaultNuGetFeed $sdkName "After" $CurrentDotNetVersion $CurrentPreviewOrRC $CurrentPreviewNumberVersion ([ref]$afterDllFolder)
|
||||
VerifyPathOrExit $afterDllFolder
|
||||
|
||||
# For AspNetCore and WindowsDesktop, also download NETCore references to provide core assemblies
|
||||
$beforeReferenceFolder = ""
|
||||
$afterReferenceFolder = ""
|
||||
if ($sdkName -eq "AspNetCore" -or $sdkName -eq "WindowsDesktop") {
|
||||
DownloadPackage $UseDefaultNuGetFeed "NETCore" "Before" $PreviousDotNetVersion $PreviousPreviewOrRC $PreviousPreviewNumberVersion ([ref]$beforeReferenceFolder)
|
||||
VerifyPathOrExit $beforeReferenceFolder
|
||||
|
||||
DownloadPackage $UseDefaultNuGetFeed "NETCore" "After" $CurrentDotNetVersion $CurrentPreviewOrRC $CurrentPreviewNumberVersion ([ref]$afterReferenceFolder)
|
||||
VerifyPathOrExit $afterReferenceFolder
|
||||
}
|
||||
|
||||
$targetFolder = [IO.Path]::Combine($previewFolderPath, "Microsoft.$sdkName.App")
|
||||
RecreateFolder $targetFolder
|
||||
|
||||
RunApiDiff $apiDiffExe $targetFolder $beforeDllFolder $afterDllFolder $currentDotNetFullName $assembliesToExclude $attributesToExclude $previousDotNetFriendlyName $currentDotNetFriendlyName
|
||||
RunApiDiff $apiDiffExe $targetFolder $beforeDllFolder $afterDllFolder $currentDotNetFullName $assembliesToExclude $attributesToExclude $previousDotNetFriendlyName $currentDotNetFriendlyName $beforeReferenceFolder $afterReferenceFolder
|
||||
}
|
||||
|
||||
#####################
|
||||
|
||||
Reference in New Issue
Block a user