dodie/scott

Finalize new Java API for 3.5.0

dodie opened this issue · 3 comments

dodie commented

Make sure methods are consistent in the runtime API:

  • For now, trackMethodStart does not have line number of the context.
  • Also consider removing the explicit methods to track primitive values.

Update documentation with all the changes in 3.5.0, including dev docs on how the instrumentation works, and how new modules could use it.

Future Ideas:

  • Separate the instrumentation and the test reporting runtime into separate modules.
  • Separate an API module. With a non-static API, an interface can help consistency, because this way Scott can provide an interface that the runtime classes can implement.
dodie commented

Also consider removing the explicit methods to track primitive values

I decided to keep the dedicated methods for primitive tracking because it results in a simpler instrumentation code, and also more flexible (e.g. allows to differentiate between primitive and reference types in the runtime API.)

dodie commented

Future Ideas:

Separate the instrumentation and the test reporting runtime into separate modules.
Separate an API module. With a non-static API, an interface can help consistency, because this way Scott can provide an interface that the runtime classes can implement.

For simplicity reasons, I decided to keep the module in one package. The runtime part only has provided dependencies, so it's not a big problem for now.

dodie commented

For now, trackMethodStart does not have line number of the context.

Now all tracking methods receive the correct line number.