a .NET library that can read/write Office formats without Microsoft Office installed. No COM+, no interop.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 lines
8.8 KiB

  1. <Project>
  2. <PropertyGroup>
  3. <LangVersion>latest</LangVersion>
  4. <PublishRepositoryUrl>true</PublishRepositoryUrl>
  5. <EmbedUntrackedSources>true</EmbedUntrackedSources>
  6. <IncludeSymbols>true</IncludeSymbols>
  7. <DebugType>portable</DebugType>
  8. <AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
  9. <VersionPrefix>2.7.4</VersionPrefix>
  10. <Title>NPOI</Title>
  11. <Authors>Tony Qu,NPOI Contributors</Authors>
  12. <Owners>Nissl Lab</Owners>
  13. <Description>.NET port of Apache POI</Description>
  14. <Summary>NPOI can read and write xls (Excel 97-2003), xlsx(Excel 2007+) and docx(Word 2007+). </Summary>
  15. <RepositoryUrl>https://github.com/nissl-lab/npoi</RepositoryUrl>
  16. <PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
  17. <PackageIcon>logo\60_60.jpg</PackageIcon>
  18. <PackageProjectUrl>https://github.com/nissl-lab/npoi</PackageProjectUrl>
  19. <PackageReleaseNotes>https://github.com/nissl-lab/npoi/discussions/1422</PackageReleaseNotes>
  20. <Copyright>Nissl LLC</Copyright>
  21. <PackageTags>xlsx xls Excel Word docx office ole</PackageTags>
  22. <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  23. </PropertyGroup>
  24. <PropertyGroup Label="XML Documentation" Condition=" '$(Configuration)' == 'Release' ">
  25. <GenerateDocumentationFile>true</GenerateDocumentationFile>
  26. <NoWarn>$(NoWarn);CS0419</NoWarn> <!-- Ambiguous reference in cref attribute -->
  27. <NoWarn>$(NoWarn);CS1570</NoWarn> <!-- XML comment has badly formed XML -->
  28. <NoWarn>$(NoWarn);CS1572</NoWarn> <!-- XML comment has a param tag for XXX, but there is no parameter by that name -->
  29. <NoWarn>$(NoWarn);CS1573</NoWarn> <!-- Parameter XXX has no matching param tag in the XML comment -->
  30. <NoWarn>$(NoWarn);CS1574</NoWarn> <!-- XML comment has cref attribute xxx that could not be resolved -->
  31. <NoWarn>$(NoWarn);CS1584</NoWarn> <!-- XML comment has syntactically incorrect cref attribute -->
  32. <NoWarn>$(NoWarn);CS1587</NoWarn> <!-- XML comment is not placed on a valid language element -->
  33. <NoWarn>$(NoWarn);CS1591</NoWarn> <!-- Missing XML comment for publicly visible type or member -->
  34. <NoWarn>$(NoWarn);CS1734</NoWarn> <!-- XML comment on XXX has a paramref tag for YYY, but there is no parameter by that name -->
  35. </PropertyGroup>
  36. <PropertyGroup Label="Code Analysis">
  37. <AnalysisLevel>latest-Recommended</AnalysisLevel>
  38. <NoWarn>$(NoWarn);CS0108</NoWarn> <!-- XXX hides inherited member -->
  39. <NoWarn>$(NoWarn);CS0114</NoWarn> <!-- XXX hides inherited member -->
  40. <NoWarn>$(NoWarn);CS0162</NoWarn> <!-- Unreachable code detected -->
  41. <NoWarn>$(NoWarn);CS0168</NoWarn> <!-- The variable XXX is declared but never used -->
  42. <NoWarn>$(NoWarn);CS0169</NoWarn> <!-- Unreachable code detected -->
  43. <NoWarn>$(NoWarn);CS0414</NoWarn> <!-- The field XXX is assigned but its value is never used -->
  44. <NoWarn>$(NoWarn);CS0628</NoWarn> <!-- new protected member declared in sealed type -->
  45. <NoWarn>$(NoWarn);CS0649</NoWarn> <!-- Field XXX is never assigned to -->
  46. <NoWarn>$(NoWarn);CS0659</NoWarn> <!-- XXX overrides Object.Equals(object o) but does not override Object.GetHashCode() -->
  47. <NoWarn>$(NoWarn);CS0612</NoWarn> <!-- XXX is obsolete -->
  48. <NoWarn>$(NoWarn);CS0618</NoWarn> <!-- XXX is obsolete: deprecated POI XYZ -->
  49. <NoWarn>$(NoWarn);CA1000</NoWarn> <!-- Do not declare static members on generic types -->
  50. <NoWarn>$(NoWarn);CA1001</NoWarn> <!-- Type 'XXX' owns disposable field(s) 'YYY' but is not disposable -->
  51. <NoWarn>$(NoWarn);CA1010</NoWarn> <!-- Publicly-visible types should implement the generic version to broaden usability -->
  52. <NoWarn>$(NoWarn);CA1018</NoWarn> <!-- Specify AttributeUsage -->
  53. <NoWarn>$(NoWarn);CA1036</NoWarn> <!-- should define operator(s) '==, !=, <, <=, >, >=' since it implements IComparable -->
  54. <NoWarn>$(NoWarn);CA1041</NoWarn> <!-- Provide a message for the ObsoleteAttribute that marks Evaluate as Obsolete -->
  55. <NoWarn>$(NoWarn);CA1051</NoWarn> <!-- Do not declare visible instance fields -->
  56. <NoWarn>$(NoWarn);CA1061</NoWarn> <!-- XXX hides a more specific base class method -->
  57. <NoWarn>$(NoWarn);CA1304</NoWarn> <!-- The behavior of 'string.Compare(string, string, bool)' could vary based on the current user's locale settings. -->
  58. <NoWarn>$(NoWarn);CA1305</NoWarn> <!-- The behavior of XXX could vary based on the current user's locale settings. -->
  59. <NoWarn>$(NoWarn);CA1309</NoWarn> <!-- Use ordinal string comparison -->
  60. <NoWarn>$(NoWarn);CA1310</NoWarn> <!-- The behavior could vary based on the current user's locale settings -->
  61. <NoWarn>$(NoWarn);CA1311</NoWarn> <!-- Specify a culture or use an invariant version to avoid implicit dependency on current culture -->
  62. <NoWarn>$(NoWarn);CA1507</NoWarn> <!-- Use nameof in place of string literal -->
  63. <NoWarn>$(NoWarn);CA1510</NoWarn> <!-- Use 'ArgumentNullException.ThrowIfNull' instead of explicitly throwing a new exception instance -->
  64. <NoWarn>$(NoWarn);CA1512</NoWarn> <!-- Use 'ArgumentOutOfRangeException.ThrowIfGreaterThan' instead of explicitly throwing a new exception instance -->
  65. <NoWarn>$(NoWarn);CA1514</NoWarn> <!-- 'string.Substring(int, int)' uses a redundant length calculation that can be removed -->
  66. <NoWarn>$(NoWarn);CA1707</NoWarn> <!-- Remove the underscores from member name -->
  67. <NoWarn>$(NoWarn);CA1708</NoWarn> <!-- should differ by more than case -->
  68. <NoWarn>$(NoWarn);CA1710</NoWarn> <!-- Rename type name XXX so that it does not end in YYY -->
  69. <NoWarn>$(NoWarn);CA1711</NoWarn> <!-- Rename type name XXX so that it does not end in YYY -->
  70. <NoWarn>$(NoWarn);CA1716</NoWarn> <!-- Rename type XXX so that it no longer conflicts with the reserved language keyword -->
  71. <NoWarn>$(NoWarn);CA1720</NoWarn> <!-- Identifier 'XXX' contains type name -->
  72. <NoWarn>$(NoWarn);CA1725</NoWarn> <!-- Change parameter name -->
  73. <NoWarn>$(NoWarn);CA1805</NoWarn> <!-- Member XXX is explicitly initialized to its default value -->
  74. <NoWarn>$(NoWarn);CA1806</NoWarn> <!-- .ctor creates a new instance of XXX which is never used. -->
  75. <NoWarn>$(NoWarn);CA1816</NoWarn> <!-- call GC.SuppressFinalize(object) -->
  76. <NoWarn>$(NoWarn);CA1830</NoWarn> <!-- Remove the ToString call in order to use a strongly-typed StringBuilder overload -->
  77. <NoWarn>$(NoWarn);CA1846</NoWarn> <!-- Prefer 'AsSpan' over 'Substring' when span-based overloads are available -->
  78. <NoWarn>$(NoWarn);CA1834</NoWarn> <!-- Member XXX is explicitly initialized to its default value -->
  79. <NoWarn>$(NoWarn);CA1845</NoWarn> <!-- Use span-based 'string.Concat' and 'AsSpan' instead of 'Substring' -->
  80. <NoWarn>$(NoWarn);CA1850</NoWarn> <!-- Prefer static 'System.Security.Cryptography.MD5.HashData' method over 'ComputeHash' -->
  81. <NoWarn>$(NoWarn);CA1862</NoWarn> <!-- Prefer the string comparison method overload -->
  82. <NoWarn>$(NoWarn);CA1872</NoWarn> <!-- Prefer 'System.Convert.ToHexString(byte[])' over call chains based on 'System.BitConverter.ToString(byte[])' -->
  83. <NoWarn>$(NoWarn);CA2019</NoWarn> <!-- 'ThreadStatic' fields should not use inline initialization -->
  84. <NoWarn>$(NoWarn);CA2022</NoWarn> <!-- Avoid inexact read -->
  85. <NoWarn>$(NoWarn);CA2201</NoWarn> <!-- Exception type System.IndexOutOfRangeException is reserved by the runtime -->
  86. <NoWarn>$(NoWarn);CA2208</NoWarn> <!-- Method XXX.Remove passes parameter name 'item' as the message argument to a ArgumentNullException constructor. -->
  87. <NoWarn>$(NoWarn);CA2211</NoWarn> <!-- Non-constant fields should not be visible -->
  88. <NoWarn>$(NoWarn);CA2219</NoWarn> <!-- Do not raise an exception from within a finally clause -->
  89. <NoWarn>$(NoWarn);CA2241</NoWarn> <!-- Provide correct arguments to formatting methods -->
  90. <NoWarn>$(NoWarn);CA2263</NoWarn> <!-- Prefer the generic overload 'System.Enum.GetValues<TEnum>()' instead of 'System.Enum.GetValues(System.Type)' -->
  91. <NoWarn>$(NoWarn);CA3075</NoWarn> <!-- Unsafe overload of 'LoadXml' method -->
  92. <NoWarn>$(NoWarn);CA5351</NoWarn> <!-- broken cryptographic algorithm -->
  93. <NoWarn>$(NoWarn);CA5369</NoWarn> <!-- This overload of the 'XmlSerializer.Deserialize' method is potentially unsafe. -->
  94. <NoWarn>$(NoWarn);SYSLIB0021;SYSLIB0051</NoWarn> <!-- Deprecated API usage -->
  95. </PropertyGroup>
  96. <ItemGroup>
  97. <None Include="..\LICENSE" Pack="true" Visible="false" PackagePath="" />
  98. <None Include="..\build\README.md" Pack="true" Visible="false" PackagePath="" />
  99. <None Include="..\logo\*.png" Pack="true" Visible="false" PackagePath="logo\" />
  100. <None Include="..\logo\*.jpg" Pack="true" Visible="false" PackagePath="logo\" />
  101. </ItemGroup>
  102. <ItemGroup>
  103. <PackageReference Include="NuGetizer">
  104. <PrivateAssets>all</PrivateAssets>
  105. <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
  106. </PackageReference>
  107. </ItemGroup>
  108. </Project>