Git Product home page Git Product logo

qulice's Introduction

logo

EO principles respected here DevOps By Rultor.com We recommend IntelliJ IDEA

mvn PDD status Maven Central codebeat badge codecov Hits-of-Code License

Qulice is a static analysis quality control instrument for Java projects. It combines all the best static analysis instruments and pre-configure them, including Checkstyle and PMD. You don't need to use and configure them individually any more.

Read more at www.qulice.com.

Also, read this blog post first: Strict Control of Java Code Quality.

Just add this plugin to your pom.xml:

<build>
  <plugins>
    <plugin>
      <groupId>com.qulice</groupId>
      <artifactId>qulice-maven-plugin</artifactId>
      <version>0.22.2</version>
      <configuration>
        <license>file:${basedir}/LICENSE.txt</license>
      </configuration>
      <executions>
        <execution>
          <goals>
            <goal>check</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Also remember that we support Maven 3.1+.

The path to license has to be declared in the following format: file:${basedir}/LICENSE.txt, it's the default value, one can use any full path instead of ${basedir}.

Read this short summary of typical mistakes you may encounter in your project.

In order to download schemas required for XML validation you might need proxy setup. Maven proxy is not supported, but standard JVM proxy works fine. To use it just add -Dhttp.proxyHost=HOST -Dhttp.proxyPort=PORT to your MAVEN_OPTS environment variable or to Maven command, e.g. mvn clean verify -Dhttp.proxyHost=HOST -Dhttp.proxyPort=PORT.

How to contribute

Fork repository, make changes, send us a pull request. We will review your changes and apply them to the master branch shortly, provided they don't violate our quality standards. To avoid frustration, before sending us your pull request please run full Maven build:

$ mvn clean install -Pqulice

Keep in mind that JDK 11+ and Maven 3.8+ are the lowest versions you may use.

qulice's People

Contributors

amihaiemil avatar bashkin avatar carlosmiranda avatar dependabot[bot] avatar dpetruha avatar dskalenko avatar graur avatar gumbelmj avatar hdouss avatar ikarsokolov avatar jimmyspivey avatar k3p7i3 avatar kanghj avatar korthout avatar krzyk avatar longtimeago avatar mentiflectax avatar mikailbag avatar mkordas avatar original-brownbear avatar palyuga avatar paulodamaso avatar pnatashap avatar prahladyeri avatar renovate[bot] avatar rultor avatar scott-huang avatar vkuchyn avatar yegor256 avatar zcrusaderz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qulice's Issues

checkstyle check: prohibit comments inside method body

migrated from Trac, where originally posted by yegor256 on 13-Nov-2011 11:47am

Let's create a checkstyle check that will prohibit comments inside method body, for example:

public void init() {
  // configure new factory
  Factory factory = new Factory();
}

Such a comment should be prohibited. In general, method body should not contain any comments inside. The budget is 1 hour.

PDD-0E4F2BF3-45: PMDValidator is a very complex class

migrated from Trac, where originally posted by yegor256 on 13-Nov-2011 2:50pm

Puzzle PDD-0E4F2BF3-45 should be resolved: [source:/trunk/qulice/qulice-pmd/src/main/java/com/qulice/pmd/PMDValidator.java@300:66-69]. PMDValidator class should be refactored to become smaller. New classes should be introduced in the same package. The budget is 1 hour.

maven-invoker-plugin is not working in CI environment

migrated from Trac, where originally posted by yegor256 on 19-Oct-2011 2:39am

When I run mvn -Dci clean install locally everything works fine, but in CI environment there is an exception:

