A NuGet package that configures .NET projects for endjin's recommended engineering practices
When you add a reference to this package via NuGet, it does the following:
- sets a default (c) string (note: if you're not endjin, you will probably want to change this)
- configures XML doc output
- provides default settings for NuGet package metadata
- enables sourcelink on projects that are building NuGet packages
- makes warnings errors
- disables the more vexing Roslynator and StyleCop warnings
- provides default stylecop.json and .editorconfig files at the solution level if you don't yet have theses
- detects whether you're building for a NuGet package or a non-packaged target, and adjusts the warning set slightly accordingly (unless you ask it not to)
- ensures that if you have a local.setting.json it's configured to be copied to the output folder if it changes
- adds a reference to StyleCop.Analyzers
The set of code analysis rules will gradually change because the .NET SDK incorporates new ones over time. If you want to pin to a particular era of rules, you can set the EnableNETAnalyzers
build property to false, and then add a reference to the Microsoft.CodeAnalysis.NetAnalyzers
NuGet package instead.
The project is hosted on Azure DevOps under the endjin-labs
org.
The NuGet packages for the project, hosted on NuGet.org are:
This project is available under the Apache 2.0 open source license.
For any licensing questions, please email [email protected]
This project is sponsored by endjin, a UK based Microsoft Gold Partner for Cloud Platform, Data Platform, Data Analytics, DevOps, a Power BI Partner, and .NET Foundation Corporate Sponsor.
We help small teams achieve big things.
For more information about our products and services, or for commercial support of this project, please contact us.
We produce two free weekly newsletters; Azure Weekly for all things about the Microsoft Azure Platform, and Power BI Weekly.
Keep up with everything that's going on at endjin via our blog, follow us on Twitter, or LinkedIn.
Our other Open Source projects can be found on our website
This project has adopted a code of conduct adapted from the Contributor Covenant to clarify expected behavior in our community. This code of conduct has been adopted by many other projects. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.