Repository navigation
chore(deps): update Lucee to 7.0.5.41 - #4592
Conversation
Pin Lucee 7.0.5.41 in the framework, `wheels new` template and starter app lucee.json (was 7.0.0.395), and in the Lucee 7 test image, CI lucee.json and the IIS CI install (was 7.0.1.100). Its Express bundle ships Tomcat 11.0.22. Lucee 7.0.5 ships ESAPI extension 3.x, which encodes only the characters that matter in each HTML context: `/`, `:`, `(`, `)`, `[`, `]` and spaces stay literal, and a double quote becomes `"`. The view specs compared helper output with strings captured from the 2.x encoder, so 57 failed. They now compare through a spec helper that canonicalises character references while keeping `&`, `<`, `"` and `'` encoded, so a missing encoding still fails. The injection cases also assert, without the engine's encoder, that no attribute is injected, that attribute values and text keep no literal quote or `<`, and that the value decodes back to the input. Four inputs lose a stray backslash, which the 2.x encoder's canonicalization dropped and 3.x keeps. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Peter Amiri <peter@alurium.com>
Wheels Test Results260 820 tests 255 083 ✅ 1h 56m 5s ⏱️ Results for commit d88a4bf. |
|
Source review at
LOW, non-blocking:
Read all 35 raw results from matrix 38514892018: each discovered 600 bundles with 0 failures/errors. PR CI currently has 33 pass / 1 fail / 2 skip. The failing Lucee 7 + SQLite (LuCLI) job logs |
… quote The rewritten encoding specs dropped the stray backslash from their inputs. This adds the case back on its own: ESAPI 2.x canonicalization drops the backslash in \" and 3.x (Lucee 7.0.5+) keeps it, so the spec accepts either decoded form while requiring that no attribute is injected and the class value keeps no literal quote. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Peter Amiri <peter@alurium.com>
|
Delta review at It exercises the previously removed input, rejects an injected The prior full matrix covers unchanged production/configuration code. Final approval remains pending fresh PR CI on this head, including the LuCLI job. |
|
Final review: APPROVE at b88f179. The backslash-before-quote regression addresses the remaining review note. It independently checks attribute safety and accepts the two supported canonicalization outcomes without relying on a particular encoder's entity spelling. Validation:
No remaining blocking findings. |
Summary
Update Lucee to 7.0.5.41.
wheels newtemplate and starter applucee.jsonmove from 7.0.0.395 to 7.0.5.41. The Lucee 7 test image (lucee@7.0.5+41, tagv1.0.1), CIlucee.ci.jsonand the IIS CI install (new SHA-256) move from 7.0.1.100. Lucee Express 7.0.5.41 ships Tomcat 11.0.22.lucee.jsonexamples, VM deployment) are updated. Pages that record a version something was measured on (screenshots, notes) are left as they are.HTML encoding on Lucee 7.0.5
Lucee 7.0.5 bundles ESAPI extension 3.0.0.14, built on the OWASP Java Encoder; 7.0.0.395 bundles 2.6.0.1. The 3.x encoder escapes only what each context needs:
/,:,(,),[,]and spaces stay literal;"rather than";<,&and quotes are still encoded everywhere they were.The framework is unchanged, but 57 view specs compared helper output with strings captured from the 2.x encoder. They now go through
wheels.tests._assets.view.HtmlEncoding:normalize()rewrites character references to one canonical form.&,<,"and'always stay encoded, so a missing encoding still fails;htmlEncodingHelperSpecpins this.attributeProblem()/textProblem()check the injection cases without using the engine's encoder:<remains in an attribute value;<,>or quote remains in text;A literal
>is allowed inside a quoted attribute value, which is where the 3.x encoder leaves it.Specs whose output already matches on every engine keep their literal assertions.
Four spec inputs drop a stray
\", which only the 2.x canonicalizer removed.Verification
WHEELS_FRAMEWORK_PATHbeing set in the run's environment and is unrelated.tools/test-onboarding.shon the 7.0.5.41 template: 49 pass, 0 fail, 2 skipped.wheels new→wheels start→wheels g scaffold→wheels migrate lateston 7.0.5.41. The CLI stages the SQLite driver into the new Express version, and/,/postsand/posts/newreturn 200.The full compat matrix has not run yet.
🤖 Generated with Claude Code