This is an automated email from the ASF dual-hosted git repository.

pottlinger pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/creadur-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 713128c13 WHISKER-32: Fix download page
713128c13 is described below

commit 713128c139b5ee02342b9743be6fe69732bea987
Author: P. Ottlinger <[email protected]>
AuthorDate: Tue Mar 10 19:15:16 2026 +0100

    WHISKER-32: Fix download page
---
 whisker/apache-whisker-app/rat-report.html         |   2 +-
 whisker/apache-whisker-app/surefire.html           |  16 +-
 whisker/apache-whisker-app/team.html               |   2 +-
 whisker/apache-whisker-cli/licenses.html           | 204 ++++++++++++++++++++-
 whisker/apache-whisker-cli/rat-report.html         |   2 +-
 whisker/apache-whisker-cli/surefire.html           |  22 +--
 .../apache-whisker-maven-plugin/rat-report.html    |   2 +-
 whisker/apache-whisker-maven-plugin/surefire.html  |  22 +--
 whisker/apache-whisker-maven-plugin/team.html      |   4 +-
 whisker/apache-whisker-model/rat-report.html       |   2 +-
 whisker/apache-whisker-model/surefire.html         |  32 ++--
 whisker/apache-whisker-scan/rat-report.html        |   2 +-
 whisker/apache-whisker-scan/team.html              |   4 +-
 whisker/apache-whisker-velocity/licenses.html      | 204 ++++++++++++++++++++-
 whisker/apache-whisker-velocity/rat-report.html    |   2 +-
 whisker/apache-whisker-velocity/surefire.html      |  18 +-
 whisker/apache-whisker-xml/jira-changes.html       |  93 +++++++++-
 whisker/apache-whisker-xml/licenses.html           | 204 ++++++++++++++++++++-
 whisker/apache-whisker-xml/rat-report.html         |   2 +-
 whisker/apache-whisker-xml/surefire.html           | 100 +++++-----
 whisker/apache-whisker-xml/team.html               |   4 +-
 whisker/changes.html                               |  26 +--
 whisker/rat-report.html                            |   2 +-
 23 files changed, 833 insertions(+), 138 deletions(-)

diff --git a/whisker/apache-whisker-app/rat-report.html 
b/whisker/apache-whisker-app/rat-report.html
index d46af0b0d..d4a438e09 100644
--- a/whisker/apache-whisker-app/rat-report.html
+++ b/whisker/apache-whisker-app/rat-report.html
@@ -120,7 +120,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:06:50+01:00
+Generated at: 2026-03-10T19:13:20+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-app/surefire.html 
b/whisker/apache-whisker-app/surefire.html
index 3424a84f3..6a41b6fac 100644
--- a/whisker/apache-whisker-app/surefire.html
+++ b/whisker/apache-whisker-app/surefire.html
@@ -150,7 +150,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.031 s</td></tr></table><br />
+<td>0.030 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -170,7 +170,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.028 s</td></tr>
+<td>0.026 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.app.load">org.apache.creadur.whisker.app.load</a></td>
 <td>1</td>
@@ -178,7 +178,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.003 s</td></tr></table><br />
+<td>0.004 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.app"></a>
 <h3>org.apache.creadur.whisker.app</h3>
 <table class="table table-striped">
@@ -199,7 +199,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.021 s</td></tr>
+<td>0.023 s</td></tr>
 <tr class="a">
 <td><a href="#org.apache.creadur.whisker.app.TestWhisker"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a href="#org.apache.creadur.whisker.app.TestWhisker">TestWhisker</a></td>
@@ -208,7 +208,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.007 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.app.load"></a>
+<td>0.003 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.app.load"></a>
 <h3>org.apache.creadur.whisker.app.load</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -228,7 +228,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.003 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.004 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.app.load.TestStreamableResourceFactory"></a>
 <h3>TestStreamableResourceFactory</h3>
@@ -250,7 +250,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.app.TestConfigurationBuilder.testWithSourceURLsInLicense"></a>testWithSourceURLsInLicense</td>
-<td>0.001 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.app.TestWhisker"></a>
+<td>0 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.app.TestWhisker"></a>
 <h3>TestWhisker</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -260,7 +260,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.app.TestWhisker.testMinimalLicenseConfigurationConfiguresNoSourceUrls"></a>testMinimalLicenseConfigurationConfiguresNoSourceUrls</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.app.TestWhisker.testSetNullLicenseConfiguration"></a>testSetNullLicenseConfiguration</td>
diff --git a/whisker/apache-whisker-app/team.html 
b/whisker/apache-whisker-app/team.html
index cb8e110f9..f866c2336 100644
--- a/whisker/apache-whisker-app/team.html
+++ b/whisker/apache-whisker-app/team.html
@@ -132,7 +132,7 @@
 <td>Robert Burrell Donkin</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
 <tr class="a">
-<td><figure><img src="avatars/c8686cad245196c9e392201ad7bb364f.jpg" 
/></figure></td>
+<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
 <td><a id="dennisl"></a>dennisl</td>
 <td>Dennis Lundberg</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
diff --git a/whisker/apache-whisker-cli/licenses.html 
b/whisker/apache-whisker-cli/licenses.html
index 4b3704b3c..d1f4db155 100644
--- a/whisker/apache-whisker-cli/licenses.html
+++ b/whisker/apache-whisker-cli/licenses.html
@@ -120,7 +120,209 @@
 <h1>Project Licenses</h1><section><a id="Apache_License.2C_Version_2"></a>
 <h2>Apache License, Version 2</h2>
 <p>An OSI approved open source license.</p>
