-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discussion - ANIm files using pyani v0.2 vs 0.3 differ #109
Conversation
This should probably be done as a separate Python script but this is a proof of principle for now.
This is the same script as for ANIb which has to use v0.2 since currently the method has not been finished in v0.3
Note we have explicitly sorted the rows/cols by MD5 as otherwise the order flipped from pyani v0.2 to v0.3 There are still differences...
Coverage summary from CodacySee diff coverage on Codacy
Coverage variation details
Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: Diff coverage details
Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: See your quality gate settings Change summary preferencesCodacy stopped sending the deprecated coverage status on June 5th, 2024. Learn more |
Codecov ReportAll modified and coverable lines are covered by tests ✅ |
(This test will pass right now as we've not yet merged #107 which will check the pyANI plus ANIm calculations against these expected values) |
Confirmed with @kiepczi this is due to the bug in v0.2 fixed in v0.3 by widdowquinn/pyani#425 This means we will need to split the makefile fixtures entry as we need both pyani 0.2 (for ANIb) and 0.3 (for ANIm). See also 7e41764 which I made to stop accidentally using the wrong pyani - similar guard in #108. |
Closing in favour of issue widdowquinn/pyani#438 |
See discussion on #109, we need different versions of pyani for ANIm (v0.3) and ANIb (v0.2).
See discussion on #109, we need different versions of pyani for ANIm (v0.3) and ANIb (v0.2).
For issue #102 (groundtruth ANIb using pyani v0.2, see PR #108) we need to use pyANI v0.2 rather than v0.3 when we generate the expected matrices. I thought it would be nicer therefore to also use v0.2 for generating the ANIm groundtruth values - assuming they would be the same.
The script to do this for ANIm was essentially a copy of the proposed ANIb script with a search-and-replace.
This PR is to demonstrate changes in the ANIm output from v0.2 (specifically the version_0_2 branch as of 4c19123c67b78c01d58869527402aec518ead473 to v0.3 (specifically the main branch as of 6b8b262b028f7d27c2dfdddbeda67e7cb571fee7).
First there is a trivial difference in the row/col labels switching order from v0.2 to v0.3. Therefore this PR explicitly sorts them matrix by the MD5 (as being done anyway in this repo internally as part of testing against the expected matrices).
The final commit dc87d7e on this PR shows meaningful differences including:
.0
) under v0.2, and included some longer than the shorter sequence (!).0
) under v0.2 with a zero diagonal, but have got diagonal values of1
under v0.3 (!)i.e.