[ 
https://issues.apache.org/jira/browse/WW-5256?focusedWorklogId=1025164&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-1025164
 ]

ASF GitHub Bot logged work on WW-5256:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 15/Jun/26 10:05
            Start Date: 15/Jun/26 10:05
    Worklog Time Spent: 10m 
      Work Description: lukaszlenart opened a new pull request, #1743:
URL: https://github.com/apache/struts/pull/1743

   ## Summary
   
   In 7.2.0, `FreemarkerManager` disabled FreeMarker whitespace stripping 
whenever `devMode` was enabled (`whitespaceStripping && !devMode`). This 
regressed behavior versus 6.x and had two visible effects in development:
   
   - **`s:textarea` rendered blank lines** — the `<#if nameValue??>` / `</#if>` 
directive lines inside `<textarea>…</textarea>` were no longer collapsed, and 
whitespace there is *significant* page content, so an empty textarea showed up 
as blank lines on screen.
   - **Bloated HTML output** — every directive-only line across all UI 
templates emitted its newline/indentation.
   
   The `&& !devMode` term also overrode the 
`struts.freemarker.whitespaceStripping` setting, leaving developers no way to 
re-enable stripping while in devMode.
   
   This change makes whitespace stripping governed solely by 
`struts.freemarker.whitespaceStripping` (default `true`), restoring 6.x 
behavior by default while keeping an explicit opt-out. The now-unused `devMode` 
field/setter/injection (added in 7.2.0 only for this coupling) is removed, and 
the constant's Javadoc is updated.
   
   ## Changes
   
   - `FreemarkerManager`: drop the `&& !devMode` coupling; remove the dead 
`devMode` field, `setDevMode` setter and its `@Inject`.
   - `StrutsConstants`: remove the stale "Automatically disabled when devMode 
is enabled" note from `STRUTS_FREEMARKER_WHITESPACE_STRIPPING`.
   - Tests: remove the two devMode-coupling tests; keep default-on and 
explicit-off coverage.
   - Design + implementation plan docs under `docs/superpowers/`.
   
   ## Test Plan
   
   - [x] `mvn test -DskipAssembly -pl core -Dtest=FreemarkerManagerTest` — 
passes
   - [x] `mvn test -DskipAssembly -pl core -Dtest=TextareaTest` — passes 
(rendering guard)
   - [x] `mvn test -DskipAssembly -pl core` — full core module, 2969 tests, 0 
failures
   
   Fixes [WW-5256](https://issues.apache.org/jira/browse/WW-5256)
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)




Issue Time Tracking
-------------------

    Worklog Id:     (was: 1025164)
    Time Spent: 4.5h  (was: 4h 20m)

> Reduce size of generate html out of freemarker tag templates
> ------------------------------------------------------------
>
>                 Key: WW-5256
>                 URL: https://issues.apache.org/jira/browse/WW-5256
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Core Tags
>            Reporter: Lukasz Lenart
>            Assignee: Lukasz Lenart
>            Priority: Major
>             Fix For: 7.2.0
>
>          Time Spent: 4.5h
>  Remaining Estimate: 0h
>
> Currently tags are producing a lot of white-space characters and line breaks 
> due to how Freemarker handles all the white-space characters. This can be 
> improved by using a few helpful directtives:
> [https://freemarker.apache.org/docs/dgui_misc_whitespace.html]
> One of them is the 
> [<#compress>|https://freemarker.apache.org/docs/dgui_misc_whitespace.html#autoid_30]
>  directive.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to