-<p>Can't read the url [https://www.apache.org/licenses/LICENSE-2.0.txt] : Das 
Netzwerk ist nicht erreichbar</p></section></section>        </main>
+<pre>
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      &quot;License&quot; shall mean the terms and conditions for use, 
reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      &quot;Licensor&quot; shall mean the copyright owner or entity authorized 
by
+      the copyright owner that is granting the License.
+
+      &quot;Legal Entity&quot; shall mean the union of the acting entity and 
all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      &quot;control&quot; means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal 
Entity
+      exercising permissions granted by this License.
+
+      &quot;Source&quot; form shall mean the preferred form for making 
modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      &quot;Object&quot; form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      &quot;Work&quot; shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      &quot;Derivative Works&quot; shall mean any work, whether in Source or 
Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      &quot;Contribution&quot; shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, 
&quot;submitted&quot;
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as &quot;Not a 
Contribution.&quot;
+
+      &quot;Contributor&quot; shall mean Licensor and any individual or Legal 
Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets &quot;[]&quot;
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same &quot;printed page&quot; as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+</pre></section></section>        </main>
       </div>
     </div>
     <hr/>
diff --git a/whisker/apache-whisker-cli/rat-report.html 
b/whisker/apache-whisker-cli/rat-report.html
index d11343fad..8153285bc 100644
--- a/whisker/apache-whisker-cli/rat-report.html
+++ b/whisker/apache-whisker-cli/rat-report.html
@@ -120,7 +120,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:07:17+01:00
+Generated at: 2026-03-10T19:13:39+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-cli/surefire.html 
b/whisker/apache-whisker-cli/surefire.html
index 7d835ca2f..2db495de8 100644
--- a/whisker/apache-whisker-cli/surefire.html
+++ b/whisker/apache-whisker-cli/surefire.html
@@ -150,7 +150,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.176 s</td></tr></table><br />
+<td>0.165 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -170,7 +170,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.176 s</td></tr></table><br />
+<td>0.165 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.cli"></a>
 <h3>org.apache.creadur.whisker.cli</h3>
 <table class="table table-striped">
@@ -191,7 +191,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.025 s</td></tr>
+<td>0.024 s</td></tr>
 <tr class="a">
 <td><a href="#org.apache.creadur.whisker.cli.TestCommandParsing"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.cli.TestCommandParsing">TestCommandParsing</a></td>
@@ -200,7 +200,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.151 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.141 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.cli.TestMain"></a>
 <h3>TestMain</h3>
@@ -212,7 +212,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestMain.testIsGenerateHelp"></a>testIsGenerateHelp</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestMain.testIsAuditHelp"></a>testIsAuditHelp</td>
@@ -226,7 +226,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSetAuditAct"></a>testSetAuditAct</td>
-<td>0.120 s</td></tr>
+<td>0.114 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testAuditRequiresSource"></a>testAuditRequiresSource</td>
@@ -234,19 +234,19 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSkeletonAndAuditAreMutuallyExclusive"></a>testSkeletonAndAuditAreMutuallyExclusive</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testGenerateAndSkeletonAreMutuallyExclusive"></a>testGenerateAndSkeletonAreMutuallyExclusive</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSetLicenseDescriptorShortByCLI"></a>testSetLicenseDescriptorShortByCLI</td>
-<td>0.020 s</td></tr>
+<td>0.017 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSetSourceByCli"></a>testSetSourceByCli</td>
-<td>0.002 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSetSkeletonAct"></a>testSetSkeletonAct</td>
@@ -258,7 +258,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testSetGenerateAct"></a>testSetGenerateAct</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.cli.TestCommandParsing.testGenerateAndAuditAreMutuallyExclusive"></a>testGenerateAndAuditAreMutuallyExclusive</td>
diff --git a/whisker/apache-whisker-maven-plugin/rat-report.html 
b/whisker/apache-whisker-maven-plugin/rat-report.html
index cf01ab7f4..efbe17430 100644
--- a/whisker/apache-whisker-maven-plugin/rat-report.html
+++ b/whisker/apache-whisker-maven-plugin/rat-report.html
@@ -126,7 +126,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:07:29+01:00
+Generated at: 2026-03-10T19:14:11+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-maven-plugin/surefire.html 
b/whisker/apache-whisker-maven-plugin/surefire.html
index 3d842a0b9..a085577e0 100644
--- a/whisker/apache-whisker-maven-plugin/surefire.html
+++ b/whisker/apache-whisker-maven-plugin/surefire.html
@@ -156,7 +156,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.037 s</td></tr></table><br />
+<td>0.035 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -176,7 +176,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.037 s</td></tr></table><br />
+<td>0.035 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.it"></a>
 <h3>org.apache.creadur.whisker.it</h3>
 <table class="table table-striped">
@@ -197,7 +197,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.007 s</td></tr>
+<td>0.005 s</td></tr>
 <tr class="a">
 <td><a href="#org.apache.creadur.whisker.it.TestNoLineContainsCheck"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.it.TestNoLineContainsCheck">TestNoLineContainsCheck</a></td>
@@ -206,7 +206,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.003 s</td></tr>
+<td>0.004 s</td></tr>
 <tr class="b">
 <td><a href="#org.apache.creadur.whisker.it.TestAllCheck"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a href="#org.apache.creadur.whisker.it.TestAllCheck">TestAllCheck</a></td>
@@ -215,7 +215,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.027 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.026 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.it.TestAnyCheck"></a>
 <h3>TestAnyCheck</h3>
