From 8ce9d0db332ba0c675a0c42bce4f4da3cabaea2f Mon Sep 17 00:00:00 2001 From: Jack Smith <72623970+jasmith-hs@users.noreply.github.com> Date: Tue, 18 Oct 2022 14:40:07 -0400 Subject: [PATCH 1/3] Revert "Revert "Whitelist -> Safelist in jsoup"" --- .../java/com/hubspot/jinjava/lib/filter/StripTagsFilter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/hubspot/jinjava/lib/filter/StripTagsFilter.java b/src/main/java/com/hubspot/jinjava/lib/filter/StripTagsFilter.java index 72eed3d30..ac8b78bbd 100644 --- a/src/main/java/com/hubspot/jinjava/lib/filter/StripTagsFilter.java +++ b/src/main/java/com/hubspot/jinjava/lib/filter/StripTagsFilter.java @@ -7,7 +7,7 @@ import com.hubspot.jinjava.interpret.JinjavaInterpreter; import java.util.regex.Pattern; import org.jsoup.Jsoup; -import org.jsoup.safety.Whitelist; +import org.jsoup.safety.Safelist; /** * striptags(value) Strip SGML/XML tags and replace adjacent whitespace by one space. @@ -43,7 +43,7 @@ public Object filter(Object object, JinjavaInterpreter interpreter, String... ar } String cleanedVal = Jsoup.parse(val).text(); - cleanedVal = Jsoup.clean(cleanedVal, Whitelist.none()); + cleanedVal = Jsoup.clean(cleanedVal, Safelist.none()); // backwards compatibility with Jsoup.parse cleanedVal = cleanedVal.replaceAll(" ", " "); From eb0dfecd2af001b0f0077aa0054c73c7604d8f60 Mon Sep 17 00:00:00 2001 From: Jack Smith Date: Fri, 19 May 2023 11:09:56 -0400 Subject: [PATCH 2/3] Shade and bump jsoup version --- pom.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ce8b483da..4db264086 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ org.jsoup jsoup - 1.14.2 + 1.15.3 de.odysseus.juel @@ -232,6 +232,7 @@ de.odysseus.juel:juel-api de.odysseus.juel:juel-impl + org.jsoup:jsoup @@ -243,6 +244,10 @@ de.odysseus.el jinjava.de.odysseus.el + + org.jsoup + jinjava.org.jsoup + From f3c7e03140a18e61d4f17c9cedaddcc7c9a1ab7f Mon Sep 17 00:00:00 2001 From: Jack Smith Date: Fri, 19 May 2023 11:17:21 -0400 Subject: [PATCH 3/3] Remove trailing space from expected result --- .../lib/filter/TruncateHtmlFilterTest.java | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/test/java/com/hubspot/jinjava/lib/filter/TruncateHtmlFilterTest.java b/src/test/java/com/hubspot/jinjava/lib/filter/TruncateHtmlFilterTest.java index 3aafe1b19..065d7c7e2 100644 --- a/src/test/java/com/hubspot/jinjava/lib/filter/TruncateHtmlFilterTest.java +++ b/src/test/java/com/hubspot/jinjava/lib/filter/TruncateHtmlFilterTest.java @@ -26,9 +26,7 @@ public void itPreservesEndTagsWhenTruncatingWithinTagContent() { "33" ); assertThat(result) - .isEqualTo( - "

HTML Ipsum Presents

\n

Pellentesque...

" - ); + .isEqualTo("

HTML Ipsum Presents

\n

Pellentesque...

"); } @Test @@ -39,9 +37,7 @@ public void itDoesntChopWordsWhenSpecified() { "35" ); assertThat(result) - .isEqualTo( - "

HTML Ipsum Presents

\n

Pellentesque...

" - ); + .isEqualTo("

HTML Ipsum Presents

\n

Pellentesque...

"); result = (String) filter.filter( @@ -53,7 +49,7 @@ public void itDoesntChopWordsWhenSpecified() { ); assertThat(result) .isEqualTo( - "

HTML Ipsum Presents

\n

Pellentesque ha...

" + "

HTML Ipsum Presents

\n

Pellentesque ha...

" ); } @@ -66,9 +62,7 @@ public void itTakesKwargs() { ImmutableMap.of("breakwords", false) ); assertThat(result) - .isEqualTo( - "

HTML Ipsum Presents

\n

Pellentesque...

" - ); + .isEqualTo("

HTML Ipsum Presents

\n

Pellentesque...

"); result = (String) filter.filter( @@ -79,7 +73,7 @@ public void itTakesKwargs() { ); assertThat(result) .isEqualTo( - "

HTML Ipsum Presents

\n

PellentesqueTEST

" + "

HTML Ipsum Presents

\n

PellentesqueTEST

" ); }