ARROW-5579 [1] brought to our attention that the core flat buffer library makes no guarantees of compatibility with generated class files that were generated with a different version.
Properly shading the dependency seems to require using the shaded version across all of our sub-project. Ji Liu followed this approach and created a pull request [2] that shades the dependency in the "format" module and then uses the shaded version in downstream modules. This is an invasive change and has the potential to break IDE development workflows [3] so I figured it was worth discussing on the mailing list. Questions: 1. Do we want to shade the package? 2. Is there a better way to accomplish this that would continue to allow full IDE support? 3. Are we ok making the development process harder for Java developers (I wonder if eclipse or other IDEs have similar issues?) Thanks, Micah [1] https://issues.apache.org/jira/browse/ARROW-5579 [2] https://github.com/apache/arrow/pull/4629 [3] https://youtrack.jetbrains.com/issue/IDEA-93855