cfb.git
20 months agoAdd support for pegging the JVM version when checking code coverage. master
Chris Jaekl [Tue, 28 Nov 2017 13:19:04 +0000 (22:19 +0900)]
Add support for pegging the JVM version when checking code coverage.

It seems that jcov has trouble with Java 9, and has been failing since I upgraded the
system default JVM to Java 9.  This change consults JAVA_HOME for the JVM path, so that
Jenkins can override it and have a successful build.

2 years agoadds footer to the HTML report.
Chris Jaekl [Mon, 9 Jan 2017 12:44:19 +0000 (21:44 +0900)]
adds footer to the HTML report.

Links back to the web site, describing what CFB is.

2 years agoadds support for fields as well as local variables.
Chris Jaekl [Sat, 7 Jan 2017 12:23:56 +0000 (21:23 +0900)]
adds support for fields as well as local variables.

3 years agoDisplay LocalVariables along with Locations in the html report.
Chris Jaekl [Sat, 16 Jan 2016 13:25:00 +0000 (22:25 +0900)]
Display LocalVariables along with Locations in the html report.

3 years agoRemove jar files that are no longer needed from setcp.sh
Chris Jaekl [Sat, 9 Jan 2016 14:13:23 +0000 (23:13 +0900)]
Remove jar files that are no longer needed from setcp.sh

3 years agoAddress some edge cases related to bootstrapping a fresh system.
Chris Jaekl [Sat, 9 Jan 2016 13:43:44 +0000 (22:43 +0900)]
Address some edge cases related to bootstrapping a fresh system.
Improve diagnostics when command line is not quite correct.

3 years agoMore unit testing.
Chris Jaekl [Sat, 9 Jan 2016 09:29:27 +0000 (18:29 +0900)]
More unit testing.

3 years agoAnother unit test.
Chris Jaekl [Sat, 9 Jan 2016 09:27:53 +0000 (18:27 +0900)]
Another unit test.

3 years agoClean up error handling to make things slightly friendlier on an initial install.
Chris Jaekl [Sat, 9 Jan 2016 09:19:52 +0000 (18:19 +0900)]
Clean up error handling to make things slightly friendlier on an initial install.

3 years agoRestructure use of static field m_bundle to improve the odds that multiple instances...
Chris Jaekl [Fri, 1 Jan 2016 12:51:46 +0000 (21:51 +0900)]
Restructure use of static field m_bundle to improve the odds that multiple instances will function as expected.

3 years agoFurther unit tests: CFB and Delta
Chris Jaekl [Thu, 31 Dec 2015 09:48:02 +0000 (18:48 +0900)]
Further unit tests:  CFB and Delta

3 years agoFurther unit tests: Util and Delta.
Chris Jaekl [Thu, 31 Dec 2015 07:11:53 +0000 (16:11 +0900)]
Further unit tests:  Util and Delta.

3 years agoFurther unit tests: loading a variable.
Chris Jaekl [Wed, 30 Dec 2015 09:51:18 +0000 (18:51 +0900)]
Further unit tests:  loading a variable.

3 years agoFurther unit tests: getVarId()
Chris Jaekl [Wed, 30 Dec 2015 09:46:32 +0000 (18:46 +0900)]
Further unit tests:  getVarId()

3 years agoFurther unit tests: getVar()
Chris Jaekl [Wed, 30 Dec 2015 09:35:17 +0000 (18:35 +0900)]
Further unit tests:  getVar()

3 years agoAdjust unit test for intentional behaviour change of Util.objsAreEqual().
Chris Jaekl [Wed, 30 Dec 2015 08:52:38 +0000 (17:52 +0900)]
Adjust unit test for intentional behaviour change of Util.objsAreEqual().

3 years agoAdd further unit tests.
Chris Jaekl [Wed, 30 Dec 2015 08:49:31 +0000 (17:49 +0900)]
Add further unit tests.

3 years agoAvoid unit test failures when cfb.properties is not found in the classpath.
Chris Jaekl [Wed, 30 Dec 2015 07:25:11 +0000 (16:25 +0900)]
Avoid unit test failures when cfb.properties is not found in the classpath.

3 years agoAdd extra files that should have been included in the previous commit.
Chris Jaekl [Wed, 30 Dec 2015 06:21:40 +0000 (15:21 +0900)]
Add extra files that should have been included in the previous commit.

3 years agoAdd unit tests. Make DbStore handle cases where the bug type or category
Chris Jaekl [Wed, 30 Dec 2015 06:11:50 +0000 (15:11 +0900)]
Add unit tests.  Make DbStore handle cases where the bug type or category
is not present in the message collection more gracefully.

3 years agoImplement BugCollection.hashCode()
Chris Jaekl [Sun, 27 Dec 2015 13:20:45 +0000 (22:20 +0900)]
Implement BugCollection.hashCode()