@@ -223,11 +223,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestAnyCheck.testTwoChecksFail"></a>testTwoChecksFail</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestAnyCheck.testTwoChecksPass"></a>testTwoChecksPass</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestAnyCheck.testTwoChecksPassWhenOneMatchFails"></a>testTwoChecksPassWhenOneMatchFails</td>
@@ -239,17 +239,17 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestAnyCheck.testOneCheckFail"></a>testOneCheckFail</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestAnyCheck.testOneCheckPass"></a>testOneCheckPass</td>
-<td>0.001 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.it.TestNoLineContainsCheck"></a>
+<td>0 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.it.TestNoLineContainsCheck"></a>
 <h3>TestNoLineContainsCheck</h3>
 <table class="table table-striped">
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestNoLineContainsCheck.testSameLine"></a>testSameLine</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestNoLineContainsCheck.testNullLine"></a>testNullLine</td>
@@ -257,7 +257,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestNoLineContainsCheck.testLineContainingText"></a>testLineContainingText</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.it.TestNoLineContainsCheck.testDifferentLine"></a>testDifferentLine</td>
diff --git a/whisker/apache-whisker-maven-plugin/team.html 
b/whisker/apache-whisker-maven-plugin/team.html
index c3f9bd872..787374027 100644
--- a/whisker/apache-whisker-maven-plugin/team.html
+++ b/whisker/apache-whisker-maven-plugin/team.html
@@ -132,12 +132,12 @@
 <th>Name</th>
 <th>Email</th></tr>
 <tr class="b">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/30f9094d5dbe2ce93f1a41afc9615b83.jpg" 
/></figure></td>
 <td><a id="rdonkin"></a>rdonkin</td>
 <td>Robert Burrell Donkin</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
 <tr class="a">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/c8686cad245196c9e392201ad7bb364f.jpg" 
/></figure></td>
 <td><a id="dennisl"></a>dennisl</td>
 <td>Dennis Lundberg</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
diff --git a/whisker/apache-whisker-model/rat-report.html 
b/whisker/apache-whisker-model/rat-report.html
index 198dd0acc..7b12bcac8 100644
--- a/whisker/apache-whisker-model/rat-report.html
+++ b/whisker/apache-whisker-model/rat-report.html
@@ -120,7 +120,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:05:31+01:00
+Generated at: 2026-03-10T19:12:38+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-model/surefire.html 
b/whisker/apache-whisker-model/surefire.html
index 0e886f00c..8710936d1 100644
--- a/whisker/apache-whisker-model/surefire.html
+++ b/whisker/apache-whisker-model/surefire.html
@@ -150,7 +150,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.047 s</td></tr></table><br />
+<td>0.042 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -170,7 +170,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.047 s</td></tr></table><br />
+<td>0.042 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.model"></a>
 <h3>org.apache.creadur.whisker.model</h3>
 <table class="table table-striped">
@@ -191,7 +191,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.004 s</td></tr>
+<td>0.003 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed"><img
 src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed">TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed</a></td>
@@ -209,7 +209,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices"><img
 src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices">TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices</a></td>
@@ -227,7 +227,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.004 s</td></tr>
+<td>0.003 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesNoThirdPartyNotices"><img
 src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesNoThirdPartyNotices">TestDescriptorRequiredNoticesNoThirdPartyNotices</a></td>
@@ -236,7 +236,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.004 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><a 
href="#org.apache.creadur.whisker.model.TestNoCopyrightNoticeVerifier"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.model.TestNoCopyrightNoticeVerifier">TestNoCopyrightNoticeVerifier</a></td>
@@ -245,7 +245,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.002 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.001 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.model.TestDescriptorPrimaryOnly"></a>
 <h3>TestDescriptorPrimaryOnly</h3>
@@ -271,15 +271,15 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed.testNoticeNotRequiredWhenPrimaryNoticeIsEmptyAndAllThirdPartyNoticesUnused"></a>testNoticeNotRequiredWhenPrimaryNoticeIsEmptyAndAllThirdPartyNoticesUnused</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed.testNoticeNotRequiredWhenPrimaryNoticeIsWhitespaceAndAllThirdPartyNoticesUnused"></a>testNoticeNotRequiredWhenPrimaryNoticeIsWhitespaceAndAllThirdPartyNoticesUnused</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithThirdPartyNoticesButNoneUsed.testNoticeNotRequiredWhenPrimaryNoticeIsNullAndAllThirdPartyNoticesUnused"></a>testNoticeNotRequiredWhenPrimaryNoticeIsNullAndAllThirdPartyNoticesUnused</td>
-<td>0.001 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.model.TestWithLicense"></a>
+<td>0 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.model.TestWithLicense"></a>
 <h3>TestWithLicense</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -295,15 +295,15 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices.testNoticeRequiredWhenPrimaryNoticeExists"></a>testNoticeRequiredWhenPrimaryNoticeExists</td>
-<td>0.005 s</td></tr>
+<td>0.004 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices.testNoticeRequiredWhenPrimaryNoticeIsWhitespaceAndThirdPartyNotices"></a>testNoticeRequiredWhenPrimaryNoticeIsWhitespaceAndThirdPartyNotices</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices.testNoticeRequiredWhenPrimaryNoticeIsNullAndThirdPartyNotices"></a>testNoticeRequiredWhenPrimaryNoticeIsNullAndThirdPartyNotices</td>
-<td>0.002 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesWithRequiredThirdPartyNotices.testNoticeRequiredWhenPrimaryNoticeIsEmptyAndThirdPartyNotices"></a>testNoticeRequiredWhenPrimaryNoticeIsEmptyAndThirdPartyNotices</td>
@@ -313,7 +313,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestDescriptorOnlyPrimary.testIsOnlyPrimaryWithSubsidaryCopyrightNotice"></a>testIsOnlyPrimaryWithSubsidaryCopyrightNotice</td>
-<td>0.002 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesNoThirdPartyNotices"></a>
+<td>0 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.model.TestDescriptorRequiredNoticesNoThirdPartyNotices"></a>
 <h3>TestDescriptorRequiredNoticesNoThirdPartyNotices</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -337,11 +337,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestNoCopyrightNoticeVerifier.testWithLicenseWithCopyrightNotice"></a>testWithLicenseWithCopyrightNotice</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.model.TestNoCopyrightNoticeVerifier.testWithLicenseNoCopyrightNotice"></a>testWithLicenseNoCopyrightNotice</td>