[INFO] [ERROR] Plugin com.qulice:qulice-maven-plugin:1.0-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for com.qulice:qulice-maven-plugin:jar:1.0-SNAPSHOT: Could not find artifact com.qulice:qulice:pom:1.0-SNAPSHOT -> [Help 1]
[INFO] org.apache.maven.plugin.PluginResolutionException: Plugin com.qulice:qulice-maven-plugin:1.0-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for com.qulice:qulice-maven-plugin:jar:1.0-SNAPSHOT
[INFO]  at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:129)
[INFO]  at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getPluginDescriptor(DefaultMavenPluginManager.java:142)
[INFO]  at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getMojoDescriptor(DefaultMavenPluginManager.java:261)
[INFO]  at org.apache.maven.plugin.DefaultBuildPluginManager.getMojoDescriptor(DefaultBuildPluginManager.java:185)
[INFO]  at org.apache.maven.lifecycle.internal.DefaultLifecycleExecutionPlanCalculator.calculateLifecycleMappings(DefaultLifecycleExecutionPlanCalculator.java:280)
[INFO]  at org.apache.maven.lifecycle.internal.DefaultLifecycleExecutionPlanCalculator.calculateMojoExecutions(DefaultLifecycleExecutionPlanCalculator.java:193)
[INFO]  at org.apache.maven.lifecycle.internal.DefaultLifecycleExecutionPlanCalculator.calculateExecutionPlan(DefaultLifecycleExecutionPlanCalculator.java:112)
[INFO]  at org.apache.maven.lifecycle.internal.DefaultLifecycleExecutionPlanCalculator.calculateExecutionPlan(DefaultLifecycleExecutionPlanCalculator.java:129)
[INFO]  at org.apache.maven.lifecycle.internal.BuilderCommon.resolveBuildPlan(BuilderCommon.java:92)
[INFO]  at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[INFO]  at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
[INFO]  at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
[INFO]  at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
[INFO]  at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
[INFO]  at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
[INFO]  at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
[INFO]  at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
[INFO]  at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
[INFO]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[INFO]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[INFO]  at java.lang.reflect.Method.invoke(Method.java:597)
[INFO]  at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
[INFO]  at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
[INFO]  at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
[INFO]  at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
[INFO] Caused by: org.sonatype.aether.resolution.ArtifactDescriptorException: Failed to read artifact descriptor for com.qulice:qulice-maven-plugin:jar:1.0-SNAPSHOT
[INFO]  at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:317)
[INFO]  at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:172)
[INFO]  at org.sonatype.aether.impl.internal.DefaultRepositorySystem.readArtifactDescriptor(DefaultRepositorySystem.java:316)
[INFO]  at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:115)
[INFO]  ... 25 more
[INFO] Caused by: org.apache.maven.model.resolution.UnresolvableModelException: Could not find artifact com.qulice:qulice:pom:1.0-SNAPSHOT
[INFO]  at org.apache.maven.repository.internal.DefaultModelResolver.resolveModel(DefaultModelResolver.java:126)
[INFO]  at org.apache.maven.model.building.DefaultModelBuilder.readParentExternally(DefaultModelBuilder.java:819)
[INFO]  at org.apache.maven.model.building.DefaultModelBuilder.readParent(DefaultModelBuilder.java:670)
[INFO]  at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:308)
[INFO]  at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
[INFO]  at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:308)
[INFO]  ... 28 more
[INFO] Caused by: org.sonatype.aether.resolution.ArtifactResolutionException: Could not find artifact com.qulice:qulice:pom:1.0-SNAPSHOT
[INFO]  at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:541)
[INFO]  at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:220)
[INFO]  at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:197)
[INFO]  at org.apache.maven.repository.internal.DefaultModelResolver.resolveModel(DefaultModelResolver.java:122)
[INFO]  ... 33 more
[INFO] Caused by: org.sonatype.aether.transfer.ArtifactNotFoundException: Could not find artifact com.qulice:qulice:pom:1.0-SNAPSHOT
[INFO]  at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:531)
[INFO]  ... 36 more

This is what I see on my laptop:

/code/qulice$ ls qulice/qulice-maven-plugin/target/local-repo/com/qulice/qulice/1.0-SNAPSHOT/
maven-metadata-local.xml qulice-1.0-SNAPSHOT.pom

This is what I see in CI environment:

$ ls qulice/qulice-maven-plugin/target/local-repo/com/qulice/qulice/1.0-SNAPSHOT/
maven-metadata-local.xml  qulice-1.0-20111019.022638-82.pom

I don't know why it's happening. Will investigate and fix.

let's release version 0.1.2

migrated from Trac, where originally posted by yegor256 on 14-Oct-2011 8:36pm

Let's release 0.1.2 version to Maven Central.

checkstyle doesn't see exceptions from dependencies

migrated from Trac, where originally posted by yegor256 on 2-Nov-2011 5:44pm

Try to create a multi-module project (we actually have one already in invoker tests). One module should define exception class, and another module should declare it in throws for some method.

