Questions about Development Practices
Dear developers, When going over your way of working adopted with Apache Kafka, I was wondering about the following: *1) Visualizing Technical Debt* Based on my findings (with FindBugs, CheckStyle and JaCoCo), I concluded that Kafka's codebase has a good overall quality with regard to the architecture and individual lines of code (great work!). I was however wondering, have you ever considered to also include reports from e.g. Sonarqube to make this quality more visuable? I believe it's nice for programmers to see that they are delivering a good job (through e.g. the Sonarqube panel after fixing some issues with regard to technical debt), but technical debt would also become even more manageable through the adoption of such a tool (with regard to the latter, one could also think of e.g. using CodeCity). *2) Adaptations from FindBugs and CheckStyle's defaults* Based on the findbugs-exclude.xml and checkstyle.xml, I found that you have decided to deviate from some default values (e.g. exluding bugs with regard to MS (Malicious code vulnerabilities) and NPathComplexity of max 500 instead of the default 200). Is there any documentation on the decision made for these deviations? Or, if not, could you elaborate upon your choices? Thank you very much in advance! Kind regards, Daan Rennings P.S. I am with a team of students from Delft University of Technology, trying to analyze Apache Kafka as part of the course "IN4315 Software Architecture" which will publish it's findings in a GitBook (for more information, please have a look at https://avandeursen.com/2017/01/15/the-collaborative-software-architecture-course/). Answers to both questions would be useful for our analysis of Apache Kafka.
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Description: Four easy to fix warnings (not a complete set of the current FindBugs warnings) as identified by FindBugs and stated in the attached reports: -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null argument (Low priority, Bad Practice) -Primitive boxed just to call toString in org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, Performance) -Primitive boxed just to call toString in new org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, WorkerConfig, OffsetBackingStore) (High Priority, Performance) -Primitive is boxed to call Integer.compareTo(Integer): use Integer.compare(int, int) instead (High Priority, Performance) was: Three easy to fix warnings (not a complete set of the current FindBugs warnings) as identified by FindBugs and stated in the attached reports: -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null argument (Low priority, Bad Practice) -Primitive boxed just to call toString in org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, Performance) -Primitive boxed just to call toString in new org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, WorkerConfig, OffsetBackingStore) (High Priority, Performance) -Primitive is boxed to call Integer.compareTo(Integer): use Integer.compare(int, int) instead (High Priority, Performance) > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Created] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
Daan Rennings created KAFKA-4922: Summary: Fix several FindBugs warnings in Clients and Connect Key: KAFKA-4922 URL: https://issues.apache.org/jira/browse/KAFKA-4922 Project: Kafka Issue Type: Improvement Components: clients, KafkaConnect Affects Versions: 0.10.2.0 Environment: Identified by FindBugs, non-software and -platform specific Reporter: Daan Rennings Priority: Minor Fix For: 0.10.2.1 Attachments: ClientsFindBugsReport.html, ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html Three easy to fix warnings (not a complete set of the current FindBugs warnings) as identified by FindBugs and stated in the attached reports: -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null argument (Low priority, Bad Practice) -Primitive boxed just to call toString in org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, Performance) -Primitive boxed just to call toString in new org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, WorkerConfig, OffsetBackingStore) (High Priority, Performance) -Primitive is boxed to call Integer.compareTo(Integer): use Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Reviewer: Daan Rennings > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Reviewer: (was: Daan Rennings) > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15932623#comment-15932623 ] Daan Rennings commented on KAFKA-4922: -- I would like to tackle this issue myself. However I am not sure how issues are assigned. > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Flags: Patch > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Flags: (was: Patch) > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Updated] (KAFKA-4922) Fix several FindBugs warnings in Clients and Connect
[ https://issues.apache.org/jira/browse/KAFKA-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daan Rennings updated KAFKA-4922: - Status: Patch Available (was: Open) > Fix several FindBugs warnings in Clients and Connect > > > Key: KAFKA-4922 > URL: https://issues.apache.org/jira/browse/KAFKA-4922 > Project: Kafka > Issue Type: Improvement > Components: clients, KafkaConnect >Affects Versions: 0.10.2.0 > Environment: Identified by FindBugs, non-software and -platform > specific >Reporter: Daan Rennings >Priority: Minor > Labels: newbie > Fix For: 0.10.2.1 > > Attachments: ClientsFindBugsReport.html, > ConnectAPIFindBugsReport.html, ConnectRuntimeFindBugsReport.html > > > Four easy to fix warnings (not a complete set of the current FindBugs > warnings) as identified by FindBugs and stated in the attached reports: > -org.apache.kafka.common.utils.Bytes.equals(Object) does not check for null > argument (Low priority, Bad Practice) > -Primitive boxed just to call toString in > org.apache.kafka.connect.data.Decimal.builder(int) (High Priority, > Performance) > -Primitive boxed just to call toString in new > org.apache.kafka.connect.runtime.Worker(String, Time, ConnectorFactory, > WorkerConfig, OffsetBackingStore) (High Priority, Performance) > -Primitive is boxed to call Integer.compareTo(Integer): use > Integer.compare(int, int) instead (High Priority, Performance) -- This message was sent by Atlassian JIRA (v6.3.15#6346)