I wanted to track test coverage for XMLUnit for Java using Coveralls (could be better and I should do the same for XMLUnit.NET, but these are different stories).

In theory this is pretty easy, given that there already is a Travis CI build. I added the Jacoco and Coveralls plugins in a Maven profile and made Travis run the profile as an after_success script. But instead of publishing data, I was greeted by

[ERROR] Failed to execute goal org.eluder.coveralls:coveralls-maven-plugin:3.0.1:report (default-cli) on project xmlunit-parent:
  Unable to parse configuration of mojo org.eluder.coveralls:coveralls-maven-plugin:3.0.1:report for parameter timestamp:
  Cannot convert '1425416381951' to Date -> [Help 1]

Well, I never configured the timestamp for coveralls and I was pretty sure I wasn't setting a timestamp property, either. Searching around didn't lead to anything, there was no environment variable configured, strange. Finally it dawned on me that the buildnumber plugin I used in order to get the git hash into the jar manifests also sets a property named timestamp as a side-effect. So far I wasn't using it but rather maven.build.timestamp for the manifest so I had ignored said property. With that

    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>buildnumber-maven-plugin</artifactId>
        <version>1.3</version>
        <configuration>
            ...
            <timestampFormat>{0,date,yyyy-MM-dd HH:mm:ssa}</timestampFormat>
            ...
        </configuration>
    </plugin>

finally did the trick.

path: /en/oss/XMLUnit | #