Skip to content

Releases: rillig/gobco

1.3.4

08 Mar 19:12
Compare
Choose a tag to compare

Changes since 1.3.3 from 2024-03-05:

Properly instrument code that involves custom boolean types.

v1.3.3

05 Mar 16:55
Compare
Choose a tag to compare

Changes since 1.3.2 from 2023-10-07:

  • Fix build failure for TestMain in black box test package, see #32.
  • Fix instrumentation of types based on bool, see #35.

1.3.2

09 Oct 17:30
Compare
Choose a tag to compare

Changes since 1.3.0:

Previously, when a TypeSwitchStmt contained a nested SwitchStmt or TypeSwitchStmt, the instrumented code didn't compile, due to a missing variable declaration.

1.3.0

22 Aug 19:11
Compare
Choose a tag to compare

Changes since 1.2.2:

The '-branch' option covers branches instead of conditions. It is intended as an intermediate goal for projects whose way to condition coverage is still too far.

1.2.2

07 Jan 21:53
Compare
Choose a tag to compare

Fix the placement of comments in the instrumented code, except for some edge cases in expression switch statements and type switch statements.

Fix instrumentation of parenthesized nil, struct types and interface types in type switch statements.

Fix instrumentation of black box tests (those with 'package X_test').

In the instrumented conditions for expression switch statements and type switch statements, omit parentheses where possible.

Generate simpler code when instrumenting expression switch statements.

1.2.1

15 Dec 21:03
Compare
Choose a tag to compare

Changes since 1.1.0:

Feature: In expressions with the operators '!', '&&', '||', only the terminal conditions are instrumented. The intermediate expressions are not instrumented, as that would be redundant.

Feature: Instrument the code in declaration order. Previously, the order of the conditions in the output was deterministic but unintuitive, especially for long chains of '&&' or '||', which were output mostly from right to left.

Bugfix: Generate proper code for switch statements that don't compare their tag expression to anything. Such statements are not expected to occur in practice.

Bugfix: Instrument comparisons that are nested in comparisons, such as the 'b > 0' in 'a == m[b > 0]'.

Cleanup: When instrumenting expression and type switch statements, generate simpler code. For example, only assign to '_' when necessary. Remove redundant switch statements from the generated code.

1.1.0

25 Nov 23:32
Compare
Choose a tag to compare

Changes since 1.0.3:

In chains of '&&' and '||', only instrument the terminal conditions, to reduce redundancy in the output.

Instrument send statements, inc/dec statements, range statements, variable declarations, call expressions, slice expressions, type assertion expressions, star expressions, binary expressions, selection expressions and comparisons inside comparisons.

1.0.3

24 Nov 18:15
Compare
Choose a tag to compare

Instrument parenthesized expressions, channel receive expressions,
composite literals, type switch statements.

Add newline after printing a line to stderr.