diff --git a/demo-output.yaml b/demo-output.yaml
index 7d557225..162b18c5 100644
--- a/demo-output.yaml
+++ b/demo-output.yaml
@@ -1,33 +1,33 @@
- name: konveyor-analysis
tags:
- - License=Apache
- - Language=Golang
+ - Backend=Golang
- Infra=Kubernetes
- Java
- - Backend=Golang
+ - Language=Golang
+ - License=Apache
violations:
chain-pom-001:
description: ""
category: potential
incidents:
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: junitjunit4.11test
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: ch.qos.logbacklogback-classic1.1.7
variables:
data: dependency
- innerText: "\n junit\n junit\n 4.11\n test\n "
- matchingXML: junitjunit4.11test
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: io.fabric8kubernetes-client6.0.0
+ innerText: "\n\t\t\tch.qos.logback\n\t\t\tlogback-classic\n\t\t\t1.1.7\n\t\t"
+ matchingXML: ch.qos.logbacklogback-classic1.1.7
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: com.fasterxml.jackson.corejackson-core
variables:
data: dependency
- innerText: "\n io.fabric8\n kubernetes-client\n 6.0.0\n "
- matchingXML: io.fabric8kubernetes-client6.0.0
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: io.fabric8kubernetes-client-api6.0.0
+ innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-core\n\t\t"
+ matchingXML: com.fasterxml.jackson.corejackson-core
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: com.fasterxml.jackson.corejackson-databind
variables:
data: dependency
- innerText: "\n io.fabric8\n kubernetes-client-api\n 6.0.0\n "
- matchingXML: io.fabric8kubernetes-client-api6.0.0
+ innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-databind\n\t\t"
+ matchingXML: com.fasterxml.jackson.corejackson-databind
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
message: com.fasterxml.jacksonjackson-bom${jackson.version}importpom
variables:
@@ -35,53 +35,47 @@
innerText: "\n\t\t\t\tcom.fasterxml.jackson\n\t\t\t\tjackson-bom\n\t\t\t\t${jackson.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
matchingXML: com.fasterxml.jacksonjackson-bom${jackson.version}importpom
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.springframework.dataspring-data-bom${spring-data.version}importpom
- variables:
- data: dependency
- innerText: "\n\t\t\t\torg.springframework.data\n\t\t\t\tspring-data-bom\n\t\t\t\t${spring-data.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
- matchingXML: org.springframework.dataspring-data-bom${spring-data.version}importpom
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
+ message: com.oracle.database.jdbcojdbc821.1.0.0
variables:
data: dependency
- innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-servlet-api\n\t\t\t${tomcat.version}\n\t\t\tprovided\n\t\t"
- matchingXML: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
+ innerText: "\n\t\t\tcom.oracle.database.jdbc\n\t\t\tojdbc8\n\t\t\t21.1.0.0\n\t\t"
+ matchingXML: com.oracle.database.jdbcojdbc821.1.0.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: com.fasterxml.jackson.corejackson-core
+ message: io.konveyor.democonfig-utils1.0.0
variables:
data: dependency
- innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-core\n\t\t"
- matchingXML: com.fasterxml.jackson.corejackson-core
+ innerText: "\n\t\t\tio.konveyor.demo\n\t\t\tconfig-utils\n\t\t\t1.0.0\n\t\t"
+ matchingXML: io.konveyor.democonfig-utils1.0.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: com.fasterxml.jackson.corejackson-databind
+ message: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
variables:
data: dependency
- innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-databind\n\t\t"
- matchingXML: com.fasterxml.jackson.corejackson-databind
+ innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-jdbc\n\t\t\t${tomcat.version}\n\t\t\truntime\n\t\t"
+ matchingXML: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.springframework.dataspring-data-jpa
+ message: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework.data\n\t\t\tspring-data-jpa\n\t\t"
- matchingXML: org.springframework.dataspring-data-jpa
+ innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-servlet-api\n\t\t\t${tomcat.version}\n\t\t\tprovided\n\t\t"
+ matchingXML: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.springframeworkspring-jdbc${spring-framework.version}
+ message: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-jdbc\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-jdbc${spring-framework.version}
+ innerText: "\n\t\t\torg.hibernate.validator\n\t\t\thibernate-validator\n\t\t\t${hibernate-validator.version}\n\t\t"
+ matchingXML: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.springframeworkspring-webmvc${spring-framework.version}
+ message: org.hibernatehibernate-entitymanager${hibernate.version}
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-webmvc\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-webmvc${spring-framework.version}
+ innerText: "\n\t\t\torg.hibernate\n\t\t\thibernate-entitymanager\n\t\t\t${hibernate.version}\n\t\t"
+ matchingXML: org.hibernatehibernate-entitymanager${hibernate.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.springframeworkspring-web${spring-framework.version}
+ message: org.postgresqlpostgresql42.2.23
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-web\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-web${spring-framework.version}
+ innerText: "\n\t\t\torg.postgresql\n\t\t\tpostgresql\n\t\t\t42.2.23\n\t\t"
+ matchingXML: org.postgresqlpostgresql42.2.23
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
message: org.springframework.bootspring-boot-starter-actuator2.5.0
variables:
@@ -89,53 +83,59 @@
innerText: "\n\t\t\torg.springframework.boot\n\t\t\tspring-boot-starter-actuator\n\t\t\t2.5.0\n\t\t"
matchingXML: org.springframework.bootspring-boot-starter-actuator2.5.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
+ message: org.springframework.dataspring-data-bom${spring-data.version}importpom
variables:
data: dependency
- innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-jdbc\n\t\t\t${tomcat.version}\n\t\t\truntime\n\t\t"
- matchingXML: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
+ innerText: "\n\t\t\t\torg.springframework.data\n\t\t\t\tspring-data-bom\n\t\t\t\t${spring-data.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
+ matchingXML: org.springframework.dataspring-data-bom${spring-data.version}importpom
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.hibernatehibernate-entitymanager${hibernate.version}
+ message: org.springframework.dataspring-data-jpa
variables:
data: dependency
- innerText: "\n\t\t\torg.hibernate\n\t\t\thibernate-entitymanager\n\t\t\t${hibernate.version}\n\t\t"
- matchingXML: org.hibernatehibernate-entitymanager${hibernate.version}
+ innerText: "\n\t\t\torg.springframework.data\n\t\t\tspring-data-jpa\n\t\t"
+ matchingXML: org.springframework.dataspring-data-jpa
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
+ message: org.springframeworkspring-jdbc${spring-framework.version}
variables:
data: dependency
- innerText: "\n\t\t\torg.hibernate.validator\n\t\t\thibernate-validator\n\t\t\t${hibernate-validator.version}\n\t\t"
- matchingXML: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-jdbc\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-jdbc${spring-framework.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: ch.qos.logbacklogback-classic1.1.7
+ message: org.springframeworkspring-web${spring-framework.version}
variables:
data: dependency
- innerText: "\n\t\t\tch.qos.logback\n\t\t\tlogback-classic\n\t\t\t1.1.7\n\t\t"
- matchingXML: ch.qos.logbacklogback-classic1.1.7
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-web\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-web${spring-framework.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: com.oracle.database.jdbcojdbc821.1.0.0
+ message: org.springframeworkspring-webmvc${spring-framework.version}
variables:
data: dependency
- innerText: "\n\t\t\tcom.oracle.database.jdbc\n\t\t\tojdbc8\n\t\t\t21.1.0.0\n\t\t"
- matchingXML: com.oracle.database.jdbcojdbc821.1.0.0
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: org.postgresqlpostgresql42.2.23
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-webmvc\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-webmvc${spring-framework.version}
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: io.fabric8kubernetes-client-api6.0.0
variables:
data: dependency
- innerText: "\n\t\t\torg.postgresql\n\t\t\tpostgresql\n\t\t\t42.2.23\n\t\t"
- matchingXML: org.postgresqlpostgresql42.2.23
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: io.konveyor.democonfig-utils1.0.0
+ innerText: "\n io.fabric8\n kubernetes-client-api\n 6.0.0\n "
+ matchingXML: io.fabric8kubernetes-client-api6.0.0
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: io.fabric8kubernetes-client6.0.0
variables:
data: dependency
- innerText: "\n\t\t\tio.konveyor.demo\n\t\t\tconfig-utils\n\t\t\t1.0.0\n\t\t"
- matchingXML: io.konveyor.democonfig-utils1.0.0
+ innerText: "\n io.fabric8\n kubernetes-client\n 6.0.0\n "
+ matchingXML: io.fabric8kubernetes-client6.0.0
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: junitjunit4.11test
+ variables:
+ data: dependency
+ innerText: "\n junit\n junit\n 4.11\n test\n "
+ matchingXML: junitjunit4.11test
file-001:
description: Testing that we can get all the go files in the project
category: potential
labels:
- - testing
- test
+ - testing
incidents:
- uri: file:///analyzer-lsp/examples/golang/dummy/test_functions.go
message: all go files
@@ -187,20 +187,25 @@
description: ""
category: potential
incidents:
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: dependency junit.junit with 4.11 is bad and you should feel bad for using it
- variables:
- name: junit.junit
- version: "4.11"
- uri: file:///analyzer-lsp/examples/java/pom.xml
message: dependency io.fabric8.kubernetes-client with 6.0.0 is bad and you should feel bad for using it
variables:
name: io.fabric8.kubernetes-client
version: 6.0.0
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: dependency junit.junit with 4.11 is bad and you should feel bad for using it
+ variables:
+ name: junit.junit
+ version: "4.11"
lang-ref-001:
description: ""
category: potential
incidents:
+ - uri: file:///analyzer-lsp/examples/golang/main.go
+ message: apiextensions/v1beta1/customresourcedefinitions is deprecated, apiextensions/v1/customresourcedefinitions should be used instead
+ lineNumber: 10
+ variables:
+ file: file:///analyzer-lsp/examples/golang/main.go
- uri: file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java
message: apiextensions/v1beta1/customresourcedefinitions is deprecated, apiextensions/v1/customresourcedefinitions should be used instead
codeSnip: " 1 package com.example.apps;\n 2 \n 3 import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition;\n 4 \n 5 public class App \n 6 {\n 7 \n 8 /**\n 9 * {@link CustomResourceDefinition}\n10 * @param args\n11 */\n12 public static void main( String[] args )\n13 {"
@@ -217,11 +222,6 @@
file: file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java
kind: Method
name: main
- - uri: file:///analyzer-lsp/examples/golang/main.go
- message: apiextensions/v1beta1/customresourcedefinitions is deprecated, apiextensions/v1/customresourcedefinitions should be used instead
- lineNumber: 10
- variables:
- file: file:///analyzer-lsp/examples/golang/main.go
lang-ref-003:
description: ""
category: potential
@@ -235,9 +235,9 @@
kind: Module
name: io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition
- uri: file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java
- message: java found apiextensions/v1/customresourcedefinitions found file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java:14
- codeSnip: " 4 \n 5 public class App \n 6 {\n 7 \n 8 /**\n 9 * {@link CustomResourceDefinition}\n10 * @param args\n11 */\n12 public static void main( String[] args )\n13 {\n14 CustomResourceDefinition crd = new CustomResourceDefinition();\n15 System.out.println( crd );\n16 \n17 GenericClass element = new GenericClass(\"Hello world!\");\n18 element.get();\n19 }\n20 }\n"
- lineNumber: 14
+ message: java found apiextensions/v1/customresourcedefinitions found file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java:9
+ codeSnip: " 1 package com.example.apps;\n 2 \n 3 import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition;\n 4 \n 5 public class App \n 6 {\n 7 \n 8 /**\n 9 * {@link CustomResourceDefinition}\n10 * @param args\n11 */\n12 public static void main( String[] args )\n13 {\n14 CustomResourceDefinition crd = new CustomResourceDefinition();\n15 System.out.println( crd );\n16 \n17 GenericClass element = new GenericClass(\"Hello world!\");\n18 element.get();\n19 }"
+ lineNumber: 9
variables:
file: file:///analyzer-lsp/examples/java/src/main/java/com/example/apps/App.java
kind: Method
@@ -360,24 +360,24 @@
description: ""
category: potential
incidents:
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: POM XML dependencies - 'junitjunit4.11test'
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: POM XML dependencies - 'ch.qos.logbacklogback-classic1.1.7'
variables:
data: dependency
- innerText: "\n junit\n junit\n 4.11\n test\n "
- matchingXML: junitjunit4.11test
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: POM XML dependencies - 'io.fabric8kubernetes-client6.0.0'
+ innerText: "\n\t\t\tch.qos.logback\n\t\t\tlogback-classic\n\t\t\t1.1.7\n\t\t"
+ matchingXML: ch.qos.logbacklogback-classic1.1.7
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: POM XML dependencies - 'com.fasterxml.jackson.corejackson-core'
variables:
data: dependency
- innerText: "\n io.fabric8\n kubernetes-client\n 6.0.0\n "
- matchingXML: io.fabric8kubernetes-client6.0.0
- - uri: file:///analyzer-lsp/examples/java/pom.xml
- message: POM XML dependencies - 'io.fabric8kubernetes-client-api6.0.0'
+ innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-core\n\t\t"
+ matchingXML: com.fasterxml.jackson.corejackson-core
+ - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
+ message: POM XML dependencies - 'com.fasterxml.jackson.corejackson-databind'
variables:
data: dependency
- innerText: "\n io.fabric8\n kubernetes-client-api\n 6.0.0\n "
- matchingXML: io.fabric8kubernetes-client-api6.0.0
+ innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-databind\n\t\t"
+ matchingXML: com.fasterxml.jackson.corejackson-databind
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
message: POM XML dependencies - 'com.fasterxml.jacksonjackson-bom${jackson.version}importpom'
variables:
@@ -385,53 +385,47 @@
innerText: "\n\t\t\t\tcom.fasterxml.jackson\n\t\t\t\tjackson-bom\n\t\t\t\t${jackson.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
matchingXML: com.fasterxml.jacksonjackson-bom${jackson.version}importpom
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.springframework.dataspring-data-bom${spring-data.version}importpom'
- variables:
- data: dependency
- innerText: "\n\t\t\t\torg.springframework.data\n\t\t\t\tspring-data-bom\n\t\t\t\t${spring-data.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
- matchingXML: org.springframework.dataspring-data-bom${spring-data.version}importpom
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.apache.tomcattomcat-servlet-api${tomcat.version}provided'
+ message: POM XML dependencies - 'com.oracle.database.jdbcojdbc821.1.0.0'
variables:
data: dependency
- innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-servlet-api\n\t\t\t${tomcat.version}\n\t\t\tprovided\n\t\t"
- matchingXML: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
+ innerText: "\n\t\t\tcom.oracle.database.jdbc\n\t\t\tojdbc8\n\t\t\t21.1.0.0\n\t\t"
+ matchingXML: com.oracle.database.jdbcojdbc821.1.0.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'com.fasterxml.jackson.corejackson-core'
+ message: POM XML dependencies - 'io.konveyor.democonfig-utils1.0.0'
variables:
data: dependency
- innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-core\n\t\t"
- matchingXML: com.fasterxml.jackson.corejackson-core
+ innerText: "\n\t\t\tio.konveyor.demo\n\t\t\tconfig-utils\n\t\t\t1.0.0\n\t\t"
+ matchingXML: io.konveyor.democonfig-utils1.0.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'com.fasterxml.jackson.corejackson-databind'
+ message: POM XML dependencies - 'org.apache.tomcattomcat-jdbc${tomcat.version}runtime'
variables:
data: dependency
- innerText: "\n\t\t\tcom.fasterxml.jackson.core\n\t\t\tjackson-databind\n\t\t"
- matchingXML: com.fasterxml.jackson.corejackson-databind
+ innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-jdbc\n\t\t\t${tomcat.version}\n\t\t\truntime\n\t\t"
+ matchingXML: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.springframework.dataspring-data-jpa'
+ message: POM XML dependencies - 'org.apache.tomcattomcat-servlet-api${tomcat.version}provided'
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework.data\n\t\t\tspring-data-jpa\n\t\t"
- matchingXML: org.springframework.dataspring-data-jpa
+ innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-servlet-api\n\t\t\t${tomcat.version}\n\t\t\tprovided\n\t\t"
+ matchingXML: org.apache.tomcattomcat-servlet-api${tomcat.version}provided
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.springframeworkspring-jdbc${spring-framework.version}'
+ message: POM XML dependencies - 'org.hibernate.validatorhibernate-validator${hibernate-validator.version}'
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-jdbc\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-jdbc${spring-framework.version}
+ innerText: "\n\t\t\torg.hibernate.validator\n\t\t\thibernate-validator\n\t\t\t${hibernate-validator.version}\n\t\t"
+ matchingXML: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.springframeworkspring-webmvc${spring-framework.version}'
+ message: POM XML dependencies - 'org.hibernatehibernate-entitymanager${hibernate.version}'
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-webmvc\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-webmvc${spring-framework.version}
+ innerText: "\n\t\t\torg.hibernate\n\t\t\thibernate-entitymanager\n\t\t\t${hibernate.version}\n\t\t"
+ matchingXML: org.hibernatehibernate-entitymanager${hibernate.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.springframeworkspring-web${spring-framework.version}'
+ message: POM XML dependencies - 'org.postgresqlpostgresql42.2.23'
variables:
data: dependency
- innerText: "\n\t\t\torg.springframework\n\t\t\tspring-web\n\t\t\t${spring-framework.version}\n\t\t"
- matchingXML: org.springframeworkspring-web${spring-framework.version}
+ innerText: "\n\t\t\torg.postgresql\n\t\t\tpostgresql\n\t\t\t42.2.23\n\t\t"
+ matchingXML: org.postgresqlpostgresql42.2.23
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
message: POM XML dependencies - 'org.springframework.bootspring-boot-starter-actuator2.5.0'
variables:
@@ -439,47 +433,53 @@
innerText: "\n\t\t\torg.springframework.boot\n\t\t\tspring-boot-starter-actuator\n\t\t\t2.5.0\n\t\t"
matchingXML: org.springframework.bootspring-boot-starter-actuator2.5.0
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.apache.tomcattomcat-jdbc${tomcat.version}runtime'
+ message: POM XML dependencies - 'org.springframework.dataspring-data-bom${spring-data.version}importpom'
variables:
data: dependency
- innerText: "\n\t\t\torg.apache.tomcat\n\t\t\ttomcat-jdbc\n\t\t\t${tomcat.version}\n\t\t\truntime\n\t\t"
- matchingXML: org.apache.tomcattomcat-jdbc${tomcat.version}runtime
+ innerText: "\n\t\t\t\torg.springframework.data\n\t\t\t\tspring-data-bom\n\t\t\t\t${spring-data.version}\n\t\t\t\timport\n\t\t\t\tpom\n\t\t\t"
+ matchingXML: org.springframework.dataspring-data-bom${spring-data.version}importpom
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.hibernatehibernate-entitymanager${hibernate.version}'
+ message: POM XML dependencies - 'org.springframework.dataspring-data-jpa'
variables:
data: dependency
- innerText: "\n\t\t\torg.hibernate\n\t\t\thibernate-entitymanager\n\t\t\t${hibernate.version}\n\t\t"
- matchingXML: org.hibernatehibernate-entitymanager${hibernate.version}
+ innerText: "\n\t\t\torg.springframework.data\n\t\t\tspring-data-jpa\n\t\t"
+ matchingXML: org.springframework.dataspring-data-jpa
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.hibernate.validatorhibernate-validator${hibernate-validator.version}'
+ message: POM XML dependencies - 'org.springframeworkspring-jdbc${spring-framework.version}'
variables:
data: dependency
- innerText: "\n\t\t\torg.hibernate.validator\n\t\t\thibernate-validator\n\t\t\t${hibernate-validator.version}\n\t\t"
- matchingXML: org.hibernate.validatorhibernate-validator${hibernate-validator.version}
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-jdbc\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-jdbc${spring-framework.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'ch.qos.logbacklogback-classic1.1.7'
+ message: POM XML dependencies - 'org.springframeworkspring-web${spring-framework.version}'
variables:
data: dependency
- innerText: "\n\t\t\tch.qos.logback\n\t\t\tlogback-classic\n\t\t\t1.1.7\n\t\t"
- matchingXML: ch.qos.logbacklogback-classic1.1.7
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-web\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-web${spring-framework.version}
- uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'com.oracle.database.jdbcojdbc821.1.0.0'
+ message: POM XML dependencies - 'org.springframeworkspring-webmvc${spring-framework.version}'
variables:
data: dependency
- innerText: "\n\t\t\tcom.oracle.database.jdbc\n\t\t\tojdbc8\n\t\t\t21.1.0.0\n\t\t"
- matchingXML: com.oracle.database.jdbcojdbc821.1.0.0
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'org.postgresqlpostgresql42.2.23'
+ innerText: "\n\t\t\torg.springframework\n\t\t\tspring-webmvc\n\t\t\t${spring-framework.version}\n\t\t"
+ matchingXML: org.springframeworkspring-webmvc${spring-framework.version}
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: POM XML dependencies - 'io.fabric8kubernetes-client-api6.0.0'
variables:
data: dependency
- innerText: "\n\t\t\torg.postgresql\n\t\t\tpostgresql\n\t\t\t42.2.23\n\t\t"
- matchingXML: org.postgresqlpostgresql42.2.23
- - uri: file:///analyzer-lsp/examples/customers-tomcat-legacy/pom.xml
- message: POM XML dependencies - 'io.konveyor.democonfig-utils1.0.0'
+ innerText: "\n io.fabric8\n kubernetes-client-api\n 6.0.0\n "
+ matchingXML: io.fabric8kubernetes-client-api6.0.0
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: POM XML dependencies - 'io.fabric8kubernetes-client6.0.0'
variables:
data: dependency
- innerText: "\n\t\t\tio.konveyor.demo\n\t\t\tconfig-utils\n\t\t\t1.0.0\n\t\t"
- matchingXML: io.konveyor.democonfig-utils1.0.0
+ innerText: "\n io.fabric8\n kubernetes-client\n 6.0.0\n "
+ matchingXML: io.fabric8kubernetes-client6.0.0
+ - uri: file:///analyzer-lsp/examples/java/pom.xml
+ message: POM XML dependencies - 'junitjunit4.11test'
+ variables:
+ data: dependency
+ innerText: "\n junit\n junit\n 4.11\n test\n "
+ matchingXML: junitjunit4.11test
errors:
error-rule-001: |-
unable to get query info: yaml: unmarshal errors:
diff --git a/output/v1/konveyor/violations.go b/output/v1/konveyor/violations.go
index d6772be6..f7b9b785 100644
--- a/output/v1/konveyor/violations.go
+++ b/output/v1/konveyor/violations.go
@@ -2,6 +2,8 @@ package konveyor
import (
"encoding/json"
+ "sort"
+ "strings"
"go.lsp.dev/uri"
)
@@ -32,6 +34,14 @@ type RuleSet struct {
Skipped []string `yaml:"skipped,omitempty" json:"skipped,omitempty"`
}
+func (r RuleSet) MarshalYAML() (interface{}, error) {
+ sort.Strings(r.Tags)
+ sort.Strings(r.Unmatched)
+ sort.Strings(r.Skipped)
+
+ return r, nil
+}
+
type Category string
var (
@@ -73,6 +83,42 @@ type Violation struct {
Effort *int `yaml:"effort,omitempty" json:"effort,omitempty"`
}
+func (v Violation) MarshalYAML() (interface{}, error) {
+ sort.Strings(v.Labels)
+ sort.SliceStable(v.Incidents, func(i, j int) bool {
+ if v.Incidents[i].URI != v.Incidents[j].URI {
+ return v.Incidents[i].URI < v.Incidents[j].URI
+ }
+
+ if v.Incidents[i].Message != v.Incidents[j].Message {
+ return v.Incidents[i].Message < v.Incidents[j].Message
+ }
+
+ if v.Incidents[i].CodeSnip != v.Incidents[j].CodeSnip {
+ return v.Incidents[i].CodeSnip < v.Incidents[j].CodeSnip
+ }
+
+ if *v.Incidents[i].LineNumber != *v.Incidents[j].LineNumber {
+ return *v.Incidents[i].LineNumber < *v.Incidents[j].LineNumber
+ }
+
+ return false
+ })
+ sort.SliceStable(v.Links, func(i, j int) bool {
+ if v.Links[i].URL != v.Links[j].URL {
+ return v.Links[i].URL < v.Links[j].URL
+ }
+
+ if v.Links[i].Title != v.Links[j].Title {
+ return v.Links[i].Title < v.Links[j].Title
+ }
+
+ return false
+ })
+
+ return v, nil
+}
+
// Incident defines instance of a violation
type Incident struct {
// URI defines location in the codebase where violation is found
@@ -104,6 +150,46 @@ type Dep struct {
FileURIPrefix string `json:"prefix,omitempty" yaml:"prefix,omitempty"`
}
+func (d Dep) MarshalYAML() (interface{}, error) {
+ sort.Strings(d.Labels)
+
+ return d, nil
+}
+
+func (d Dep) cmpLess(other Dep) bool {
+ if d.Name != other.Name {
+ return d.Name < other.Name
+ }
+
+ if d.Version != other.Version {
+ return d.Version < other.Version
+ }
+
+ if d.Type != other.Type {
+ return d.Type < other.Type
+ }
+
+ if d.Indirect != other.Indirect {
+ return !d.Indirect && other.Indirect
+ }
+
+ if d.ResolvedIdentifier != other.ResolvedIdentifier {
+ return d.ResolvedIdentifier < other.ResolvedIdentifier
+ }
+
+ dLabels := strings.Join(d.Labels, ",")
+ otherLabels := strings.Join(other.Labels, ",")
+ if dLabels != otherLabels {
+ return dLabels < otherLabels
+ }
+
+ if d.FileURIPrefix != other.FileURIPrefix {
+ return d.FileURIPrefix < other.FileURIPrefix
+ }
+
+ return false
+}
+
func (d *Dep) GetLabels() []string {
return d.Labels
}