From a82e6d3289061bd595c3f5fefad35c902033552a Mon Sep 17 00:00:00 2001
From: "PMD CI (pmd-bot)"
doTest
Signature<N>
diff --git a/pmd_devdocs_pmdtester.html b/pmd_devdocs_pmdtester.html
index d50b78c6fb..2bd67b5a8d 100644
--- a/pmd_devdocs_pmdtester.html
+++ b/pmd_devdocs_pmdtester.html
@@ -1481,7 +1481,7 @@ Regression difference reports are commented back to the PR for the reviewer’s
diff --git a/pmd_devdocs_roadmap.html b/pmd_devdocs_roadmap.html
index 367217d2b3..bea2ae8168 100644
--- a/pmd_devdocs_roadmap.html
+++ b/pmd_devdocs_roadmap.html
@@ -1602,7 +1602,7 @@ This should be configurable on per Rule basis similar to TR and SymbolTable.
diff --git a/pmd_devdocs_rule_deprecation_policy.html b/pmd_devdocs_rule_deprecation_policy.html
index f4372e315e..f2d94f1f7b 100644
--- a/pmd_devdocs_rule_deprecation_policy.html
+++ b/pmd_devdocs_rule_deprecation_policy.html
@@ -1571,7 +1571,7 @@ major release of PMD.
diff --git a/pmd_devdocs_writing_documentation.html b/pmd_devdocs_writing_documentation.html
index 2741548103..c330264718 100644
--- a/pmd_devdocs_writing_documentation.html
+++ b/pmd_devdocs_writing_documentation.html
@@ -1718,7 +1718,7 @@ by specifying
-Dpmd.doc.check
diff --git a/pmd_java_metrics_index.html b/pmd_java_metrics_index.html
index 01959b310b..8af51b50d4 100644
--- a/pmd_java_metrics_index.html
+++ b/pmd_java_metrics_index.html
@@ -1890,7 +1890,7 @@ In Proceedings ACM Symposium on Software Reusability, 1995.
diff --git a/pmd_languages_jsp.html b/pmd_languages_jsp.html
index 20bd5f4767..08a4f9285b 100644
--- a/pmd_languages_jsp.html
+++ b/pmd_languages_jsp.html
@@ -1512,7 +1512,7 @@ contains only “.java” files, JSP files obviously will not be checked.
diff --git a/pmd_languages_plsql.html b/pmd_languages_plsql.html
index db2377cc72..9a73547ddb 100644
--- a/pmd_languages_plsql.html
+++ b/pmd_languages_plsql.html
@@ -1499,7 +1499,7 @@ a custom XPath rule with the following expression:
diff --git a/pmd_languages_visualforce.html b/pmd_languages_visualforce.html
index 1461304ac1..ed0db2fc73 100644
--- a/pmd_languages_visualforce.html
+++ b/pmd_languages_visualforce.html
@@ -1498,7 +1498,7 @@ the needed data.
diff --git a/pmd_next_major_development.html b/pmd_next_major_development.html
index a6fb58fded..5a8de52f71 100644
--- a/pmd_next_major_development.html
+++ b/pmd_next_major_development.html
@@ -3164,7 +3164,7 @@ new rule
UnnecessaryBoxing
diff --git a/pmd_projectdocs_committers_main_landing_page.html b/pmd_projectdocs_committers_main_landing_page.html
index 0cff2cf9de..d100a4c6c0 100644
--- a/pmd_projectdocs_committers_main_landing_page.html
+++ b/pmd_projectdocs_committers_main_landing_page.html
@@ -1551,7 +1551,7 @@ the new post is recognized and added to the news section and also on the news su
diff --git a/pmd_projectdocs_committers_merging_pull_requests.html b/pmd_projectdocs_committers_merging_pull_requests.html
index 549205906a..34c156f1d2 100644
--- a/pmd_projectdocs_committers_merging_pull_requests.html
+++ b/pmd_projectdocs_committers_merging_pull_requests.html
@@ -1656,7 +1656,7 @@ integrated (e.g. gitk and github show the branches, from which the specific comm
diff --git a/pmd_projectdocs_committers_releasing.html b/pmd_projectdocs_committers_releasing.html
index c9dad34c03..89fd2f8dd0 100644
--- a/pmd_projectdocs_committers_releasing.html
+++ b/pmd_projectdocs_committers_releasing.html
@@ -1859,7 +1859,7 @@ the maintenance branch needs to be set.
diff --git a/pmd_projectdocs_credits.html b/pmd_projectdocs_credits.html
index 904184ec96..e29c1cf4e4 100644
--- a/pmd_projectdocs_credits.html
+++ b/pmd_projectdocs_credits.html
@@ -1625,741 +1625,743 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3

Dan Rollo
🐛

Dan Ziemba
🐛

Daniel Jipa
🐛
+ 
Daniel Paul Searles
💻

Daniel Reigada
🐛

Danilo Pianini
🐛

Darko
🐛
- 
David
🐛
+ 
David
🐛

David Atkinson
🐛

David Burström
💻 🐛

David Goaté
🐛

David Golpira
🐛

David Kovařík
🐛

David M. Karr (fullname at gmail.com)
🐛
- 
David Renz
💻 🐛
+ 
David Renz
💻 🐛

David Renz
🐛

Deleted user
🐛

Dell Green
🐛

Dem Pilafian
🐛

Den
🐛

Denis Borovikov
💻 🐛
- 
Dennie Reniers
💻 🐛
+ 
Dennie Reniers
💻 🐛

Dennis Kieselhorst
🐛

Derek P. Moore
🐛

Dichotomia
🐛

Dionisio Cortés Fernández
💻 🐛

Dmitri Bourlatchkov
🐛

Dmitriy Kuzmin
🐛
- 
Dmytro Dashenkov
🐛
+ 
Dmytro Dashenkov
🐛

Drew Hall
🐛

Dumitru Postoronca
🐛

Dylan Adams
🐛

Eden Hao
🐛

Egor Bredikhin
🐛

Elan P. Kugelmass
🐛
- 
Elder S.
🐛
+ 
Elder S.
🐛

Emile
🐛

Eric
🐛

Eric Kintzer
🐛

Eric Perret
🐛

Eric Squires
🐛

Erich L Foster
🐛
- 
Erik Bleske
🐛
+ 
Erik Bleske
🐛

Ernst Reissner
🐛

F.W. Dekker
🐛

Facundo
🐛

Federico Giust
🐛

Fedor Sherstobitov
🐛

Felix Lampe
🐛
- 
Filip Golonka
🐛
+ 
Filip Golonka
🐛

Filipe Esperandio
💻 🐛

Francesco la Torre
🐛

Francisco Duarte
🐛

Frieder Bluemle
🐛

Frits Jalvingh
💻 🐛

G. Bazior
🐛
- 
Gabe Henkes
🐛
+ 
Gabe Henkes
🐛

Genoud Magloire
🐛

Geoffrey555
🐛

Georg Romstorfer
🐛

Gio
🐛

Gol
🐛

Gonzalo Exequiel Ibars Ingman
💻 🐛
- 
GooDer
🐛
+ 
GooDer
🐛

Gregor Riegler
🐛

Grzegorz Olszewski
🐛

Gunther Schrijvers
💻 🐛

Gustavo Krieger
🐛

Guy Elsmore-Paddock
🐛

Görkem Mülayim
🐛
- 
Hanzel Godinez
🐛
+ 
Hanzel Godinez
🐛

Harsh Kukreja
🐛

Heber
🐛

Henning Schmiedehausen
💻 🐛

Henning von Bargen
💻

Hervé Boutemy
🐛

Himanshu Pandey
🐛
- 
Hokwang Lee
🐛
+ 
Hokwang Lee
🐛

Hooperbloob
💻

Hung PHAN
🐛

IDoCodingStuffs
💻 🐛

Iccen Gan
🐛

Ignacio Mariano Tirabasso
🐛

Igor Melnichenko
🐛
- 
Igor Moreno
🐛
+ 
Igor Moreno
🐛

Intelesis-MS
🐛

Iroha_
🐛

Ishan Srivastava
🐛

Ivano Guerini
🐛

Ivar Andreas Bonsaksen
🐛

Ivo Šmíd
🐛
- 
JJengility
🐛
+ 
JJengility
🐛

Jake Hemmerle
🐛

James Harrison
🐛

Jan
🐛

Jan Aertgeerts
💻 🐛

Jan Brümmer
🐛

Jan Tříska
🐛
- 
Jan-Lukas Else
🐛
+ 
Jan-Lukas Else
🐛

Jason Williams
🐛

Jean-Paul Mayer
🐛

Jean-Simon Larochelle
🐛

Jeff Bartolotta
💻 🐛

Jeff Hube
💻 🐛

Jeff Jensen
🐛
- 
Jeff May
🐛
+ 
Jeff May
🐛

Jens Gerdes
🐛

Jeroen Borgers
🐛

Jerome Russ
🐛

Jiri Pejchal
🐛

Jithin Sunny
🐛

Jiří Škorpil
🐛
- 
Joao Machado
🐛
+ 
Joao Machado
🐛

Jochen Krauss
🐛

Johan Hammar
🐛

John Karp
🐛

John Zhang
🐛

John-Teng
💻 🐛

Jon Moroney
💻 🐛
- 
Jonas Geiregat
🐛
+ 
Jonas Geiregat
🐛

Jonathan Wiesel
💻 🐛

Jordan
🐛

Jordi Llach
🐛

Jorge Solórzano
🐛

JorneVL
🐛

Jose Palafox
🐛
- 
Jose Stovall
🐛
+ 
Jose Stovall
🐛

Joseph
💻

Joseph Heenan
🐛

Josh Feingold
💻 🐛

Josh Holthaus
🐛

Joshua S Arquilevich
🐛

João Ferreira
💻 🐛
- 
João Pedro Schmitt
🐛
+ 
João Pedro Schmitt
🐛

Juan Martín Sotuyo Dodero
💻 📖 🐛 🚧

Juan Pablo Civile
🐛

Julian Voronetsky
🐛

Julien
🐛

Julius
🐛

JustPRV
🐛
- 
Jörn Huxhorn
🐛
+ 
Jörn Huxhorn
🐛

KThompso
🐛

Kai Amundsen
🐛

Karl-Andero Mere
🐛

Karl-Philipp Richter
🐛

Karsten Silz
🐛

Kazuma Watanabe
🐛
- 
Kev
🐛
+ 
Kev
🐛

Keve Müller
🐛

Kevin Guerra
💻

Kevin Jones
🐛

Kevin Wayne
🐛

Kieran Black
🐛

Kirill Zubov
🐛
- 
Kirk Clemens
💻 🐛
+ 
Kirk Clemens
💻 🐛

Klaus Hartl
🐛

Koen Van Looveren
🐛

Kris Scheibe
💻 🐛

Kunal Thanki
🐛

Larry Diamond
💻 🐛

Lars Knickrehm
🐛
- 
Leo Gutierrez
🐛
+ 
Leo Gutierrez
🐛

Lintsi
🐛

Linus Fernandes
🐛

Lixon Lookose
🐛

Logesh
🐛

Lorenzo Gabriele
🐛

Loïc Ledoyen
🐛
- 
Lucas Silva
🐛
+ 
Lucas Silva
🐛

Lucas Soncini
💻 🐛

Lukasz Slonina
🐛

Lukebray
🐛

Lyor Goldstein
🐛

MCMicS
🐛

Macarse
🐛
- 
Machine account for PMD
💻
+ 
Machine account for PMD
💻

Maciek Siemczyk
🐛

Maikel Steneker
💻 🐛

Maksim Moiseikin
🐛

Manfred Koch
🐛

Manuel Moya Ferrer
💻 🐛

Manuel Ryan
🐛
- 
Marat Vyshegorodtsev
🐛
+ 
Marat Vyshegorodtsev
🐛

Marcel Härle
🐛

Marcello Fialho
🐛

Marcin Rataj
🐛

Mark Adamcin
🐛

Mark Hall
💻 🐛

Mark Kolich
🐛
- 
Mark Pritchard
🐛
+ 
Mark Pritchard
🐛

Markus Rathgeb
🐛

Marquis Wang
🐛

Martin Feldsztejn
🐛

Martin Lehmann
🐛

Martin Spamer
🐛

Martin Tarjányi
🐛
- 
MatFl
🐛
+ 
MatFl
🐛

Mateusz Stefanski
🐛

Mathieu Gouin
🐛

MatiasComercio
💻 🐛

Matt Benson
🐛

Matt De Poorter
🐛

Matt Harrah
🐛
- 
Matt Nelson
🐛
+ 
Matt Nelson
🐛

Matthew Amos
🐛

Matthew Duggan
🐛

Matthew Hall
🐛

Matías Fraga
💻 🐛

Maxime Robert
💻 🐛

Michael
🐛
- 
Michael Bell
🐛
+ 
Michael Bell
🐛

Michael Bernstein
🐛

Michael Clay
🐛

Michael Dombrowski
🐛

Michael Hausegger
🐛

Michael Hoefer
🐛

Michael Möbius
🐛
- 
Michael N. Lipp
🐛
+ 
Michael N. Lipp
🐛

Michael Pellegrini
🐛

Michal Kordas
🐛

Michał Borek
🐛

Michał Kuliński
🐛

Miguel Núñez Díaz-Montes
🐛

Mihai Ionut
🐛
- 
Mirek Hankus
🐛
+ 
Mirek Hankus
🐛

Mladjan Gadzic
🐛

MrAngry52
🐛

Muminur Choudhury
🐛

Mykhailo Palahuta
💻 🐛

Nagendra Kumar Singh
🐛

Nahuel Barrios
🐛
- 
Nathan Braun
🐛
+ 
Nathan Braun
🐛

Nathan Reynolds
🐛

Nathan Reynolds
🐛

Nathanaël
🐛

Nazdravi
🐛

Neha-Dhonde
🐛

Nicholas Doyle
🐛
- 
Nick Butcher
🐛
+ 
Nick Butcher
🐛

Nico Gallinal
🐛

Nicola Dal Maso
🐛

Nicolas Filotto
💻

Nikita Chursin
🐛

Niklas Baudy
🐛

Nikolas Havrikov
🐛
- 
Nilesh Virkar
🐛
+ 
Nilesh Virkar
🐛

Nimit Patel
🐛

Niranjan Harpale
🐛

Noah Sussman
🐛

Noah0120
🐛

Noam Tamim
🐛

Noel Grandin
🐛
- 
Olaf Haalstra
🐛
+ 
Olaf Haalstra
🐛

Oleg Pavlenko
🐛
+ 
Oleksii Dykov
💻

Oliver Eikemeier
🐛

Olivier Parent
💻 🐛

Ollie Abbey
💻 🐛

OverDrone
🐛
- 
Ozan Gulle
💻 🐛
- 
PUNEET JAIN
🐛
+ 
Ozan Gulle
💻 🐛
+ 
PUNEET JAIN
🐛

Parbati Bose
🐛

Paul Berg
🐛

Pavel Bludov
🐛

Pavel Mička
🐛

Pedro Nuno Santos
🐛
- 
Pedro Rijo
🐛
- 
Pelisse Romain
💻 📖 🐛
+ 
Pedro Rijo
🐛
+ 
Pelisse Romain
💻 📖 🐛

Pete Davids
🐛

Peter Bruin
🐛

Peter Chittum
💻 🐛

Peter Cudmore
🐛

Peter Kasson
🐛
- 
Peter Kofler
🐛
- 
Pham Hai Trung
🐛
+ 
Peter Kofler
🐛
+ 
Pham Hai Trung
🐛

Philip Graf
💻 🐛

Philip Hachey
🐛

Philippe Ozil
🐛

Phinehas Artemix
🐛

Phokham Nonava
🐛
- 
Piotr Szymański
🐛
- 
Piotrek Żygieło
💻 🐛
+ 
Piotr Szymański
🐛
+ 
Piotrek Żygieło
💻 🐛

Pranay Jaiswal
🐛

Prasad Kamath
🐛

Prasanna
🐛

Presh-AR
🐛

Puneet1726
🐛
- 
Rafael Cortês
🐛
- 
RaheemShaik999
🐛
+ 
Rafael Cortês
🐛
+ 
RaheemShaik999
🐛

RajeshR
💻 🐛

Ramachandra Mohan
🐛

Raquel Pau
🐛

Ravikiran Janardhana
🐛

Reda Benhemmouche
🐛
- 
Renato Oliveira
💻 🐛
- 
Rich DiCroce
🐛
+ 
Renato Oliveira
💻 🐛
+ 
Rich DiCroce
🐛

Riot R1cket
🐛

Rishabh Jain
🐛

RishabhDeep Singh
🐛

Robbie Martinus
💻 🐛

Robert Henry
🐛
- 
Robert Painsi
🐛
- 
Robert Russell
🐛
+ 
Robert Painsi
🐛
+ 
Robert Russell
🐛

Robert Sösemann
💻 📖 📢 🐛

Robert Whitebit
🐛

Robin Richtsfeld
🐛

Robin Stocker
💻 🐛

Robin Wils
🐛
- 
RochusOest
🐛
- 
Rodolfo Noviski
🐛
+ 
RochusOest
🐛
+ 
Rodolfo Noviski
🐛

Rodrigo Casara
🐛

Rodrigo Fernandes
🐛

Roman Salvador
💻 🐛

Ronald Blaschke
🐛

Róbert Papp
🐛
- 
Saikat Sengupta
🐛
- 
Saksham Handu
🐛
+ 
Saikat Sengupta
🐛
+ 
Saksham Handu
🐛

Saladoc
🐛

Salesforce Bob Lightning
🐛

Sam Carlberg
🐛

Satoshi Kubo
🐛

Scott Kennedy
🐛
- 
Scott Wells
🐛 💻
- 
Sebastian Bögl
🐛
+ 
Scott Wells
🐛 💻
+ 
Sebastian Bögl
🐛

Sebastian Schuberth
🐛

Sebastian Schwarz
🐛

Sergey Gorbaty
🐛

Sergey Kozlov
🐛

Sergey Yanzin
💻 🐛
- 
Shubham
💻 🐛
- 
Simon Xiao
🐛
+ 
Shubham
💻 🐛
+ 
Simon Xiao
🐛

Srinivasan Venkatachalam
🐛

Stanislav Gromov
🐛

Stanislav Myachenkov
💻

Stefan Birkner
🐛

Stefan Bohn
🐛
- 
Stefan Endrullis
🐛
- 
Stefan Klöss-Schuster
🐛
+ 
Stefan Endrullis
🐛
+ 
Stefan Klöss-Schuster
🐛

Stefan Wolf
🐛

Stephan H. Wissel
🐛

Stephen
🐛

Stephen Friedrich
🐛

Steve Babula
💻
- 
Stexxe
🐛
- 
Stian Lågstad
🐛
+ 
Stexxe
🐛
+ 
Stian Lågstad
🐛

StuartClayton5
🐛

Supun Arunoda
🐛

Suren Abrahamyan
🐛

SwatiBGupta1110
🐛

SyedThoufich
🐛
- 
Szymon Sasin
🐛
- 
T-chuangxin
🐛
+ 
Szymon Sasin
🐛
+ 
T-chuangxin
🐛

TERAI Atsuhiro
🐛

TIOBE Software
💻 🐛

Taylor Smock
🐛

Techeira Damián
💻 🐛

Ted Husted
🐛
- 
TehBakker
🐛
- 
The Gitter Badger
🐛
+ 
TehBakker
🐛
+ 
The Gitter Badger
🐛

Theodoor
🐛

Thiago Henrique Hüpner
🐛

Thibault Meyer
🐛

Thomas Güttler
🐛

Thomas Jones-Low
🐛
- 
Thomas Smith
💻 🐛
- 
ThrawnCA
🐛
+ 
Thomas Smith
💻 🐛
+ 
ThrawnCA
🐛

Thunderforge
💻 🐛

Tim van der Lippe
🐛

Tobias Weimer
💻 🐛

Tom Daly
🐛

Tomer Figenblat
🐛
- 
Tomi De Lucca
💻 🐛
- 
Torsten Kleiber
🐛
+ 
Tomi De Lucca
💻 🐛
+ 
Torsten Kleiber
🐛

TrackerSB
🐛

Ullrich Hafner
🐛

Utku Cuhadaroglu
💻 🐛

Valentin Brandl
🐛

Valeria
🐛
- 
Vasily Anisimov
🐛
- 
Vickenty Fesunov
🐛
+ 
Vasily Anisimov
🐛
+ 
Vickenty Fesunov
🐛

Victor Noël
🐛

Vincent Galloy
💻

Vincent HUYNH
🐛

Vincent Maurin
🐛

Vincent Privat
🐛
- 
Vishhwas
🐛
- 
Vitaly
🐛
+ 
Vishhwas
🐛
+ 
Vitaly
🐛

Vitaly Polonetsky
🐛

Vojtech Polivka
🐛

Vsevolod Zholobov
🐛

Wang Shidong
🐛

Waqas Ahmed
🐛
- 
Wayne J. Earl
🐛
- 
Wchenghui
🐛
+ 
Wayne J. Earl
🐛
+ 
Wchenghui
🐛

Will Winder
🐛

William Brockhus
💻 🐛

Wilson Kurniawan
🐛

Wim Deblauwe
🐛

Woongsik Choi
🐛
- 
XenoAmess
💻 🐛
- 
Yang
💻
+ 
XenoAmess
💻 🐛
+ 
Yang
💻

YaroslavTER
🐛

Young Chan
💻 🐛

YuJin Kim
🐛

Yuri Dolzhenko
🐛

Yurii Dubinka
🐛
- 
Zoltan Farkas
🐛
- 
Zustin
🐛
+ 
Zoltan Farkas
🐛
+ 
Zustin
🐛

aaronhurst-google
🐛

alexmodis
🐛

andreoss
🐛

andrey81inmd
💻 🐛

anicoara
🐛
- 
arunprasathav
🐛
- 
asiercamara
🐛
+ 
arunprasathav
🐛
+ 
asiercamara
🐛

astillich-igniti
💻

avesolovksyy
🐛

avishvat
🐛

avivmu
🐛

axelbarfod1
🐛
- 
b-3-n
🐛
- 
balbhadra9
🐛
+ 
b-3-n
🐛
+ 
balbhadra9
🐛

base23de
🐛

bergander
🐛

berkam
💻 🐛

breizh31
🐛

caesarkim
🐛
- 
carolyujing
🐛
- 
cesares-basilico
🐛
+ 
carolyujing
🐛
+ 
cesares-basilico
🐛

chrite
🐛

cobratbq
🐛

coladict
🐛

cosmoJFH
🐛

cristalp
🐛
- 
crunsk
🐛
- 
cwholmes
🐛
+ 
crunsk
🐛
+ 
cwholmes
🐛

cyberjj999
🐛

cyw3
🐛

d1ss0nanz
🐛

danbrycefairsailcom
🐛

dariansanity
🐛
- 
darrenmiliband
🐛
- 
davidburstrom
🐛
+ 
darrenmiliband
🐛
+ 
davidburstrom
🐛

dbirkman-paloalto
🐛

deepak-patra
🐛

dependabot[bot]
💻 🐛

dinesh150
🐛

diziaq
🐛
- 
dreaminpast123
🐛
- 
duanyanan
🐛
+ 
dreaminpast123
🐛
+ 
duanyanan
🐛

dutt-sanjay
🐛

dylanleung
🐛

dzeigler
🐛

ekkirala
🐛

emersonmoura
🐛
- 
fairy
🐛
- 
foxmason
🐛
+ 
fairy
🐛
+ 
foxmason
🐛

frankegabor
🐛

frankl
🐛

freafrea
🐛

fsapatin
🐛

gracia19
🐛
- 
guo fei
🐛
- 
gurmsc5
🐛
+ 
guo fei
🐛
+ 
gurmsc5
🐛

gwilymatgearset
💻 🐛

haigsn
🐛

hemanshu070
🐛

henrik242
🐛

hongpuwu
🐛
- 
hvbtup
💻 🐛
- 
igniti GmbH
🐛
+ 
hvbtup
💻 🐛
+ 
igniti GmbH
🐛

ilovezfs
🐛

itaigilo
🐛

jakivey32
🐛

jbennett2091
🐛

jcamerin
🐛
- 
jkeener1
🐛
- 
jmetertea
🐛
+ 
jkeener1
🐛
+ 
jmetertea
🐛

johnra2
💻

josemanuelrolon
💻 🐛

kabroxiko
💻 🐛

karwer
🐛

kaulonline
🐛
- 
kdaemonv
🐛
- 
kenji21
💻 🐛
+ 
kdaemonv
🐛
+ 
kenji21
💻 🐛

kfranic
🐛

khalidkh
🐛

krzyk
🐛

lasselindqvist
🐛

lihuaib
🐛
- 
lonelyma1021
🐛
- 
lpeddy
🐛
+ 
lonelyma1021
🐛
+ 
lpeddy
🐛

lujiefsi
💻

lyriccoder
🐛

marcelmore
🐛

matchbox
🐛

matthiaskraaz
🐛
- 
meandonlyme
🐛
- 
mikesive
🐛
+ 
meandonlyme
🐛
+ 
mikesive
🐛

milossesic
🐛

mriddell95
🐛

mrlzh
🐛

msloan
🐛

mucharlaravalika
🐛
- 
mvenneman
🐛
- 
nareshl119
🐛
+ 
mvenneman
🐛
+ 
nareshl119
🐛

nicolas-harraudeau-sonarsource
🐛

noerremark
🐛

novsirion
🐛

oggboy
🐛

oinume
🐛
- 
orimarko
💻 🐛
- 
pallavi agarwal
🐛
+ 
orimarko
💻 🐛
+ 
pallavi agarwal
🐛

parksungrin
🐛

patpatpat123
🐛

patriksevallius
🐛

pbrajesh1
🐛

phoenix384
🐛
- 
piotrszymanski-sc
💻
- 
plan3d
🐛
+ 
piotrszymanski-sc
💻
+ 
plan3d
🐛

poojasix
🐛

prabhushrikant
🐛

pujitha8783
🐛

r-r-a-j
🐛

raghujayjunk
🐛
- 
rajeshveera
🐛
- 
rajeswarreddy88
🐛
+ 
rajeshveera
🐛
+ 
rajeswarreddy88
🐛

recdevs
🐛

reudismam
💻 🐛

rijkt
🐛

rillig-tk
🐛

rmohan20
💻 🐛
- 
rxmicro
🐛
- 
ryan-gustafson
💻 🐛
+ 
rxmicro
🐛
+ 
ryan-gustafson
💻 🐛

sabi0
🐛

scais
🐛

sebbASF
🐛

sergeygorbaty
💻

shilko2013
🐛
- 
simeonKondr
🐛
- 
snajberk
🐛
+ 
simeonKondr
🐛
+ 
snajberk
🐛

sniperrifle2004
🐛

snuyanzin
🐛 💻

sratz
🐛

stonio
🐛

sturton
💻 🐛
- 
sudharmohan
🐛
- 
suruchidawar
🐛
+ 
sudharmohan
🐛
+ 
suruchidawar
🐛

svenfinitiv
🐛

tashiscool
🐛

test-git-hook
🐛

testation21
💻 🐛

thanosa
🐛
- 
tiandiyixian
🐛
- 
tobwoerk
🐛
+ 
tiandiyixian
🐛
+ 
tobwoerk
🐛

tprouvot
🐛

trentchilders
🐛

triandicAnt
🐛

trishul14
🐛

tsui
🐛
- 
winhkey
🐛
- 
witherspore
🐛
+ 
winhkey
🐛
+ 
witherspore
🐛

wjljack
🐛

wuchiuwong
🐛

xingsong
🐛

xioayuge
🐛

xnYi9wRezm
💻 🐛
- 
xuanuy
🐛
- 
xyf0921
🐛
+ 
xuanuy
🐛
+ 
xyf0921
🐛

yalechen-cyw3
🐛

yasuharu-sato
🐛

zenglian
🐛

zgrzyt93
💻 🐛

zh3ng
🐛
- 
zt_soft
🐛
- 
ztt79
🐛
+ 
zt_soft
🐛
+ 
ztt79
🐛

zzzzfeng
🐛

Árpád Magosányi
🐛

任贵杰
🐛
@@ -2910,7 +2912,7 @@ PMD scoreboard formulas, pmd-dcpd optimizations
diff --git a/pmd_projectdocs_faq.html b/pmd_projectdocs_faq.html
index ba28ef9d5a..aa549433a7 100644
--- a/pmd_projectdocs_faq.html
+++ b/pmd_projectdocs_faq.html
@@ -1506,7 +1506,7 @@ You must take this into account for certain rules.
diff --git a/pmd_projectdocs_trivia_meaning.html b/pmd_projectdocs_trivia_meaning.html
index 12879255c6..2f50c55959 100644
--- a/pmd_projectdocs_trivia_meaning.html
+++ b/pmd_projectdocs_trivia_meaning.html
@@ -1475,7 +1475,7 @@ really know. We just think the letters sound good together.
diff --git a/pmd_projectdocs_trivia_news.html b/pmd_projectdocs_trivia_news.html
index 1c6d9f33b8..e5770eb8e4 100644
--- a/pmd_projectdocs_trivia_news.html
+++ b/pmd_projectdocs_trivia_news.html
@@ -1595,7 +1595,7 @@ interview with Ole-Martin and Tom
diff --git a/pmd_projectdocs_trivia_products.html b/pmd_projectdocs_trivia_products.html
index 2e6d5120d1..c9ac71637e 100644
--- a/pmd_projectdocs_trivia_products.html
+++ b/pmd_projectdocs_trivia_products.html
@@ -1523,7 +1523,7 @@ to catch web app security problems. Thanks to Joseph Hemler for the props!
diff --git a/pmd_projectdocs_trivia_similarprojects.html b/pmd_projectdocs_trivia_similarprojects.html
index 26d14a2865..a2257b3ba2 100644
--- a/pmd_projectdocs_trivia_similarprojects.html
+++ b/pmd_projectdocs_trivia_similarprojects.html
@@ -1530,7 +1530,7 @@ only for maven project.
diff --git a/pmd_release_notes.html b/pmd_release_notes.html
index de0637c521..82ac220a0c 100644
--- a/pmd_release_notes.html
+++ b/pmd_release_notes.html
@@ -1465,6 +1465,11 @@ It allows you to enforce ApexDoc comments for classes and methods without requir
#3468: [java] UnusedPrivateMethod false positive when outer class calls private static method on inner class
+ java-errorprone
+
+ - #3686: [java] ReturnEmptyCollectionRatherThanNull - false negative with conditioned returns
+
+
java-performance
- #3492: [java] UselessStringValueOf: False positive when there is no initial String to append to
@@ -1481,7 +1486,9 @@ It allows you to enforce ApexDoc comments for classes and methods without requir
- #3683: [java] Fixed 3468 UnusedPrivateMethod false positive when outer class calls private static method on inner class - John Armgardt
- #3688: [java] Bump log4j to 2.16.0 - Sergey Nuyanzin
- #3693: [apex] ApexDoc: Add reportProperty property - Steve Babula
+ - #3704: [java] Fix for #3686 - Fix ReturnEmptyCollectionRatherThanNull - Oleksii Dykov
- #3713: [java] Enhance UnnecessaryModifier to support records - Vincent Galloy
+ - #3719: [java] Upgrade log4j to 2.17.1 - Daniel Paul Searles
@@ -1500,7 +1507,7 @@ It allows you to enforce ApexDoc comments for classes and methods without requir
diff --git a/pmd_release_notes_old.html b/pmd_release_notes_old.html
index f69db6af2c..f345c64f1b 100644
--- a/pmd_release_notes_old.html
+++ b/pmd_release_notes_old.html
@@ -14913,7 +14913,7 @@ Added new HTML report format
diff --git a/pmd_rules_apex.html b/pmd_rules_apex.html
index 3297fd0c86..008a949421 100644
--- a/pmd_rules_apex.html
+++ b/pmd_rules_apex.html
@@ -1674,7 +1674,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_apex_bestpractices.html b/pmd_rules_apex_bestpractices.html
index 1165140dc9..aa64cba64a 100644
--- a/pmd_rules_apex_bestpractices.html
+++ b/pmd_rules_apex_bestpractices.html
@@ -1990,7 +1990,7 @@ Therefore delegate the triggers work to a regular class (often called Trigger ha
diff --git a/pmd_rules_apex_codestyle.html b/pmd_rules_apex_codestyle.html
index 162bce2b29..6eb5ae3ce9 100644
--- a/pmd_rules_apex_codestyle.html
+++ b/pmd_rules_apex_codestyle.html
@@ -2551,7 +2551,7 @@ controlled from the rest.
diff --git a/pmd_rules_apex_design.html b/pmd_rules_apex_design.html
index 1db6513847..08b0890e99 100644
--- a/pmd_rules_apex_design.html
+++ b/pmd_rules_apex_design.html
@@ -2501,7 +2501,7 @@ city/state/zip fields could park them within a single Address field.
diff --git a/pmd_rules_apex_documentation.html b/pmd_rules_apex_documentation.html
index 4baa6462a5..3f804b2492 100644
--- a/pmd_rules_apex_documentation.html
+++ b/pmd_rules_apex_documentation.html
@@ -1571,7 +1571,7 @@ By setting
reportProperty
diff --git a/pmd_rules_apex_performance.html b/pmd_rules_apex_performance.html
index d7a0eb25e2..3fe41b34af 100644
--- a/pmd_rules_apex_performance.html
+++ b/pmd_rules_apex_performance.html
@@ -1923,7 +1923,7 @@ accross different contexts and API versions.
diff --git a/pmd_rules_apex_security.html b/pmd_rules_apex_security.html
index b3d4af7fdf..656c4e5059 100644
--- a/pmd_rules_apex_security.html
+++ b/pmd_rules_apex_security.html
@@ -2285,7 +2285,7 @@ to avoid XSS attacks.
diff --git a/pmd_rules_ecmascript.html b/pmd_rules_ecmascript.html
index 7d894bcba1..9e1396195d 100644
--- a/pmd_rules_ecmascript.html
+++ b/pmd_rules_ecmascript.html
@@ -1546,7 +1546,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_ecmascript_bestpractices.html b/pmd_rules_ecmascript_bestpractices.html
index 8a61fd7bf8..2695c49ed6 100644
--- a/pmd_rules_ecmascript_bestpractices.html
+++ b/pmd_rules_ecmascript_bestpractices.html
@@ -1670,7 +1670,7 @@ It also improves readability, if the base is given.
diff --git a/pmd_rules_ecmascript_codestyle.html b/pmd_rules_ecmascript_codestyle.html
index e6e5767c35..f36bfa5e00 100644
--- a/pmd_rules_ecmascript_codestyle.html
+++ b/pmd_rules_ecmascript_codestyle.html
@@ -1812,7 +1812,7 @@ will never execute. This is a bug, or extremely poor style.
diff --git a/pmd_rules_ecmascript_errorprone.html b/pmd_rules_ecmascript_errorprone.html
index cd087f7cd3..387f1c22a4 100644
--- a/pmd_rules_ecmascript_errorprone.html
+++ b/pmd_rules_ecmascript_errorprone.html
@@ -1593,7 +1593,7 @@ precision in a floating point number. This may result in numeric calculations b
diff --git a/pmd_rules_java.html b/pmd_rules_java.html
index 7d58643a44..fd87a3db01 100644
--- a/pmd_rules_java.html
+++ b/pmd_rules_java.html
@@ -2120,7 +2120,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_java_bestpractices.html b/pmd_rules_java_bestpractices.html
index aab0ad5d9e..1a3eae905d 100644
--- a/pmd_rules_java_bestpractices.html
+++ b/pmd_rules_java_bestpractices.html
@@ -3974,7 +3974,7 @@ a block
{}
is sufficie
diff --git a/pmd_rules_java_codestyle.html b/pmd_rules_java_codestyle.html
index 9d9f5b0171..c691ecd9c5 100644
--- a/pmd_rules_java_codestyle.html
+++ b/pmd_rules_java_codestyle.html
@@ -4741,7 +4741,7 @@ by the rule
diff --git a/pmd_rules_java_documentation.html b/pmd_rules_java_documentation.html
index a6e0d0dc5a..3dc9c66e20 100644
--- a/pmd_rules_java_documentation.html
+++ b/pmd_rules_java_documentation.html
@@ -1782,7 +1782,7 @@ empty methods.
diff --git a/pmd_rules_java_errorprone.html b/pmd_rules_java_errorprone.html
index b2951ed311..39db0e07f7 100644
--- a/pmd_rules_java_errorprone.html
+++ b/pmd_rules_java_errorprone.html
@@ -4765,10 +4765,12 @@ inadvertent NullPointerExceptions.
This rule is defined by the following XPath expression:
//MethodDeclaration
[
-(./ResultType/Type[pmd-java:typeIs('java.util.Collection') or pmd-java:typeIs('java.util.Map') or @ArrayType=true()])
-and
-(./Block/BlockStatement/Statement/ReturnStatement/Expression/PrimaryExpression/PrimaryPrefix/Literal/NullLiteral)
+ (./ResultType/Type[pmd-java:typeIs('java.util.Collection')
+ or pmd-java:typeIs('java.util.Map')
+ or @ArrayType=true()])
]
+//ReturnStatement/Expression/PrimaryExpression/PrimaryPrefix/Literal/NullLiteral
+[not(./ancestor::StatementExpression)]
Example(s):
@@ -5524,7 +5526,7 @@ Thread.currentThread().getContextClassLoader() instead.
diff --git a/pmd_rules_java_multithreading.html b/pmd_rules_java_multithreading.html
index ef92a28a08..c7ca4f0994 100644
--- a/pmd_rules_java_multithreading.html
+++ b/pmd_rules_java_multithreading.html
@@ -1968,7 +1968,7 @@ one is chosen. The thread chosen is arbitrary; thus its usually safer to call n
diff --git a/pmd_rules_java_performance.html b/pmd_rules_java_performance.html
index 0061f22382..b2a6268119 100644
--- a/pmd_rules_java_performance.html
+++ b/pmd_rules_java_performance.html
@@ -2626,7 +2626,7 @@ or StringBuffer.toString().length() == …
diff --git a/pmd_rules_java_security.html b/pmd_rules_java_security.html
index c308710d26..daa7a54878 100644
--- a/pmd_rules_java_security.html
+++ b/pmd_rules_java_security.html
@@ -1519,7 +1519,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_jsp.html b/pmd_rules_jsp.html
index fb8190f983..e2f3be5694 100644
--- a/pmd_rules_jsp.html
+++ b/pmd_rules_jsp.html
@@ -1528,7 +1528,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_jsp_bestpractices.html b/pmd_rules_jsp_bestpractices.html
index 3603a2970f..8a40fcd6fe 100644
--- a/pmd_rules_jsp_bestpractices.html
+++ b/pmd_rules_jsp_bestpractices.html
@@ -1561,7 +1561,7 @@ little other purpose. Consider switching to JSP comments.
diff --git a/pmd_rules_jsp_codestyle.html b/pmd_rules_jsp_codestyle.html
index 2c82801a43..e9f0754904 100644
--- a/pmd_rules_jsp_codestyle.html
+++ b/pmd_rules_jsp_codestyle.html
@@ -1478,7 +1478,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_jsp_design.html b/pmd_rules_jsp_design.html
index eb425bbad7..9c26d38033 100644
--- a/pmd_rules_jsp_design.html
+++ b/pmd_rules_jsp_design.html
@@ -1569,7 +1569,7 @@ onload=calcDays;
diff --git a/pmd_rules_jsp_errorprone.html b/pmd_rules_jsp_errorprone.html
index 4b1b215a0e..cbed94bc7c 100644
--- a/pmd_rules_jsp_errorprone.html
+++ b/pmd_rules_jsp_errorprone.html
@@ -1490,7 +1490,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_jsp_security.html b/pmd_rules_jsp_security.html
index d8ac5adf5d..b243a77b2e 100644
--- a/pmd_rules_jsp_security.html
+++ b/pmd_rules_jsp_security.html
@@ -1511,7 +1511,7 @@ ${fn:escapeXml(expression)}
<!-- instead, escape it --&g
diff --git a/pmd_rules_modelica.html b/pmd_rules_modelica.html
index 4a5a51e307..3fb174dc42 100644
--- a/pmd_rules_modelica.html
+++ b/pmd_rules_modelica.html
@@ -1477,7 +1477,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_modelica_bestpractices.html b/pmd_rules_modelica_bestpractices.html
index eef34dca28..9f3e557510 100644
--- a/pmd_rules_modelica_bestpractices.html
+++ b/pmd_rules_modelica_bestpractices.html
@@ -1553,7 +1553,7 @@ end Example;
diff --git a/pmd_rules_plsql.html b/pmd_rules_plsql.html
index bc2ac97591..6b5022dacf 100644
--- a/pmd_rules_plsql.html
+++ b/pmd_rules_plsql.html
@@ -1557,7 +1557,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_plsql_bestpractices.html b/pmd_rules_plsql_bestpractices.html
index cce4f8e914..47352e3df0 100644
--- a/pmd_rules_plsql_bestpractices.html
+++ b/pmd_rules_plsql_bestpractices.html
@@ -1519,7 +1519,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_plsql_codestyle.html b/pmd_rules_plsql_codestyle.html
index 2f272d2758..5894bef86c 100644
--- a/pmd_rules_plsql_codestyle.html
+++ b/pmd_rules_plsql_codestyle.html
@@ -1803,7 +1803,7 @@ https://docs.oracle.com/cd/B28359_01/appdev.111/b28370/static.htm#BABIIHBJ
diff --git a/pmd_rules_plsql_design.html b/pmd_rules_plsql_design.html
index 2bc8fa2440..b6bf7d2ba3 100644
--- a/pmd_rules_plsql_design.html
+++ b/pmd_rules_plsql_design.html
@@ -2443,7 +2443,7 @@ have more fine grained objects.
diff --git a/pmd_rules_plsql_errorprone.html b/pmd_rules_plsql_errorprone.html
index 6940e6a398..cc34d8fc76 100644
--- a/pmd_rules_plsql_errorprone.html
+++ b/pmd_rules_plsql_errorprone.html
@@ -1588,7 +1588,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_pom.html b/pmd_rules_pom.html
index 32b538cbe8..55b27b10ac 100644
--- a/pmd_rules_pom.html
+++ b/pmd_rules_pom.html
@@ -1490,7 +1490,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_pom_errorprone.html b/pmd_rules_pom_errorprone.html
index 2ce04bc719..71aa5d6055 100644
--- a/pmd_rules_pom_errorprone.html
+++ b/pmd_rules_pom_errorprone.html
@@ -1559,7 +1559,7 @@ By far the most common problem is the use of ${project.version} in a BOM or pare
diff --git a/pmd_rules_scala.html b/pmd_rules_scala.html
index 7faf2410cf..bdc41b00aa 100644
--- a/pmd_rules_scala.html
+++ b/pmd_rules_scala.html
@@ -1472,7 +1472,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_vf.html b/pmd_rules_vf.html
index 03843382bb..74eb100fa5 100644
--- a/pmd_rules_vf.html
+++ b/pmd_rules_vf.html
@@ -1491,7 +1491,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_vf_security.html b/pmd_rules_vf_security.html
index 06c75341b0..4eefe96a66 100644
--- a/pmd_rules_vf_security.html
+++ b/pmd_rules_vf_security.html
@@ -1534,7 +1534,7 @@ on
diff --git a/pmd_rules_vm_bestpractices.html b/pmd_rules_vm_bestpractices.html
index 398745a8ba..4058152466 100644
--- a/pmd_rules_vm_bestpractices.html
+++ b/pmd_rules_vm_bestpractices.html
@@ -1487,7 +1487,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_vm_design.html b/pmd_rules_vm_design.html
index d9c3dff602..f586c5b636 100644
--- a/pmd_rules_vm_design.html
+++ b/pmd_rules_vm_design.html
@@ -1601,7 +1601,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_vm_errorprone.html b/pmd_rules_vm_errorprone.html
index b87337a835..16d78bcd0d 100644
--- a/pmd_rules_vm_errorprone.html
+++ b/pmd_rules_vm_errorprone.html
@@ -1487,7 +1487,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_xml.html b/pmd_rules_xml.html
index 335e369c7a..4b6cc3de75 100644
--- a/pmd_rules_xml.html
+++ b/pmd_rules_xml.html
@@ -1489,7 +1489,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_xml_errorprone.html b/pmd_rules_xml_errorprone.html
index 511b9a0580..20365ce9d5 100644
--- a/pmd_rules_xml_errorprone.html
+++ b/pmd_rules_xml_errorprone.html
@@ -1491,7 +1491,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_xsl.html b/pmd_rules_xsl.html
index 1c8b183472..3ef38fb74b 100644
--- a/pmd_rules_xsl.html
+++ b/pmd_rules_xsl.html
@@ -1497,7 +1497,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_xsl_codestyle.html b/pmd_rules_xsl_codestyle.html
index d1db1f3c57..7b551bb2a5 100644
--- a/pmd_rules_xsl_codestyle.html
+++ b/pmd_rules_xsl_codestyle.html
@@ -1482,7 +1482,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_xsl_performance.html b/pmd_rules_xsl_performance.html
index 52fed98941..ee39a90135 100644
--- a/pmd_rules_xsl_performance.html
+++ b/pmd_rules_xsl_performance.html
@@ -1525,7 +1525,7 @@ cutting through 100% of the document.
diff --git a/pmd_userdocs_best_practices.html b/pmd_userdocs_best_practices.html
index 506c12f48e..040a2f9942 100644
--- a/pmd_userdocs_best_practices.html
+++ b/pmd_userdocs_best_practices.html
@@ -1494,7 +1494,7 @@ and soon you’ll be fixing problems much faster.
diff --git a/pmd_userdocs_cli_reference.html b/pmd_userdocs_cli_reference.html
index 2a465ae7e4..dfc8eda64d 100644
--- a/pmd_userdocs_cli_reference.html
+++ b/pmd_userdocs_cli_reference.html
@@ -2184,7 +2184,7 @@ $ ./run.sh pmd --file-list /home/me/src/filelist.txt -f text -R ruleset.xml --fo
diff --git a/pmd_userdocs_configuring_rules.html b/pmd_userdocs_configuring_rules.html
index 69c28a105e..a4464b6399 100644
--- a/pmd_userdocs_configuring_rules.html
+++ b/pmd_userdocs_configuring_rules.html
@@ -1520,7 +1520,7 @@ will cause the rule to be ignored.
diff --git a/pmd_userdocs_cpd.html b/pmd_userdocs_cpd.html
index 462cb5388c..0b42dca610 100644
--- a/pmd_userdocs_cpd.html
+++ b/pmd_userdocs_cpd.html
@@ -2499,7 +2499,7 @@ the comment based approach will be extended to those of them that can support it
diff --git a/pmd_userdocs_cpd_report_formats.html b/pmd_userdocs_cpd_report_formats.html
index 465b881491..3f77adf58e 100644
--- a/pmd_userdocs_cpd_report_formats.html
+++ b/pmd_userdocs_cpd_report_formats.html
@@ -1671,7 +1671,7 @@ is shown in the console. You can then click on the filenames to jump to the sour
diff --git a/pmd_userdocs_extending_defining_properties.html b/pmd_userdocs_extending_defining_properties.html
index d4cce472b9..591907f711 100644
--- a/pmd_userdocs_extending_defining_properties.html
+++ b/pmd_userdocs_extending_defining_properties.html
@@ -1670,7 +1670,7 @@ are supported.
diff --git a/pmd_userdocs_extending_designer_reference.html b/pmd_userdocs_extending_designer_reference.html
index ad264dae34..478bc00ce5 100644
--- a/pmd_userdocs_extending_designer_reference.html
+++ b/pmd_userdocs_extending_designer_reference.html
@@ -1709,7 +1709,7 @@ The available language modules are those on the classpath of the app’s JVM. Th
diff --git a/pmd_userdocs_extending_metrics_howto.html b/pmd_userdocs_extending_metrics_howto.html
index 121137f7b1..1000a2c9a0 100644
--- a/pmd_userdocs_extending_metrics_howto.html
+++ b/pmd_userdocs_extending_metrics_howto.html
@@ -1795,7 +1795,7 @@ classes. Here’s the default behaviour by language and type of metric:
diff --git a/pmd_userdocs_extending_rule_guidelines.html b/pmd_userdocs_extending_rule_guidelines.html
index 51542798bf..36fd61beec 100644
--- a/pmd_userdocs_extending_rule_guidelines.html
+++ b/pmd_userdocs_extending_rule_guidelines.html
@@ -1499,7 +1499,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_userdocs_extending_testing.html b/pmd_userdocs_extending_testing.html
index 54a6c7a133..a8975eb98b 100644
--- a/pmd_userdocs_extending_testing.html
+++ b/pmd_userdocs_extending_testing.html
@@ -1775,7 +1775,7 @@ will be executed twice.
diff --git a/pmd_userdocs_extending_writing_java_rules.html b/pmd_userdocs_extending_writing_java_rules.html
index 750e66c5c6..faada8ecaa 100644
--- a/pmd_userdocs_extending_writing_java_rules.html
+++ b/pmd_userdocs_extending_writing_java_rules.html
@@ -1627,7 +1627,7 @@ the file
diff --git a/pmd_rules_vm.html b/pmd_rules_vm.html
index e93b3b4631..2d7cdc20cc 100644
--- a/pmd_rules_vm.html
+++ b/pmd_rules_vm.html
@@ -1511,7 +1511,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_rules_java_design.html b/pmd_rules_java_design.html
index 3d6cb0d0b1..92ce4afc55 100644
--- a/pmd_rules_java_design.html
+++ b/pmd_rules_java_design.html
@@ -4138,7 +4138,7 @@ remember to add a private constructor to prevent instantiation.
diff --git a/pmd_rules_apex_errorprone.html b/pmd_rules_apex_errorprone.html
index 25f5017459..76b2718d3d 100644
--- a/pmd_rules_apex_errorprone.html
+++ b/pmd_rules_apex_errorprone.html
@@ -2395,7 +2395,7 @@ dealing with legacy code.
diff --git a/pmd_userdocs_extending_writing_pmd_rules.html b/pmd_userdocs_extending_writing_pmd_rules.html
index 1610a41e07..443d2caa8d 100644
--- a/pmd_userdocs_extending_writing_pmd_rules.html
+++ b/pmd_userdocs_extending_writing_pmd_rules.html
@@ -1491,7 +1491,7 @@ your rule
diff --git a/pmd_userdocs_extending_writing_rules_intro.html b/pmd_userdocs_extending_writing_rules_intro.html
index ec9b5d710a..646504ba13 100644
--- a/pmd_userdocs_extending_writing_rules_intro.html
+++ b/pmd_userdocs_extending_writing_rules_intro.html
@@ -1609,7 +1609,7 @@ your rule
diff --git a/pmd_userdocs_extending_writing_xpath_rules.html b/pmd_userdocs_extending_writing_xpath_rules.html
index 3fddbf9659..6bea19aff9 100644
--- a/pmd_userdocs_extending_writing_xpath_rules.html
+++ b/pmd_userdocs_extending_writing_xpath_rules.html
@@ -1969,7 +1969,7 @@ deprecated and whose usages should be replaced with uses of
diff --git a/pmd_userdocs_incremental_analysis.html b/pmd_userdocs_incremental_analysis.html
index 10332f9183..c8251d1346 100644
--- a/pmd_userdocs_incremental_analysis.html
+++ b/pmd_userdocs_incremental_analysis.html
@@ -1574,7 +1574,7 @@ same execution classpath).
diff --git a/pmd_userdocs_installation.html b/pmd_userdocs_installation.html
index 80fe51ec41..ef35b51deb 100644
--- a/pmd_userdocs_installation.html
+++ b/pmd_userdocs_installation.html
@@ -1634,7 +1634,7 @@ directory or a jar or zip file containing the sources.
diff --git a/pmd_userdocs_making_rulesets.html b/pmd_userdocs_making_rulesets.html
index 28d15821a1..8c2c8d7655 100644
--- a/pmd_userdocs_making_rulesets.html
+++ b/pmd_userdocs_making_rulesets.html
@@ -1577,7 +1577,7 @@ a single rule reference.
diff --git a/pmd_userdocs_report_formats.html b/pmd_userdocs_report_formats.html
index 6e46d9feb7..5de7d2d2ae 100644
--- a/pmd_userdocs_report_formats.html
+++ b/pmd_userdocs_report_formats.html
@@ -1840,7 +1840,7 @@ The output directory must exist. If not specified, the html files are created in
diff --git a/pmd_userdocs_suppressing_warnings.html b/pmd_userdocs_suppressing_warnings.html
index d7743f9007..b1db61ae4d 100644
--- a/pmd_userdocs_suppressing_warnings.html
+++ b/pmd_userdocs_suppressing_warnings.html
@@ -1678,7 +1678,7 @@ violations you wish to suppress. XPath queries are explained in
diff --git a/pmd_userdocs_tools.html b/pmd_userdocs_tools.html
index 28369cb1ed..13a1f9671e 100644
--- a/pmd_userdocs_tools.html
+++ b/pmd_userdocs_tools.html
@@ -1944,7 +1944,7 @@ the (blank Command Results) document, and then confirming that, “yes, I do rea
diff --git a/pmd_userdocs_tools_ant.html b/pmd_userdocs_tools_ant.html
index f54936acf7..420bcb526d 100644
--- a/pmd_userdocs_tools_ant.html
+++ b/pmd_userdocs_tools_ant.html
@@ -1900,7 +1900,7 @@ To prevent this from happening, increase the maximum memory usable by ant using
diff --git a/pmd_userdocs_tools_ci.html b/pmd_userdocs_tools_ci.html
index 96ffaa849d..633751fad3 100644
--- a/pmd_userdocs_tools_ci.html
+++ b/pmd_userdocs_tools_ci.html
@@ -1494,7 +1494,7 @@ result of the PMD maven plugin.
diff --git a/pmd_userdocs_tools_gradle.html b/pmd_userdocs_tools_gradle.html
index 1460be84c2..a451a6a826 100644
--- a/pmd_userdocs_tools_gradle.html
+++ b/pmd_userdocs_tools_gradle.html
@@ -1527,7 +1527,7 @@ with the property
toolVersion
diff --git a/pmd_userdocs_tools_java_api.html b/pmd_userdocs_tools_java_api.html
index 82717c1185..6c8d4352ad 100644
--- a/pmd_userdocs_tools_java_api.html
+++ b/pmd_userdocs_tools_java_api.html
@@ -1702,7 +1702,7 @@ Then you can check the rendered output.
diff --git a/pmd_userdocs_tools_maven.html b/pmd_userdocs_tools_maven.html
index d3678a4005..012068b9ed 100644
--- a/pmd_userdocs_tools_maven.html
+++ b/pmd_userdocs_tools_maven.html
@@ -1742,7 +1742,7 @@ the previous paragraph. Add the following property to your project now:
diff --git a/tag_devdocs.html b/tag_devdocs.html
index 308f8fa2d6..e254b70363 100644
--- a/tag_devdocs.html
+++ b/tag_devdocs.html
@@ -1986,7 +1986,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_extending.html b/tag_extending.html
index f9bf603832..f276b42812 100644
--- a/tag_extending.html
+++ b/tag_extending.html
@@ -2010,7 +2010,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_getting_started.html b/tag_getting_started.html
index 21f5213070..5b4421e8e1 100644
--- a/tag_getting_started.html
+++ b/tag_getting_started.html
@@ -1938,7 +1938,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_languages.html b/tag_languages.html
index 202657a181..ba88498466 100644
--- a/tag_languages.html
+++ b/tag_languages.html
@@ -1914,7 +1914,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_metrics.html b/tag_metrics.html
index f6ac432307..3897c3aded 100644
--- a/tag_metrics.html
+++ b/tag_metrics.html
@@ -1938,7 +1938,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_release_notes.html b/tag_release_notes.html
index 12817a4ff1..45c0a8f20b 100644
--- a/tag_release_notes.html
+++ b/tag_release_notes.html
@@ -1914,7 +1914,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_rule_references.html b/tag_rule_references.html
index 2493391dd8..d6a3db7469 100644
--- a/tag_rule_references.html
+++ b/tag_rule_references.html
@@ -1986,7 +1986,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_tools.html b/tag_tools.html
index 7eeb831177..21cb5edeb2 100644
--- a/tag_tools.html
+++ b/tag_tools.html
@@ -1950,7 +1950,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_troubleshooting.html b/tag_troubleshooting.html
index 9510797a44..f91b3006d7 100644
--- a/tag_troubleshooting.html
+++ b/tag_troubleshooting.html
@@ -1914,7 +1914,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/tag_userdocs.html b/tag_userdocs.html
index 3124670f17..e6b99f0ec9 100644
--- a/tag_userdocs.html
+++ b/tag_userdocs.html
@@ -2070,7 +2070,7 @@ $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3
diff --git a/pmd_userdocs_extending_your_first_rule.html b/pmd_userdocs_extending_your_first_rule.html
index 6279378836..ef155779b1 100644
--- a/pmd_userdocs_extending_your_first_rule.html
+++ b/pmd_userdocs_extending_your_first_rule.html
@@ -1598,7 +1598,7 @@ of a rule of type XPathRule, which is how XPath rules are implemented.
diff --git a/pmd_projectdocs_committers_infrastructure.html b/pmd_projectdocs_committers_infrastructure.html
index 07b2d9eb10..9a58bf7c12 100644
--- a/pmd_projectdocs_committers_infrastructure.html
+++ b/pmd_projectdocs_committers_infrastructure.html
@@ -1543,7 +1543,7 @@ Login is via github.
diff --git a/pmd_devdocs_major_rule_guidelines.html b/pmd_devdocs_major_rule_guidelines.html
index 6fb84a27be..f5f582b2bf 100644
--- a/pmd_devdocs_major_rule_guidelines.html
+++ b/pmd_devdocs_major_rule_guidelines.html
@@ -1563,7 +1563,7 @@ non-private”).