Checkstyle will complain:

Unable to get class information for FooException. (RedundantThrowsCheck)

I think it's our bug, since we don't provide dependencies to checkstyle.

codenarc validator doesn't report file names

migrated from Trac, where originally posted by yegor256 on 28-Oct-2011 6:52pm

CodeNarcValidator doesn't provide information about file names where a violation is found. This problem makes the validator almost useless.

checkstyle check: open/closed brackets (refactoring)

migrated from Trac, where originally posted by yegor256 on 26-Oct-2011 4:40pm

The implementation we introduced in #16 is not correct. Mostly because it doesn't work with AST tree, but parses the code as a plain text. It will fail with this example:

String.format("this is a bracket: (");

While everything is fine with this code. Let's refactor. The budget is 1 hour.

PDD-3FBB12D7-11: PMD validator doesn't work

migrated from Trac, where originally posted by yegor256 on 18-Oct-2011 7:03pm

Puzzle PDD-3FBB12D7-11 should be fixed: [source:/trunk/qulice/qulice-pmd/src/test/java/com/qulice/pmd/PMDValidatorTest.java@92:112-116]. PMD validator doesn't work at the moment, for some reason. It doesn't detect any problems, but it should. The budget is 2 hours.

extend maven site

migrated from Trac, where originally posted by yegor256 on 14-Oct-2011 12:11am

Maven site should be improved and extended, especially for maven plugin.

let's release 0.1.1

migrated from Trac, where originally posted by yegor256 on 29-Sep-2011 4:22pm

Let's release version 0.1.1.

ChecksIT rename to ChecksTest

migrated from Trac, where originally posted by yegor256 on 24-Oct-2011 7:57pm

Let's get rid of integration test phase in qulice-checkstyle and rename ChecksIT to ChecksTest.

PDD-BD446E6F-45: MultilineJavadocTagsCheck doesn't work

migrated from Trac, where originally posted by yegor256 on 13-Nov-2011 2:56pm

Puzzle PDD-BD446E6F-45 should be resolved: [source:/trunk/qulice/qulice-checkstyle/src/test/java/com/qulice/checkstyle/ChecksTest.java@300:64-64]. MultilineJavadocTagsCheck doesn't work as it should. It's easy to reproduce a problem with existing test. We should just fix it. The budget is 1 hour.

Cobertura validator doesn't work now

migrated from Trac, where originally posted by yegor256 on 19-Oct-2011 2:07am

Cobertura validator doesn't work. I don't know how exactly to implement it properly. The problem is that we should instrument .class files before running unit tests (this is what cobertura:instrument is doing), and then after tests we should build a coverage report (done by cobertura:cobertura) and compare its results with expected values (done by cobertura:check).

Alll these steps should be implemented in one validator.

xml-maven-plugin version is not correct

migrated from Trac, where originally posted by yegor256 on 20-Oct-2011 11:13pm

Unfortunately Qulice depends on xml-maven-plugin 1.0-beta3 which is not longer available in the repositories. There is 1.0 available.

move validators to qulice-validators module

migrated from Trac, where originally posted by yegor256 on 2-Sep-2011 7:09am

Let's move validators to a new module: qulice-validators, and make them decoupled from Maven infrastructure.

checkstyle check: constant is used more than once

migrated from Trac, where originally posted by yegor256 on 17-Oct-2011 10:52pm

We should create a new checkstyle check which will find situations when a private constant declared in a class is used only once. We should prohibit such situations.

The budget is 2 hours.

rename invoker tests properly

migrated from Trac, where originally posted by yegor256 on 19-Oct-2011 4:25pm

Let's rename name, since now their names are misleading.

let's release version 0.1.5

migrated from Trac, where originally posted by yegor256 on 28-Oct-2011 7:22pm

Let's release 0.1.5 with codenarc and a fixed license processing mechanism (works with Windows).

checkstyle check: formatting of multi-line javadoc tags

migrated from Trac, where originally posted by yegor256 on 25-Oct-2011 7:10am

