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]

Reply via email to