-<td>0.001 s</td></tr></table></section><br /></section></section>        
</main>
+<td>0 s</td></tr></table></section><br /></section></section>        </main>
       </div>
     </div>
     <hr/>
diff --git a/whisker/apache-whisker-scan/rat-report.html 
b/whisker/apache-whisker-scan/rat-report.html
index 4198c3c9b..e1b2254b3 100644
--- a/whisker/apache-whisker-scan/rat-report.html
+++ b/whisker/apache-whisker-scan/rat-report.html
@@ -118,7 +118,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:05:40+01:00
+Generated at: 2026-03-10T19:12:48+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-scan/team.html 
b/whisker/apache-whisker-scan/team.html
index da5157fa1..e3598287e 100644
--- a/whisker/apache-whisker-scan/team.html
+++ b/whisker/apache-whisker-scan/team.html
@@ -127,12 +127,12 @@
 <th>Name</th>
 <th>Email</th></tr>
 <tr class="b">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/30f9094d5dbe2ce93f1a41afc9615b83.jpg" 
/></figure></td>
 <td><a id="rdonkin"></a>rdonkin</td>
 <td>Robert Burrell Donkin</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
 <tr class="a">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/c8686cad245196c9e392201ad7bb364f.jpg" 
/></figure></td>
 <td><a id="dennisl"></a>dennisl</td>
 <td>Dennis Lundberg</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
diff --git a/whisker/apache-whisker-velocity/licenses.html 
b/whisker/apache-whisker-velocity/licenses.html
index c27e3cd14..f3749f551 100644
--- a/whisker/apache-whisker-velocity/licenses.html
+++ b/whisker/apache-whisker-velocity/licenses.html
@@ -120,7 +120,209 @@
 <h1>Project Licenses</h1><section><a id="Apache_License.2C_Version_2"></a>
 <h2>Apache License, Version 2</h2>
 <p>An OSI approved open source license.</p>
-<p>Can't read the url [https://www.apache.org/licenses/LICENSE-2.0.txt] : Das 
Netzwerk ist nicht erreichbar</p></section></section>        </main>
+<pre>
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      &quot;License&quot; shall mean the terms and conditions for use, 
reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      &quot;Licensor&quot; shall mean the copyright owner or entity authorized 
by
+      the copyright owner that is granting the License.
+
+      &quot;Legal Entity&quot; shall mean the union of the acting entity and 
all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      &quot;control&quot; means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal 
Entity
+      exercising permissions granted by this License.
+
+      &quot;Source&quot; form shall mean the preferred form for making 
modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      &quot;Object&quot; form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      &quot;Work&quot; shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      &quot;Derivative Works&quot; shall mean any work, whether in Source or 
Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      &quot;Contribution&quot; shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, 
&quot;submitted&quot;
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as &quot;Not a 
Contribution.&quot;
+
+      &quot;Contributor&quot; shall mean Licensor and any individual or Legal 
Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets &quot;[]&quot;
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same &quot;printed page&quot; as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+</pre></section></section>        </main>
       </div>
     </div>
     <hr/>
diff --git a/whisker/apache-whisker-velocity/rat-report.html 
b/whisker/apache-whisker-velocity/rat-report.html
index 1bf0cf035..767004aa5 100644
--- a/whisker/apache-whisker-velocity/rat-report.html
+++ b/whisker/apache-whisker-velocity/rat-report.html
@@ -120,7 +120,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:07:06+01:00
+Generated at: 2026-03-10T19:13:30+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-velocity/surefire.html 
b/whisker/apache-whisker-velocity/surefire.html
index 23a4ad5c2..f0a0d56f8 100644
--- a/whisker/apache-whisker-velocity/surefire.html
+++ b/whisker/apache-whisker-velocity/surefire.html
@@ -150,7 +150,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.270 s</td></tr></table><br />
+<td>0.275 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -170,7 +170,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.270 s</td></tr></table><br />
+<td>0.275 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.out.velocity"></a>
 <h3>org.apache.creadur.whisker.out.velocity</h3>
 <table class="table table-striped">
@@ -200,7 +200,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.054 s</td></tr>
+<td>0.058 s</td></tr>
 <tr class="b">
 <td><a 
href="#org.apache.creadur.whisker.out.velocity.TestRenderingHelper"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.out.velocity.TestRenderingHelper">TestRenderingHelper</a></td>
@@ -209,7 +209,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.004 s</td></tr>
+<td>0.003 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.out.velocity.TestNoticeGeneration"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.out.velocity.TestNoticeGeneration">TestNoticeGeneration</a></td>
@@ -218,7 +218,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.201 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.203 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.out.velocity.TestLicenseGenerationSourceURLs"></a>
 <h3>TestLicenseGenerationSourceURLs</h3>
@@ -244,11 +244,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestLicenseGeneration.testThatFooterIsShownWhenThereAreThirdPartyContents"></a>testThatFooterIsShownWhenThereAreThirdPartyContents</td>
-<td>0.008 s</td></tr>
+<td>0.009 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestLicenseGeneration.testPrimaryOrganisationSecondaryLicense"></a>testPrimaryOrganisationSecondaryLicense</td>
-<td>0.009 s</td></tr>
+<td>0.011 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestLicenseGeneration.testIgnorePrimaryOrganisationPrimaryLicense"></a>testIgnorePrimaryOrganisationPrimaryLicense</td>
@@ -256,7 +256,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestLicenseGeneration.testThatWhenThereAreNoThirdPartyContentsFooterIsNotShown"></a>testThatWhenThereAreNoThirdPartyContentsFooterIsNotShown</td>
-<td>0.004 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.out.velocity.TestRenderingHelper"></a>
+<td>0.005 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.out.velocity.TestRenderingHelper"></a>
 <h3>TestRenderingHelper</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -280,7 +280,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestNoticeGeneration.testThatWhenThereAreNoThirdPartyNoticesHeaderIsNotShown"></a>testThatWhenThereAreNoThirdPartyNoticesHeaderIsNotShown</td>
