From 27302bd152897042b4403acc43a73677df33ebf0 Mon Sep 17 00:00:00 2001
From: "PMD CI (pmd-bot)"
Date: Fri, 29 Oct 2021 17:50:40 +0000
Subject: [PATCH] Update documentation
https://github.com/pmd/pmd/actions/runs/1399967827
https://github.com/pmd/pmd/compare/f5fd79d489cf...ac26d3dc6d7c
---
404.html | 12 +
feed.xml | 4 +-
index.html | 47 +
js/mydoc_scroll.html | 12 +
license.html | 12 +
news.html | 12 +
news_archive.html | 12 +
pmd_about_help.html | 12 +
pmd_apex_metrics_index.html | 12 +
pmd_devdocs_building.html | 12 +
pmd_devdocs_development.html | 12 +
pmd_devdocs_experimental_ast_dump.html | 12 +
pmd_devdocs_how_pmd_works.html | 12 +
...devdocs_major_adding_new_cpd_language.html | 12 +
pmd_devdocs_major_adding_new_language.html | 12 +
...cs_major_adding_new_metrics_framework.html | 12 +
pmd_devdocs_major_rule_guidelines.html | 12 +
pmd_devdocs_pmdtester.html | 12 +
pmd_devdocs_roadmap.html | 12 +
pmd_devdocs_rule_deprecation_policy.html | 12 +
pmd_devdocs_writing_documentation.html | 12 +
pmd_java_metrics_index.html | 12 +
pmd_languages_jsp.html | 12 +
pmd_languages_plsql.html | 12 +
pmd_languages_visualforce.html | 1516 +++++++++++++++++
pmd_next_major_development.html | 12 +
...projectdocs_committers_infrastructure.html | 12 +
...jectdocs_committers_main_landing_page.html | 12 +
...docs_committers_merging_pull_requests.html | 12 +
pmd_projectdocs_committers_releasing.html | 12 +
pmd_projectdocs_credits.html | 12 +
pmd_projectdocs_faq.html | 12 +
pmd_projectdocs_trivia_meaning.html | 12 +
pmd_projectdocs_trivia_news.html | 12 +
pmd_projectdocs_trivia_products.html | 12 +
pmd_projectdocs_trivia_similarprojects.html | 12 +
pmd_release_notes.html | 51 +
pmd_release_notes_old.html | 12 +
pmd_rules_apex.html | 12 +
pmd_rules_apex_bestpractices.html | 12 +
pmd_rules_apex_codestyle.html | 12 +
pmd_rules_apex_design.html | 12 +
pmd_rules_apex_documentation.html | 12 +
pmd_rules_apex_errorprone.html | 12 +
pmd_rules_apex_performance.html | 12 +
pmd_rules_apex_security.html | 12 +
pmd_rules_ecmascript.html | 12 +
pmd_rules_ecmascript_bestpractices.html | 12 +
pmd_rules_ecmascript_codestyle.html | 12 +
pmd_rules_ecmascript_errorprone.html | 12 +
pmd_rules_java.html | 12 +
pmd_rules_java_bestpractices.html | 12 +
pmd_rules_java_codestyle.html | 28 +-
pmd_rules_java_design.html | 12 +
pmd_rules_java_documentation.html | 12 +
pmd_rules_java_errorprone.html | 12 +
pmd_rules_java_multithreading.html | 12 +
pmd_rules_java_performance.html | 12 +
pmd_rules_java_security.html | 12 +
pmd_rules_jsp.html | 12 +
pmd_rules_jsp_bestpractices.html | 12 +
pmd_rules_jsp_codestyle.html | 12 +
pmd_rules_jsp_design.html | 12 +
pmd_rules_jsp_errorprone.html | 12 +
pmd_rules_jsp_security.html | 12 +
pmd_rules_modelica.html | 12 +
pmd_rules_modelica_bestpractices.html | 12 +
pmd_rules_plsql.html | 12 +
pmd_rules_plsql_bestpractices.html | 12 +
pmd_rules_plsql_codestyle.html | 12 +
pmd_rules_plsql_design.html | 12 +
pmd_rules_plsql_errorprone.html | 12 +
pmd_rules_pom.html | 12 +
pmd_rules_pom_errorprone.html | 12 +
pmd_rules_scala.html | 12 +
pmd_rules_vf.html | 12 +
pmd_rules_vf_security.html | 12 +
pmd_rules_vm.html | 12 +
pmd_rules_vm_bestpractices.html | 12 +
pmd_rules_vm_design.html | 12 +
pmd_rules_vm_errorprone.html | 12 +
pmd_rules_xml.html | 12 +
pmd_rules_xml_errorprone.html | 12 +
pmd_rules_xsl.html | 12 +
pmd_rules_xsl_codestyle.html | 12 +
pmd_rules_xsl_performance.html | 12 +
pmd_userdocs_best_practices.html | 12 +
pmd_userdocs_cli_reference.html | 12 +
pmd_userdocs_configuring_rules.html | 12 +
pmd_userdocs_cpd.html | 12 +
pmd_userdocs_cpd_report_formats.html | 12 +
...serdocs_extending_defining_properties.html | 12 +
...userdocs_extending_designer_reference.html | 12 +
pmd_userdocs_extending_metrics_howto.html | 12 +
pmd_userdocs_extending_rule_guidelines.html | 12 +
pmd_userdocs_extending_testing.html | 12 +
...userdocs_extending_writing_java_rules.html | 12 +
pmd_userdocs_extending_writing_pmd_rules.html | 12 +
...serdocs_extending_writing_rules_intro.html | 12 +
...serdocs_extending_writing_xpath_rules.html | 12 +
pmd_userdocs_extending_your_first_rule.html | 12 +
pmd_userdocs_incremental_analysis.html | 12 +
pmd_userdocs_installation.html | 12 +
pmd_userdocs_making_rulesets.html | 12 +
pmd_userdocs_report_formats.html | 12 +
pmd_userdocs_suppressing_warnings.html | 12 +
pmd_userdocs_tools.html | 12 +
pmd_userdocs_tools_ant.html | 12 +
pmd_userdocs_tools_ci.html | 12 +
pmd_userdocs_tools_gradle.html | 12 +
pmd_userdocs_tools_java_api.html | 12 +
pmd_userdocs_tools_maven.html | 12 +
search.json | 16 +
sitemap.xml | 6 +
tag_devdocs.html | 14 +
tag_extending.html | 14 +
tag_getting_started.html | 14 +
tag_languages.html | 14 +
tag_metrics.html | 14 +
tag_release_notes.html | 14 +
tag_rule_references.html | 14 +
tag_tools.html | 14 +
tag_troubleshooting.html | 14 +
tag_userdocs.html | 14 +
124 files changed, 3086 insertions(+), 6 deletions(-)
create mode 100644 pmd_languages_visualforce.html
diff --git a/404.html b/404.html
index 8f0a034b90..9a380f570f 100644
--- a/404.html
+++ b/404.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/feed.xml b/feed.xml
index 1ca58ae808..4ed731e58f 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
Intended as a documentation theme based on Jekyll for technical writers documenting software and other technical products, this theme has all the elements you would need to handle multiple products with both multi-level sidebar navigation, tags, and other documentation features.
https://pmd.github.io/pmd/
- Fri, 29 Oct 2021 08:29:30 +0000
- Fri, 29 Oct 2021 08:29:30 +0000
+ Fri, 29 Oct 2021 17:48:17 +0000
+ Fri, 29 Oct 2021 17:48:17 +0000
Jekyll v3.9.0
diff --git a/index.html b/index.html
index 193653d8d5..d25802c191 100644
--- a/index.html
+++ b/index.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -2173,6 +2185,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -2795,6 +2812,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -3558,6 +3580,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -4256,6 +4283,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -4711,6 +4743,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -5630,6 +5667,11 @@ Contributions of any kind welcome!
+
+
+
+
+
@@ -6112,6 +6154,11 @@ Contributions of any kind welcome!
+
+
+
+
+
diff --git a/js/mydoc_scroll.html b/js/mydoc_scroll.html
index 9e9bac522f..4108a1bad6 100644
--- a/js/mydoc_scroll.html
+++ b/js/mydoc_scroll.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/license.html b/license.html
index f770592881..d97300568b 100644
--- a/license.html
+++ b/license.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/news.html b/news.html
index 2848a76728..75e8a96e84 100644
--- a/news.html
+++ b/news.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/news_archive.html b/news_archive.html
index 6eafb3dc14..87fade8df7 100644
--- a/news_archive.html
+++ b/news_archive.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_about_help.html b/pmd_about_help.html
index df3ae64865..072b9adc01 100644
--- a/pmd_about_help.html
+++ b/pmd_about_help.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_apex_metrics_index.html b/pmd_apex_metrics_index.html
index 55c802de60..93f300f10a 100644
--- a/pmd_apex_metrics_index.html
+++ b/pmd_apex_metrics_index.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_building.html b/pmd_devdocs_building.html
index 6ed406dbe1..a861161398 100644
--- a/pmd_devdocs_building.html
+++ b/pmd_devdocs_building.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_development.html b/pmd_devdocs_development.html
index 04dd5704b3..4b0870de66 100644
--- a/pmd_devdocs_development.html
+++ b/pmd_devdocs_development.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_experimental_ast_dump.html b/pmd_devdocs_experimental_ast_dump.html
index e244ab55f0..99ed1ca0e9 100644
--- a/pmd_devdocs_experimental_ast_dump.html
+++ b/pmd_devdocs_experimental_ast_dump.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_how_pmd_works.html b/pmd_devdocs_how_pmd_works.html
index c0a37a2ade..a63443b327 100644
--- a/pmd_devdocs_how_pmd_works.html
+++ b/pmd_devdocs_how_pmd_works.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_major_adding_new_cpd_language.html b/pmd_devdocs_major_adding_new_cpd_language.html
index c70631f571..f3a0822b7d 100644
--- a/pmd_devdocs_major_adding_new_cpd_language.html
+++ b/pmd_devdocs_major_adding_new_cpd_language.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_major_adding_new_language.html b/pmd_devdocs_major_adding_new_language.html
index e663ecb743..fb9947b033 100644
--- a/pmd_devdocs_major_adding_new_language.html
+++ b/pmd_devdocs_major_adding_new_language.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_major_adding_new_metrics_framework.html b/pmd_devdocs_major_adding_new_metrics_framework.html
index bb599cd123..2285202dda 100644
--- a/pmd_devdocs_major_adding_new_metrics_framework.html
+++ b/pmd_devdocs_major_adding_new_metrics_framework.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_major_rule_guidelines.html b/pmd_devdocs_major_rule_guidelines.html
index 67cfe44c04..933d6662ff 100644
--- a/pmd_devdocs_major_rule_guidelines.html
+++ b/pmd_devdocs_major_rule_guidelines.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_pmdtester.html b/pmd_devdocs_pmdtester.html
index 6b2f4770a9..efdbb1dd7f 100644
--- a/pmd_devdocs_pmdtester.html
+++ b/pmd_devdocs_pmdtester.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_roadmap.html b/pmd_devdocs_roadmap.html
index 5b6cd19710..384db093cb 100644
--- a/pmd_devdocs_roadmap.html
+++ b/pmd_devdocs_roadmap.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_rule_deprecation_policy.html b/pmd_devdocs_rule_deprecation_policy.html
index 96ccd0c0c7..ffaf4efb68 100644
--- a/pmd_devdocs_rule_deprecation_policy.html
+++ b/pmd_devdocs_rule_deprecation_policy.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_devdocs_writing_documentation.html b/pmd_devdocs_writing_documentation.html
index 5d30ce640a..7ef0fec4c5 100644
--- a/pmd_devdocs_writing_documentation.html
+++ b/pmd_devdocs_writing_documentation.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_java_metrics_index.html b/pmd_java_metrics_index.html
index fb7648a3c3..c7db98059d 100644
--- a/pmd_java_metrics_index.html
+++ b/pmd_java_metrics_index.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_languages_jsp.html b/pmd_languages_jsp.html
index 569a94779e..bd1bf0c7b5 100644
--- a/pmd_languages_jsp.html
+++ b/pmd_languages_jsp.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_languages_plsql.html b/pmd_languages_plsql.html
index 673e276e10..64b7da3779 100644
--- a/pmd_languages_plsql.html
+++ b/pmd_languages_plsql.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_languages_visualforce.html b/pmd_languages_visualforce.html
new file mode 100644
index 0000000000..59524421ba
--- /dev/null
+++ b/pmd_languages_visualforce.html
@@ -0,0 +1,1516 @@
+
+
+
+
+
+
+
+
+Visualforce Support | PMD Source Code Analyzer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Edit me
+
+
+
+
+
Type resolution
+
+
Since PMD 6.30.0 support for type resolution has been added.
+
+
The Visualforce AST now can resolve the data type of Visualforce expressions that reference
+Apex Controller properties and Custom Object fields. This feature improves the precision of existing rules,
+like VfUnescapeEl
.
+
+
This can be configured using two environment variables:
+
+
+
+ PMD_VF_APEXDIRECTORIES
: Comma separated list of directories for Apex classes. Absolute or relative
+to the Visualforce directory. Default is ../classes
. Specifying an empty string will disable data type
+resolution for Apex Controller properties.
+
+
+ PMD_VF_OBJECTSDIRECTORIES
: Comma separated list of directories for Custom Objects. Absolute or relative
+to the Visualforce directory. Default is ../objects
. Specifying an empty string will disable data type
+resolution for Custom Object fields.
+
+
+
+
This feature is experimental, in particular, expect changes to the way the configuration is specified.
+We’ll probably extend the CLI instead of relying on environment variables in a future version.
+
+
Sample usage
+
+
PMD_VF_APEXDIRECTORIES=../classes \
+PMD_VF_OBJECTSDIRECTORIES=../objects \
+run.sh pmd -d $GITHUB_WORKSPACE/force-app/main/default/pages \
+ -R category/vf/security.xml/VfUnescapeEl -f text
+
+
+
If you run with debug logging turned on, you might see log messages like this:
+
+
Okt. 14, 2021 11:30:44 AM net.sourceforge.pmd.lang.vf.VfExpressionTypeVisitor visit
+FINE: Unable to determine type for: Account.NotFoundField__c
+
+
+
This means, that type resolution didn’t work. Maybe the provided directories are missing or do not contain
+the needed data.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pmd_next_major_development.html b/pmd_next_major_development.html
index 3aff821248..34369ad62b 100644
--- a/pmd_next_major_development.html
+++ b/pmd_next_major_development.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_committers_infrastructure.html b/pmd_projectdocs_committers_infrastructure.html
index 9b32925295..6155c6a836 100644
--- a/pmd_projectdocs_committers_infrastructure.html
+++ b/pmd_projectdocs_committers_infrastructure.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_committers_main_landing_page.html b/pmd_projectdocs_committers_main_landing_page.html
index 35a6b13bdc..89b3c39ec3 100644
--- a/pmd_projectdocs_committers_main_landing_page.html
+++ b/pmd_projectdocs_committers_main_landing_page.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_committers_merging_pull_requests.html b/pmd_projectdocs_committers_merging_pull_requests.html
index 9dc6aa20a1..723266227c 100644
--- a/pmd_projectdocs_committers_merging_pull_requests.html
+++ b/pmd_projectdocs_committers_merging_pull_requests.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_committers_releasing.html b/pmd_projectdocs_committers_releasing.html
index 8084863c8d..840e49c88e 100644
--- a/pmd_projectdocs_committers_releasing.html
+++ b/pmd_projectdocs_committers_releasing.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_credits.html b/pmd_projectdocs_credits.html
index 18bfaf2d2e..df0eef2ba7 100644
--- a/pmd_projectdocs_credits.html
+++ b/pmd_projectdocs_credits.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_faq.html b/pmd_projectdocs_faq.html
index e2dc66e2b5..5939f83c31 100644
--- a/pmd_projectdocs_faq.html
+++ b/pmd_projectdocs_faq.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_trivia_meaning.html b/pmd_projectdocs_trivia_meaning.html
index 8fc034eb8c..1873aa1c91 100644
--- a/pmd_projectdocs_trivia_meaning.html
+++ b/pmd_projectdocs_trivia_meaning.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_trivia_news.html b/pmd_projectdocs_trivia_news.html
index c753374153..40f106d88e 100644
--- a/pmd_projectdocs_trivia_news.html
+++ b/pmd_projectdocs_trivia_news.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_trivia_products.html b/pmd_projectdocs_trivia_products.html
index c594d5dc5f..2c70d9904b 100644
--- a/pmd_projectdocs_trivia_products.html
+++ b/pmd_projectdocs_trivia_products.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_projectdocs_trivia_similarprojects.html b/pmd_projectdocs_trivia_similarprojects.html
index dbbd22ac7c..16ce2dd2d6 100644
--- a/pmd_projectdocs_trivia_similarprojects.html
+++ b/pmd_projectdocs_trivia_similarprojects.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_release_notes.html b/pmd_release_notes.html
index fb067b3960..8cabdf4f12 100644
--- a/pmd_release_notes.html
+++ b/pmd_release_notes.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1540,6 +1552,29 @@ and another for the loop bounds condition, e.g.,
}
+
+ The Java rule ClassNamingConventions
uses a different default value of the
+property utilityClassPattern
: This rule was detecting utility classes by default since PMD 6.3.0
+and enforcing the naming convention that utility classes has to be suffixed with Util or Helper or Constants.
+However this turned out to be not so useful as a default configuration, as there is no standard
+naming convention for utility classes.
+
+ With PMD 6.40.0, the default value of this property has been changed to [A-Z][a-zA-Z0-9]*
+(Pascal case), effectively disabling the special handling of utility classes. This is the same default
+pattern used for concrete classes.
+
+ This means, that the feature to enforce a naming convention for utility classes is now a opt-in
+feature and can be enabled on demand.
+
+ To use the old behaviour, the property needs to be configured as follows:
+
+ ```xml
+
+
+
+
+
+
Fixed Issues
@@ -1558,6 +1593,17 @@ and another for the loop bounds condition, e.g.,
#3579 : [apex] ApexCRUDViolation: false negative with undelete
+ java-bestpractices
+
+ #3542 : [java] MissingOverride: False negative for enum method
+
+
+ java-codestyle
+
+ #1595 : [java] Discuss default for utility classes in ClassNamingConventions
+ #3563 : [java] The ClassNamingConventionsRule false-positive’s on the class name “Constants”
+
+
java-errorprone
#3560 : [java] InvalidLogMessageFormat: False positive with message and exception in a block inside a lambda
@@ -1568,6 +1614,11 @@ and another for the loop bounds condition, e.g.,
#2364 : [java] AddEmptyString false positive in annotation value
+ java-security
+
+ #3368 : [java] HardcodedCryptoKey false negative with variable assignments
+
+
API Changes
diff --git a/pmd_release_notes_old.html b/pmd_release_notes_old.html
index 79993073a8..a84367f8d1 100644
--- a/pmd_release_notes_old.html
+++ b/pmd_release_notes_old.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex.html b/pmd_rules_apex.html
index ac3b98525c..35868cdeb3 100644
--- a/pmd_rules_apex.html
+++ b/pmd_rules_apex.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_bestpractices.html b/pmd_rules_apex_bestpractices.html
index c8130dbb73..b8549c751f 100644
--- a/pmd_rules_apex_bestpractices.html
+++ b/pmd_rules_apex_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_codestyle.html b/pmd_rules_apex_codestyle.html
index 859fd35e5c..24d8379571 100644
--- a/pmd_rules_apex_codestyle.html
+++ b/pmd_rules_apex_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_design.html b/pmd_rules_apex_design.html
index 197f42fdcd..da17273774 100644
--- a/pmd_rules_apex_design.html
+++ b/pmd_rules_apex_design.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_documentation.html b/pmd_rules_apex_documentation.html
index 4626856cea..ead6ea9f86 100644
--- a/pmd_rules_apex_documentation.html
+++ b/pmd_rules_apex_documentation.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_errorprone.html b/pmd_rules_apex_errorprone.html
index 732b8ca713..6cb01214e9 100644
--- a/pmd_rules_apex_errorprone.html
+++ b/pmd_rules_apex_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_performance.html b/pmd_rules_apex_performance.html
index 90b31f3d49..dd6f5cfc1f 100644
--- a/pmd_rules_apex_performance.html
+++ b/pmd_rules_apex_performance.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_apex_security.html b/pmd_rules_apex_security.html
index 8f1d78384f..169c93aa45 100644
--- a/pmd_rules_apex_security.html
+++ b/pmd_rules_apex_security.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_ecmascript.html b/pmd_rules_ecmascript.html
index 7615b02c8f..9d546fa148 100644
--- a/pmd_rules_ecmascript.html
+++ b/pmd_rules_ecmascript.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_ecmascript_bestpractices.html b/pmd_rules_ecmascript_bestpractices.html
index 6837894ccb..77c4436876 100644
--- a/pmd_rules_ecmascript_bestpractices.html
+++ b/pmd_rules_ecmascript_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_ecmascript_codestyle.html b/pmd_rules_ecmascript_codestyle.html
index 69d7bb3b3a..4b4d5884d8 100644
--- a/pmd_rules_ecmascript_codestyle.html
+++ b/pmd_rules_ecmascript_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_ecmascript_errorprone.html b/pmd_rules_ecmascript_errorprone.html
index 96ab1db5c4..061b0aeb47 100644
--- a/pmd_rules_ecmascript_errorprone.html
+++ b/pmd_rules_ecmascript_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java.html b/pmd_rules_java.html
index c676c1cf87..45b8af5941 100644
--- a/pmd_rules_java.html
+++ b/pmd_rules_java.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_bestpractices.html b/pmd_rules_java_bestpractices.html
index 8109ba7d41..8a3ae622b7 100644
--- a/pmd_rules_java_bestpractices.html
+++ b/pmd_rules_java_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_codestyle.html b/pmd_rules_java_codestyle.html
index a955b4a980..5769b24358 100644
--- a/pmd_rules_java_codestyle.html
+++ b/pmd_rules_java_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1863,8 +1875,16 @@ type declarations which do not match the regex that applies to their
specific kind (e.g. enum or interface). Each regex can be configured through
properties.
-By default this rule uses the standard Java naming convention (Pascal case),
-and reports utility class names not ending with ‘Util’.
+By default this rule uses the standard Java naming convention (Pascal case).
+
+The rule can detect utility classes and enforce a different naming convention
+on those. E.g. setting the property utilityClassPattern
to
+[A-Z][a-zA-Z0-9]+(Utils?|Helper|Constants)
reports any utility class, whose name
+does not end in "Util(s)", "Helper" or "Constants".
+
+For this rule, a utility class is defined as: a concrete class that does not
+inherit from a super class or implement any interface and only has static fields
+or methods.
This rule is defined by the following Java class: net.sourceforge.pmd.lang.java.rule.codestyle.ClassNamingConventionsRule
@@ -1928,7 +1948,7 @@ and reports utility class names not ending with ‘Util’.
utilityClassPattern
- [A-Z][a-zA-Z0-9]+(Utils?|Helper|Constants)
+ [A-Z][a-zA-Z0-9]*
Regex which applies to utility class names
no
@@ -1947,7 +1967,7 @@ and reports utility class names not ending with ‘Util’.
<property name= "interfacePattern" value= "[A-Z][a-zA-Z0-9]*" />
<property name= "enumPattern" value= "[A-Z][a-zA-Z0-9]*" />
<property name= "annotationPattern" value= "[A-Z][a-zA-Z0-9]*" />
- <property name= "utilityClassPattern" value= "[A-Z][a-zA-Z0-9]+(Utils?|Helper|Constants)" />
+ <property name= "utilityClassPattern" value= "[A-Z][a-zA-Z0-9]*" />
</properties>
</rule>
diff --git a/pmd_rules_java_design.html b/pmd_rules_java_design.html
index 7449efdc96..02330d8c18 100644
--- a/pmd_rules_java_design.html
+++ b/pmd_rules_java_design.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_documentation.html b/pmd_rules_java_documentation.html
index 7d62d70a67..dfb499dae6 100644
--- a/pmd_rules_java_documentation.html
+++ b/pmd_rules_java_documentation.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_errorprone.html b/pmd_rules_java_errorprone.html
index 8675a73036..f25e25c381 100644
--- a/pmd_rules_java_errorprone.html
+++ b/pmd_rules_java_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_multithreading.html b/pmd_rules_java_multithreading.html
index a6fec9e87b..79b8b673b0 100644
--- a/pmd_rules_java_multithreading.html
+++ b/pmd_rules_java_multithreading.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_performance.html b/pmd_rules_java_performance.html
index 96e3beceb7..20c5ce9383 100644
--- a/pmd_rules_java_performance.html
+++ b/pmd_rules_java_performance.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_java_security.html b/pmd_rules_java_security.html
index 3bcdf0d392..9aa8d17c3e 100644
--- a/pmd_rules_java_security.html
+++ b/pmd_rules_java_security.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp.html b/pmd_rules_jsp.html
index 42e335915c..4ee94431d2 100644
--- a/pmd_rules_jsp.html
+++ b/pmd_rules_jsp.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp_bestpractices.html b/pmd_rules_jsp_bestpractices.html
index 9dad0fa560..7c71a7ec8c 100644
--- a/pmd_rules_jsp_bestpractices.html
+++ b/pmd_rules_jsp_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp_codestyle.html b/pmd_rules_jsp_codestyle.html
index ed6ad5d631..4c94a94f24 100644
--- a/pmd_rules_jsp_codestyle.html
+++ b/pmd_rules_jsp_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp_design.html b/pmd_rules_jsp_design.html
index 02f3e9c0ab..01d683ba52 100644
--- a/pmd_rules_jsp_design.html
+++ b/pmd_rules_jsp_design.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp_errorprone.html b/pmd_rules_jsp_errorprone.html
index 85a12a5669..4ef6639331 100644
--- a/pmd_rules_jsp_errorprone.html
+++ b/pmd_rules_jsp_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_jsp_security.html b/pmd_rules_jsp_security.html
index 8e71521315..a4723a8268 100644
--- a/pmd_rules_jsp_security.html
+++ b/pmd_rules_jsp_security.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_modelica.html b/pmd_rules_modelica.html
index 9c78846429..7cbfb6abb0 100644
--- a/pmd_rules_modelica.html
+++ b/pmd_rules_modelica.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_modelica_bestpractices.html b/pmd_rules_modelica_bestpractices.html
index 408c75bd9a..3ab41801d2 100644
--- a/pmd_rules_modelica_bestpractices.html
+++ b/pmd_rules_modelica_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_plsql.html b/pmd_rules_plsql.html
index 15661eb2a6..15f58b0be5 100644
--- a/pmd_rules_plsql.html
+++ b/pmd_rules_plsql.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_plsql_bestpractices.html b/pmd_rules_plsql_bestpractices.html
index e5daaf4a12..b13cf842bf 100644
--- a/pmd_rules_plsql_bestpractices.html
+++ b/pmd_rules_plsql_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_plsql_codestyle.html b/pmd_rules_plsql_codestyle.html
index 70d21fb954..b192f422e8 100644
--- a/pmd_rules_plsql_codestyle.html
+++ b/pmd_rules_plsql_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_plsql_design.html b/pmd_rules_plsql_design.html
index f571f801d2..188cb4d99b 100644
--- a/pmd_rules_plsql_design.html
+++ b/pmd_rules_plsql_design.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_plsql_errorprone.html b/pmd_rules_plsql_errorprone.html
index 1756635bfe..dda43d5de2 100644
--- a/pmd_rules_plsql_errorprone.html
+++ b/pmd_rules_plsql_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_pom.html b/pmd_rules_pom.html
index 10d0afba24..de964e3bdc 100644
--- a/pmd_rules_pom.html
+++ b/pmd_rules_pom.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_pom_errorprone.html b/pmd_rules_pom_errorprone.html
index 2a9ac246e7..d2285d0786 100644
--- a/pmd_rules_pom_errorprone.html
+++ b/pmd_rules_pom_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_scala.html b/pmd_rules_scala.html
index ede7699813..712943f5bd 100644
--- a/pmd_rules_scala.html
+++ b/pmd_rules_scala.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vf.html b/pmd_rules_vf.html
index f8509010a9..d6e1905d31 100644
--- a/pmd_rules_vf.html
+++ b/pmd_rules_vf.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vf_security.html b/pmd_rules_vf_security.html
index d4380ccfea..3a3519aa17 100644
--- a/pmd_rules_vf_security.html
+++ b/pmd_rules_vf_security.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vm.html b/pmd_rules_vm.html
index 935290f41d..15b15d229d 100644
--- a/pmd_rules_vm.html
+++ b/pmd_rules_vm.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vm_bestpractices.html b/pmd_rules_vm_bestpractices.html
index a135f3808a..2187df280c 100644
--- a/pmd_rules_vm_bestpractices.html
+++ b/pmd_rules_vm_bestpractices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vm_design.html b/pmd_rules_vm_design.html
index 7b6d254a7f..b8a6c346e5 100644
--- a/pmd_rules_vm_design.html
+++ b/pmd_rules_vm_design.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_vm_errorprone.html b/pmd_rules_vm_errorprone.html
index ef10777c45..b3612ea21d 100644
--- a/pmd_rules_vm_errorprone.html
+++ b/pmd_rules_vm_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_xml.html b/pmd_rules_xml.html
index 4b767e3551..bbac5d4ac1 100644
--- a/pmd_rules_xml.html
+++ b/pmd_rules_xml.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_xml_errorprone.html b/pmd_rules_xml_errorprone.html
index c5881934c5..d294872907 100644
--- a/pmd_rules_xml_errorprone.html
+++ b/pmd_rules_xml_errorprone.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_xsl.html b/pmd_rules_xsl.html
index 38512cf050..0afc1d8c64 100644
--- a/pmd_rules_xsl.html
+++ b/pmd_rules_xsl.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_xsl_codestyle.html b/pmd_rules_xsl_codestyle.html
index 15a3ec5d85..2e78a46b24 100644
--- a/pmd_rules_xsl_codestyle.html
+++ b/pmd_rules_xsl_codestyle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_rules_xsl_performance.html b/pmd_rules_xsl_performance.html
index 8c8f7b49bb..29982c2a21 100644
--- a/pmd_rules_xsl_performance.html
+++ b/pmd_rules_xsl_performance.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_best_practices.html b/pmd_userdocs_best_practices.html
index 297b003078..8f43191790 100644
--- a/pmd_userdocs_best_practices.html
+++ b/pmd_userdocs_best_practices.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_cli_reference.html b/pmd_userdocs_cli_reference.html
index c41385b57d..dbdd0ac334 100644
--- a/pmd_userdocs_cli_reference.html
+++ b/pmd_userdocs_cli_reference.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_configuring_rules.html b/pmd_userdocs_configuring_rules.html
index 4477473fb5..1715d4f7cf 100644
--- a/pmd_userdocs_configuring_rules.html
+++ b/pmd_userdocs_configuring_rules.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_cpd.html b/pmd_userdocs_cpd.html
index 948f78581c..f3227cb888 100644
--- a/pmd_userdocs_cpd.html
+++ b/pmd_userdocs_cpd.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_cpd_report_formats.html b/pmd_userdocs_cpd_report_formats.html
index 75a5bbf85a..b146c5dd2f 100644
--- a/pmd_userdocs_cpd_report_formats.html
+++ b/pmd_userdocs_cpd_report_formats.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_defining_properties.html b/pmd_userdocs_extending_defining_properties.html
index a59f9c8d01..6ceb51b5fd 100644
--- a/pmd_userdocs_extending_defining_properties.html
+++ b/pmd_userdocs_extending_defining_properties.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_designer_reference.html b/pmd_userdocs_extending_designer_reference.html
index 69b21231e3..79bce2cd26 100644
--- a/pmd_userdocs_extending_designer_reference.html
+++ b/pmd_userdocs_extending_designer_reference.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_metrics_howto.html b/pmd_userdocs_extending_metrics_howto.html
index fba2316fa4..87ea124ece 100644
--- a/pmd_userdocs_extending_metrics_howto.html
+++ b/pmd_userdocs_extending_metrics_howto.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_rule_guidelines.html b/pmd_userdocs_extending_rule_guidelines.html
index e2c626bae1..57f81fbcbb 100644
--- a/pmd_userdocs_extending_rule_guidelines.html
+++ b/pmd_userdocs_extending_rule_guidelines.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_testing.html b/pmd_userdocs_extending_testing.html
index 158bdc428b..f95bea93d2 100644
--- a/pmd_userdocs_extending_testing.html
+++ b/pmd_userdocs_extending_testing.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_writing_java_rules.html b/pmd_userdocs_extending_writing_java_rules.html
index 9d0cd5b066..b81aa1472f 100644
--- a/pmd_userdocs_extending_writing_java_rules.html
+++ b/pmd_userdocs_extending_writing_java_rules.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_writing_pmd_rules.html b/pmd_userdocs_extending_writing_pmd_rules.html
index 9678fb7a90..5f766634fa 100644
--- a/pmd_userdocs_extending_writing_pmd_rules.html
+++ b/pmd_userdocs_extending_writing_pmd_rules.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_writing_rules_intro.html b/pmd_userdocs_extending_writing_rules_intro.html
index f1bf2ef585..f8a282da14 100644
--- a/pmd_userdocs_extending_writing_rules_intro.html
+++ b/pmd_userdocs_extending_writing_rules_intro.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_writing_xpath_rules.html b/pmd_userdocs_extending_writing_xpath_rules.html
index 1b4fc86a1a..85c442cbeb 100644
--- a/pmd_userdocs_extending_writing_xpath_rules.html
+++ b/pmd_userdocs_extending_writing_xpath_rules.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_extending_your_first_rule.html b/pmd_userdocs_extending_your_first_rule.html
index 980afc3c15..a207deaf4b 100644
--- a/pmd_userdocs_extending_your_first_rule.html
+++ b/pmd_userdocs_extending_your_first_rule.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_incremental_analysis.html b/pmd_userdocs_incremental_analysis.html
index a132a6ee04..8e89942cd1 100644
--- a/pmd_userdocs_incremental_analysis.html
+++ b/pmd_userdocs_incremental_analysis.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_installation.html b/pmd_userdocs_installation.html
index d88887daa0..893a9ad604 100644
--- a/pmd_userdocs_installation.html
+++ b/pmd_userdocs_installation.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_making_rulesets.html b/pmd_userdocs_making_rulesets.html
index 5eb045c34d..c3e6305fb5 100644
--- a/pmd_userdocs_making_rulesets.html
+++ b/pmd_userdocs_making_rulesets.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_report_formats.html b/pmd_userdocs_report_formats.html
index 7df92a0bd4..b2822d2d07 100644
--- a/pmd_userdocs_report_formats.html
+++ b/pmd_userdocs_report_formats.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_suppressing_warnings.html b/pmd_userdocs_suppressing_warnings.html
index 2f43bdece3..f6bffe9588 100644
--- a/pmd_userdocs_suppressing_warnings.html
+++ b/pmd_userdocs_suppressing_warnings.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools.html b/pmd_userdocs_tools.html
index f8eb3deea2..0e2b974a54 100644
--- a/pmd_userdocs_tools.html
+++ b/pmd_userdocs_tools.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools_ant.html b/pmd_userdocs_tools_ant.html
index 6446410ae2..c9ce64d60e 100644
--- a/pmd_userdocs_tools_ant.html
+++ b/pmd_userdocs_tools_ant.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools_ci.html b/pmd_userdocs_tools_ci.html
index 857e84f0df..b56996ab00 100644
--- a/pmd_userdocs_tools_ci.html
+++ b/pmd_userdocs_tools_ci.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools_gradle.html b/pmd_userdocs_tools_gradle.html
index bd8501ccec..f1efc5e353 100644
--- a/pmd_userdocs_tools_gradle.html
+++ b/pmd_userdocs_tools_gradle.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools_java_api.html b/pmd_userdocs_tools_java_api.html
index 6d55ece2b9..837e58cfa4 100644
--- a/pmd_userdocs_tools_java_api.html
+++ b/pmd_userdocs_tools_java_api.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/pmd_userdocs_tools_maven.html b/pmd_userdocs_tools_maven.html
index 3c372bfe21..2f67c0ccdf 100644
--- a/pmd_userdocs_tools_maven.html
+++ b/pmd_userdocs_tools_maven.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
diff --git a/search.json b/search.json
index c075be8ad3..422f214a22 100644
--- a/search.json
+++ b/search.json
@@ -5874,6 +5874,22 @@
+{
+"title": "Visualforce Support",
+"tags": "",
+"keywords": "",
+"url": "pmd_languages_visualforce.html",
+"summary": ""
+}
+
+
+
+,
+
+
+
+
+
{
"title": "VM Rules",
"tags": "rule_referencesvm",
diff --git a/sitemap.xml b/sitemap.xml
index 2f776a10e2..78abb1e626 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -637,6 +637,12 @@
+
+ https://pmd.github.io/pmd/pmd_languages_visualforce.html
+
+
+
+
https://pmd.github.io/pmd/pmd_rules_vm.html
diff --git a/tag_devdocs.html b/tag_devdocs.html
index dc6f61391f..67bebcf8e0 100644
--- a/tag_devdocs.html
+++ b/tag_devdocs.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1888,6 +1900,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_extending.html b/tag_extending.html
index 21c8cf5493..2ee1fc9cac 100644
--- a/tag_extending.html
+++ b/tag_extending.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1888,6 +1900,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_getting_started.html b/tag_getting_started.html
index e92a872339..c4408d8e76 100644
--- a/tag_getting_started.html
+++ b/tag_getting_started.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1842,6 +1854,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_languages.html b/tag_languages.html
index 979a3a369a..3d005813ce 100644
--- a/tag_languages.html
+++ b/tag_languages.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1824,6 +1836,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_metrics.html b/tag_metrics.html
index 2aeaa4a973..0347da4e70 100644
--- a/tag_metrics.html
+++ b/tag_metrics.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1848,6 +1860,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_release_notes.html b/tag_release_notes.html
index fac51ffcee..62b23b4a5b 100644
--- a/tag_release_notes.html
+++ b/tag_release_notes.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1824,6 +1836,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_rule_references.html b/tag_rule_references.html
index e5abc1a2c6..f2379a5e57 100644
--- a/tag_rule_references.html
+++ b/tag_rule_references.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1878,6 +1890,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
VM Rules
diff --git a/tag_tools.html b/tag_tools.html
index f9ea220d77..f7c5d47221 100644
--- a/tag_tools.html
+++ b/tag_tools.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1860,6 +1872,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_troubleshooting.html b/tag_troubleshooting.html
index 9f51a276dc..ab49b65e88 100644
--- a/tag_troubleshooting.html
+++ b/tag_troubleshooting.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1824,6 +1836,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+
diff --git a/tag_userdocs.html b/tag_userdocs.html
index 0fe129c48d..98e9a8bee2 100644
--- a/tag_userdocs.html
+++ b/tag_userdocs.html
@@ -1060,6 +1060,18 @@
+
+
+
+
+
+ Visualforce
+
+
+
+
+
+
@@ -1950,6 +1962,8 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
+
+