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

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

                Author: ASF GitHub Bot
            Created on: 21/Aug/23 14:41
            Start Date: 21/Aug/23 14:41
    Worklog Time Spent: 10m 
      Work Description: kusalk commented on code in PR #736:
URL: https://github.com/apache/struts/pull/736#discussion_r1300194447


##########
core/src/main/java/com/opensymphony/xwork2/ognl/OgnlUtil.java:
##########
@@ -261,7 +262,8 @@ public void setDevModeExcludedPackageExemptClasses(String 
commaDelimitedClasses)
     }
 
     private Set<String> parseExcludedPackageNames(String 
commaDelimitedPackageNames) {
-        Set<String> parsedSet = 
TextParseUtil.commaDelimitedStringToSet(commaDelimitedPackageNames);
+        Set<String> parsedSet = 
commaDelimitedStringToSet(commaDelimitedPackageNames)
+                .stream().map(s -> strip(s, ".")).collect(toSet());

Review Comment:
   I think it's unintuitive to require a period at the of each excluded 
package. Currently if the period is missed, the exclusion will act like the 
regex `com\.package.*` which likely isn't what users configuring their 
application intend.
   
   By stripping the period here, we retain backwards compatibility for excluded 
package lists that still have trailing periods.
   
   However, we do drop support for wildcard package exclusions where 
applications didn't include a trailing period and genuinely desired the 
previous behaviour. They will need to move such exclusions to the regex 
exclusion list instead.





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

    Worklog Id:     (was: 877306)
    Time Spent: 50m  (was: 40m)

> Improve performance of excluded classes and packages
> ----------------------------------------------------
>
>                 Key: WW-5337
>                 URL: https://issues.apache.org/jira/browse/WW-5337
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Kusal Kithul-Godage
>            Priority: Minor
>             Fix For: 6.3.0
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> By using a HashMap we can significantly improve performance for applications 
> with extensive exclusion lists.



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

Reply via email to