Minification failing for third party JS | Community
Skip to main content
anilkum
Level 4
September 16, 2016
Solved

Minification failing for third party JS

  • September 16, 2016
  • 6 replies
  • 2853 views

Hi,

We have third party JS files in out project. When we are configuring the Felix console to minify the JS, the minified JS is not getting loaded in the page. Felix uses YUI compressor and when we tested it with online minifier that uses YUI compressor we were able to replicate the error.

However some other minifier e.g. https://javascript-minifier.com/ was able to minify this particular JS without any problem.

What is workaround? Is it possible to configure AEM not to use YUI for minification?

Has anyone faced such issue. Please respond.

AEM version 6.0 SP2.

Regards,

Anil 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by JE_Bailey

We've encountered minification problems as well. We've identified the root cause as being a key in a js object called extends. 

Example of a snippet would be 

var foo ={ extends: 'div' }

Other minification processes wraps the extends with quotes.

var foo ={ "extends": 'div' }

We've used that wrapping as quotes as a workaround in our own code base to allow the minification to work as expected

6 replies

Feike_Visser1
Adobe Employee
Adobe Employee
September 16, 2016

Do you see something in the log around this?

Usually there are syntax errors that cause the minification to fail.

anilkum
anilkumAuthor
Level 4
September 16, 2016

The third party JS seems to be an already minified version. Will check with an unminified version. Does YUI fails when processing a minified version of file.

Feike_Visser1
Adobe Employee
Adobe Employee
September 17, 2016

Please check the error.log file, to check if you see a message around this. Then you know what is causing the minification to fail.

December 20, 2016

Hi Feike,

I also meet this problem recently. I can use the Uglify to compress my Js file, it will fails when I try to use YUI compressor.

The file I want to compressed invoke React, And I already use babel to translate it to ES5 synax.

As you know the YUI Compressor is already stopping upgrades long time ago, maybe it not supports the new tech.

Is there any solution I can replace YUI on AEM?

Feike_Visser1
Adobe Employee
Adobe Employee
December 21, 2016

What you can consider too, is to disable minify on publish. And to do this on Apache.

JE_BaileyAccepted solution
Level 3
April 17, 2017

We've encountered minification problems as well. We've identified the root cause as being a key in a js object called extends. 

Example of a snippet would be 

var foo ={ extends: 'div' }

Other minification processes wraps the extends with quotes.

var foo ={ "extends": 'div' }

We've used that wrapping as quotes as a workaround in our own code base to allow the minification to work as expected