<Project>
  <PropertyGroup>
    <Copyright>Copyright (c) .NET Foundation and Contributors.</Copyright>
    <MinClientVersion>2.12</MinClientVersion>
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
    <Authors>.NET Foundation and Contributors</Authors>
    <PackageIconUrl>http://go.microsoft.com/fwlink/?LinkId=261274</PackageIconUrl>
    <PackageProjectUrl>https://github.com/dotnet/reactive</PackageProjectUrl>
    <PackageLicenseUrl>https://raw.githubusercontent.com/Reactive-Extensions/Rx.NET/master/Ix.NET/Source/license.txt</PackageLicenseUrl>
    <PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
    <SignAssembly>true</SignAssembly>
    <AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)ReactiveX.snk</AssemblyOriginatorKeyFile>
    <NoWarn>$(NoWarn);1701;1702;CS1591;NU5105</NoWarn>
    <DefaultLanguage>en-US</DefaultLanguage>
    <IsTestProject>$(MSBuildProjectName.Contains('Test'))</IsTestProject>
    <DebugType>embedded</DebugType>
    <EmbedUntrackedSources>true</EmbedUntrackedSources>
    <PublishRepositoryUrl>true</PublishRepositoryUrl>
    <LangVersion>latest</LangVersion>
    <BuildForCSharp8 Condition="'$(BuildForCSharp8)' == ''">true</BuildForCSharp8>
  </PropertyGroup>

  <!-- Hack needed to make code coverage work. See https://github.com/Microsoft/vstest/issues/1748. -->
  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <DebugType>full</DebugType>
  </PropertyGroup>

  <!-- While in beta, we need to set 8.0 manually (rather than latest). -->
  <PropertyGroup Condition="'$(BuildForCSharp8)' == 'true'">
    <LangVersion>8.0</LangVersion>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta2-18618-05" PrivateAssets="All"/>
    <PackageReference Include="Nerdbank.GitVersioning" Version="2.3.38" PrivateAssets="all" />
  </ItemGroup>
  
  <Target Name="AddCommitHashToAssemblyAttributes" BeforeTargets="GetAssemblyAttributes">
    <ItemGroup>
      <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute" Condition=" '$(SourceRevisionId)' != '' ">
        <_Parameter1>CommitHash</_Parameter1>
        <_Parameter2>$(SourceRevisionId)</_Parameter2>
      </AssemblyAttribute>
    </ItemGroup>
  </Target>

</Project>
