Hello, Geoff!

Looking at GoogleClosureMinimizer, I cannot see how the options can be
customized. Could you please create a Jira issue so we can fix this in
5.7.0? Thanks in advance.

Cheers!

On Thu, Jan 28, 2021 at 6:31 AM JumpStart <
geoff.callender.jumpst...@gmail.com> wrote:

> Can I pass options to GoogleClosureMinimizer at runtime?
>
> I have a 3rd party javascript file (html2canvas.min.js) that
> tapestry-webresources is failing to parse because the JS is using
> javascript getters, which I think were introduced in ECMASCRIPT5.
>
> 2021-01-28 04:31:40,536 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) Compilation failed: JSC_PARSE_ERROR. Parse error. getters are not
> supported in older versions of JavaScript. If you are targeting newer
> versions of JavaScript, set the appropriate language_in option. at
> StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.js COMPRESSABLE lastModified:
> Thu Jan 28 03:44:05 UTC 2021 size: 165202> line 20 : 0.
>
> As I am targeting only modern versions of Chrome and Safari, it seems that
> I could fix this by passing option —language_in=ECMASCRIPT5 to
> google-closure-compiler, but how can I do this? Is there a system property
> I can provide at runtime?
>
> In case it helps, here’s the stack trace...
>
> 2021-01-28 04:31:40,536 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) Compilation failed: JSC_PARSE_ERROR. Parse error. getters are not
> supported in older versions of JavaScript. If you are targeting newer
> versions of JavaScript, set the appropriate language_in option. at
> StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.js COMPRESSABLE lastModified:
> Thu Jan 28 03:44:05 UTC 2021 size: 165202> line 20 : 0.
> 2021-01-28 04:31:40,537 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) Operations trace:
> 2021-01-28 04:31:40,537 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) [ 1] Streaming compressed module html2canvas.min
> 2021-01-28 04:31:40,537 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) [ 2] Streaming classpath:META-INF/modules/html2canvas.min.js
> (compressed)
> 2021-01-28 04:31:40,537 ERROR [org.apache.tapestry5.ioc.Registry] (default
> task-14) [ 3] Minimizing StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.js COMPRESSABLE lastModified:
> Thu Jan 28 03:44:05 UTC 2021 size: 165202>
> 2021-01-28 04:31:40,544 ERROR
> [org.apache.tapestry5.modules.TapestryModule.RequestExceptionHandler]
> (default task-14) Processing of request failed with uncaught exception:
> org.apache.tapestry5.ioc.internal.OperationException: Compilation failed:
> JSC_PARS
> E_ERROR. Parse error. getters are not supported in older versions of
> JavaScript. If you are targeting newer versions of JavaScript, set the
> appropriate language_in option. at StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.j
> s COMPRESSABLE lastModified: Thu Jan 28 03:44:05 UTC 2021 size: 165202>
> line 20 : 0.: org.apache.tapestry5.ioc.internal.OperationException:
> Compilation failed: JSC_PARSE_ERROR. Parse error. getters are not supported
> in older versions of JavaScript. If yo
> u are targeting newer versions of JavaScript, set the appropriate
> language_in option. at StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.js COMPRESSABLE lastModified:
> Thu Jan 28 03:44:05 UTC 2021 size: 165202> line 20 : 0.
> …
> Caused by: java.lang.RuntimeException: Compilation failed:
> JSC_PARSE_ERROR. Parse error. getters are not supported in older versions
> of JavaScript. If you are targeting newer versions of JavaScript, set the
> appropriate language_in option. at StreamableResource<text/javascript
> classpath:META-INF/modules/html2canvas.min.js COMPRESSABLE lastModified:
> Thu Jan 28 03:44:05 UTC 2021 size: 165202> line 20 : 0.
>         at
> org.apache.tapestry5.internal.webresources.GoogleClosureMinimizer.doMinimize(GoogleClosureMinimizer.java:97)
>         at
> org.apache.tapestry5.internal.webresources.AbstractMinimizer$1.perform(AbstractMinimizer.java:72)
>         at
> org.apache.tapestry5.internal.webresources.AbstractMinimizer$1.perform(AbstractMinimizer.java:68)
>         at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.perform(OperationTrackerImpl.java:110)
>         ... 101 more
>
> Cheers,
>
> Geoff



-- 
Thiago

Reply via email to