3 years agoWork toward improving solidity. Add a few more unit tests, and some toString()
Chris Jaekl [Sun, 27 Dec 2015 13:13:17 +0000 (22:13 +0900)]
Work toward improving solidity.  Add a few more unit tests, and some toString()
methods that make debugging variable dumps more useful.

3 years agoCheck edge cases in Location getters
Chris Jaekl [Mon, 14 Dec 2015 11:32:00 +0000 (20:32 +0900)]
Check edge cases in Location getters

3 years agoCorrect mistaken condition in previous checkin.
Chris Jaekl [Sun, 13 Dec 2015 12:13:35 +0000 (21:13 +0900)]
Correct mistaken condition in previous checkin.

3 years agoAvoid NullPointerException in HtmlReport.writeSummary().
Chris Jaekl [Sun, 13 Dec 2015 12:06:36 +0000 (21:06 +0900)]
Avoid NullPointerException in HtmlReport.writeSummary().

3 years agoFix null-pointer dereference in Delta.java.
Chris Jaekl [Sun, 13 Dec 2015 11:09:38 +0000 (20:09 +0900)]
Fix null-pointer dereference in Delta.java.

3 years agoStore db parameters in Config object, not in CFB object.
Chris Jaekl [Sun, 13 Dec 2015 11:05:37 +0000 (20:05 +0900)]
Store db parameters in Config object, not in CFB object.

3 years agoAdd the concept of "Project Name" to the RUNS table in the database.
Chris Jaekl [Sun, 13 Dec 2015 09:17:11 +0000 (18:17 +0900)]
Add the concept of "Project Name" to the RUNS table in the database.

This permits multiple projects to share one database, keeping delta comparisons distinct between them.

3 years agoRun CFB from the jenkins_invoke directory, not from the directory being analyzed.
Chris Jaekl [Sun, 13 Dec 2015 05:53:45 +0000 (14:53 +0900)]
Run CFB from the jenkins_invoke directory, not from the directory being analyzed.

3 years agoImprove jenkins_invoke.sh
Chris Jaekl [Sun, 13 Dec 2015 05:31:11 +0000 (14:31 +0900)]
Improve jenkins_invoke.sh

3 years agoDM_DEFAULT_ENCODING: Be explicit that we're using 7-bit ASCII when sending email.
Chris Jaekl [Sun, 13 Dec 2015 05:15:34 +0000 (14:15 +0900)]
DM_DEFAULT_ENCODING:  Be explicit that we're using 7-bit ASCII when sending email.

3 years agoMS_SHOULD_BE_FINAL: make constant String "final"
Chris Jaekl [Sun, 13 Dec 2015 05:06:11 +0000 (14:06 +0900)]
MS_SHOULD_BE_FINAL:  make constant String "final"

3 years agoExclude "METHOD_CALLED" references from consideration as a bug's principal location.
Chris Jaekl [Sun, 13 Dec 2015 04:32:47 +0000 (13:32 +0900)]
Exclude "METHOD_CALLED" references from consideration as a bug's principal location.

3 years agoSwap MimeType and Content to their correct positions when invoking MimePart
Chris Jaekl [Sat, 12 Dec 2015 14:46:30 +0000 (23:46 +0900)]
Swap MimeType and Content to their correct positions when invoking MimePart

3 years agoDM_DEFAULT_ENCODING: Be explicit that our HTML gets written in UTF-8.
Chris Jaekl [Sat, 12 Dec 2015 14:09:48 +0000 (23:09 +0900)]
DM_DEFAULT_ENCODING:  Be explicit that our HTML gets written in UTF-8.

3 years agoDM_DEFAULT_ENCODING: Be explicit that we want the system default encoding.
Chris Jaekl [Sat, 12 Dec 2015 14:00:51 +0000 (23:00 +0900)]
DM_DEFAULT_ENCODING:  Be explicit that we want the system default encoding.

3 years agoSQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING: Invoke nextval() using...
Chris Jaekl [Sat, 12 Dec 2015 12:33:27 +0000 (21:33 +0900)]
SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING:  Invoke nextval() using a prepared statement parameter.

3 years agoSendMail: add quotes around boundary type specification.
Chris Jaekl [Sat, 12 Dec 2015 11:44:29 +0000 (20:44 +0900)]
SendMail:  add quotes around boundary type specification.

3 years agoAddress EI_EXPOSE_REP and EI_EXPOSE_REP2 FindBugs warnings.
Chris Jaekl [Sat, 12 Dec 2015 10:39:46 +0000 (19:39 +0900)]
Address EI_EXPOSE_REP and EI_EXPOSE_REP2 FindBugs warnings.

Making the internal contents of our class mutable by outsiders without our knowledge may be considered harmful.