We should create a new checkstyle check (let's call it MultilineJavadocTagsCheck) that will check that javadoc tags are formatted properly when they take a few lines. This is correct:

/**
 * @param text Some text, which description
 *  takes a few lines
 * @return The result
 */

This is not correct:

/**
 * @param text Some text, which description
 * takes a few lines (incorrect formatting)
 * @param text Some text, which description
 *    takes a few lines (incorrect formatting)
 * @return The result
 */

In other words, there should be exactly one indentation space.

The budget is 1 hour (including tests at ChecksIT)

checkstyle check: empty lines between javadoc and subjects

migrated from Trac, where originally posted by yegor256 on 1-Nov-2011 10:08pm

We should create a new checkstyle check (let's call it JavadocLocationCheck), which will validate that there is no empty line between a javadoc and it's subject. Actually, we should check that there is no empty line after a javadoc. For example, this is prohibited:

/**
 * This is text.
 */

private String text;

The budget is 1 hour (incl. unit test and a test in ChecksTest).

validate javadoc comments formatting

migrated from Trac, where originally posted by yegor256 on 2-Oct-2011 8:30am

We should validate that JavaDoc comments are properly formatted. Maybe javadoc native utility can be used, or a custom tool.

configure sites for all modules

migrated from Trac, where originally posted by yegor256 on 18-Oct-2011 6:24pm

Let's add site configurations to all modules.

Cannot build project:Failed to read artifact descriptor for org.codehaus.mojo:xml-maven-plugin:jar:1.0-beta-3-SNAPSHOT:

migrated from Trac, where originally posted by dmitry.bashkin on 19-Oct-2011 8:23am

Apache Maven 3.0.3 (r1075438; 2011-02-28 20:31:09+0300)
Maven home: /mvn/m3
Java version: 1.6.0_24, vendor: Sun Microsystems Inc.
Java home: /usr/lib/jvm/java-6-sun-1.6.0.24/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.35-22-generic", arch: "i386", family: "unix"
-------------------BUILD LOG-----------------------------------------
[ERROR] Failed to execute goal com.qulice:qulice-maven-plugin:1.0-SNAPSHOT:check (default) on project many-violations: Execution default of goal com.qulice:qulice-maven-plugin:1.0-SNAPSHOT:check failed: Can't resolve plugin: Plugin org.codehaus.mojo:xml-maven-plugin:1.0-beta-3-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.codehaus.mojo:xml-maven-plugin:jar:1.0-beta-3-SNAPSHOT: Failure to find org.codehaus.mojo:xml-maven-plugin:pom:1.0-beta-3-SNAPSHOT in file:///home/ashmodeus/.m2/repository was cached in the local repository, resolution will not be reattempted until the update interval of local.central has elapsed or updates are forced -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.qulice:qulice-maven-plugin:1.0-SNAPSHOT:check (default) on project many-violations: Execution default of goal com.qulice:qulice-maven-plugin:1.0-SNAPSHOT:check failed: Can't resolve plugin
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:225)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default of goal com.qulice:qulice-maven-plugin:1.0-SNAPSHOT:check failed: Can't resolve plugin
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:110)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
    ... 19 more
Caused by: java.lang.IllegalStateException: Can't resolve plugin
    at com.qulice.maven.MojoExecutor.descriptor(MojoExecutor.java:140)
    at com.qulice.maven.MojoExecutor.execute(MojoExecutor.java:91)
    at com.qulice.maven.XmlValidator.validate(XmlValidator.java:68)
    at com.qulice.maven.CheckMojo.execute(CheckMojo.java:150)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
    ... 20 more

PDD-BBBD4158-45: JavadocLocationCheck doesn't work

migrated from Trac, where originally posted by yegor256 on 13-Nov-2011 2:54pm

Puzzle PDD-BBBD4158-45 should be resolved: [source:/trunk/qulice/qulice-checkstyle/src/test/java/com/qulice/checkstyle/ChecksTest.java@300:68-69]. JavadocLocationCheck doesn't work as it should. It's easy to reproduce the problem with existing unit test. The budget is 1 hour.

PDD-AC27A39D-8: dependency analysis doesn't work

migrated from Trac, where originally posted by yegor256 on 16-Oct-2011 3:56pm

Puzzle has to be fixed: [source:/trunk/qulice/qulice-maven-plugin/pom.xml@80:223-226]. Dependency analysis doesn't work at the moment, and I can't understand what is the reason. The analysis doesn't understand which dependencies are used in the project which are not. All dependencies are considered as "never used", which is wrong.

The budget is 2 hours.

let's release version 0.1.4