-<td>0.181 s</td></tr>
+<td>0.182 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.out.velocity.TestNoticeGeneration.testThatNoticeOutputIsSkippedWhenThereAreNoNotices"></a>testThatNoticeOutputIsSkippedWhenThereAreNoNotices</td>
diff --git a/whisker/apache-whisker-xml/jira-changes.html 
b/whisker/apache-whisker-xml/jira-changes.html
index 5521f6800..92f42f17b 100644
--- a/whisker/apache-whisker-xml/jira-changes.html
+++ b/whisker/apache-whisker-xml/jira-changes.html
@@ -10,7 +10,7 @@
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1" />
     <meta name="generator" content="Apache Maven Doxia Site Renderer 2.0.0" />
-    <title>Apache Whisker::XML</title>
+    <title>JIRA Report – Apache Whisker::XML</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-2.1.0.min.css" />
     <link rel="stylesheet" href="./css/site.css" />
     <link rel="stylesheet" href="./css/print.css" media="print" />
@@ -36,8 +36,7 @@
       <li><a href="../../">Creadur</a><span class="divider">/</span></li>
       <li><a href="../">Whisker</a><span class="divider">/</span></li>
       <li><a href="index.html">Apache Whisker::XML</a><span 
class="divider">/</span></li>
-
-    <li class="active">Apache Whisker::XML</li>
+    <li class="active">JIRA Report</li>
           </ul>
         </div>
       </header>
@@ -114,7 +113,93 @@
           </div>
         </header>
         <main id="bodyColumn" class="span10">
-        </main>
+<section><a id="JIRA_Report"></a>
+<h1>JIRA Report</h1>
+<table class="table table-striped">
+<tr class="a">
+<th>Key</th>
+<th>Summary</th>
+<th>Status</th>
+<th>Resolution</th>
+<th>By</th></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-28";>WHISKER-28</a></td>
+<td>Check for broken links</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-27";>WHISKER-27</a></td>
+<td>Fix build warning and enforce minimal maven version is 3.0.5</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-26";>WHISKER-26</a></td>
+<td>Update to latest site-plugin and migrate to newer skins as necessary</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-25";>WHISKER-25</a></td>
+<td>Unable to update to latest ASF parent v32 due to dependency change</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>&#160;</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-23";>WHISKER-23</a></td>
+<td>No download page available in maven site</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-22";>WHISKER-22</a></td>
+<td>Whisker - Replace externally loaded fonts Mate SC and Overlock with 
locally hosted ones to comply with privacy regulations</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-20";>WHISKER-20</a></td>
+<td>Integrate update of Jdom in order to fix CVE</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-19";>WHISKER-19</a></td>
+<td>Update commons-io to fix CVE-2021-29425</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-18";>WHISKER-18</a></td>
+<td>Upgrade to log4j2</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-15";>WHISKER-15</a></td>
+<td>Upgrade Apache Commons Collections to v3.2.2</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>Philipp Ottlinger</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-12";>WHISKER-12</a></td>
+<td>Cleanup Build Infrastructure</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>&#160;</td></tr>
+<tr class="a">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-1";>WHISKER-1</a></td>
+<td>enable site reports for whisker</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>&#160;</td></tr>
+<tr class="b">
+<td><a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-29";>WHISKER-29</a></td>
+<td>Migrate Build Scan publication to develocity.apache.org</td>
+<td>Closed</td>
+<td>Fixed</td>
+<td>&#160;</td></tr></table></section>        </main>
       </div>
     </div>
     <hr/>
diff --git a/whisker/apache-whisker-xml/licenses.html 
b/whisker/apache-whisker-xml/licenses.html
index 89d9c9fdf..e81effceb 100644
--- a/whisker/apache-whisker-xml/licenses.html
+++ b/whisker/apache-whisker-xml/licenses.html
@@ -120,7 +120,209 @@
 <h1>Project Licenses</h1><section><a id="Apache_License.2C_Version_2"></a>
 <h2>Apache License, Version 2</h2>
 <p>An OSI approved open source license.</p>
-<p>Can't read the url [https://www.apache.org/licenses/LICENSE-2.0.txt] : 
www.apache.org</p></section></section>        </main>
+<pre>
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      &quot;License&quot; shall mean the terms and conditions for use, 
reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      &quot;Licensor&quot; shall mean the copyright owner or entity authorized 
by
+      the copyright owner that is granting the License.
+
+      &quot;Legal Entity&quot; shall mean the union of the acting entity and 
all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      &quot;control&quot; means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal 
Entity
+      exercising permissions granted by this License.
+
+      &quot;Source&quot; form shall mean the preferred form for making 
modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      &quot;Object&quot; form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      &quot;Work&quot; shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      &quot;Derivative Works&quot; shall mean any work, whether in Source or 
Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      &quot;Contribution&quot; shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, 
&quot;submitted&quot;
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as &quot;Not a 
Contribution.&quot;
+
+      &quot;Contributor&quot; shall mean Licensor and any individual or Legal 
Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets &quot;[]&quot;
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same &quot;printed page&quot; as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+</pre></section></section>        </main>
       </div>
     </div>
     <hr/>
diff --git a/whisker/apache-whisker-xml/rat-report.html 
b/whisker/apache-whisker-xml/rat-report.html
index 5c6afd057..3db5e9d19 100644
--- a/whisker/apache-whisker-xml/rat-report.html
+++ b/whisker/apache-whisker-xml/rat-report.html
@@ -120,7 +120,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:05:48+01:00
+Generated at: 2026-03-10T19:12:58+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------
diff --git a/whisker/apache-whisker-xml/surefire.html 
b/whisker/apache-whisker-xml/surefire.html
index 7452c36cc..e6fcae6b1 100644
--- a/whisker/apache-whisker-xml/surefire.html
+++ b/whisker/apache-whisker-xml/surefire.html
@@ -150,7 +150,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.297 s</td></tr></table><br />
+<td>0.293 s</td></tr></table><br />
 <p>Note: failures are anticipated and checked for with assertions while errors 
