[ https://issues.apache.org/jira/browse/SLING-4462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sandro Boehme resolved SLING-4462. ---------------------------------- Resolution: Fixed Grunt is now configured with the used npm packages. Now the following things work: o A small Karma Jasmine test (src/test/javascript/spec/resource_editor_spec.js) via './grunt desktop_build' within the 'frontend' folder. o A small end to end Webdriver test (src/test/javascript/e2e/spec/e2e_spec.js) via './grunt desktop_build' within the 'frontend' folder. o `./grunt watch:less` in the frontend folder. The unsupported org.lesscss.lesscss-maven-plugin is removed now. o The lesscss source map is generated. o Bootstraps Less sources and many frontend libraries are removed from SVN. o The 'frontend/licenselist' skript now lists the frontend 3rd party libs and its licenses. > Resource Editor :: Integrate Node.js, Grunt and npm for frontend libraries > -------------------------------------------------------------------------- > > Key: SLING-4462 > URL: https://issues.apache.org/jira/browse/SLING-4462 > Project: Sling > Issue Type: Improvement > Components: Extensions > Affects Versions: Resource Editor 1.0.2 > Reporter: Sandro Boehme > Assignee: Sandro Boehme > > The goal is to configure the Resource Editor for frontend tests (Jasmine, > Karma, end to end via Webdriver) and to optimize its frontend build > configuration. To accomplish that the Frontend Maven Plugin > (https://github.com/eirslett/frontend-maven-plugin) is used. It installs > Node.js, Grunt and npm locally within in the project and makes it available > in a Maven build. > Con: > o The npm repository that needs to be ignored for SVN is generated within the > project folder. > o The build takes longer initially as the npm repository needs to be filled > with the dependencies (<5min on my box). > o a ~/.npm folder is created and filled with repository data > Pro: > o Avoids that I have to check in the frontend libraries and Bootstrap Less > sources to SVN as they can be copied from the local npm repo during the build > process. > o Eases the listing of the 3rd party licenses of used npm package as the npm > package 'nlf' for example can be used to list the licenses in a specific > depth of transitive dependencies. It allows a good fix for SLING-4205. > o I get a map file created by the less compiler > o Better supported libraries: > - BDD Unit Tests with different browsers > Via Maven: > https://github.com/karma-runner/maven-karma-plugin (31 Stars) > Via npm: > https://github.com/karma-runner/karma (4760 Stars) > - Less CSS compiler and watch functionality > Via Maven: > https://github.com/marceloverdijk/lesscss-maven-plugin (155 Stars, not > supported anymore) > https://github.com/marceloverdijk/lesscss-java (151 Stars, not supported > anymore) > Via npm: > https://github.com/gruntjs/grunt-contrib-watch (1380 Stars) > https://github.com/gruntjs/grunt-contrib-less (519 Stars) > - Minification: > Via Maven: > https://github.com/davidB/yuicompressor-maven-plugin (80 Stars) > Via npm: > https://github.com/gruntjs/grunt-contrib-uglify (850 Stars) > https://github.com/gruntjs/grunt-contrib-cssmin (513 Stars) > - BDD (Jasmine) End to End Tests are not available via Maven -- This message was sent by Atlassian JIRA (v6.3.4#6332)