Modified:
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Caverphone.html
==============================================================================
---
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Caverphone.html
(original)
+++
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Caverphone.html
Mon Jul 15 22:37:19 2024
@@ -79,7 +79,7 @@
<span class="source-line-no">066</span><span id="line-66"> if (!(obj
instanceof String)) {</span>
<span class="source-line-no">067</span><span id="line-67"> throw
new EncoderException("Parameter supplied to Caverphone encode is not of type
java.lang.String");</span>
<span class="source-line-no">068</span><span id="line-68"> }</span>
-<span class="source-line-no">069</span><span id="line-69"> return
this.caverphone((String) obj);</span>
+<span class="source-line-no">069</span><span id="line-69"> return
caverphone((String) obj);</span>
<span class="source-line-no">070</span><span id="line-70"> }</span>
<span class="source-line-no">071</span><span id="line-71"></span>
<span class="source-line-no">072</span><span id="line-72"> /**</span>
@@ -91,7 +91,7 @@
<span class="source-line-no">078</span><span id="line-78"> */</span>
<span class="source-line-no">079</span><span id="line-79"> @Override</span>
<span class="source-line-no">080</span><span id="line-80"> public String
encode(final String str) {</span>
-<span class="source-line-no">081</span><span id="line-81"> return
this.caverphone(str);</span>
+<span class="source-line-no">081</span><span id="line-81"> return
caverphone(str);</span>
<span class="source-line-no">082</span><span id="line-82"> }</span>
<span class="source-line-no">083</span><span id="line-83"></span>
<span class="source-line-no">084</span><span id="line-84"> /**</span>
@@ -104,7 +104,7 @@
<span class="source-line-no">091</span><span id="line-91"> * @return
{@code true} if the caverphones of these strings are identical, {@code false}
otherwise.</span>
<span class="source-line-no">092</span><span id="line-92"> */</span>
<span class="source-line-no">093</span><span id="line-93"> public boolean
isCaverphoneEqual(final String str1, final String str2) {</span>
-<span class="source-line-no">094</span><span id="line-94"> return
this.caverphone(str1).equals(this.caverphone(str2));</span>
+<span class="source-line-no">094</span><span id="line-94"> return
caverphone(str1).equals(caverphone(str2));</span>
<span class="source-line-no">095</span><span id="line-95"> }</span>
<span class="source-line-no">096</span><span id="line-96"></span>
<span class="source-line-no">097</span><span id="line-97">}</span>
Modified:
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Metaphone.html
==============================================================================
---
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Metaphone.html
(original)
+++
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Metaphone.html
Mon Jul 15 22:37:19 2024
@@ -226,188 +226,183 @@
<span class="source-line-no">213</span><span id="line-213"> final int
wdsz = local.length();</span>
<span class="source-line-no">214</span><span id="line-214"> int n =
0;</span>
<span class="source-line-no">215</span><span id="line-215"></span>
-<span class="source-line-no">216</span><span id="line-216"> while
(code.length() < this.getMaxCodeLen() && n < wdsz) { // max code
size of 4 works well</span>
+<span class="source-line-no">216</span><span id="line-216"> while
(code.length() < getMaxCodeLen() && n < wdsz) { // max code size
of 4 works well</span>
<span class="source-line-no">217</span><span id="line-217"> final
char symb = local.charAt(n);</span>
<span class="source-line-no">218</span><span id="line-218"> //
remove duplicate letters except C</span>
<span class="source-line-no">219</span><span id="line-219"> if
(symb != 'C' && isPreviousChar(local, n, symb)) {</span>
-<span class="source-line-no">220</span><span id="line-220">
n++;</span>
-<span class="source-line-no">221</span><span id="line-221"> } else
{ // not dup</span>
-<span class="source-line-no">222</span><span id="line-222">
switch (symb) {</span>
-<span class="source-line-no">223</span><span id="line-223">
case 'A':</span>
-<span class="source-line-no">224</span><span id="line-224">
case 'E':</span>
-<span class="source-line-no">225</span><span id="line-225">
case 'I':</span>
-<span class="source-line-no">226</span><span id="line-226">
case 'O':</span>
-<span class="source-line-no">227</span><span id="line-227">
case 'U':</span>
-<span class="source-line-no">228</span><span id="line-228">
if (n == 0) {</span>
-<span class="source-line-no">229</span><span id="line-229">
code.append(symb);</span>
-<span class="source-line-no">230</span><span id="line-230">
}</span>
-<span class="source-line-no">231</span><span id="line-231">
break; // only use vowel if leading char</span>
-<span class="source-line-no">232</span><span id="line-232">
case 'B':</span>
-<span class="source-line-no">233</span><span id="line-233">
if (isPreviousChar(local, n, 'M') && isLastChar(wdsz, n)) { // B is
silent if word ends in MB</span>
-<span class="source-line-no">234</span><span id="line-234">
break;</span>
-<span class="source-line-no">235</span><span id="line-235">
}</span>
-<span class="source-line-no">236</span><span id="line-236">
code.append(symb);</span>
-<span class="source-line-no">237</span><span id="line-237">
break;</span>
-<span class="source-line-no">238</span><span id="line-238">
case 'C': // lots of C special cases</span>
-<span class="source-line-no">239</span><span id="line-239">
/* discard if SCI, SCE or SCY */</span>
-<span class="source-line-no">240</span><span id="line-240">
if (isPreviousChar(local, n, 'S') && !isLastChar(wdsz, n) &&
FRONTV.indexOf(local.charAt(n + 1)) >= 0) {</span>
-<span class="source-line-no">241</span><span id="line-241">
break;</span>
-<span class="source-line-no">242</span><span id="line-242">
}</span>
-<span class="source-line-no">243</span><span id="line-243">
if (regionMatch(local, n, "CIA")) { // "CIA" -> X</span>
-<span class="source-line-no">244</span><span id="line-244">
code.append('X');</span>
-<span class="source-line-no">245</span><span id="line-245">
break;</span>
-<span class="source-line-no">246</span><span id="line-246">
}</span>
-<span class="source-line-no">247</span><span id="line-247">
if (!isLastChar(wdsz, n) && FRONTV.indexOf(local.charAt(n + 1)) >=
0) {</span>
-<span class="source-line-no">248</span><span id="line-248">
code.append('S');</span>
-<span class="source-line-no">249</span><span id="line-249">
break; // CI,CE,CY -> S</span>
-<span class="source-line-no">250</span><span id="line-250">
}</span>
-<span class="source-line-no">251</span><span id="line-251">
if (isPreviousChar(local, n, 'S') && isNextChar(local, n, 'H')) { //
SCH->sk</span>
-<span class="source-line-no">252</span><span id="line-252">
code.append('K');</span>
-<span class="source-line-no">253</span><span id="line-253">
break;</span>
-<span class="source-line-no">254</span><span id="line-254">
}</span>
-<span class="source-line-no">255</span><span id="line-255">
if (isNextChar(local, n, 'H')) { // detect CH</span>
-<span class="source-line-no">256</span><span id="line-256">
if (n == 0 && wdsz >= 3 && isVowel(local, 2)) { // CH
consonant -> K consonant</span>
-<span class="source-line-no">257</span><span id="line-257">
code.append('K');</span>
-<span class="source-line-no">258</span><span id="line-258">
} else {</span>
-<span class="source-line-no">259</span><span id="line-259">
code.append('X'); // CHvowel -> X</span>
-<span class="source-line-no">260</span><span id="line-260">
}</span>
-<span class="source-line-no">261</span><span id="line-261">
} else {</span>
-<span class="source-line-no">262</span><span id="line-262">
code.append('K');</span>
-<span class="source-line-no">263</span><span id="line-263">
}</span>
-<span class="source-line-no">264</span><span id="line-264">
break;</span>
-<span class="source-line-no">265</span><span id="line-265">
case 'D':</span>
-<span class="source-line-no">266</span><span id="line-266">
if (!isLastChar(wdsz, n + 1) && isNextChar(local, n, 'G') &&
FRONTV.indexOf(local.charAt(n + 2)) >= 0) { // DGE DGI DGY -> J</span>
-<span class="source-line-no">267</span><span id="line-267">
code.append('J');</span>
-<span class="source-line-no">268</span><span id="line-268">
n += 2;</span>
-<span class="source-line-no">269</span><span id="line-269">
} else {</span>
-<span class="source-line-no">270</span><span id="line-270">
code.append('T');</span>
+<span class="source-line-no">220</span><span id="line-220"> } else
{ // not dup</span>
+<span class="source-line-no">221</span><span id="line-221">
switch (symb) {</span>
+<span class="source-line-no">222</span><span id="line-222">
case 'A':</span>
+<span class="source-line-no">223</span><span id="line-223">
case 'E':</span>
+<span class="source-line-no">224</span><span id="line-224">
case 'I':</span>
+<span class="source-line-no">225</span><span id="line-225">
case 'O':</span>
+<span class="source-line-no">226</span><span id="line-226">
case 'U':</span>
+<span class="source-line-no">227</span><span id="line-227">
if (n == 0) {</span>
+<span class="source-line-no">228</span><span id="line-228">
code.append(symb);</span>
+<span class="source-line-no">229</span><span id="line-229">
}</span>
+<span class="source-line-no">230</span><span id="line-230">
break; // only use vowel if leading char</span>
+<span class="source-line-no">231</span><span id="line-231">
case 'B':</span>
+<span class="source-line-no">232</span><span id="line-232">
if (isPreviousChar(local, n, 'M') && isLastChar(wdsz, n)) { // B is
silent if word ends in MB</span>
+<span class="source-line-no">233</span><span id="line-233">
break;</span>
+<span class="source-line-no">234</span><span id="line-234">
}</span>
+<span class="source-line-no">235</span><span id="line-235">
code.append(symb);</span>
+<span class="source-line-no">236</span><span id="line-236">
break;</span>
+<span class="source-line-no">237</span><span id="line-237">
case 'C': // lots of C special cases</span>
+<span class="source-line-no">238</span><span id="line-238">
/* discard if SCI, SCE or SCY */</span>
+<span class="source-line-no">239</span><span id="line-239">
if (isPreviousChar(local, n, 'S') && !isLastChar(wdsz, n) &&
FRONTV.indexOf(local.charAt(n + 1)) >= 0) {</span>
+<span class="source-line-no">240</span><span id="line-240">
break;</span>
+<span class="source-line-no">241</span><span id="line-241">
}</span>
+<span class="source-line-no">242</span><span id="line-242">
if (regionMatch(local, n, "CIA")) { // "CIA" -> X</span>
+<span class="source-line-no">243</span><span id="line-243">
code.append('X');</span>
+<span class="source-line-no">244</span><span id="line-244">
break;</span>
+<span class="source-line-no">245</span><span id="line-245">
}</span>
+<span class="source-line-no">246</span><span id="line-246">
if (!isLastChar(wdsz, n) && FRONTV.indexOf(local.charAt(n + 1)) >=
0) {</span>
+<span class="source-line-no">247</span><span id="line-247">
code.append('S');</span>
+<span class="source-line-no">248</span><span id="line-248">
break; // CI,CE,CY -> S</span>
+<span class="source-line-no">249</span><span id="line-249">
}</span>
+<span class="source-line-no">250</span><span id="line-250">
if (isPreviousChar(local, n, 'S') && isNextChar(local, n, 'H')) { //
SCH->sk</span>
+<span class="source-line-no">251</span><span id="line-251">
code.append('K');</span>
+<span class="source-line-no">252</span><span id="line-252">
break;</span>
+<span class="source-line-no">253</span><span id="line-253">
}</span>
+<span class="source-line-no">254</span><span id="line-254">
if (!isNextChar(local, n, 'H') || (n == 0 && wdsz >= 3 &&
isVowel(local, 2))) { // CH consonant -> K consonant</span>
+<span class="source-line-no">255</span><span id="line-255">
code.append('K');</span>
+<span class="source-line-no">256</span><span id="line-256">
} else {</span>
+<span class="source-line-no">257</span><span id="line-257">
code.append('X'); // CHvowel -> X</span>
+<span class="source-line-no">258</span><span id="line-258">
}</span>
+<span class="source-line-no">259</span><span id="line-259">
break;</span>
+<span class="source-line-no">260</span><span id="line-260">
case 'D':</span>
+<span class="source-line-no">261</span><span id="line-261">
if (!isLastChar(wdsz, n + 1) && isNextChar(local, n, 'G') &&
FRONTV.indexOf(local.charAt(n + 2)) >= 0) { // DGE DGI DGY -> J</span>
+<span class="source-line-no">262</span><span id="line-262">
code.append('J');</span>
+<span class="source-line-no">263</span><span id="line-263">
n += 2;</span>
+<span class="source-line-no">264</span><span id="line-264">
} else {</span>
+<span class="source-line-no">265</span><span id="line-265">
code.append('T');</span>
+<span class="source-line-no">266</span><span id="line-266">
}</span>
+<span class="source-line-no">267</span><span id="line-267">
break;</span>
+<span class="source-line-no">268</span><span id="line-268">
case 'G': // GH silent at end or before consonant</span>
+<span class="source-line-no">269</span><span id="line-269">
if (isLastChar(wdsz, n + 1) && isNextChar(local, n, 'H')) {</span>
+<span class="source-line-no">270</span><span id="line-270">
break;</span>
<span class="source-line-no">271</span><span id="line-271">
}</span>
-<span class="source-line-no">272</span><span id="line-272">
break;</span>
-<span class="source-line-no">273</span><span id="line-273">
case 'G': // GH silent at end or before consonant</span>
-<span class="source-line-no">274</span><span id="line-274">
if (isLastChar(wdsz, n + 1) && isNextChar(local, n, 'H')) {</span>
-<span class="source-line-no">275</span><span id="line-275">
break;</span>
-<span class="source-line-no">276</span><span id="line-276">
}</span>
-<span class="source-line-no">277</span><span id="line-277">
if (!isLastChar(wdsz, n + 1) && isNextChar(local, n, 'H') &&
!isVowel(local, n + 2)) {</span>
-<span class="source-line-no">278</span><span id="line-278">
break;</span>
-<span class="source-line-no">279</span><span id="line-279">
}</span>
-<span class="source-line-no">280</span><span id="line-280">
if (n > 0 && (regionMatch(local, n, "GN") || regionMatch(local, n,
"GNED"))) {</span>
-<span class="source-line-no">281</span><span id="line-281">
break; // silent G</span>
-<span class="source-line-no">282</span><span id="line-282">
}</span>
-<span class="source-line-no">283</span><span id="line-283">
// NOTE: Given that duplicated chars are removed, I don't see how this can ever
be true</span>
-<span class="source-line-no">284</span><span id="line-284">
hard = isPreviousChar(local, n, 'G');</span>
-<span class="source-line-no">285</span><span id="line-285">
if (!isLastChar(wdsz, n) && FRONTV.indexOf(local.charAt(n + 1)) >= 0
&& !hard) {</span>
-<span class="source-line-no">286</span><span id="line-286">
code.append('J');</span>
-<span class="source-line-no">287</span><span id="line-287">
} else {</span>
-<span class="source-line-no">288</span><span id="line-288">
code.append('K');</span>
+<span class="source-line-no">272</span><span id="line-272">
if (!isLastChar(wdsz, n + 1) && isNextChar(local, n, 'H') &&
!isVowel(local, n + 2)) {</span>
+<span class="source-line-no">273</span><span id="line-273">
break;</span>
+<span class="source-line-no">274</span><span id="line-274">
}</span>
+<span class="source-line-no">275</span><span id="line-275">
if (n > 0 && (regionMatch(local, n, "GN") || regionMatch(local, n,
"GNED"))) {</span>
+<span class="source-line-no">276</span><span id="line-276">
break; // silent G</span>
+<span class="source-line-no">277</span><span id="line-277">
}</span>
+<span class="source-line-no">278</span><span id="line-278">
// NOTE: Given that duplicated chars are removed, I don't see how this can ever
be true</span>
+<span class="source-line-no">279</span><span id="line-279">
hard = isPreviousChar(local, n, 'G');</span>
+<span class="source-line-no">280</span><span id="line-280">
if (!isLastChar(wdsz, n) && FRONTV.indexOf(local.charAt(n + 1)) >= 0
&& !hard) {</span>
+<span class="source-line-no">281</span><span id="line-281">
code.append('J');</span>
+<span class="source-line-no">282</span><span id="line-282">
} else {</span>
+<span class="source-line-no">283</span><span id="line-283">
code.append('K');</span>
+<span class="source-line-no">284</span><span id="line-284">
}</span>
+<span class="source-line-no">285</span><span id="line-285">
break;</span>
+<span class="source-line-no">286</span><span id="line-286">
case 'H':</span>
+<span class="source-line-no">287</span><span id="line-287">
if (isLastChar(wdsz, n)) {</span>
+<span class="source-line-no">288</span><span id="line-288">
break; // terminal H</span>
<span class="source-line-no">289</span><span id="line-289">
}</span>
-<span class="source-line-no">290</span><span id="line-290">
break;</span>
-<span class="source-line-no">291</span><span id="line-291">
case 'H':</span>
-<span class="source-line-no">292</span><span id="line-292">
if (isLastChar(wdsz, n)) {</span>
-<span class="source-line-no">293</span><span id="line-293">
break; // terminal H</span>
-<span class="source-line-no">294</span><span id="line-294">
}</span>
-<span class="source-line-no">295</span><span id="line-295">
if (n > 0 && VARSON.indexOf(local.charAt(n - 1)) >= 0) {</span>
-<span class="source-line-no">296</span><span id="line-296">
break;</span>
-<span class="source-line-no">297</span><span id="line-297">
}</span>
-<span class="source-line-no">298</span><span id="line-298">
if (isVowel(local, n + 1)) {</span>
-<span class="source-line-no">299</span><span id="line-299">
code.append('H'); // Hvowel</span>
-<span class="source-line-no">300</span><span id="line-300">
}</span>
-<span class="source-line-no">301</span><span id="line-301">
break;</span>
-<span class="source-line-no">302</span><span id="line-302">
case 'F':</span>
-<span class="source-line-no">303</span><span id="line-303">
case 'J':</span>
-<span class="source-line-no">304</span><span id="line-304">
case 'L':</span>
-<span class="source-line-no">305</span><span id="line-305">
case 'M':</span>
-<span class="source-line-no">306</span><span id="line-306">
case 'N':</span>
-<span class="source-line-no">307</span><span id="line-307">
case 'R':</span>
-<span class="source-line-no">308</span><span id="line-308">
code.append(symb);</span>
-<span class="source-line-no">309</span><span id="line-309">
break;</span>
-<span class="source-line-no">310</span><span id="line-310">
case 'K':</span>
-<span class="source-line-no">311</span><span id="line-311">
if (n > 0) { // not initial</span>
-<span class="source-line-no">312</span><span id="line-312">
if (!isPreviousChar(local, n, 'C')) {</span>
-<span class="source-line-no">313</span><span id="line-313">
code.append(symb);</span>
-<span class="source-line-no">314</span><span id="line-314">
}</span>
-<span class="source-line-no">315</span><span id="line-315">
} else {</span>
-<span class="source-line-no">316</span><span id="line-316">
code.append(symb); // initial K</span>
-<span class="source-line-no">317</span><span id="line-317">
}</span>
-<span class="source-line-no">318</span><span id="line-318">
break;</span>
-<span class="source-line-no">319</span><span id="line-319">
case 'P':</span>
-<span class="source-line-no">320</span><span id="line-320">
if (isNextChar(local, n, 'H')) {</span>
-<span class="source-line-no">321</span><span id="line-321">
// PH -> F</span>
-<span class="source-line-no">322</span><span id="line-322">
code.append('F');</span>
-<span class="source-line-no">323</span><span id="line-323">
} else {</span>
-<span class="source-line-no">324</span><span id="line-324">
code.append(symb);</span>
-<span class="source-line-no">325</span><span id="line-325">
}</span>
-<span class="source-line-no">326</span><span id="line-326">
break;</span>
-<span class="source-line-no">327</span><span id="line-327">
case 'Q':</span>
-<span class="source-line-no">328</span><span id="line-328">
code.append('K');</span>
-<span class="source-line-no">329</span><span id="line-329">
break;</span>
-<span class="source-line-no">330</span><span id="line-330">
case 'S':</span>
-<span class="source-line-no">331</span><span id="line-331">
if (regionMatch(local, n, "SH") || regionMatch(local, n, "SIO") ||
regionMatch(local, n, "SIA")) {</span>
-<span class="source-line-no">332</span><span id="line-332">
code.append('X');</span>
-<span class="source-line-no">333</span><span id="line-333">
} else {</span>
-<span class="source-line-no">334</span><span id="line-334">
code.append('S');</span>
-<span class="source-line-no">335</span><span id="line-335">
}</span>
-<span class="source-line-no">336</span><span id="line-336">
break;</span>
-<span class="source-line-no">337</span><span id="line-337">
case 'T':</span>
-<span class="source-line-no">338</span><span id="line-338">
if (regionMatch(local, n, "TIA") || regionMatch(local, n, "TIO")) {</span>
-<span class="source-line-no">339</span><span id="line-339">
code.append('X');</span>
-<span class="source-line-no">340</span><span id="line-340">
break;</span>
-<span class="source-line-no">341</span><span id="line-341">
}</span>
-<span class="source-line-no">342</span><span id="line-342">
if (regionMatch(local, n, "TCH")) {</span>
-<span class="source-line-no">343</span><span id="line-343">
// Silent if in "TCH"</span>
-<span class="source-line-no">344</span><span id="line-344">
break;</span>
-<span class="source-line-no">345</span><span id="line-345">
}</span>
-<span class="source-line-no">346</span><span id="line-346">
// substitute numeral 0 for TH (resembles theta after all)</span>
-<span class="source-line-no">347</span><span id="line-347">
if (regionMatch(local, n, "TH")) {</span>
-<span class="source-line-no">348</span><span id="line-348">
code.append('0');</span>
-<span class="source-line-no">349</span><span id="line-349">
} else {</span>
-<span class="source-line-no">350</span><span id="line-350">
code.append('T');</span>
-<span class="source-line-no">351</span><span id="line-351">
}</span>
-<span class="source-line-no">352</span><span id="line-352">
break;</span>
-<span class="source-line-no">353</span><span id="line-353">
case 'V':</span>
-<span class="source-line-no">354</span><span id="line-354">
code.append('F');</span>
-<span class="source-line-no">355</span><span id="line-355">
break;</span>
-<span class="source-line-no">356</span><span id="line-356">
case 'W':</span>
-<span class="source-line-no">357</span><span id="line-357">
case 'Y': // silent if not followed by vowel</span>
-<span class="source-line-no">358</span><span id="line-358">
if (!isLastChar(wdsz, n) && isVowel(local, n + 1)) {</span>
-<span class="source-line-no">359</span><span id="line-359">
code.append(symb);</span>
-<span class="source-line-no">360</span><span id="line-360">
}</span>
-<span class="source-line-no">361</span><span id="line-361">
break;</span>
-<span class="source-line-no">362</span><span id="line-362">
case 'X':</span>
-<span class="source-line-no">363</span><span id="line-363">
code.append('K');</span>
-<span class="source-line-no">364</span><span id="line-364">
code.append('S');</span>
-<span class="source-line-no">365</span><span id="line-365">
break;</span>
-<span class="source-line-no">366</span><span id="line-366">
case 'Z':</span>
-<span class="source-line-no">367</span><span id="line-367">
code.append('S');</span>
-<span class="source-line-no">368</span><span id="line-368">
break;</span>
-<span class="source-line-no">369</span><span id="line-369">
default:</span>
-<span class="source-line-no">370</span><span id="line-370">
// do nothing</span>
-<span class="source-line-no">371</span><span id="line-371">
break;</span>
-<span class="source-line-no">372</span><span id="line-372"> }
// end switch</span>
-<span class="source-line-no">373</span><span id="line-373">
n++;</span>
-<span class="source-line-no">374</span><span id="line-374"> } //
end else from symb != 'C'</span>
-<span class="source-line-no">375</span><span id="line-375"> if
(code.length() > this.getMaxCodeLen()) {</span>
-<span class="source-line-no">376</span><span id="line-376">
code.setLength(this.getMaxCodeLen());</span>
-<span class="source-line-no">377</span><span id="line-377"> }</span>
-<span class="source-line-no">378</span><span id="line-378"> }</span>
-<span class="source-line-no">379</span><span id="line-379"> return
code.toString();</span>
-<span class="source-line-no">380</span><span id="line-380"> }</span>
-<span class="source-line-no">381</span><span id="line-381"></span>
-<span class="source-line-no">382</span><span id="line-382"> private boolean
regionMatch(final StringBuilder string, final int index, final String test)
{</span>
-<span class="source-line-no">383</span><span id="line-383"> boolean
matches = false;</span>
-<span class="source-line-no">384</span><span id="line-384"> if (index
>= 0 && index + test.length() - 1 < string.length()) {</span>
-<span class="source-line-no">385</span><span id="line-385"> final
String substring = string.substring(index, index + test.length());</span>
-<span class="source-line-no">386</span><span id="line-386"> matches
= substring.equals(test);</span>
-<span class="source-line-no">387</span><span id="line-387"> }</span>
-<span class="source-line-no">388</span><span id="line-388"> return
matches;</span>
-<span class="source-line-no">389</span><span id="line-389"> }</span>
-<span class="source-line-no">390</span><span id="line-390"></span>
-<span class="source-line-no">391</span><span id="line-391"> /**</span>
-<span class="source-line-no">392</span><span id="line-392"> * Sets the
maxCodeLen.</span>
-<span class="source-line-no">393</span><span id="line-393"> * @param
maxCodeLen The maxCodeLen to set</span>
-<span class="source-line-no">394</span><span id="line-394"> */</span>
-<span class="source-line-no">395</span><span id="line-395"> public void
setMaxCodeLen(final int maxCodeLen) { this.maxCodeLen = maxCodeLen; }</span>
-<span class="source-line-no">396</span><span id="line-396"></span>
-<span class="source-line-no">397</span><span id="line-397">}</span>
+<span class="source-line-no">290</span><span id="line-290">
if (n > 0 && VARSON.indexOf(local.charAt(n - 1)) >= 0) {</span>
+<span class="source-line-no">291</span><span id="line-291">
break;</span>
+<span class="source-line-no">292</span><span id="line-292">
}</span>
+<span class="source-line-no">293</span><span id="line-293">
if (isVowel(local, n + 1)) {</span>
+<span class="source-line-no">294</span><span id="line-294">
code.append('H'); // Hvowel</span>
+<span class="source-line-no">295</span><span id="line-295">
}</span>
+<span class="source-line-no">296</span><span id="line-296">
break;</span>
+<span class="source-line-no">297</span><span id="line-297">
case 'F':</span>
+<span class="source-line-no">298</span><span id="line-298">
case 'J':</span>
+<span class="source-line-no">299</span><span id="line-299">
case 'L':</span>
+<span class="source-line-no">300</span><span id="line-300">
case 'M':</span>
+<span class="source-line-no">301</span><span id="line-301">
case 'N':</span>
+<span class="source-line-no">302</span><span id="line-302">
case 'R':</span>
+<span class="source-line-no">303</span><span id="line-303">
code.append(symb);</span>
+<span class="source-line-no">304</span><span id="line-304">
break;</span>
+<span class="source-line-no">305</span><span id="line-305">
case 'K':</span>
+<span class="source-line-no">306</span><span id="line-306">
if (n > 0) { // not initial</span>
+<span class="source-line-no">307</span><span id="line-307">
if (!isPreviousChar(local, n, 'C')) {</span>
+<span class="source-line-no">308</span><span id="line-308">
code.append(symb);</span>
+<span class="source-line-no">309</span><span id="line-309">
}</span>
+<span class="source-line-no">310</span><span id="line-310">
} else {</span>
+<span class="source-line-no">311</span><span id="line-311">
code.append(symb); // initial K</span>
+<span class="source-line-no">312</span><span id="line-312">
}</span>
+<span class="source-line-no">313</span><span id="line-313">
break;</span>
+<span class="source-line-no">314</span><span id="line-314">
case 'P':</span>
+<span class="source-line-no">315</span><span id="line-315">
if (isNextChar(local, n, 'H')) {</span>
+<span class="source-line-no">316</span><span id="line-316">
// PH -> F</span>
+<span class="source-line-no">317</span><span id="line-317">
code.append('F');</span>
+<span class="source-line-no">318</span><span id="line-318">
} else {</span>
+<span class="source-line-no">319</span><span id="line-319">
code.append(symb);</span>
+<span class="source-line-no">320</span><span id="line-320">
}</span>
+<span class="source-line-no">321</span><span id="line-321">
break;</span>
+<span class="source-line-no">322</span><span id="line-322">
case 'Q':</span>
+<span class="source-line-no">323</span><span id="line-323">
code.append('K');</span>
+<span class="source-line-no">324</span><span id="line-324">
break;</span>
+<span class="source-line-no">325</span><span id="line-325">
case 'S':</span>
+<span class="source-line-no">326</span><span id="line-326">
if (regionMatch(local, n, "SH") || regionMatch(local, n, "SIO") ||
regionMatch(local, n, "SIA")) {</span>
+<span class="source-line-no">327</span><span id="line-327">
code.append('X');</span>
+<span class="source-line-no">328</span><span id="line-328">
} else {</span>
+<span class="source-line-no">329</span><span id="line-329">
code.append('S');</span>
+<span class="source-line-no">330</span><span id="line-330">
}</span>
+<span class="source-line-no">331</span><span id="line-331">
break;</span>
+<span class="source-line-no">332</span><span id="line-332">
case 'T':</span>
+<span class="source-line-no">333</span><span id="line-333">
if (regionMatch(local, n, "TIA") || regionMatch(local, n, "TIO")) {</span>
+<span class="source-line-no">334</span><span id="line-334">
code.append('X');</span>
+<span class="source-line-no">335</span><span id="line-335">
break;</span>
+<span class="source-line-no">336</span><span id="line-336">
}</span>
+<span class="source-line-no">337</span><span id="line-337">
if (regionMatch(local, n, "TCH")) {</span>
+<span class="source-line-no">338</span><span id="line-338">
// Silent if in "TCH"</span>
+<span class="source-line-no">339</span><span id="line-339">
break;</span>
+<span class="source-line-no">340</span><span id="line-340">
}</span>
+<span class="source-line-no">341</span><span id="line-341">
// substitute numeral 0 for TH (resembles theta after all)</span>
+<span class="source-line-no">342</span><span id="line-342">
if (regionMatch(local, n, "TH")) {</span>
+<span class="source-line-no">343</span><span id="line-343">
code.append('0');</span>
+<span class="source-line-no">344</span><span id="line-344">
} else {</span>
+<span class="source-line-no">345</span><span id="line-345">
code.append('T');</span>
+<span class="source-line-no">346</span><span id="line-346">
}</span>
+<span class="source-line-no">347</span><span id="line-347">
break;</span>
+<span class="source-line-no">348</span><span id="line-348">
case 'V':</span>
+<span class="source-line-no">349</span><span id="line-349">
code.append('F');</span>
+<span class="source-line-no">350</span><span id="line-350">
break;</span>
+<span class="source-line-no">351</span><span id="line-351">
case 'W':</span>
+<span class="source-line-no">352</span><span id="line-352">
case 'Y': // silent if not followed by vowel</span>
+<span class="source-line-no">353</span><span id="line-353">
if (!isLastChar(wdsz, n) && isVowel(local, n + 1)) {</span>
+<span class="source-line-no">354</span><span id="line-354">
code.append(symb);</span>
+<span class="source-line-no">355</span><span id="line-355">
}</span>
+<span class="source-line-no">356</span><span id="line-356">
break;</span>
+<span class="source-line-no">357</span><span id="line-357">
case 'X':</span>
+<span class="source-line-no">358</span><span id="line-358">
code.append('K');</span>
+<span class="source-line-no">359</span><span id="line-359">
code.append('S');</span>
+<span class="source-line-no">360</span><span id="line-360">
break;</span>
+<span class="source-line-no">361</span><span id="line-361">
case 'Z':</span>
+<span class="source-line-no">362</span><span id="line-362">
code.append('S');</span>
+<span class="source-line-no">363</span><span id="line-363">
break;</span>
+<span class="source-line-no">364</span><span id="line-364">
default:</span>
+<span class="source-line-no">365</span><span id="line-365">
// do nothing</span>
+<span class="source-line-no">366</span><span id="line-366">
break;</span>
+<span class="source-line-no">367</span><span id="line-367"> }
// end switch</span>
+<span class="source-line-no">368</span><span id="line-368"> } //
end else from symb != 'C'</span>
+<span class="source-line-no">369</span><span id="line-369">
n++;</span>
+<span class="source-line-no">370</span><span id="line-370"> if
(code.length() > getMaxCodeLen()) {</span>
+<span class="source-line-no">371</span><span id="line-371">
code.setLength(getMaxCodeLen());</span>
+<span class="source-line-no">372</span><span id="line-372"> }</span>
+<span class="source-line-no">373</span><span id="line-373"> }</span>
+<span class="source-line-no">374</span><span id="line-374"> return
code.toString();</span>
+<span class="source-line-no">375</span><span id="line-375"> }</span>
+<span class="source-line-no">376</span><span id="line-376"></span>
+<span class="source-line-no">377</span><span id="line-377"> private boolean
regionMatch(final StringBuilder string, final int index, final String test)
{</span>
+<span class="source-line-no">378</span><span id="line-378"> boolean
matches = false;</span>
+<span class="source-line-no">379</span><span id="line-379"> if (index
>= 0 && index + test.length() - 1 < string.length()) {</span>
+<span class="source-line-no">380</span><span id="line-380"> final
String substring = string.substring(index, index + test.length());</span>
+<span class="source-line-no">381</span><span id="line-381"> matches
= substring.equals(test);</span>
+<span class="source-line-no">382</span><span id="line-382"> }</span>
+<span class="source-line-no">383</span><span id="line-383"> return
matches;</span>
+<span class="source-line-no">384</span><span id="line-384"> }</span>
+<span class="source-line-no">385</span><span id="line-385"></span>
+<span class="source-line-no">386</span><span id="line-386"> /**</span>
+<span class="source-line-no">387</span><span id="line-387"> * Sets the
maxCodeLen.</span>
+<span class="source-line-no">388</span><span id="line-388"> * @param
maxCodeLen The maxCodeLen to set</span>
+<span class="source-line-no">389</span><span id="line-389"> */</span>
+<span class="source-line-no">390</span><span id="line-390"> public void
setMaxCodeLen(final int maxCodeLen) { this.maxCodeLen = maxCodeLen; }</span>
+<span class="source-line-no">391</span><span id="line-391"></span>
+<span class="source-line-no">392</span><span id="line-392">}</span>
Modified:
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Nysiis.html
==============================================================================
---
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Nysiis.html
(original)
+++
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/language/Nysiis.html
Mon Jul 15 22:37:19 2024
@@ -227,7 +227,7 @@
<span class="source-line-no">214</span><span id="line-214"> if (!(obj
instanceof String)) {</span>
<span class="source-line-no">215</span><span id="line-215"> throw
new EncoderException("Parameter supplied to Nysiis encode is not of type
java.lang.String");</span>
<span class="source-line-no">216</span><span id="line-216"> }</span>
-<span class="source-line-no">217</span><span id="line-217"> return
this.nysiis((String) obj);</span>
+<span class="source-line-no">217</span><span id="line-217"> return
nysiis((String) obj);</span>
<span class="source-line-no">218</span><span id="line-218"> }</span>
<span class="source-line-no">219</span><span id="line-219"></span>
<span class="source-line-no">220</span><span id="line-220"> /**</span>
@@ -241,7 +241,7 @@
<span class="source-line-no">228</span><span id="line-228"> */</span>
<span class="source-line-no">229</span><span id="line-229"> @Override</span>
<span class="source-line-no">230</span><span id="line-230"> public String
encode(final String str) {</span>
-<span class="source-line-no">231</span><span id="line-231"> return
this.nysiis(str);</span>
+<span class="source-line-no">231</span><span id="line-231"> return
nysiis(str);</span>
<span class="source-line-no">232</span><span id="line-232"> }</span>
<span class="source-line-no">233</span><span id="line-233"></span>
<span class="source-line-no">234</span><span id="line-234"> /**</span>
@@ -329,7 +329,7 @@
<span class="source-line-no">316</span><span id="line-316"> }</span>
<span class="source-line-no">317</span><span id="line-317"></span>
<span class="source-line-no">318</span><span id="line-318"> final
String string = key.toString();</span>
-<span class="source-line-no">319</span><span id="line-319"> return
this.isStrict() ? string.substring(0, Math.min(TRUE_LENGTH, string.length())) :
string;</span>
+<span class="source-line-no">319</span><span id="line-319"> return
isStrict() ? string.substring(0, Math.min(TRUE_LENGTH, string.length())) :
string;</span>
<span class="source-line-no">320</span><span id="line-320"> }</span>
<span class="source-line-no">321</span><span id="line-321"></span>
<span class="source-line-no">322</span><span id="line-322">}</span>
Modified:
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/net/QuotedPrintableCodec.html
==============================================================================
---
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/net/QuotedPrintableCodec.html
(original)
+++
websites/production/commons/content/proper/commons-codec/apidocs/src-html/org/apache/commons/codec/net/QuotedPrintableCodec.html
Mon Jul 15 22:37:19 2024
@@ -461,7 +461,7 @@
<span class="source-line-no">448</span><span id="line-448"> */</span>
<span class="source-line-no">449</span><span id="line-449"> @Override</span>
<span class="source-line-no">450</span><span id="line-450"> public String
decode(final String sourceStr) throws DecoderException {</span>
-<span class="source-line-no">451</span><span id="line-451"> return
this.decode(sourceStr, this.getCharset());</span>
+<span class="source-line-no">451</span><span id="line-451"> return
this.decode(sourceStr, getCharset());</span>
<span class="source-line-no">452</span><span id="line-452"> }</span>
<span class="source-line-no">453</span><span id="line-453"></span>
<span class="source-line-no">454</span><span id="line-454"> /**</span>
Modified:
websites/production/commons/content/proper/commons-codec/changes-report.html
==============================================================================
---
websites/production/commons/content/proper/commons-codec/changes-report.html
(original)
+++
websites/production/commons/content/proper/commons-codec/changes-report.html
Mon Jul 15 22:37:19 2024
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 27 April 2024
+ | Generated by Apache Maven Doxia at 15 July 2024
| Rendered using Apache Maven Fluido Skin 1.3.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
@@ -8,7 +8,7 @@
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="author" content="Apache Commons Developers" />
- <meta name="Date-Revision-yyyymmdd" content="20240427" />
+ <meta name="Date-Revision-yyyymmdd" content="20240715" />
<meta http-equiv="Content-Language" content="en" />
<title>Codec – Apache Commons Codec Release Notes</title>
@@ -41,8 +41,8 @@
<a class="brand"
href="https://commons.apache.org/proper/commons-codec/">Apache Commons Codec
™</a>
<ul class="nav">
- <li id="publishDate">Last Published: 27 April 2024</li>
- <li class="divider">|</li> <li id="projectVersion">Version: 1.17.0</li>
+ <li id="publishDate">Last Published: 15 July 2024</li>
+ <li class="divider">|</li> <li id="projectVersion">Version: 1.17.1</li>
</ul>
<div class="pull-right"> <ul class="nav">
<li>
@@ -300,81 +300,107 @@
<th>Date</th>
<th>Description</th></tr>
<tr class="b">
+<td><a href="#a1.17.1">1.17.1</a></td>
+<td>2024-07-12</td>
+<td>Feature and fix release. Requires a minimum of Java 8.</td></tr>
+<tr class="a">
<td><a href="#a1.17.0">1.17.0</a></td>
<td>2024-04-20</td>
<td>Feature and fix release. Requires a minimum of Java 8.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.16.1">1.16.1</a></td>
<td>2024-02-04</td>
<td>Feature and fix release. Requires a minimum of Java 8.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.16.0">1.16.0</a></td>
<td>2023-06-17</td>
<td>Feature and fix release. Requires a minimum of Java 8.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.15">1.15</a></td>
<td>2020-09-01</td>
<td>Feature and fix release.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.14">1.14</a></td>
<td>2019-12-30</td>
<td>Feature and fix release.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.13">1.13</a></td>
<td>2019-07-20</td>
<td>Feature and fix release.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.12">1.12</a></td>
<td>2019-02-04</td>
<td>Feature and fix release. Requires a minimum of Java 7.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.11">1.11</a></td>
<td>2017-10-20</td>
<td>Feature and fix release.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.10">1.10</a></td>
<td>5 November 2014</td>
<td>Feature and fix release.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.9">1.9</a></td>
<td>20 December 2013</td>
<td>Feature and fix release.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.8">1.8</a></td>
<td>19 April 2013</td>
<td>Feature and fix release. Requires a minimum of Java 6.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.7">1.7</a></td>
<td>11 September 2012</td>
<td>Feature and fix release. Requires a minimum of Java 6.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.6">1.6</a></td>
<td>20 November 2011</td>
<td>Feature and fix release. Requires a minimum of Java 5.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.5">1.5</a></td>
<td>29 March 2011</td>
<td>Feature and fix release. Requires a minimum of Java 1.4.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.4">1.4</a></td>
<td>9 August 2009</td>
<td>Feature and fix release. Requires a minimum of Java 1.4.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.3">1.3</a></td>
<td>10 July 2004</td>
<td>Feature and fix release.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.2">1.2</a></td>
<td>24 Nov 2003</td>
<td>Feature and fix release.</td></tr>
-<tr class="a">
+<tr class="b">
<td><a href="#a1.1">1.1</a></td>
<td>29 April 2003</td>
<td>The first official release. Numerous projects had been depending on
version 1.0-dev while in the Sandbox.</td></tr>
-<tr class="b">
+<tr class="a">
<td><a href="#a1.0-dev">1.0-dev</a></td>
<td>25 April 2003</td>
<td>Last release from the Sandbox.</td></tr></table></section><section>
+<h3 id="a1.17.1">Release 1.17.1 – 2024-07-12</h3>
+<table border="0" class="bodyTable">
+<tr class="b">
+<th>Type</th>
+<th>Changes</th>
+<th>By</th></tr>
+<tr class="a">
+<td><img src="images/fix.gif" alt="Fix" title="Fix" /></td>
+<td>Md5Crypt now throws IllegalArgumentException on an invalid prefix. Thanks
to Gary Gregory.</td>
+<td><a href="team-list.html#ggregory">ggregory</a></td></tr>
+<tr class="b">
+<td><img src="images/update.gif" alt="Update" title="Update" /></td>
+<td>Bump org.apache.commons:commons-parent from 69 to 71 #286. Thanks to Gary
Gregory.</td>
+<td><a href="team-list.html#ggregory">ggregory</a></td></tr>
+<tr class="a">
+<td><img src="images/update.gif" alt="Update" title="Update" /></td>
+<td>Bump org.codehaus.mojo:animal-sniffer-maven-plugin from 1.23 to 1.24 #293.
Thanks to Dependabot.</td>
+<td><a href="team-list.html#ggregory">ggregory</a></td></tr>
+<tr class="b">
+<td><img src="images/update.gif" alt="Update" title="Update" /></td>
+<td>Bump org.codehaus.mojo:taglist-maven-plugin from 3.0.0 to 3.1.0 #292.
Thanks to Dependabot.</td>
+<td><a
href="team-list.html#ggregory">ggregory</a></td></tr></table></section><section>
<h3 id="a1.17.0">Release 1.17.0 – 2024-04-20</h3>
<table border="0" class="bodyTable">
<tr class="a">
Modified:
websites/production/commons/content/proper/commons-codec/checkstyle.html
==============================================================================
--- websites/production/commons/content/proper/commons-codec/checkstyle.html
(original)
+++ websites/production/commons/content/proper/commons-codec/checkstyle.html
Mon Jul 15 22:37:19 2024
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 27 April 2024
+ | Generated by Apache Maven Doxia at 15 July 2024
| Rendered using Apache Maven Fluido Skin 1.3.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20240427" />
+ <meta name="Date-Revision-yyyymmdd" content="20240715" />
<meta http-equiv="Content-Language" content="en" />
<title>Codec – Checkstyle Results</title>
@@ -40,8 +40,8 @@
<a class="brand"
href="https://commons.apache.org/proper/commons-codec/">Apache Commons Codec
™</a>
<ul class="nav">
- <li id="publishDate">Last Published: 27 April 2024</li>
- <li class="divider">|</li> <li id="projectVersion">Version: 1.17.0</li>
+ <li id="publishDate">Last Published: 15 July 2024</li>
+ <li class="divider">|</li> <li id="projectVersion">Version: 1.17.1</li>
</ul>
<div class="pull-right"> <ul class="nav">
<li>
@@ -292,7 +292,7 @@
<td class="content">
<section>
<h2><a name="Checkstyle_Results"></a>Checkstyle Results</h2><a
name="Checkstyle_Results"></a>
-<p>The following document contains the results of <a class="externalLink"
href="https://checkstyle.org/">Checkstyle</a> 10.14.2 with
/Users/garydgregory/git/commons-codec/src/conf/checkstyle.xml
ruleset.</p><section>
+<p>The following document contains the results of <a class="externalLink"
href="https://checkstyle.org/">Checkstyle</a> 10.17.0 with
/Users/garydgregory/git/commons-codec/src/conf/checkstyle.xml
ruleset.</p><section>
<h3><a name="Summary"></a>Summary</h3><a name="Summary"></a>
<table border="0" class="bodyTable">
<tr class="a">
Modified:
websites/production/commons/content/proper/commons-codec/ci-management.html
==============================================================================
--- websites/production/commons/content/proper/commons-codec/ci-management.html
(original)
+++ websites/production/commons/content/proper/commons-codec/ci-management.html
Mon Jul 15 22:37:19 2024
@@ -1,13 +1,13 @@
<!DOCTYPE html>
<!--
- | Generated by Apache Maven Doxia at 27 April 2024
+ | Generated by Apache Maven Doxia at 15 July 2024
| Rendered using Apache Maven Fluido Skin 1.3.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="Date-Revision-yyyymmdd" content="20240427" />
+ <meta name="Date-Revision-yyyymmdd" content="20240715" />
<meta http-equiv="Content-Language" content="en" />
<title>Codec – CI Management</title>
@@ -40,8 +40,8 @@
<a class="brand"
href="https://commons.apache.org/proper/commons-codec/">Apache Commons Codec
™</a>
<ul class="nav">
- <li id="publishDate">Last Published: 27 April 2024</li>
- <li class="divider">|</li> <li id="projectVersion">Version: 1.17.0</li>
+ <li id="publishDate">Last Published: 15 July 2024</li>
+ <li class="divider">|</li> <li id="projectVersion">Version: 1.17.1</li>
</ul>
<div class="pull-right"> <ul class="nav">
<li>