diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs b/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs index 7a3b5b8bf..8eb5e4cfd 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs @@ -7,6 +7,8 @@ namespace Microsoft.DotNet.ProjectJsonMigration { public const string AspNetToolsVersion = "1.0.0-msbuild3-final"; public const string AspNet110ToolsVersion = "1.1.0-msbuild3-final"; + public const string AspNet101PackagesVersion = "1.0.1"; + public const string EntityFramework101PackagesVersion = "1.0.1"; public const string TestSdkPackageVersion = "15.0.0-preview-20170106-08"; public const string XUnitPackageVersion = "2.2.0-beta4-build3444"; public const string XUnitRunnerPackageVersion = "2.2.0-beta4-build1194"; diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/PackageConstants.cs b/src/Microsoft.DotNet.ProjectJsonMigration/PackageConstants.cs index 5273ddbfe..d8e4f1bb3 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/PackageConstants.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/PackageConstants.cs @@ -161,6 +161,1546 @@ namespace Microsoft.DotNet.ProjectJsonMigration }, null }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.App", + Version = "[,1.0.3)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.App", + Version = "1.0.3" + } + }, + { + new PackageDependencyInfo + { + Name = "NETStandard.Library", + Version = "[,1.6.0)" + }, + new PackageDependencyInfo { + Name = "NETStandard.Library", + Version = "1.6.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Antiforgery", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Antiforgery", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Abstractions", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Abstractions", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.ApiExplorer", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.ApiExplorer", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Core", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Core", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Cors", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Cors", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.DataAnnotations", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.DataAnnotations", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Formatters.Json", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Formatters.Json", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Formatters.Xml", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Formatters.Xml", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Localization", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Localization", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Razor", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Razor", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.Razor.Host", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.Razor.Host", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.TagHelpers", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.TagHelpers", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.ViewFeatures", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.ViewFeatures", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Mvc.WebApiCompatShim", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Mvc.WebApiCompatShim", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Routing", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Routing", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Routing.Abstractions", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Routing.Abstractions", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Server.Kestrel", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Server.Kestrel", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.AspNetCore.Server.Kestrel.Https", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.AspNetCore.Server.Kestrel.Https", + Version =ConstantPackageVersions.AspNet101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.InMemory", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.InMemory", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Relational", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Relational", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Relational.Design", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Relational.Design", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Relational.Design.Specification.Tests", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Relational.Design.Specification.Tests", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Relational.Specification.Tests", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Relational.Specification.Tests", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Specification.Tests", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Specification.Tests", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Sqlite", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Sqlite", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.Sqlite.Design", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.Sqlite.Design", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.SqlServer", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.SqlServer", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.EntityFrameworkCore.SqlServer.Design", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.EntityFrameworkCore.SqlServer.Design", + Version =ConstantPackageVersions.EntityFramework101PackagesVersion + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.JIT", + Version = "[,1.0.5)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.JIT", + Version = "1.0.5" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.Runtime.CoreCLR", + Version = "[,1.0.5)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.Runtime.CoreCLR", + Version = "1.0.5" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.DotNetHost", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.DotNetHost", + Version = "1.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.DotNetHostPolicy", + Version = "[,1.0.3)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.DotNetHostPolicy", + Version = "1.0.3" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.DotNetHostResolver", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.DotNetHostResolver", + Version = "1.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.Platforms", + Version = "[,1.0.2)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.Platforms", + Version = "1.0.2" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.Targets", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.Targets", + Version = "1.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.NETCore.Windows.ApiSets", + Version = "[,1.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.NETCore.Windows.ApiSets", + Version = "1.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.Http", + Version = "[,4.1.1)" + }, + new PackageDependencyInfo { + Name = "System.Net.Http", + Version = "4.1.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.AppContext", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.AppContext", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Buffers", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Buffers", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Collections", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Collections", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Collections.Concurrent", + Version = "[,4.0.12)" + }, + new PackageDependencyInfo { + Name = "System.Collections.Concurrent", + Version = "4.0.12" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Collections.Immutable", + Version = "[,1.2.0)" + }, + new PackageDependencyInfo { + Name = "System.Collections.Immutable", + Version = "1.2.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.ComponentModel", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.ComponentModel", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.ComponentModel.Annotations", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.ComponentModel.Annotations", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Console", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Console", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.Debug", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.Debug", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.DiagnosticSource", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.DiagnosticSource", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.FileVersionInfo", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.FileVersionInfo", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.Process", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.Process", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.StackTrace", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.StackTrace", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.Tools", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.Tools", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Diagnostics.Tracing", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Diagnostics.Tracing", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Dynamic.Runtime", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Dynamic.Runtime", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Globalization", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Globalization", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Globalization.Calendars", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Globalization.Calendars", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Globalization.Extensions", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Globalization.Extensions", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.IO", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.Compression", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.IO.Compression", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.Compression.ZipFile", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.IO.Compression.ZipFile", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.MemoryMappedFiles", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.IO.MemoryMappedFiles", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.UnmanagedMemoryStream", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.IO.UnmanagedMemoryStream", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Linq", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Linq", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Linq.Expressions", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Linq.Expressions", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Linq.Parallel", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Linq.Parallel", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Linq.Queryable", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Linq.Queryable", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.NameResolution", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Net.NameResolution", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.Primitives", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Net.Primitives", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.Requests", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Net.Requests", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.Security", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Net.Security", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.Sockets", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Net.Sockets", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Net.WebHeaderCollection", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Net.WebHeaderCollection", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Numerics.Vectors", + Version = "[,4.1.1)" + }, + new PackageDependencyInfo { + Name = "System.Numerics.Vectors", + Version = "4.1.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.ObjectModel", + Version = "[,4.0.12)" + }, + new PackageDependencyInfo { + Name = "System.ObjectModel", + Version = "4.0.12" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Reflection", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.DispatchProxy", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.DispatchProxy", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Emit", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Emit", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Emit.ILGeneration", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Emit.ILGeneration", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Emit.Lightweight", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Emit.Lightweight", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Extensions", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Extensions", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Metadata", + Version = "[,1.3.0)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Metadata", + Version = "1.3.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.Primitives", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.Primitives", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Reflection.TypeExtensions", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Reflection.TypeExtensions", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Resources.Reader", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Resources.Reader", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Resources.ResourceManager", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Resources.ResourceManager", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Runtime", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.Extensions", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.Extensions", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.Handles", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.Handles", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.InteropServices", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.InteropServices", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.InteropServices.RuntimeInformation", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.InteropServices.RuntimeInformation", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.Loader", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.Loader", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Runtime.Numerics", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Runtime.Numerics", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Claims", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Security.Claims", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.Algorithms", + Version = "[,4.2.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.Algorithms", + Version = "4.2.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.Cng", + Version = "[,4.2.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.Cng", + Version = "4.2.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.Csp", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.Csp", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.Encoding", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.Encoding", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.OpenSsl", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.OpenSsl", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.Primitives", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.Primitives", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Cryptography.X509Certificates", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Cryptography.X509Certificates", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Principal", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Security.Principal", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Security.Principal.Windows", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Security.Principal.Windows", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Text.Encoding", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Text.Encoding", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Text.Encoding.CodePages", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Text.Encoding.CodePages", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Text.Encoding.Extensions", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Text.Encoding.Extensions", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Text.RegularExpressions", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "System.Text.RegularExpressions", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Threading", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Overlapped", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Overlapped", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Tasks", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Tasks", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Tasks.Dataflow", + Version = "[,4.6.0)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Tasks.Dataflow", + Version = "4.6.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Tasks.Extensions", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Tasks.Extensions", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Tasks.Parallel", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Tasks.Parallel", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Thread", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Thread", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.ThreadPool", + Version = "[,4.0.10)" + }, + new PackageDependencyInfo { + Name = "System.Threading.ThreadPool", + Version = "4.0.10" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Threading.Timer", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Threading.Timer", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Xml.ReaderWriter", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Xml.ReaderWriter", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Xml.XDocument", + Version = "[,4.0.11)" + }, + new PackageDependencyInfo { + Name = "System.Xml.XDocument", + Version = "4.0.11" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Xml.XmlDocument", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Xml.XmlDocument", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Xml.XPath", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Xml.XPath", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.Xml.XPath.XmlDocument", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.Xml.XPath.XmlDocument", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "runtime.native.System", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "runtime.native.System", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "runtime.native.System.IO.Compression", + Version = "[,4.1.0)" + }, + new PackageDependencyInfo { + Name = "runtime.native.System.IO.Compression", + Version = "4.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "runtime.native.System.Net.Http", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "runtime.native.System.Net.Http", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "runtime.native.System.Net.Security", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "runtime.native.System.Net.Security", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "runtime.native.System.Security.Cryptography", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "runtime.native.System.Security.Cryptography", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Libuv", + Version = "[,1.9.1)" + }, + new PackageDependencyInfo { + Name = "Libuv", + Version = "1.9.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.CodeAnalysis.Analyzers", + Version = "[,1.1.0)" + }, + new PackageDependencyInfo { + Name = "Microsoft.CodeAnalysis.Analyzers", + Version = "1.1.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.CodeAnalysis.Common", + Version = "[,1.3.0)" + }, + new PackageDependencyInfo { + Name = "Microsoft.CodeAnalysis.Common", + Version = "1.3.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.CodeAnalysis.CSharp", + Version = "[,1.3.0)" + }, + new PackageDependencyInfo { + Name = "Microsoft.CodeAnalysis.CSharp", + Version = "1.3.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.CodeAnalysis.VisualBasic", + Version = "[,1.3.0)" + }, + new PackageDependencyInfo { + Name = "Microsoft.CodeAnalysis.VisualBasic", + Version = "1.3.0" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.CSharp", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.CSharp", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.VisualBasic", + Version = "[,10.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.VisualBasic", + Version = "10.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.Win32.Primitives", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "Microsoft.Win32.Primitives", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "Microsoft.Win32.Registry", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "Microsoft.Win32.Registry", + Version = "4.0.0" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.FileSystem", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.IO.FileSystem", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.FileSystem.Primitives", + Version = "[,4.0.1)" + }, + new PackageDependencyInfo { + Name = "System.IO.FileSystem.Primitives", + Version = "4.0.1" + } + }, + { + new PackageDependencyInfo + { + Name = "System.IO.FileSystem.Watcher", + Version = "[,4.0.0)" + }, + new PackageDependencyInfo { + Name = "System.IO.FileSystem.Watcher", + Version = "4.0.0" + } + }, }; public static readonly IDictionary ProjectToolPackages = diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs index aa3ae1e09..71f29a709 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs @@ -279,13 +279,22 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules { var name = dependency.Name; var version = dependency.LibraryRange?.VersionRange?.OriginalString; + var minRange = dependency.LibraryRange?.VersionRange?.ToNonSnapshotRange().MinVersion; - var possibleMappings = dependencyToVersionMap.Where(c => c.Key.Name == name); - if (possibleMappings.Any()) + var possibleMappings = + dependencyToVersionMap.Where(c => c.Key.Name.Equals(name, StringComparison.OrdinalIgnoreCase)); + if (possibleMappings.Any() && !string.IsNullOrEmpty(version)) { var possibleVersions = possibleMappings.Select(p => VersionRange.Parse(p.Key.Version)); - var bestMatchVersion = possibleVersions.First(p => p.Satisfies(dependency.LibraryRange?.VersionRange?.ToNonSnapshotRange().MinVersion)); - var dependencyInfo = possibleMappings.First(c => c.Key.Version == bestMatchVersion.OriginalString).Value; + var matchVersion = possibleVersions.FirstOrDefault(p => p.Satisfies(minRange)); + if (matchVersion == null) + { + return null; + } + + var dependencyInfo = possibleMappings.First(c => + c.Key.Version.Equals(matchVersion.OriginalString, StringComparison.OrdinalIgnoreCase)).Value; + if (dependencyInfo == null) { return null; diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTools.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTools.cs index 8808fb36f..c071fd671 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTools.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTools.cs @@ -15,8 +15,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests [InlineData("Microsoft.EntityFrameworkCore.Tools", "1.0.0-preview2-final", "Microsoft.EntityFrameworkCore.Tools", ConstantPackageVersions.AspNetToolsVersion)] [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.0.0-preview2-final", "Microsoft.VisualStudio.Web.CodeGeneration.Design", ConstantPackageVersions.AspNetToolsVersion)] [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.0.0-*", "Microsoft.VisualStudio.Web.CodeGeneration.Design", ConstantPackageVersions.AspNetToolsVersion)] + [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.0.1", "Microsoft.VisualStudio.Web.CodeGeneration.Design", ConstantPackageVersions.AspNetToolsVersion)] [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.0.0-preview3-final", "Microsoft.VisualStudio.Web.CodeGeneration.Design", ConstantPackageVersions.AspNetToolsVersion)] - [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.1.0-preview4-final", "Microsoft.VisualStudio.Web.CodeGeneration.Design", "1.1.0-msbuild3-final")] + [InlineData("Microsoft.VisualStudio.Web.CodeGenerators.Mvc", "1.1.0-preview4-final", "Microsoft.VisualStudio.Web.CodeGeneration.Design", ConstantPackageVersions.AspNet110ToolsVersion)] public void ItMigratesProjectDependenciesToANewNameAndVersion( string sourceToolName, string sourceVersion, @@ -87,5 +88,209 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var packageRef = mockProj.Items.Where(i => i.ItemType == "DotNetCliToolReference").Should().BeEmpty(); } + + [Theory] + [InlineData("Microsoft.NETCore.App", "1.0.0", "Microsoft.NETCore.App", "1.0.3")] + [InlineData("Microsoft.NETCore.App", "1.0.3-preview2", "Microsoft.NETCore.App", "1.0.3")] + [InlineData("NETStandard.Library", "1.4.0", "NETStandard.Library", "1.6.0")] + public void ItUpliftsMetaPackages( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + ValidatePackageMigration(sourcePackageName, sourceVersion, targetPackageName, targetVersion); + } + + [Theory] + [InlineData("Microsoft.AspNetCore.Antiforgery", "1.0.0", "Microsoft.AspNetCore.Antiforgery", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc", "1.0.0", "Microsoft.AspNetCore.Mvc", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Abstractions", "1.0.0", "Microsoft.AspNetCore.Mvc.Abstractions", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.ApiExplorer", "1.0.0", "Microsoft.AspNetCore.Mvc.ApiExplorer", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Core", "1.0.0", "Microsoft.AspNetCore.Mvc.Core", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Cors", "1.0.0", "Microsoft.AspNetCore.Mvc.Cors", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.DataAnnotations", "1.0.0", "Microsoft.AspNetCore.Mvc.DataAnnotations", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Formatters.Json", "1.0.0", "Microsoft.AspNetCore.Mvc.Formatters.Json", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Formatters.Xml", "1.0.0", "Microsoft.AspNetCore.Mvc.Formatters.Xml", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Localization", "1.0.0", "Microsoft.AspNetCore.Mvc.Localization", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Razor", "1.0.0", "Microsoft.AspNetCore.Mvc.Razor", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.Razor.Host", "1.0.0", "Microsoft.AspNetCore.Mvc.Razor.Host", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.TagHelpers", "1.0.0", "Microsoft.AspNetCore.Mvc.TagHelpers", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.ViewFeatures", "1.0.0", "Microsoft.AspNetCore.Mvc.ViewFeatures", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Mvc.WebApiCompatShim", "1.0.0", "Microsoft.AspNetCore.Mvc.WebApiCompatShim", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Routing", "1.0.0", "Microsoft.AspNetCore.Routing", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Routing.Abstractions", "1.0.0", "Microsoft.AspNetCore.Routing.Abstractions", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Server.Kestrel", "1.0.0", "Microsoft.AspNetCore.Server.Kestrel", ConstantPackageVersions.AspNet101PackagesVersion)] + [InlineData("Microsoft.AspNetCore.Server.Kestrel.Https", "1.0.0", "Microsoft.AspNetCore.Server.Kestrel.Https", ConstantPackageVersions.AspNet101PackagesVersion)] + public void ItUpliftsAspNetCorePackages( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + ValidatePackageMigration(sourcePackageName, sourceVersion, targetPackageName, targetVersion); + } + + [Theory] + [InlineData("Microsoft.EntityFrameworkCore", "1.0.0", "Microsoft.EntityFrameworkCore", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.InMemory", "1.0.0", "Microsoft.EntityFrameworkCore.InMemory", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Relational", "1.0.0", "Microsoft.EntityFrameworkCore.Relational", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Relational.Design", "1.0.0", "Microsoft.EntityFrameworkCore.Relational.Design", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Relational.Design.Specification.Tests", "1.0.0", "Microsoft.EntityFrameworkCore.Relational.Design.Specification.Tests", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Relational.Specification.Tests", "1.0.0", "Microsoft.EntityFrameworkCore.Relational.Specification.Tests", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Specification.Tests", "1.0.0", "Microsoft.EntityFrameworkCore.Specification.Tests", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Sqlite", "1.0.0", "Microsoft.EntityFrameworkCore.Sqlite", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.Sqlite.Design", "1.0.0", "Microsoft.EntityFrameworkCore.Sqlite.Design", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.SqlServer", "1.0.0", "Microsoft.EntityFrameworkCore.SqlServer", ConstantPackageVersions.EntityFramework101PackagesVersion)] + [InlineData("Microsoft.EntityFrameworkCore.SqlServer.Design", "1.0.0", "Microsoft.EntityFrameworkCore.SqlServer.Design", ConstantPackageVersions.EntityFramework101PackagesVersion)] + public void ItUpliftsEntityFrameworkCorePackages( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + ValidatePackageMigration(sourcePackageName, sourceVersion, targetPackageName, targetVersion); + } + + [Theory] + [InlineData("Microsoft.NETCore.JIT", "1.0.0", "Microsoft.NETCore.JIT", "1.0.5")] + [InlineData("Microsoft.NETCore.Runtime.CoreCLR", "1.0.0", "Microsoft.NETCore.Runtime.CoreCLR", "1.0.5")] + [InlineData("Microsoft.NETCore.DotNetHost", "1.0.0", "Microsoft.NETCore.DotNetHost", "1.0.1")] + [InlineData("Microsoft.NETCore.DotNetHostPolicy", "1.0.0", "Microsoft.NETCore.DotNetHostPolicy", "1.0.3")] + [InlineData("Microsoft.NETCore.DotNetHostResolver", "1.0.0", "Microsoft.NETCore.DotNetHostResolver", "1.0.1")] + [InlineData("Microsoft.NETCore.Platforms", "1.0.0", "Microsoft.NETCore.Platforms", "1.0.2")] + [InlineData("Microsoft.NETCore.Targets", "1.0.0", "Microsoft.NETCore.Targets", "1.0.1")] + [InlineData("Microsoft.NETCore.Windows.ApiSets", "1.0.0", "Microsoft.NETCore.Windows.ApiSets", "1.0.1")] + public void ItUpliftsCoreCLRPackages( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + ValidatePackageMigration(sourcePackageName, sourceVersion, targetPackageName, targetVersion); + } + + [Theory] + [InlineData("System.Net.Http", "1.0.0", "System.Net.Http", "4.1.1")] + [InlineData("System.AppContext", "1.0.0", "System.AppContext", "4.1.0")] + [InlineData("System.Buffers", "1.0.0", "System.Buffers", "4.0.0")] + [InlineData("System.Collections", "1.0.0", "System.Collections", "4.0.11")] + [InlineData("System.Collections.Concurrent", "1.0.0", "System.Collections.Concurrent", "4.0.12")] + [InlineData("System.Collections.Immutable", "1.0.0", "System.Collections.Immutable", "1.2.0")] + [InlineData("System.ComponentModel", "1.0.0", "System.ComponentModel", "4.0.1")] + [InlineData("System.ComponentModel.Annotations", "1.0.0", "System.ComponentModel.Annotations", "4.0.1")] + [InlineData("System.Console", "1.0.0", "System.Console", "4.0.0")] + [InlineData("System.Diagnostics.Debug", "1.0.0", "System.Diagnostics.Debug", "4.0.11")] + [InlineData("System.Diagnostics.DiagnosticSource", "1.0.0", "System.Diagnostics.DiagnosticSource", "4.0.0")] + [InlineData("System.Diagnostics.FileVersionInfo", "1.0.0", "System.Diagnostics.FileVersionInfo", "4.0.0")] + [InlineData("System.Diagnostics.Process", "1.0.0", "System.Diagnostics.Process", "4.1.0")] + [InlineData("System.Diagnostics.StackTrace", "1.0.0", "System.Diagnostics.StackTrace", "4.0.1")] + [InlineData("System.Diagnostics.Tools", "1.0.0", "System.Diagnostics.Tools", "4.0.1")] + [InlineData("System.Diagnostics.Tracing", "1.0.0", "System.Diagnostics.Tracing", "4.1.0")] + [InlineData("System.Dynamic.Runtime", "1.0.0", "System.Dynamic.Runtime", "4.0.11")] + [InlineData("System.Globalization", "1.0.0", "System.Globalization", "4.0.11")] + [InlineData("System.Globalization.Calendars", "1.0.0", "System.Globalization.Calendars", "4.0.1")] + [InlineData("System.Globalization.Extensions", "1.0.0", "System.Globalization.Extensions", "4.0.1")] + [InlineData("System.IO", "1.0.0", "System.IO", "4.1.0")] + [InlineData("System.IO.Compression", "1.0.0", "System.IO.Compression", "4.1.0")] + [InlineData("System.IO.Compression.ZipFile", "1.0.0", "System.IO.Compression.ZipFile", "4.0.1")] + [InlineData("System.IO.MemoryMappedFiles", "1.0.0", "System.IO.MemoryMappedFiles", "4.0.0")] + [InlineData("System.IO.UnmanagedMemoryStream", "1.0.0", "System.IO.UnmanagedMemoryStream", "4.0.1")] + [InlineData("System.Linq", "1.0.0", "System.Linq", "4.1.0")] + [InlineData("System.Linq.Expressions", "1.0.0", "System.Linq.Expressions", "4.1.0")] + [InlineData("System.Linq.Parallel", "1.0.0", "System.Linq.Parallel", "4.0.1")] + [InlineData("System.Linq.Queryable", "1.0.0", "System.Linq.Queryable", "4.0.1")] + [InlineData("System.Net.NameResolution", "1.0.0", "System.Net.NameResolution", "4.0.0")] + [InlineData("System.Net.Primitives", "1.0.0", "System.Net.Primitives", "4.0.11")] + [InlineData("System.Net.Requests", "1.0.0", "System.Net.Requests", "4.0.11")] + [InlineData("System.Net.Security", "1.0.0", "System.Net.Security", "4.0.0")] + [InlineData("System.Net.Sockets", "1.0.0", "System.Net.Sockets", "4.1.0")] + [InlineData("System.Net.WebHeaderCollection", "1.0.0", "System.Net.WebHeaderCollection", "4.0.1")] + [InlineData("System.Numerics.Vectors", "1.0.0", "System.Numerics.Vectors", "4.1.1")] + [InlineData("System.ObjectModel", "1.0.0", "System.ObjectModel", "4.0.12")] + [InlineData("System.Reflection", "1.0.0", "System.Reflection", "4.1.0")] + [InlineData("System.Reflection.DispatchProxy", "1.0.0", "System.Reflection.DispatchProxy", "4.0.1")] + [InlineData("System.Reflection.Emit", "1.0.0", "System.Reflection.Emit", "4.0.1")] + [InlineData("System.Reflection.Emit.ILGeneration", "1.0.0", "System.Reflection.Emit.ILGeneration", "4.0.1")] + [InlineData("System.Reflection.Emit.Lightweight", "1.0.0", "System.Reflection.Emit.Lightweight", "4.0.1")] + [InlineData("System.Reflection.Extensions", "1.0.0", "System.Reflection.Extensions", "4.0.1")] + [InlineData("System.Reflection.Metadata", "1.0.0", "System.Reflection.Metadata", "1.3.0")] + [InlineData("System.Reflection.Primitives", "1.0.0", "System.Reflection.Primitives", "4.0.1")] + [InlineData("System.Reflection.TypeExtensions", "1.0.0", "System.Reflection.TypeExtensions", "4.1.0")] + [InlineData("System.Resources.Reader", "1.0.0", "System.Resources.Reader", "4.0.0")] + [InlineData("System.Resources.ResourceManager", "1.0.0", "System.Resources.ResourceManager", "4.0.1")] + [InlineData("System.Runtime", "1.0.0", "System.Runtime", "4.1.0")] + [InlineData("System.Runtime.Extensions", "1.0.0", "System.Runtime.Extensions", "4.1.0")] + [InlineData("System.Runtime.Handles", "1.0.0", "System.Runtime.Handles", "4.0.1")] + [InlineData("System.Runtime.InteropServices", "1.0.0", "System.Runtime.InteropServices", "4.1.0")] + [InlineData("System.Runtime.InteropServices.RuntimeInformation", "1.0.0", "System.Runtime.InteropServices.RuntimeInformation", "4.0.0")] + [InlineData("System.Runtime.Loader", "1.0.0", "System.Runtime.Loader", "4.0.0")] + [InlineData("System.Runtime.Numerics", "1.0.0", "System.Runtime.Numerics", "4.0.1")] + [InlineData("System.Security.Claims", "1.0.0", "System.Security.Claims", "4.0.1")] + [InlineData("System.Security.Cryptography.Algorithms", "1.0.0", "System.Security.Cryptography.Algorithms", "4.2.0")] + [InlineData("System.Security.Cryptography.Cng", "1.0.0", "System.Security.Cryptography.Cng", "4.2.0")] + [InlineData("System.Security.Cryptography.Csp", "1.0.0", "System.Security.Cryptography.Csp", "4.0.0")] + [InlineData("System.Security.Cryptography.Encoding", "1.0.0", "System.Security.Cryptography.Encoding", "4.0.0")] + [InlineData("System.Security.Cryptography.OpenSsl", "1.0.0", "System.Security.Cryptography.OpenSsl", "4.0.0")] + [InlineData("System.Security.Cryptography.Primitives", "1.0.0", "System.Security.Cryptography.Primitives", "4.0.0")] + [InlineData("System.Security.Cryptography.X509Certificates", "1.0.0", "System.Security.Cryptography.X509Certificates", "4.1.0")] + [InlineData("System.Security.Principal", "1.0.0", "System.Security.Principal", "4.0.1")] + [InlineData("System.Security.Principal.Windows", "1.0.0", "System.Security.Principal.Windows", "4.0.0")] + [InlineData("System.Text.Encoding", "1.0.0", "System.Text.Encoding", "4.0.11")] + [InlineData("System.Text.Encoding.CodePages", "1.0.0", "System.Text.Encoding.CodePages", "4.0.1")] + [InlineData("System.Text.Encoding.Extensions", "1.0.0", "System.Text.Encoding.Extensions", "4.0.11")] + [InlineData("System.Text.RegularExpressions", "1.0.0", "System.Text.RegularExpressions", "4.1.0")] + [InlineData("System.Threading", "1.0.0", "System.Threading", "4.0.11")] + [InlineData("System.Threading.Overlapped", "1.0.0", "System.Threading.Overlapped", "4.0.1")] + [InlineData("System.Threading.Tasks", "1.0.0", "System.Threading.Tasks", "4.0.11")] + [InlineData("System.Threading.Tasks.Dataflow", "1.0.0", "System.Threading.Tasks.Dataflow", "4.6.0")] + [InlineData("System.Threading.Tasks.Extensions", "1.0.0", "System.Threading.Tasks.Extensions", "4.0.0")] + [InlineData("System.Threading.Tasks.Parallel", "1.0.0", "System.Threading.Tasks.Parallel", "4.0.1")] + [InlineData("System.Threading.Thread", "1.0.0", "System.Threading.Thread", "4.0.0")] + [InlineData("System.Threading.ThreadPool", "1.0.0", "System.Threading.ThreadPool", "4.0.10")] + [InlineData("System.Threading.Timer", "1.0.0", "System.Threading.Timer", "4.0.1")] + [InlineData("System.Xml.ReaderWriter", "1.0.0", "System.Xml.ReaderWriter", "4.0.11")] + [InlineData("System.Xml.XDocument", "1.0.0", "System.Xml.XDocument", "4.0.11")] + [InlineData("System.Xml.XmlDocument", "1.0.0", "System.Xml.XmlDocument", "4.0.1")] + [InlineData("System.Xml.XPath", "1.0.0", "System.Xml.XPath", "4.0.1")] + [InlineData("System.Xml.XPath.XmlDocument", "1.0.0", "System.Xml.XPath.XmlDocument", "4.0.1")] + [InlineData("runtime.native.System", "1.0.0", "runtime.native.System", "4.0.0")] + [InlineData("runtime.native.System.IO.Compression", "1.0.0", "runtime.native.System.IO.Compression", "4.1.0")] + [InlineData("runtime.native.System.Net.Http", "1.0.0", "runtime.native.System.Net.Http", "4.0.1")] + [InlineData("runtime.native.System.Net.Security", "1.0.0", "runtime.native.System.Net.Security", "4.0.1")] + [InlineData("runtime.native.System.Security.Cryptography", "1.0.0", "runtime.native.System.Security.Cryptography", "4.0.0")] + [InlineData("Libuv", "1.0.0", "Libuv", "1.9.1")] + [InlineData("Microsoft.CodeAnalysis.Analyzers", "1.0.0", "Microsoft.CodeAnalysis.Analyzers", "1.1.0")] + [InlineData("Microsoft.CodeAnalysis.Common", "1.0.0", "Microsoft.CodeAnalysis.Common", "1.3.0")] + [InlineData("Microsoft.CodeAnalysis.CSharp", "1.0.0", "Microsoft.CodeAnalysis.CSharp", "1.3.0")] + [InlineData("Microsoft.CodeAnalysis.VisualBasic", "1.0.0", "Microsoft.CodeAnalysis.VisualBasic", "1.3.0")] + [InlineData("Microsoft.CSharp", "1.0.0", "Microsoft.CSharp", "4.0.1")] + [InlineData("Microsoft.VisualBasic", "1.0.0", "Microsoft.VisualBasic", "10.0.1")] + [InlineData("Microsoft.Win32.Primitives", "1.0.0", "Microsoft.Win32.Primitives", "4.0.1")] + [InlineData("Microsoft.Win32.Registry", "1.0.0", "Microsoft.Win32.Registry", "4.0.0")] + [InlineData("System.IO.FileSystem", "1.0.0", "System.IO.FileSystem", "4.0.1")] + [InlineData("System.IO.FileSystem.Primitives", "1.0.0", "System.IO.FileSystem.Primitives", "4.0.1")] + [InlineData("System.IO.FileSystem.Watcher", "1.0.0", "System.IO.FileSystem.Watcher", "4.0.0")] + public void ItUpliftsMicrosoftNETCoreAppPackages( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + ValidatePackageMigration(sourcePackageName, sourceVersion, targetPackageName, targetVersion); + } + + private void ValidatePackageMigration( + string sourcePackageName, + string sourceVersion, + string targetPackageName, + string targetVersion) + { + var mockProj = RunPackageDependenciesRuleOnPj("{ \"dependencies\": { \"" + sourcePackageName + "\" : { \"version\": \"" + sourceVersion + "\", \"type\": \"build\" } } }"); + + var packageRef = mockProj.Items.First(i => i.Include == targetPackageName && i.ItemType == "PackageReference"); + + packageRef.GetMetadataWithName("Version").Value.Should().Be(targetVersion); + } } } \ No newline at end of file