mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Also added disambiguation rule for `.proj` and `.user`. ##### CSCFG https://github.com/search?utf8=%E2%9C%93&q=extension%3Acscfg+NOT+nothack&type=Code (16.7K hits) ##### CSDEF https://github.com/search?utf8=%E2%9C%93&q=extension%3Acsdef+NOT+nothack&type=Code (12.7K hits) ##### CCPROJ https://github.com/search?utf8=%E2%9C%93&q=extension%3Accproj+NOT+nothack&type=Code (5K hits) ##### DEPPROJ https://github.com/search?utf8=%E2%9C%93&q=extension%3Adepproj+NOT+nothack&type=Code (505 hits) ##### NDPROJ https://github.com/search?utf8=%E2%9C%93&q=extension%3Andproj+NOT+nothack&type=Code (194 hits) ##### PROJ https://github.com/search?utf8=%E2%9C%93&q=extension%3Aproj+%28project+OR+Property+OR+Import+OR+xml+OR+xmlns%29&type=Code (35K hits) ##### SHPROJ https://github.com/search?utf8=%E2%9C%93&q=extension%3Ashproj+NOT+nothack&type=Code (13K hits)
		
			
				
	
	
		
			78 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
 | 
						|
<NDepend AppName="ExampleNDApp" Platform="DotNet">
 | 
						|
  <OutputDir KeepHistoric="True" KeepXmlFiles="True">c:\temp</OutputDir>
 | 
						|
  <Assemblies />
 | 
						|
  <FrameworkAssemblies />
 | 
						|
  <Dirs>
 | 
						|
    <Dir>C:\Windows\Microsoft.NET\Framework\v4.0.30319</Dir>
 | 
						|
    <Dir>C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF</Dir>
 | 
						|
  </Dirs>
 | 
						|
  <Report Kind="0" SectionsEnabled="12287" XslPath="" Flags="64512">
 | 
						|
    <Section Enabled="True">Application Metrics</Section>
 | 
						|
    <Section Enabled="True">.NET Assemblies Metrics</Section>
 | 
						|
    <Section Enabled="True">Treemap Metric View</Section>
 | 
						|
    <Section Enabled="True">.NET Assemblies Abstractness vs. Instability</Section>
 | 
						|
    <Section Enabled="True">.NET Assemblies Dependencies</Section>
 | 
						|
    <Section Enabled="True">.NET Assemblies Dependency Graph</Section>
 | 
						|
    <Section Enabled="True">.NET Assemblies Build Order</Section>
 | 
						|
    <Section Enabled="True">Analysis Log</Section>
 | 
						|
    <Section Enabled="True">CQL Rules Violated</Section>
 | 
						|
    <Section Enabled="True">Types Metrics</Section>
 | 
						|
    <Section Enabled="False">Types Dependencies</Section>
 | 
						|
  </Report>
 | 
						|
  <BuildComparisonSetting ProjectMode="DontCompare" BuildMode="MostRecentAnalysisResultAvailable" ProjectFileToCompareWith="" BuildFileToCompareWith="" NDaysAgo="1" />
 | 
						|
  <BaselineInUISetting ProjectMode="DontCompare" BuildMode="MostRecentAnalysisResultAvailable" ProjectFileToCompareWith="" BuildFileToCompareWith="" NDaysAgo="1" />
 | 
						|
  <CoverageFiles UncoverableAttribute="" />
 | 
						|
  <SourceFileRebasing FromPath="" ToPath="" />
 | 
						|
  <Queries>
 | 
						|
    <Group Name="Code Quality" Active="True" ShownInReport="False">
 | 
						|
      <Query Active="True" DisplayList="True" DisplayStat="True" DisplaySelectionView="False" IsCriticalRule="False"><![CDATA[// <Name>Discard generated and designer Methods from JustMyCode</Name>
 | 
						|
// --- Make sure to make this query richer to discard generated methods from NDepend rules results ---
 | 
						|
notmycode 
 | 
						|
 | 
						|
//
 | 
						|
// First define source files paths to discard
 | 
						|
//
 | 
						|
from a in Application.Assemblies 
 | 
						|
where a.SourceFileDeclAvailable 
 | 
						|
let asmSourceFilesPaths = a.SourceDecls.Select(s => s.SourceFile.FilePath)
 | 
						|
 | 
						|
let sourceFilesPathsToDiscard = (
 | 
						|
    from filePath in asmSourceFilesPaths 
 | 
						|
    let filePathLower= filePath.ToString().ToLower()
 | 
						|
    where     
 | 
						|
      filePathLower.EndsWithAny(
 | 
						|
        ".g.cs",        // Popular pattern to name generated files.
 | 
						|
        ".g.vb",
 | 
						|
        ".xaml",        // notmycode WPF xaml code
 | 
						|
        ".designer.cs", // notmycode C# Windows Forms designer code
 | 
						|
        ".designer.vb") // notmycode VB.NET Windows Forms designer code
 | 
						|
       ||
 | 
						|
       // notmycode methods in source files in a directory containing generated
 | 
						|
       filePathLower.Contains("generated")
 | 
						|
  select filePath
 | 
						|
).ToHashSet() 
 | 
						|
  
 | 
						|
//
 | 
						|
// Second: discard methods in sourceFilesPathsToDiscard 
 | 
						|
//
 | 
						|
from m in a.ChildMethods
 | 
						|
where (m.SourceFileDeclAvailable && 
 | 
						|
       sourceFilesPathsToDiscard.Contains(m.SourceDecls.First().SourceFile.FilePath)) ||
 | 
						|
      // Generated methods might be tagged with this attribute
 | 
						|
      m.HasAttribute ("System.CodeDom.Compiler.GeneratedCodeAttribute".AllowNoMatch())
 | 
						|
select new { m, m.NbLinesOfCode }]]></Query>
 | 
						|
      <Query Active="True" DisplayList="True" DisplayStat="True" DisplaySelectionView="False" IsCriticalRule="False"><![CDATA[// <Name>Discard generated Fields from JustMyCode</Name>
 | 
						|
// --- Make sure to make this query richer to discard generated fields from NDepend rules results ---
 | 
						|
notmycode
 | 
						|
from f in Application.Fields where 
 | 
						|
  f.HasAttribute ("System.CodeDom.Compiler.GeneratedCodeAttribute".AllowNoMatch()) ||
 | 
						|
 | 
						|
  // Eliminate "components" generated in Windows Form Conrol context
 | 
						|
  f.Name == "components" && f.ParentType.DeriveFrom("System.Windows.Forms.Control".AllowNoMatch())
 | 
						|
select f]]></Query>
 | 
						|
    </Group>
 | 
						|
  </Queries>
 | 
						|
  <WarnFilter />
 | 
						|
</NDepend>
 |