forked from phoedos/pmd
[doc] Add pages for all supported language
This commit is contained in:
docs
_data/sidebars
_includes
_plugins
css
pages/pmd/languages
@ -409,6 +409,32 @@ entries:
|
||||
- title: Apex
|
||||
url: /pmd_languages_apex.html
|
||||
output: web, pdf
|
||||
- title: C/C++
|
||||
url: /pmd_languages_cpp.html
|
||||
output: web, pdf
|
||||
- title: C#
|
||||
url: /pmd_languages_cs.html
|
||||
output: web, pdf
|
||||
- title: Coco
|
||||
url: /pmd_languages_coco.html
|
||||
output: web, pdf
|
||||
- title: Dart
|
||||
url: /pmd_languages_dart.html
|
||||
output: web, pdf
|
||||
- title: Fortran
|
||||
url: /pmd_languages_fortran.html
|
||||
output: web, pdf
|
||||
- title: Gherkin
|
||||
url: /pmd_languages_gherkin.html
|
||||
output: web, pdf
|
||||
- title: Go
|
||||
url: /pmd_languages_go.html
|
||||
output: web, pdf
|
||||
- title: Groovy
|
||||
url: /pmd_languages_groovy.html
|
||||
- title: HTML
|
||||
url: /pmd_languages_html.html
|
||||
output: web, pdf
|
||||
- title: Java
|
||||
url: /pmd_languages_java.html
|
||||
output: web, pdf
|
||||
@ -418,30 +444,57 @@ entries:
|
||||
- title: JSP
|
||||
url: /pmd_languages_jsp.html
|
||||
output: web, pdf
|
||||
- title: Julia
|
||||
url: /pmd_languages_julia.html
|
||||
output: web, pdf
|
||||
- title: Kotlin
|
||||
url: /pmd_languages_kotlin.html
|
||||
output: web, pdf
|
||||
- title: Lua
|
||||
url: /pmd_languages_lua.html
|
||||
output: web, pdf
|
||||
- title: Matlab
|
||||
url: /pmd_languages_matlab.html
|
||||
output: web, pdf
|
||||
- title: Modelica
|
||||
url: /pmd_languages_modelica.html
|
||||
output: web, pdf
|
||||
- title: Objective-C
|
||||
url: /pmd_languages_objectivec.html
|
||||
output: web, pdf
|
||||
- title: Perl
|
||||
url: /pmd_languages_perl.html
|
||||
output: web, pdf
|
||||
- title: PHP
|
||||
url: /pmd_languages_php.html
|
||||
output: web, pdf
|
||||
- title: PLSQL
|
||||
url: /pmd_languages_plsql.html
|
||||
output: web, pdf
|
||||
- title: Python
|
||||
url: /pmd_languages_python.html
|
||||
output: web, pdf
|
||||
- title: Ruby
|
||||
url: /pmd_languages_ruby.html
|
||||
output: web, pdf
|
||||
- title: Scala
|
||||
url: /pmd_languages_scala.html
|
||||
output: web, pdf
|
||||
- title: Swift
|
||||
url: /pmd_languages_swift.html
|
||||
output: web, pdf
|
||||
- title: TSql
|
||||
url: /pmd_languages_tsql.html
|
||||
output: web, pdf
|
||||
- title: Visualforce
|
||||
url: /pmd_languages_visualforce.html
|
||||
output: web, pdf
|
||||
- title: Velocity Template Language (VTL)
|
||||
url: /pmd_languages_vm.html
|
||||
output: web, pdf
|
||||
- title: XML and XML dialects
|
||||
url: /pmd_languages_xml.html
|
||||
output: web, pdf
|
||||
- title: HTML
|
||||
url: /pmd_languages_html.html
|
||||
output: web, pdf
|
||||
- title: Gherkin
|
||||
url: /pmd_languages_gherkin.html
|
||||
output: web, pdf
|
||||
- title: Julia
|
||||
url: /pmd_languages_julia.html
|
||||
output: web, pdf
|
||||
- title: Coco
|
||||
url: /pmd_languages_coco.html
|
||||
output: web, pdf
|
||||
- title: Developer Documentation
|
||||
output: web, pdf
|
||||
folderitems:
|
||||
|
@ -1,9 +1,9 @@
|
||||
<details>
|
||||
<summary>Name: {{include.name}}</summary>
|
||||
<details class="language-info">
|
||||
<summary>Language Info for {{include.name}}</summary>
|
||||
<div class="card">
|
||||
<ul class="list-group list-group-flush">
|
||||
<li class="list-group-item">Implementation: {% jdoc include.implementation %}</li>
|
||||
<li class="list-group-item">id: {{include.id}}</li>
|
||||
<li class="list-group-item">Id: {{include.id}}</li>
|
||||
<li class="list-group-item">PMD: {% if include.supports_pmd %}✔️{% else %}❌{% endif %}</li>
|
||||
<li class="list-group-item">CPD: {% if include.supports_cpd %}✔️{% else %}❌{% endif %}</li>
|
||||
</ul>
|
||||
|
@ -99,10 +99,11 @@ class JDocNamespaceDeclaration < Liquid::Tag
|
||||
private
|
||||
|
||||
JDOC_NAMESPACE_MAP = "jdoc_nspaces"
|
||||
RESERVED_NSPACES = ['ant', 'apex', 'cli', 'core', 'cpp', 'cs', 'dart', 'dist', 'doc', 'fortran', 'go', 'groovy', 'java',
|
||||
'javascript', 'jsp',
|
||||
RESERVED_NSPACES = ['ant', 'apex', 'cli', 'coco', 'core', 'cpp', 'cs', 'dart', 'dist', 'doc',
|
||||
'fortran', 'gherkin', 'go', 'groovy', 'html', 'java',
|
||||
'javascript', 'jsp', 'julia',
|
||||
'kotlin', 'lang-test', 'lua', 'matlab', 'objectivec', 'perl', 'php', 'plsql', 'python', 'ruby', 'scala', 'swift',
|
||||
'test', 'test-schema', 'ui',
|
||||
'test', 'test-schema', 'tsql', 'ui',
|
||||
'modelica', 'visualforce', 'vm', 'xml'].flat_map {|m| [m, "pmd-" + m]}
|
||||
|
||||
def self.make_base_namespaces
|
||||
|
@ -1008,8 +1008,11 @@ span.soft {
|
||||
}
|
||||
|
||||
@media (min-height: 600px) and (min-width: 990px) {
|
||||
/* sticky sidebar for big screens */
|
||||
#mysidebar {
|
||||
position: fixed !important;
|
||||
overflow: scroll;
|
||||
height: 80%;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1268,3 +1271,7 @@ h4.panel-title {
|
||||
a.edit-header {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.language-info {
|
||||
margin: 2em;
|
||||
}
|
||||
|
@ -1,13 +1,13 @@
|
||||
---
|
||||
title: Apex support
|
||||
permalink: pmd_languages_apex.html
|
||||
author: Clément Fournier
|
||||
last_updated: September 2023 (7.0.0)
|
||||
author: Clément Fournier
|
||||
tags: [languages]
|
||||
summary: "Apex-specific features and guidance"
|
||||
---
|
||||
|
||||
{% include language_info.html name='Apex' id='apex' implementation='apex::lang.apex.ApexLanguageModule' supports_pmd='✔️' supports_cpd='✔️' %}
|
||||
{% include language_info.html name='Apex' id='apex' implementation='apex::lang.apex.ApexLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
## Metrics framework
|
||||
|
||||
|
@ -1,8 +1,12 @@
|
||||
---
|
||||
title: Coco
|
||||
permalink: pmd_languages_coco.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Coco' id='coco' implementation='coco::lang.coco.CocoLanguageModule' supports_cpd=true %}
|
||||
|
||||
Coco is a modern programming language designed specifically for building event-driven software.
|
||||
It is part of the Coco Platform from <https://cocotec.io/>.
|
||||
|
||||
|
8
docs/pages/pmd/languages/cpp.md
Normal file
8
docs/pages/pmd/languages/cpp.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: C/C++
|
||||
permalink: pmd_languages_cpp.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='C++' id='cpp' implementation='cpp::lang.cpp.CppLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/cs.md
Normal file
8
docs/pages/pmd/languages/cs.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: C#
|
||||
permalink: pmd_languages_cs.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='C#' id='cs' implementation='cs::lang.cs.CsLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/dart.md
Normal file
8
docs/pages/pmd/languages/dart.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Dart
|
||||
permalink: pmd_languages_dart.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Dart' id='dart' implementation='dart::lang.dart.DartLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/fortran.md
Normal file
8
docs/pages/pmd/languages/fortran.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Fortran
|
||||
permalink: pmd_languages_fortran.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Fortran' id='fortran' implementation='fortran::lang.fortran.FortranLanguageModule' supports_cpd=true %}
|
@ -1,8 +1,12 @@
|
||||
---
|
||||
title: Gherkin
|
||||
permalink: pmd_languages_gherkin.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Gherkin' id='gherkin' implementation='gherkin::lang.gherkin.GherkinLanguageModule' supports_cpd=true %}
|
||||
|
||||
The [Gherkin](https://cucumber.io/docs/gherkin/) language is used to define test cases for the
|
||||
[Cucumber](https://cucumber.io/) testing tool for behavior-driven development.
|
||||
The Gherkin syntax is designed to be non-technical, making it human-readable for a wide audience.
|
||||
|
8
docs/pages/pmd/languages/go.md
Normal file
8
docs/pages/pmd/languages/go.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Go
|
||||
permalink: pmd_languages_go.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Go' id='go' implementation='go::lang.go.GoLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/groovy.md
Normal file
8
docs/pages/pmd/languages/groovy.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Groovy
|
||||
permalink: pmd_languages_groovy.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Groovy' id='groovy' implementation='groovy::lang.groovy.GroovyLanguageModule' supports_cpd=true %}
|
@ -1,9 +1,12 @@
|
||||
---
|
||||
title: Processing HTML files
|
||||
permalink: pmd_languages_html.html
|
||||
last_updated: April 2022 (6.45.0)
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='HTML' id='html' implementation='html::lang.html.HtmlLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
## The HTML language module
|
||||
|
||||
**Since:** 6.45.0
|
||||
@ -14,11 +17,9 @@ last_updated: April 2022 (6.45.0)
|
||||
|
||||
The HTML language module uses [jsoup](https://jsoup.org/) for parsing.
|
||||
|
||||
XPath 2.0 rules are supported, but the DOM is not always a typical XML/XPath DOM.
|
||||
XPath rules are supported, but the DOM is not always a typical XML/XPath DOM.
|
||||
In the Designer, text nodes appear as nodes with name "#text", but they can
|
||||
be selected as usual using `text()`.
|
||||
|
||||
XML Namespaces are not supported. The local name of attributes include the prefix,
|
||||
XML Namespaces are not supported. The local name of attributes includes the prefix,
|
||||
so that you have to select attributes by e.g. `//*[@*[local-name() = 'if:true']]`.
|
||||
|
||||
Only XPath 1.0 rules are not supported.
|
||||
|
@ -2,12 +2,12 @@
|
||||
title: Java support
|
||||
permalink: pmd_languages_java.html
|
||||
author: Clément Fournier
|
||||
last_updated: March 2021 (7.0.0)
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
summary: "Java-specific features and guidance"
|
||||
---
|
||||
|
||||
{% include language_info.html name='Java' id='java' implementation='java::lang.java.JavaLanguageModule' supports_pmd='✔️' supports_cpd='✔️' %}
|
||||
{% include language_info.html name='Java' id='java' implementation='java::lang.java.JavaLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
{% include warning.html content="WIP, todo for pmd 7" %}
|
||||
|
||||
|
@ -1,10 +1,15 @@
|
||||
---
|
||||
title: JavaScript and TypeScript
|
||||
permalink: pmd_languages_js_ts.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
summary: "JavaScript and TypeScript infos"
|
||||
---
|
||||
|
||||
{% include language_info.html name='JavaScript' id='ecmascript' implementation='javascript::lang.ecmascript.EcmascriptLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
{% include language_info.html name='TypeScript' id='ts' implementation='javascript::lang.typescript.TsLanguageModule' supports_cpd=true %}
|
||||
|
||||
|
||||
**JavaScript** support is using [Rhino](https://github.com/mozilla/rhino) for parsing and supports CPD as well as
|
||||
PMD with rules.
|
||||
|
||||
|
@ -1,11 +1,14 @@
|
||||
---
|
||||
title: JSP Support
|
||||
permalink: pmd_languages_jsp.html
|
||||
author: Pieter Vanraemdonck
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
author: Pieter Vanraemdonck
|
||||
summary: "JSP-specific features and guidance"
|
||||
---
|
||||
|
||||
{% include language_info.html name='Java Server Pages' id='jsp' implementation='jsp::lang.jsp.JspLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
## What is currently supported and what is not
|
||||
|
||||
In short, JSP files that are XHTML-compliant, are supported.
|
||||
@ -38,16 +41,3 @@ The XHTML support means that:
|
||||
further broken down. If you want to create rules that check the code
|
||||
inside EL expressions or JSP scriptlets (a.o.), you currently would
|
||||
have to do "manual" string manipulation (e.g. using regular expressions).
|
||||
|
||||
## How to use it
|
||||
|
||||
Using the command-line interface, two new options can be used in the arguments string:
|
||||
|
||||
* "-jsp" : this triggers checking JSP files (they are not checked by default)
|
||||
* "-nojava" : this tells PMD not to check java source files (they are checked by default)
|
||||
|
||||
Using the Ant task, you decide if PMD must check JSP files by choosing
|
||||
what files are given to the PMD task. If you use a fileset that
|
||||
contains only ".java" files, JSP files obviously will not be checked.
|
||||
|
||||
If you want to call the PMD API for checking JSP files, you should investigate the javadoc of PMD.
|
||||
|
@ -1,9 +1,13 @@
|
||||
---
|
||||
title: Julia
|
||||
permalink: pmd_languages_julia.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
The [Julia](https://julialang.org/) is dynamically typed, like a scripting language,
|
||||
{% include language_info.html name='Julia' id='julia' implementation='julia::lang.julia.JuliaLanguageModule' supports_cpd=true %}
|
||||
|
||||
The [Julia](https://julialang.org/) language is dynamically typed, like a scripting language,
|
||||
and has good support for interactive use.
|
||||
Julia was designed from the beginning for high performance.
|
||||
Julia programs compile to efficient native code for multiple platforms via LLVM.
|
||||
|
@ -1,10 +1,13 @@
|
||||
---
|
||||
title: Kotlin Support
|
||||
permalink: pmd_languages_kotlin.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
summary: "Kotlin-specific features and guidance"
|
||||
---
|
||||
|
||||
{% include language_info.html name='Kotlin' id='kotlin' implementation='kotlin::lang.kotlin.JspLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
Kotlin support in PMD is based on the official grammar from <https://github.com/Kotlin/kotlin-spec>.
|
||||
|
||||
Java-based rules and XPath-based rules are supported.
|
||||
|
@ -108,7 +108,7 @@ The Java language can be configured with the following properties:
|
||||
|
||||
Environment variable: `PMD_APEX_ROOT_DIRECTORY`
|
||||
|
||||
## VisualForce language properties
|
||||
## Visualforce language properties
|
||||
|
||||
- `apexDirectories`: Comma separated list of directories for Apex classes. Absolute
|
||||
or relative to the Visualforce directory. Default is `../classes`. Specifying an
|
||||
|
8
docs/pages/pmd/languages/lua.md
Normal file
8
docs/pages/pmd/languages/lua.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Lua
|
||||
permalink: pmd_languages_lua.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Lua' id='lua' implementation='lua::lang.lua.LuaLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/matlab.md
Normal file
8
docs/pages/pmd/languages/matlab.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Matlab
|
||||
permalink: pmd_languages_matlab.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Matlab' id='matlab' implementation='matlab::lang.matlab.MatlabLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/modelica.md
Normal file
8
docs/pages/pmd/languages/modelica.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Modelica
|
||||
permalink: pmd_languages_modelica.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Modelica' id='modelica' implementation='modelica::lang.modelica.ModelicaLanguageModule' supports_pmd=true supports_cpd=true %}
|
8
docs/pages/pmd/languages/objectivec.md
Normal file
8
docs/pages/pmd/languages/objectivec.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Objective-C
|
||||
permalink: pmd_languages_objectivec.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='objectivec' id='objectivec' implementation='objectivec::lang.objectivec.ObjectiveCLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/perl.md
Normal file
8
docs/pages/pmd/languages/perl.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Perl
|
||||
permalink: pmd_languages_perl.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Perl' id='perl' implementation='perl::lang.perl.PerlLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/php.md
Normal file
8
docs/pages/pmd/languages/php.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: PHP
|
||||
permalink: pmd_languages_php.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='PHP' id='php' implementation='php::lang.php.PhpLanguageModule' supports_cpd=true %}
|
@ -1,11 +1,13 @@
|
||||
---
|
||||
title: PLSQL Support
|
||||
permalink: pmd_languages_plsql.html
|
||||
last_updated: March 2021 (6.33.0)
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
summary: "PLSQL-specific features and guidance"
|
||||
---
|
||||
|
||||
{% include language_info.html name='PLSQL' id='plsql' implementation='plsql::lang.plsql.PLSQLLanguageModule' supports_pmd=true supports_cpd=true %}
|
||||
|
||||
## Parsing Exclusions
|
||||
|
||||
The grammar for PLSQL used in PMD has several bugs and might not parse all DDL scripts
|
||||
@ -17,9 +19,9 @@ which cause PMD to treat the source in between these comments more or less
|
||||
like a multi-line comment, or in other words, just not try to parse them.
|
||||
|
||||
It is good practice to include a reason for excluding inside the
|
||||
`-- PMD-EXCUDE-BEGIN` comment separated by a colon.
|
||||
`-- PMD-EXCLUDE-BEGIN` comment separated by a colon.
|
||||
|
||||
The `PMD-EXCLUDE-BEGIN` and `PMD-EXLUDE-END` comment lines must not contain
|
||||
The `PMD-EXCLUDE-BEGIN` and `PMD-EXCLUDE-END` comment lines must not contain
|
||||
other statements, e.g. `do_xy(); -- PMD-EXCLUDE-BEGIN` is invalid.
|
||||
|
||||
Example:
|
||||
|
8
docs/pages/pmd/languages/python.md
Normal file
8
docs/pages/pmd/languages/python.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Python
|
||||
permalink: pmd_languages_python.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Python' id='python' implementation='python::lang.python.PythonLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/ruby.md
Normal file
8
docs/pages/pmd/languages/ruby.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Ruby
|
||||
permalink: pmd_languages_ruby.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Ruby' id='ruby' implementation='ruby::lang.ruby.RubyLanguageModule' supports_cpd=true %}
|
8
docs/pages/pmd/languages/scala.md
Normal file
8
docs/pages/pmd/languages/scala.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Scala
|
||||
permalink: pmd_languages_scala.html
|
||||
last_updated: September 2023 (7.0.0)
|
||||
tags: [languages]
|
||||
---
|
||||
|
||||
{% include language_info.html name='Scala' id='scala' implementation='scala::lang.scala.ScalaLanguageModule' supports_pmd=true supports_cpd=true %}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user