diff --git a/.editorconfig b/.editorconfig
index 8ad1e1b8b2..aff572efae 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -252,11 +252,3 @@ csharp_space_between_method_declaration_name_and_open_parenthesis = false
csharp_space_between_method_declaration_parameter_list_parentheses = false
csharp_space_between_parentheses = false
csharp_space_between_square_brackets = false
-
-
-
-
-
-
-
-
diff --git a/Ix.NET/Source/AsyncQueryableGenerator.t4 b/Ix.NET/Source/AsyncQueryableGenerator.t4
index c15e5b382b..c618619b66 100644
--- a/Ix.NET/Source/AsyncQueryableGenerator.t4
+++ b/Ix.NET/Source/AsyncQueryableGenerator.t4
@@ -174,7 +174,7 @@ foreach (var m in asyncEnumerableType.GetMethods()
{
infoName += "__" + string.Join("_", genArgs.Select(a => a.Name));
infoTypeArgs = "(" + string.Join(", ", genArgs.Select(a => "Type " + a.Name)) + ")";
- infoToGeneric = ".GetGenericMethodDefinition()";
+ infoToGeneric = "!.GetGenericMethodDefinition()";
infoMakeGeneric = ".MakeGenericMethod(" + string.Join(", ", genArgs.Select(a => a.Name)) + ")";
infoGenArgs = "<" + string.Join(", ", genArgs.Select(_ => "object")) + ">";
}
@@ -281,14 +281,16 @@ foreach (var m in asyncEnumerableType.GetMethods()
}
var expr = "Expression.Call(" + mtd + ", " + string.Join(", ", quotedArgs) + ")";
+
+ var cons = name.StartsWith("ToDictionary") ? " where TKey : notnull" : "";
#>
- private static MethodInfo s_<#=infoName#>;
+ private static MethodInfo? s_<#=infoName#>;
private static MethodInfo <#=infoName#><#=infoTypeArgs#> =>
(s_<#=infoName#> ??
(s_<#=infoName#> = new Func<<#=infoSignature#>>(<#=m.Name#><#=infoGenArgs#>).GetMethodInfo()<#=infoToGeneric#>))<#=infoMakeGeneric#>;
- public static <#=ret#> <#=name#>(<#=pars#>)
+ public static <#=ret#> <#=name#>(<#=pars#>)<#=cons#>
{
<#
var any = false;
diff --git a/Ix.NET/Source/FasterLinq/Program.cs b/Ix.NET/Source/FasterLinq/Program.cs
index 51e2b79999..006181aca0 100644
--- a/Ix.NET/Source/FasterLinq/Program.cs
+++ b/Ix.NET/Source/FasterLinq/Program.cs
@@ -1,7 +1,9 @@
-// Licensed to the .NET Foundation under one or more agreements.
+// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the Apache 2.0 License.
// See the LICENSE file in the project root for more information.
+#nullable disable
+
using System;
using System.Collections;
using System.Collections.Generic;
diff --git a/Ix.NET/Source/System.Interactive.Async.Providers.Tests/System.Interactive.Async.Providers.Tests.csproj b/Ix.NET/Source/System.Interactive.Async.Providers.Tests/System.Interactive.Async.Providers.Tests.csproj
index 987fe13919..19f200585a 100644
--- a/Ix.NET/Source/System.Interactive.Async.Providers.Tests/System.Interactive.Async.Providers.Tests.csproj
+++ b/Ix.NET/Source/System.Interactive.Async.Providers.Tests/System.Interactive.Async.Providers.Tests.csproj
@@ -5,7 +5,6 @@
$(NoWarn);CS0618
-
PreserveNewest
@@ -24,7 +23,6 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
-
diff --git a/Ix.NET/Source/System.Interactive.Async.Providers/System/Linq/AsyncQueryableEx.Generated.cs b/Ix.NET/Source/System.Interactive.Async.Providers/System/Linq/AsyncQueryableEx.Generated.cs
index b557013e19..4deb6ca3bc 100644
--- a/Ix.NET/Source/System.Interactive.Async.Providers/System/Linq/AsyncQueryableEx.Generated.cs
+++ b/Ix.NET/Source/System.Interactive.Async.Providers/System/Linq/AsyncQueryableEx.Generated.cs
@@ -14,11 +14,11 @@ namespace System.Linq
{
public static partial class AsyncQueryableEx
{
- private static MethodInfo s_Amb__TSource__2__0;
+ private static MethodInfo? s_Amb__TSource__2__0;
- private static MethodInfo Amb__TSource__2__0(Type TSource) =>
+ private static MethodInfo? Amb__TSource__2__0(Type TSource) =>
(s_Amb__TSource__2__0 ??
- (s_Amb__TSource__2__0 = new Func, IAsyncEnumerable