NDepend User Voice
Welcome to the NDepend User Voice page. Let us know what you would like to see in future versions of NDepend. This site is for suggestions and ideas. If you need to report a bug, please send us an email at support@ndepend.com
We look forward to hearing from you!
Thanks – Patrick Smacchia
NDepend Team
41 results found
-
List Rules Violations
In addition to list rules violated, list rules violations in a new dedicated panel. This would be convenient to pinpoint which assembly / which namespace / which class concentrate a lots of violations.
16 votesNDepend v2017.1 just released now supports enhanced Issues Management and even Issues-Set querying through C# LINQ
http://www.ndepend.com/ndepend-v2017#Issues
http://www.ndepend.com/docs/technical-debt#DebtBrowsing -
Provide Visual Studio 15 integration
With the second CTP of VS released recently, there should be a NDepend update soon enabling NDepend in VS '15.
10 votesWe just released NDepend v6 that now support Visual Studio 2015 (current RC and upcoming RTM).
http://www.ndepend.com/ndepend-v6XXNDepend v6 also comes with many VS integration enhancements.
You can download NDepend v6 to try it.
Your feedback at support@ndepend.com will be more than welcome.
You can also re-use your NDepend UserVoice votes for further feature request! -
Path
Improved Path Support: please implement an improvement to Path support such that I can use both relative path + path variables in the ndproj file.
This is important as I want to be able to:
add specific assemblies to the ndproj using a relative path. This means that when I branch, I don't need to update the default value to include the new branch name when using Visual NDepend
support two standard arguments used through our build process $(Configuration) and $(Platform)
Example of what I want to be able to do in he Path References screen (screenshots available on request):
…
9 votesthis was done with v5.4 end of 2014, sorry for not closing this earlier
-
Add a command line argument to Depend.Console.exe to be able to pass the code coverage files
When building with TeamCity you can generate dotCover coverage files which would be convenient to be able to pass as parameters to Depend.Console.exe
7 votesDone in v5.1.0 just uploaded on our website.
-
7 votes
Implemented with version 2023.2.0, 100% of source code elements including fields and enumeration values are now resolved
-
7 votes
Done in the new version v5.2. We also added support for UNC netwrok path and marco/variable facilities like in $(SolutionDir)
-
Update .NET Profile Directory Resolution
When using a .NET Profile, the NuGet packages directory stored in the <Dirs> element of the project is fully resolved to include the username. This poses a problem when committing the ndproj file to source control since the project settings are specific to a developer machine. It would be better to use %userprofile% instead:
%userprofile%\.nuget\packagesEven further, would it be best to just store the .NET Profile configuration itself in the ndproj project file instead of the corresponding paths? The resolved paths could possibly be saved in the suo file instead. This would also help resolve issues when there are…
6 votesCompleted with NDepend version 2022.2.0
-
Support UNC Paths and Shared Drives paths
Support UNC Paths and Shared Drives paths for files and dirs paths referenced by NDepend Projects
4 votesDone in the new version v5.2. We also added support for path prefixed with environment variable and macro/variable facilities like in $(SolutionDir)
-
View graph from selected method
Drill into a Method to viewing the dependency graph from that point down only.
4 votesWith NDepend v2020.1 dependency graph has been completely rebuilt
and it is now possible to drill into a method graph from its source code definition to get Callers and/or Callees.
https://www.ndepend.com/whatsnew -
Support for dark theme in Visual Studio
Many developers use dark (or various others) theme in VS. NDepend should support that and style its windows accordingly.
4 votesNDepend v2018.1 now supports dark theme https://www.ndepend.com/whatsnew
-
Improve mapping of NDepend issues to Sonarcube
Currently when using NDepend with SonarCube all critical rules are mapped to blocker issues and all other to major issues.
Since NDepend 2017 has introduced the same granularity of issue severity as SonarCube has it would make sense to map it using this severity rating instead of using the obsolete critical/none critical rules flag of NDepend.
3 votesWe improved a lot the SonarQube integration with NDepend v2017.2 just released, see all details here http://www.ndepend.com/ndepend-v2017#ImprovedSonarQubeIntegration
-
2 votes
NDepend v2020.1 has just been released and within this version the dependency graph has been completely rebuilt.
https://www.ndepend.com/whatsnewThe new Cluster feature defines groups of namespaces and view dependency graph among them.
-
Add importance weighting to rules for more robust "fails"
Instead of a binary critical or not critical flag for rules, it would be nice to have a weighting system for rules (e.g. "each violation of this rule is worth 3, but each violation of this important rule is worth 8").
Then perhaps we could assign a threshold for whether our analysis failed based on point totals, or some percentage formula.1 votewith the technical debt support of v2017 that let’s assign a cost-to-fix and a severity estimation for each issue
-
Description and Code for Avoid methods with too many parameters Do Not Match
The description of rule Avoid methods with too many parameters says "This rule matches methods with more than 8 parameters.". The source code finds all methods with greater than 6 parameters.
warnif count > 0 from m in JustMyCode.Methods where
m.NbParameters >= 71 vote -
If Statements Counted as Local Variables?
Is NDepend counting if statements as local variables? The number of local variables reported by NDepend is often much higher than what I manually count. In some cases NDepend is reporting 10+ more local variables in addition to the number that are actually declared.
1 votecompleted in v2017.3
-
Do not open all kinds of (tool) windows when/after running analysis
I prefer to open/select and postion the windows when and how myself.
I often do not need or want to view the default windows opened and it creates a kind of restlessness in the UI.1 votev2021.2.3 released on 22th November 2021 fixes this
-
Let's the user edit multiple Graphs and multiple Matrix
Save Graphs and Matrix edition in XML files referenced from the NDepend projects.
1 voteWith NDepend v2020.1 dependency graph has been completely rebuilt and it is now possible to load / save graphs into XML files with extension .ndgraph referenced by the NDepend project.
https://www.ndepend.com/whatsnew -
DebtSettings handling when SettingsFilePath is set
When storing debt settings in an external .ndsettings file, the settings are still pulled in to the ndproj file when the first scan is run. There should be an option to prevent these settings from being copied into the ndproj file. When managing ndproj files using source control, this would lead to fewer changes since the when the external ndsettings file is changed, it would not impact the ndproj files referencing it.
1 voteComplete with version 2022.2.1
-
Remove storage of assembly names from NDepend project file
When NDepend analysis is run for the first time, it adds a list of framework assemblies to the ndproj file, in the <FrameworkAssemblies> section. There doesn't appear to be a way to prevent this from happening. When managing ndproj files in source control, this could lead to additional updates to the ndproj file whenever references within the projects are added or removed. It would be ideal to have an option to prevent this from happening, with these assemblies always being assessed against the build.
1 voteCompleted with NDepend version 2022.2.0
-
Ignore "Avoid having different types with same name" rule for extension classes
For static classes that only contain extension methods for a particular type, often the class name is in the format of "[Type]Extensions". These classes are most often transparent to the consuming code, and so the reasoning behind the critical rule "Avoid having different types with same name" need not apply, and certainly should not be critical.
"Such practice leads confusion and also naming collision in source files that use different types with same name."
1 vote
- Don't see your idea?