A Gradle plugin aimed to help working with Apache Avro. It supports code generation for JSON schema declaration files(.avsc), JSON protocol declaration files(.avpr), and Avro IDL files. In the future, it should support Schema Registry integration, as well.
I've found a Gradle Plugin built on top of David's plugin that enables dependencies as sources for code generation. It seems like a useful feature so I'm going to try to implement it.
I also need to modify the IDL task to accept multiple classpath configs (why not?).
Since we're dealing with a Gradle task that may or not need to be run accordingly to its Source files track history, we can optimize the primary task to only run on Source files update.
I found the parser implementation to be the most challenging part of the project. There's already a version that seems to be working fine, but I need to cover all scenarios to be safe (obviously).