henrikingo opened a new pull request, #161:
URL: https://github.com/apache/otava/pull/161
Okay I don't know what to say... Originally I was just going to merge
ChangePoint_ and ChangePoint and add the missing .metrics attribute to the
survivor. Then it somehow escalated from there.
This needs much more test coverage, but sharing so you can see where I was
going with this and also to get feedback on whether this makes the code better
or worse...
ChangePoint:
Unify the two ChangePoint classes and add container classes
* Unify the ChangePoint_ class in hunter code and the new
ChangePoint introduced by the new edivisive implementation
Then it got out of hand a bit ...
* Separate index and timestamp into different domains.
cp.index is used in the context of a single metric and its
history of results. Time and commit otoh are on the
ChangePointGroup level (essentially a "row"). Note
that different metrics can now have different cp.index
for the same cpg.time or cpg.attributes['commit'], if
they have a different history.
* Introduce a ChangePoints class which is just a list of
ChangePointGroups but actually comes with 2 different
implementations.
The last one is supposed to become the class you are left holding
once all the change points are computed. Until now we had lots
of nice classes for each step of computation, but in the end
you were left holding a dict[str, ChangePointGroup]. The new
class now encapsulates that dict,
SignificanceTester:
This moves stats and functionality up towards parent classes
so that generic stats like mean are always computed for
all variants. In fact TTestStat is now an empty class,
it's functionality fully absorbed by the parent. (But note
that the class name/type itself carries information about the pvalue.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]