covcon 0.3.0

Crate to convert between code coverage formats.
Documentation
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE coverage SYSTEM "https://github.com/cobertura/cobertura/blob/master/cobertura/src/site/htdocs/xml/coverage-04.dtd">
<coverage
    line-rate="0.85"
    branch-rate="0.75"
    lines-covered="85"
    lines-valid="100"
    branches-covered="15"
    branches-valid="20"
    complexity="1.5"
    version="2.1.1"
    timestamp="1702139945">

    <sources>
        <source>/path/to/source1</source>
        <source>/path/to/source2</source>
    </sources>

    <packages>
        <package
            name="com.example.mypackage1"
            line-rate="0.9"
            branch-rate="0.8"
            complexity="1.2">

            <classes>
                <class
                    name="MyClass1"
                    filename="com/example/mypackage1/MyClass1.java"
                    line-rate="0.9"
                    branch-rate="0.8"
                    complexity="1.1">

                    <methods>
                        <method
                            name="method1"
                            signature="(I)V"
                            line-rate="1.0"
                            branch-rate="1.0"
                            complexity="1.0">
                            <lines>
                                <line number="10" hits="10" branch="false" />
                                <line number="15" hits="5" branch="true" condition-coverage="50%">
                                    <conditions>
                                        <condition number="0" type="jump" coverage="50%" />
                                        <condition number="1" type="switch" coverage="100%" />
                                    </conditions>
                                </line>
                            </lines>
                        </method>
                        <method
                            name="method2"
                            signature="(Ljava/lang/String;)V"
                            line-rate="0.8"
                            branch-rate="0.6"
                            complexity="1.2">
                            <lines>
                                <line number="20" hits="3" branch="false" />
                                <line number="25" hits="0" branch="true" condition-coverage="0%">
                                    <conditions>
                                        <condition number="0" type="jump" coverage="0%" />
                                    </conditions>
                                </line>
                            </lines>
                        </method>
                    </methods>

                    <lines>
                        <line number="10" hits="10" branch="false" />
                        <line number="15" hits="5" branch="true" condition-coverage="50%">
                            <conditions>
                                <condition number="0" type="jump" coverage="50%" />
                                <condition number="1" type="switch" coverage="100%" />
                            </conditions>
                        </line>
                    </lines>
                </class>
                <class
                    name="MyClass2"
                    filename="com/example/mypackage1/MyClass2.java"
                    line-rate="0.8"
                    branch-rate="0.7"
                    complexity="1.3">

                    <methods>
                        <method
                            name="method1"
                            signature="()V"
                            line-rate="1.0"
                            branch-rate="0.8"
                            complexity="1.1">
                            <lines>
                                <line number="30" hits="8" branch="false" />
                                <line number="35" hits="2" branch="true" condition-coverage="66%">
                                    <conditions>
                                        <condition number="0" type="jump" coverage="66%" />
                                    </conditions>
                                </line>
                            </lines>
                        </method>
                    </methods>

                    <lines>
                        <line number="30" hits="8" branch="false" />
                        <line number="35" hits="2" branch="true" condition-coverage="66%">
                            <conditions>
                                <condition number="0" type="jump" coverage="66%" />
                            </conditions>
                        </line>
                    </lines>
                </class>
            </classes>
        </package>

        <package
            name="com.example.mypackage2"
            line-rate="0.85"
            branch-rate="0.75"
            complexity="1.4">

            <classes>
                <class
                    name="AnotherClass"
                    filename="com/example/mypackage2/AnotherClass.java"
                    line-rate="0.85"
                    branch-rate="0.75"
                    complexity="1.4">

                    <methods>
                        <method
                            name="anotherMethod"
                            signature="()I"
                            line-rate="1.0"
                            branch-rate="1.0"
                            complexity="1.0">
                            <lines>
                                <line number="40" hits="10" branch="false" />
                                <line number="45" hits="7" branch="true" condition-coverage="75%">
                                    <conditions>
                                        <condition number="0" type="jump" coverage="75%" />
                                    </conditions>
                                </line>
                            </lines>
                        </method>
                    </methods>

                    <lines>
                        <line number="40" hits="10" branch="false" />
                        <line number="45" hits="7" branch="true" condition-coverage="75%">
                            <conditions>
                                <condition number="0" type="jump" coverage="75%" />
                            </conditions>
                        </line>
                    </lines>
                </class>
            </classes>
        </package>
    </packages>
</coverage>