Closed nevrome closed 9 months ago
Attention: Patch coverage is 75.55556%
with 11 lines
in your changes are missing coverage. Please review.
Project coverage is 68.22%. Comparing base (
a4b30ba
) to head (fb22b43
).
Files | Patch % | Lines |
---|---|---|
src/Poseidon/CLI/Jannocoalesce.hs | 75.55% | 2 Missing and 9 partials :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Great, thanks, I'll take a look ASAP
Thanks - merged! I will now add a release-changelog on the jannocoalesce branch and then merge into master to publish there.
I did essentially three things in this PR:
--includeColumns
or--excludeColumns
. If they choose neither, thenAllJannoColumns
applies.Added some helpful logging about the number of fields changed and the number of target-source mismatches. This is particularly useful for large packages. Inspired by our recent discussion I solved this with
IORef
and not with a monad transformer. But this now also feels a bit verbose - not sure.Found and fixed a bug in the handling of additional, not specified variables in the source .janno file. They would always get copied, even if
--fillColumns
(now--includeColumns
) was set. I added some tests to cover this behavior.My solution was to rewrite the core logic of
mergeRow
. Instead of calculating a conditional union it now first creates a version of the target with exactly the desired values and then loops through them and replaces the right ones from the source. This solution seems to work and passes all tests. Maybe it's less efficient in some cases.