are unanticipated.</p><br /></section><section><a id="Package_List"></a>
 <h2>Package List</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><br />
@@ -170,7 +170,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.297 s</td></tr></table><br />
+<td>0.293 s</td></tr></table><br />
 <p>Note: package statistics are not computed recursively, they only sum up all 
of its testsuites numbers.</p><section><a 
id="org.apache.creadur.whisker.fromxml"></a>
 <h3>org.apache.creadur.whisker.fromxml</h3>
 <table class="table table-striped">
@@ -191,7 +191,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.076 s</td></tr>
+<td>0.073 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest">JDomBuilderWithDirectoryTest</a></td>
@@ -200,7 +200,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.034 s</td></tr>
+<td>0.032 s</td></tr>
 <tr class="b">
 <td><a href="#org.apache.creadur.whisker.fromxml.JDomBuilderResourceTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderResourceTest">JDomBuilderResourceTest</a></td>
@@ -209,7 +209,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.002 s</td></tr>
+<td>0.004 s</td></tr>
 <tr class="a">
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderOrganisationTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderOrganisationTest">JDomBuilderOrganisationTest</a></td>
@@ -218,7 +218,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><a href="#org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest">JDomBuilderWorkTest</a></td>
@@ -227,7 +227,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.135 s</td></tr>
+<td>0.134 s</td></tr>
 <tr class="a">
 <td><a href="#org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest">JDomBuilderLicenseTest</a></td>
@@ -236,7 +236,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.004 s</td></tr>
+<td>0.003 s</td></tr>
 <tr class="b">
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest"><img 
src="images/icon_success_sml.gif" /></a></td>
 <td><a 
