diff --git a/.nuget/NuGet.Config b/.nuget/NuGet.Config
deleted file mode 100644
index 67f8ea046..000000000
--- a/.nuget/NuGet.Config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.nuget/NuGet.exe b/.nuget/NuGet.exe
deleted file mode 100644
index 6bb79fe53..000000000
Binary files a/.nuget/NuGet.exe and /dev/null differ
diff --git a/.nuget/NuGet.targets b/.nuget/NuGet.targets
deleted file mode 100644
index 93c0559e6..000000000
--- a/.nuget/NuGet.targets
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
- $(MSBuildProjectDirectory)\..\
-
-
- false
-
-
- false
-
-
- true
-
-
- false
-
-
-
-
-
-
-
-
-
-
- $([System.IO.Path]::Combine($(SolutionDir), ".nuget"))
-
-
-
-
- $(SolutionDir).nuget
- packages.config
-
-
-
- packages.$(MSBuildProjectName.Replace(' ', '_')).config
-
-
-
-
-
- $(PackagesProjectConfig)
-
-
-
-
- packages.config
-
-
-
-
-
-
- $(NuGetToolsPath)\NuGet.exe
- @(PackageSource)
-
- "$(NuGetExePath)"
- mono --runtime=v4.0.30319 $(NuGetExePath)
-
- $(TargetDir.Trim('\\'))
-
- -RequireConsent
- -NonInteractive
-
- "$(SolutionDir) "
- "$(SolutionDir)"
-
-
- $(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(NonInteractiveSwitch) $(RequireConsentSwitch) -solutionDir $(PaddedSolutionDir)
- $(NuGetCommand) pack "$(ProjectPath)" -Properties "Configuration=$(Configuration);Platform=$(Platform)" $(NonInteractiveSwitch) -OutputDirectory "$(PackageOutputDir)" -symbols
-
-
-
- RestorePackages;
- $(BuildDependsOn);
-
-
-
-
- $(BuildDependsOn);
- BuildPackage;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 27786986b..4296ad254 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [0.19.0] - 2021-06-12
+
+- Update to FCS 39 [@baronfel]
+ - Consumers of the API will now need to call `Ionide.ProjInfo.Init.init()`, see the FSharpLint.Console project within this repo for an example.
+
## [0.18.1] - 2021-01-27
- Update docs.
diff --git a/Directory.Build.targets b/Directory.Build.targets
deleted file mode 100644
index 63dd75283..000000000
--- a/Directory.Build.targets
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
diff --git a/NuGet.Config b/NuGet.Config
deleted file mode 100644
index 3f0e00340..000000000
--- a/NuGet.Config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/paket.dependencies b/paket.dependencies
index 4cd4b07ea..3fa6408f9 100644
--- a/paket.dependencies
+++ b/paket.dependencies
@@ -7,15 +7,19 @@ nuget Argu
nuget BenchmarkDotNet
nuget BenchmarkDotNet.Diagnostics.Windows
nuget FParsec
-nuget FSharp.Compiler.Service ~> 38.0
-nuget Dotnet.ProjInfo.Workspace ~> 0.41.0
-nuget Dotnet.ProjInfo.Workspace.FCS ~> 0.41.0
+nuget FSharp.Compiler.Service ~> 39.0
+nuget Ionide.ProjInfo.ProjectSystem ~> 0.52.0
+nuget Ionide.ProjInfo.FCS ~> 0.52.0
nuget FSharp.Core
nuget nunit
nuget NUnit3TestAdapter
nuget Microsoft.NET.Test.Sdk
nuget Newtonsoft.Json
-nuget Microsoft.Build.Utilities.Core 16.7
+nuget Microsoft.Build.Tasks.Core ~> 16.8 copy_local: false
+nuget Microsoft.Build.Framework ~> 16.8 copy_local: false
+nuget Microsoft.Build.Locator copy_local: false
+nuget Microsoft.Build.Utilities.Core ~> 16.8 copy_local: false
+nuget Microsoft.Build ~> 16.8 copy_local: false
group Docs
source https://api.nuget.org/v3/index.json
diff --git a/paket.lock b/paket.lock
index 9102bce6b..f4558cbbf 100644
--- a/paket.lock
+++ b/paket.lock
@@ -5,14 +5,14 @@ NUGET
Argu (6.1.1)
FSharp.Core (>= 4.3.2)
System.Configuration.ConfigurationManager (>= 4.4)
- BenchmarkDotNet (0.12.1)
- BenchmarkDotNet.Annotations (>= 0.12.1)
+ BenchmarkDotNet (0.13)
+ BenchmarkDotNet.Annotations (>= 0.13)
CommandLineParser (>= 2.4.3)
- Iced (>= 1.4)
+ Iced (>= 1.8)
Microsoft.CodeAnalysis.CSharp (>= 2.10)
Microsoft.Diagnostics.NETCore.Client (>= 0.2.61701)
- Microsoft.Diagnostics.Runtime (>= 1.1.57604)
- Microsoft.Diagnostics.Tracing.TraceEvent (>= 2.0.49)
+ Microsoft.Diagnostics.Runtime (>= 1.1.126102)
+ Microsoft.Diagnostics.Tracing.TraceEvent (>= 2.0.61)
Microsoft.DotNet.PlatformAbstractions (>= 2.1)
Microsoft.Win32.Registry (>= 4.5)
Perfolizer (>= 0.2.1)
@@ -21,169 +21,246 @@ NUGET
System.Reflection.Emit.Lightweight (>= 4.3)
System.Threading.Tasks.Extensions (>= 4.5.2)
System.ValueTuple (>= 4.5)
- BenchmarkDotNet.Annotations (0.12.1)
- BenchmarkDotNet.Diagnostics.Windows (0.12.1)
- BenchmarkDotNet (>= 0.12.1)
- Microsoft.Diagnostics.Tracing.TraceEvent (>= 2.0.49)
+ BenchmarkDotNet.Annotations (0.13)
+ BenchmarkDotNet.Diagnostics.Windows (0.13)
+ BenchmarkDotNet (>= 0.13)
+ Microsoft.Diagnostics.Tracing.TraceEvent (>= 2.0.61)
CommandLineParser (2.8)
- Dotnet.ProjInfo (0.44)
- FSharp.Core (>= 4.6.2)
- Microsoft.NETFramework.ReferenceAssemblies (>= 1.0)
- System.ValueTuple (>= 4.4)
- Dotnet.ProjInfo.Workspace (0.41.1)
- Dotnet.ProjInfo (>= 0.41.1)
- FSharp.Core (>= 4.6.2)
- Microsoft.NETFramework.ReferenceAssemblies (>= 1.0)
- Sln (>= 0.3)
- Dotnet.ProjInfo.Workspace.FCS (0.41.1)
- Dotnet.ProjInfo.Workspace (>= 0.41.1)
- FSharp.Compiler.Service (>= 35.0)
- FSharp.Core (>= 4.6.2)
- Microsoft.NETFramework.ReferenceAssemblies (>= 1.0)
FParsec (1.1.1)
FSharp.Core (>= 4.3.4)
- FSharp.Compiler.Service (38.0)
- FSharp.Core (5.0)
- FSharp.Core (5.0)
- Iced (1.6)
- Microsoft.Build.Framework (16.7)
+ FSharp.Compiler.Service (39.0)
+ FSharp.Core (5.0.1)
+ Microsoft.Build.Framework (>= 16.6)
+ Microsoft.Build.Tasks.Core (>= 16.6)
+ Microsoft.Build.Utilities.Core (>= 16.6)
+ System.Buffers (>= 4.5.1)
+ System.Collections.Immutable (>= 5.0)
+ System.Diagnostics.Process (>= 4.3)
+ System.Diagnostics.TraceSource (>= 4.3)
+ System.Linq.Expressions (>= 4.3)
+ System.Linq.Queryable (>= 4.3)
+ System.Memory (>= 4.5.4)
+ System.Net.Requests (>= 4.3)
+ System.Net.Security (>= 4.3)
+ System.Reflection.Emit (>= 4.3)
+ System.Reflection.Metadata (>= 5.0)
+ System.Reflection.TypeExtensions (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Runtime.Loader (>= 4.3)
+ System.Security.Claims (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Principal (>= 4.3)
+ System.Threading.Tasks.Parallel (>= 4.3)
+ System.Threading.Thread (>= 4.3)
+ System.Threading.ThreadPool (>= 4.3)
+ FSharp.Core (5.0.1)
+ Iced (1.11.3)
+ Ionide.ProjInfo (0.52) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ FSharp.Core (>= 5.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.1))
+ Ionide.ProjInfo.Sln (>= 0.52) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.1))
+ Microsoft.Build (>= 16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.1))
+ Microsoft.Build.Locator (>= 1.4.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.1))
+ Ionide.ProjInfo.FCS (0.48)
+ FSharp.Compiler.Service (>= 39.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ FSharp.Core (>= 5.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo (>= 0.48) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo.ProjectSystem (0.48)
+ FSharp.Compiler.Service (>= 39.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ FSharp.Core (>= 5.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo (>= 0.48) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo.FCS (>= 0.48) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo.Sln (>= 0.48) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Newtonsoft.Json (>= 12.0.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Ionide.ProjInfo.Sln (0.52) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.Bcl.AsyncInterfaces (5.0)
+ System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1) (< netstandard2.1)) (== netstandard2.0)
+ Microsoft.Build (16.10) - copy_local: false
+ Microsoft.Build.Framework (>= 16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.NET.StringTools (>= 1.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.Win32.Registry (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ System.Collections.Immutable (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ System.Configuration.ConfigurationManager (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ System.Reflection.Metadata (>= 1.6) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ System.Security.Principal.Windows (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ System.Text.Encoding.CodePages (>= 4.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net5.0))
+ System.Text.Json (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ System.Threading.Tasks.Dataflow (>= 4.9) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.Build.Framework (16.10) - copy_local: false
System.Security.Permissions (>= 4.7)
- Microsoft.Build.Utilities.Core (16.7)
- Microsoft.Build.Framework (>= 16.7)
+ Microsoft.Build.Locator (1.4.1) - copy_local: false
+ Microsoft.Build.Tasks.Core (16.10) - copy_local: false
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.Build.Utilities.Core (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
Microsoft.Win32.Registry (>= 4.3)
- System.Collections.Immutable (>= 1.5)
+ System.CodeDom (>= 4.4)
+ System.Collections.Immutable (>= 5.0)
+ System.Reflection.Metadata (>= 1.6)
+ System.Resources.Extensions (>= 4.6)
+ System.Security.Cryptography.Pkcs (>= 4.7)
+ System.Security.Cryptography.Xml (>= 4.7)
+ System.Security.Permissions (>= 4.7)
+ System.Threading.Tasks.Dataflow (>= 4.9)
+ Microsoft.Build.Utilities.Core (16.10) - copy_local: false
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
+ Microsoft.Win32.Registry (>= 4.3)
+ System.Collections.Immutable (>= 5.0)
+ System.Configuration.ConfigurationManager (>= 4.7)
System.Security.Permissions (>= 4.7)
System.Text.Encoding.CodePages (>= 4.0.1)
- Microsoft.CodeAnalysis.Analyzers (3.0)
- Microsoft.CodeAnalysis.Common (3.5)
- Microsoft.CodeAnalysis.Analyzers (>= 3.0.0-beta2.20059.3)
- System.Collections.Immutable (>= 1.5)
- System.Memory (>= 4.5.3)
- System.Reflection.Metadata (>= 1.6)
- System.Runtime.CompilerServices.Unsafe (>= 4.6)
+ Microsoft.CodeAnalysis.Analyzers (3.3.2)
+ Microsoft.CodeAnalysis.Common (3.9)
+ Microsoft.CodeAnalysis.Analyzers (>= 3.0)
+ System.Collections.Immutable (>= 5.0)
+ System.Memory (>= 4.5.4)
+ System.Reflection.Metadata (>= 5.0)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
System.Text.Encoding.CodePages (>= 4.5.1)
- System.Threading.Tasks.Extensions (>= 4.5.3)
- Microsoft.CodeAnalysis.CSharp (3.5)
- Microsoft.CodeAnalysis.Common (3.5)
- Microsoft.CodeCoverage (16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net45)) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.Diagnostics.NETCore.Client (0.2.61701)
- Microsoft.Diagnostics.Runtime (1.1.122004)
- Microsoft.Diagnostics.Tracing.TraceEvent (2.0.55)
+ System.Threading.Tasks.Extensions (>= 4.5.4)
+ Microsoft.CodeAnalysis.CSharp (3.9)
+ Microsoft.CodeAnalysis.Common (3.9)
+ Microsoft.CodeCoverage (16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net45)) (&& (== netstandard2.0) (>= netcoreapp1.0))
+ Microsoft.Diagnostics.NETCore.Client (0.2.227602)
+ Microsoft.Bcl.AsyncInterfaces (>= 1.1)
+ Microsoft.Extensions.Logging (>= 2.1.1)
+ Microsoft.Diagnostics.Runtime (2.0.226801)
+ Microsoft.Diagnostics.NETCore.Client (>= 0.2.221401)
+ System.Buffers (>= 4.5.1)
+ System.Collections.Immutable (>= 5.0)
+ System.Memory (>= 4.5.4)
+ System.Reflection.Metadata (>= 5.0)
+ System.Runtime.CompilerServices.Unsafe (>= 4.5.3)
+ Microsoft.Diagnostics.Tracing.TraceEvent (2.0.69)
System.Runtime.CompilerServices.Unsafe (>= 4.5.2)
- Microsoft.DotNet.InternalAbstractions (1.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.AppContext (>= 4.1)
- System.Collections (>= 4.0.11)
- System.IO (>= 4.1)
- System.IO.FileSystem (>= 4.0.1)
- System.Reflection.TypeExtensions (>= 4.1)
- System.Runtime.Extensions (>= 4.1)
- System.Runtime.InteropServices (>= 4.1)
- System.Runtime.InteropServices.RuntimeInformation (>= 4.0)
- Microsoft.DotNet.PlatformAbstractions (3.1.3)
- Microsoft.NET.Test.Sdk (16.8)
- Microsoft.CodeCoverage (>= 16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net45)) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.TestPlatform.TestHost (>= 16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.NETCore.Platforms (3.1)
- Microsoft.NETCore.Targets (3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.NETFramework.ReferenceAssemblies (1.0)
- Microsoft.TestPlatform.ObjectModel (16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ Microsoft.DotNet.PlatformAbstractions (3.1.6)
+ Microsoft.Extensions.DependencyInjection (5.0.1)
+ Microsoft.Bcl.AsyncInterfaces (>= 5.0) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netstandard2.1)) (== netstandard2.0)
+ Microsoft.Extensions.DependencyInjection.Abstractions (>= 5.0)
+ System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1) (< netstandard2.1)) (== netstandard2.0)
+ Microsoft.Extensions.DependencyInjection.Abstractions (5.0)
+ Microsoft.Extensions.Logging (5.0)
+ Microsoft.Extensions.DependencyInjection (>= 5.0)
+ Microsoft.Extensions.DependencyInjection.Abstractions (>= 5.0)
+ Microsoft.Extensions.Logging.Abstractions (>= 5.0)
+ Microsoft.Extensions.Options (>= 5.0)
+ System.Diagnostics.DiagnosticSource (>= 5.0) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netstandard2.1)) (== netstandard2.0)
+ Microsoft.Extensions.Logging.Abstractions (5.0)
+ Microsoft.Extensions.Options (5.0)
+ Microsoft.Extensions.DependencyInjection.Abstractions (>= 5.0)
+ Microsoft.Extensions.Primitives (>= 5.0)
+ Microsoft.Extensions.Primitives (5.0.1)
+ System.Buffers (>= 4.5.1) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netcoreapp3.0)) (&& (== net5.0) (>= uap10.1)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
+ Microsoft.NET.StringTools (1.0) - copy_local: false
+ System.Memory (>= 4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
+ Microsoft.NET.Test.Sdk (16.10)
+ Microsoft.CodeCoverage (>= 16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= net45)) (&& (== netstandard2.0) (>= netcoreapp1.0))
+ Microsoft.TestPlatform.TestHost (>= 16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0))
+ Microsoft.NETCore.Platforms (5.0.2)
+ Microsoft.NETCore.Targets (5.0)
+ Microsoft.TestPlatform.ObjectModel (16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0))
NuGet.Frameworks (>= 5.0)
- Microsoft.TestPlatform.TestHost (16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.TestPlatform.ObjectModel (>= 16.8) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1)) (&& (== netstandard2.0) (>= uap10.0))
- Newtonsoft.Json (>= 9.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1)) (&& (== netstandard2.0) (>= uap10.0))
- Microsoft.Win32.Primitives (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Reflection.Metadata (>= 1.6)
+ Microsoft.TestPlatform.TestHost (16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0))
+ Microsoft.TestPlatform.ObjectModel (>= 16.10) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0)) (&& (== netstandard2.0) (>= uap10.0))
+ Newtonsoft.Json (>= 9.0.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0)) (&& (== netstandard2.0) (>= uap10.0))
+ Microsoft.Win32.Primitives (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- Microsoft.Win32.Registry (4.7)
- System.Buffers (>= 4.5) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
- System.Memory (>= 4.5.3) - restriction: || (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
- System.Security.AccessControl (>= 4.7)
- System.Security.Principal.Windows (>= 4.7)
- Microsoft.Win32.SystemEvents (4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
- Microsoft.NETCore.Platforms (>= 3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ Microsoft.Win32.Registry (5.0)
+ System.Buffers (>= 4.5.1) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Security.AccessControl (>= 5.0)
+ System.Security.Principal.Windows (>= 5.0)
+ Microsoft.Win32.SystemEvents (5.0) - copy_local: false, restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472) (>= netcoreapp3.0)) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.NETCore.Platforms (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
NETStandard.Library (2.0.3)
Microsoft.NETCore.Platforms (>= 1.1)
- Newtonsoft.Json (12.0.3)
- NuGet.Frameworks (5.5.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- NUnit (3.12)
+ Newtonsoft.Json (13.0.1)
+ NuGet.Frameworks (5.9.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp1.0)) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ NUnit (3.13.2)
NETStandard.Library (>= 2.0)
- NUnit3TestAdapter (3.17)
- Microsoft.DotNet.InternalAbstractions (>= 1.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.ComponentModel.EventBasedAsync (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.ComponentModel.TypeConverter (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Diagnostics.Process (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Reflection (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime.InteropServices.RuntimeInformation (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Threading.Thread (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Xml.XmlDocument (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Xml.XPath.XmlDocument (>= 4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ NUnit3TestAdapter (4.0)
Perfolizer (0.2.1)
System.Memory (>= 4.5.3)
- runtime.native.System (4.3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.native.System (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
- Sln (0.3)
- System.AppContext (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime (>= 4.3)
- System.Buffers (4.5.1) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
- System.CodeDom (4.7)
- System.Collections (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ runtime.native.System.Net.Http (4.3.1)
+ Microsoft.NETCore.Platforms (>= 1.1.1)
+ Microsoft.NETCore.Targets (>= 1.1.3)
+ runtime.native.System.Net.Security (4.3.1)
+ Microsoft.NETCore.Platforms (>= 1.1.1)
+ Microsoft.NETCore.Targets (>= 1.1.3)
+ runtime.native.System.Security.Cryptography.Apple (4.3.1)
+ runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (>= 4.3.1)
+ runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.fedora.27-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.fedora.28-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.3)
+ runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.opensuse.42.3-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple (4.3.1)
+ runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
+ System.Buffers (4.5.1)
+ System.CodeDom (5.0)
+ System.Collections (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Collections.Immutable (1.7)
- System.Memory (>= 4.5.3) - restriction: || (&& (== net5.0) (>= net46)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
- System.Collections.NonGeneric (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Diagnostics.Debug (>= 4.3)
- System.Globalization (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Threading (>= 4.3)
- System.Collections.Specialized (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Collections.NonGeneric (>= 4.3)
- System.Globalization (>= 4.3)
- System.Globalization.Extensions (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Threading (>= 4.3)
- System.ComponentModel (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime (>= 4.3)
- System.ComponentModel.EventBasedAsync (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.Threading (>= 4.3)
- System.Threading.Tasks (>= 4.3)
- System.ComponentModel.Primitives (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.ComponentModel (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.ComponentModel.TypeConverter (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Collections.Concurrent (4.3)
System.Collections (>= 4.3)
- System.Collections.NonGeneric (>= 4.3)
- System.Collections.Specialized (>= 4.3)
- System.ComponentModel (>= 4.3)
- System.ComponentModel.Primitives (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
System.Globalization (>= 4.3)
- System.Linq (>= 4.3)
System.Reflection (>= 4.3)
- System.Reflection.Extensions (>= 4.3)
- System.Reflection.Primitives (>= 4.3)
- System.Reflection.TypeExtensions (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
System.Threading (>= 4.3)
- System.Configuration.ConfigurationManager (4.7)
- System.Security.Cryptography.ProtectedData (>= 4.7)
- System.Security.Permissions (>= 4.7)
- System.Diagnostics.Debug (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Threading.Tasks (>= 4.3)
+ System.Collections.Immutable (5.0)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Configuration.ConfigurationManager (5.0) - copy_local: false
+ System.Security.Cryptography.ProtectedData (>= 5.0)
+ System.Security.Permissions (>= 5.0)
+ System.Diagnostics.Debug (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Diagnostics.Process (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Diagnostics.DiagnosticSource (5.0.1)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net45) (< netstandard1.3)) (&& (== net5.0) (>= net46)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net45) (< netstandard1.3)) (&& (== net5.0) (>= net46)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netcoreapp3.0)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
+ System.Diagnostics.Process (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.Win32.Primitives (>= 4.3)
Microsoft.Win32.Registry (>= 4.3)
@@ -205,27 +282,48 @@ NUGET
System.Threading.Tasks (>= 4.3)
System.Threading.Thread (>= 4.3)
System.Threading.ThreadPool (>= 4.3)
- System.Drawing.Common (4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
- Microsoft.NETCore.Platforms (>= 3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- Microsoft.Win32.SystemEvents (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- System.Globalization (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Diagnostics.TraceSource (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ runtime.native.System (>= 4.3)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Diagnostics.Tracing (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Globalization.Extensions (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Drawing.Common (5.0.2) - copy_local: false, restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472) (>= netcoreapp3.0)) (&& (== netstandard2.0) (>= net5.0))
+ Microsoft.Win32.SystemEvents (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ System.Formats.Asn1 (5.0) - copy_local: false
+ System.Buffers (>= 4.5.1) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Globalization (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ System.Globalization.Calendars (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Globalization (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Globalization.Extensions (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
System.Globalization (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
System.Runtime.InteropServices (>= 4.3)
- System.IO (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.IO (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
System.Text.Encoding (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.IO.FileSystem (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.IO.FileSystem (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.IO (>= 4.3)
@@ -234,24 +332,137 @@ NUGET
System.Runtime.Handles (>= 4.3)
System.Text.Encoding (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.IO.FileSystem.Primitives (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.IO.FileSystem.Primitives (4.3)
+ System.Runtime (>= 4.3)
+ System.Linq (4.3)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
- System.Linq (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.Extensions (>= 4.3)
+ System.Linq.Expressions (4.3)
System.Collections (>= 4.3)
System.Diagnostics.Debug (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
+ System.Linq (>= 4.3)
+ System.ObjectModel (>= 4.3)
+ System.Reflection (>= 4.3)
+ System.Reflection.Emit (>= 4.3)
+ System.Reflection.Emit.ILGeneration (>= 4.3)
+ System.Reflection.Emit.Lightweight (>= 4.3)
+ System.Reflection.Extensions (>= 4.3)
+ System.Reflection.Primitives (>= 4.3)
+ System.Reflection.TypeExtensions (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
- System.Management (4.7)
- Microsoft.NETCore.Platforms (>= 3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- Microsoft.Win32.Registry (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- System.CodeDom (>= 4.7)
+ System.Threading (>= 4.3)
+ System.Linq.Queryable (4.3)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Linq (>= 4.3)
+ System.Linq.Expressions (>= 4.3)
+ System.Reflection (>= 4.3)
+ System.Reflection.Extensions (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Management (5.0)
+ Microsoft.NETCore.Platforms (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ Microsoft.Win32.Registry (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ System.CodeDom (>= 5.0)
System.Memory (4.5.4)
System.Buffers (>= 4.5.1) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
System.Numerics.Vectors (>= 4.4) - restriction: || (&& (== net5.0) (< netcoreapp2.0)) (== netstandard2.0)
System.Runtime.CompilerServices.Unsafe (>= 4.5.3) - restriction: || (&& (== net5.0) (>= monoandroid)) (&& (== net5.0) (>= monotouch)) (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (&& (== net5.0) (>= xamarinios)) (&& (== net5.0) (>= xamarinmac)) (&& (== net5.0) (>= xamarintvos)) (&& (== net5.0) (>= xamarinwatchos)) (== netstandard2.0)
- System.Numerics.Vectors (4.5) - restriction: || (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
- System.Reflection (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Net.Http (4.3.4)
+ Microsoft.NETCore.Platforms (>= 1.1.1)
+ runtime.native.System (>= 4.3)
+ runtime.native.System.Net.Http (>= 4.3)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Diagnostics.DiagnosticSource (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.Globalization.Extensions (>= 4.3)
+ System.IO (>= 4.3)
+ System.IO.FileSystem (>= 4.3)
+ System.Net.Primitives (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.OpenSsl (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
+ System.Security.Cryptography.X509Certificates (>= 4.3)
+ System.Text.Encoding (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Net.Primitives (4.3.1)
+ Microsoft.NETCore.Platforms (>= 1.1.1)
+ Microsoft.NETCore.Targets (>= 1.1.3)
+ System.Runtime (>= 4.3.1)
+ System.Runtime.Handles (>= 4.3)
+ System.Net.Requests (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
+ System.Net.Http (>= 4.3)
+ System.Net.Primitives (>= 4.3)
+ System.Net.WebHeaderCollection (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Net.Security (4.3.2)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.Win32.Primitives (>= 4.3)
+ runtime.native.System (>= 4.3)
+ runtime.native.System.Net.Security (>= 4.3)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2)
+ System.Collections (>= 4.3)
+ System.Collections.Concurrent (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.Globalization.Extensions (>= 4.3)
+ System.IO (>= 4.3)
+ System.Net.Primitives (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Security.Claims (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.OpenSsl (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
+ System.Security.Cryptography.X509Certificates (>= 4.3)
+ System.Security.Principal (>= 4.3)
+ System.Text.Encoding (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Threading.ThreadPool (>= 4.3)
+ System.Net.WebHeaderCollection (4.3)
+ System.Collections (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Numerics.Vectors (4.5) - restriction: || (&& (== net5.0) (< netcoreapp2.0)) (== netstandard2.0)
+ System.ObjectModel (4.3)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Reflection (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.IO (>= 4.3)
@@ -259,326 +470,511 @@ NUGET
System.Runtime (>= 4.3)
System.Reflection.Emit (4.7)
System.Reflection.Emit.ILGeneration (>= 4.7) - restriction: || (&& (== net5.0) (< netcoreapp2.0) (< netstandard2.1)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
- System.Reflection.Emit.ILGeneration (4.7) - restriction: || (&& (== net5.0) (< netcoreapp2.0) (< netstandard2.1)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Reflection.Emit.ILGeneration (4.7)
System.Reflection.Emit.Lightweight (4.7)
System.Reflection.Emit.ILGeneration (>= 4.7) - restriction: || (&& (== net5.0) (< netcoreapp2.0) (< netstandard2.1)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (< portable-net45+wp8)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
- System.Reflection.Extensions (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Reflection.Extensions (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Reflection (>= 4.3)
System.Runtime (>= 4.3)
- System.Reflection.Metadata (1.8)
- System.Collections.Immutable (>= 1.7) - restriction: || (&& (== net5.0) (>= net45)) (&& (== net5.0) (< netcoreapp3.1)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (== netstandard2.0)
- System.Reflection.Primitives (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Reflection.Metadata (5.0)
+ System.Collections.Immutable (>= 5.0) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netstandard1.1)) (&& (== net5.0) (< netstandard2.0)) (== netstandard2.0)
+ System.Reflection.Primitives (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Reflection.TypeExtensions (4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Resources.ResourceManager (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Reflection.TypeExtensions (4.7)
+ System.Resources.Extensions (5.0) - copy_local: false
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1)) (== netstandard2.0)
+ System.Resources.ResourceManager (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Globalization (>= 4.3)
System.Reflection (>= 4.3)
System.Runtime (>= 4.3)
- System.Runtime (4.3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
- System.Runtime.CompilerServices.Unsafe (4.7.1)
- System.Runtime.Extensions (4.3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.CompilerServices.Unsafe (5.0) - copy_local: false
+ System.Runtime.Extensions (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
System.Runtime (>= 4.3.1)
- System.Runtime.Handles (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.Handles (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Runtime.InteropServices (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.InteropServices (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Reflection (>= 4.3)
System.Reflection.Primitives (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Handles (>= 4.3)
- System.Runtime.InteropServices.RuntimeInformation (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- runtime.native.System (>= 4.3)
+ System.Runtime.Loader (4.3)
+ System.IO (>= 4.3)
System.Reflection (>= 4.3)
- System.Reflection.Extensions (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Numerics (4.3)
+ System.Globalization (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
- System.Runtime.InteropServices (>= 4.3)
- System.Threading (>= 4.3)
- System.Security.AccessControl (4.7)
- Microsoft.NETCore.Platforms (>= 3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- System.Security.Principal.Windows (>= 4.7)
- System.Security.Cryptography.ProtectedData (4.7)
- System.Memory (>= 4.5.3) - restriction: || (&& (== net5.0) (< netcoreapp2.1)) (== netstandard2.0)
- System.Security.Permissions (4.7)
- System.Security.AccessControl (>= 4.7)
- System.Windows.Extensions (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
- System.Security.Principal.Windows (4.7)
- System.Text.Encoding (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime.Extensions (>= 4.3)
+ System.Security.AccessControl (5.0)
+ Microsoft.NETCore.Platforms (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ System.Security.Principal.Windows (>= 5.0)
+ System.Security.Claims (4.3)
+ System.Collections (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
- System.Text.Encoding.CodePages (4.7)
- Microsoft.NETCore.Platforms (>= 3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
- System.Runtime.CompilerServices.Unsafe (>= 4.7) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.0)) (&& (== net5.0) (< netcoreapp3.1)) (== netstandard2.0)
- System.Text.Encoding.Extensions (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.Extensions (>= 4.3)
+ System.Security.Principal (>= 4.3)
+ System.Security.Cryptography.Algorithms (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
+ runtime.native.System.Security.Cryptography.Apple (>= 4.3.1)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2)
+ System.Collections (>= 4.3)
+ System.IO (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Runtime.Numerics (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
- System.Text.RegularExpressions (4.3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime (>= 4.3.1)
- System.Threading (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime (>= 4.3)
- System.Threading.Tasks (>= 4.3)
- System.Threading.Tasks (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Security.Cryptography.Cng (5.0) - copy_local: false
+ System.Formats.Asn1 (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
+ System.Security.Cryptography.Csp (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- System.Threading.Tasks.Extensions (4.5.4)
- System.Runtime.CompilerServices.Unsafe (>= 4.5.3) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard1.0)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= wp8)) (== netstandard2.0)
- System.Threading.Thread (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Runtime (>= 4.3)
- System.Threading.ThreadPool (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.IO (>= 4.3)
+ System.Reflection (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
System.Runtime.Handles (>= 4.3)
- System.ValueTuple (4.5)
- System.Windows.Extensions (4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
- System.Drawing.Common (>= 4.7) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
- System.Xml.ReaderWriter (4.3.1) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Runtime.InteropServices (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
+ System.Text.Encoding (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Security.Cryptography.Encoding (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3)
System.Collections (>= 4.3)
- System.Diagnostics.Debug (>= 4.3)
- System.Globalization (>= 4.3)
- System.IO (>= 4.3)
- System.IO.FileSystem (>= 4.3)
- System.IO.FileSystem.Primitives (>= 4.3)
+ System.Collections.Concurrent (>= 4.3)
+ System.Linq (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
System.Runtime.InteropServices (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
- System.Text.Encoding.Extensions (>= 4.3)
- System.Text.RegularExpressions (>= 4.3)
+ System.Security.Cryptography.OpenSsl (5.0)
+ System.Formats.Asn1 (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
+ System.Security.Cryptography.Pkcs (5.0.1) - copy_local: false
+ System.Buffers (>= 4.5.1) - restriction: || (&& (== net5.0) (< netcoreapp2.0) (< netstandard2.1)) (== netstandard2.0)
+ System.Formats.Asn1 (>= 5.0)
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (< netcoreapp2.0) (< netstandard2.1)) (&& (== net5.0) (< netcoreapp2.1) (< netstandard2.1)) (&& (== net5.0) (>= uap10.1)) (== netstandard2.0)
+ System.Security.Cryptography.Cng (>= 5.0)
+ System.Security.Cryptography.Primitives (4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Threading (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.Threading.Tasks.Extensions (>= 4.3)
- System.Xml.XmlDocument (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
+ System.Security.Cryptography.ProtectedData (5.0) - copy_local: false, restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ System.Security.Cryptography.X509Certificates (4.3.2)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ runtime.native.System (>= 4.3)
+ runtime.native.System.Net.Http (>= 4.3)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2)
System.Collections (>= 4.3)
System.Diagnostics.Debug (>= 4.3)
System.Globalization (>= 4.3)
+ System.Globalization.Calendars (>= 4.3)
System.IO (>= 4.3)
+ System.IO.FileSystem (>= 4.3)
+ System.IO.FileSystem.Primitives (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Runtime.Numerics (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Cryptography.Cng (>= 4.3)
+ System.Security.Cryptography.Csp (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.OpenSsl (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
System.Threading (>= 4.3)
- System.Xml.ReaderWriter (>= 4.3)
- System.Xml.XPath (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Collections (>= 4.3)
+ System.Security.Cryptography.Xml (5.0) - copy_local: false
+ System.Memory (>= 4.5.4) - restriction: || (&& (== net5.0) (< netcoreapp2.1)) (== netstandard2.0)
+ System.Security.Cryptography.Pkcs (>= 5.0)
+ System.Security.Permissions (>= 5.0)
+ System.Security.Permissions (5.0) - copy_local: false
+ System.Security.AccessControl (>= 5.0)
+ System.Windows.Extensions (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
+ System.Security.Principal (4.3)
+ System.Runtime (>= 4.3)
+ System.Security.Principal.Windows (5.0) - copy_local: false
+ System.Text.Encoding (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ System.Text.Encoding.CodePages (5.0) - copy_local: false
+ Microsoft.NETCore.Platforms (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.0))
+ System.Text.Encoding.Extensions (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ System.Text.Encoding (>= 4.3)
+ System.Text.Json (5.0.2) - copy_local: false, restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472)) (&& (== netstandard2.0) (>= net5.0))
+ System.Threading (4.3)
+ System.Runtime (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Threading.Tasks (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ System.Threading.Tasks.Dataflow (5.0) - copy_local: false
+ System.Threading.Tasks.Extensions (4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 4.5.3) - restriction: || (&& (== net5.0) (>= net461)) (&& (== net5.0) (< netcoreapp2.1)) (&& (== net5.0) (< netstandard1.0)) (&& (== net5.0) (< netstandard2.0)) (&& (== net5.0) (>= wp8)) (== netstandard2.0)
+ System.Threading.Tasks.Parallel (4.3)
+ System.Collections.Concurrent (>= 4.3)
System.Diagnostics.Debug (>= 4.3)
- System.Globalization (>= 4.3)
- System.IO (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
System.Threading (>= 4.3)
- System.Xml.ReaderWriter (>= 4.3)
- System.Xml.XPath.XmlDocument (4.3) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp2.1))
- System.Collections (>= 4.3)
- System.Globalization (>= 4.3)
- System.IO (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Threading.Thread (4.3)
System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Threading (>= 4.3)
- System.Xml.ReaderWriter (>= 4.3)
- System.Xml.XmlDocument (>= 4.3)
- System.Xml.XPath (>= 4.3)
+ System.Threading.ThreadPool (4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.ValueTuple (4.5)
+ System.Windows.Extensions (5.0) - copy_local: false, restriction: || (== net5.0) (&& (== netstandard2.0) (>= net472) (>= netcoreapp3.0)) (&& (== netstandard2.0) (>= net5.0))
+ System.Drawing.Common (>= 5.0) - restriction: || (== net5.0) (&& (== netstandard2.0) (>= netcoreapp3.0))
GROUP Build
STORAGE: NONE
RESTRICTION: == netstandard2.0
NUGET
remote: https://api.nuget.org/v3/index.json
- BlackFox.VsWhere (1.0)
+ BlackFox.VsWhere (1.1)
FSharp.Core (>= 4.2.3)
- Fake.Api.GitHub (5.20)
- FSharp.Core (>= 4.7.1)
- Octokit (>= 0.47)
- Fake.Core.CommandLineParsing (5.20)
+ Microsoft.Win32.Registry (>= 4.7)
+ Fake.Api.GitHub (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Octokit (>= 0.48)
+ Fake.Core.CommandLineParsing (5.20.4)
FParsec (>= 1.1.1)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Context (5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Environment (5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.FakeVar (5.20)
- Fake.Core.Context (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Process (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.FakeVar (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
- System.Collections.Immutable (>= 1.7)
- Fake.Core.ReleaseNotes (5.20)
- Fake.Core.SemVer (>= 5.20)
- Fake.Core.String (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.SemVer (5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.String (5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Target (5.20)
- Fake.Core.CommandLineParsing (>= 5.20)
- Fake.Core.Context (>= 5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.FakeVar (>= 5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- FSharp.Control.Reactive (>= 4.2)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Tasks (5.20)
- Fake.Core.Trace (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Trace (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.FakeVar (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.UserInput (5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Core.Xml (5.20)
- Fake.Core.String (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.DotNet.AssemblyInfoFile (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.DotNet.Cli (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.DotNet.MsBuild (>= 5.20)
- Fake.DotNet.NuGet (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Context (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Environment (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.FakeVar (5.20.4)
+ Fake.Core.Context (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Process (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.FakeVar (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ System.Collections.Immutable (>= 1.7.1)
+ Fake.Core.ReleaseNotes (5.20.4)
+ Fake.Core.SemVer (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.SemVer (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.String (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Target (5.20.4)
+ Fake.Core.CommandLineParsing (>= 5.20.4)
+ Fake.Core.Context (>= 5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.FakeVar (>= 5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ FSharp.Control.Reactive (>= 4.4.2)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Tasks (5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Trace (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.FakeVar (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.UserInput (5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Core.Xml (5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.DotNet.AssemblyInfoFile (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.DotNet.Cli (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.DotNet.MSBuild (>= 5.20.4)
+ Fake.DotNet.NuGet (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
Mono.Posix.NETStandard (>= 1.0)
Newtonsoft.Json (>= 12.0.3)
- Fake.DotNet.MsBuild (5.20)
- BlackFox.VsWhere (>= 1.0)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
- MSBuild.StructuredLogger (>= 2.1.117)
- Fake.DotNet.NuGet (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.SemVer (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Tasks (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.Core.Xml (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- Fake.Net.Http (>= 5.20)
- FSharp.Core (>= 4.7.1)
+ Fake.DotNet.MSBuild (5.20.4)
+ BlackFox.VsWhere (>= 1.1)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ MSBuild.StructuredLogger (>= 2.1.176)
+ Fake.DotNet.NuGet (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.SemVer (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Tasks (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.Core.Xml (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ Fake.Net.Http (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
Newtonsoft.Json (>= 12.0.3)
- NuGet.Protocol (>= 5.5.1)
- Fake.DotNet.Paket (5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.DotNet.Cli (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.IO.FileSystem (5.20)
- Fake.Core.String (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Net.Http (5.20)
- Fake.Core.Trace (>= 5.20)
- FSharp.Core (>= 4.7.1)
- Fake.Tools.Git (5.20)
- Fake.Core.Environment (>= 5.20)
- Fake.Core.Process (>= 5.20)
- Fake.Core.SemVer (>= 5.20)
- Fake.Core.String (>= 5.20)
- Fake.Core.Trace (>= 5.20)
- Fake.IO.FileSystem (>= 5.20)
- FSharp.Core (>= 4.7.1)
+ NuGet.Protocol (>= 5.6)
+ Fake.DotNet.Paket (5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.DotNet.Cli (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.IO.FileSystem (5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Net.Http (5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
+ Fake.Tools.Git (5.20.4)
+ Fake.Core.Environment (>= 5.20.4)
+ Fake.Core.Process (>= 5.20.4)
+ Fake.Core.SemVer (>= 5.20.4)
+ Fake.Core.String (>= 5.20.4)
+ Fake.Core.Trace (>= 5.20.4)
+ Fake.IO.FileSystem (>= 5.20.4)
+ FSharp.Core (>= 4.7.2)
FParsec (1.1.1)
FSharp.Core (>= 4.3.4)
- FSharp.Control.Reactive (4.3)
- FSharp.Core (>= 4.7)
- System.Reactive (>= 4.3.2)
- FSharp.Core (4.7.2)
- Microsoft.Build (16.5)
- Microsoft.Build.Framework (16.5)
- System.Runtime.Serialization.Primitives (>= 4.1.1)
- System.Threading.Thread (>= 4.0)
- Microsoft.Build.Tasks.Core (16.5)
- Microsoft.Build.Framework (>= 16.5)
- Microsoft.Build.Utilities.Core (>= 16.5)
+ FSharp.Control.Reactive (5.0.2)
+ FSharp.Core (>= 4.7.2)
+ System.Reactive (>= 5.0)
+ FSharp.Core (5.0.1)
+ Microsoft.Build (16.10)
+ Microsoft.Build.Framework (16.10)
+ System.Security.Permissions (>= 4.7)
+ Microsoft.Build.Tasks.Core (16.10)
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.Build.Utilities.Core (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
Microsoft.Win32.Registry (>= 4.3)
System.CodeDom (>= 4.4)
- System.Collections.Immutable (>= 1.5)
- System.Linq.Parallel (>= 4.0.1)
- System.Net.Http (>= 4.3.4)
+ System.Collections.Immutable (>= 5.0)
System.Reflection.Metadata (>= 1.6)
- System.Reflection.TypeExtensions (>= 4.1)
System.Resources.Extensions (>= 4.6)
- System.Resources.Writer (>= 4.0)
+ System.Security.Cryptography.Pkcs (>= 4.7)
+ System.Security.Cryptography.Xml (>= 4.7)
+ System.Security.Permissions (>= 4.7)
System.Threading.Tasks.Dataflow (>= 4.9)
- Microsoft.Build.Utilities.Core (16.5)
- Microsoft.Build.Framework (>= 16.5)
+ Microsoft.Build.Utilities.Core (16.10)
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
Microsoft.Win32.Registry (>= 4.3)
- System.Collections.Immutable (>= 1.5)
+ System.Collections.Immutable (>= 5.0)
+ System.Configuration.ConfigurationManager (>= 4.7)
+ System.Security.Permissions (>= 4.7)
System.Text.Encoding.CodePages (>= 4.0.1)
- Microsoft.NETCore.Platforms (3.1.1)
- Microsoft.NETCore.Targets (3.1)
- Microsoft.Win32.Primitives (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- Microsoft.Win32.Registry (4.7)
- System.Buffers (>= 4.5)
- System.Memory (>= 4.5.3)
- System.Security.AccessControl (>= 4.7)
- System.Security.Principal.Windows (>= 4.7)
+ Microsoft.NET.StringTools (1.0)
+ System.Memory (>= 4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
+ Microsoft.NETCore.Platforms (5.0.2)
+ Microsoft.NETCore.Targets (5.0)
+ Microsoft.Win32.Registry (5.0)
+ System.Buffers (>= 4.5.1)
+ System.Memory (>= 4.5.4)
+ System.Security.AccessControl (>= 5.0)
+ System.Security.Principal.Windows (>= 5.0)
Mono.Posix.NETStandard (1.0)
- MSBuild.StructuredLogger (2.1.133)
+ MSBuild.StructuredLogger (2.1.507)
Microsoft.Build (>= 16.4)
Microsoft.Build.Framework (>= 16.4)
Microsoft.Build.Tasks.Core (>= 16.4)
Microsoft.Build.Utilities.Core (>= 16.4)
- System.IO.Compression (>= 4.3)
- Newtonsoft.Json (12.0.3)
- NuGet.Common (5.6)
- NuGet.Frameworks (>= 5.6)
+ Newtonsoft.Json (13.0.1)
+ NuGet.Common (5.9.1)
+ NuGet.Frameworks (>= 5.9.1)
+ NuGet.Configuration (5.9.1)
+ NuGet.Common (>= 5.9.1)
+ System.Security.Cryptography.ProtectedData (>= 4.4)
+ NuGet.Frameworks (5.9.1)
+ NuGet.Packaging (5.9.1)
+ Newtonsoft.Json (>= 9.0.1)
+ NuGet.Configuration (>= 5.9.1)
+ NuGet.Versioning (>= 5.9.1)
+ System.Security.Cryptography.Cng (>= 5.0)
+ System.Security.Cryptography.Pkcs (>= 5.0)
+ NuGet.Protocol (5.9.1)
+ NuGet.Packaging (>= 5.9.1)
+ NuGet.Versioning (5.9.1)
+ Octokit (0.50)
+ System.Buffers (4.5.1)
+ System.CodeDom (5.0)
+ System.Collections.Immutable (5.0)
+ System.Memory (>= 4.5.4)
+ System.Configuration.ConfigurationManager (5.0)
+ System.Security.Cryptography.ProtectedData (>= 5.0)
+ System.Security.Permissions (>= 5.0)
+ System.Formats.Asn1 (5.0)
+ System.Buffers (>= 4.5.1)
+ System.Memory (>= 4.5.4)
+ System.Memory (4.5.4)
+ System.Buffers (>= 4.5.1)
+ System.Numerics.Vectors (>= 4.4)
+ System.Runtime.CompilerServices.Unsafe (>= 4.5.3)
+ System.Numerics.Vectors (4.5)
+ System.Reactive (5.0)
+ System.Runtime.InteropServices.WindowsRuntime (>= 4.3)
+ System.Threading.Tasks.Extensions (>= 4.5.4)
+ System.Reflection.Metadata (5.0)
+ System.Collections.Immutable (>= 5.0)
+ System.Resources.Extensions (5.0)
+ System.Memory (>= 4.5.4)
+ System.Runtime (4.3.1)
+ Microsoft.NETCore.Platforms (>= 1.1.1)
+ Microsoft.NETCore.Targets (>= 1.1.3)
+ System.Runtime.CompilerServices.Unsafe (5.0)
+ System.Runtime.InteropServices.WindowsRuntime (4.3)
+ System.Runtime (>= 4.3)
+ System.Security.AccessControl (5.0)
+ System.Security.Principal.Windows (>= 5.0)
+ System.Security.Cryptography.Cng (5.0)
+ System.Security.Cryptography.Pkcs (5.0.1)
+ System.Buffers (>= 4.5.1)
+ System.Formats.Asn1 (>= 5.0)
+ System.Memory (>= 4.5.4)
+ System.Security.Cryptography.Cng (>= 5.0)
+ System.Security.Cryptography.ProtectedData (5.0)
+ System.Memory (>= 4.5.4)
+ System.Security.Cryptography.Xml (5.0)
+ System.Memory (>= 4.5.4)
+ System.Security.Cryptography.Pkcs (>= 5.0)
+ System.Security.Permissions (>= 5.0)
+ System.Security.Permissions (5.0)
+ System.Security.AccessControl (>= 5.0)
+ System.Security.Principal.Windows (5.0)
+ System.Text.Encoding.CodePages (5.0)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
+ System.Threading.Tasks.Dataflow (5.0)
+ System.Threading.Tasks.Extensions (4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 4.5.3)
+
+GROUP Docs
+STORAGE: SYMLINK
+RESTRICTION: == netstandard2.0
+NUGET
+ remote: https://api.nuget.org/v3/index.json
+ FSharp.Compiler.Service (39.0)
+ FSharp.Core (5.0.1)
+ Microsoft.Build.Framework (>= 16.6)
+ Microsoft.Build.Tasks.Core (>= 16.6)
+ Microsoft.Build.Utilities.Core (>= 16.6)
+ System.Buffers (>= 4.5.1)
+ System.Collections.Immutable (>= 5.0)
System.Diagnostics.Process (>= 4.3)
+ System.Diagnostics.TraceSource (>= 4.3)
+ System.Linq.Expressions (>= 4.3)
+ System.Linq.Queryable (>= 4.3)
+ System.Memory (>= 4.5.4)
+ System.Net.Requests (>= 4.3)
+ System.Net.Security (>= 4.3)
+ System.Reflection.Emit (>= 4.3)
+ System.Reflection.Metadata (>= 5.0)
+ System.Reflection.TypeExtensions (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Runtime.Loader (>= 4.3)
+ System.Security.Claims (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Principal (>= 4.3)
+ System.Threading.Tasks.Parallel (>= 4.3)
System.Threading.Thread (>= 4.3)
- NuGet.Configuration (5.6)
- NuGet.Common (>= 5.6)
- System.Security.Cryptography.ProtectedData (>= 4.3)
- NuGet.Frameworks (5.6)
- NuGet.Packaging (5.6)
- Newtonsoft.Json (>= 9.0.1)
- NuGet.Configuration (>= 5.6)
- NuGet.Versioning (>= 5.6)
- System.Dynamic.Runtime (>= 4.3)
- NuGet.Protocol (5.6)
- NuGet.Packaging (>= 5.6)
- System.Dynamic.Runtime (>= 4.3)
- NuGet.Versioning (5.6)
- Octokit (0.47)
+ System.Threading.ThreadPool (>= 4.3)
+ FSharp.Core (5.0.1)
+ FSharp.Formatting (4.1)
+ FSharp.Compiler.Service (>= 35.0)
+ Markdig (0.24)
+ System.Memory (>= 4.5.4)
+ Microsoft.Build.Framework (16.10)
+ System.Security.Permissions (>= 4.7)
+ Microsoft.Build.Tasks.Core (16.10)
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.Build.Utilities.Core (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
+ Microsoft.Win32.Registry (>= 4.3)
+ System.CodeDom (>= 4.4)
+ System.Collections.Immutable (>= 5.0)
+ System.Reflection.Metadata (>= 1.6)
+ System.Resources.Extensions (>= 4.6)
+ System.Security.Cryptography.Pkcs (>= 4.7)
+ System.Security.Cryptography.Xml (>= 4.7)
+ System.Security.Permissions (>= 4.7)
+ System.Threading.Tasks.Dataflow (>= 4.9)
+ Microsoft.Build.Utilities.Core (16.10)
+ Microsoft.Build.Framework (>= 16.10)
+ Microsoft.NET.StringTools (>= 1.0)
+ Microsoft.Win32.Registry (>= 4.3)
+ System.Collections.Immutable (>= 5.0)
+ System.Configuration.ConfigurationManager (>= 4.7)
+ System.Security.Permissions (>= 4.7)
+ System.Text.Encoding.CodePages (>= 4.0.1)
+ Microsoft.NET.StringTools (1.0)
+ System.Memory (>= 4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
+ Microsoft.NETCore.Platforms (5.0.2)
+ Microsoft.NETCore.Targets (5.0)
+ Microsoft.Win32.Primitives (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ Microsoft.Win32.Registry (5.0)
+ System.Buffers (>= 4.5.1)
+ System.Memory (>= 4.5.4)
+ System.Security.AccessControl (>= 5.0)
+ System.Security.Principal.Windows (>= 5.0)
+ Newtonsoft.Json (13.0.1)
runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
runtime.debian.9-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
@@ -588,10 +984,10 @@ NUGET
runtime.native.System (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
- runtime.native.System.IO.Compression (4.3.2)
+ runtime.native.System.Net.Http (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
- runtime.native.System.Net.Http (4.3.1)
+ runtime.native.System.Net.Security (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
runtime.native.System.Security.Cryptography.Apple (4.3.1)
@@ -623,7 +1019,7 @@ NUGET
runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
runtime.ubuntu.18.04-x64.runtime.native.System.Security.Cryptography.OpenSsl (4.3.3)
System.Buffers (4.5.1)
- System.CodeDom (4.7)
+ System.CodeDom (5.0)
System.Collections (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
@@ -639,14 +1035,18 @@ NUGET
System.Runtime.Extensions (>= 4.3)
System.Threading (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.Collections.Immutable (1.7.1)
+ System.Collections.Immutable (5.0)
System.Memory (>= 4.5.4)
+ System.Configuration.ConfigurationManager (5.0)
+ System.Security.Cryptography.ProtectedData (>= 5.0)
+ System.Security.Permissions (>= 5.0)
System.Diagnostics.Debug (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Diagnostics.DiagnosticSource (4.7.1)
+ System.Diagnostics.DiagnosticSource (5.0.1)
System.Memory (>= 4.5.4)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
System.Diagnostics.Process (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.Win32.Primitives (>= 4.3)
@@ -669,25 +1069,23 @@ NUGET
System.Threading.Tasks (>= 4.3)
System.Threading.Thread (>= 4.3)
System.Threading.ThreadPool (>= 4.3)
- System.Diagnostics.Tracing (4.3)
+ System.Diagnostics.TraceSource (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- System.Dynamic.Runtime (4.3)
+ runtime.native.System (>= 4.3)
System.Collections (>= 4.3)
System.Diagnostics.Debug (>= 4.3)
- System.Linq (>= 4.3)
- System.Linq.Expressions (>= 4.3)
- System.ObjectModel (>= 4.3)
- System.Reflection (>= 4.3)
- System.Reflection.Emit (>= 4.3)
- System.Reflection.Emit.ILGeneration (>= 4.3)
- System.Reflection.Primitives (>= 4.3)
- System.Reflection.TypeExtensions (>= 4.3)
+ System.Globalization (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
System.Threading (>= 4.3)
+ System.Diagnostics.Tracing (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.NETCore.Targets (>= 1.1)
+ System.Runtime (>= 4.3)
+ System.Formats.Asn1 (5.0)
+ System.Buffers (>= 4.5.1)
+ System.Memory (>= 4.5.4)
System.Globalization (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
@@ -710,22 +1108,6 @@ NUGET
System.Runtime (>= 4.3)
System.Text.Encoding (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.IO.Compression (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- runtime.native.System (>= 4.3)
- runtime.native.System.IO.Compression (>= 4.3)
- System.Buffers (>= 4.3)
- System.Collections (>= 4.3)
- System.Diagnostics.Debug (>= 4.3)
- System.IO (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Runtime.Handles (>= 4.3)
- System.Runtime.InteropServices (>= 4.3)
- System.Text.Encoding (>= 4.3)
- System.Threading (>= 4.3)
- System.Threading.Tasks (>= 4.3)
System.IO.FileSystem (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
@@ -761,17 +1143,15 @@ NUGET
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
System.Threading (>= 4.3)
- System.Linq.Parallel (4.3)
+ System.Linq.Queryable (4.3)
System.Collections (>= 4.3)
- System.Collections.Concurrent (>= 4.3)
System.Diagnostics.Debug (>= 4.3)
- System.Diagnostics.Tracing (>= 4.3)
System.Linq (>= 4.3)
+ System.Linq.Expressions (>= 4.3)
+ System.Reflection (>= 4.3)
+ System.Reflection.Extensions (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Threading (>= 4.3)
- System.Threading.Tasks (>= 4.3)
System.Memory (4.5.4)
System.Buffers (>= 4.5.1)
System.Numerics.Vectors (>= 4.4)
@@ -808,6 +1188,54 @@ NUGET
Microsoft.NETCore.Targets (>= 1.1.3)
System.Runtime (>= 4.3.1)
System.Runtime.Handles (>= 4.3)
+ System.Net.Requests (4.3)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ System.Collections (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
+ System.Net.Http (>= 4.3)
+ System.Net.Primitives (>= 4.3)
+ System.Net.WebHeaderCollection (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Net.Security (4.3.2)
+ Microsoft.NETCore.Platforms (>= 1.1)
+ Microsoft.Win32.Primitives (>= 4.3)
+ runtime.native.System (>= 4.3)
+ runtime.native.System.Net.Security (>= 4.3)
+ runtime.native.System.Security.Cryptography.OpenSsl (>= 4.3.2)
+ System.Collections (>= 4.3)
+ System.Collections.Concurrent (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.Globalization.Extensions (>= 4.3)
+ System.IO (>= 4.3)
+ System.Net.Primitives (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Runtime.Handles (>= 4.3)
+ System.Runtime.InteropServices (>= 4.3)
+ System.Security.Claims (>= 4.3)
+ System.Security.Cryptography.Algorithms (>= 4.3)
+ System.Security.Cryptography.Encoding (>= 4.3)
+ System.Security.Cryptography.OpenSsl (>= 4.3)
+ System.Security.Cryptography.Primitives (>= 4.3)
+ System.Security.Cryptography.X509Certificates (>= 4.3)
+ System.Security.Principal (>= 4.3)
+ System.Text.Encoding (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
+ System.Threading.ThreadPool (>= 4.3)
+ System.Net.WebHeaderCollection (4.3)
+ System.Collections (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
System.Numerics.Vectors (4.5)
System.ObjectModel (4.3)
System.Collections (>= 4.3)
@@ -815,9 +1243,6 @@ NUGET
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Threading (>= 4.3)
- System.Reactive (4.4.1)
- System.Runtime.InteropServices.WindowsRuntime (>= 4.3)
- System.Threading.Tasks.Extensions (>= 4.5.4)
System.Reflection (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
@@ -834,14 +1259,14 @@ NUGET
Microsoft.NETCore.Targets (>= 1.1)
System.Reflection (>= 4.3)
System.Runtime (>= 4.3)
- System.Reflection.Metadata (1.8.1)
- System.Collections.Immutable (>= 1.7.1)
+ System.Reflection.Metadata (5.0)
+ System.Collections.Immutable (>= 5.0)
System.Reflection.Primitives (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
System.Reflection.TypeExtensions (4.7)
- System.Resources.Extensions (4.7.1)
+ System.Resources.Extensions (5.0)
System.Memory (>= 4.5.4)
System.Resources.ResourceManager (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
@@ -849,17 +1274,10 @@ NUGET
System.Globalization (>= 4.3)
System.Reflection (>= 4.3)
System.Runtime (>= 4.3)
- System.Resources.Writer (4.3)
- System.Collections (>= 4.3)
- System.IO (>= 4.3)
- System.Resources.ResourceManager (>= 4.3)
- System.Runtime (>= 4.3)
- System.Runtime.Extensions (>= 4.3)
- System.Text.Encoding (>= 4.3)
System.Runtime (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
- System.Runtime.CompilerServices.Unsafe (4.7.1)
+ System.Runtime.CompilerServices.Unsafe (5.0)
System.Runtime.Extensions (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1.1)
Microsoft.NETCore.Targets (>= 1.1.3)
@@ -875,18 +1293,25 @@ NUGET
System.Reflection.Primitives (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Handles (>= 4.3)
- System.Runtime.InteropServices.WindowsRuntime (4.3)
+ System.Runtime.Loader (4.3)
+ System.IO (>= 4.3)
+ System.Reflection (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Numerics (4.3)
System.Globalization (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
System.Runtime.Extensions (>= 4.3)
- System.Runtime.Serialization.Primitives (4.3)
+ System.Security.AccessControl (5.0)
+ System.Security.Principal.Windows (>= 5.0)
+ System.Security.Claims (4.3)
+ System.Collections (>= 4.3)
+ System.Globalization (>= 4.3)
+ System.IO (>= 4.3)
System.Resources.ResourceManager (>= 4.3)
System.Runtime (>= 4.3)
- System.Security.AccessControl (4.7)
- System.Security.Principal.Windows (>= 4.7)
+ System.Runtime.Extensions (>= 4.3)
+ System.Security.Principal (>= 4.3)
System.Security.Cryptography.Algorithms (4.3.1)
Microsoft.NETCore.Platforms (>= 1.1)
runtime.native.System.Security.Cryptography.Apple (>= 4.3.1)
@@ -902,7 +1327,7 @@ NUGET
System.Security.Cryptography.Encoding (>= 4.3)
System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
- System.Security.Cryptography.Cng (4.7)
+ System.Security.Cryptography.Cng (5.0)
System.Security.Cryptography.Csp (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
System.IO (>= 4.3)
@@ -930,7 +1355,12 @@ NUGET
System.Runtime.InteropServices (>= 4.3)
System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
- System.Security.Cryptography.OpenSsl (4.7)
+ System.Security.Cryptography.OpenSsl (5.0)
+ System.Security.Cryptography.Pkcs (5.0.1)
+ System.Buffers (>= 4.5.1)
+ System.Formats.Asn1 (>= 5.0)
+ System.Memory (>= 4.5.4)
+ System.Security.Cryptography.Cng (>= 5.0)
System.Security.Cryptography.Primitives (4.3)
System.Diagnostics.Debug (>= 4.3)
System.Globalization (>= 4.3)
@@ -939,8 +1369,8 @@ NUGET
System.Runtime (>= 4.3)
System.Threading (>= 4.3)
System.Threading.Tasks (>= 4.3)
- System.Security.Cryptography.ProtectedData (4.7)
- System.Memory (>= 4.5.3)
+ System.Security.Cryptography.ProtectedData (5.0)
+ System.Memory (>= 4.5.4)
System.Security.Cryptography.X509Certificates (4.3.2)
Microsoft.NETCore.Platforms (>= 1.1)
runtime.native.System (>= 4.3)
@@ -967,13 +1397,21 @@ NUGET
System.Security.Cryptography.Primitives (>= 4.3)
System.Text.Encoding (>= 4.3)
System.Threading (>= 4.3)
- System.Security.Principal.Windows (4.7)
+ System.Security.Cryptography.Xml (5.0)
+ System.Memory (>= 4.5.4)
+ System.Security.Cryptography.Pkcs (>= 5.0)
+ System.Security.Permissions (>= 5.0)
+ System.Security.Permissions (5.0)
+ System.Security.AccessControl (>= 5.0)
+ System.Security.Principal (4.3)
+ System.Runtime (>= 4.3)
+ System.Security.Principal.Windows (5.0)
System.Text.Encoding (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Text.Encoding.CodePages (4.7.1)
- System.Runtime.CompilerServices.Unsafe (>= 4.7.1)
+ System.Text.Encoding.CodePages (5.0)
+ System.Runtime.CompilerServices.Unsafe (>= 5.0)
System.Text.Encoding.Extensions (4.3)
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
@@ -986,80 +1424,18 @@ NUGET
Microsoft.NETCore.Platforms (>= 1.1)
Microsoft.NETCore.Targets (>= 1.1)
System.Runtime (>= 4.3)
- System.Threading.Tasks.Dataflow (4.11.1)
- System.Threading.Tasks.Extensions (4.5.4)
- System.Runtime.CompilerServices.Unsafe (>= 4.5.3)
+ System.Threading.Tasks.Dataflow (5.0)
+ System.Threading.Tasks.Parallel (4.3)
+ System.Collections.Concurrent (>= 4.3)
+ System.Diagnostics.Debug (>= 4.3)
+ System.Diagnostics.Tracing (>= 4.3)
+ System.Resources.ResourceManager (>= 4.3)
+ System.Runtime (>= 4.3)
+ System.Runtime.Extensions (>= 4.3)
+ System.Threading (>= 4.3)
+ System.Threading.Tasks (>= 4.3)
System.Threading.Thread (4.3)
System.Runtime (>= 4.3)
System.Threading.ThreadPool (4.3)
System.Runtime (>= 4.3)
System.Runtime.Handles (>= 4.3)
-
-GROUP Docs
-STORAGE: SYMLINK
-RESTRICTION: == netstandard2.0
-NUGET
- remote: https://api.nuget.org/v3/index.json
- FSharp.Compiler.Service (35.0)
- FSharp.Core (>= 4.6.2)
- System.Buffers (>= 4.5)
- System.Collections.Immutable (>= 1.5)
- System.Memory (>= 4.5.3)
- System.Reflection.Emit (>= 4.3)
- System.Reflection.Metadata (>= 1.6)
- System.Reflection.TypeExtensions (>= 4.3)
- System.Runtime.Loader (>= 4.0)
- FSharp.Core (4.7.2)
- FSharp.Formatting (4.0.1)
- FSharp.Compiler.Service (>= 35.0)
- Markdig (0.20)
- System.Memory (>= 4.5.4)
- Microsoft.NETCore.Platforms (3.1.1)
- Microsoft.NETCore.Targets (3.1)
- Newtonsoft.Json (12.0.3)
- System.Buffers (4.5.1)
- System.Collections.Immutable (1.7.1)
- System.Memory (>= 4.5.4)
- System.IO (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- System.Text.Encoding (>= 4.3)
- System.Threading.Tasks (>= 4.3)
- System.Memory (4.5.4)
- System.Buffers (>= 4.5.1)
- System.Numerics.Vectors (>= 4.4)
- System.Runtime.CompilerServices.Unsafe (>= 4.5.3)
- System.Numerics.Vectors (4.5)
- System.Reflection (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.IO (>= 4.3)
- System.Reflection.Primitives (>= 4.3)
- System.Runtime (>= 4.3)
- System.Reflection.Emit (4.7)
- System.Reflection.Emit.ILGeneration (>= 4.7)
- System.Reflection.Emit.ILGeneration (4.7)
- System.Reflection.Metadata (1.8.1)
- System.Collections.Immutable (>= 1.7.1)
- System.Reflection.Primitives (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- System.Reflection.TypeExtensions (4.7)
- System.Runtime (4.3.1)
- Microsoft.NETCore.Platforms (>= 1.1.1)
- Microsoft.NETCore.Targets (>= 1.1.3)
- System.Runtime.CompilerServices.Unsafe (4.7.1)
- System.Runtime.Loader (4.3)
- System.IO (>= 4.3)
- System.Reflection (>= 4.3)
- System.Runtime (>= 4.3)
- System.Text.Encoding (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
- System.Threading.Tasks (4.3)
- Microsoft.NETCore.Platforms (>= 1.1)
- Microsoft.NETCore.Targets (>= 1.1)
- System.Runtime (>= 4.3)
diff --git a/src/FSharpLint.Console/Output.fs b/src/FSharpLint.Console/Output.fs
index c173e45ec..eeb4a0531 100644
--- a/src/FSharpLint.Console/Output.fs
+++ b/src/FSharpLint.Console/Output.fs
@@ -1,7 +1,7 @@
module FSharpLint.Console.Output
open System
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
type IOutput =
@@ -14,11 +14,11 @@ type IOutput =
type StandardOutput () =
- let getErrorMessage (range:FSharp.Compiler.Range.range) =
+ let getErrorMessage (range:Range) =
let error = Resources.GetString("LintSourceError")
String.Format(error, range.StartLine, range.StartColumn)
- let highlightErrorText (range:range) (errorLine:string) =
+ let highlightErrorText (range:Range) (errorLine:string) =
let highlightColumnLine =
if String.length errorLine = 0 then "^"
else
diff --git a/src/FSharpLint.Console/Program.fs b/src/FSharpLint.Console/Program.fs
index 13e120846..9c8dce072 100644
--- a/src/FSharpLint.Console/Program.fs
+++ b/src/FSharpLint.Console/Program.fs
@@ -69,7 +69,7 @@ let private inferFileType (target:string) =
else
FileType.Source
-let private start (arguments:ParseResults) =
+let private start (arguments:ParseResults) (toolsPath:Ionide.ProjInfo.Types.ToolsPath) =
let mutable exitCode = 0
let output =
@@ -116,9 +116,9 @@ let private start (arguments:ParseResults) =
match fileType with
| FileType.File -> Lint.lintFile lintParams target
| FileType.Source -> Lint.lintSource lintParams target
- | FileType.Solution -> Lint.lintSolution lintParams target
+ | FileType.Solution -> Lint.lintSolution lintParams target toolsPath
| FileType.Project
- | _ -> Lint.lintProject lintParams target
+ | _ -> Lint.lintProject lintParams target toolsPath
handleLintResult lintResult
with
| e ->
@@ -128,6 +128,10 @@ let private start (arguments:ParseResults) =
| _ -> ()
exitCode
+
+/// Must be called only once per process.
+/// We're calling it globally so we can call main multiple times from our tests.
+let toolsPath = Ionide.ProjInfo.Init.init()
[]
let main argv =
@@ -136,4 +140,4 @@ let main argv =
| _ -> Some ConsoleColor.Red)
let parser = ArgumentParser.Create(programName = "fsharplint", errorHandler = errorHandler)
let parseResults = parser.ParseCommandLine argv
- start parseResults
\ No newline at end of file
+ start parseResults toolsPath
diff --git a/src/FSharpLint.Core/Application/Lint.fs b/src/FSharpLint.Core/Application/Lint.fs
index 4617b797c..5060c34b0 100644
--- a/src/FSharpLint.Core/Application/Lint.fs
+++ b/src/FSharpLint.Core/Application/Lint.fs
@@ -6,10 +6,10 @@ open System.Collections.Generic
open System.IO
open System.Runtime.InteropServices
open System.Threading
-open FSharp.Compiler
+open FSharp.Compiler.Text
open FSharp.Compiler.SourceCodeServices
-open Dotnet.ProjInfo.Workspace
-open Dotnet.ProjInfo.Workspace.FCS
+open Ionide.ProjInfo.ProjectSystem
+open Ionide.ProjInfo.FCS
open FSharpLint.Core
open FSharpLint.Framework
open FSharpLint.Framework.Configuration
@@ -59,7 +59,7 @@ module Lint =
with get() =
let getParseFailureReason = function
| ParseFile.FailedToParseFile failures ->
- let getFailureReason (x:FSharp.Compiler.SourceCodeServices.FSharpErrorInfo) =
+ let getFailureReason (x:FSharpDiagnostic) =
sprintf "failed to parse file %s, message: %s" x.FileName x.Message
String.Join(", ", failures |> Array.map getFailureReason)
@@ -115,7 +115,7 @@ module Lint =
type Context =
{ IndentationRuleContext:Map
- NoTabCharactersRuleContext:(string * Range.range) list }
+ NoTabCharactersRuleContext:(string * Range) list }
let runAstNodeRules (rules:RuleMetadata []) (globalConfig:Rules.GlobalRuleConfig) typeCheckResults (filePath:string) (fileContent:string) (lines:string []) syntaxArray =
let mutable indentationRuleState = Map.empty
@@ -240,21 +240,18 @@ module Lint =
| None -> Async.RunSynchronously(work, timeoutMs)
try
- let typeChecksSuccessful (typeChecks:Async list) =
- typeChecks
- |> List.reduce (Async.combine (&&))
+ let typeChecksSuccessful (typeChecks:(unit -> bool) list) =
+ (true, typeChecks)
+ ||> List.fold (fun acc cur -> acc && cur())
let typeCheckSuggestion (suggestion:Suggestion.LintWarning) =
- typeChecksSuccessful suggestion.Details.TypeChecks
- |> Async.map (fun checkSuccessful -> if checkSuccessful then Some suggestion else None)
+ if typeChecksSuccessful suggestion.Details.TypeChecks
+ then Some suggestion
+ else None
suggestionsRequiringTypeChecks
- |> Seq.map typeCheckSuggestion
- |> Async.Parallel
- |> runSynchronously
- |> Array.iter (function
- | Some suggestion -> suggest suggestion
- | None -> ())
+ |> Seq.choose typeCheckSuggestion
+ |> Seq.iter suggest
with
| :? TimeoutException -> () // Do nothing.
with
@@ -287,13 +284,26 @@ module Lint =
(exitCode, (workingDir, exePath, args))
- let getProjectInfo (projectFilePath:string) =
- let locator = MSBuildLocator()
- let loader = Dotnet.ProjInfo.Workspace.Loader.Create (LoaderConfig.Default locator)
- let netFwInfo = NetFWInfo.Create (NetFWInfoConfig.Default locator)
- let fcsBinder = FCSBinder (netFwInfo, loader, FSharpChecker.Create(keepAssemblyContents=true))
- loader.LoadProjects [projectFilePath]
- fcsBinder.GetProjectOptions projectFilePath
+ let getProjectInfo (projectFilePath:string) (toolsPath:Ionide.ProjInfo.Types.ToolsPath) =
+ let errorMessageFromNotifications notifications =
+ let extractError = function
+ | Ionide.ProjInfo.Types.WorkspaceProjectState.Failed(_projFile, error) -> Some(string(error))
+ | _ -> None
+
+ notifications
+ |> Seq.tryPick extractError
+ |> function Some(error) -> error | None -> "Unknown error when loading project file."
+
+ let loader = Ionide.ProjInfo.WorkspaceLoader.Create toolsPath
+ let notifications = ResizeArray<_>()
+ loader.Notifications.Add notifications.Add
+ let options = loader.LoadProjects [projectFilePath]
+ options
+ |> Seq.tryFind (fun opt -> opt.ProjectFileName = projectFilePath)
+ |> Option.map (fun proj -> Ionide.ProjInfo.FCS.mapToFSharpProjectOptions proj options)
+ |> function
+ | Some proj -> Ok proj
+ | None -> errorMessageFromNotifications notifications |> Error
let getFailedFiles = function
| ParseFile.Failed failure -> Some failure
@@ -380,7 +390,7 @@ module Lint =
/// Lints an entire F# project by retrieving the files from a given
/// path to the `.fsproj` file.
- let lintProject (optionalParams:OptionalLintParameters) (projectFilePath:string) =
+ let lintProject (optionalParams:OptionalLintParameters) (projectFilePath:string) (toolsPath:Ionide.ProjInfo.Types.ToolsPath) =
if IO.File.Exists projectFilePath then
let projectFilePath = Path.GetFullPath projectFilePath
let lintWarnings = LinkedList()
@@ -426,13 +436,13 @@ module Lint =
else
Failure (FailedToParseFilesInProject failedFiles)
- match getProjectInfo projectFilePath with
+ match getProjectInfo projectFilePath toolsPath with
| Ok projectOptions ->
match parseFilesInProject (Array.toList projectOptions.SourceFiles) projectOptions with
| Success _ -> lintWarnings |> Seq.toList |> LintResult.Success
| Failure x -> LintResult.Failure x
- | Error err ->
- MSBuildFailedToLoadProjectFile (projectFilePath, BuildFailure.InvalidProjectFileMessage (string err))
+ | Error error ->
+ MSBuildFailedToLoadProjectFile (projectFilePath, BuildFailure.InvalidProjectFileMessage error)
|> LintResult.Failure
| Error err ->
RunTimeConfigError err
@@ -442,7 +452,7 @@ module Lint =
|> LintResult.Failure
/// Lints an entire F# solution by linting all projects specified in the `.sln` file.
- let lintSolution (optionalParams:OptionalLintParameters) (solutionFilePath:string) =
+ let lintSolution (optionalParams:OptionalLintParameters) (solutionFilePath:string) (toolsPath:Ionide.ProjInfo.Types.ToolsPath) =
if IO.File.Exists solutionFilePath then
let solutionFilePath = Path.GetFullPath solutionFilePath
let solutionFolder = Path.GetDirectoryName solutionFilePath
@@ -469,7 +479,7 @@ module Lint =
let (successes, failures) =
projectsInSolution
- |> Array.map (fun projectFilePath -> lintProject optionalParams projectFilePath)
+ |> Array.map (fun projectFilePath -> lintProject optionalParams projectFilePath toolsPath)
|> Array.fold (fun (successes, failures) result ->
match result with
| LintResult.Success warnings ->
diff --git a/src/FSharpLint.Core/Application/Lint.fsi b/src/FSharpLint.Core/Application/Lint.fsi
index 357a6997e..8664f2fdc 100644
--- a/src/FSharpLint.Core/Application/Lint.fsi
+++ b/src/FSharpLint.Core/Application/Lint.fsi
@@ -18,7 +18,7 @@ module Lint =
open FSharpLint.Framework
open FSharpLint.Framework.Configuration
open FSharpLint.Framework.Rules
- open FSharp.Compiler
+ open FSharp.Compiler.Text
open FSharp.Compiler.SourceCodeServices
/// Provides information on what the linter is currently doing.
@@ -108,7 +108,7 @@ module Lint =
{ IndentationRuleContext : Map
// TODO: investigate incorrect indentation warning
// fsharplint:disable-next-line Indentation
- NoTabCharactersRuleContext : (string * Range.range) list }
+ NoTabCharactersRuleContext : (string * Range) list }
/// Result of running the linter.
[]
@@ -126,11 +126,11 @@ module Lint =
val runLineRules : LineRules -> Rules.GlobalRuleConfig -> string -> string -> string [] -> Context -> Suggestion.LintWarning []
/// Lints an entire F# solution by linting all projects specified in the `.sln` file.
- val lintSolution : optionalParams:OptionalLintParameters -> solutionFilePath:string -> LintResult
+ val lintSolution : optionalParams:OptionalLintParameters -> solutionFilePath:string -> toolsPath:Ionide.ProjInfo.Types.ToolsPath -> LintResult
/// Lints an entire F# project by retrieving the files from a given
/// path to the `.fsproj` file.
- val lintProject : optionalParams:OptionalLintParameters -> projectFilePath:string -> LintResult
+ val lintProject : optionalParams:OptionalLintParameters -> projectFilePath:string -> toolsPath:Ionide.ProjInfo.Types.ToolsPath -> LintResult
/// Lints F# source code.
val lintSource : optionalParams:OptionalLintParameters -> source:string -> LintResult
diff --git a/src/FSharpLint.Core/FSharpLint.Core.fsproj b/src/FSharpLint.Core/FSharpLint.Core.fsproj
index fffc7b7fb..c120dc610 100644
--- a/src/FSharpLint.Core/FSharpLint.Core.fsproj
+++ b/src/FSharpLint.Core/FSharpLint.Core.fsproj
@@ -1,7 +1,7 @@
- netstandard2.0
+ net5.0
true
true
true
diff --git a/src/FSharpLint.Core/Framework/Ast.fs b/src/FSharpLint.Core/Framework/Ast.fs
index e0162f4ba..e168a8f9d 100644
--- a/src/FSharpLint.Core/Framework/Ast.fs
+++ b/src/FSharpLint.Core/Framework/Ast.fs
@@ -1,6 +1,6 @@
namespace FSharpLint.Framework
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
/// Used to walk the FSharp Compiler's abstract syntax tree,
/// so that each node can be visited by a list of visitors.
diff --git a/src/FSharpLint.Core/Framework/HintParser.fs b/src/FSharpLint.Core/Framework/HintParser.fs
index c99ab9940..e5663b504 100644
--- a/src/FSharpLint.Core/Framework/HintParser.fs
+++ b/src/FSharpLint.Core/Framework/HintParser.fs
@@ -426,7 +426,7 @@ module HintParser =
>>= fun ident ->
let identStr = System.String.Join("", ident)
- let isKeyword = List.exists ((=) identStr) PrettyNaming.KeywordNames
+ let isKeyword = List.exists ((=) identStr) FSharpKeywords.KeywordNames
if isKeyword then fail (sprintf "Unexpected keyword %s" identStr)
else preturn ident
diff --git a/src/FSharpLint.Core/Framework/ParseFile.fs b/src/FSharpLint.Core/Framework/ParseFile.fs
index 91be14c01..8bca3fb69 100644
--- a/src/FSharpLint.Core/Framework/ParseFile.fs
+++ b/src/FSharpLint.Core/Framework/ParseFile.fs
@@ -28,7 +28,7 @@ module ParseFile =
[]
type ParseFileFailure =
- | FailedToParseFile of FSharpErrorInfo []
+ | FailedToParseFile of FSharpDiagnostic []
| AbortedTypeCheck
[]
@@ -56,16 +56,12 @@ module ParseFile =
let getProjectOptionsFromScript (checker:FSharpChecker) file (source:string) =
let sourceText = SourceText.ofString source
- #if NETSTANDARD2_0
let assumeDotNetFramework = false
- #else
- let assumeDotNetFramework = true
- #endif
+ let otherOpts = [| "--targetprofile:netstandard" |]
let (options, _diagnostics) =
- checker.GetProjectOptionsFromScript(file, sourceText, assumeDotNetFramework = assumeDotNetFramework, useSdkRefs = assumeDotNetFramework)
+ checker.GetProjectOptionsFromScript(file, sourceText, assumeDotNetFramework = assumeDotNetFramework, useSdkRefs = not assumeDotNetFramework, otherFlags = otherOpts)
|> Async.RunSynchronously
-
options
/// Parses a file using `FSharp.Compiler.Service`.
diff --git a/src/FSharpLint.Core/Framework/Rules.fs b/src/FSharpLint.Core/Framework/Rules.fs
index e0f7b6542..5f246f3d1 100644
--- a/src/FSharpLint.Core/Framework/Rules.fs
+++ b/src/FSharpLint.Core/Framework/Rules.fs
@@ -1,7 +1,7 @@
module FSharpLint.Framework.Rules
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharp.Compiler.SourceCodeServices
open FSharpLint.Framework.AbstractSyntaxArray
open FSharpLint.Framework.Ast
@@ -67,7 +67,7 @@ type NamingConfig =
type NamingRuleConfig =
{ Config:NamingConfig
- GetIdentifiersToCheck:AstNodeRuleParams -> (Ident * string * Async option) [] }
+ GetIdentifiersToCheck:AstNodeRuleParams -> (Ident * string * (unit -> bool) option) [] }
type LineRuleConfig = { Runner:LineRuleParams -> WarningDetails [] }
diff --git a/src/FSharpLint.Core/Framework/Suggestion.fs b/src/FSharpLint.Core/Framework/Suggestion.fs
index fddb7d387..afc263a78 100644
--- a/src/FSharpLint.Core/Framework/Suggestion.fs
+++ b/src/FSharpLint.Core/Framework/Suggestion.fs
@@ -1,7 +1,7 @@
module FSharpLint.Framework.Suggestion
open System
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
/// Information for consuming applications to provide an automated fix for a lint suggestion.
[]
@@ -10,7 +10,7 @@ type SuggestedFix = {
FromText:string
/// Location of the text to be replaced.
- FromRange:range
+ FromRange:Range
/// Text to replace the `FromText`, i.e. the fix.
ToText:string
@@ -19,7 +19,7 @@ type SuggestedFix = {
[]
type WarningDetails = {
/// Location of the code that prompted the suggestion.
- Range:range
+ Range:Range
/// Suggestion message to describe the possible problem to the user.
Message:string
@@ -27,9 +27,9 @@ type WarningDetails = {
/// Information to provide an automated fix.
SuggestedFix:Lazy option
- /// Async type checks to be performed to confirm this suggestion is valid.
+ /// Type checks to be performed to confirm this suggestion is valid.
/// Suggestion is only considered valid when all type checks resolve to true.
- TypeChecks:Async list
+ TypeChecks:(unit -> bool) list
} with
member internal this.WithTypeCheck typeCheck =
match typeCheck with
diff --git a/src/FSharpLint.Core/Framework/Utilities.fs b/src/FSharpLint.Core/Framework/Utilities.fs
index 49cac0a6d..8e9c4d69c 100644
--- a/src/FSharpLint.Core/Framework/Utilities.fs
+++ b/src/FSharpLint.Core/Framework/Utilities.fs
@@ -26,7 +26,7 @@ module ExpressionUtilities =
open System
open FSharp.Compiler
open FSharp.Compiler.SyntaxTree
- open FSharp.Compiler.Range
+ open FSharp.Compiler.Text
open FSharp.Compiler.SourceCodeServices
let (|Identifier|_|) = function
@@ -44,7 +44,7 @@ module ExpressionUtilities =
range.EndColumn,
"",
identNames)
- | _ -> async.Return None
+ | _ -> None
/// Converts an operator name e.g. op_Add to the operator symbol e.g. +
let identAsDecompiledOpName (ident:Ident) =
@@ -80,7 +80,7 @@ module ExpressionUtilities =
lidwd.Lid |> longIdentToString
/// Tries to find the source code within a given range.
- let tryFindTextOfRange (range:range) (text:string) =
+ let tryFindTextOfRange (range:Range) (text:string) =
let startIndex = findPos range.Start text
let endIndex = findPos range.End text
@@ -89,8 +89,8 @@ module ExpressionUtilities =
text.Substring(startIndex, endIndex - startIndex) |> Some
| _ -> None
- let getLeadingSpaces (range:range) (text:string) =
- let range = mkRange "" (mkPos range.StartLine 0) range.End
+ let getLeadingSpaces (range:Range) (text:string) =
+ let range = Range.mkRange "" (Pos.mkPos range.StartLine 0) range.End
tryFindTextOfRange range text
|> Option.map (fun text ->
text.ToCharArray()
@@ -115,7 +115,7 @@ module ExpressionUtilities =
/// Counts the number of comment lines preceding the given range of text.
let countPrecedingCommentLines (text:string) (startPos:pos) (endPos:pos) =
- let range = mkRange "" startPos endPos
+ let range = Range.mkRange "" startPos endPos
tryFindTextOfRange range text
|> Option.map (fun precedingText ->
@@ -128,7 +128,7 @@ module ExpressionUtilities =
|> Array.length)
|> Option.defaultValue 0
- let rangeContainsOtherRange (containingRange:range) (range:range) =
+ let rangeContainsOtherRange (containingRange:Range) (range:Range) =
range.StartLine >= containingRange.StartLine && range.EndLine <= containingRange.EndLine
module String =
diff --git a/src/FSharpLint.Core/Rules/Conventions/Binding/UselessBinding.fs b/src/FSharpLint.Core/Rules/Conventions/Binding/UselessBinding.fs
index 7369f0611..01d8db76a 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Binding/UselessBinding.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Binding/UselessBinding.fs
@@ -21,15 +21,14 @@ let private checkForUselessBinding (checkInfo:FSharpCheckFileResults option) pat
| :? FSharpMemberOrFunctionOrValue as v -> not v.IsMutable
| _ -> true
- let checkNotMutable (ident:Ident) = async {
- let! symbol =
+ let checkNotMutable (ident:Ident) = fun () ->
+ let symbol =
checkInfo.GetSymbolUseAtLocation(
ident.idRange.StartLine, ident.idRange.EndColumn, "", [ident.idText])
match symbol with
- | Some(symbol) -> return isNotMutable symbol
- | None -> return false
- }
+ | Some(symbol) -> isNotMutable symbol
+ | None -> false
let rec matchingIdentifier (bindingIdent:Ident) = function
| SynExpr.Paren(expr, _, _, _) ->
diff --git a/src/FSharpLint.Core/Rules/Conventions/FunctionReimplementation/ReimplementsFunction.fs b/src/FSharpLint.Core/Rules/Conventions/FunctionReimplementation/ReimplementsFunction.fs
index 9b86aa106..241fa51ac 100644
--- a/src/FSharpLint.Core/Rules/Conventions/FunctionReimplementation/ReimplementsFunction.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/FunctionReimplementation/ReimplementsFunction.fs
@@ -4,7 +4,7 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.PrettyNaming
+open FSharp.Compiler.SourceCodeServices
open FSharpLint.Framework.Ast
open FSharpLint.Framework.Rules
@@ -25,7 +25,7 @@ let private validateLambdaIsNotPointless (text:string) lambda range =
let generateError (identifier:LongIdent) =
let identifier =
identifier
- |> List.map (fun x -> DemangleOperatorName x.idText)
+ |> List.map (fun x -> PrettyNaming.DemangleOperatorName x.idText)
|> String.concat "."
let suggestedFix = lazy(
diff --git a/src/FSharpLint.Core/Rules/Conventions/Naming/MemberNames.fs b/src/FSharpLint.Core/Rules/Conventions/Naming/MemberNames.fs
index e2f8ef6e3..103efa497 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Naming/MemberNames.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Naming/MemberNames.fs
@@ -6,7 +6,7 @@ open FSharpLint.Framework.AstInfo
open FSharpLint.Framework.Rules
open FSharpLint.Rules.Helper.Naming
-let private getMemberIdents _ = function
+let private getMemberIdents _ = function
| SynPat.LongIdent(longIdent, _, _, _, _, _) ->
match List.tryLast longIdent.Lid with
| Some(ident) when ident.idText.StartsWith "op_" ->
diff --git a/src/FSharpLint.Core/Rules/Conventions/Naming/NamingHelper.fs b/src/FSharpLint.Core/Rules/Conventions/Naming/NamingHelper.fs
index d6a991a56..7ac11f4dc 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Naming/NamingHelper.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Naming/NamingHelper.fs
@@ -2,7 +2,7 @@ module FSharpLint.Rules.Helper.Naming
open System
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Ast
open FSharpLint.Framework.AstInfo
@@ -54,7 +54,7 @@ let private NumberOfExpectedBackticks = 4
/// the information as to whether the identifier was backticked doesn't appear to be in the AST.
let private isNotDoubleBackTickedIdent =
let isDoubleBackTickedIdent (identifier:Ident) =
- let diffOfRangeAgainstIdent (r:range) = (r.EndColumn - r.StartColumn) - identifier.idText.Length
+ let diffOfRangeAgainstIdent (r:Range) = (r.EndColumn - r.StartColumn) - identifier.idText.Length
let range = identifier.idRange
not range.IsSynthetic && diffOfRangeAgainstIdent range = NumberOfExpectedBackticks
@@ -170,7 +170,7 @@ let toAstNodeRule (namingRule:RuleMetadata) =
}
let isActivePattern (identifier:Ident) =
- FSharp.Compiler.PrettyNaming.IsActivePatternName identifier.idText
+ FSharp.Compiler.SourceCodeServices.PrettyNaming.IsActivePatternName identifier.idText
let activePatternIdentifiers (identifier:Ident) =
identifier.idText.Split('|')
@@ -244,14 +244,13 @@ let isLiteral = isAttribute "Literal"
let isMeasureType = isAttribute "Measure"
-let isNotUnionCase (checkFile:FSharpCheckFileResults) (ident:Ident) = async {
- let! symbol = checkFile.GetSymbolUseAtLocation(
+let isNotUnionCase (checkFile:FSharpCheckFileResults) (ident:Ident) =
+ let symbol = checkFile.GetSymbolUseAtLocation(
ident.idRange.StartLine, ident.idRange.EndColumn, "", [ident.idText])
match symbol with
- | Some(symbol) when (symbol.Symbol :? FSharpUnionCase) -> return false
- | Some(_) | None -> return true
-}
+ | Some(symbol) when (symbol.Symbol :? FSharpUnionCase) -> false
+ | Some(_) | None -> true
let isInterface typeDef =
let hasConstructor = function
@@ -284,7 +283,7 @@ let isModule (moduleKind:SynModuleOrNamespaceKind) =
/// Is module name implicitly created from file name?
let isImplicitModule (SynModuleOrNamespace.SynModuleOrNamespace(longIdent, _, moduleKind, _, _, _, _, range)) =
- let zeroLengthRange (r:range) =
+ let zeroLengthRange (r:Range) =
(r.EndColumn - r.StartColumn) = 0 && r.StartLine = r.EndLine
// Check the identifiers in the module name have no length.
@@ -292,7 +291,9 @@ let isImplicitModule (SynModuleOrNamespace.SynModuleOrNamespace(longIdent, _, mo
// TODO: does SynModuleOrNamespaceKind.AnonModule replace this check?
isModule moduleKind && longIdent |> List.forall (fun x -> zeroLengthRange x.idRange)
-let rec getPatternIdents isPublic getIdents argsAreParameters pattern =
+type GetIdents<'t> = bool -> SynPat -> 't []
+
+let rec getPatternIdents<'t> isPublic (getIdents:GetIdents<'t>) argsAreParameters pattern =
match pattern with
| SynPat.LongIdent(_, _, _, args, access, _) ->
let isPublic = checkIfPublic isPublic access
diff --git a/src/FSharpLint.Core/Rules/Conventions/Naming/NonPublicValuesNames.fs b/src/FSharpLint.Core/Rules/Conventions/Naming/NonPublicValuesNames.fs
index f8e0a5203..34e1b796e 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Naming/NonPublicValuesNames.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Naming/NonPublicValuesNames.fs
@@ -7,8 +7,10 @@ open FSharpLint.Framework.Rules
open FSharpLint.Rules.Helper.Naming
let private getValueOrFunctionIdents typeChecker isPublic pattern =
- let checkNotUnionCase ident =
- typeChecker |> Option.map (fun checker -> isNotUnionCase checker ident)
+ let checkNotUnionCase ident = fun () ->
+ typeChecker
+ |> Option.map (fun checker -> isNotUnionCase checker ident)
+ |> Option.defaultValue false
match pattern with
| SynPat.LongIdent(longIdent, _, _, _, _, _) ->
@@ -19,7 +21,7 @@ let private getValueOrFunctionIdents typeChecker isPublic pattern =
| Some ident when not (isActivePattern ident) && singleIdentifier ->
let checkNotUnionCase = checkNotUnionCase ident
if not isPublic then
- (ident, ident.idText, checkNotUnionCase)
+ (ident, ident.idText, Some checkNotUnionCase)
|> Array.singleton
else
Array.empty
diff --git a/src/FSharpLint.Core/Rules/Conventions/Naming/ParameterNames.fs b/src/FSharpLint.Core/Rules/Conventions/Naming/ParameterNames.fs
index 51f47ec73..04df6bdcd 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Naming/ParameterNames.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Naming/ParameterNames.fs
@@ -13,14 +13,16 @@ let private getMemberIdents _ = function
| _ -> Array.empty
let private getValueOrFunctionIdents typeChecker isPublic pattern =
- let checkNotUnionCase ident =
- typeChecker |> Option.map (fun checker -> isNotUnionCase checker ident)
+ let checkNotUnionCase ident = fun () ->
+ typeChecker
+ |> Option.map (fun checker -> isNotUnionCase checker ident)
+ |> Option.defaultValue true
match pattern with
| SynPat.Named(_, ident, _, _, _)
| SynPat.OptionalVal(ident, _) when not (isActivePattern ident) ->
let checkNotUnionCase = checkNotUnionCase ident
- (ident, ident.idText, checkNotUnionCase) |> Array.singleton
+ (ident, ident.idText, Some checkNotUnionCase) |> Array.singleton
| _ -> Array.empty
let private getIdentifiers (args:AstNodeRuleParams) =
diff --git a/src/FSharpLint.Core/Rules/Conventions/Naming/PublicValuesNames.fs b/src/FSharpLint.Core/Rules/Conventions/Naming/PublicValuesNames.fs
index 6933b3cec..1946d76c3 100644
--- a/src/FSharpLint.Core/Rules/Conventions/Naming/PublicValuesNames.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/Naming/PublicValuesNames.fs
@@ -7,8 +7,10 @@ open FSharpLint.Framework.Rules
open FSharpLint.Rules.Helper.Naming
let private getValueOrFunctionIdents typeChecker isPublic pattern =
- let checkNotUnionCase ident =
- typeChecker |> Option.map (fun checker -> isNotUnionCase checker ident)
+ let checkNotUnionCase ident = fun () ->
+ typeChecker
+ |> Option.map (fun checker -> isNotUnionCase checker ident)
+ |> Option.defaultValue false
let isNotActivePattern (ident:Ident) =
ident.idText.StartsWith("|")
@@ -23,7 +25,7 @@ let private getValueOrFunctionIdents typeChecker isPublic pattern =
| Some ident when singleIdentifier ->
let checkNotUnionCase = checkNotUnionCase ident
if isPublic && isNotActivePattern ident then
- (ident, ident.idText, checkNotUnionCase)
+ (ident, ident.idText, Some checkNotUnionCase)
|> Array.singleton
else
Array.empty
diff --git a/src/FSharpLint.Core/Rules/Conventions/NoPartialFunctions.fs b/src/FSharpLint.Core/Rules/Conventions/NoPartialFunctions.fs
index 984f99762..2c65ea725 100644
--- a/src/FSharpLint.Core/Rules/Conventions/NoPartialFunctions.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/NoPartialFunctions.fs
@@ -1,7 +1,7 @@
module FSharpLint.Rules.NoPartialFunctions
open System
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
@@ -67,7 +67,7 @@ let private partialFunctionIdentifiers =
("List.pick", Function "List.tryPick")
] |> Map.ofList
-let private checkIfPartialIdentifier (config:Config) (identifier:string) (range:range) =
+let private checkIfPartialIdentifier (config:Config) (identifier:string) (range:Range) =
if List.contains identifier config.AllowedPartials then
None
elif List.contains identifier config.AdditionalPartials then
diff --git a/src/FSharpLint.Core/Rules/Conventions/RecursiveAsyncFunction.fs b/src/FSharpLint.Core/Rules/Conventions/RecursiveAsyncFunction.fs
index 417759edc..8d8aeb580 100644
--- a/src/FSharpLint.Core/Rules/Conventions/RecursiveAsyncFunction.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/RecursiveAsyncFunction.fs
@@ -3,7 +3,7 @@ module FSharpLint.Rules.RecursiveAsyncFunction
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework.Ast
open FSharpLint.Framework.Rules
@@ -29,8 +29,8 @@ let private getFunctionNameFromAsyncCompExprBinding = function
| _ ->
None
-let checkRecursiveAsyncFunction (args:AstNodeRuleParams) (range:range) (doBangExpr:SynExpr) breadcrumbs =
- let doTokenRange = mkRange "do!" (mkPos range.StartLine range.StartColumn) (mkPos range.StartLine (range.StartColumn + 3))
+let checkRecursiveAsyncFunction (args:AstNodeRuleParams) (range:Range) (doBangExpr:SynExpr) breadcrumbs =
+ let doTokenRange = Range.mkRange "do!" (Pos.mkPos range.StartLine range.StartColumn) (Pos.mkPos range.StartLine (range.StartColumn + 3))
match doBangExpr with
| SynExpr.App (funcExpr=(SynExpr.Ident callerIdent)) ->
breadcrumbs
diff --git a/src/FSharpLint.Core/Rules/Conventions/RedundantNewKeyword.fs b/src/FSharpLint.Core/Rules/Conventions/RedundantNewKeyword.fs
index 982b352bc..03ee5c5a7 100644
--- a/src/FSharpLint.Core/Rules/Conventions/RedundantNewKeyword.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/RedundantNewKeyword.fs
@@ -15,19 +15,18 @@ let private implementsIDisposable (fsharpType:FSharpType) =
else
false
-let private doesNotImplementIDisposable (checkFile:FSharpCheckFileResults) (ident:LongIdentWithDots) = async {
+let private doesNotImplementIDisposable (checkFile:FSharpCheckFileResults) (ident:LongIdentWithDots) = fun () ->
let names = ident.Lid |> List.map (fun x -> x.idText)
- let! symbol = checkFile.GetSymbolUseAtLocation(ident.Range.StartLine, ident.Range.EndColumn, "", names)
+ let symbol = checkFile.GetSymbolUseAtLocation(ident.Range.StartLine, ident.Range.EndColumn, "", names)
match symbol with
| Some(symbol) when (symbol.Symbol :? FSharpMemberOrFunctionOrValue) ->
let ctor = symbol.Symbol :?> FSharpMemberOrFunctionOrValue
- return
- ctor.DeclaringEntity
- |> Option.exists (fun ctorForType ->
- Seq.forall (implementsIDisposable >> not) ctorForType.AllInterfaces)
- | Some(_) | None -> return false
-}
+
+ ctor.DeclaringEntity
+ |> Option.exists (fun ctorForType ->
+ Seq.forall (implementsIDisposable >> not) ctorForType.AllInterfaces)
+ | Some(_) | None -> false
let private generateFix (text:string) range = lazy(
ExpressionUtilities.tryFindTextOfRange range text
diff --git a/src/FSharpLint.Core/Rules/Conventions/SourceLength/SourceLengthHelper.fs b/src/FSharpLint.Core/Rules/Conventions/SourceLength/SourceLengthHelper.fs
index 9213a910a..92a5ba709 100644
--- a/src/FSharpLint.Core/Rules/Conventions/SourceLength/SourceLengthHelper.fs
+++ b/src/FSharpLint.Core/Rules/Conventions/SourceLength/SourceLengthHelper.fs
@@ -3,7 +3,7 @@ module FSharpLint.Rules.Helper.SourceLength
open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
[]
type Config = { MaxLines:int }
@@ -12,7 +12,7 @@ let private error name i actual =
let errorFormatString = Resources.GetString("RulesSourceLengthError")
String.Format(errorFormatString, name, i, actual)
-let private length (range:range) = range.EndLine - range.StartLine
+let private length (range:Range) = range.EndLine - range.StartLine
let checkSourceLengthRule (config:Config) range errorName =
let actualLines = length range
diff --git a/src/FSharpLint.Core/Rules/Formatting/Spacing/ClassMemberSpacing.fs b/src/FSharpLint.Core/Rules/Formatting/Spacing/ClassMemberSpacing.fs
index 73221beea..186babf81 100644
--- a/src/FSharpLint.Core/Rules/Formatting/Spacing/ClassMemberSpacing.fs
+++ b/src/FSharpLint.Core/Rules/Formatting/Spacing/ClassMemberSpacing.fs
@@ -2,7 +2,7 @@ module FSharpLint.Rules.ClassMemberSpacing
open System
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
@@ -24,10 +24,10 @@ let checkClassMemberSpacing (args:AstNodeRuleParams) (members:SynMemberDefns) =
then 1
else 0
- mkRange
+ Range.mkRange
""
- (mkPos (memberOne.Range.EndLine + 1) 0)
- (mkPos (memberTwo.Range.StartLine + endOffset) 0)
+ (Pos.mkPos (memberOne.Range.EndLine + 1) 0)
+ (Pos.mkPos (memberTwo.Range.StartLine + endOffset) 0)
{ Range = intermediateRange
Message = Resources.GetString("RulesFormattingClassMemberSpacingError")
diff --git a/src/FSharpLint.Core/Rules/Formatting/Spacing/ModuleDeclSpacing.fs b/src/FSharpLint.Core/Rules/Formatting/Spacing/ModuleDeclSpacing.fs
index 00ddb4a88..23ee90021 100644
--- a/src/FSharpLint.Core/Rules/Formatting/Spacing/ModuleDeclSpacing.fs
+++ b/src/FSharpLint.Core/Rules/Formatting/Spacing/ModuleDeclSpacing.fs
@@ -2,7 +2,7 @@ module FSharpLint.Rules.ModuleDeclSpacing
open System
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
@@ -26,10 +26,10 @@ let checkModuleDeclSpacing (args:AstNodeRuleParams) synModuleOrNamespace =
then 1
else 0
- mkRange
+ Range.mkRange
""
- (mkPos (declOne.Range.EndLine + 1) 0)
- (mkPos (declTwo.Range.StartLine + endOffset) 0)
+ (Pos.mkPos (declOne.Range.EndLine + 1) 0)
+ (Pos.mkPos (declTwo.Range.StartLine + endOffset) 0)
{ Range = intermediateRange
Message = Resources.GetString("RulesFormattingModuleDeclSpacingError")
SuggestedFix = None
diff --git a/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleCommaSpacing.fs b/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleCommaSpacing.fs
index 0d0f9af23..cfb968e82 100644
--- a/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleCommaSpacing.fs
+++ b/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleCommaSpacing.fs
@@ -2,7 +2,7 @@ module FSharpLint.Rules.TupleCommaSpacing
open System
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
@@ -16,7 +16,7 @@ let checkTupleCommaSpacing (args:AstNodeRuleParams) (tupleExprs:SynExpr list) tu
|> Array.pairwise
|> Array.choose (fun (expr, nextExpr) ->
if expr.Range.EndLine = nextExpr.Range.StartLine && expr.Range.EndColumn + 2 <> nextExpr.Range.StartColumn then
- let commaRange = mkRange "" expr.Range.End nextExpr.Range.Start
+ let commaRange = Range.mkRange "" expr.Range.End nextExpr.Range.Start
let suggestedFix =
ExpressionUtilities.tryFindTextOfRange commaRange args.FileContent
|> Option.map (fun commaText ->
diff --git a/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleIndentation.fs b/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleIndentation.fs
index 082f55564..45695e33e 100644
--- a/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleIndentation.fs
+++ b/src/FSharpLint.Core/Rules/Formatting/TupleFormatting/TupleIndentation.fs
@@ -3,7 +3,7 @@ module FSharpLint.Rules.TupleIndentation
open System
open System.Diagnostics.CodeAnalysis
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
@@ -19,7 +19,7 @@ let checkTupleIndentation _ (tupleExprs:SynExpr list) _ _ =
|> Array.pairwise
|> Array.choose (fun (expr, nextExpr) ->
if expr.Range.StartColumn <> nextExpr.Range.StartColumn then
- { Range = mkRange "" expr.Range.Start nextExpr.Range.End
+ { Range = Range.mkRange "" expr.Range.Start nextExpr.Range.End
Message = Resources.GetString("RulesFormattingTupleIndentationError")
SuggestedFix = None
TypeChecks = [] } |> Some
diff --git a/src/FSharpLint.Core/Rules/Formatting/TypedItemSpacing.fs b/src/FSharpLint.Core/Rules/Formatting/TypedItemSpacing.fs
index 011d4615d..dc0d322af 100644
--- a/src/FSharpLint.Core/Rules/Formatting/TypedItemSpacing.fs
+++ b/src/FSharpLint.Core/Rules/Formatting/TypedItemSpacing.fs
@@ -1,7 +1,7 @@
module FSharpLint.Rules.TypedItemSpacing
open System
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharp.Compiler.SyntaxTree
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
@@ -40,7 +40,7 @@ let private expectedSpacesFromConfig (typedItemStyle:TypedItemStyle) =
| _ -> (0, 0)
/// Checks the provided range, containing a typed item, has valid spacing.
-let private checkRange (config:Config) (args:AstNodeRuleParams) (range:range) =
+let private checkRange (config:Config) (args:AstNodeRuleParams) (range:Range) =
let (expectedSpacesBefore, expectedSpacesAfter) =
expectedSpacesFromConfig config.TypedItemStyle
diff --git a/src/FSharpLint.Core/Rules/Hints/HintMatcher.fs b/src/FSharpLint.Core/Rules/Hints/HintMatcher.fs
index f3e5b50cf..c7305f65b 100644
--- a/src/FSharpLint.Core/Rules/Hints/HintMatcher.fs
+++ b/src/FSharpLint.Core/Rules/Hints/HintMatcher.fs
@@ -4,7 +4,6 @@ open System
open System.Collections.Generic
open System.Diagnostics
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.PrettyNaming
open FSharp.Compiler.SourceCodeServices
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
@@ -204,7 +203,7 @@ module private MatchExpression =
[]
type HintMatch =
- | Match of Async list
+ | Match of (unit -> bool) list
| NoMatch
let private (&&~) lhs rhs =
@@ -219,21 +218,19 @@ module private MatchExpression =
| SynExpr.Ident(ident), SynExpr.Ident(opIdent) when opIdent.idText = "op_Equality" ->
match arguments.FSharpCheckFileResults with
| Some(checkFile) ->
- async {
- let! symbolUse =
+ fun () ->
+ let symbolUse =
checkFile.GetSymbolUseAtLocation(
ident.idRange.StartLine, ident.idRange.EndColumn, "", [ident.idText])
- return
- match symbolUse with
- | Some(symbolUse) ->
- match symbolUse.Symbol with
- | :? FSharpParameter
- | :? FSharpField -> false
- | :? FSharpMemberOrFunctionOrValue as x -> not x.IsProperty
- | _ -> true
- | None -> true
- }
+ match symbolUse with
+ | Some(symbolUse) ->
+ match symbolUse.Symbol with
+ | :? FSharpParameter
+ | :? FSharpField -> false
+ | :? FSharpMemberOrFunctionOrValue as x -> not x.IsProperty
+ | _ -> true
+ | None -> true
|> List.singleton
|> Match
| None ->
@@ -525,7 +522,7 @@ module private FormatHint =
| HintExpr(Expression.Identifier(identifier))
| HintPat(Pattern.Identifier(identifier)) ->
identifier
- |> List.map DemangleOperatorName
+ |> List.map PrettyNaming.DemangleOperatorName
|> String.concat "."
| HintExpr(Expression.FunctionApplication(expressions)) ->
expressions |> surroundExpressionsString (HintExpr >> toString) "" "" " "
@@ -597,8 +594,8 @@ let private hintError typeChecks hint (args:AstNodeRuleParams) range matchedVari
let error = System.String.Format(errorFormatString, matched, message)
{ Range = range; Message = error; SuggestedFix = None; TypeChecks = typeChecks }
-let private getMethodParameters (checkFile:FSharpCheckFileResults) (methodIdent:LongIdentWithDots) = async {
- let! symbol =
+let private getMethodParameters (checkFile:FSharpCheckFileResults) (methodIdent:LongIdentWithDots) =
+ let symbol =
checkFile.GetSymbolUseAtLocation(
methodIdent.Range.StartLine,
methodIdent.Range.EndColumn,
@@ -609,24 +606,21 @@ let private getMethodParameters (checkFile:FSharpCheckFileResults) (methodIdent:
| Some(symbol) when (symbol.Symbol :? FSharpMemberOrFunctionOrValue) ->
let symbol = symbol.Symbol :?> FSharpMemberOrFunctionOrValue
- if symbol.IsMember then return symbol.CurriedParameterGroups |> Seq.tryHead
- else return None
- | _ -> return None
-}
+ if symbol.IsMember then symbol.CurriedParameterGroups |> Seq.tryHead
+ else None
+ | _ -> None
/// Check a lambda function can be replaced with a function,
/// it will not be if the lambda is automatically getting
/// converted to a delegate type e.g. Func.
-let private canReplaceLambdaWithFunction checkFile methodIdent index = async {
- let! parameters = getMethodParameters checkFile methodIdent
-
+let private canReplaceLambdaWithFunction checkFile methodIdent index =
+ let parameters = getMethodParameters checkFile methodIdent
match parameters with
| Some(parameters) when index < Seq.length parameters ->
let parameter = parameters.[index]
- return not (parameter.Type.HasTypeDefinition && parameter.Type.TypeDefinition.IsDelegate)
- | _ -> return true
-}
+ not (parameter.Type.HasTypeDefinition && parameter.Type.TypeDefinition.IsDelegate)
+ | _ -> true
/// Check if lambda can be replaced with an identifier (cannot in the case when is a parameter with the type of a delegate).
let private (|RequiresCheck|CanBeReplaced|CannotBeReplaced|) (breadcrumbs, range) =
@@ -677,7 +671,7 @@ let private confirmFuzzyMatch (args:AstNodeRuleParams) (hint:HintParser.Hint) =
| RequiresCheck(index, methodIdent) ->
match args.CheckInfo with
| Some checkFile ->
- let typeCheck = canReplaceLambdaWithFunction checkFile methodIdent index
+ let typeCheck = fun () -> canReplaceLambdaWithFunction checkFile methodIdent index
suggest (typeCheck ::typeChecks)
| None -> ()
| CanBeReplaced -> suggest typeChecks
diff --git a/src/FSharpLint.Core/Rules/Typography/Indentation.fs b/src/FSharpLint.Core/Rules/Typography/Indentation.fs
index 2102957d9..6513990cf 100644
--- a/src/FSharpLint.Core/Rules/Typography/Indentation.fs
+++ b/src/FSharpLint.Core/Rules/Typography/Indentation.fs
@@ -3,7 +3,7 @@ module FSharpLint.Rules.Indentation
open System
open FSharpLint.Framework
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Ast
open FSharpLint.Framework.Rules
@@ -12,9 +12,9 @@ let [] RuleName = "Indentation"
module ContextBuilder =
- let private firstRangePerLine (ranges:range list) =
+ let private firstRangePerLine (ranges:Range list) =
List.foldBack
- (fun (range:range) map -> Map.add range.StartLine range map)
+ (fun (range:Range) map -> Map.add range.StartLine range map)
ranges
Map.empty
|> Map.toList
@@ -31,7 +31,7 @@ module ContextBuilder =
helper [] seqExpr
|> List.rev
- let private createAbsoluteAndOffsetOverrides expectedIndentation (rangeToUpdate:range) =
+ let private createAbsoluteAndOffsetOverrides expectedIndentation (rangeToUpdate:Range) =
let absoluteOverride = (rangeToUpdate.StartLine, (true, expectedIndentation))
let relativeOverrides =
[(rangeToUpdate.StartLine + 1)..rangeToUpdate.EndLine]
@@ -49,7 +49,7 @@ module ContextBuilder =
| _ ->
[]
- let private createAbsoluteAndOffsetOverridesBasedOnFirst (ranges:range list) =
+ let private createAbsoluteAndOffsetOverridesBasedOnFirst (ranges:Range list) =
match ranges with
| (first::others) ->
let expectedIndentation = first.StartColumn
@@ -120,7 +120,7 @@ module ContextBuilder =
let checkIndentation (expectedSpaces:int) (line:string) (lineNumber:int) (indentationOverrides:Map) =
let lineTrimmedStart = line.TrimStart()
let numLeadingSpaces = line.Length - lineTrimmedStart.Length
- let range = mkRange "" (mkPos lineNumber 0) (mkPos lineNumber numLeadingSpaces)
+ let range = Range.mkRange "" (Pos.mkPos lineNumber 0) (Pos.mkPos lineNumber numLeadingSpaces)
if lineTrimmedStart.StartsWith "//" || lineTrimmedStart.StartsWith "(*" then
None
diff --git a/src/FSharpLint.Core/Rules/Typography/MaxCharactersOnLine.fs b/src/FSharpLint.Core/Rules/Typography/MaxCharactersOnLine.fs
index fc2a1541f..8ae8f7f7c 100644
--- a/src/FSharpLint.Core/Rules/Typography/MaxCharactersOnLine.fs
+++ b/src/FSharpLint.Core/Rules/Typography/MaxCharactersOnLine.fs
@@ -4,7 +4,7 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Rules
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
[]
type Config = { MaxCharactersOnLine:int }
@@ -13,7 +13,7 @@ let checkMaxCharactersOnLine (config:Config) (args:LineRuleParams) =
let maxCharacters = config.MaxCharactersOnLine
let lineLength = String.length args.Line
if lineLength > maxCharacters then
- let range = mkRange "" (mkPos args.LineNumber (maxCharacters + 1)) (mkPos args.LineNumber lineLength)
+ let range = Range.mkRange "" (Pos.mkPos args.LineNumber (maxCharacters + 1)) (Pos.mkPos args.LineNumber lineLength)
let errorFormatString = Resources.GetString("RulesTypographyLineLengthError")
{ Range = range
Message = String.Format(errorFormatString, (maxCharacters + 1))
diff --git a/src/FSharpLint.Core/Rules/Typography/MaxLinesInFile.fs b/src/FSharpLint.Core/Rules/Typography/MaxLinesInFile.fs
index 20b78f4ea..97c308cd5 100644
--- a/src/FSharpLint.Core/Rules/Typography/MaxLinesInFile.fs
+++ b/src/FSharpLint.Core/Rules/Typography/MaxLinesInFile.fs
@@ -4,7 +4,7 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Rules
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
[]
type Config = { MaxLinesInFile:int }
@@ -12,7 +12,7 @@ type Config = { MaxLinesInFile:int }
let private checkNumberOfLinesInFile numberOfLines line maxLines =
if numberOfLines > maxLines then
let errorFormatString = Resources.GetString("RulesTypographyFileLengthError")
- { Range = mkRange "" (mkPos (maxLines + 1) 0) (mkPos numberOfLines (String.length line))
+ { Range = Range.mkRange "" (Pos.mkPos (maxLines + 1) 0) (Pos.mkPos numberOfLines (String.length line))
Message = String.Format(errorFormatString, (maxLines + 1))
SuggestedFix = None
TypeChecks = [] } |> Array.singleton
diff --git a/src/FSharpLint.Core/Rules/Typography/NoTabCharacters.fs b/src/FSharpLint.Core/Rules/Typography/NoTabCharacters.fs
index 87e677fba..31d104f4f 100644
--- a/src/FSharpLint.Core/Rules/Typography/NoTabCharacters.fs
+++ b/src/FSharpLint.Core/Rules/Typography/NoTabCharacters.fs
@@ -4,7 +4,7 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharp.Compiler.SyntaxTree
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework.Ast
open FSharpLint.Framework.Rules
@@ -24,7 +24,7 @@ let checkNoTabCharacters literalStrings (args:LineRuleParams) =
let indexOfTab = args.Line.IndexOf('\t')
if indexOfTab >= 0 then
- let range = mkRange "" (mkPos args.LineNumber indexOfTab) (mkPos args.LineNumber (indexOfTab + 1))
+ let range = Range.mkRange "" (Pos.mkPos args.LineNumber indexOfTab) (Pos.mkPos args.LineNumber (indexOfTab + 1))
if isInLiteralString literalStrings range |> not then
{ Range = range
Message = Resources.GetString("RulesTypographyTabCharacterError")
diff --git a/src/FSharpLint.Core/Rules/Typography/TrailingNewLineInFile.fs b/src/FSharpLint.Core/Rules/Typography/TrailingNewLineInFile.fs
index c1a8a3594..461bc88e5 100644
--- a/src/FSharpLint.Core/Rules/Typography/TrailingNewLineInFile.fs
+++ b/src/FSharpLint.Core/Rules/Typography/TrailingNewLineInFile.fs
@@ -4,12 +4,12 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Rules
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
let checkTrailingNewLineInFile (args:LineRuleParams) =
if args.IsLastLine && args.FileContent.EndsWith("\n") then
- let pos = mkPos args.LineNumber 0
- { Range = mkRange "" pos pos
+ let pos = Pos.mkPos args.LineNumber 0
+ { Range = Range.mkRange "" pos pos
Message = Resources.GetString("RulesTypographyTrailingLineError")
SuggestedFix = None
TypeChecks = [] } |> Array.singleton
diff --git a/src/FSharpLint.Core/Rules/Typography/TrailingWhitespaceOnLine.fs b/src/FSharpLint.Core/Rules/Typography/TrailingWhitespaceOnLine.fs
index 0494a25f7..1346c1a07 100644
--- a/src/FSharpLint.Core/Rules/Typography/TrailingWhitespaceOnLine.fs
+++ b/src/FSharpLint.Core/Rules/Typography/TrailingWhitespaceOnLine.fs
@@ -4,7 +4,7 @@ open System
open FSharpLint.Framework
open FSharpLint.Framework.Suggestion
open FSharpLint.Framework.Rules
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
[]
type Config =
@@ -46,7 +46,7 @@ let checkTrailingWhitespaceOnLine (config:Config) (args:LineRuleParams) =
if stringEndsWithWhitespace then
let whitespaceLength = lengthOfWhitespaceOnEnd line
- let range = mkRange "" (mkPos lineNumber (line.Length - whitespaceLength)) (mkPos lineNumber line.Length)
+ let range = Range.mkRange "" (Pos.mkPos lineNumber (line.Length - whitespaceLength)) (Pos.mkPos lineNumber line.Length)
{ Range = range
Message = Resources.GetString("RulesTypographyTrailingWhitespaceError")
SuggestedFix = None
diff --git a/src/FSharpLint.Core/paket.references b/src/FSharpLint.Core/paket.references
index 1d9ab19b3..771759c48 100644
--- a/src/FSharpLint.Core/paket.references
+++ b/src/FSharpLint.Core/paket.references
@@ -1,8 +1,12 @@
FSharp.Compiler.Service
FParsec
-Dotnet.ProjInfo
-Dotnet.ProjInfo.Workspace
-Dotnet.ProjInfo.Workspace.FCS
+Ionide.ProjInfo
+Ionide.ProjInfo.ProjectSystem
+Ionide.ProjInfo.FCS
FSharp.Core
Newtonsoft.Json
-Microsoft.Build.Utilities.Core
\ No newline at end of file
+Microsoft.Build.Tasks.Core copy_local: false
+Microsoft.Build.Framework copy_local: false
+Microsoft.Build.Locator copy_local: false
+Microsoft.Build.Utilities.Core copy_local: false
+Microsoft.Build copy_local: false
diff --git a/tests/FSharpLint.Benchmarks/Benchmark.fs b/tests/FSharpLint.Benchmarks/Benchmark.fs
index 86bf2b808..c1ad13542 100644
--- a/tests/FSharpLint.Benchmarks/Benchmark.fs
+++ b/tests/FSharpLint.Benchmarks/Benchmark.fs
@@ -2,7 +2,6 @@ namespace FSharpLint.Benchmarks
open System.IO
open BenchmarkDotNet.Attributes
-open FSharp.Compiler.AbstractIL.Internal.Library
open FSharp.Compiler.SourceCodeServices
open FSharp.Compiler.Text
open FSharpLint.Application.Lint
@@ -34,7 +33,7 @@ type Benchmark () =
let (fileInfo, lines) =
let text = File.ReadAllText sourceFile
let tree = generateAst text sourceFile
- ({ Ast = tree; Source = text; TypeCheckResults = None }, String.getLines text |> Array.toList)
+ ({ Ast = tree; Source = text; TypeCheckResults = None }, String.toLines text |> Array.toList)
[]
member this.LintParsedFile () =
diff --git a/tests/FSharpLint.Core.Tests/Framework/TestAbstractSyntaxArray.fs b/tests/FSharpLint.Core.Tests/Framework/TestAbstractSyntaxArray.fs
index 841f127a8..c33069904 100644
--- a/tests/FSharpLint.Core.Tests/Framework/TestAbstractSyntaxArray.fs
+++ b/tests/FSharpLint.Core.Tests/Framework/TestAbstractSyntaxArray.fs
@@ -111,7 +111,7 @@ type TestAst() =
let array = astToArray tree
- let actual = array |> Array.map (fun x -> x.Hashcode)
+ let actual = array |> Array.map (fun x -> x.Hashcode) |> Array.toList
let expected =
[ Utilities.hash2 SyntaxNode.ModuleOrNamespace 0
@@ -132,7 +132,7 @@ type TestAst() =
Assert.AreEqual(expected, actual)
- let expected = array |> Array.map (fun x -> (x.NumberOfChildren, x.ParentIndex))
+ let expected = array |> Array.map (fun x -> (x.NumberOfChildren, x.ParentIndex)) |> Array.toList
Assert.AreEqual([ (14, 0)
(13, 0)
(12, 1)
@@ -157,7 +157,7 @@ type TestAst() =
let array = astToArray tree
- let actual = array |> Array.map (fun x -> x.Hashcode)
+ let actual = array |> Array.map (fun x -> x.Hashcode) |> List.ofArray
let expected =
[ Utilities.hash2 SyntaxNode.ModuleOrNamespace 0
@@ -170,7 +170,7 @@ type TestAst() =
Assert.AreEqual(expected, actual)
- let expected = array |> Array.map (fun x -> (x.NumberOfChildren, x.ParentIndex))
+ let expected = array |> Array.map (fun x -> (x.NumberOfChildren, x.ParentIndex)) |> List.ofArray
Assert.AreEqual([ (6, 0)
(5, 0)
(4, 1)
diff --git a/tests/FSharpLint.Core.Tests/Framework/TestAst.fs b/tests/FSharpLint.Core.Tests/Framework/TestAst.fs
index 9a38863fc..55a18296c 100644
--- a/tests/FSharpLint.Core.Tests/Framework/TestAst.fs
+++ b/tests/FSharpLint.Core.Tests/Framework/TestAst.fs
@@ -5,7 +5,7 @@ open NUnit.Framework
open FSharpLint.Framework.Ast
open FSharpLint.Framework.Configuration
open FSharpLint.Framework.ParseFile
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharp.Compiler.SyntaxTree
open FSharp.Compiler.SourceCodeServices
diff --git a/tests/FSharpLint.Core.Tests/Framework/TestExpressionUtilities.fs b/tests/FSharpLint.Core.Tests/Framework/TestExpressionUtilities.fs
index 7e3b973e3..cf648e736 100644
--- a/tests/FSharpLint.Core.Tests/Framework/TestExpressionUtilities.fs
+++ b/tests/FSharpLint.Core.Tests/Framework/TestExpressionUtilities.fs
@@ -1,7 +1,7 @@
module TestExpressionUtilities
open NUnit.Framework
-open FSharp.Compiler.Range
+open FSharp.Compiler.Text
open FSharpLint.Framework.ExpressionUtilities
[]
@@ -11,7 +11,7 @@ type TestExpressionUtilities() =
let text = "123\n345\n678"
let textOfRange (line1, col1) (line2, col2) =
- tryFindTextOfRange (mkRange "" (mkPos line1 col1) (mkPos line2 col2)) text
+ tryFindTextOfRange (Range.mkRange "" (Pos.mkPos line1 col1) (Pos.mkPos line2 col2)) text
Assert.AreEqual(Some "123", textOfRange (1, 0) (1, 3))
Assert.AreEqual(Some "345", textOfRange (2, 0) (2, 3))
diff --git a/tests/FSharpLint.Core.Tests/Rules/TestRuleBase.fs b/tests/FSharpLint.Core.Tests/Rules/TestRuleBase.fs
index fd5a41415..ffca4126b 100644
--- a/tests/FSharpLint.Core.Tests/Rules/TestRuleBase.fs
+++ b/tests/FSharpLint.Core.Tests/Rules/TestRuleBase.fs
@@ -16,10 +16,8 @@ type TestRuleBase () =
member __.PostSuggestion (suggestion:Suggestion.LintWarning) =
if not suggestion.Details.TypeChecks.IsEmpty then
let successfulTypeCheck =
- suggestion.Details.TypeChecks
- |> Async.Parallel
- |> Async.RunSynchronously
- |> Array.reduce (&&)
+ (true, suggestion.Details.TypeChecks)
+ ||> List.fold (fun acc check -> acc && check ())
if successfulTypeCheck then
suggestions.Add(suggestion)
diff --git a/tests/FSharpLint.FunctionalTest/TestApi.fs b/tests/FSharpLint.FunctionalTest/TestApi.fs
index 7fa242f75..44652db6d 100644
--- a/tests/FSharpLint.FunctionalTest/TestApi.fs
+++ b/tests/FSharpLint.FunctionalTest/TestApi.fs
@@ -33,6 +33,9 @@ module TestApi =
| Some(parseTree) -> parseTree
| None -> failwith "Failed to parse file."
+ /// Must be called once per process.
+ let toolsPath = Ionide.ProjInfo.Init.init()
+
[]
[]
member __.``Performance of linting an existing file``() =
@@ -64,7 +67,7 @@ module TestApi =
let projectPath = basePath > "tests" > "FSharpLint.FunctionalTest.TestedProject" > "FSharpLint.FunctionalTest.TestedProject.NetCore"
let projectFile = projectPath > "FSharpLint.FunctionalTest.TestedProject.NetCore.fsproj"
- let result = lintProject OptionalLintParameters.Default projectFile
+ let result = lintProject OptionalLintParameters.Default projectFile toolsPath
match result with
| LintResult.Success warnings ->
@@ -77,7 +80,7 @@ module TestApi =
let projectPath = basePath > "tests" > "FSharpLint.FunctionalTest.TestedProject" > "FSharpLint.FunctionalTest.TestedProject.NetCore"
let projectFile = projectPath > "FSharpLint.FunctionalTest.TestedProject.NetCore.fsproj"
- let result = lintProject OptionalLintParameters.Default projectFile
+ let result = lintProject OptionalLintParameters.Default projectFile toolsPath
match result with
| LintResult.Success warnings ->
@@ -86,13 +89,13 @@ module TestApi =
Assert.True(false, string err)
[]
- member __.``Lint project with default config tries to load `fsharplint.json``() =
+ member __.``Lint project with default config tries to load fsharplint.json``() =
let projectPath = basePath > "tests" > "FSharpLint.FunctionalTest.TestedProject" > "FSharpLint.FunctionalTest.TestedProject.NetCore"
let projectFile = projectPath > "FSharpLint.FunctionalTest.TestedProject.NetCore.fsproj"
let tempConfigFile = TestContext.CurrentContext.TestDirectory > "fsharplint.json"
File.WriteAllText (tempConfigFile, """{ "ignoreFiles": ["*"] }""")
- let result = lintProject OptionalLintParameters.Default projectFile
+ let result = lintProject OptionalLintParameters.Default projectFile toolsPath
File.Delete tempConfigFile
match result with
@@ -106,7 +109,7 @@ module TestApi =
let projectPath = basePath > "tests" > "FSharpLint.FunctionalTest.TestedProject"
let solutionFile = projectPath > "FSharpLint.FunctionalTest.TestedProject.sln"
- let result = lintSolution OptionalLintParameters.Default solutionFile
+ let result = lintSolution OptionalLintParameters.Default solutionFile toolsPath
match result with
| LintResult.Success warnings ->
@@ -122,7 +125,7 @@ module TestApi =
let relativePathToProjectFile = Path.GetRelativePath (Directory.GetCurrentDirectory(), projectFile)
- let result = lintProject OptionalLintParameters.Default relativePathToProjectFile
+ let result = lintProject OptionalLintParameters.Default relativePathToProjectFile toolsPath
match result with
| LintResult.Success warnings ->
@@ -138,7 +141,7 @@ module TestApi =
let relativePathToSolutionFile = Path.GetRelativePath (Directory.GetCurrentDirectory(), solutionFile)
- let result = lintSolution OptionalLintParameters.Default relativePathToSolutionFile
+ let result = lintSolution OptionalLintParameters.Default relativePathToSolutionFile toolsPath
match result with
| LintResult.Success warnings ->
diff --git a/tests/FSharpLint.FunctionalTest/TestConsoleApplication.fs b/tests/FSharpLint.FunctionalTest/TestConsoleApplication.fs
index b50a021a2..fd7e1cba3 100644
--- a/tests/FSharpLint.FunctionalTest/TestConsoleApplication.fs
+++ b/tests/FSharpLint.FunctionalTest/TestConsoleApplication.fs
@@ -107,7 +107,8 @@ module Tests =
Assert.AreEqual(expectedErrors, errors,
"Did not find the following expected errors: [" + String.concat "," expectedMissing + "]\n" +
- "Found the following unexpected warnings: [" + String.concat "," notExpected + "]")
+ "Found the following unexpected warnings: [" + String.concat "," notExpected + "]\n" +
+ "Complete output: " + output)
[]
member __.FunctionalTestConsoleApplicationSolution() =
@@ -122,4 +123,5 @@ module Tests =
Assert.AreEqual(expectedErrors, errors,
"Did not find the following expected errors: [" + String.concat "," expectedMissing + "]\n" +
- "Found the following unexpected warnings: [" + String.concat "," notExpected + "]")
+ "Found the following unexpected warnings: [" + String.concat "," notExpected + "]\n" +
+ "Complete output: " + output)
diff --git a/tests/FSharpLint.FunctionalTest/paket.references b/tests/FSharpLint.FunctionalTest/paket.references
index b7dc60e22..58a3defbe 100644
--- a/tests/FSharpLint.FunctionalTest/paket.references
+++ b/tests/FSharpLint.FunctionalTest/paket.references
@@ -1,4 +1,5 @@
nunit
NUnit3TestAdapter
+Microsoft.NET.Test.Sdk
+FSharp.Compiler.Service
FSharp.Core
-Microsoft.NET.Test.Sdk
\ No newline at end of file
diff --git a/tests/TypeChecker.fs b/tests/TypeChecker.fs
index 2f8ac0776..745d08409 100644
--- a/tests/TypeChecker.fs
+++ b/tests/TypeChecker.fs
@@ -841,7 +841,7 @@ let TcConst cenv ty m env c =
| SynConst.Bytes _ -> error(InternalError(FSComp.SR.tcUnexpectedConstByteArray(),m))
/// Convert an Abstract IL ILFieldInit value read from .NET metadata to a TAST constant
-let TcFieldInit (_m:range) lit =
+let TcFieldInit (_m:Range) lit =
match lit with
| ILFieldInit.String s -> Const.String s
| ILFieldInit.Null -> Const.Zero
@@ -1280,7 +1280,7 @@ let ComputeAccessAndCompPath env declKindOpt m vis actualParent =
let cpath = (if accessModPermitted then Some cpath else None)
vis,cpath
-let CheckForAbnormalOperatorNames cenv (idRange:range) opName isMember =
+let CheckForAbnormalOperatorNames cenv (idRange:Range) opName isMember =
if (idRange.EndColumn - idRange.StartColumn <= 5) && not cenv.g.compilingFslib then
@@ -6339,7 +6339,7 @@ and TcConstExpr cenv overallTy env m tpenv c =
//-------------------------------------------------------------------------
// Check an 'assert(x)' expression.
-and TcAssertExpr cenv overallTy env (m:range) tpenv x =
+and TcAssertExpr cenv overallTy env (m:Range) tpenv x =
let synm = m.MakeSynthetic() // Mark as synthetic so the language service won't pick it up.
let callDiagnosticsExpr = SynExpr.App(ExprAtomicFlag.Atomic, false, mkSynLidGet synm ["System";"Diagnostics";"Debug"] "Assert",
// wrap an extra parentheses so 'assert(x=1) isn't considered a named argument to a method call
@@ -6579,7 +6579,7 @@ and TcComputationExpression cenv env overallTy mWhole interpExpr builderTy tpenv
| _ -> false
/// Make a builder.Method(...) call
- let mkSynCall nm (m:range) args =
+ let mkSynCall nm (m:Range) args =
let m = m.MakeSynthetic() // Mark as synthetic so the language service won't pick it up.
let args =
match args with
@@ -15153,7 +15153,7 @@ and TcModuleOrNamespaceSignature cenv env (id:Ident,isModule,defs,xml,attribs,vi
return (mspec, envAtEnd)
}
-and TcModuleOrNamespaceSignatureElements cenv parent env (id,modKind,defs,m:range,xml) =
+and TcModuleOrNamespaceSignatureElements cenv parent env (id,modKind,defs,m:Range,xml) =
eventually {
let endm = m.EndRange // use end of range for errors
@@ -15387,7 +15387,7 @@ and TcModuleOrNamespaceElements cenv parent endm env xml defs =
return (mexpr, topAttrsNew, env, envAtEnd)
}
-and TcModuleOrNamespace cenv env (id,isModule,defs,xml,modAttrs,vis,m:range) =
+and TcModuleOrNamespace cenv env (id,isModule,defs,xml,modAttrs,vis,m:Range) =
eventually {
let endm = m.EndRange
let modKind = ComputeModuleOrNamespaceKind cenv.g isModule modAttrs