"flink-test-utils" contains, as the name says, utils for testing. Intended to be used by users in writing their own tests. "flink-tests" contains cross module tests, no user should ever need to have a dependency on that.
They are different because users explicitly asked for test utils to be factored into a separate project. As an honest reply here: Setting up a project as huge as Flink need to take many things into account - Multiple languages (Java / Scala), with limitations of IDEs in mind - Dependency conflicts and much shading magic - Dependency matrices (multiple hadoop and scala versions) - Supporting earlier Java versions - clean scope differentiation, so users can reuse utils and testing code That simply requires some extra modules once in a while. Flink people have worked hard on coming up with a structure that serves the need of the production users and automated build/testing systems. These production user requests are most important to us, and sometimes, we need to take cuts in "beauty of directory structure" to help them. Constantly accusing the community of creating bad structures before even trying to understand the reasoning behind that does not come across as very friendly. Constantly accusing the community of sloppy work just because your laptop settings are incompatible with the default configuration likewise. I hope you understand that. On Thu, Sep 22, 2016 at 2:58 AM, shijinkui <shijin...@huawei.com> wrote: > Hi, Stephan > > Thanks for your reply. > > In my mind, Maven-shade-plugin and sbt-assembly both default exclude test > code for the fat jar. > > In fact, unit tests are use to test the main code, ensure our code logic > fit our expect . This is general convention. I think. Flink has be a top > apache project. We shouldn't be special. We're programmer, should be > professional. > > Even more, there are `flink-tes-utils-parent` and `flink-tests` module, > what's the relation between them. > > I have to ask why they are exist? Where is the start of such confusion > modules? > > I think we shouldn't do nothing for this. Code and design should be > comfortable. > > Thanks > > From Jinkui Shi > > -----邮件原件----- > 发件人: Stephan Ewen [mailto:se...@apache.org] > 发送时间: 2016年9月21日 22:19 > 收件人: dev@flink.apache.org > 主题: Re: [discuss] merge module flink-yarn and flink-yarn-test > > I would like Robert to comment on this. > > I think there was a reason to have different modules, which had again > something to do with the Maven Shade Plugin Dependencies and shading really > seem the trickiest thing in bigger Java/Scala projects ;-) > > On Wed, Sep 21, 2016 at 11:04 AM, shijinkui <shijin...@huawei.com> wrote: > > > Hi, All > > > > There too much module in the root. There are no necessary to separate > > the test code from sub-module. > > > > I never see such design: two modules, one is main code, the other is > > test code. > > > > Is there some special reason? > > > > From Jinkui Shi > > >