3 years agoUpdate script to invoke an analysis from inside Jenkins
Chris Jaekl [Sat, 12 Dec 2015 09:12:15 +0000 (18:12 +0900)]
Update script to invoke an analysis from inside Jenkins

3 years agoFix compile error
Chris Jaekl [Sat, 12 Dec 2015 07:48:42 +0000 (16:48 +0900)]
Fix compile error

3 years agoIf a build/test error occurs, treat it as an error
Chris Jaekl [Sat, 12 Dec 2015 07:46:21 +0000 (16:46 +0900)]
If a build/test error occurs, treat it as an error

3 years agoStart support for Sqlite
Chris Jaekl [Fri, 11 Dec 2015 14:34:48 +0000 (23:34 +0900)]
Start support for Sqlite

3 years agoRemove debug logging.
Chris Jaekl [Sun, 1 Nov 2015 05:54:18 +0000 (14:54 +0900)]
Remove debug logging.

3 years agoAdd debug logging.
Chris Jaekl [Sun, 1 Nov 2015 05:24:45 +0000 (14:24 +0900)]
Add debug logging.

3 years agoSendMail: make charset expected on socket reads explicit.
Chris Jaekl [Sun, 1 Nov 2015 02:23:46 +0000 (11:23 +0900)]
SendMail:  make charset expected on socket reads explicit.

3 years agoCommand: make reliance on system default encoding for reading streams explicit.
Chris Jaekl [Sun, 1 Nov 2015 02:11:46 +0000 (11:11 +0900)]
Command:  make reliance on system default encoding for reading streams explicit.

3 years agoanalyze.sh: script to invoke CFB from Jenkins.
Chris Jaekl [Sun, 1 Nov 2015 01:56:39 +0000 (10:56 +0900)]
analyze.sh:  script to invoke CFB from Jenkins.

Note that some reworking will be needed to make this generally applicable.

3 years agoSendMail: after '.' that terminates "DATA", send only one CRLF, not two.
Chris Jaekl [Sun, 1 Nov 2015 01:55:05 +0000 (10:55 +0900)]
SendMail:  after '.' that terminates "DATA", send only one CRLF, not two.

3 years agoDon't try to output HTML unless an output file is specified.
Chris Jaekl [Sat, 31 Oct 2015 13:49:01 +0000 (22:49 +0900)]
Don't try to output HTML unless an output file is specified.
(Dereferencing a null pointer is considered harmful).

3 years agoSwitch from javax.mail to net.jaekl.qd.SendMail.
Chris Jaekl [Sat, 31 Oct 2015 13:29:22 +0000 (22:29 +0900)]
Switch from javax.mail to net.jaekl.qd.SendMail.

3 years agoAdd unit tests for Config.java.
Chris Jaekl [Sat, 31 Oct 2015 03:06:09 +0000 (12:06 +0900)]
Add unit tests for Config.java.

3 years agoAdd a bare-bones implementation of SMTP.
Chris Jaekl [Thu, 29 Oct 2015 13:52:09 +0000 (22:52 +0900)]
Add a bare-bones implementation of SMTP.
Needs testing.

3 years agoAdd email notifications.
Chris Jaekl [Mon, 26 Oct 2015 13:37:13 +0000 (22:37 +0900)]
Add email notifications.

3 years agoAdd ability to output HTML report of differences found between two versions.
Chris Jaekl [Sun, 4 Oct 2015 13:06:50 +0000 (22:06 +0900)]
Add ability to output HTML report of differences found between two versions.

3 years ago(Finally) reach the point where we have some useful, if basic, functionality.
Chris Jaekl [Sat, 3 Oct 2015 14:35:55 +0000 (23:35 +0900)]
(Finally) reach the point where we have some useful, if basic, functionality.
Delta now computes difference between previous run and the current one,
and supports a text dump of the new, fixed, and old bugs.

3 years agoAdd ability to load previously found bugs back out of the database.
Chris Jaekl [Sat, 3 Oct 2015 12:51:41 +0000 (21:51 +0900)]
Add ability to load previously found bugs back out of the database.

3 years agoAvoid deprecation warnings in ResultSetMock.
Chris Jaekl [Sat, 3 Oct 2015 08:17:14 +0000 (17:17 +0900)]
Avoid deprecation warnings in ResultSetMock.

3 years agoAdd some unit testing of the CfbSchema.
Chris Jaekl [Sat, 3 Oct 2015 07:56:54 +0000 (16:56 +0900)]
Add some unit testing of the CfbSchema.

3 years agoPartial implemenation of load-Analysis code.
Chris Jaekl [Tue, 29 Sep 2015 13:23:09 +0000 (22:23 +0900)]
Partial implemenation of load-Analysis code.

