diff --git a/.gitignore b/.gitignore index 84af90e2b..da1878650 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,4 @@ nCrunchTemp* build/ deploy/ dist/ -tools/ \ No newline at end of file +buildtools/ \ No newline at end of file diff --git a/Azure.Functions.Cli.sln b/Azure.Functions.Cli.sln index eeead6f23..3f5fb08ed 100644 --- a/Azure.Functions.Cli.sln +++ b/Azure.Functions.Cli.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 -VisualStudioVersion = 15.0.26730.3 +VisualStudioVersion = 15.0.26730.15 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{CF86C17E-5C8A-4810-87BF-10548537A771}" ProjectSection(SolutionItems) = preProject @@ -17,6 +17,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Functions.Cli", "src\ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Functions.Cli.Tests", "test\Azure.Functions.Cli.Tests\Azure.Functions.Cli.Tests.csproj", "{C57EBA1F-1C48-451A-80D6-F6AA7C881CF8}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{3FD809C2-9986-4659-A82A-CE7B165530E6}" +EndProject +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "redirectCompare", "tools\redirectCompare\redirectCompare.fsproj", "{DFE7F321-00D7-47E0-8653-6329CDE3D78C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -31,6 +35,10 @@ Global {C57EBA1F-1C48-451A-80D6-F6AA7C881CF8}.Debug|Any CPU.Build.0 = Debug|Any CPU {C57EBA1F-1C48-451A-80D6-F6AA7C881CF8}.Release|Any CPU.ActiveCfg = Release|Any CPU {C57EBA1F-1C48-451A-80D6-F6AA7C881CF8}.Release|Any CPU.Build.0 = Release|Any CPU + {DFE7F321-00D7-47E0-8653-6329CDE3D78C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DFE7F321-00D7-47E0-8653-6329CDE3D78C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DFE7F321-00D7-47E0-8653-6329CDE3D78C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DFE7F321-00D7-47E0-8653-6329CDE3D78C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -38,5 +46,9 @@ Global GlobalSection(NestedProjects) = preSolution {6608738C-3BDB-47F5-BC62-66A8BDF9D884} = {5F51C958-39C0-4E0C-9165-71D0BCE647BC} {C57EBA1F-1C48-451A-80D6-F6AA7C881CF8} = {6EE1D011-2334-44F2-9D41-608B969DAE6D} + {DFE7F321-00D7-47E0-8653-6329CDE3D78C} = {3FD809C2-9986-4659-A82A-CE7B165530E6} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {15E08A4A-EF7C-4E42-BB11-DA397493F547} EndGlobalSection EndGlobal diff --git a/build.fsx b/build.fsx index d97cf8f63..79548c4d4 100644 --- a/build.fsx +++ b/build.fsx @@ -39,7 +39,7 @@ let testDir = "./dist/test/" let downloadDir = "./dist/download/" let deployDir = "./deploy/" let packagesDir = "./packages/" -let toolsDir = "./tools/" +let toolsDir = "./buildtools/" let sigCheckExe = toolsDir @@ "sigcheck.exe" let nugetUri = Uri ("https://dist.nuget.org/win-x86-commandline/v3.5.0/nuget.exe") let version = if isNull appVeyorBuildVersion then "1.0.0.0" else appVeyorBuildVersion diff --git a/src/Azure.Functions.Cli/App.config b/src/Azure.Functions.Cli/App.config index 0478d9f52..469359b33 100644 --- a/src/Azure.Functions.Cli/App.config +++ b/src/Azure.Functions.Cli/App.config @@ -39,7 +39,7 @@ - + @@ -199,6 +199,10 @@ + + + + diff --git a/src/Azure.Functions.Cli/Azure.Functions.Cli.csproj b/src/Azure.Functions.Cli/Azure.Functions.Cli.csproj index 421511b83..e04b71bed 100644 --- a/src/Azure.Functions.Cli/Azure.Functions.Cli.csproj +++ b/src/Azure.Functions.Cli/Azure.Functions.Cli.csproj @@ -76,8 +76,8 @@ ..\..\packages\FSharp.Compiler.Service.9.0.1\lib\net45\FSharp.Compiler.Service.MSBuild.v12.dll - - ..\..\packages\FSharp.Core.4.0.0.1\lib\net40\FSharp.Core.dll + + ..\..\packages\FSharp.Core.4.2.3\lib\net45\FSharp.Core.dll True @@ -199,7 +199,7 @@ ..\..\packages\Microsoft.Azure.ApiHub.Sdk.0.7.2-alpha\lib\net45\Microsoft.Azure.ApiHub.Sdk.dll - ..\..\packages\Microsoft.Azure.AppService.Proxy.Client.Contract.0.3.0.6\lib\net461\Microsoft.Azure.AppService.Proxy.Client.Contract.dll + ..\..\packages\Microsoft.Azure.AppService.Proxy.Client.Contract.0.3.1.1\lib\net461\Microsoft.Azure.AppService.Proxy.Client.Contract.dll ..\..\packages\Microsoft.Azure.DocumentDB.ChangeFeedProcessor.1.0.0\lib\net45\Microsoft.Azure.Documents.ChangeFeedProcessor.dll @@ -216,58 +216,58 @@ True - ..\..\packages\Microsoft.Azure.WebJobs.Core.2.1.0-beta1-11013\lib\net45\Microsoft.Azure.WebJobs.dll + ..\..\packages\Microsoft.Azure.WebJobs.Core.2.1.0-beta1-11025\lib\net45\Microsoft.Azure.WebJobs.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.2.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.2.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.ApiHub.1.0.0-beta4-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.ApiHub.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.ApiHub.1.0.0-beta4-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.ApiHub.dll ..\..\packages\Microsoft.Azure.WebJobs.Extensions.BotFramework.1.0.15-beta\lib\net46\Microsoft.Azure.WebJobs.Extensions.BotFramework.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.DocumentDB.1.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.DocumentDB.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.DocumentDB.1.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.DocumentDB.dll ..\..\packages\Microsoft.Azure.WebJobs.Extensions.EventGrid.1.0.0-beta1-10007\lib\net46\Microsoft.Azure.WebJobs.Extensions.EventGrid.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.Http.1.0.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.Http.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.Http.1.0.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.Http.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.MobileApps.1.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.MobileApps.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.MobileApps.1.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.MobileApps.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.NotificationHubs.1.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.NotificationHubs.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.NotificationHubs.1.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.NotificationHubs.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.SendGrid.2.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.SendGrid.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.SendGrid.2.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.SendGrid.dll - ..\..\packages\Microsoft.Azure.WebJobs.Extensions.Twilio.1.1.0-beta1-10524\lib\net45\Microsoft.Azure.WebJobs.Extensions.Twilio.dll + ..\..\packages\Microsoft.Azure.WebJobs.Extensions.Twilio.1.1.0-beta1-10540\lib\net45\Microsoft.Azure.WebJobs.Extensions.Twilio.dll - ..\..\packages\Microsoft.Azure.WebJobs.2.1.0-beta1-11013\lib\net45\Microsoft.Azure.WebJobs.Host.dll + ..\..\packages\Microsoft.Azure.WebJobs.2.1.0-beta1-11025\lib\net45\Microsoft.Azure.WebJobs.Host.dll - ..\..\packages\Microsoft.Azure.WebJobs.Logging.2.1.0-beta1-11013\lib\net45\Microsoft.Azure.WebJobs.Logging.dll + ..\..\packages\Microsoft.Azure.WebJobs.Logging.2.1.0-beta1-11025\lib\net45\Microsoft.Azure.WebJobs.Logging.dll - ..\..\packages\Microsoft.Azure.WebJobs.Logging.ApplicationInsights.2.1.0-beta1-11013\lib\net45\Microsoft.Azure.WebJobs.Logging.ApplicationInsights.dll + ..\..\packages\Microsoft.Azure.WebJobs.Logging.ApplicationInsights.2.1.0-beta1-11025\lib\net45\Microsoft.Azure.WebJobs.Logging.ApplicationInsights.dll - ..\..\packages\Microsoft.Azure.WebJobs.Script.1.0.0-beta3-11184\lib\net451\Microsoft.Azure.WebJobs.Script.dll + ..\..\packages\Microsoft.Azure.WebJobs.Script.1.0.0-beta3-11232\lib\net451\Microsoft.Azure.WebJobs.Script.dll ..\..\packages\Microsoft.Azure.WebJobs.Script.Extensibility.1.0.0-beta3-10955\lib\net45\Microsoft.Azure.WebJobs.Script.Extensibility.dll - ..\..\packages\Microsoft.Azure.WebJobs.Script.WebHost.1.0.0-beta3-11184\lib\net451\Microsoft.Azure.WebJobs.Script.WebHost.dll + ..\..\packages\Microsoft.Azure.WebJobs.Script.WebHost.1.0.0-beta3-11232\lib\net451\Microsoft.Azure.WebJobs.Script.WebHost.dll - ..\..\packages\Microsoft.Azure.WebJobs.ServiceBus.2.1.0-beta1-11013\lib\net45\Microsoft.Azure.WebJobs.ServiceBus.dll + ..\..\packages\Microsoft.Azure.WebJobs.ServiceBus.2.1.0-beta1-11025\lib\net45\Microsoft.Azure.WebJobs.ServiceBus.dll ..\..\packages\Microsoft.Azure.WebSites.DataProtection.0.1.81-alpha\lib\net46\Microsoft.Azure.WebSites.DataProtection.dll @@ -276,17 +276,17 @@ ..\..\packages\Microsoft.Bot.Connector.DirectLine.3.0.0-beta\lib\net45\Microsoft.Bot.Connector.DirectLine.dll True - - ..\..\packages\Microsoft.CodeAnalysis.Common.2.0.0\lib\netstandard1.3\Microsoft.CodeAnalysis.dll + + ..\..\packages\Microsoft.CodeAnalysis.Common.2.3.2\lib\netstandard1.3\Microsoft.CodeAnalysis.dll - - ..\..\packages\Microsoft.CodeAnalysis.CSharp.2.0.0\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.dll + + ..\..\packages\Microsoft.CodeAnalysis.CSharp.2.3.2\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.dll - - ..\..\packages\Microsoft.CodeAnalysis.CSharp.Scripting.2.0.0\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.Scripting.dll + + ..\..\packages\Microsoft.CodeAnalysis.CSharp.Scripting.2.3.2\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.Scripting.dll - - ..\..\packages\Microsoft.CodeAnalysis.Scripting.Common.2.0.0\lib\netstandard1.3\Microsoft.CodeAnalysis.Scripting.dll + + ..\..\packages\Microsoft.CodeAnalysis.Scripting.Common.2.3.2\lib\netstandard1.3\Microsoft.CodeAnalysis.Scripting.dll ..\..\packages\Microsoft.Data.Edm.5.8.1\lib\net40\Microsoft.Data.Edm.dll @@ -447,8 +447,8 @@ ..\..\packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll - - ..\..\packages\System.Net.Http.4.3.0\lib\net46\System.Net.Http.dll + + ..\..\packages\System.Net.Http.4.3.2\lib\net46\System.Net.Http.dll ..\..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll @@ -756,8 +756,10 @@ + + - + @@ -168,6 +168,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/test/Azure.Functions.Cli.Tests/packages.config b/test/Azure.Functions.Cli.Tests/packages.config index fcd8d041a..56da11bac 100644 --- a/test/Azure.Functions.Cli.Tests/packages.config +++ b/test/Azure.Functions.Cli.Tests/packages.config @@ -9,7 +9,7 @@ - + @@ -25,31 +25,31 @@ - - - - + + + + - + - - - - - - - + + + + + + + - - + + - - - - + + + + @@ -67,7 +67,7 @@ - + @@ -102,11 +102,16 @@ - + - + + + + + + diff --git a/tools/redirectCompare/App.config b/tools/redirectCompare/App.config new file mode 100644 index 000000000..731f6de6c --- /dev/null +++ b/tools/redirectCompare/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/tools/redirectCompare/AssemblyInfo.fs b/tools/redirectCompare/AssemblyInfo.fs new file mode 100644 index 000000000..ab195f250 --- /dev/null +++ b/tools/redirectCompare/AssemblyInfo.fs @@ -0,0 +1,41 @@ +namespace redirectCompare.AssemblyInfo + +open System.Reflection +open System.Runtime.CompilerServices +open System.Runtime.InteropServices + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[] +[] +[] +[] +[] +[] +[] +[] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [] +[] +[] + +do + () \ No newline at end of file diff --git a/tools/redirectCompare/Program.fs b/tools/redirectCompare/Program.fs new file mode 100644 index 000000000..92b8451e3 --- /dev/null +++ b/tools/redirectCompare/Program.fs @@ -0,0 +1,35 @@ +// Learn more about F# at http://fsharp.org +// See the 'F# Tutorial' project for more help. + +open System.IO +open FSharp.Data +open System.Net + +type Config = XmlProvider<""" + + + + + + + + + + + + + + +"""> + +let source = new WebClient () |> fun x -> x.DownloadString("https://raw.githubusercontent.com/Azure/azure-webjobs-sdk-script/dev/src/WebJobs.Script.WebHost/Web.config") |> Config.Parse +let dest = "..\\..\\..\\..\\src\\Azure.Functions.Cli\\App.config" |> File.ReadAllText |> Config.Parse + +for assembly in source.Runtime.AssemblyBinding.DependentAssemblies do + let destElement = + dest.Runtime.AssemblyBinding.DependentAssemblies + |> Array.tryFind (fun x -> x.AssemblyIdentity.Name = assembly.AssemblyIdentity.Name) + if destElement.IsSome && (destElement.Value.BindingRedirect.NewVersion <> assembly.BindingRedirect.NewVersion || destElement.Value.BindingRedirect.OldVersion <> assembly.BindingRedirect.OldVersion) then + printfn "Different: %s" destElement.Value.AssemblyIdentity.Name + else if destElement.IsNone then + printfn "Not in dest: %s" assembly.AssemblyIdentity.Name \ No newline at end of file diff --git a/tools/redirectCompare/packages.config b/tools/redirectCompare/packages.config new file mode 100644 index 000000000..3345b3a83 --- /dev/null +++ b/tools/redirectCompare/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/tools/redirectCompare/redirectCompare.fsproj b/tools/redirectCompare/redirectCompare.fsproj new file mode 100644 index 000000000..ab8ec7cee --- /dev/null +++ b/tools/redirectCompare/redirectCompare.fsproj @@ -0,0 +1,90 @@ + + + + + Debug + AnyCPU + 2.0 + dfe7f321-00d7-47e0-8653-6329cde3d78c + Exe + redirectCompare + redirectCompare + v4.6.1 + true + 4.4.1.0 + redirectCompare + + + true + full + false + false + bin\$(Configuration)\ + DEBUG;TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + + + pdbonly + true + true + bin\$(Configuration)\ + TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + 11 + + + + + $(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets + + + + + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets + + + + + + + + + + + + + ..\..\packages\FSharp.Data.2.3.3\lib\net40\FSharp.Data.dll + + + + FSharp.Core + FSharp.Core.dll + $(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\FSharp\.NETFramework\v4.0\$(TargetFSharpCoreVersion)\FSharp.Core.dll + + + + + + ..\..\packages\System.ValueTuple.4.4.0\lib\net461\System.ValueTuple.dll + True + + + + + \ No newline at end of file