href="#org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest">JDomBuilderByOrganisationTest</a></td>
@@ -245,7 +245,7 @@ function toggleDisplay(elementId) {
 <td>0</td>
 <td>0</td>
 <td>100%</td>
-<td>0.045 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
+<td>0.047 s</td></tr></table></section><br /></section><section><a 
id="Test_Cases"></a>
 <h2>Test Cases</h2>
 <p>[<a href="#Summary">Summary</a>] [<a href="#Package_List">Package List</a>] 
[<a href="#Test_Cases">Test Cases</a>]</p><section><a 
id="org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest"></a>
 <h3>JDomBuilderWithLicenseTest</h3>
@@ -253,7 +253,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWithOneParameter"></a>testBuildLicenseWithOneParameter</td>
-<td>0.002 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWith3Parameters"></a>testBuildLicenseWith3Parameters</td>
@@ -261,15 +261,15 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testLicenseFromListThrowsMissingIDWhenIDsAreMismatched"></a>testLicenseFromListThrowsMissingIDWhenIDsAreMismatched</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseFromElementWithCopyrightNoticeTrimSpaces"></a>testBuildLicenseFromElementWithCopyrightNoticeTrimSpaces</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWithParametersThrowsExceptionWhenParameterIsDuplicated"></a>testBuildLicenseWithParametersThrowsExceptionWhenParameterIsDuplicated</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testLicenseFromListThrowsMissingIDWhenEmpty"></a>testLicenseFromListThrowsMissingIDWhenEmpty</td>
@@ -277,11 +277,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWith7Parameters"></a>testBuildLicenseWith7Parameters</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testLicenseFromListFindsLicense"></a>testLicenseFromListFindsLicense</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWithParametersIsEmptyWhenNoParameters"></a>testBuildLicenseWithParametersIsEmptyWhenNoParameters</td>
@@ -297,7 +297,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseFromElementWithCopyrightNotice"></a>testBuildLicenseFromElementWithCopyrightNotice</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testWithLicenseBuildWithParameters"></a>testWithLicenseBuildWithParameters</td>
@@ -309,33 +309,33 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildCollectWithLicenses"></a>testBuildCollectWithLicenses</td>
-<td>0.040 s</td></tr>
+<td>0.039 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWith101Parameters"></a>testBuildLicenseWith101Parameters</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithLicenseTest.testBuildLicenseWith11Parameters"></a>testBuildLicenseWith11Parameters</td>
-<td>0.002 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest"></a>
+<td>0 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest"></a>
 <h3>JDomBuilderWithDirectoryTest</h3>
 <table class="table table-striped">
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest.testBuildWithinDirectorySetsDirectoryName"></a>testBuildWithinDirectorySetsDirectoryName</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest.testBuildWithinDirectorySetsLicenses"></a>testBuildWithinDirectorySetsLicenses</td>
-<td>0.006 s</td></tr>
+<td>0.005 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest.testCollectPublicDomainOrgs"></a>testCollectPublicDomainOrgs</td>
-<td>0.023 s</td></tr>
+<td>0.022 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWithDirectoryTest.testBuildWithinDirectorySetsPublicDomain"></a>testBuildWithinDirectorySetsPublicDomain</td>
-<td>0.002 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.fromxml.JDomBuilderResourceTest"></a>
+<td>0.004 s</td></tr></table></section><section><a 
id="org.apache.creadur.whisker.fromxml.JDomBuilderResourceTest"></a>
 <h3>JDomBuilderResourceTest</h3>
 <table class="table table-striped">
 <tr class="a">
@@ -385,11 +385,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testFindPrimaryOrganisationIdWhenSet"></a>testFindPrimaryOrganisationIdWhenSet</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapOrganisationsExpectedToBeImmutable"></a>testMapOrganisationsExpectedToBeImmutable</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapOrganisationsIsEmptyWhenDocumentHasNoOrganisations"></a>testMapOrganisationsIsEmptyWhenDocumentHasNoOrganisations</td>
@@ -397,7 +397,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testBuildPrimaryCopyright"></a>testBuildPrimaryCopyright</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testPrimaryNoticeIsNullWhenThereIsNoNoticeText"></a>testPrimaryNoticeIsNullWhenThereIsNoNoticeText</td>
@@ -405,7 +405,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapNoticesExpectedToBeImmutable"></a>testMapNoticesExpectedToBeImmutable</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapLicensesIsEmptyWhenDocumentHasNoLicenses"></a>testMapLicensesIsEmptyWhenDocumentHasNoLicenses</td>
@@ -417,11 +417,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapNoticesFindsNoticesDefinedInDocument"></a>testMapNoticesFindsNoticesDefinedInDocument</td>
-<td>0.031 s</td></tr>
+<td>0.027 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testThrowsMissingIDExceptionWhenPrimaryLicenseMissing"></a>testThrowsMissingIDExceptionWhenPrimaryLicenseMissing</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testFindPrimaryOrganisationIdReturnsNullWhenOrganisationUnset"></a>testFindPrimaryOrganisationIdReturnsNullWhenOrganisationUnset</td>
@@ -429,11 +429,11 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapOrganisationsFindOrganisationDefinedInDocument"></a>testMapOrganisationsFindOrganisationDefinedInDocument</td>
-<td>0.023 s</td></tr>
+<td>0.020 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testPrimaryCopyright"></a>testPrimaryCopyright</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testCollectDirectoriesThrowsDuplicateElementExceptionWhenDirAttributeDuplicated"></a>testCollectDirectoriesThrowsDuplicateElementExceptionWhenDirAttributeDuplicated</td>
@@ -441,15 +441,15 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapLicensesFindsLicensesDefinedInDocument"></a>testMapLicensesFindsLicensesDefinedInDocument</td>
-<td>0.024 s</td></tr>
+<td>0.025 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testCollectDirectoriesDefinedInDocument"></a>testCollectDirectoriesDefinedInDocument</td>
-<td>0.027 s</td></tr>
+<td>0.029 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testCollectContentsReturneEmptyWhenDocumentHasNoContents"></a>testCollectContentsReturneEmptyWhenDocumentHasNoContents</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testNoPrimaryCopyright"></a>testNoPrimaryCopyright</td>
@@ -457,11 +457,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapNoticesIsEmptyWhenDocumentHasNoNotices"></a>testMapNoticesIsEmptyWhenDocumentHasNoNotices</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testPrimaryNoticeSubstitutesYearInNoticeText"></a>testPrimaryNoticeSubstitutesYearInNoticeText</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderWorkTest.testMapLicensesExpectedToBeImmutable"></a>testMapLicensesExpectedToBeImmutable</td>
@@ -479,7 +479,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest.testLicenseRequiresSourceDefault"></a>testLicenseRequiresSourceDefault</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest.testLicenseBaseText"></a>testLicenseBaseText</td>
@@ -495,7 +495,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest.testLicenseTwoParameters"></a>testLicenseTwoParameters</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderLicenseTest.testLicenseOneParameter"></a>testLicenseOneParameter</td>
@@ -517,7 +517,7 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testOrganisationByIdFindsOrganisationsPresent"></a>testOrganisationByIdFindsOrganisationsPresent</td>
-<td>0.009 s</td></tr>
+<td>0.008 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationCollective3Child"></a>testByOrganisationCollective3Child</td>
@@ -529,7 +529,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationCollective7Child"></a>testByOrganisationCollective7Child</td>
-<td>0.002 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testBuildResourcesFromNoResources"></a>testBuildResourcesFromNoResources</td>
@@ -537,7 +537,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationCollective2Children"></a>testByOrganisationCollective2Children</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testCollectResourcesNumbered1"></a>testCollectResourcesNumbered1</td>
@@ -545,7 +545,7 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testCollectResourcesNumbered2"></a>testCollectResourcesNumbered2</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testCollectResourcesNumbered3"></a>testCollectResourcesNumbered3</td>
@@ -553,11 +553,11 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testCollectResourcesNumbered4"></a>testCollectResourcesNumbered4</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromMapAndElementWith1ChildResources"></a>testByOrganisationBuildsFromMapAndElementWith1ChildResources</td>
-<td>0.001 s</td></tr>
+<td>0.002 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testOrganisationByIdThrowsIllegalArgumentWhenOrganisationsEmpty"></a>testOrganisationByIdThrowsIllegalArgumentWhenOrganisationsEmpty</td>
@@ -569,19 +569,19 @@ function toggleDisplay(elementId) {
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationEmptyCollective"></a>testByOrganisationEmptyCollective</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testOrganisationByIdThrowsIllegalArgumentWhenOrganisationsMissing"></a>testOrganisationByIdThrowsIllegalArgumentWhenOrganisationsMissing</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationCollectiveOneChild"></a>testByOrganisationCollectiveOneChild</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromOrganisationAndElementWith10ChildResources"></a>testByOrganisationBuildsFromOrganisationAndElementWith10ChildResources</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromOrganisationAndElementWith5ChildResources"></a>testByOrganisationBuildsFromOrganisationAndElementWith5ChildResources</td>
@@ -589,11 +589,11 @@ function toggleDisplay(elementId) {
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromMapAndElementWith5ChildResources"></a>testByOrganisationBuildsFromMapAndElementWith5ChildResources</td>
-<td>0 s</td></tr>
+<td>0.001 s</td></tr>
 <tr class="b">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromMapAndElementWith10ChildResources"></a>testByOrganisationBuildsFromMapAndElementWith10ChildResources</td>
-<td>0.001 s</td></tr>
+<td>0 s</td></tr>
 <tr class="a">
 <td><img src="images/icon_success_sml.gif" /></td>
 <td><a 
id="TC_org.apache.creadur.whisker.fromxml.JDomBuilderByOrganisationTest.testByOrganisationBuildsFromOrganisationAndElementWith3ChildResources"></a>testByOrganisationBuildsFromOrganisationAndElementWith3ChildResources</td>
diff --git a/whisker/apache-whisker-xml/team.html 
b/whisker/apache-whisker-xml/team.html
index f8a8e753a..f0c364bc1 100644
--- a/whisker/apache-whisker-xml/team.html
+++ b/whisker/apache-whisker-xml/team.html
@@ -127,12 +127,12 @@
 <th>Name</th>
 <th>Email</th></tr>
 <tr class="b">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/30f9094d5dbe2ce93f1a41afc9615b83.jpg" 
/></figure></td>
 <td><a id="rdonkin"></a>rdonkin</td>
 <td>Robert Burrell Donkin</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
 <tr class="a">
-<td><figure><img src="avatars/00000000000000000000000000000000.jpg" 
/></figure></td>
+<td><figure><img src="avatars/c8686cad245196c9e392201ad7bb364f.jpg" 
/></figure></td>
 <td><a id="dennisl"></a>dennisl</td>
 <td>Dennis Lundberg</td>
 <td><a class="externalLink" 
href="mailto:[email protected]";>[email protected]</a></td></tr>
diff --git a/whisker/changes.html b/whisker/changes.html
index a77236e63..6a4f6b6c2 100644
--- a/whisker/changes.html
+++ b/whisker/changes.html
@@ -156,49 +156,53 @@
 <th>By</th></tr>
 <tr class="b">
 <td><img src="images/add.gif" alt="Add" title="Add" /></td>
-<td>Migrate to new doxia 2.x tech stack and improve webpage and add missing 
Maven documentation and more project reports. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-26";>WHISKER-26</a>.</td>
+<td>Adapt download page to comply with current ASF rules, checksums are not 
downloaded via CDN, but downloads.apache.org directly. Fixes <a 
class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-32";>WHISKER-32</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
 <tr class="a">
 <td><img src="images/add.gif" alt="Add" title="Add" /></td>
-<td>Add a download page to the current project webpage. As v0.1 is not 
officially available anymore only the current SNAPSHOT can be downloaded. Fixes 
<a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-23";>WHISKER-23</a>.</td>
+<td>Migrate to new doxia 2.x tech stack and improve webpage and add missing 
Maven documentation and more project reports. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-26";>WHISKER-26</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
 <tr class="b">
+<td><img src="images/add.gif" alt="Add" title="Add" /></td>
+<td>Add a download page to the current project webpage. As v0.1 is not 
officially available anymore only the current SNAPSHOT can be downloaded. Fixes 
<a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-23";>WHISKER-23</a>.</td>
+<td><a href="team.html#pottlinger">pottlinger</a></td></tr>
+<tr class="a">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Migrate to log4j2. Minimal Maven set to &gt;=3.1.0 to benefit from slf4j 
log bridging to log errors to console by default as before. Fixes <a 
class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-18";>WHISKER-18</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/add.gif" alt="Add" title="Add" /></td>
 <td>Integrate Creadur Whisker into the updated develocity.apache.org instance. 
Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-29";>WHISKER-29</a>. Thanks 
to clayjohnson.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Fix build warning and ensure Maven &gt;=3.0.5 is used to build the 
project. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-27";>WHISKER-27</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Update Jdom to 2.0.6.1 in order to fix CVE CVE-2021-33813. Fixes <a 
class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-20";>WHISKER-20</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Upgrade Apache commons-io to fix CVE-2021-29425. Fixes <a 
class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-19";>WHISKER-19</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Upgrade Apache Commons Collections to v3.2.2 to circumvent CVE-2015-8103. 
Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-15";>WHISKER-15</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
 <td>Fixes error during site generation with Java8 and maven plugin version 
3.3. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-13";>WHISKER-13</a>.</td>
 <td><a href="team.html#dennisl">dennisl</a></td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/add.gif" alt="Add" title="Add" /></td>
 <td>Change artifactId/goalPrefix of Maven plugin to comply with expected 
apache-whisker-maven-plugin. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-14";>WHISKER-14</a>.</td>
 <td><a href="team.html#dennisl">dennisl</a></td></tr>
-<tr class="b">
+<tr class="a">
 <td><img src="images/add.gif" alt="Add" title="Add" /></td>
 <td>Update webpage to not load fonts from GoogleFonts and include privacy link 
in main menu. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-22";>WHISKER-22</a>.</td>
 <td><a href="team.html#pottlinger">pottlinger</a></td></tr>
-<tr class="a">
+<tr class="b">
 <td><img src="images/update.gif" alt="Update" title="Update" /></td>
 <td>TODO: before releasing WHISKER-xx: collect all dependabot updates for 
release 0.2. Fixes <a class="externalLink" 
href="https://issues.apache.org/jira/browse/WHISKER-xx";>WHISKER-xx</a>. Thanks 
to dependabot.</td>
 <td><a 
href="team.html#pottlinger">pottlinger</a></td></tr></table></section><section><a
 id="a0.1"></a>
diff --git a/whisker/rat-report.html b/whisker/rat-report.html
index bb42a78e0..273a45cf0 100644
--- a/whisker/rat-report.html
+++ b/whisker/rat-report.html
@@ -139,7 +139,7 @@
 <pre>*****************************************************
 Summary
 *****************************************************
-Generated at: 2026-03-10T19:05:14+01:00
+Generated at: 2026-03-10T19:12:24+01:00
     by Apache Creadur RAT::Core 0.17 (Apache Software Foundation)
 
 -----------------------------------------------------

Reply via email to