Modified storage of TIMESTAMPTZ to ye olde workaround:  store milliseconds since the Unix epoch.
It seems that, even in 2015, we still haven't got a reliable mechanism to load TIMESTAMPTZ
via JDBC, unless you roll your own converter from java.sql.Timestamp.toString(), and that is
way too brittle (and more work than I feel like engaging in).

3 years agoAdd computation of deltas (differences between Analysis runs).
Chris Jaekl [Mon, 28 Sep 2015 13:41:10 +0000 (22:41 +0900)]
Add computation of deltas (differences between Analysis runs).

3 years agoAdd local variable information to DB store.
Chris Jaekl [Sun, 27 Sep 2015 13:06:25 +0000 (22:06 +0900)]
Add local variable information to DB store.

3 years agoChange schema definition mechanism, to simplify references to table columns in SQL...
Chris Jaekl [Sun, 27 Sep 2015 08:51:36 +0000 (17:51 +0900)]
Change schema definition mechanism, to simplify references to table columns in SQL code.

3 years agoAdd found bugs to database.
Chris Jaekl [Sun, 27 Sep 2015 03:11:04 +0000 (12:11 +0900)]
Add found bugs to database.

3 years agoSome progress toward implementing store(Analysis).
Chris Jaekl [Sat, 26 Sep 2015 14:25:00 +0000 (23:25 +0900)]
Some progress toward implementing store(Analysis).

3 years agoA few changes:
Chris Jaekl [Fri, 25 Sep 2015 13:01:59 +0000 (22:01 +0900)]
A few changes:

(1) improve sequence support so that sequences can have their next value fetched from the DB

(2) add option ("-r") to remove (drop) the schema and all associated data from the db

(3) populate the bugs and categories tables when creating the database

3 years agoRestructure database code.
Chris Jaekl [Thu, 24 Sep 2015 13:06:49 +0000 (22:06 +0900)]
Restructure database code.

3 years agoAdd code to load bug categories and patterns from the FindBugs messages.xml file.
Chris Jaekl [Wed, 23 Sep 2015 12:56:56 +0000 (21:56 +0900)]
Add code to load bug categories and patterns from the FindBugs messages.xml file.

3 years agoUnit testing: confirm that Analyzer can parse some sample XML
Chris Jaekl [Sun, 6 Sep 2015 12:07:01 +0000 (21:07 +0900)]
Unit testing:  confirm that Analyzer can parse some sample XML
input, and that the result passes some very basic sanity checks.

3 years agoA bit more testing
Chris Jaekl [Sun, 6 Sep 2015 11:07:25 +0000 (20:07 +0900)]
A bit more testing

3 years agoAdd jcov jars.
Chris Jaekl [Sun, 6 Sep 2015 09:19:01 +0000 (18:19 +0900)]
Add jcov jars.

3 years agoAdd missing file that should have been in previous commit.
Chris Jaekl [Sun, 6 Sep 2015 06:24:24 +0000 (15:24 +0900)]
Add missing file that should have been in previous commit.

3 years agoImprove XML parsing to handle attributes as well.
Chris Jaekl [Sun, 6 Sep 2015 06:17:10 +0000 (15:17 +0900)]
Improve XML parsing to handle attributes as well.
Add debug-log dump() function to validate that XML has been parsed correctly.
Update (C) statements.

3 years agoAdd knowledge about the specific FB tags
Chris Jaekl [Fri, 4 Sep 2015 13:02:05 +0000 (22:02 +0900)]
Add knowledge about the specific FB tags

3 years agoPartial implementation of XML parse for FindBugs output
Chris Jaekl [Thu, 3 Sep 2015 13:47:45 +0000 (22:47 +0900)]
Partial implementation of XML parse for FindBugs output

3 years agoMinor fine-tuning of findbugs command execution
Chris Jaekl [Tue, 1 Sep 2015 13:27:18 +0000 (22:27 +0900)]
Minor fine-tuning of findbugs command execution

3 years agoAdd ability to execute FindBugs
Chris Jaekl [Sat, 29 Aug 2015 13:54:42 +0000 (22:54 +0900)]
Add ability to execute FindBugs

3 years agoBring things to a state where the basic DB schema gets auto-created if it doesn't...
Chris Jaekl [Thu, 27 Aug 2015 13:26:44 +0000 (22:26 +0900)]
Bring things to a state where the basic DB schema gets auto-created if it doesn't yet exist.

3 years agoSome progress toward implementing connection to DB and auto-schema-creation.
Chris Jaekl [Sat, 22 Aug 2015 14:49:34 +0000 (23:49 +0900)]
Some progress toward implementing connection to DB and auto-schema-creation.
Neither functional nor tested (yet).

3 years agoInitial commit.
Chris Jaekl [Sat, 22 Aug 2015 12:58:07 +0000 (21:58 +0900)]
Initial commit.