Giter Site home page Giter Site logo

rahulsom / linters Goto Github PK

View Code? Open in Web Editor NEW
0.0 4.0 2.0 84 KB

Gradle plugin that provides linters for frontend sources

Home Page: https://plugins.gradle.org/plugin/com.github.rahulsom.linters

License: Apache License 2.0

Groovy 100.00%
gradle htmlcs jscs jshint stylelint

linters's Introduction

Gradle Linters Plugin

Adds support for linting code in a bunch of front end languages including Javascript, HTML, CSS and Less.

Getting Started

plugins {
  id 'com.github.rahulsom.linters' version '0.2'
}

Versions

0.1

Deprecated. Initial version.

0.1.1

Pins version numbers of npm packages. Supports Node 0.12.

0.2

Uses more recent npm packages. No support for Node 0.12.

Configuration

linters {
  jscs = true
  htmlcs = true
  jshint = true
  stylelint = true

  jsIncludes  = ['src/assets/**/*.js']
  jsExcludes  = ['src/assets/bower/**']
  htmlIncludes = ['src/assets/**/*.html']
  htmlExcludes = ['src/assets/bower/**']
  stylesIncludes = ['src/assets/**/*.less', 'src/assets/**/*.css']
  stylesExcludes = ['src/assets/bower/**']

  format = 'checkstyle' // or 'text'
}
parameter description default

jscs

run jscs (boolean)

true

html

run htmlcs (boolean)

true

jshint

run jshint (boolean)

true

stylelint

run stylelint (boolean)

true

format

output format for linters ('text' or 'checkstyle')

'text'

jsIncludes

Glob pattern to include as javascript sources

['src/assets/**/*.js']

jsExcludes

Glob pattern to exclude as javascript sources

['src/assets/bower/**']

htmlIncludes

Glob pattern to include as html sources

['src/assets/**/*.html']

htmlExcludes

Glob pattern to exclude as html sources

['src/assets/bower/**']

stylesIncludes

Glob pattern to include as styles sources

['src/assets/**/*.less', 'src/assets/**/*.css']

stylesExcludes

Glob pattern to exclude as styles sources

['src/assets/bower/**']

Usage

It adds the following tasks to your module

  • htmlcs - Runs htmlcs on all html files matched. Checks rules from .htmlcsrc

  • htmlcsFix - Fixes code with best effort on all html files matched

  • jscs - Runs jscs on all javascript files matched. Checks rules from .jscsrc

  • jscsFix - Fixes code with best effort on all javascript files matched

  • jshint - Runs jshint on all javascript files matched. Checks rules from .jshintrc

  • stylelint - Runs stylelint on all styles files matched. Checks rules from .stylelintrc

All these tasks will create a default rc file of the name if they don’t find one. You might not like the defaults though, so please tweak those and commit them to version control.

linters's People

Contributors

dependabot-support avatar rahulsom avatar renovate-bot avatar

Watchers

 avatar  avatar  avatar  avatar

linters's Issues

htmlcs failure: java.lang.IndexOutOfBoundsException

Back again. Still using Node 0.12.7. htmlcs fails during build with the following error:

The same issue can be reproduced on both 0.1.1 and 0.2.

abc release version : 2.0
:my-project:lintersInit UP-TO-DATE
:my-project:nodeSetup UP-TO-DATE
:my-project:installLinters UP-TO-DATE
:my-project:htmlcs FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':my-project:htmlcs'.
> toIndex = 2

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Here is the stack generated when using --stacktrace

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':my-project:htmlcs'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
        at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
        at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
        at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
        at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
        at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
        at org.gradle.internal.Factories$1.create(Factories.java:22)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
        at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
        at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
        at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
        at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
        at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
        at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
        at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
        at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
        at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
        at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
        at org.gradle.util.Swapper.swap(Swapper.java:38)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
        at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
        at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
        at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: java.lang.IndexOutOfBoundsException: toIndex = 2
        at com.github.rahulsom.HtmlcsUtil$_writeHtmlcsReport_closure2$_closure9$_closure10.doCall(HtmlcsUtil.groovy:69)
        at com.github.rahulsom.HtmlcsUtil$_writeHtmlcsReport_closure2$_closure9$_closure10.doCall(HtmlcsUtil.groovy)
        at com.github.rahulsom.HtmlcsUtil$_writeHtmlcsReport_closure2$_closure9.doCall(HtmlcsUtil.groovy:68)
        at com.github.rahulsom.HtmlcsUtil$_writeHtmlcsReport_closure2.doCall(HtmlcsUtil.groovy:66)
        at com.github.rahulsom.HtmlcsUtil$_writeHtmlcsReport_closure2.doCall(HtmlcsUtil.groovy)
        at com.github.rahulsom.HtmlcsUtil.writeHtmlcsReport(HtmlcsUtil.groovy:65)
        at com.github.rahulsom.HtmlcsUtil.access$0(HtmlcsUtil.groovy)
        at com.github.rahulsom.HtmlcsUtil$_createHtmlcsTask_closure1$_closure7.doCall(HtmlcsUtil.groovy:52)
        at com.github.rahulsom.HtmlcsUtil$_createHtmlcsTask_closure1$_closure7.call(HtmlcsUtil.groovy)
        at org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:590)
        at org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:571)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
        ... 68 more