migrated from Trac, where originally posted by yegor256 on 27-Oct-2011 10:57am

Version 0.1.4 should be released.

XML formatting validator

migrated from Trac, where originally posted by yegor256 on 16-Oct-2011 3:47pm

We should implement XML formatting validator, that will validate all .xml files in ${basedir} directory. By correct formatting I understand (this is bare minimum we should implement now):

  • xmllint validity
  • proper indentation (4 spaces, no tabs)
  • no extra spaces (end of line)
  • no duplicated empty lines

As far as I know such a validator doesn't exist: http://stackoverflow.com/questions/6091873

fix the logo

migrated from Trac, where originally posted by yegor256 on 1-Sep-2011 3:50pm

Let's fix the logo.

broken dependency at org.cyclopsgroup:awss3-maven-wagon:0.1

migrated from Trac, where originally posted by dmitry.bashkin on 20-Oct-2011 5:23pm

mvn clean install
[INFO] Scanning for projects...
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]   
[ERROR]   The project com.qulice:qulice:1.0-SNAPSHOT (/home/ashmodeus/work/qulice/trunk/qulice/pom.xml) has 1 error
[ERROR]     Unresolveable build extension: Plugin org.cyclopsgroup:awss3-maven-wagon:0.1 or one of its dependencies could not be resolved: Could not find artifact commons-logging:commons-logging:jar:1.1.1 -> [Help 2]

checkstyle check: open/closed brackets

migrated from Trac, where originally posted by yegor256 on 16-Oct-2011 9:04pm

There should be a new checkstyle rule, that controls how we open/close brackets. The rule is simple - a bracket should be closed on the same line, or it has to be the last symbol on the line.

don't start codenarc if there are no groovy files

migrated from Trac, where originally posted by yegor256 on 1-Nov-2011 9:44am

Codenarc appears to be a very slow thing:

CodeNarc completed: (p1=0; p2=0; p3=0) 67700ms
[INFO] No CodeNarc violations found in 0 files

67 seconds for zero files, it's ridiculous. Let's avoid its execution if there are no groovy files. The budget is 1 hour.

PDD-6AFAD375-45: ConstantUsageCheck doesn't work

migrated from Trac, where originally posted by yegor256 on 13-Nov-2011 2:48pm

Puzzle PDD-6AFAD375-45 should be solved: [source:/trunk/qulice/qulice-checkstyle/src/test/java/com/qulice/checkstyle/ChecksTest.java@300:66].ConstantUsageCheck doesn't work in its current implementation. The problem can be reproduced with an existing test. The budget is 1 hour.

dependencies validator is not working...

migrated from Trac, where originally posted by yegor256 on 27-Sep-2011 5:34pm

I'm trying to validate a project, and dependency validator reports about some problems. At the same time, mvn dependency:analyze-only doesn't report about any..

let's release version 0.1.3

migrated from Trac, where originally posted by yegor256 on 20-Oct-2011 11:17pm

Version 0.1.3 may be released to Maven Central.

Checkstyle 'Unable to get class information for <exception>'

migrated from Trac, where originally posted by krzysztof.krason on 3-Nov-2011 10:31am

When using Qulice I get error such as:

[ERROR] /src/main/java/com/expinia/quartz/PagingJob.java[62]: Unable to get class information for JobExecutionException. (RedundantThrowsCheck)
[ERROR] /src/main/java/com/expinia/quartz/PagingJob.java[84]: Unable to get class information for JobExecutionException. (RedundantThrowsCheck)
[ERROR] /src/main/java/com/expinia/quartz/RefreshJob.java[61]: Unable to get class information for JobExecutionException. (RedundantThrowsCheck)
[ERROR] /src/main/java/com/expinia/web/GenerateTimeFilter.java[55]: Unable to get class information for ServletException. (RedundantThrowsCheck)
[ERROR] /src/main/java/com/expinia/web/GenerateTimeFilter.java[66]: Unable to get class information for ServletException. (RedundantThrowsCheck)
[ERROR] /src/main/java/com/expinia/web/GenerateTimeFilter.java[90]: Unable to get class information for ServletException. (RedundantThrowsCheck)

The above errors didn't appear in case when checkstyle was used.
Both ServletException and JobExecutionException are of course imported. JobExecutionException (quartz) is in dependency at default scope, ServletException (servlets) is at provided scope.

