Directory.build.props 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <Project>
  2. <PropertyGroup>
  3. <Copyright>Copyright (c) .NET Foundation and Contributors.</Copyright>
  4. <MinClientVersion>2.12</MinClientVersion>
  5. <GenerateDocumentationFile>true</GenerateDocumentationFile>
  6. <Authors>.NET Foundation and Contributors</Authors>
  7. <PackageIconUrl>https://raw.githubusercontent.com/dotnet/reactive/0f837d11385cfaf575861ccc5a5fbcafb22d888f/Rx.NET/Resources/Artwork/Logo.png</PackageIconUrl>
  8. <PackageProjectUrl>https://github.com/dotnet/reactive</PackageProjectUrl>
  9. <PackageLicenseExpression>MIT</PackageLicenseExpression>
  10. <SignAssembly>true</SignAssembly>
  11. <AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)ReactiveX.snk</AssemblyOriginatorKeyFile>
  12. <NoWarn>$(NoWarn);1701;1702;CS1591;NU5105</NoWarn>
  13. <DefaultLanguage>en-US</DefaultLanguage>
  14. <IncludeSymbols>false</IncludeSymbols>
  15. <IsTestProject>$(MSBuildProjectName.Contains('Tests'))</IsTestProject>
  16. <GeneratePackageOnBuild Condition=" '$(IsTestProject)' != 'true' and '$(CreatePackage)' == 'true' ">true</GeneratePackageOnBuild>
  17. <PackageOutputPath>$(MSBuildThisFileDirectory)artifacts</PackageOutputPath>
  18. <EmbedUntrackedSources>true</EmbedUntrackedSources>
  19. <PublishRepositoryUrl>true</PublishRepositoryUrl>
  20. <LangVersion>latest</LangVersion>
  21. </PropertyGroup>
  22. <PropertyGroup Condition="'$(Configuration)' != 'Debug'">
  23. <IncludeSymbols>true</IncludeSymbols>
  24. <SymbolPackageFormat>snupkg</SymbolPackageFormat>
  25. </PropertyGroup>
  26. <PropertyGroup Condition="'$(TF_BUILD)' == 'true'">
  27. <ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
  28. </PropertyGroup>
  29. <ItemGroup>
  30. <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
  31. <!--
  32. Nerdbank.GitVersioning 3.6.128 injects a reference to a .proj file that doesn't work inside UWP projects,
  33. so we make this conditional so it doesn't appear in the test runner.
  34. -->
  35. <PackageReference Include="Nerdbank.GitVersioning" Version="3.6.128" PrivateAssets="all" Condition="$(TargetPlatformIdentifier) != 'UAP'" />
  36. </ItemGroup>
  37. <ItemGroup Condition="'$(IsTestProject)' == 'true'">
  38. <PackageReference Include="coverlet.collector" Version="3.2.0" />
  39. </ItemGroup>
  40. <PropertyGroup>
  41. <AnalysisLevelDesign>7.0-default</AnalysisLevelDesign>
  42. <AnalysisLevelNaming>7.0-all</AnalysisLevelNaming>
  43. <AnalysisLevelPerformance>7.0-all</AnalysisLevelPerformance>
  44. <!-- Enable analyzers on older targets. -->
  45. <EnableNETAnalyzers>true</EnableNETAnalyzers>
  46. <!--
  47. Disable diagnostics:
  48. CA1001 - types holding disposable fields should implement IDisposable. See next item.
  49. CA2213 - IDisposable types should Dispose any IDisposable fields. This rule finds over 600
  50. examples! These are all in subtle multithreaded or async code. Some of them appear
  51. not to be real problems. For example, there are places where schedulers retain
  52. references to IDisposable work items, but that IDisposable interfaces is only there
  53. to enable application code to cancel scheduled work, so it's not Rx's place to call
  54. Dispose. And there are more subtle cases where disposal is deferred to give threads
  55. a chance to shut down. Each of these likely needs individual review:
  56. https://github.com/dotnet/reactive/issues/1927
  57. IDE0056 - Use of index/range syntax - relevant types not available on all targets, so we can't
  58. IDE0057 do this.
  59. -->
  60. <!-- Get diagnostics back to the level that the .NET 5.0 SDK had for now. Fix these properly before release. -->
  61. <NoWarn>$(NoWarn);CA1001;CA2213;IDE0056;IDE0057</NoWarn>
  62. </PropertyGroup>
  63. <ItemGroup>
  64. <GlobalAnalyzerConfigFiles Include="$(MSBuildThisFileDirectory)analyzers.globalconfig" />
  65. </ItemGroup>
  66. </Project>