I created a fork of
Apache Batik at
https://github.com/css4j/echosvg
Justification
The Carte project depends on Batik to rasterize SVG images (which are handled with css4j's native DOM, not with Batik's). Unfortunately, due to Batik bugs it has to depend on a patched version of it. Added to the fact that the ASF artifacts are generally not JPMS module-friendly, it was a bit annoying to have a build depending on a 1.13-SNAPSHOT (which is the latest version in their source repository, despite 1.13 being released already) that was repeatedly being downloaded from Central.
On the other hand, the current state of the ASF Batik project is not good. Issues are essentially not being attended at the JIRA tracker, and I can presume which is the reason: Batik has little to no unit testing, and any change comes at high risk. Add to this that the ASF Batik team is probably understaffed (and possibly not paid) and you get the idea. I'm not being paid either, but I believe that I can merge low-risk patches.
The EchoSVG project
Despite all the described situation, there are improvements that could be done to the original source code, and EchoSVG now supports level 4 selectors and RGBA colors thanks to the css4j style parser which replaces Batik's own. Other low-risk fixes have been applied, and the code was generified (which led to other issues being found and fixed).
I believe that the result is somewhat better than the initial code base, and although the problem of insufficient unit testing remains, there is no way back for Carte.
If you are using Apache Batik and it is not working for you (as it didn't for me), consider giving EchoSVG a try.