It appears that there are some missing classpath entries when doing checkstyle.

I'm not sure if it's really Qulice issue, but I think that it would be good to look at it (e.g. create a simple project with servlet dependency), because if the code compiles and has correct throws declarations, it should also pass checkstyle.

mvn -Dci verify failed on trunk

migrated from Trac, where originally posted by piotr.dziewonski on 26-Oct-2011 8:29pm

Command "mvn -Dci verify" failed on trunk.
My environment:

  • Windows XP
  • TortoiseSVN (1.7.0)
  • svn:eol-style set to native

Can anyone confirm it's ok and it's an issue related only to my machine/environment.

Description:

#!python
...
[INFO] Building jar: C:\development\qulice_trunk\qulice\qulice-spi\target\qulice-spi-1.0-SNAPSHOT-javadoc.jar
[INFO]
[INFO] --- qulice-maven-plugin:0.1.3:check (default) @ qulice-spi ---
[INFO] Calling org.apache.maven.plugins:maven-enforcer-plugin:1.0-beta-1:enforce...
[INFO] LICENSE found: jar:file:/C:/development/qulice_trunk/qulice/qulice-tk/target/qulice-tk-1.0-SNAPSHOT.jar!/LICENSE.txt
[ERROR] \src\main\java\com\qulice\spi\Environment.java[4]: Line does not match expected header line of ' * '. (HeaderCheck)
[ERROR] \src\main\java\com\qulice\spi\package-info.java[4]: Line does not match expected header line of ' * '. (HeaderCheck)
[ERROR] \src\main\java\com\qulice\spi\ValidationException.java[4]: Line does not match expected header line of ' * '. (HeaderCheck)
[ERROR] \src\main\java\com\qulice\spi\Validator.java[4]: Line does not match expected header line of ' * '. (HeaderCheck)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] qulice-tk ......................................... SUCCESS [20.769s]
[INFO] qulice ............................................ SUCCESS [14.231s]
[INFO] qulice-spi ........................................ FAILURE [14.190s]
[INFO] qulice-checkstyle ................................. SKIPPED
[INFO] qulice-pmd ........................................ SKIPPED
[INFO] qulice-findbugs ................................... SKIPPED
[INFO] qulice-maven-plugin ............................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 55.720s
[INFO] Finished at: Wed Oct 26 22:14:55 CEST 2011
[INFO] Final Memory: 21M/247M
...

Wrong path reported for checkstyle errors

migrated from Trac, where originally posted by anonymous on 2-Nov-2011 8:43pm

Currently Qulice reports checstyle errors like this:

[ERROR] /src/test/java/com/expinia/rest/AssemblerRsTest.java[110]: Missing a Javadoc comment. (JavadocMethodCheck)
[ERROR] /src/test/java/com/expinia/rest/AssemblerRsTest.java[117]: Missing a Javadoc comment. (JavadocMethodCheck)
[ERROR] /src/test/java/com/expinia/web/GenerateTimeFilterTest.java[55]: Missing a Javadoc comment. (JavadocMethodCheck)
[ERROR] /src/test/java/com/expinia/web/GenerateTimeFilterTest.java[87]: Missing a Javadoc comment. (JavadocMethodCheck)

The path always starts the same /src/ it's not a real path, I can't just copy and paste it to editor.
Adding just a . in the beginning would solve the problem for single module project, but in multi-module one, the path will still be wrong (it doesn't provide the path to the module, but still /src.

switch to 0.1.5

migrated from Trac, where originally posted by yegor256 on 28-Oct-2011 8:43pm

Version 0.1.5 has been released to Maven Central. It fixes the problem explained in #33. Let's switch to it.

move validators to qulice-validators module

migrated from Trac, where originally posted by yegor256 on 2-Sep-2011 7:09am

Let's move validators to a new module: qulice-validators, and make them decoupled from Maven infrastructure.

checkstyle check: prohibit string literals concatenation

migrated from Trac, where originally posted by yegor256 on 17-Oct-2011 11:00pm

We should create a checkstyle check that will prohibit concatenation of string literals in any form, for example (all of these should be prohibited):

String a = "done in " + time + " seconds";
System.out.println("File not found: " + file);
x += "done";

The budget is 1 hour.

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.