Here's the linters block from my gradle.build file (for the benefit of not following on this issue):

linters {
    jscs = true
    htmlcs = true
    jshint = true
    stylelint = true

    jsIncludes  = [
        "${frontendJsSrcDir}/*/.js", 
        "${serverJsSrcDir}/*/.js"
    ]
    jsExcludes  = [
        "components/ui/frontend/bower_components/**", 
        "**/node_modules/**",
        "${frontendJsSrcDir}/resources/dist/js/**",  // filters out bootstrap
        "${frontendJsSrcDir}/components/plumbjs/**",    // filters out plumbjs
        "${frontendJsSrcDir}/customizations/i18n/**"    // filters out angular-i18n
    ]

    htmlIncludes = ["${frontendJsSrcDir}/*/.html"]
    htmlExcludes = ["**/bower_components/**"]
    stylesIncludes = ["${frontendJsSrcDir}/*/.less", "${frontendJsSrcDir}/*/.css"]
    stylesExcludes = ["**/bower_components/**"]

    format = 'checkstyle' // or 'text'
}

Dependency Dashboard

This issue provides visibility into Renovate updates and their statuses. Learn more

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/build-pr.yml
  • actions/checkout v3
  • actions/cache v3
  • actions/cache v3
  • gradle/wrapper-validation-action v1
  • actions/setup-java v3
  • mikepenz/action-junit-report v3
gradle
settings.gradle
build.gradle
  • com.gradle.plugin-publish 0.10.1
  • nebula.provided-base 7.0.0
  • org.codehaus.groovy:groovy-all 2.4.4
  • com.moowork.gradle:gradle-node-plugin 0.14
  • org.spockframework:spock-core 0.7-groovy-2.0
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 2.14.1

  • Check this box to trigger a request for Renovate to run again on this repository

Cannot find module '<project-base>/node_modules/stylelint/dist/cli.js'

I tried executing the stylelint task and received the error as indicated in the subject. Here is an output of gradle stylelint --info:

Connected to daemon DaemonInfo{pid=20331, address=[173c3853-38d4-4a8e-ab8d-557deedc08f4 port:42700, addresses:[/0:0:0:0:0:0:0:1%lo, /127.0.0.1]], idle=true, lastBusy=1485540458413, context=DefaultDaemonContext[uid=562d1ce9-31f5-40a6-bdee-80270ede3659,javaHome=/usr/lib/jvm/java-8-oracle,daemonRegistryDir=/home/net/.gradle/daemon,pid=20331,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]}. Dispatching request Build{id=23338e90-0509-40e9-aaa9-e708d65a4461.1, currentDir=/home/net/dev/my-project/my-subproject}.
Received result org.gradle.launcher.daemon.protocol.BuildStarted@24c4ddae from daemon DaemonInfo{pid=20331, address=[173c3853-38d4-4a8e-ab8d-557deedc08f4 port:42700, addresses:[/0:0:0:0:0:0:0:1%lo, /127.0.0.1]], idle=true, lastBusy=1485540458413, context=DefaultDaemonContext[uid=562d1ce9-31f5-40a6-bdee-80270ede3659,javaHome=/usr/lib/jvm/java-8-oracle,daemonRegistryDir=/home/net/.gradle/daemon,pid=20331,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]} (build should be starting).
The client will now receive all logging from the daemon (pid: 20331). The daemon log file: /home/net/.gradle/daemon/2.14/daemon-20331.out.log
Starting 8th build in daemon [uptime: 15 mins 10.757 secs, performance: 98%, no major garbage collections]
Executing build with daemon context: DefaultDaemonContext[uid=562d1ce9-31f5-40a6-bdee-80270ede3659,javaHome=/usr/lib/jvm/java-8-oracle,daemonRegistryDir=/home/net/.gradle/daemon,pid=20331,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]
Starting Build
Settings evaluated using settings file '/home/net/dev/my-project/settings.gradle'.
Projects loaded. Root project using build file '/home/net/dev/my-project/build.gradle'.
Included projects: [root project 'my-project', project ':common', project ':my-models', project ':my-subproject']
Evaluating root project 'my-project' using build file '/home/net/dev/my-project/build.gradle'.
Evaluating project ':common' using build file '/home/net/dev/my-project/common/build.gradle'.
Evaluating project ':my-models' using build file '/home/net/dev/my-project/my-models/build.gradle'.
Evaluating project ':my-subproject' using build file '/home/net/dev/my-project/my-subproject/build.gradle'.
Applying dependency management to configuration 'archives' in project 'my-subproject'
Applying dependency management to configuration 'compile' in project 'my-subproject'
Applying dependency management to configuration 'compileClasspath' in project 'my-subproject'
Applying dependency management to configuration 'compileOnly' in project 'my-subproject'
Applying dependency management to configuration 'default' in project 'my-subproject'
Applying dependency management to configuration 'runtime' in project 'my-subproject'
Applying dependency management to configuration 'shadow' in project 'my-subproject'
Applying dependency management to configuration 'testCompile' in project 'my-subproject'
Applying dependency management to configuration 'testCompileClasspath' in project 'my-subproject'
Applying dependency management to configuration 'testCompileOnly' in project 'my-subproject'
Applying dependency management to configuration 'testRuntime' in project 'my-subproject'
Applying dependency management to configuration 'findbugsPlugins' in project 'my-subproject'
Applying dependency management to configuration 'findbugs' in project 'my-subproject'
Applying dependency management to configuration 'provided' in project 'my-subproject'
abc release version : 2.0
ABC tests coming soon ...
Configuring agent
All projects evaluated.
Selected primary task 'stylelint' from project :my-subproject
Tasks to be executed: [task ':my-subproject:lintersInit', task ':my-subproject:nodeSetup', task ':my-subproject:installLinters', task ':my-subproject:stylelint']
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/fileHashes.bin: Size{15230}, CacheStats{hitCount=7924, missCount=15230, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/treeSnapshots.bin: Size{3}, CacheStats{hitCount=0, missCount=2, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/treeSnapshotUsage.bin: Size{1}, CacheStats{hitCount=0, missCount=1, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/fileSnapshotsToTreeSnapshotsIndex.bin: Size{3}, CacheStats{hitCount=0, missCount=3, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/fileSnapshots.bin: Size{7}, CacheStats{hitCount=0, missCount=4, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
In-memory cache of /home/net/dev/my-project/.gradle/2.14/taskArtifacts/taskArtifacts.bin: Size{2}, CacheStats{hitCount=8, missCount=2, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}
:my-subproject:lintersInit (Thread[Daemon worker Thread 2,5,main]) started.
:my-subproject:lintersInit
Skipping task ':my-subproject:lintersInit' as it has no actions.
:my-subproject:lintersInit UP-TO-DATE
:my-subproject:lintersInit (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.005 secs.
:my-subproject:nodeSetup (Thread[Daemon worker Thread 2,5,main]) started.
:my-subproject:nodeSetup
Skipping task ':my-subproject:nodeSetup' as it is up-to-date (took 0.058 secs).
:my-subproject:nodeSetup UP-TO-DATE
:my-subproject:nodeSetup (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.061 secs.
:my-subproject:installLinters (Thread[Daemon worker Thread 2,5,main]) started.
:my-subproject:installLinters
Skipping task ':my-subproject:installLinters' as it is up-to-date (took 0.231 secs).
:my-subproject:installLinters UP-TO-DATE
:my-subproject:installLinters (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.238 secs.
:my-subproject:stylelint (Thread[Daemon worker Thread 2,5,main]) started.
:my-subproject:stylelint
Executing task ':my-subproject:stylelint' (up-to-date check took 0.0 secs) due to:
  Task has not declared any outputs.
Starting process 'command '/home/net/dev/my-project/my-subproject/.gradle/nodejs/node-v0.12.7-linux-x64/bin/node''. Working directory: /home/net/dev/my-project/my-subproject Command: /home/net/dev/my-project/my-subproject/.gradle/nodejs/node-v0.12.7-linux-x64/bin/node /home/net/dev/my-project/my-subproject/node_modules/stylelint/dist/cli.js -f json
Successfully started process 'command '/home/net/dev/my-project/my-subproject/.gradle/nodejs/node-v0.12.7-linux-x64/bin/node''
module.js:338
    throw err;
          ^
Error: Cannot find module '/home/net/dev/my-project/my-subproject/node_modules/stylelint/dist/cli.js'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)
    at node.js:814:3
:my-subproject:stylelint FAILED
:my-subproject:stylelint (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.19 secs.

I'm using Node 0.12.7. Here's the linters block from my gradle.build file:

linters {

    jscs = true

    htmlcs = true

    jshint = true

    stylelint = true

    jsIncludes  = [
        "${frontendJsSrcDir}/**/*.js", 
        "${serverJsSrcDir}/**/*.js"
    ]
    jsExcludes  = [
        "**/bower_components/**", 
        "**/node_modules/**",
        "${frontendJsSrcDir}/resources/dist/js/**",  // filters out bootstrap
        "${frontendJsSrcDir}/components/plumbjs/**",    // filters out plumbjs
        "${frontendJsSrcDir}/customizations/i18n/**"    // filters out angular-i18n
    ]

    htmlIncludes = ["${frontendJsSrcDir}/**/*.html"]
    htmlExcludes = ["**/bower_components/**"]
    stylesIncludes = ["${frontendJsSrcDir}/**/*.less", "${frontendJsSrcDir}/**/*.css"]
    stylesExcludes = ["**/bower_components/**"]

    format = 'checkstyle'
}

Also, how do I:

a. indicate an output file for the linting?
and
b. indicate that I want separate files for html, jsHint, and style linting output?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.