Git Product home page Git Product logo

nsdepcop's Introduction

NsDepCop - Namespace Dependency Checker Tool for C#

Build Status

NsDepCop is a static code analysis tool that helps you to enforce namespace dependency rules in C# projects.

  • Runs as part of the build process and reports dependency problems.
  • No more unplanned or unnoticed dependencies in your system.

What is this dependency control anyway?

Getting Started

  1. Add the NsDepCop NuGet package to your C# projects: NuGet Package
  2. Add a file called config.nsdepcop. Edit it and describe dependency rules.
  3. Dependency violations will be underlined in the code editor and also reported at build time just like compiler errors/warnings.

See the Help for details.

Optional Stuff

  • Install the NsDepCop Config XML Schema Support for Visual Studio to get validation and IntelliSense while editing the config.nsdepcop files.
    • For Visual Studio 2017/2019: Visual Studio extension
    • For Visual Studio 2015: see the instructions in Help.

Changes in v2.0

The big change in v2.0 is that the implementation changed from MSBuild task + Visual Studio Extension to a standard Roslyn analyzer.

  • Supports .NET Core / .NET 5 projects too.
  • No need for the NsDepCop Visual Studio Extension any more.
  • Requires Visual Studio 2019 (16.10.0 or later).
    • Dropped support for VS 2015/2017. For those, use NsDepCop v1.11.0.
  • No need for the out-of-process service host any more.
    • No more "Unable to communicate with NsDepCop service".

Please note that the AutoLowerMaxIssueCount feature is temporarily not supported. Do not yet upgrade to v2.0 if you're using that.

Versions

Feedback

  • Please use the Issue Tracker to record bugs and feature requests.
  • Or find me on twitter Follow on Titter

More Info

Thanks to

License

nsdepcop's People

Contributors

mcintyre321 avatar realvizu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.