提交 db66a823 编写于 作者: C CyrusNajmabadi

Merge remote-tracking branch 'upstream/master' into contextBasedIndex

......@@ -38,6 +38,7 @@ UnitTestResults.html
*.nuget.props
*.nuget.targets
project.lock.json
msbuild.binlog
*.project.lock.json
*_i.c
......@@ -88,6 +89,7 @@ ipch/
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings
# TeamCity is a build add-in
_TeamCity*
......@@ -179,3 +181,6 @@ $RECYCLE.BIN/
# Visual Studio Code
.vscode/
# JetBrains Rider
.idea/
......@@ -4,8 +4,6 @@
<Import Project="$(MSBuildThisFileDirectory)build\Targets\Versions.props" />
<!-- At the moment Jenkins runs on a machine without any build of Visual Studio 2015. Hence we must
use a 2013 compatible solution. -->
<PropertyGroup>
<RoslynSolution Condition="'$(RoslynSolution)' == ''">$(MSBuildThisFileDirectory)Roslyn.sln</RoslynSolution>
<SamplesSolution>$(MSBuildThisFileDirectory)src\Samples\Samples.sln</SamplesSolution>
......@@ -17,7 +15,7 @@
<RunTestArgs Condition="'$(NoTrait)' != ''">$(RunTestArgs) -notrait:$(NoTrait)</RunTestArgs>
<IncludePattern Condition="'$(IncludePattern)' == '' AND '$(TestVsi)' != 'true'">*.UnitTests.dll</IncludePattern>
<IncludePattern Condition="'$(IncludePattern)' == '' AND '$(TestVsi)' == 'true'">*.IntegrationTests.dll</IncludePattern>
<OutputDirectory>Binaries\$(Configuration)</OutputDirectory>
<OutputDirectory>$(MSBuildThisFileDirectory)Binaries\$(Configuration)\</OutputDirectory>
<RunTestArgs>$(RunTestArgs) -log:&quot;$(OutputDirectory)\runtests.log&quot;</RunTestArgs>
<CoreClrTestDirectory>$(OutputDirectory)\CoreClrTest</CoreClrTestDirectory>
<MSBuildCommonProperties>
......@@ -63,7 +61,11 @@
Targets="Rebuild" />
</Target>
<Target Name="Test">
<Target
Name="Test"
DependsOnTargets="DeployRoslynVsix"
Condition="'$(TestDesktop)' == 'true' or '$(TestCoreClr)' == 'true' or '$(TestVsi)' == 'true'">
<ItemGroup>
<AssembliesToCopyLocal Include="$(NuGetPackageRoot)\xunit\$(xunitVersion)\*.dll;
$(NuGetPackageRoot)\xunit.assert\$(xunitassertVersion)\lib\portable-net45+netcore45+wp8+wpa81\*.dll" />
......@@ -77,15 +79,21 @@
<MakeDir Directories="$(CoreClrTestDirectory)\xUnitResults" />
<!-- Publish binaries for CoreClr test -->
<MSBuild BuildInParallel="true"
Projects="src\Test\DeployCoreClrTestRuntime\DeployCoreClrTestRuntime.csproj"
Properties="RuntimeIdentifier=win7-x64;PublishDir=$(CoreClrTestDirectory)"
Targets="Publish" />
<ItemGroup>
<!-- MakeConst unit tests tracked by https://github.com/dotnet/roslyn/issues/5918 -->
<TestAssemblies Condition="'$(Test64)' != 'true'"
Include="$(OutputDirectory)\UnitTests*\**\$(IncludePattern);" />
Include="$(OutputDirectory)UnitTests*\**\$(IncludePattern);" />
<TestAssemblies Condition="'$(Test64)' == 'true'"
Include="$(OutputDirectory)\UnitTests*\**\$(IncludePattern);"
Exclude="$(OutputDirectory)\UnitTests*\**\Roslyn.Interactive*" />
Include="$(OutputDirectory)UnitTests*\**\$(IncludePattern);"
Exclude="$(OutputDirectory)UnitTests*\**\Roslyn.Interactive*" />
<CoreTestAssemblies Include="$(CoreClrTestDirectory)\$(IncludePattern)" />
</ItemGroup>
......@@ -96,33 +104,31 @@
<RunTestsExe>Binaries\$(Configuration)\Exes\RunTests\RunTests.exe</RunTestsExe>
<RunTestsArgs>$(NuGetPackageRoot)\xunit.runner.console\$(xunitrunnerconsoleVersion)\tools $(RunTestArgs) @(TestAssemblies, ' ')</RunTestsArgs>
<VsixExpInstallerExe>$(NuGetPackageRoot)\roslyntools.microsoft.vsixexpinstaller\$(RoslynToolsMicrosoftVSIXExpInstallerVersion)\tools\VsixExpInstaller.exe</VsixExpInstallerExe>
<VsixExpInstallerArgs>/rootSuffix:RoslynDev /vsInstallDir:"$([System.IO.Path]::GetFullPath('$(MSBuildBinPath)\..\..\..'))"</VsixExpInstallerArgs>
<VsixExpInstallerArgs>-rootSuffix:RoslynDev -vsInstallDir:"$([System.IO.Path]::GetFullPath('$(MSBuildBinPath)\..\..\..'))"</VsixExpInstallerArgs>
</PropertyGroup>
<!-- Run CoreClr tests -->
<Exec Condition="'$(TestVsi)' != 'true' AND '$(SkipCoreClrTests)' != 'true'"
ContinueOnError="ErrorAndContinue"
Command="&quot;$(CoreRunExe)&quot; $(CoreRunArgs)" />
<!-- Manually deploy any VSIX required by our integration tests (https://github.com/dotnet/roslyn/issues/17456) -->
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\CompilerExtension\Roslyn.Compilers.Extension.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioSetup\Roslyn.VisualStudio.Setup.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioSetup.Next\Roslyn.VisualStudio.Setup.Next.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioInteractiveComponents\Roslyn.VisualStudio.InteractiveComponents.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\ExpressionEvaluatorPackage\ExpressionEvaluatorPackage.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioDiagnosticsWindow\Roslyn.VisualStudio.DiagnosticsWindow.vsix" />
<Exec Condition="'$(TestVsi)' == 'true' and '$(SkipDesktopTests)' != 'true'"
Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioIntegrationTestSetup\Microsoft.VisualStudio.IntegrationTest.Setup.vsix" />
<Exec Condition="'$(TestCoreClr)' == 'true'" Command="&quot;$(CoreRunExe)&quot; $(CoreRunArgs)" />
<!-- Run Desktop tests -->
<Exec Condition="'$(SkipDesktopTests)' != 'true'" Command="&quot;$(RunTestsExe)&quot; $(RunTestsArgs)" />
<Exec Condition="'$(TestDesktop)' == 'true' or '$(TestVsi)' == 'true'" Command="&quot;$(RunTestsExe)&quot; $(RunTestsArgs)" />
</Target>
<!-- Manually deploy any VSIX required by our integration tests (https://github.com/dotnet/roslyn/issues/17456) -->
<Target Name="DeployRoslynVsix" Condition="'$(TestVsi)' == 'true'">
<PropertyGroup>
<VsixExpInstallerExe>$(NuGetPackageRoot)\roslyntools.microsoft.vsixexpinstaller\$(RoslynToolsMicrosoftVSIXExpInstallerVersion)\tools\VsixExpInstaller.exe</VsixExpInstallerExe>
<VsixExpInstallerArgs>-rootSuffix:RoslynDev -vsInstallDir:"$([System.IO.Path]::GetFullPath('$(MSBuildBinPath)\..\..\..'))"</VsixExpInstallerArgs>
</PropertyGroup>
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\CompilerExtension\Roslyn.Compilers.Extension.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioSetup\Roslyn.VisualStudio.Setup.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioSetup.Next\Roslyn.VisualStudio.Setup.Next.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioInteractiveComponents\Roslyn.VisualStudio.InteractiveComponents.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\ExpressionEvaluatorPackage\ExpressionEvaluatorPackage.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioDiagnosticsWindow\Roslyn.VisualStudio.DiagnosticsWindow.vsix" />
<Exec Command="&quot;$(VsixExpInstallerExe)&quot; $(VsixExpInstallerArgs) $(OutputDirectory)\Vsix\VisualStudioIntegrationTestSetup\Microsoft.VisualStudio.IntegrationTest.Setup.vsix" />
</Target>
<Target Name="BuildAndTest" DependsOnTargets="Build;Test" />
......
......@@ -2,24 +2,20 @@ SHELL = /usr/bin/env bash
OS_NAME = $(shell uname -s)
BUILD_CONFIGURATION = Debug
BINARIES_PATH = $(shell pwd)/Binaries
SCRIPTS_PATH = $(shell pwd)/build/scripts
SRC_PATH = $(shell pwd)/src
TOOLSET_SRC_PATH = $(shell pwd)/build/MSBuildToolset
TOOLSET_PATH = $(BINARIES_PATH)/toolset
RESTORE_SEMAPHORE_PATH = $(BINARIES_PATH)/restore.semaphore
BOOTSTRAP_PATH = $(BINARIES_PATH)/Bootstrap
BUILD_LOG_PATH =
HOME_DIR = $(shell cd ~ && pwd)
DOTNET_VERSION = 1.0.0-preview3-003223
NUGET_VERSION = 3.5.0-beta2
NUGET_EXE = $(shell pwd)/nuget.exe
DOTNET_VERSION = 1.0.1
DOTNET = $(BINARIES_PATH)/dotnet-cli/dotnet
TARGET_FX = netcoreapp1.1
MSBUILD_ADDITIONALARGS := /v:m /fl /fileloggerparameters:Verbosity=normal /p:Configuration=$(BUILD_CONFIGURATION)
ifeq ($(OS_NAME),Linux)
MSBUILD_ADDITIONALARGS := $(MSBUILD_ADDITIONALARGS) /p:BaseNuGetRuntimeIdentifier=$(shell . /etc/os-release && echo $$ID.$$VERSION_ID)
RUNTIME_ID := $(shell . /etc/os-release && echo $$ID.$$VERSION_ID)-x64
else ifeq ($(OS_NAME),Darwin)
MSBUILD_ADDITIONALARGS := $(MSBUILD_ADDITIONALARGS) /p:BaseNuGetRuntimeIdentifier=osx.10.12
RUNTIME_ID := osx.10.12-x64
endif
ifneq ($(BUILD_LOG_PATH),)
......@@ -27,66 +23,47 @@ ifneq ($(BUILD_LOG_PATH),)
endif
ifeq ($(BOOTSTRAP),true)
MSBUILD_ARGS = $(MSBUILD_ADDITIONALARGS) /p:CscToolPath=$(BOOTSTRAP_PATH) /p:CscToolExe=csc /p:VbcToolPath=$(BOOTSTRAP_PATH) /p:VbcToolExe=vbc
MSBUILD_ARGS = $(MSBUILD_ADDITIONALARGS) /p:CscToolPath=$(BOOTSTRAP_PATH)/csc /p:CscToolExe=csc /p:VbcToolPath=$(BOOTSTRAP_PATH)/vbc /p:VbcToolExe=vbc
else
MSBUILD_ARGS = $(MSBUILD_ADDITIONALARGS) /p:CscToolExe=csc /p:VbcToolExe=vbc
MSBUILD_ARGS = $(MSBUILD_ADDITIONALARGS)
endif
MSBUILD_CMD = $(TOOLSET_PATH)/corerun $(TOOLSET_PATH)/MSBuild.dll $(MSBUILD_ARGS)
BUILD_CMD = dotnet build $(MSBUILD_ARGS)
.PHONY: all bootstrap test restore toolset nuget
.PHONY: all bootstrap test toolset
all: $(RESTORE_SEMAPHORE_PATH)
export HOME=$(HOME_DIR) ; \
$(MSBUILD_CMD) CrossPlatform.sln
bootstrap: $(TOOLSET_PATH) $(RESTORE_SEMAPHORE_PATH)
export HOME=$(HOME_DIR) ; \
$(MSBUILD_CMD) src/Compilers/CSharp/CscCore/CscCore.csproj && \
$(MSBUILD_CMD) src/Compilers/VisualBasic/VbcCore/VbcCore.csproj && \
mkdir -p $(BOOTSTRAP_PATH) && \
cp -f Binaries/$(BUILD_CONFIGURATION)/Exes/CscCore/* $(BOOTSTRAP_PATH) && \
cp -f Binaries/$(BUILD_CONFIGURATION)/Exes/VbcCore/* $(BOOTSTRAP_PATH)
ifneq ($(SKIP_CROSSGEN),true)
build/scripts/crossgen.sh $(BOOTSTRAP_PATH)
endif
all: restore
@export PATH="$(BINARIES_PATH)/dotnet-cli:$(PATH)" ; \
export HOME="$(HOME_DIR)" ; \
$(BUILD_CMD) CrossPlatform.sln
bootstrap: restore
export HOME="$(HOME_DIR)" ; \
export PATH="$(BINARIES_PATH)/dotnet-cli:$(PATH)" ; \
$(BUILD_CMD) src/Compilers/CSharp/CscCore && \
$(BUILD_CMD) src/Compilers/VisualBasic/VbcCore && \
mkdir -p $(BOOTSTRAP_PATH)/csc && mkdir -p $(BOOTSTRAP_PATH)/vbc && \
dotnet publish -r $(RUNTIME_ID) src/Compilers/CSharp/CscCore -o $(BOOTSTRAP_PATH)/csc && \
dotnet publish -r $(RUNTIME_ID) src/Compilers/VisualBasic/VbcCore -o $(BOOTSTRAP_PATH)/vbc
rm -rf Binaries/$(BUILD_CONFIGURATION)
test:
@export PATH="$(BINARIES_PATH)/dotnet-cli:$(PATH)" ; \
export HOME="$(HOME_DIR)" ; \
dotnet publish -r $(RUNTIME_ID) src/Test/DeployCoreClrTestRuntime -o $(BINARIES_PATH)/$(BUILD_CONFIGURATION)/CoreClrTest && \
build/scripts/tests.sh $(BUILD_CONFIGURATION)
restore: $(NUGET_EXE) $(RESTORE_SEMAPHORE_PATH)
restore: $(DOTNET)
export PATH="$(BINARIES_PATH)/dotnet-cli:$(PATH)" ; \
./build/scripts/restore.sh
$(RESTORE_SEMAPHORE_PATH): $(TOOLSET_PATH)
@build/scripts/restore.sh $(TOOLSET_PATH) $(NUGET_EXE) && \
touch $(RESTORE_SEMAPHORE_PATH)
$(NUGET_EXE):
curl https://dist.nuget.org/win-x86-commandline/v$(NUGET_VERSION)/NuGet.exe -o $(NUGET_EXE) --create-dirs
$(DOTNET):
mkdir -p $(BINARIES_PATH) ; \
pushd $(BINARIES_PATH) ; \
curl -O https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh && \
chmod +x dotnet-install.sh && \
./dotnet-install.sh --version "$(DOTNET_VERSION)" --install-dir "$(BINARIES_PATH)/dotnet-cli"
nuget: $(NUGET_EXE)
clean:
@rm -rf Binaries
clean_toolset:
@rm -rf $(TOOLSET_PATH)
toolset: $(TOOLSET_PATH)
$(TOOLSET_PATH): $(BINARIES_PATH)/dotnet-cli
export HOME=$(HOME_DIR) ; \
pushd $(TOOLSET_SRC_PATH) ; \
$(BINARIES_PATH)/dotnet-cli/dotnet restore && \
$(BINARIES_PATH)/dotnet-cli/dotnet publish -o $(TOOLSET_PATH) && \
sed -i -e 's/Microsoft.CSharp.Targets/Microsoft.CSharp.targets/g' $(TOOLSET_PATH)/Microsoft/Portable/v5.0/Microsoft.Portable.CSharp.targets
# https://github.com/dotnet/roslyn/issues/9641
$(BINARIES_PATH)/dotnet-cli:
@mkdir -p $(BINARIES_PATH) ; \
pushd $(BINARIES_PATH) ; \
curl -O https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh ; \
chmod +x dotnet-install.sh ; \
./dotnet-install.sh --version "$(DOTNET_VERSION)" --install-dir "$(BINARIES_PATH)/dotnet-cli"
此差异已折叠。
<?xml version="1.0" encoding="utf-8"?>
<!-- The default app.config for test projects that do not specify one -->
<configuration>
<appSettings>
<add key="xunit.diagnosticMessages" value="false"/>
<add key="xunit.parallelizeTestCollections" value="false"/>
<add key="xunit.shadowCopy" value="false"/> <!-- Set shadow copy to false so that the VS Test Explorer can properly load our public signed binaries -->
</appSettings>
<system.diagnostics>
<trace>
<listeners>
<remove name="Default" />
<add name="ThrowingTraceListener" type="Microsoft.CodeAnalysis.ThrowingTraceListener, Roslyn.Test.Utilities.Desktop" />
</listeners>
</trace>
</system.diagnostics>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.2.1.0" newVersion="1.2.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.FileSystem" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.FileSystem.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Console" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.1.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Thread" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Dataflow" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.6.0.0" newVersion="4.5.24.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.FileVersionInfo" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.Process" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.1.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Principal.Windows" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Pipes" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.StackTrace" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Xml.XmlDocument" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Xml.XPath.XDocument" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0"/>
</dependentAssembly>
<!-- Even though all of our references are to Dev15 binaries we are still pulling in BasicUndo
which references Dev14. Until that moves to Dev15 we need these redirects -->
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.CoreUtility" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-14.0.0.0" newVersion="15.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.Text.Logic" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-14.0.0.0" newVersion="15.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.Text.UI" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-14.0.0.0" newVersion="15.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MicrosoftBuildFixedVersion>14.3.0</MicrosoftBuildFixedVersion>
<MicrosoftBuildTasksCoreFixedVersion>14.3.0</MicrosoftBuildTasksCoreFixedVersion>
<MicrosoftNETCoreAppFixedVersion>2.0.0-preview2-002066-00</MicrosoftNETCoreAppFixedVersion>
<MicrosoftVisualStudioCoreUtilityFixedVersion>14.0.23205</MicrosoftVisualStudioCoreUtilityFixedVersion>
<MicrosoftVisualStudioEditorFixedVersion>14.0.23205</MicrosoftVisualStudioEditorFixedVersion>
<MicrosoftVisualStudioShell140FixedVersion>14.0.23205</MicrosoftVisualStudioShell140FixedVersion>
<MicrosoftVisualStudioTextDataFixedVersion>14.0.23205</MicrosoftVisualStudioTextDataFixedVersion>
<MicrosoftVisualStudioTextLogicFixedVersion>14.0.23205</MicrosoftVisualStudioTextLogicFixedVersion>
<MicrosoftVisualStudioTextUIFixedVersion>14.0.23205</MicrosoftVisualStudioTextUIFixedVersion>
<MicrosoftVisualStudioTextUIWpfFixedVersion>14.0.23205</MicrosoftVisualStudioTextUIWpfFixedVersion>
<MicrosoftVisualStudioUtilitiesFixedVersion>14.0.23205</MicrosoftVisualStudioUtilitiesFixedVersion>
<MicrosoftVSSDKBuildToolsFixedVersion>14.3.25420</MicrosoftVSSDKBuildToolsFixedVersion>
<NETStandardLibraryFixedVersion>2.0.0-beta-25123-01</NETStandardLibraryFixedVersion>
<NewtonsoftJsonFixedVersion>9.0.1</NewtonsoftJsonFixedVersion>
<SystemCollectionsImmutableFixedVersion>1.1.36</SystemCollectionsImmutableFixedVersion>
<SystemReflectionMetadataFixedVersion>1.0.21</SystemReflectionMetadataFixedVersion>
</PropertyGroup>
</Project>
......@@ -74,12 +74,11 @@
<Output TaskParameter="Include" ItemName="AssemblyVersionAttribute" />
</CreateItem>
<!-- The necessity of this Task is tracked by https://github.com/dotnet/roslyn/issues/8421 -->
<WriteCodeFragmentEx AssemblyAttributes="@(AssemblyVersionAttribute)"
<WriteCodeFragment AssemblyAttributes="@(AssemblyVersionAttribute)"
Language="$(Language)"
OutputFile="$(GeneratedAssemblyInfoFile)">
<Output TaskParameter="OutputFile" ItemName="Compile" />
<Output TaskParameter="OutputFile" ItemName="FileWrites" />
</WriteCodeFragmentEx>
</WriteCodeFragment>
</Target>
</Project>
......@@ -107,13 +107,13 @@
Condition="'@(InternalsVisibleToRazor)' != ''">
<Output TaskParameter="Include" ItemName="InternalsVisibleToAttribute" />
</CreateItem>
<!-- The necessity of this Task is tracked by https://github.com/dotnet/roslyn/issues/8421 -->
<WriteCodeFragmentEx AssemblyAttributes="@(InternalsVisibleToAttribute)"
<WriteCodeFragment AssemblyAttributes="@(InternalsVisibleToAttribute)"
Language="$(Language)"
OutputFile="$(GeneratedInternalsVisibleToFile)">
<Output TaskParameter="OutputFile" ItemName="Compile" />
<Output TaskParameter="OutputFile" ItemName="FileWrites" />
</WriteCodeFragmentEx>
</WriteCodeFragment>
</Target>
</Project>
\ No newline at end of file
</Project>
......@@ -62,8 +62,7 @@
<PropertyGroup>
<AllowedReferenceRelatedFileExtensions>$(AllowedReferenceRelatedFileExtensions);.pdb</AllowedReferenceRelatedFileExtensions>
<CopyNuGetImplementations>true</CopyNuGetImplementations>
<OutputPath Condition="'$(TargetFrameworkIdentifier)' == '.NETPortable'">$(OutputPath)CoreClrTest</OutputPath>
<OutputPath Condition="'$(TargetFrameworkIdentifier)' != '.NETPortable'">$(OutputPath)UnitTests\Portable\</OutputPath>
<OutputPath>$(OutputPath)$(RoslynUnitTestDir)</OutputPath>
</PropertyGroup>
</When>
<When Condition="'$(RoslynProjectType)' == 'Custom'">
......@@ -110,7 +109,7 @@
-->
<PropertyGroup Condition="'$(DocumentationFile)' == '' AND '$(NoDocumentationFile)' != 'true' AND '$(Nonshipping)' != 'true' AND '$(AssemblyName)' != ''">
<DocumentationFile Condition="'$(ProjectLanguage)' == 'VB'">$(AssemblyName).xml</DocumentationFile>
<DocumentationFile Condition="'$(ProjectLanguage)' == 'CSharp'">$(IntermediateOutputPath)$(AssemblyName).xml</DocumentationFile>
<DocumentationFile Condition="'$(ProjectLanguage)' == 'CSharp'">$(IntermediateOutputPath)\$(AssemblyName).xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup>
......@@ -128,6 +127,12 @@
<GetVsixSourceItemsDependsOn>$(GetVsixSourceItemsDependsOn);IncludeVsixLocalOnlyItems</GetVsixSourceItemsDependsOn>
<GetVsixSourceItemsDependsOn>$(GetVsixSourceItemsDependsOn);IncludeNuGetResolvedAssets</GetVsixSourceItemsDependsOn>
<ProducingSignedVsix Condition="'$(ShouldSignBuild)' == 'true' AND '$(NonShipping)' != 'true' AND '$(CreateVsixContainer)' == 'true'">true</ProducingSignedVsix>
<!-- The netstandard 1.3 package by default includes Microsoft.CodeAnalysis. That's a bit
of a non-starter since we build it. Using manual references for now -->
<DisableImplicitFrameworkReferences Condition="'$(DisableImplicitFrameworkReferences)' == ''" >true</DisableImplicitFrameworkReferences>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
</PropertyGroup>
<!-- If the project hasn't configured a ruleset, set a default ruleset. -->
......@@ -229,10 +234,8 @@
</SuggestedBindingRedirects>
</ItemGroup>
<Import Project="$(MSBuildTargetsFilePath)" />
<!-- On *nix the NuGet targets aren't imported by default, so we do that here -->
<Import Project="$(MSBuildBinPath)\Microsoft.NuGet.targets" Condition="'$(OS)' != 'Windows_NT'" />
<Import Project="$(MSBuildTargetsFilePath)" Condition="'$(RoslynSdkProject)' != 'true'" />
<Import Project="$(RoslynNetSdkRootPath)Sdk.targets" Condition="'$(RoslynSdkProject)' == 'true'" />
<!-- The portable v5.0 framework is delivered over NuGet, so std resolution should be disabled -->
<Import Project="DisableStandardFrameworkResolution.targets"
......@@ -444,7 +447,7 @@
https://github.com/Microsoft/msbuild/issues/1499 -->
<Target Name="DeployPortableOnDeveloperBuild"
Condition="'$(_IsAnyPortableUnitTest)' == 'true' AND '$(DeveloperBuild)' == 'true' AND '$(OS)' == 'Windows_NT'">
Condition="'$(_IsAnyPortableUnitTest)' == 'true' AND '$(DeveloperBuild)' == 'true' AND '$(OS)' == 'Windows_NT' AND '$(RoslynSdkProject)' != 'true'">
<ResolveNuGetPackageAssets IncludeFrameworkReferences="true"
NuGetPackagesDirectory="$(NuGetPackageRoot)"
RuntimeIdentifier="win7"
......
......@@ -9,9 +9,11 @@
<!-- Always use the local build task, even if we just shell out to an exe in case there are
new properties in the local build task. -->
<UsingTask TaskName="Microsoft.CodeAnalysis.BuildTasks.Csc"
AssemblyFile="$(ToolsetCompilerPath)\Microsoft.Build.Tasks.CodeAnalysis.dll" />
AssemblyFile="$(ToolsetCompilerPath)\Microsoft.Build.Tasks.CodeAnalysis.dll"
Condition="Exists('$(ToolsetCompilerPath)')" />
<UsingTask TaskName="Microsoft.CodeAnalysis.BuildTasks.Vbc"
AssemblyFile="$(ToolsetCompilerPath)\Microsoft.Build.Tasks.CodeAnalysis.dll" />
AssemblyFile="$(ToolsetCompilerPath)\Microsoft.Build.Tasks.CodeAnalysis.dll"
Condition="Exists('$(ToolsetCompilerPath)')" />
<PropertyGroup>
<CSharpCoreTargetsPath>$(ToolsetCompilerPath)\Microsoft.CSharp.Core.targets</CSharpCoreTargetsPath>
<VisualBasicCoreTargetsPath>$(ToolsetCompilerPath)\Microsoft.VisualBasic.Core.targets</VisualBasicCoreTargetsPath>
......@@ -25,4 +27,4 @@
<VbcToolPath>$(ToolsetCompilerPath)</VbcToolPath>
<VbcToolExe>vbc.exe</VbcToolExe>
</PropertyGroup>
</Project>
\ No newline at end of file
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!--Generated file, do not directly edit. Run "RepoUtil change" to regenerate-->
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<BasicUndoVersion>0.9.3</BasicUndoVersion>
<CommandLineParserVersion>2.0.273-beta</CommandLineParserVersion>
<EnvDTEVersion>8.0.1</EnvDTEVersion>
<EnvDTE80Version>8.0.0</EnvDTE80Version>
<FakeSignVersion>0.9.2</FakeSignVersion>
<GitLinkVersion>3.0.0-unstable0085</GitLinkVersion>
<LibGit2SharpVersion>0.22.0</LibGit2SharpVersion>
<ManagedEsentVersion>1.9.4</ManagedEsentVersion>
<MicroBuildCoreVersion>0.2.0</MicroBuildCoreVersion>
<MicroBuildCoreSentinelVersion>1.0.0</MicroBuildCoreSentinelVersion>
<MicroBuildPluginsSwixBuildVersion>1.1.0-g0701ee829f</MicroBuildPluginsSwixBuildVersion>
<MicrosoftAzureKeyVaultVersion>2.0.6</MicrosoftAzureKeyVaultVersion>
<MicrosoftBuildVersion>15.1.0-preview-000458-02</MicrosoftBuildVersion>
<MicrosoftBuild14Version>14.3.0</MicrosoftBuild14Version>
<MicrosoftBuildFrameworkVersion>15.1.0-preview-000458-02</MicrosoftBuildFrameworkVersion>
<MicrosoftBuildLoggingStructuredLoggerVersion>1.0.58</MicrosoftBuildLoggingStructuredLoggerVersion>
<MicrosoftBuildRuntimeVersion>15.1.0-preview-000458-02</MicrosoftBuildRuntimeVersion>
<MicrosoftBuildTasksCoreVersion>15.1.0-preview-000458-02</MicrosoftBuildTasksCoreVersion>
<MicrosoftBuildTasksCore14Version>14.3.0</MicrosoftBuildTasksCore14Version>
<MicrosoftCodeAnalysisAnalyzersVersion>1.1.0</MicrosoftCodeAnalysisAnalyzersVersion>
<MicrosoftCodeAnalysisElfieVersion>0.10.6-rc2</MicrosoftCodeAnalysisElfieVersion>
<MicrosoftCodeAnalysisBuildTasksVersion>2.0.0-rc2-61102-09</MicrosoftCodeAnalysisBuildTasksVersion>
<MicrosoftCodeAnalysisCommonVersion>1.0.1</MicrosoftCodeAnalysisCommonVersion>
<MicrosoftCodeAnalysisCSharpVersion>1.0.1</MicrosoftCodeAnalysisCSharpVersion>
<MicrosoftCodeAnalysisCSharpWorkspacesVersion>1.0.1</MicrosoftCodeAnalysisCSharpWorkspacesVersion>
<MicrosoftCodeAnalysisEditorFeaturesTextVersion>1.0.1</MicrosoftCodeAnalysisEditorFeaturesTextVersion>
<MicrosoftCodeAnalysisElfieVersion>0.10.6</MicrosoftCodeAnalysisElfieVersion>
<MicrosoftCodeAnalysisTestResourcesProprietaryVersion>2.0.0-pre-20160714</MicrosoftCodeAnalysisTestResourcesProprietaryVersion>
<MicrosoftCodeAnalysisVisualBasicVersion>1.0.1</MicrosoftCodeAnalysisVisualBasicVersion>
<MicrosoftCodeAnalysisVisualBasicWorkspacesVersion>1.0.1</MicrosoftCodeAnalysisVisualBasicWorkspacesVersion>
<MicrosoftCodeAnalysisWorkspacesCommonVersion>1.0.1</MicrosoftCodeAnalysisWorkspacesCommonVersion>
<MicrosoftCompositionVersion>1.0.27</MicrosoftCompositionVersion>
<MicrosoftCSharpVersion>4.3.0</MicrosoftCSharpVersion>
<MicrosoftDiagnosticsRuntimeVersion>0.8.31-beta</MicrosoftDiagnosticsRuntimeVersion>
......@@ -25,19 +39,111 @@
<MicrosoftDiaSymReaderConverterXmlVersion>1.0.0-beta1-61618-01</MicrosoftDiaSymReaderConverterXmlVersion>
<MicrosoftDiaSymReaderNativeVersion>1.5.0</MicrosoftDiaSymReaderNativeVersion>
<MicrosoftDiaSymReaderPortablePdbVersion>1.2.0</MicrosoftDiaSymReaderPortablePdbVersion>
<MicrosoftIdentityModelClientsActiveDirectoryVersion>3.13.8</MicrosoftIdentityModelClientsActiveDirectoryVersion>
<MicrosoftInternalPerformanceCodeMarkersDesignTimeVersion>15.0.26201-alpha</MicrosoftInternalPerformanceCodeMarkersDesignTimeVersion>
<MicrosoftInternalVisualStudioShellInterop140DesignTimeVersion>14.3.25407-alpha</MicrosoftInternalVisualStudioShellInterop140DesignTimeVersion>
<MicrosoftMetadataVisualizerVersion>1.0.0-beta1-61531-03</MicrosoftMetadataVisualizerVersion>
<MicrosoftMSXMLVersion>8.0.0.0-alpha</MicrosoftMSXMLVersion>
<MicrosoftNetCompilersVersion>2.0.1</MicrosoftNetCompilersVersion>
<MicrosoftNetCompilersnetcoreVersion>2.0.0-rc2-61102-09</MicrosoftNetCompilersnetcoreVersion>
<MicrosoftNetRoslynDiagnosticsVersion>1.2.0-beta2</MicrosoftNetRoslynDiagnosticsVersion>
<MicrosoftNetCoreILAsmVersion>1.1.0</MicrosoftNetCoreILAsmVersion>
<MicrosoftNETCoreCompilersVersion>2.3.0-dev-56735-00</MicrosoftNETCoreCompilersVersion>
<MicrosoftNETCoreVersion>5.0.0</MicrosoftNETCoreVersion>
<MicrosoftNETCoreAppVersion>1.1.0</MicrosoftNETCoreAppVersion>
<MicrosoftNETCorePlatformsVersion>1.1.0</MicrosoftNETCorePlatformsVersion>
<MicrosoftNETCorePortableCompatibilityVersion>1.0.1</MicrosoftNETCorePortableCompatibilityVersion>
<MicrosoftNETCoreRuntimeCoreCLRVersion>1.1.0</MicrosoftNETCoreRuntimeCoreCLRVersion>
<MicrosoftNETCoreTestHostVersion>1.1.0</MicrosoftNETCoreTestHostVersion>
<MicrosoftNetFX20Version>1.0.3</MicrosoftNetFX20Version>
<MicrosoftNetSdkVersion>2.0.0-alpha-20170405-2</MicrosoftNetSdkVersion>
<MicrosoftNuGetBuildTasksVersion>0.1.0</MicrosoftNuGetBuildTasksVersion>
<MicrosoftPortableTargetsVersion>0.1.2-dev</MicrosoftPortableTargetsVersion>
<MicrosoftServiceHubClientVersion>1.0.177-rc-g56d40a8a02</MicrosoftServiceHubClientVersion>
<MicrosoftTplDataflowVersion>4.5.24</MicrosoftTplDataflowVersion>
<MicrosoftVisualBasicVersion>10.1.0</MicrosoftVisualBasicVersion>
<MicrosoftVisualStudioCallHierarchyPackageDefinitionsVersion>15.0.26201-alpha</MicrosoftVisualStudioCallHierarchyPackageDefinitionsVersion>
<MicrosoftVisualStudioCodeAnalysisSdkUIVersion>15.0.26201-alpha</MicrosoftVisualStudioCodeAnalysisSdkUIVersion>
<MicrosoftVisualStudioComponentModelHostVersion>15.0.26201-alpha</MicrosoftVisualStudioComponentModelHostVersion>
<MicrosoftVisualStudioCompositionVersion>15.0.66-rc</MicrosoftVisualStudioCompositionVersion>
<MicrosoftVisualStudioCoreUtilityVersion>15.0.26201-alpha</MicrosoftVisualStudioCoreUtilityVersion>
<MicrosoftVisualStudioDebuggerEngineVersion>15.0.26201-gamma</MicrosoftVisualStudioDebuggerEngineVersion>
<MicrosoftVisualStudioDebuggerMetadataVersion>15.0.26201-gamma</MicrosoftVisualStudioDebuggerMetadataVersion>
<MicrosoftVisualStudioDebuggerInterop100Version>10.0.30319</MicrosoftVisualStudioDebuggerInterop100Version>
<MicrosoftVisualStudioDesignerInterfacesVersion>1.1.4322</MicrosoftVisualStudioDesignerInterfacesVersion>
<MicrosoftVisualStudioDiagnosticsPerformanceProviderVersion>15.0.26201-alpha</MicrosoftVisualStudioDiagnosticsPerformanceProviderVersion>
<MicrosoftVisualStudioEditorVersion>15.0.26201-alpha</MicrosoftVisualStudioEditorVersion>
<MicrosoftVisualStudioGraphModelVersion>15.0.26201-alpha</MicrosoftVisualStudioGraphModelVersion>
<MicrosoftVisualStudioImageCatalogVersion>15.0.26201-alpha</MicrosoftVisualStudioImageCatalogVersion>
<MicrosoftVisualStudioImagingVersion>15.0.26201-alpha</MicrosoftVisualStudioImagingVersion>
<MicrosoftVisualStudioImagingInterop140DesignTimeVersion>14.3.25407</MicrosoftVisualStudioImagingInterop140DesignTimeVersion>
<MicrosoftVisualStudioInteractiveWindowVersion>2.0.0-rc3-61304-01</MicrosoftVisualStudioInteractiveWindowVersion>
<MicrosoftVisualStudioLanguageCallHierarchyVersion>15.0.26201-alpha</MicrosoftVisualStudioLanguageCallHierarchyVersion>
<MicrosoftVisualStudioLanguageIntellisenseVersion>15.0.26201-alpha</MicrosoftVisualStudioLanguageIntellisenseVersion>
<MicrosoftVisualStudioLanguageNavigateToInterfacesVersion>15.0.26201-alpha</MicrosoftVisualStudioLanguageNavigateToInterfacesVersion>
<MicrosoftVisualStudioLanguageStandardClassificationVersion>15.0.26201-alpha</MicrosoftVisualStudioLanguageStandardClassificationVersion>
<MicrosoftVisualStudioOLEInteropVersion>7.10.6070</MicrosoftVisualStudioOLEInteropVersion>
<MicrosoftVisualStudioPlatformVSEditorVersion>15.0.26201-alpha</MicrosoftVisualStudioPlatformVSEditorVersion>
<MicrosoftVisualStudioPlatformVSEditorInteropVersion>15.0.26201-alpha</MicrosoftVisualStudioPlatformVSEditorInteropVersion>
<MicrosoftVisualStudioProgressionCodeSchemaVersion>15.0.26201-alpha</MicrosoftVisualStudioProgressionCodeSchemaVersion>
<MicrosoftVisualStudioProgressionCommonVersion>15.0.26201-alpha</MicrosoftVisualStudioProgressionCommonVersion>
<MicrosoftVisualStudioProgressionInterfacesVersion>15.0.26201-alpha</MicrosoftVisualStudioProgressionInterfacesVersion>
<MicrosoftVisualStudioQualityToolsUnitTestFrameworkVersion>10.0.0.0-alpha</MicrosoftVisualStudioQualityToolsUnitTestFrameworkVersion>
<MicrosoftVisualStudioRemoteControlVersion>14.0.249-master2E2DC10C</MicrosoftVisualStudioRemoteControlVersion>
<MicrosoftVisualStudioSetupConfigurationInteropVersion>1.3.269-rc</MicrosoftVisualStudioSetupConfigurationInteropVersion>
<MicrosoftVisualStudioSetupConfigurationNativex86Version>1.3.269-rc</MicrosoftVisualStudioSetupConfigurationNativex86Version>
<MicrosoftVisualStudioSettings140Version>14.3.25407</MicrosoftVisualStudioSettings140Version>
<MicrosoftVisualStudioShell140Version>14.3.25407</MicrosoftVisualStudioShell140Version>
<MicrosoftVisualStudioShell150Version>15.0.26201-alpha</MicrosoftVisualStudioShell150Version>
<MicrosoftVisualStudioShellDesignVersion>15.0.26201-alpha</MicrosoftVisualStudioShellDesignVersion>
<MicrosoftVisualStudioShellFrameworkVersion>15.0.26201-alpha</MicrosoftVisualStudioShellFrameworkVersion>
<MicrosoftVisualStudioShellImmutable100Version>15.0.26201-alpha</MicrosoftVisualStudioShellImmutable100Version>
<MicrosoftVisualStudioShellImmutable110Version>15.0.25413-Preview5</MicrosoftVisualStudioShellImmutable110Version>
<MicrosoftVisualStudioShellInteropVersion>7.10.6071</MicrosoftVisualStudioShellInteropVersion>
<MicrosoftVisualStudioShellInterop100Version>10.0.30319</MicrosoftVisualStudioShellInterop100Version>
<MicrosoftVisualStudioShellInterop110Version>11.0.61030</MicrosoftVisualStudioShellInterop110Version>
<MicrosoftVisualStudioShellInterop121DesignTimeVersion>12.1.30328</MicrosoftVisualStudioShellInterop121DesignTimeVersion>
<MicrosoftVisualStudioShellInterop140DesignTimeVersion>14.3.25407</MicrosoftVisualStudioShellInterop140DesignTimeVersion>
<MicrosoftVisualStudioShellInterop150DesignTimeVersion>15.0.26201-alpha</MicrosoftVisualStudioShellInterop150DesignTimeVersion>
<MicrosoftVisualStudioShellInterop80Version>8.0.50727</MicrosoftVisualStudioShellInterop80Version>
<MicrosoftVisualStudioShellInterop90Version>9.0.30729</MicrosoftVisualStudioShellInterop90Version>
<MicrosoftVisualStudioTelemetryVersion>15.0.26201-alpha</MicrosoftVisualStudioTelemetryVersion>
<MicrosoftVisualStudioTemplateWizardInterfaceVersion>8.0.0.0-alpha</MicrosoftVisualStudioTemplateWizardInterfaceVersion>
<MicrosoftVisualStudioTextDataVersion>15.0.26201-alpha</MicrosoftVisualStudioTextDataVersion>
<MicrosoftVisualStudioTextInternalVersion>15.0.26201-alpha</MicrosoftVisualStudioTextInternalVersion>
<MicrosoftVisualStudioTextLogicVersion>15.0.26201-alpha</MicrosoftVisualStudioTextLogicVersion>
<MicrosoftVisualStudioTextUIVersion>15.0.26201-alpha</MicrosoftVisualStudioTextUIVersion>
<MicrosoftVisualStudioTextUIWpfVersion>15.0.26201-alpha</MicrosoftVisualStudioTextUIWpfVersion>
<MicrosoftVisualStudioTextManagerInteropVersion>7.10.6070</MicrosoftVisualStudioTextManagerInteropVersion>
<MicrosoftVisualStudioTextManagerInterop100Version>10.0.30319</MicrosoftVisualStudioTextManagerInterop100Version>
<MicrosoftVisualStudioTextManagerInterop120Version>12.0.30110</MicrosoftVisualStudioTextManagerInterop120Version>
<MicrosoftVisualStudioTextManagerInterop121DesignTimeVersion>12.1.30328</MicrosoftVisualStudioTextManagerInterop121DesignTimeVersion>
<MicrosoftVisualStudioThreadingVersion>15.0.26201-alpha</MicrosoftVisualStudioThreadingVersion>
<MicrosoftVisualStudioUtilitiesVersion>15.0.26201-alpha</MicrosoftVisualStudioUtilitiesVersion>
<MicrosoftVisualStudioValidationVersion>15.0.26201-alpha</MicrosoftVisualStudioValidationVersion>
<MicrosoftVisualStudioVsInteractiveWindowVersion>2.0.0-rc3-61304-01</MicrosoftVisualStudioVsInteractiveWindowVersion>
<MicrosoftVSSDKBuildToolsVersion>15.0.26124-RC3</MicrosoftVSSDKBuildToolsVersion>
<NETStandardLibraryVersion>2.0.0-beta-25123-01</NETStandardLibraryVersion>
<MicrosoftWin32PrimitivesVersion>4.3.0</MicrosoftWin32PrimitivesVersion>
<MDbgVersion>0.1.0</MDbgVersion>
<MonoOptionsVersion>4.4.0</MonoOptionsVersion>
<MoqVersion>4.2.1402.2112</MoqVersion>
<NerdbankFullDuplexStreamVersion>1.0.1</NerdbankFullDuplexStreamVersion>
<NETStandardLibraryVersion>1.6.1</NETStandardLibraryVersion>
<NewtonsoftJsonVersion>8.0.3</NewtonsoftJsonVersion>
<NuGetCommandLineVersion>2.8.5</NuGetCommandLineVersion>
<NuGetCommandLineXPlatVersion>3.5.0-beta2-1484</NuGetCommandLineXPlatVersion>
<NuGetVisualStudioVersion>4.0.0-rc-2048</NuGetVisualStudioVersion>
<NuSpecReferenceGeneratorVersion>1.4.2</NuSpecReferenceGeneratorVersion>
<OctokitVersion>0.23.0</OctokitVersion>
<RestSharpVersion>105.2.3</RestSharpVersion>
<RoslynBuildUtilVersion>0.9.4-portable</RoslynBuildUtilVersion>
<RoslynDependenciesMicrosoftVisualStudioWorkspaceVersion>14.0.983-pre-ge167e81694</RoslynDependenciesMicrosoftVisualStudioWorkspaceVersion>
<RoslynDependenciesOptimizationDataVersion>2.0.0-rc-61101-16</RoslynDependenciesOptimizationDataVersion>
<RoslynToolsMicrosoftLocateVSVersion>0.2.4-beta</RoslynToolsMicrosoftLocateVSVersion>
<RoslynToolsMicrosoftSignToolVersion>0.3.0-beta</RoslynToolsMicrosoftSignToolVersion>
<RoslynToolsMicrosoftVSIXExpInstallerVersion>0.2.4-beta</RoslynToolsMicrosoftVSIXExpInstallerVersion>
<RoslynToolsReferenceAssembliesVersion>0.1.1</RoslynToolsReferenceAssembliesVersion>
<RoslynMicrosoftVisualStudioExtensionManagerVersion>0.0.4</RoslynMicrosoftVisualStudioExtensionManagerVersion>
<StreamJsonRpcVersion>1.0.2-rc</StreamJsonRpcVersion>
<SystemAppContextVersion>4.3.0</SystemAppContextVersion>
<SystemCollectionsVersion>4.3.0</SystemCollectionsVersion>
<SystemCollectionsConcurrentVersion>4.3.0</SystemCollectionsConcurrentVersion>
......@@ -102,10 +208,21 @@
<SystemXmlReaderWriterVersion>4.3.0</SystemXmlReaderWriterVersion>
<SystemXmlXDocumentVersion>4.3.0</SystemXmlXDocumentVersion>
<SystemXmlXmlDocumentVersion>4.3.0</SystemXmlXmlDocumentVersion>
<SystemXmlXmlSerializerVersion>4.3.0</SystemXmlXmlSerializerVersion>
<SystemXmlXPathXDocumentVersion>4.3.0</SystemXmlXPathXDocumentVersion>
<SQLitePCLRawbundle_greenVersion>1.1.2</SQLitePCLRawbundle_greenVersion>
<MicrosoftVSSDKBuildToolsVersion>15.0.26124-RC3</MicrosoftVSSDKBuildToolsVersion>
<VSExternalAPIsCodingConventionsVersion>1.0.60704.2</VSExternalAPIsCodingConventionsVersion>
<VSLangProjVersion>7.0.3300</VSLangProjVersion>
<VSLangProj140Version>14.3.25407-alpha</VSLangProj140Version>
<VSLangProj2Version>7.0.5000</VSLangProj2Version>
<VSLangProj80Version>8.0.0.0-alpha</VSLangProj80Version>
<VSSDKComponentModelHostVersion>12.0.4</VSSDKComponentModelHostVersion>
<VsWebsiteInteropVersion>8.0.0.0-alpha</VsWebsiteInteropVersion>
<xunitVersion>2.2.0-beta4-build3444</xunitVersion>
<xunitconsolenetcoreVersion>1.0.2-prerelease-00104</xunitconsolenetcoreVersion>
<xunitrunnerconsoleVersion>2.2.0-beta4-build3444</xunitrunnerconsoleVersion>
<xunitrunnervisualstudioVersion>2.2.0-beta4-build1194</xunitrunnervisualstudioVersion>
</PropertyGroup>
</Project>
\ No newline at end of file
</Project>
......@@ -23,7 +23,8 @@
<Target Name="AddDefaultTestAppConfig">
<PropertyGroup>
<_AlreadyHasAppConfig Condition="'%(None.Filename)%(None.Extension)' == 'app.config'">true</_AlreadyHasAppConfig>
<_DefaultAppConfigFile Condition="'$(RoslynProjectType)' == 'UnitTest'">$(MSBuildThisFileDirectory)..\Defaults\Desktop\app.config</_DefaultAppConfigFile>
<_DefaultAppConfigFile Condition="'$(RoslynProjectType)' == 'UnitTest'">$(MSBuildThisFileDirectory)..\Defaults\Net460\app.config</_DefaultAppConfigFile>
<_DefaultAppConfigFile Condition="'$(RoslynProjectType)' == 'UnitTest' AND '$(TargetFrameworkVersion)' == 'v4.6.2'">$(MSBuildThisFileDirectory)..\Defaults\Net462\app.config</_DefaultAppConfigFile>
<_DefaultAppConfigFile Condition="'$(RoslynProjectType)' != 'UnitTest'">$(MSBuildThisFileDirectory)..\Defaults\Portable\app.config</_DefaultAppConfigFile>
</PropertyGroup>
......
......@@ -9,13 +9,9 @@
<JenkinsBuild Condition="'$(JENKINS_HOME)' != ''">true</JenkinsBuild>
<DeveloperBuild>false</DeveloperBuild>
<DeveloperBuild Condition="'$(OfficialBuild)' != 'true' AND '$(JenkinsBuild)' != 'true'">true</DeveloperBuild>
<RepoRoot>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\..\'))</RepoRoot>
<NuGetToolPath>$(RepoRoot)nuget.exe</NuGetToolPath>
<ToolsetPackagesDir>$(RepoRoot)build\ToolsetPackages\</ToolsetPackagesDir>
<ToolsetPackagesSemaphore>$(ToolsetPackagesDir)toolsetpackages.semaphore</ToolsetPackagesSemaphore>
<ToolsetCompilerPackageName>Microsoft.Net.Compilers</ToolsetCompilerPackageName>
<ToolsetCompilerPackageVersion>2.0.1</ToolsetCompilerPackageVersion>
<VSIXExpInstallerPackageName>RoslynTools.Microsoft.VSIXExpInstaller</VSIXExpInstallerPackageName>
<VSIXExpInstallerPackageVersion>0.2.1-beta</VSIXExpInstallerPackageVersion>
<RoslynDiagnosticsNugetPackageVersion>2.0.0-beta1-61628-06</RoslynDiagnosticsNugetPackageVersion>
......@@ -29,15 +25,18 @@
<BaseOutputPath Condition="'$(BaseOutputPath)' == ''">$(RepoRoot)Binaries\</BaseOutputPath>
<OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath>
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)' == ''">$(RepoRoot)Binaries\Obj\</BaseIntermediateOutputPath>
<IntermediateOutputPath>$(BaseIntermediateOutputPath)$(Configuration)\$(MSBuildProjectName)\</IntermediateOutputPath>
<BaseIntermediateOutputPath>$(BaseIntermediateOutputPath)$(MSBuildProjectName)\</BaseIntermediateOutputPath>
<IntermediateOutputPath>$(BaseIntermediateOutputPath)$(Configuration)</IntermediateOutputPath>
<NetStandard20RefPath>$(NuGetPackageRoot)/NETStandard.Library/$(NETStandardLibraryVersion)/build/netstandard2.0/ref/</NetStandard20RefPath>
<MicrosoftCSharpRefPath>$(NuGetPackageRoot)/Microsoft.CSharp/$(MicrosoftCSharpVersion)/ref/netstandard1.0/</MicrosoftCSharpRefPath>
<NetStandard20RefPath>$(NuGetPackageRoot)/netstandard.library/$(NETStandardLibraryFixedVersion)/build/netstandard2.0/ref/</NetStandard20RefPath>
<MicrosoftCSharpRefPath>$(NuGetPackageRoot)/microsoft.csharp/$(MicrosoftCSharpVersion)/ref/netstandard1.0/</MicrosoftCSharpRefPath>
<!-- Workaround until we move to Microsoft.Net.Compilers.nupkg with this fix: https://github.com/dotnet/roslyn/commit/05c12ebfcdd08a02dbceded5327a8da7a7df23be:
Use the Microsoft.Net.Compilers.props file with the fix checked into the repo instead of the one that comes along with the nuget package:
$(NuGetPackageRoot)\Microsoft.Net.Compilers\$(ToolsetCompilerPackageVersion)\build\Microsoft.Net.Compilers.props -->
<ToolsetCompilerPropsFilePath>$(MSBuildThisFileDirectory)Microsoft.Net.Compilers.props</ToolsetCompilerPropsFilePath>
<ToolsetPackagesSemaphore>$(ToolsetPackagesDir)toolsetpackages.semaphore</ToolsetPackagesSemaphore>
<ToolsetCompilerPackageName Condition="'$(OS)' == 'Windows_NT'">Microsoft.Net.Compilers</ToolsetCompilerPackageName>
<ToolsetCompilerPackageName Condition="'$(OS)' != 'Windows_NT'">Microsoft.NETCore.Compilers</ToolsetCompilerPackageName>
<ToolsetCompilerPackageVersion Condition="'$(OS)' == 'Windows_NT'">$(MicrosoftNetCompilersVersion)</ToolsetCompilerPackageVersion>
<ToolsetCompilerPackageVersion Condition="'$(OS)' != 'Windows_NT'">$(MicrosoftNETCoreCompilersVersion)</ToolsetCompilerPackageVersion>
<ToolsetCompilerPropsFilePath>$(NuGetPackageRoot)/$(ToolsetCompilerPackageName.ToLower())/$(ToolsetCompilerPackageVersion)/build/$(ToolsetCompilerPackageName).props</ToolsetCompilerPropsFilePath>
<TargetFrameworkRootPath>$(NuGetPackageRoot)\RoslynTools.ReferenceAssemblies\$(RoslynToolsReferenceAssembliesVersion)\tools\Framework</TargetFrameworkRootPath>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">15.0</VisualStudioVersion>
......@@ -65,6 +64,10 @@
{TargetFrameworkDirectory};
{RawFileName};
</AssemblySearchPaths>
<NoWarn>$(NoWarn);1701</NoWarn>
<RoslynNetSdkRootPath>$(MSBuildSDKsPath)\Microsoft.NET.Sdk\Sdk\</RoslynNetSdkRootPath>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
</PropertyGroup>
<!-- Windows specific settings -->
......@@ -98,8 +101,9 @@
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>
<AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
<NoStdLib>true</NoStdLib>
<FrameworkPathOverride>$(NuGetPackageRoot)\Microsoft.NetFX20\1.0.3\lib\net20</FrameworkPathOverride>
<NuGetTargetMoniker>.NETFramework,Version=v2.0</NuGetTargetMoniker>
<FrameworkPathOverride>$(NuGetPackageRoot)\Microsoft.NetFX20\$(MicrosoftNetFX20Version)\lib\net20</FrameworkPathOverride>
<ExecuteAsTool>false</ExecuteAsTool>
<GenerateResourceMSBuildRuntime>CurrentRuntime</GenerateResourceMSBuildRuntime>
</PropertyGroup>
<PropertyGroup Condition="'$(DevEnvDir)' == ''">
......@@ -212,29 +216,28 @@
AssemblyFile="$(BootstrapBuildPath)\Microsoft.Build.Tasks.CodeAnalysis.dll"
Condition="'$(BootstrapBuildPath)' != ''" />
<!--
Roslyn uses the WriteCodeFragment task to output generated assembly attributes. In MSBuild 14.0 update 1 this task
produces non-deterministic output. This is fixed in update 2 but until that is released we use a hand patched
version of the Task that is deterministic.
MSBuild bug: https://github.com/Microsoft/msbuild/issues/408
Bug tracking removing this: https://github.com/dotnet/roslyn/issues/8421
-->
<UsingTask TaskName="Roslyn.MSBuild.Util.WriteCodeFragmentEx" AssemblyFile="$(RoslynBuildUtilFilePath)" />
<!-- This file is imported by all projects at the beginning of the project files -->
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props"
Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props') AND '$(MSBuildProjectExtension)' != '.vcxproj'" />
Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props') AND '$(RoslynSdkProject)' != 'true'" />
<Import Project="$(RoslynNetSdkRootPath)Sdk.props" Condition="'$(RoslynSdkProject)' == 'true'" />
<Import Project="$(RoslynDiagnosticsPropsFilePath)" Condition="'$(UseRoslynAnalyzers)' == 'true' AND Exists('$(RoslynDiagnosticsPropsFilePath)')" />
<ImportGroup Label="WindowsImports" Condition="'$(OS)' == 'Windows_NT'">
<Import Project="$(NuGetPackageRoot)\Microsoft.VSSDK.BuildTools\$(VisualStudioBuildToolsVersion)\build\Microsoft.VsSDK.BuildTools.props" />
<Import Project="$(ToolsetCompilerPropsFilePath)" Condition="Exists('$(ToolsetCompilerPropsFilePath)') AND '$(BootstrapBuildPath)' == ''" />
</ImportGroup>
<ImportGroup Label="WindowsImports" Condition="'$(OS)' != 'Windows_NT'">
<!-- NuGet props aren't imported by default on *nix so we do that here -->
<Import Project="$(MSBuildBinPath)\Microsoft.NuGet.props" Condition="'$(OS)' != 'Windows_NT'" />
</ImportGroup>
<Import Project="$(ToolsetCompilerPropsFilePath)" Condition="Exists('$(ToolsetCompilerPropsFilePath)') AND '$(BootstrapBuildPath)' == ''" />
<!-- The Sdk props will set the rootnamespace to the assembly name when the property
is empty. Need to override this after -->
<PropertyGroup Condition="'$(RoslynSdkProject)' == 'true'" >
<DebugType>full</DebugType>
<RootNamespace Condition="'$(MSBuildTargetsLanguageName)' == 'VisualBasic'"></RootNamespace>
<DefineConstants Condition="'$(InitialDefineConstants)' != ''">$(InitialDefineConstants)</DefineConstants>
<!-- The NoWarn property is still being unconditionally set. https://github.com/dotnet/sdk/issues/752 -->
<NoWarn>$(NoWarn);1591</NoWarn>
</PropertyGroup>
</Project>
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<RoslynSdkProject>true</RoslynSdkProject>
<EnableDefaultItems>false</EnableDefaultItems>
</PropertyGroup>
<Import Project="Settings.props" />
</Project>
......@@ -4,7 +4,8 @@
<!-- This controls the version numbers of the build that we are producing -->
<Import Project="Dependencies.props" />
<Import Project="Packages.props" />
<Import Project="FixedPackages.props" />
<PropertyGroup>
<!-- This is the assembly version of Roslyn from the .NET assembly perspective. It should only be revved during significant point releases. -->
......
......@@ -10,6 +10,7 @@
<RootNamespace>Toolset</RootNamespace>
<AssemblyName>Toolset_DoNetUse</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7;ubuntu.14.04;osx.10.10</RuntimeIdentifiers>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
......@@ -20,9 +21,6 @@
<ItemGroup>
<Compile Include="Program.cs" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\Compilers\Core\MSBuildTask\MSBuildTask.csproj">
<Project>{7ad4fe65-9a30-41a6-8004-aa8f89bcb7f3}</Project>
......
{
"dependencies": { },
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { },
"ubuntu.14.04": { },
"osx.10.10": { }
}
}
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="$(MSBuildThisFileDirectory)..\Targets\Packages.props" />
<Import Project="$(MSBuildThisFileDirectory)..\Targets\FixedPackages.props" />
<PropertyGroup>
<TargetFramework>net46</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Net.Sdk" Version="$(MicrosoftNetSdkVersion)" />
<PackageReference Include="Microsoft.Build.Logging.StructuredLogger" Version="$(MicrosoftBuildLoggingStructuredLoggerVersion)" />
<PackageReference Include="MicroBuild.Core.Sentinel" Version="$(MicroBuildCoreSentinelVersion)" />
<PackageReference Include="MicroBuild.Core" Version="$(MicroBuildCoreVersion)" />
<PackageReference Include="MicroBuild.Plugins.SwixBuild" Version="$(MicroBuildPluginsSwixBuildVersion)" />
<PackageReference Include="Microsoft.NETCore.Platforms" Version="$(MicrosoftNETCorePlatformsVersion)" />
<PackageReference Include="Microsoft.DiaSymReader.Native" Version="$(MicrosoftDiaSymReaderNativeVersion)" />
<PackageReference Include="Microsoft.Net.Compilers" Version="$(MicrosoftNetCompilersVersion)" />
<PackageReference Include="Microsoft.NETCore.Compilers" Version="$(MicrosoftNETCoreCompilersVersion)" />
<PackageReference Include="Microsoft.Net.RoslynDiagnostics" Version="$(MicrosoftNetRoslynDiagnosticsVersion)" />
<PackageReference Include="FakeSign" Version="$(FakeSignVersion)" />
<PackageReference Include="xunit" Version="$(xunitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(xunitrunnerconsoleVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(xunitrunnervisualstudioVersion)" />
<PackageReference Include="Roslyn.Build.Util" Version="$(RoslynBuildUtilVersion)" />
<PackageReference Include="RoslynDependencies.OptimizationData" Version="$(RoslynDependenciesOptimizationDataVersion)" />
<PackageReference Include="RoslynTools.Microsoft.LocateVS" Version="$(RoslynToolsMicrosoftLocateVSVersion)" />
<PackageReference Include="RoslynTools.Microsoft.SignTool" Version="$(RoslynToolsMicrosoftSignToolVersion)" />
<PackageReference Include="RoslynTools.Microsoft.VSIXExpInstaller" Version="$(RoslynToolsMicrosoftVSIXExpInstallerVersion)" />
<PackageReference Include="RoslynTools.ReferenceAssemblies" Version="$(RoslynToolsReferenceAssembliesVersion)" />
<PackageReference Include="GitLink" Version="$(GitLinkVersion)" />
<PackageReference Include="Microsoft.VSSDK.BuildTools" Version="$(MicrosoftVSSDKBuildToolsVersion)" />
<PackageReference Include="ManagedEsent" Version="$(ManagedEsentVersion)" />
</ItemGroup>
</Project>
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="$(MSBuildThisFileDirectory)..\Targets\Packages.props" />
<Import Project="$(MSBuildThisFileDirectory)..\Targets\FixedPackages.props" />
<PropertyGroup>
<TargetFramework>net46</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Diagnostics.Tracing.TraceEvent" Version="$(MicrosoftDiagnosticsTracingTraceEventVersion)" />
<PackageReference Include="Newtonsoft.Json" Version="$(NewtonsoftJsonFixedVersion)" />
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="$(SystemIdentityModelTokensJwtVersion)" />
<PackageReference Include="System.IO.Compression.ZipFile" Version="$(SystemIOCompressionVersion)" />
</ItemGroup>
</Project>
using System;
public static class Program
{
public static void Main()
{
throw new Exception("Not a real program");
}
}
{
"dependencies": {
"Microsoft.Diagnostics.Tracing.TraceEvent": "1.0.35",
"Newtonsoft.Json": "9.0.1",
"System.IdentityModel.Tokens.Jwt": "5.0.0",
"System.IO.Compression.ZipFile": "4.0.1"
},
"frameworks": {
"net46": {}
}
}
{
"dependencies": {
"Microsoft.VSSDK.BuildTools": "14.3.25420"
},
"frameworks": {
"net46": {}
}
}
{
"dependencies": {
"Microsoft.VSSDK.BuildTools": "15.0.26124-RC3"
},
"frameworks": {
"net46": {}
}
}
\ No newline at end of file
{
"dependencies": {
"Microsoft.Build.Logging.StructuredLogger": "1.0.58",
"MicroBuild.Core.Sentinel": "1.0.0",
"MicroBuild.Core": "0.2.0",
"MicroBuild.Plugins.SwixBuild": "1.1.0-g0701ee829f",
"Microsoft.NETCore.Platforms": "1.1.0",
"Microsoft.DiaSymReader.Native": "1.5.0",
"Microsoft.Net.Compilers": "2.0.1",
"Microsoft.Net.RoslynDiagnostics": "2.0.0-beta1-61628-06",
"FakeSign": "0.9.2",
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194",
"Roslyn.Build.Util": "0.9.4-portable",
"RoslynDependencies.OptimizationData": "2.0.0-rc-61101-16",
"RoslynTools.Microsoft.LocateVS": "0.2.4-beta",
"RoslynTools.Microsoft.SignTool": "0.3.0-beta",
"RoslynTools.Microsoft.VSIXExpInstaller": "0.2.4-beta",
"RoslynTools.ReferenceAssemblies": "0.1.1",
"GitLink": "3.0.0-unstable0085"
},
"frameworks": {
"net461": {}
}
}
{
"fixedPackages": {
"Microsoft.VSSDK.BuildTools": [ "14.3.25420" ],
"Microsoft.VisualStudio.CoreUtility": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Editor": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Text.Data": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Text.Logic": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Text.UI": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Text.UI.Wpf": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Utilities": [ "[14.0.23205]" ],
"Microsoft.VisualStudio.Shell.14.0": [ "[14.0.23205]" ],
"Newtonsoft.Json": "9.0.1",
"System.Reflection.Metadata": "1.0.21",
"System.Collections.Immutable": "1.1.36",
"Microsoft.Build": {
"generateName": "Microsoft.Build.14",
"version": "14.3.0"
},
"Microsoft.Build.Tasks.Core": {
"generateName": "Microsoft.Build.Tasks.Core.14",
"version": "14.3.0"
}
},
"toolsetPackages": [
"Microsoft.VSSDK.BuildTools"
],
"generate": {
"msbuild": {
"path": "build\\Targets\\Dependencies.props",
"values": [
"Microsoft.Dia.*",
"Microsoft.Metadata.*",
"System.*",
"Microsoft.CodeAnalysis.Analyzers",
"Microsoft.VisualBasic",
"Microsoft.Composition",
"Microsoft.CSharp",
"Microsoft.VisualStudio.Debugger.Engine",
"Microsoft.VisualStudio.Debugger.Metadata",
"Microsoft.VisualStudio.InteractiveWindow",
"Microsoft.VisualStudio.VsInteractiveWindow",
"MicroBuild.*",
"ManagedEsent",
"Microsoft.CodeAnalysis.Elfie",
"xunit",
"RoslynTools.*",
"^Microsoft.?Build.*",
"GitLink",
"Microsoft.NETCore.Runtime.CoreCLR",
"Microsoft.VSSDK.BuildTools",
"NETStandard.Library",
"FakeSign"
]
}
},
"nuspecExcludes": [
"^packages.*",
"^Binaries.*",
......@@ -63,10 +6,5 @@
"^src\\\\Dependencies.*",
".*NuSpec.loc.*",
".*Templates.*"
],
"projectJsonExcludes": [
"^build\\\\MSBuildToolset.*",
"^src\\\\Tools\\\\Source\\\\CompilerGeneratorTools.*"
]
}
......@@ -54,13 +54,13 @@
"Exes\\InteractiveHost\\InteractiveHost.exe",
"Exes\\VBCSCompiler\\VBCSCompiler.exe",
"Exes\\csc\\csc.exe",
"Exes\\csccore\\csc.exe",
"Exes\\csccore\\csc.dll",
"Exes\\csi\\csi.exe",
"Exes\\csicore\\csi.exe",
"Exes\\csicore\\csi.dll",
"Exes\\vbc\\vbc.exe",
"Exes\\vbccore\\vbc.exe",
"Exes\\vbccore\\vbc.dll",
"Exes\\vbi\\vbi.exe",
"Exes\\vbicore\\vbi.exe",
"Exes\\vbicore\\vbi.dll",
"Vsix\\CompilerExtension\\Roslyn.Compilers.Extension.dll",
"Vsix\\Templates\\Roslyn.Templates.dll",
"Vsix\\VisualStudioDiagnosticsWindow\\Roslyn.VisualStudio.DiagnosticsWindow.dll",
......@@ -133,11 +133,13 @@
"System.Diagnostics.FileVersionInfo.dll",
"System.Diagnostics.Process.dll",
"System.Diagnostics.StackTrace.dll",
"System.IO.dll",
"System.IO.Compression.dll",
"System.IO.FileSystem.dll",
"System.IO.FileSystem.DriveInfo.dll",
"System.IO.FileSystem.Primitives.dll",
"System.IO.Pipes.dll",
"System.Reflection.dll",
"System.Reflection.Metadata.dll",
"System.Runtime.InteropServices.RuntimeInformation.dll",
"System.Security.AccessControl.dll",
......
......@@ -44,6 +44,7 @@ function Exec-Command([string]$command, [string]$commandArgs) {
$startInfo.RedirectStandardOutput = $true
$startInfo.UseShellExecute = $false
$startInfo.CreateNoWindow = $true
$startInfo.WorkingDirectory = Get-Location
$process = New-Object System.Diagnostics.Process
$process.StartInfo = $startInfo
......@@ -133,12 +134,12 @@ function Create-Directory([string]$dir) {
# Return the version of the NuGet package as used in this repo
function Get-PackageVersion([string]$name) {
$name = $name.Replace(".", "")
$deps = Join-Path $repoDir "build\Targets\Dependencies.props"
$deps = Join-Path $repoDir "build\Targets\Packages.props"
$nodeName = "$($name)Version"
$x = [xml](Get-Content -raw $deps)
$node = $x.Project.PropertyGroup[$nodeName]
if ($node -eq $null) {
throw "Cannot find package $name in Dependencies.props"
throw "Cannot find package $name in Packages.props"
}
return $node.InnerText
......@@ -223,7 +224,7 @@ function Get-MSBuildKindAndDir([switch]$xcopy = $false) {
# Locate the xcopy version of MSBuild
function Get-MSBuildDirXCopy() {
$version = "0.1.2"
$version = "0.2.0-alpha"
$name = "RoslynTools.MSBuild"
$p = Ensure-BasicTool $name $version
$p = Join-Path $p "tools\msbuild"
......@@ -258,12 +259,17 @@ function Clear-PackageCache() {
# Restore a single project
function Restore-Project([string]$fileName, [string]$nuget, [string]$msbuildDir) {
$nugetConfig = Join-Path $repoDir "nuget.config"
$filePath = Join-Path $repoDir $fileName
Exec-Block { & $nuget restore -verbosity quiet -configfile $nugetConfig -MSBuildPath $msbuildDir -Project2ProjectTimeOut 1200 $filePath } | Out-Null
$filePath = $fileName
if (-not (Test-Path $filePath)) {
$filePath = Join-Path $repoDir $fileName
}
Exec-Block { & $nuget restore -verbosity quiet -configfile $nugetConfig -MSBuildPath $msbuildDir -Project2ProjectTimeOut 1200 $filePath }
}
# Restore all of the projects that the repo consumes
function Restore-Packages([switch]$clean = $false, [string]$msbuildDir = "", [string]$project = "") {
function Restore-Packages([string]$msbuildDir = "", [string]$project = "") {
$nuget = Ensure-NuGet
if ($msbuildDir -eq "") {
$msbuildDir = Get-MSBuildDir
......@@ -271,38 +277,29 @@ function Restore-Packages([switch]$clean = $false, [string]$msbuildDir = "", [st
Write-Host "Restore using MSBuild at $msbuildDir"
if ($clean) {
Write-Host "Deleting project.lock.json files"
Get-ChildItem $repoDir -re -in project.lock.json | Remove-Item
}
if ($project -ne "") {
Write-Host "Restoring project $project"
Restore-Project -fileName $project -nuget $nuget -msbuildDir $msbuildDir
Restore-Project -fileName $project -msbuildDir $msbuildDir -nuget $nuget
}
else {
$all = @(
"Toolsets:build\ToolsetPackages\project.json",
"Toolsets (Dev14 VS SDK build tools):build\ToolsetPackages\dev14.project.json",
"Toolsets (Dev15 VS SDK RC build tools):build\ToolsetPackages\dev15rc.project.json",
"Base Toolset:build\ToolsetPackages\BaseToolset.csproj",
"Closed Toolset:build\ToolsetPackages\ClosedToolset.csproj",
"Roslyn:Roslyn.sln",
"Samples:src\Samples\Samples.sln",
"Templates:src\Setup\Templates\Templates.sln",
"Toolsets Compiler:build\Toolset\Toolset.csproj",
"Roslyn:Roslyn.sln",
"DevDivInsertionFiles:src\Setup\DevDivInsertionFiles\DevDivInsertionFiles.sln",
"DevDiv Roslyn Packages:src\Setup\DevDivPackages\Roslyn\project.json",
"DevDiv Debugger Packages:src\Setup\DevDivPackages\Debugger\project.json")
"DevDivInsertionFiles:src\Setup\DevDivInsertionFiles\DevDivInsertionFiles.sln")
foreach ($cur in $all) {
$both = $cur.Split(':')
Write-Host "Restoring $($both[0])"
Restore-Project -fileName $both[1] -nuget $nuget -msbuildDir $msbuildDir
Restore-Project -fileName $both[1] -msbuildDir $msbuildDir -nuget $nuget
}
}
}
# Restore all of the projects that the repo consumes
function Restore-All([switch]$clean = $false, [string]$msbuildDir = "") {
Restore-Packages -clean:$clean -msbuildDir $msbuildDir
function Restore-All([string]$msbuildDir = "") {
Restore-Packages -msbuildDir $msbuildDir
}
# This is a script to convert from our legacy CMD file / format for arguments
# to the Powershell - version.
Set-StrictMode -version 2.0
$ErrorActionPreference = "Stop"
$newArgs = @()
foreach ($arg in $args) {
if (($arg.Length -gt 0) -and ($arg[0] -eq '/')) {
$arg = '-' + $arg.Substring(1)
}
if ($arg -eq "-debug") {
$arg = "-release:`$false"
}
if ($arg -eq "-test32") {
$arg = "-test64:`$false"
}
$newArgs += $arg
}
Write-Host "!!!This script is legacy and will be deleted. Please call build/scripts/cibuild.cmd directly!!!"
Write-Host "New Args are $newArgs"
$script = Join-Path $PSScriptRoot "cibuild.ps1"
Invoke-Expression "$script $newArgs"
if ((-not $?) -or ($lastexitcode -ne 0)) {
exit 1
}
Write-Host "!!!This script is legacy and will be deleted. Please call build/scripts/cibuild.cmd directly!!!"
@if not defined EchoOn @echo off
REM This is a place holder script. Eventually the cibuild.cmd in the root will be deleted
REM and this will be the primary file.
call "%~dp0\..\..\cibuild.cmd" %*
@echo off
powershell -noprofile -executionPolicy RemoteSigned -file "%~dp0\cibuild.ps1" %*
[CmdletBinding(PositionalBinding=$false)]
param (
[switch]$test32 = $false,
[switch]$test64 = $false,
[switch]$testDeterminism = $false,
[switch]$testBuildCorrectness = $false,
......@@ -7,12 +8,11 @@ param (
[switch]$testPerfRun = $false,
[switch]$testVsi = $false,
[switch]$testVsiNetCore = $false,
[switch]$skipTest = $false,
[switch]$testDesktop = $false,
[switch]$testCoreClr = $false,
[switch]$skipRestore = $false,
[switch]$skipCommitPrinting = $false,
[switch]$release = $false,
[switch]$skipCoreClrTests = $false,
[switch]$skipDesktopTests = $false,
[parameter(ValueFromRemainingArguments=$true)] $badArgs)
Set-StrictMode -version 2.0
......@@ -20,14 +20,14 @@ $ErrorActionPreference = "Stop"
function Print-Usage() {
Write-Host "Usage: cibuild.cmd [-debug^|-release] [-test32^|-test64] [-restore]"
Write-Host " -debug Perform debug build. This is the default."
Write-Host " -release Perform release build."
Write-Host " -test32 Run unit tests in the 32-bit runner. This is the default."
Write-Host " -test64 Run units tests in the 64-bit runner."
Write-Host " -$testVsi Run all integration tests."
Write-Host " -$testVsiNetCore Run just dotnet core integration tests."
Write-Host " -skipCoreClrTests Skip running unit tests on CoreCLR"
Write-Host " -skipDesktopTests Skip running unit tests on Desktop"
Write-Host " -debug Perform debug build. This is the default."
Write-Host " -release Perform release build."
Write-Host " -test32 Run unit tests in the 32-bit runner. This is the default."
Write-Host " -test64 Run units tests in the 64-bit runner."
Write-Host " -testDesktop Run desktop unit tests"
Write-Host " -testCoreClr Run CoreClr unit tests"
Write-Host " -testVsi Run all integration tests."
Write-Host " -testVsiNetCore Run just dotnet core integration tests."
}
function Run-MSBuild() {
......@@ -114,7 +114,7 @@ try {
Terminate-BuildProcesses
if ($testDeterminism) {
Exec-Block { & ".\build\scripts\test-determinism.ps1" -buildDir $bootstrapDir } | Out-Host
Exec-Block { & ".\build\scripts\test-determinism.ps1" -bootstrapDir $bootstrapDir } | Out-Host
Terminate-BuildProcesses
exit 0
}
......@@ -157,18 +157,15 @@ try {
exit 0
}
$target = if ($skipTest) { "Build" } else { "BuildAndTest" }
$test64Arg = if ($test64) { "true" } else { "false" }
$test64Arg = if ($test64 -and (-not $test32)) { "true" } else { "false" }
$testVsiArg = if ($testVsi) { "true" } else { "false" }
$skipCoreClrTestsArg = if ($skipCoreClrTests) { "true" } else { "false" }
$skipDesktopTestsArg = if ($skipDesktopTests) { "true" } else { "false" }
$buildLog = Join-Path $binariesdir "Build.log"
if ($testVsiNetCore) {
Run-MSBuild /p:BootstrapBuildPath="$bootstrapDir" BuildAndTest.proj /t:$target /p:Configuration=$buildConfiguration /p:Test64=$test64Arg /p:TestVsi=true /p:SkipCoreClrTest=$skipCoreClrTestsArg /p:SkipDesktopTest=$skipDesktopTestsArg /p:Trait="Feature=NetCore" /p:PathMap="$($repoDir)=q:\roslyn" /p:Feature=pdb-path-determinism /fileloggerparameters:LogFile="$buildLog"`;verbosity=diagnostic /p:DeployExtension=false
Run-MSBuild /p:BootstrapBuildPath="$bootstrapDir" BuildAndTest.proj /p:Configuration=$buildConfiguration /p:Test64=$test64Arg /p:TestVsi=true /p:Trait="Feature=NetCore" /p:PathMap="$($repoDir)=q:\roslyn" /p:Feature=pdb-path-determinism /fileloggerparameters:LogFile="$buildLog"`;verbosity=diagnostic /p:DeployExtension=false
}
else {
Run-MSBuild /p:BootstrapBuildPath="$bootstrapDir" BuildAndTest.proj /t:$target /p:Configuration=$buildConfiguration /p:Test64=$test64Arg /p:TestVsi=$testVsiArg /p:SkipCoreClrTest=$skipCoreClrTestsArg /p:SkipDesktopTest=$skipDesktopTestsArg /p:PathMap="$($repoDir)=q:\roslyn" /p:Feature=pdb-path-determinism /fileloggerparameters:LogFile="$buildLog"`;verbosity=diagnostic /p:DeployExtension=false
Run-MSBuild /p:BootstrapBuildPath="$bootstrapDir" BuildAndTest.proj /p:Configuration=$buildConfiguration /p:Test64=$test64Arg /p:TestVsi=$testVsiArg /p:TestDesktop=$testDesktop /p:TestCoreClr=$testCoreClr /p:PathMap="$($repoDir)=q:\roslyn" /p:Feature=pdb-path-determinism /fileloggerparameters:LogFile="$buildLog"`;verbosity=diagnostic /p:DeployExtension=false
}
exit 0
......
param ([string]$nugetVersion = "3.6.0-beta1")
param ([string]$nugetVersion = "4.1.0")
Set-StrictMode -version 2.0
$ErrorActionPreference="Stop"
......
......@@ -8,13 +8,9 @@ Set-StrictMode -version 2.0
$ErrorActionPreference="Stop"
function Run-Tool($tool, $toolArgs) {
$toolName = Split-path -leaf $tool
$toolName = Split-Path -leaf $tool
Write-Host "Running $toolName"
if (-not (Test-Path $tool)) {
throw "$tool does not exist"
}
Exec-Command "$coreRun" "`"$tool`" $toolArgs" | Out-Host
Exec-Command $tool $toolArgs | Out-Host
}
function Run-LanguageCore($language, $languageSuffix, $languageDir, $syntaxTool, $errorFactsTool, $generatedDir, $generatedTestDir) {
......@@ -87,20 +83,56 @@ function Run-GetText() {
}
}
# Build all of the tools that we need to generate the syntax trees and ensure
# they are in a published / runnable state.
function Build-Tools() {
$msbuild = Ensure-MSBuild
$msbuildDir = Split-Path -parent $msbuild
$nuget = Ensure-NuGet
$list = @(
'boundTreeGenerator;BoundTreeGenerator;BoundTreeGenerator\CompilersBoundTreeGenerator.csproj',
'csharpErrorFactsGenerator;CSharpErrorFactsGenerator;CSharpErrorFactsGenerator\CSharpErrorFactsGenerator.csproj',
'csharpSyntaxGenerator;CSharpSyntaxGenerator;CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj',
'basicErrorFactsGenerator;VBErrorFactsGenerator;VisualBasicErrorFactsGenerator\VisualBasicErrorFactsGenerator.vbproj',
'basicSyntaxGenerator;VBSyntaxGenerator;VisualBasicSyntaxGenerator\VisualBasicSyntaxGenerator.vbproj')
Push-Location (Join-Path $repoDir 'src\Tools\Source\CompilerGeneratorTools\Source')
try {
foreach ($item in $list) {
$all = $item.Split(';')
$varName = $all[0]
$exeName = $all[1]
$proj = $all[2]
$fileName = [IO.Path]::GetFileNameWithoutExtension($proj)
Write-Host "Building $fileName"
Restore-Project $proj -nuget $nuget -msbuildDir $msbuildDir
Exec-Command $msbuild "/t:Publish /p:Configuration=Debug /p:RuntimeIdentifier=win7-x64 /v:m $proj" | Out-Null
$exePath = Join-Path $binariesDir "Debug\Exes\$fileName\win7-x64\publish\$($exeName).exe"
if (-not (Test-Path $exePath)) {
Write-Host "Did not find exe after build: $exePath"
throw "Missing exe"
}
Set-Variable -Name $varName -Value $exePath -Scope Script
}
}
finally {
Pop-Location
}
}
try {
. (Join-Path $PSScriptRoot "build-utils.ps1")
Build-Tools
$compilerToolsDir = Join-Path $binariesDir "Debug\Exes\DeployCompilerGeneratorToolsRuntime"
$csharpSyntaxGenerator = Join-Path $compilerToolsDir "CSharpSyntaxGenerator.exe"
$csharpErrorFactsGenerator = Join-Path $compilerToolsDir "CSharpErrorFactsGenerator.exe"
$csharpDir = Join-Path $repoDir "src\Compilers\CSharp\Portable"
$csharpTestDir = Join-Path $repoDir "src\Compilers\CSharp\Test\Syntax"
$basicSyntaxGenerator = Join-Path $compilerToolsDir "VBSyntaxGenerator.exe"
$basicErrorFactsGenerator = Join-Path $compilerToolsDir "VBErrorFactsGenerator.exe"
$basicDir = Join-Path $repoDir "src\Compilers\VisualBasic\Portable"
$basicTestDir = Join-Path $repoDir "src\Compilers\VisualBasic\Test\Syntax"
$boundTreeGenerator = Join-Path $compilerToolsDir "BoundTreeGenerator.exe"
$coreRun = Join-Path $compilerToolsDir "CoreRun.exe"
Run-Language "CSharp" "cs" $csharpDir $csharpTestDir $csharpSyntaxGenerator $csharpErrorFactsGenerator
Run-Language "VB" "vb" $basicDir $basicTestDir $basicSyntaxGenerator $basicErrorFactsGenerator
......
#!/usr/bin/env bash
ROSLYN_TOOLSET_PATH=$1
NUGET_EXE=$2
DOTNET_PATH=$ROSLYN_TOOLSET_PATH/../dotnet-cli/dotnet
# Workaround, see https://github.com/dotnet/roslyn/issues/10210
export HOME=$(cd ~ && pwd)
echo "Restoring toolset packages"
$DOTNET_PATH restore -v Minimal --disable-parallel $(pwd)/build/ToolsetPackages/project.json
dotnet restore -v Minimal --disable-parallel $(pwd)/build/ToolsetPackages/BaseToolset.csproj
echo "Restore CrossPlatform.sln"
$ROSLYN_TOOLSET_PATH/RoslynRestore $(pwd)/CrossPlatform.sln $NUGET_EXE $DOTNET_PATH
dotnet restore $(pwd)/CrossPlatform.sln
......@@ -23,18 +23,17 @@ try {
Push-Location $repoDir
# Need to parse out the current NuGet package version of Structured Logger
[xml]$deps = Get-Content (Join-Path $repoDir "build\Targets\Dependencies.props")
$structuredLoggerVersion = $deps.Project.PropertyGroup.MicrosoftBuildLoggingStructuredLoggerVersion
$structuredLoggerPath = Join-Path (Get-PackagesDir) "Microsoft.Build.Logging.StructuredLogger\$structuredLoggerVersion\lib\net46\StructuredLogger.dll"
$structuredLoggerPath = Join-Path (Get-PackageDir "Microsoft.Build.Logging.StructuredLogger") "lib\net46\StructuredLogger.dll"
$configDir = Join-Path $binariesDir $config
$logPath = Join-Path $configDir "build.xml"
$solution = Join-Path $repoDir "Roslyn.sln"
if ($msbuild -eq "") {
$msbuild = Ensure-MSBuild
}
Write-Host "Building Roslyn.sln with logging support"
Exec-Command $msbuild "/v:m /m /logger:StructuredLogger,$structuredLoggerPath;$logPath /nodeReuse:false /p:DeployExtension=false Roslyn.sln"
Exec-Command $msbuild "/v:m /m /p:Configuration=$config /logger:StructuredLogger,$structuredLoggerPath;$logPath /nodeReuse:false /p:DeployExtension=false $solution"
Write-Host ""
# Verify the state of our various build artifacts
......@@ -43,12 +42,6 @@ try {
Exec-Command $buildBossPath "Roslyn.sln Compilers.sln src\Samples\Samples.sln CrossPlatform.sln build\Targets $logPath"
Write-Host ""
# Verify the state of our project.jsons
Write-Host "Running RepoUtil"
$repoUtilPath = Join-Path $configDir "Exes\RepoUtil\RepoUtil.exe"
Exec-Command $repoUtilPath verify
Write-Host ""
# Verify the state of our generated syntax files
Write-Host "Checking generated compiler files"
Exec-Block { & (Join-Path $PSScriptRoot "generate-compiler-code.ps1") -test }
......
[CmdletBinding(PositionalBinding=$false)]
param ( [string]$buildDir = $(throw "Need a directory containing a compiler build to test with"),
param ( [string]$bootstrapDir = $(throw "Need a directory containing a compiler build to test with"),
[bool]$debugDeterminism = $false)
Set-StrictMode -version 2.0
......@@ -21,7 +21,8 @@ $script:dataMap = @{}
function Run-Build() {
param ( [string]$rootDir = $(throw "Need a root directory to build"),
[string]$pathMapBuildOption = "")
[string]$pathMapBuildOption = "",
[switch]$restore = $false)
$sln = Join-Path $rootDir "Roslyn.sln"
$debugDir = Join-Path $rootDir "Binaries\Debug"
......@@ -39,8 +40,13 @@ function Run-Build() {
Write-Host "Cleaning the Binaries"
Exec-Command $msbuild "/nologo /v:m /nodeReuse:false /t:clean $sln"
if ($restore) {
Write-Host "Restoring the packages"
Restore-Project -fileName $sln -nuget (Ensure-NuGet) -msbuildDir (Split-Path -parent $msbuild)
}
Write-Host "Building the Solution"
Exec-Command $msbuild "/nologo /v:m /nodeReuse:false /m /p:DebugDeterminism=true /p:BootstrapBuildPath=$script:buildDir /p:Features=`"debug-determinism;pdb-path-determinism`" /p:UseRoslynAnalyzers=false $pathMapBuildOption $sln"
Exec-Command $msbuild "/nologo /v:m /nodeReuse:false /m /p:DebugDeterminism=true /p:BootstrapBuildPath=$script:bootstrapDir /p:Features=`"debug-determinism;pdb-path-determinism`" /p:UseRoslynAnalyzers=false $pathMapBuildOption $sln"
}
finally {
Pop-Location
......@@ -50,13 +56,14 @@ function Run-Build() {
function Run-Analysis() {
param ( [string]$rootDir = $(throw "Need a root directory to build"),
[bool]$buildMap = $(throw "Whether to build the map or analyze it"),
[string]$pathMapBuildOption = "")
[string]$pathMapBuildOption = "",
[switch]$restore = $false)
$debugDir = Join-Path $rootDir "Binaries\Debug"
$errorList = @()
$allGood = $true
Run-Build $rootDir $pathMapBuildOption
Run-Build $rootDir $pathMapBuildOption -restore:$restore
Push-Location $debugDir
......@@ -164,7 +171,7 @@ function Run-Test() {
$altRootDir = Join-Path $origBinDir "q"
& robocopy $origRootDir $altRootDir /E /XD $origBinDir /XD ".git" /njh /njs /ndl /nc /ns /np /nfl
$pathMapBuildOption = "/p:PathMap=`"$altRootDir=$origRootDir`""
Run-Analysis -rootDir $altRootDir -buildMap $false -pathMapBuildOption $pathMapBuildOption
Run-Analysis -rootDir $altRootDir -buildMap $false -pathMapBuildOption $pathMapBuildOption -restore
Remove-Item -re -fo $altRootDir
}
......@@ -172,8 +179,8 @@ try {
. (Join-Path $PSScriptRoot "build-utils.ps1")
$msbuild = Ensure-MSBuild
if (-not ([IO.Path]::IsPathRooted($script:buildDir))) {
Write-Host "The build path must be absolute"
if (-not ([IO.Path]::IsPathRooted($script:bootstrapDir))) {
Write-Host "The bootstrap build path must be absolute"
exit 1
}
......
......@@ -81,11 +81,6 @@ if [ "$CLEAN_RUN" == "true" ]; then
git clean -dxf .
fi
if [ "$USE_CACHE" == "false" ]; then
echo Clean out the toolsets
$MAKE clean_toolset
fi
if [ "$SKIP_COMMIT_PRINTING" == "false" ]; then
echo Building this commit:
git show --no-patch --pretty=raw HEAD
......
......@@ -13,10 +13,12 @@ Using the command line Roslyn can be developed using the following pattern:
1. [Visual Studio 2017](https://www.visualstudio.com/downloads/)
- Ensure C#, VB, MSBuild and Visual Studio Extensibility are included in the selected work loads
- Ensure Visual Studio is on at least update 1
1. Run Restore.cmd
1. Open Roslyn.sln
If you already installed Visual Studio and need to add the necessary work loads do the followig:
If you already installed Visual Studio and need to add the necessary work loads or move to update 1
do the following:
- Open the vs_installer. Typically located at "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe"
- The Visual Studio installation will be listed under the Installed section
......
Moving dotnet/roslyn to the new SDK
=============
# Overview
This document tracks our progress in moving Roslyn to the new SDK and project system. The goal of
this initial push is explicitly to remove the use of project.json from our code base. In doing
many of our projects will move to target the new SDK, but not all. Once this change is merged
we will do further cleanup to move everything to the new SDK.
The projects in our repo that need to be converted break down into the following categories:
- PCL: This will be converted to the new SDK and Project System
- Desktop 4.6: Package consumption will change to PackageReference
- Desktop 2.0: Package consumption will change to PackageReference
The conversion of our projects is being almost entirely automated with the [ConvertPackageRef Tool](https://github.com/jaredpar/ConvertPackageRef).
This automation is always checked in as a single commit titled "Generated code". It is frequently
replaced via a rebase as the tool improves.
# Branch State
All deliberately disabled features are marked with the comment "DO NOT MERGE". These entries will
be removed + fixed before merging
## Working
- Developer work flow: Restore.cmd, Build.cmd, Test.cmd
- Editing in Visual Studio
## Jenkins Legs
This set of Jenkins legs is considered functional and must pass on every merge:
- Unit tests debug / release on x86 / amd64
- Build correctness
- Microbuild
- CoreClr
- Linux
- Integration Tests
## Big Items
These are the big items that are broken and need some wokr
- RepoUtil: needs to understand PackageReference and can be massively simplified now
- Delete the DeployCompilerGeneratorToolsRuntime project. Not neeeded anymor
......@@ -62,7 +62,7 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description("Windows ${configuration} tests on ${buildTarget}")
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '/debug' : '/release'} ${(buildTarget == 'unit32') ? '/test32' : '/test64'} /skipCoreClrTests""")
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '-debug' : '-release'} ${(buildTarget == 'unit32') ? '-test32' : '-test64'} -testDesktop""")
}
}
......@@ -82,7 +82,7 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description("Windows CoreCLR unit tests")
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '/debug' : '/release'} /skipDesktopTests""")
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '-debug' : '-release'} -testCoreClr""")
}
}
......@@ -151,7 +151,7 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description('Determinism tests')
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd /testDeterminism""")
batchFile(""".\\build\\scripts\\cibuild.cmd -testDeterminism""")
}
}
......@@ -167,7 +167,7 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description('Build correctness tests')
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd /testBuildCorrectness""")
batchFile(""".\\build\\scripts\\cibuild.cmd -testBuildCorrectness""")
}
}
......@@ -183,13 +183,13 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description('perf test correctness')
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd /testPerfCorrectness""")
batchFile(""".\\build\\scripts\\cibuild.cmd -testPerfCorrectness""")
}
}
def triggerPhraseOnly = false
def triggerPhraseExtra = "perf-correctness"
Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto-dev15-rc')
Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-dev15-1')
addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly)
}
......@@ -217,13 +217,13 @@ commitPullList.each { isPr ->
def myJob = job(jobName) {
description("Windows ${configuration} tests on ${buildTarget}")
steps {
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '/debug' : '/release'} /testVsi""")
batchFile(""".\\build\\scripts\\cibuild.cmd ${(configuration == 'debug') ? '-debug' : '-release'} -testVsi""")
}
}
def triggerPhraseOnly = false
def triggerPhraseExtra = ""
Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto-dev15-0')
Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-dev15-1')
Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml')
addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly)
}
......
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -10,8 +10,8 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CSharp.CodeStyle</AssemblyName>
<TargetExt>.dll</TargetExt>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -48,9 +48,6 @@
<LastGenOutput>CSharpCodeStyleResources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
......
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -10,8 +10,8 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes</AssemblyName>
<TargetExt>.dll</TargetExt>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -63,9 +63,6 @@
<LastGenOutput>CSharpCodeStyleFixesResources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
......
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<NonShipping>True</NonShipping>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -11,8 +11,8 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CSharp.CodeStyle.UnitTests</AssemblyName>
<TargetExt>.dll</TargetExt>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<RoslynProjectType>UnitTestPortable</RoslynProjectType>
</PropertyGroup>
......@@ -53,7 +53,9 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
<ItemGroup>
<None Include="project.json" />
<PackageReference Include="xunit" Version="$(xunitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(xunitrunnerconsoleVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(xunitrunnervisualstudioVersion)" />
</ItemGroup>
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -9,8 +9,8 @@
<OutputType>Library</OutputType>
<RootNamespace>Microsoft.CodeAnalysis</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CodeStyle</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -45,13 +45,9 @@
<LastGenOutput>CodeStyleResources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
</ItemGroup>
<ItemGroup />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -9,8 +9,8 @@
<OutputType>Library</OutputType>
<RootNamespace>Microsoft.CodeAnalysis</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CodeStyle.Fixes</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -50,13 +50,9 @@
<LastGenOutput>CodeStyleFixesResources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
</ItemGroup>
<ItemGroup />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<NonShipping>True</NonShipping>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -10,8 +10,8 @@
<OutputType>Library</OutputType>
<RootNamespace>Microsoft.CodeAnalysis</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CodeStyle.UnitTests</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<RoslynProjectType>UnitTestPortable</RoslynProjectType>
</PropertyGroup>
......@@ -40,8 +40,9 @@
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<PackageReference Include="xunit" Version="$(xunitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(xunitrunnerconsoleVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(xunitrunnervisualstudioVersion)" />
</ItemGroup>
<ItemGroup />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
<ProjectGuid>{2531A8C4-97DD-47BC-A79C-B7846051E137}</ProjectGuid>
<OutputType>Library</OutputType>
<AssemblyName>Microsoft.CodeAnalysis.VisualBasic.CodeStyle</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<ProjectTypeGuids>{14182A97-F7F0-4C62-8B27-98AA8AE2109A};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
</PropertyGroup>
<ItemGroup Label="Project References">
<ProjectReference Include="..\..\..\Compilers\Core\Portable\CodeAnalysis.csproj">
......@@ -47,9 +46,6 @@
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
......
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
<ProjectGuid>{0141285D-8F6C-42C7-BAF3-3C0CCD61C716}</ProjectGuid>
<OutputType>Library</OutputType>
<AssemblyName>Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<ProjectTypeGuids>{14182A97-F7F0-4C62-8B27-98AA8AE2109A};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
</PropertyGroup>
<ItemGroup Label="Project References">
<ProjectReference Include="..\..\..\Compilers\Core\Portable\CodeAnalysis.csproj">
......@@ -62,9 +61,6 @@
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PublicAPI Include="PublicAPI.Shipped.txt" />
<PublicAPI Include="PublicAPI.Unshipped.txt" />
......
{
"dependencies": {
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<NonShipping>True</NonShipping>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -9,9 +9,8 @@
<ProjectGuid>{E512C6C1-F085-4AD7-B0D9-E8F1A0A2A510}</ProjectGuid>
<OutputType>Library</OutputType>
<AssemblyName>Microsoft.CodeAnalysis.VisualBasic.CodeStyle.UnitTests</AssemblyName>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{14182A97-F7F0-4C62-8B27-98AA8AE2109A};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net45+win8;dotnet</PackageTargetFallback>
<RoslynProjectType>UnitTestPortable</RoslynProjectType>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -51,7 +50,9 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
<ItemGroup>
<None Include="project.json" />
<PackageReference Include="xunit" Version="$(xunitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(xunitrunnerconsoleVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(xunitrunnervisualstudioVersion)" />
</ItemGroup>
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
</Project>
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"netstandard1.3": {
"imports": [ "portable-net45+win8", "dotnet" ]
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
<RuntimeIdentifier>x64</RuntimeIdentifier>
<NuGetRuntimeIdentifier>$(BaseNuGetRuntimeIdentifier)-$(RuntimeIdentifier)</NuGetRuntimeIdentifier>
<ProjectGuid>{E3CD2895-76A8-4D11-A316-EA67CB5EA42C}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>Microsoft.CodeAnalysis.CSharp.CommandLine</RootNamespace>
......@@ -17,8 +15,9 @@
<ServiceablePackage>true</ServiceablePackage>
<AutoGenerateBindingRedirects>True</AutoGenerateBindingRedirects>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netcoreapp1.1</TargetFramework>
<RuntimeIdentifiers>win7-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;osx.10.12-x64</RuntimeIdentifiers>
<PackageTargetFallback>portable-net452</PackageTargetFallback>
<NoStdLib>true</NoStdLib>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -31,8 +30,10 @@
<Name>CSharpCodeAnalysis</Name>
</ProjectReference>
</ItemGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
<ItemGroup>
<PackageReference Include="Microsoft.NETCore.App" Version="$(MicrosoftNETCoreAppVersion)" />
<PackageReference Include="System.Runtime.Loader" Version="$(SystemRuntimeLoaderVersion)" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\Shared\BuildClient.cs">
<Link>BuildClient.cs</Link>
......@@ -51,15 +52,6 @@
<ItemGroup>
<InternalsVisibleToTest Include="Roslyn.Compilers.CSharp.CommandLine.UnitTests" />
</ItemGroup>
<ItemGroup>
<None Include="csc.cmd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="csc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="project.json" />
</ItemGroup>
<Import Project="..\..\Core\CommandLine\CommandLine.projitems" Label="Shared" />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
</Project>
#!/bin/sh
THISDIR=$(dirname $0)
# CoreCLR / CoreFX does not execute reliably with an unlimited
# stack. Make on Linux can execute child processes with an
# unlimited stack so force it back to a known good limit
#
# https://github.com/dotnet/coreclr/issues/2467
ulimit -s 8192
chmod +x $THISDIR/corerun 2>/dev/null
$THISDIR/corerun $THISDIR/csc.exe "$@"
echo off
%~dp0\corerun.exe %~dp0\csc.exe %*
{
"dependencies": {
"Microsoft.NETCore.Portable.Compatibility": "1.0.1",
"Microsoft.NETCore.Platforms": "1.1.0",
"Microsoft.NETCore.Runtime.CoreCLR": "1.1.0",
"Microsoft.NETCore.TestHost": "1.1.0",
"System.AppContext": "4.3.0",
"System.Collections": "4.3.0",
"System.Collections.Concurrent": "4.3.0",
"System.Collections.Immutable": "1.3.1",
"System.Console": "4.3.0",
"System.Diagnostics.Debug": "4.3.0",
"System.Diagnostics.FileVersionInfo": "4.3.0",
"System.Diagnostics.Process": "4.3.0",
"System.Diagnostics.StackTrace": "4.3.0",
"System.Diagnostics.Tools": "4.3.0",
"System.Dynamic.Runtime": "4.3.0",
"System.Globalization": "4.3.0",
"System.IO.Compression": "4.3.0",
"System.IO.FileSystem": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
"System.IO.FileSystem.Watcher": "4.3.0",
"System.IO.Pipes": "4.3.0",
"System.Linq": "4.3.0",
"System.Linq.Expressions": "4.3.0",
"System.Net.NameResolution": "4.3.0",
"System.Net.Sockets": "4.3.0",
"System.Reflection": "4.3.0",
"System.Reflection.Primitives": "4.3.0",
"System.Resources.ResourceManager": "4.3.0",
"System.Runtime": "4.3.0",
"System.Runtime.Extensions": "4.3.0",
"System.Runtime.Handles": "4.3.0",
"System.Runtime.InteropServices": "4.3.0",
"System.Runtime.Loader": "4.3.0",
"System.Runtime.Numerics": "4.3.0",
"System.Runtime.Serialization.Primitives": "4.3.0",
"System.Runtime.Serialization.Json": "4.3.0",
"System.Security.Cryptography.Algorithms": "4.3.0",
"System.Security.Cryptography.Encoding": "4.3.0",
"System.Security.Cryptography.X509Certificates": "4.3.0",
"System.Text.Encoding": "4.3.0",
"System.Text.Encoding.CodePages": "4.3.0",
"System.Text.Encoding.Extensions": "4.3.0",
"System.Threading": "4.3.0",
"System.Threading.Tasks": "4.3.0",
"System.Threading.Tasks.Parallel": "4.3.0",
"System.Threading.Thread": "4.3.0",
"System.Xml.ReaderWriter": "4.3.0",
"System.Xml.XDocument": "4.3.0",
"System.Xml.XmlDocument": "4.3.0",
"System.Xml.XPath.XDocument": "4.3.0"
},
"frameworks": {
"NETCoreApp1.0": {
"imports": "portable-net452"
}
},
"runtimes": {
"win7-x64": { },
"ubuntu.14.04-x64": { },
"ubuntu.16.04-x64": { },
"osx.10.12-x64": { }
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -10,11 +10,16 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis.CSharp</AssemblyName>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<ServiceablePackage>true</ServiceablePackage>
<CodeAnalysisRuleSet>..\CSharpCodeAnalysisRules.ruleset</CodeAnalysisRuleSet>
<!-- This is required to prevent downgrade references from CscCore/VbcCode since we must
reference Microsoft.NETCore.App to target the shared framework (bug
https://github.com/dotnet/sdk/issues/1159) and NETCore.App
contains a reference to C# + VB CodeAnalysis. This ensures that the project
reference is a higher version than the NuGet reference. -->
<Version>$(NuGetPerBuildPreReleaseVersion)</Version>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
......@@ -28,6 +33,8 @@
<Project>{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}</Project>
<Name>CodeAnalysis</Name>
</ProjectReference>
<PackageReference Include="System.Threading.Tasks.Parallel" Version="$(SystemThreadingTasksParallelVersion)" />
<PackageReference Include="System.Linq.Expressions" Version="$(SystemLinqExpressionsVersion)" />
</ItemGroup>
<ItemGroup>
<Compile Include="Binder\AliasAndExternAliasDirective.cs" />
......@@ -813,7 +820,6 @@
<Content Include="UseSiteDiagnosticsCheckEnforcer\BaseLine.txt" />
<Content Include="UseSiteDiagnosticsCheckEnforcer\Run.bat" />
<None Include="FlowAnalysis\Flow Analysis Design.docx" />
<None Include="project.json" />
<None Include="Symbols\PublicSymbolTable.cd" />
<None Include="..\CSharpCodeAnalysisRules.ruleset">
<SubType>Designer</SubType>
......@@ -869,4 +875,4 @@
</ItemGroup>
<Import Project="..\CSharpAnalyzerDriver\CSharpAnalyzerDriver.projitems" Label="Shared" />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
</Project>
\ No newline at end of file
......@@ -4467,7 +4467,7 @@ To remove the warning, you can use /reference instead (set the Embed Interop Typ
/define:&lt;symbol list&gt; Define conditional compilation symbol(s) (Short
form: /d)
/langversion:&lt;string&gt; Specify language version mode: ISO-1, ISO-2, 3,
4, 5, 6, Default, or Latest
4, 5, 6, 7, 7.1, Default, or Latest
- SECURITY -
/delaysign[+|-] Delay-sign the assembly using only the public
......
......@@ -818,7 +818,7 @@ internal MethodSymbol AsMember(NamedTypeSymbol newOwner)
{
Debug.Assert(this.IsDefinition);
Debug.Assert(ReferenceEquals(newOwner.OriginalDefinition, this.ContainingSymbol.OriginalDefinition));
return (newOwner == this.ContainingSymbol) ? this : new SubstitutedMethodSymbol((SubstitutedNamedTypeSymbol)newOwner, this);
return (newOwner == this.ContainingSymbol) ? this : new SubstitutedMethodSymbol(newOwner, this);
}
/// <summary>
......
......@@ -68,8 +68,7 @@ internal sealed class SourceCustomEventAccessorSymbol : SourceEventAccessorSymbo
}
else
{
var bodyOpt = syntax.Body;
if (bodyOpt != null)
if (syntax.Body != null || syntax.ExpressionBody != null)
{
if (IsExtern && !IsAbstract)
{
......
......@@ -38,9 +38,11 @@ internal class SubstitutedMethodSymbol : WrappedMethodSymbol
private int _hashCode; // computed on demand
internal SubstitutedMethodSymbol(SubstitutedNamedTypeSymbol containingSymbol, MethodSymbol originalDefinition)
internal SubstitutedMethodSymbol(NamedTypeSymbol containingSymbol, MethodSymbol originalDefinition)
: this(containingSymbol, containingSymbol.TypeSubstitution, originalDefinition, constructedFrom: null)
{
Debug.Assert(containingSymbol is SubstitutedNamedTypeSymbol || containingSymbol is SubstitutedErrorTypeSymbol);
Debug.Assert(originalDefinition.ContainingType == containingSymbol.OriginalDefinition);
}
protected SubstitutedMethodSymbol(NamedTypeSymbol containingSymbol, TypeMap map, MethodSymbol originalDefinition, MethodSymbol constructedFrom)
......
......@@ -55,9 +55,9 @@ internal sealed class TupleTypeSymbol : WrappedNamedTypeSymbol
internal const string RestFieldName = "Rest";
private TupleTypeSymbol(Location locationOpt, NamedTypeSymbol underlyingType, ImmutableArray<Location> elementLocations,
ImmutableArray<string> elementNames, ImmutableArray<TypeSymbol> elementTypes, ImmutableArray<bool> inferredNamesPositions)
ImmutableArray<string> elementNames, ImmutableArray<TypeSymbol> elementTypes, ImmutableArray<bool> errorPositions)
: this(locationOpt == null ? ImmutableArray<Location>.Empty : ImmutableArray.Create(locationOpt),
underlyingType, elementLocations, elementNames, elementTypes, inferredNamesPositions)
underlyingType, elementLocations, elementNames, elementTypes, errorPositions)
{
}
......
{
"dependencies": {
"System.Linq.Expressions": "4.3.0",
"System.Threading.Tasks.Parallel": "4.3.0"
},
"frameworks": {
"netstandard1.3": {}
}
}
......@@ -12,6 +12,7 @@
<AssemblyName>Roslyn.Compilers.CSharp.CommandLine.UnitTests</AssemblyName>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -68,6 +69,15 @@
<Reference Include="System.Configuration" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq" />
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Compile Include="CommandLineDiagnosticFormatterTests.cs" />
......@@ -85,7 +95,6 @@
<None Include="..\..\csc\csc.rsp">
<Link>csc.rsp</Link>
</None>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
......@@ -97,4 +106,4 @@
</EmbeddedResource>
</ItemGroup>
<Import Project="..\..\..\..\..\build\Targets\Imports.targets" />
</Project>
</Project>
\ No newline at end of file
......@@ -1392,6 +1392,32 @@ public void LanguageVersion_TryParseDisplayString(string input, bool success, La
LanguageVersionAdded_Canary();
}
[Fact]
public void LanguageVersion_CommandLineUsage()
{
var expected = Enum.GetValues(typeof(LanguageVersion)).Cast<LanguageVersion>()
.Where(v => v != LanguageVersion.CSharp1 && v != LanguageVersion.CSharp2)
.Select(v => v.ToDisplayString());
string help = CSharpResources.IDS_CSCHelp;
var rangeStart = help.IndexOf("/langversion");
var rangeEnd = help.IndexOf("/delaysign");
Assert.True(rangeEnd > rangeStart);
string helpRange = help.Substring(rangeStart, rangeEnd - rangeStart).ToLowerInvariant();
var acceptableSurroundingChar = new[] { '\r', '\n', ',' , ' '};
foreach (var version in expected)
{
var foundIndex = helpRange.IndexOf(version);
Assert.True(foundIndex > 0, $"Missing version '{version}'");
Assert.True(Array.IndexOf(acceptableSurroundingChar, helpRange[foundIndex - 1]) >= 0);
Assert.True(Array.IndexOf(acceptableSurroundingChar, helpRange[foundIndex + version.Length]) >= 0);
}
// The canary check is a reminder that this test needs to be updated when a language version is added
LanguageVersionAdded_Canary();
}
[Fact]
[WorkItem(546961, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/546961")]
public void Define()
......
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp.UnitTests</RootNamespace>
<AssemblyName>Roslyn.Compilers.CSharp.Emit.UnitTests</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
......@@ -69,6 +70,7 @@
<Compile Include="Attributes\AttributeTests_Tuples.cs" />
<Compile Include="Attributes\AttributeTests_WellKnownAttributes.cs" />
<Compile Include="CodeGen\CodeGenCapturing.cs" />
<Compile Include="CodeGen\PatternTests.cs" />
<Compile Include="Emit\BinaryCompatibility.cs" />
<Compile Include="Emit\DesktopStrongNameProviderTests.cs" />
<Compile Include="Attributes\InternalsVisibleToAndStrongNameTests.cs" />
......@@ -176,6 +178,18 @@
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq" />
<PackageReference Include="Microsoft.DiaSymReader">
<Version>$(MicrosoftDiaSymReaderVersion)</Version>
</PackageReference>
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resources.resx">
......@@ -184,9 +198,6 @@
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
......
......@@ -78,7 +78,7 @@ void Local2()
CompileAndVerify(comp);
}
[Fact(Skip = "https://github.com/dotnet/roslyn/issues/16783")]
[Fact]
[WorkItem(16783, "https://github.com/dotnet/roslyn/issues/16783")]
public void GenericDefaultParams()
{
......@@ -3972,6 +3972,79 @@ public static void Main()
additionalRefs: new[] { SystemRuntimeFacadeRef, ValueTupleRef });
}
[Fact]
[WorkItem(19119, "https://github.com/dotnet/roslyn/issues/19119")]
public void StructFrameInitUnnecesary()
{
var c = CompileAndVerify(@"
class Program
{
static void Main(string[] args)
{
int q = 1;
if (q > 0)
{
int w = 2;
if (w > 0)
{
int e = 3;
if (e > 0)
{
void Print() => System.Console.WriteLine(q + w + e);
Print();
}
}
}
}
}", expectedOutput: "6");
//BUG: the "initobj" instructions in the following code are redundant.
c.VerifyIL("Program.Main", @"
{
// Code size 87 (0x57)
.maxstack 3
.locals init (Program.<>c__DisplayClass0_0 V_0, //CS$<>8__locals0
Program.<>c__DisplayClass0_1 V_1, //CS$<>8__locals1
Program.<>c__DisplayClass0_2 V_2) //CS$<>8__locals2
IL_0000: ldloca.s V_0
IL_0002: initobj ""Program.<>c__DisplayClass0_0""
IL_0008: ldloca.s V_0
IL_000a: ldc.i4.1
IL_000b: stfld ""int Program.<>c__DisplayClass0_0.q""
IL_0010: ldloc.0
IL_0011: ldfld ""int Program.<>c__DisplayClass0_0.q""
IL_0016: ldc.i4.0
IL_0017: ble.s IL_0056
IL_0019: ldloca.s V_1
IL_001b: initobj ""Program.<>c__DisplayClass0_1""
IL_0021: ldloca.s V_1
IL_0023: ldc.i4.2
IL_0024: stfld ""int Program.<>c__DisplayClass0_1.w""
IL_0029: ldloc.1
IL_002a: ldfld ""int Program.<>c__DisplayClass0_1.w""
IL_002f: ldc.i4.0
IL_0030: ble.s IL_0056
IL_0032: ldloca.s V_2
IL_0034: initobj ""Program.<>c__DisplayClass0_2""
IL_003a: ldloca.s V_2
IL_003c: ldc.i4.3
IL_003d: stfld ""int Program.<>c__DisplayClass0_2.e""
IL_0042: ldloc.2
IL_0043: ldfld ""int Program.<>c__DisplayClass0_2.e""
IL_0048: ldc.i4.0
IL_0049: ble.s IL_0056
IL_004b: ldloca.s V_0
IL_004d: ldloca.s V_1
IL_004f: ldloca.s V_2
IL_0051: call ""void Program.<Main>g__Print0_0(ref Program.<>c__DisplayClass0_0, ref Program.<>c__DisplayClass0_1, ref Program.<>c__DisplayClass0_2)""
IL_0056: ret
}
");
}
internal CompilationVerifier VerifyOutput(string source, string output, CSharpCompilationOptions options)
{
var comp = CreateCompilationWithMscorlib45AndCSruntime(source, options: options);
......
......@@ -3838,7 +3838,8 @@ int M()
var model = compilation.GetSemanticModel(tree);
var nodes = tree.GetCompilationUnitRoot().DescendantNodes();
// PROTOTYPE(tuple-names) The type for int? was not picked up
// The type for int? was not picked up
// Follow-up issue: https://github.com/dotnet/roslyn/issues/19144
var yTuple = nodes.OfType<TupleExpressionSyntax>().ElementAt(0);
Assert.Equal("(? e, (System.Int32 e, System.Int32, System.Int32, System.Int32))",
model.GetTypeInfo(yTuple).Type.ToTestDisplayString());
......
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Linq;
using Microsoft.CodeAnalysis.CodeGen;
using Microsoft.CodeAnalysis.CSharp.Symbols;
using Microsoft.CodeAnalysis.CSharp.Test.Utilities;
using Microsoft.CodeAnalysis.Test.Utilities;
using Roslyn.Test.Utilities;
using Xunit;
namespace Microsoft.CodeAnalysis.CSharp.UnitTests.CodeGen
{
public class PatternTests : EmitMetadataTestBase
{
[Fact, WorkItem(18811, "https://github.com/dotnet/roslyn/issues/18811")]
public void MissingNullable_01()
{
var source = @"namespace System {
public class Object { }
public abstract class ValueType { }
public struct Void { }
public struct Boolean { }
public struct Int32 { }
}
static class C {
public static bool M() => ((object)123) is int i;
}
";
var compilation = CreateCompilation(source, options: TestOptions.ReleaseDll);
compilation.GetDiagnostics().Verify();
compilation.GetEmitDiagnostics().Verify(
// warning CS8021: No value for RuntimeMetadataVersion found. No assembly containing System.Object was found nor was a value for RuntimeMetadataVersion specified through options.
Diagnostic(ErrorCode.WRN_NoRuntimeMetadataVersion).WithLocation(1, 1),
// (9,48): error CS0518: Predefined type 'System.Nullable`1' is not defined or imported
// public static bool M() => ((object)123) is int i;
Diagnostic(ErrorCode.ERR_PredefinedTypeNotFound, "int i").WithArguments("System.Nullable`1").WithLocation(9, 48),
// (9,48): error CS0656: Missing compiler required member 'System.Nullable`1.GetValueOrDefault'
// public static bool M() => ((object)123) is int i;
Diagnostic(ErrorCode.ERR_MissingPredefinedMember, "int i").WithArguments("System.Nullable`1", "GetValueOrDefault").WithLocation(9, 48),
// (9,48): error CS0656: Missing compiler required member 'System.Nullable`1.get_HasValue'
// public static bool M() => ((object)123) is int i;
Diagnostic(ErrorCode.ERR_MissingPredefinedMember, "int i").WithArguments("System.Nullable`1", "get_HasValue").WithLocation(9, 48)
);
}
[Fact, WorkItem(18811, "https://github.com/dotnet/roslyn/issues/18811")]
public void MissingNullable_02()
{
var source = @"namespace System {
public class Object { }
public abstract class ValueType { }
public struct Void { }
public struct Boolean { }
public struct Int32 { }
public struct Nullable<T> where T : struct { }
}
static class C {
public static bool M() => ((object)123) is int i;
}
";
var compilation = CreateCompilation(source, options: TestOptions.ReleaseDll);
compilation.GetDiagnostics().Verify();
compilation.GetEmitDiagnostics().Verify(
// warning CS8021: No value for RuntimeMetadataVersion found. No assembly containing System.Object was found nor was a value for RuntimeMetadataVersion specified through options.
Diagnostic(ErrorCode.WRN_NoRuntimeMetadataVersion),
// (10,48): error CS0656: Missing compiler required member 'System.Nullable`1.GetValueOrDefault'
// public static bool M() => ((object)123) is int i;
Diagnostic(ErrorCode.ERR_MissingPredefinedMember, "int i").WithArguments("System.Nullable`1", "GetValueOrDefault").WithLocation(10, 48),
// (10,48): error CS0656: Missing compiler required member 'System.Nullable`1.get_HasValue'
// public static bool M() => ((object)123) is int i;
Diagnostic(ErrorCode.ERR_MissingPredefinedMember, "int i").WithArguments("System.Nullable`1", "get_HasValue").WithLocation(10, 48)
);
}
}
}
{
"dependencies": {
"Microsoft.DiaSymReader": "1.1.0",
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
......@@ -12,6 +12,7 @@
<AssemblyName>Roslyn.Compilers.CSharp.Semantic.UnitTests</AssemblyName>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
</PropertyGroup>
<ItemGroup Label="Project References">
......@@ -157,9 +158,15 @@
<Reference Include="System" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
......
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<NonShipping>true</NonShipping>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -11,8 +11,8 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests</RootNamespace>
<AssemblyName>Roslyn.Compilers.CSharp.Symbol.UnitTests</AssemblyName>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net452</PackageTargetFallback>
<NoStdLib>true</NoStdLib>
<RoslynProjectType>UnitTestPortable</RoslynProjectType>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
......@@ -170,10 +170,13 @@
<Compile Include="Symbols\UserDefinedOperatorErrorTests.cs" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
<PackageReference Include="System.Linq.Parallel" Version="$(SystemLinqParallelVersion)" />
<PackageReference Include="xunit" Version="$(xunitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(xunitrunnerconsoleVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(xunitrunnervisualstudioVersion)" />
</ItemGroup>
<Import Project="..\..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
......@@ -7601,17 +7601,38 @@ abstract public class clx
protected abstract internal void M3(sbyte p) { }
public abstract object P { get { return null; } set { } }
public abstract event System.Action E { add { } remove { } }
public abstract event System.Action X { add => throw null; remove => throw null; }
} // class clx
}
";
var comp = DiagnosticsUtils.VerifyErrorsAndGetCompilationWithMscorlib(text,
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 5, Column = 30 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 6, Column = 34 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 7, Column = 42 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 8, Column = 36 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 8, Column = 57 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 9, Column = 49 },
new ErrorDescription { Code = (int)ErrorCode.ERR_AbstractHasBody, Line = 9, Column = 57 });
var comp = CreateStandardCompilation(text).VerifyDiagnostics(
// (5,30): error CS0500: 'clx.M1()' cannot declare a body because it is marked abstract
// abstract public void M1() { }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "M1").WithArguments("NS.clx.M1()").WithLocation(5, 30),
// (6,34): error CS0500: 'clx.M2()' cannot declare a body because it is marked abstract
// internal abstract object M2() { return null; }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "M2").WithArguments("NS.clx.M2()").WithLocation(6, 34),
// (7,42): error CS0500: 'clx.M3(sbyte)' cannot declare a body because it is marked abstract
// protected abstract internal void M3(sbyte p) { }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "M3").WithArguments("NS.clx.M3(sbyte)").WithLocation(7, 42),
// (8,36): error CS0500: 'clx.P.get' cannot declare a body because it is marked abstract
// public abstract object P { get { return null; } set { } }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "get").WithArguments("NS.clx.P.get").WithLocation(8, 36),
// (8,57): error CS0500: 'clx.P.set' cannot declare a body because it is marked abstract
// public abstract object P { get { return null; } set { } }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "set").WithArguments("NS.clx.P.set").WithLocation(8, 57),
// (9,49): error CS0500: 'clx.E.add' cannot declare a body because it is marked abstract
// public abstract event System.Action E { add { } remove { } }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "add").WithArguments("NS.clx.E.add").WithLocation(9, 49),
// (9,57): error CS0500: 'clx.E.remove' cannot declare a body because it is marked abstract
// public abstract event System.Action E { add { } remove { } }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "remove").WithArguments("NS.clx.E.remove").WithLocation(9, 57),
// (10,49): error CS0500: 'clx.X.add' cannot declare a body because it is marked abstract
// public abstract event System.Action X { add => throw null; remove => throw null; }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "add").WithArguments("NS.clx.X.add").WithLocation(10, 49),
// (10,68): error CS0500: 'clx.X.remove' cannot declare a body because it is marked abstract
// public abstract event System.Action X { add => throw null; remove => throw null; }
Diagnostic(ErrorCode.ERR_AbstractHasBody, "remove").WithArguments("NS.clx.X.remove").WithLocation(10, 68));
var ns = comp.SourceModule.GlobalNamespace.GetMembers("NS").Single() as NamespaceSymbol;
// TODO...
......
{
"dependencies": {
"microsoft.netcore.portable.compatibility": "1.0.1",
"System.Linq.Parallel": "4.3.0",
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"netstandard1.3": {
"imports": "portable-net452"
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<NonShipping>true</NonShipping>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -12,8 +12,8 @@
<AssemblyName>Roslyn.Compilers.CSharp.Syntax.UnitTests</AssemblyName>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net452</PackageTargetFallback>
<NoStdLib>true</NoStdLib>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<RoslynProjectType>UnitTestPortable</RoslynProjectType>
......@@ -25,11 +25,6 @@
<Project>{ccbd3438-3e84-40a9-83ad-533f23bcfca5}</Project>
<Name>TestUtilities</Name>
</ProjectReference>
<ProjectReference Include="..\..\..\..\Tools\Source\CompilerGeneratorTools\Source\CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj">
<Project>{288089C5-8721-458E-BE3E-78990DAB5E2D}</Project>
<Name>CSharpSyntaxGenerator</Name>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\..\..\Core\Portable\CodeAnalysis.csproj">
<Project>{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}</Project>
<Name>CodeAnalysis</Name>
......@@ -143,11 +138,8 @@
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="..\..\..\..\..\build\Targets\Imports.targets" />
</Project>
</Project>
\ No newline at end of file
{
"dependencies": { },
"frameworks": {
"netstandard1.3": {
"imports": "portable-net452"
}
}
}
......@@ -12,6 +12,7 @@
<RootNamespace>Microsoft.CodeAnalysis.CSharp.UnitTests.CodeGen</RootNamespace>
<AssemblyName>Roslyn.Compilers.CSharp.WinRT.UnitTests</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
......@@ -67,9 +68,15 @@
</ItemGroup>
<ItemGroup>
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
......
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
......@@ -14,6 +14,7 @@
<LargeAddressAware>true</LargeAddressAware>
<StartupObject>Microsoft.CodeAnalysis.CSharp.CommandLine.Program</StartupObject>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
</PropertyGroup>
<ItemGroup Label="Project References">
<ProjectReference Include="..\..\Core\Portable\CodeAnalysis.csproj">
......@@ -29,6 +30,9 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
<ItemGroup>
<Reference Include="System" />
<PackageReference Include="Microsoft.DiaSymReader.Native">
<Version>$(MicrosoftDiaSymReaderNativeVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\Shared\BuildClient.cs">
......@@ -59,7 +63,6 @@
<None Include="csc.rsp">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="project.json" />
</ItemGroup>
<Import Project="..\..\Core\CommandLine\CommandLine.projitems" Label="Shared" />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
......
{
"dependencies": {
"Microsoft.DiaSymReader.Native": "1.5.0"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
......@@ -12,6 +12,7 @@
<AssemblyName>Roslyn.Compilers.UnitTests</AssemblyName>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
</PropertyGroup>
<ItemGroup Label="Linked Files">
......@@ -84,6 +85,18 @@
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
<PackageReference Include="Moq">
<Version>$(MoqVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Compile Include="CachingLookupTests.cs" />
......@@ -162,7 +175,6 @@
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<None Include="Resources/default.win32manifest" />
<None Include="Resources/nativeWithStringIDsAndTypesAndIntTypes.res" />
<None Include="Resources/Roslyn.ico.blah" />
......@@ -172,4 +184,4 @@
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
</Project>
\ No newline at end of file
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194",
"Moq": "4.2.1402.2112"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
\ No newline at end of file
......@@ -66,6 +66,9 @@ private static bool TryRedirect(AssemblyName name)
case "System.Diagnostics.StackTrace":
return TryRedirect(name, s_b03f5f7f11d50a3a, 4, 0, 3, 0);
case "System.Reflection":
return TryRedirect(name, s_b03f5f7f11d50a3a, 4, 1, 1, 0);
}
return false;
......@@ -101,4 +104,4 @@ private static bool KeysEqual(byte[] left, byte[] right)
return true;
}
}
}
\ No newline at end of file
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
......@@ -13,8 +13,8 @@
<AssemblyName>Microsoft.Build.Tasks.CodeAnalysis</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<PackageTargetFallback>portable-net452;dotnet5.4</PackageTargetFallback>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
......@@ -25,7 +25,6 @@
<None Include="Microsoft.VisualBasic.Core.targets">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="project.json" />
<!-- A reference to the entire .NET Framework is automatically included -->
</ItemGroup>
<ItemGroup>
......@@ -80,6 +79,29 @@
<LastGenOutput>ErrorString.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Build" Version="$(MicrosoftBuildFixedVersion)" />
<PackageReference Include="Microsoft.Build.Tasks.Core" Version="$(MicrosoftBuildTasksCoreFixedVersion)" />
<PackageReference Include="Microsoft.NETCore.Platforms" Version="$(MicrosoftNETCorePlatformsVersion)" />
<PackageReference Include="Microsoft.Win32.Primitives" Version="$(MicrosoftWin32PrimitivesVersion)" />
<PackageReference Include="System.AppContext" Version="$(SystemAppContextVersion)" />
<PackageReference Include="System.Console" Version="$(SystemConsoleVersion)" />
<PackageReference Include="System.Collections.Concurrent" Version="$(SystemCollectionsConcurrentVersion)" />
<PackageReference Include="System.Diagnostics.Process" Version="$(SystemDiagnosticsProcessVersion)" />
<PackageReference Include="System.Diagnostics.Tools" Version="$(SystemDiagnosticsToolsVersion)" />
<PackageReference Include="System.IO.FileSystem" Version="$(SystemIOFileSystemVersion)" />
<PackageReference Include="System.IO.FileSystem.DriveInfo" Version="$(SystemIOFileSystemDriveInfoVersion)" />
<PackageReference Include="System.IO.Pipes" Version="$(SystemIOPipesVersion)" />
<PackageReference Include="System.Linq" Version="$(SystemLinqVersion)" />
<PackageReference Include="System.Reflection" Version="$(SystemReflectionVersion)" />
<PackageReference Include="System.Security.AccessControl" Version="$(SystemSecurityAccessControlVersion)" />
<PackageReference Include="System.Security.Cryptography.Algorithms" Version="$(SystemSecurityCryptographyAlgorithmsVersion)" />
<PackageReference Include="System.Security.Principal.Windows" Version="$(SystemSecurityPrincipalWindowsVersion)" />
<PackageReference Include="System.Text.Encoding" Version="$(SystemTextEncodingVersion)" />
<PackageReference Include="System.Text.Encoding.Extensions" Version="$(SystemTextEncodingExtensionsVersion)" />
<PackageReference Include="System.Text.RegularExpressions" Version="$(SystemTextRegularExpressionsVersion)" />
<PackageReference Include="System.Threading.Thread" Version="$(SystemThreadingThreadVersion)" />
</ItemGroup>
<Import Project="..\CommandLine\CommandLine.projitems" Label="Shared" />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
</Project>
{
"dependencies": {
"Microsoft.Build": "14.3.0",
"Microsoft.Build.Tasks.Core": "14.3.0",
"Microsoft.NETCore.Platforms": "1.1.0",
"Microsoft.NETCore.Portable.Compatibility": "1.0.1",
"Microsoft.Win32.Primitives": "4.3.0",
"System.AppContext": "4.3.0",
"System.Console": "4.3.0",
"System.Collections.Concurrent": "4.3.0",
"System.Diagnostics.Process": "4.3.0",
"System.Diagnostics.Tools": "4.3.0",
"System.IO.FileSystem": "4.3.0",
"System.IO.FileSystem.DriveInfo": "4.3.0",
"System.IO.Pipes": "4.3.0",
"System.Linq": "4.3.0",
"System.Reflection": "4.3.0",
"System.Security.AccessControl": "4.3.0",
"System.Security.Cryptography.Algorithms": "4.3.0",
"System.Security.Principal.Windows": "4.3.0",
"System.Text.Encoding": "4.3.0",
"System.Text.Encoding.Extensions": "4.3.0",
"System.Text.RegularExpressions": "4.3.0",
"System.Threading.Thread": "4.3.0"
},
"frameworks": {
"netstandard1.3": {
"imports": [
"portable-net452",
"dotnet5.4"
]
}
}
}
......@@ -12,6 +12,7 @@
<AssemblyName>Microsoft.Build.Tasks.CodeAnalysis.UnitTests</AssemblyName>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<RoslynProjectType>UnitTest</RoslynProjectType>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
......@@ -61,6 +62,24 @@
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
<PackageReference Include="xunit">
<Version>$(xunitVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.console">
<Version>$(xunitrunnerconsoleVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.visualstudio">
<Version>$(xunitrunnervisualstudioVersion)</Version>
</PackageReference>
<PackageReference Include="System.Collections.Immutable">
<Version>$(SystemCollectionsImmutableVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.Build">
<Version>$(MicrosoftBuildFixedVersion)</Version>
</PackageReference>
<PackageReference Include="Moq">
<Version>$(MoqVersion)</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Compile Include="MiscTests.cs" />
......@@ -73,8 +92,5 @@
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
</ItemGroup>
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
</Project>
\ No newline at end of file
{
"dependencies": {
"xunit": "2.2.0-beta4-build3444",
"xunit.runner.console": "2.2.0-beta4-build3444",
"xunit.runner.visualstudio": "2.2.0-beta4-build1194",
"System.Collections.Immutable": "1.3.1",
"Microsoft.Build": "14.3.0",
"Moq": "4.2.1402.2112"
},
"frameworks": {
"net46": { }
},
"runtimes": {
"win7": { }
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -10,8 +10,7 @@
<RootNamespace>Microsoft.CodeAnalysis</RootNamespace>
<AssemblyName>Microsoft.CodeAnalysis</AssemblyName>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netstandard1.3</TargetFramework>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<ServiceablePackage>true</ServiceablePackage>
<DefineConstants>$(DefineConstants);COMPILERCORE</DefineConstants>
......@@ -21,11 +20,11 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />
<ItemGroup>
<Content Include="$(NuGetPackageRoot)\Microsoft.DiaSymReader.Native\$(MicrosoftDiaSymReaderNativeVersion)\runtimes\win\native\Microsoft.DiaSymReader.Native.x86.dll">
<Content Include="$(NuGetPackageRoot)\microsoft.diasymreader.native\$(MicrosoftDiaSymReaderNativeVersion)\runtimes\win\native\Microsoft.DiaSymReader.Native.x86.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>false</Visible>
</Content>
<Content Include="$(NuGetPackageRoot)\Microsoft.DiaSymReader.Native\$(MicrosoftDiaSymReaderNativeVersion)\runtimes\win\native\Microsoft.DiaSymReader.Native.amd64.dll">
<Content Include="$(NuGetPackageRoot)\microsoft.diasymreader.native\$(MicrosoftDiaSymReaderNativeVersion)\runtimes\win\native\Microsoft.DiaSymReader.Native.amd64.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>false</Visible>
</Content>
......@@ -819,6 +818,33 @@
<Compile Include="XmlFileResolver.cs" />
<Compile Include="Xml\XmlCharType.cs" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.DiaSymReader.Native" Version="$(MicrosoftDiaSymReaderNativeVersion)" />
<PackageReference Include="System.Collections" Version="$(SystemCollectionsVersion)" />
<PackageReference Include="System.Collections.Concurrent" Version="$(SystemCollectionsConcurrentVersion)" />
<PackageReference Include="System.Diagnostics.Tools" Version="$(SystemDiagnosticsToolsVersion)" />
<PackageReference Include="System.Diagnostics.FileVersionInfo" Version="$(SystemDiagnosticsFileVersionInfoVersion)" />
<PackageReference Include="System.IO" Version="$(SystemIOVersion)" />
<PackageReference Include="System.IO.Compression" Version="$(SystemIOCompressionVersion)" />
<PackageReference Include="System.IO.FileSystem" Version="$(SystemIOFileSystemVersion)" />
<PackageReference Include="System.IO.FileSystem.Primitives" Version="$(SystemIOFileSystemPrimitivesVersion)" />
<PackageReference Include="System.Runtime.Numerics" Version="$(SystemRuntimeNumericsVersion)" />
<PackageReference Include="System.Security.Cryptography.Algorithms" Version="$(SystemSecurityCryptographyAlgorithmsVersion)" />
<PackageReference Include="System.Security.Cryptography.Encoding" Version="$(SystemSecurityCryptographyEncodingVersion)" />
<PackageReference Include="System.Security.Cryptography.X509Certificates" Version="$(SystemSecurityCryptographyX509CertificatesVersion)" />
<PackageReference Include="System.Text.Encoding" Version="$(SystemTextEncodingVersion)" />
<PackageReference Include="System.Text.Encoding.CodePages" Version="$(SystemTextEncodingCodePagesVersion)" />
<PackageReference Include="System.Text.Encoding.Extensions" Version="$(SystemTextEncodingExtensionsVersion)" />
<PackageReference Include="System.Xml.ReaderWriter" Version="$(SystemXmlReaderWriterVersion)" />
<PackageReference Include="System.Xml.XDocument" Version="$(SystemXmlXDocumentVersion)" />
<PackageReference Include="System.Xml.XmlDocument" Version="$(SystemXmlXmlDocumentVersion)" />
<PackageReference Include="System.Xml.XPath.XDocument" Version="$(SystemXmlXPathXDocumentVersion)" />
<PackageReference Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableVersion)" />
<PackageReference Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataVersion)" />
<PackageReference Include="System.ValueTuple" Version="$(SystemValueTupleVersion)" />
<PackageReference Include="System.Xml.XPath.XDocument" Version="$(SystemXmlXPathXDocumentVersion)" />
<PackageReference Include="System.Text.Encoding.CodePages" Version="$(SystemTextEncodingCodePagesVersion)" />
</ItemGroup>
<ItemGroup>
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.CSharp" />
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.VisualBasic" />
......@@ -886,7 +912,6 @@
<None Include="..\CodeAnalysisRules.ruleset">
<SubType>Designer</SubType>
</None>
<None Include="project.json" />
<None Include="RuleSet\RuleSetSchema.xsd">
<SubType>Designer</SubType>
</None>
......@@ -897,4 +922,4 @@
<Import Project="..\..\..\Dependencies\CodeAnalysis.Metadata\Microsoft.CodeAnalysis.Metadata.projitems" Label="Shared" />
<Import Project="..\..\..\Dependencies\PooledObjects\Microsoft.CodeAnalysis.PooledObjects.projitems" Label="Shared" />
<Import Project="..\..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
</Project>
{
"supports": {},
"dependencies": {
"Microsoft.NETCore.Portable.Compatibility": "1.0.1",
"System.Collections.Immutable": "1.3.1",
"System.Collections": "4.3.0",
"System.Collections.Concurrent": "4.3.0",
"System.Diagnostics.Tools": "4.3.0",
"System.Diagnostics.FileVersionInfo": "4.3.0",
"System.IO": "4.3.0",
"System.IO.Compression": "4.3.0",
"System.IO.FileSystem": "4.3.0",
"System.IO.FileSystem.Primitives": "4.3.0",
"System.Reflection.Metadata": "1.4.2",
"System.Runtime.Numerics": "4.3.0",
"System.Security.Cryptography.Algorithms": "4.3.0",
"System.Security.Cryptography.Encoding": "4.3.0",
"System.Security.Cryptography.X509Certificates": "4.3.0",
"System.Text.Encoding": "4.3.0",
"System.Text.Encoding.CodePages": "4.3.0",
"System.Text.Encoding.Extensions": "4.3.0",
"System.ValueTuple": "4.3.0",
"System.Xml.ReaderWriter": "4.3.0",
"System.Xml.XDocument": "4.3.0",
"System.Xml.XmlDocument": "4.3.0",
"System.Xml.XPath.XDocument": "4.3.0"
},
"frameworks": {
"netstandard1.3": {}
}
}
......@@ -12,6 +12,7 @@
<RootNamespace>Roslyn.Compilers.Extension</RootNamespace>
<AssemblyName>Roslyn.Compilers.Extension</AssemblyName>
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
<RuntimeIdentifiers>win7</RuntimeIdentifiers>
<ImportVSSDKTargets>True</ImportVSSDKTargets>
<GeneratePkgDefFile>true</GeneratePkgDefFile>
<IncludeAssemblyInVSIXContainer>true</IncludeAssemblyInVSIXContainer>
......@@ -36,7 +37,6 @@
<Compile Include="CompilerPackage.cs" />
</ItemGroup>
<ItemGroup>
<None Include="project.json" />
<None Include="source.extension.vsixmanifest">
<SubType>Designer</SubType>
</None>
......@@ -150,6 +150,27 @@
<IncludeOutputGroupsInVSIXLocalOnly>DebugSymbolsProjectOutputGroup%3b</IncludeOutputGroupsInVSIXLocalOnly>
<ForceIncludeInVSIX>true</ForceIncludeInVSIX>
</ProjectReference>
<PackageReference Include="EnvDTE">
<Version>$(EnvDTEVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Shell.15.0">
<Version>$(MicrosoftVisualStudioShell150Version)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.8.0">
<Version>$(MicrosoftVisualStudioShellInterop80Version)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.9.0">
<Version>$(MicrosoftVisualStudioShellInterop90Version)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.10.0">
<Version>$(MicrosoftVisualStudioShellInterop100Version)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Shell.Framework">
<Version>$(MicrosoftVisualStudioShellFrameworkVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Utilities">
<Version>$(MicrosoftVisualStudioUtilitiesVersion)</Version>
</PackageReference>
</ItemGroup>
<Import Project="..\..\..\build\Targets\Imports.targets" />
</Project>
\ No newline at end of file
{
"dependencies": {
"EnvDTE": "8.0.1",
"Microsoft.VisualStudio.Shell.15.0": "15.0.26201-alpha",
"Microsoft.VisualStudio.Shell.Interop.8.0": "8.0.50727",
"Microsoft.VisualStudio.Shell.Interop.9.0": "9.0.30729",
"Microsoft.VisualStudio.Shell.Interop.10.0": "10.0.30319",
"Microsoft.VisualStudio.Shell.Framework": "15.0.26201-alpha",
"Microsoft.VisualStudio.Utilities": "15.0.26201-alpha"
},
"frameworks": {
"net46": {}
},
"runtimes": {
"win7": {}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\..\build\Targets\Settings.props" />
<Import Project="..\..\..\..\build\Targets\SettingsSdk.props" />
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">x64</Platform>
<PlatformTarget>AnyCPU</PlatformTarget>
<RuntimeIdentifier>x64</RuntimeIdentifier>
<NuGetRuntimeIdentifier>$(BaseNuGetRuntimeIdentifier)-$(RuntimeIdentifier)</NuGetRuntimeIdentifier>
<ProjectGuid>{06B26DCB-7A12-48EF-AE50-708593ABD05F}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>Microsoft.CodeAnalysis.CompilerServer</RootNamespace>
......@@ -16,8 +15,9 @@
<StartupObject>Microsoft.CodeAnalysis.CompilerServer.Program</StartupObject>
<AutoGenerateBindingRedirects>True</AutoGenerateBindingRedirects>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetFramework>netcoreapp1.1</TargetFramework>
<RuntimeIdentifiers>win7-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;osx.10.10-x64</RuntimeIdentifiers>
<PackageTargetFallback>portable-net452</PackageTargetFallback>
<NoStdLib>true</NoStdLib>
<RoslynProjectType>ExeNonDeployment</RoslynProjectType>
</PropertyGroup>
......@@ -50,7 +50,27 @@
<None Include="VBCSCompilerPortable">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="project.json" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="System.AppContext" Version="$(SystemAppContextVersion)" />
<PackageReference Include="System.Console" Version="$(SystemConsoleVersion)" />
<PackageReference Include="System.Diagnostics.Debug" Version="$(SystemDiagnosticsDebugVersion)" />
<PackageReference Include="System.Diagnostics.FileVersionInfo" Version="$(SystemDiagnosticsFileVersionInfoVersion)" />
<PackageReference Include="System.Diagnostics.Process" Version="$(SystemDiagnosticsProcessVersion)" />
<PackageReference Include="System.Diagnostics.StackTrace" Version="$(SystemDiagnosticsStackTraceVersion)" />
<PackageReference Include="System.Diagnostics.Tools" Version="$(SystemDiagnosticsToolsVersion)" />
<PackageReference Include="System.IO.Compression" Version="$(SystemIOCompressionVersion)" />
<PackageReference Include="System.IO.FileSystem" Version="$(SystemIOFileSystemVersion)" />
<PackageReference Include="System.IO.FileSystem.Primitives" Version="$(SystemIOFileSystemPrimitivesVersion)" />
<PackageReference Include="System.IO.FileSystem.Watcher" Version="$(SystemIOFileSystemWatcherVersion)" />
<PackageReference Include="System.IO.Pipes" Version="$(SystemIOPipesVersion)" />
<PackageReference Include="System.Net.NameResolution" Version="$(SystemNetNameResolutionVersion)" />
<PackageReference Include="System.Net.Sockets" Version="$(SystemNetSocketsVersion)" />
<PackageReference Include="System.Runtime.Loader" Version="$(SystemRuntimeLoaderVersion)" />
<PackageReference Include="System.Threading" Version="$(SystemThreadingVersion)" />
<PackageReference Include="System.Threading.Tasks" Version="$(SystemThreadingTasksVersion)" />
<PackageReference Include="System.Threading.Tasks.Parallel" Version="$(SystemThreadingTasksParallelVersion)" />
<PackageReference Include="System.Threading.Thread" Version="$(SystemThreadingThreadVersion)" />
</ItemGroup>
<Import Project="..\..\Core\CommandLine\CommandLine.projitems" Label="Shared" />
<Import Project="..\ServerShared\ServerShared.projitems" Label="Shared" />
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册