I've a mixed feelings about it. If we try having intuitive names, build helper is actually already both clear and too large at the same time. Or maybe have some special swiss-knife-maven-plugin that might stay in the sandbox forever to welcome useful mojos that have not clearly identified plugin target :) ?
>From my understanding, build-metameta is designed to host mojos that should only provide some kind of informations during the build. See the rest inline, I quite disagree with the whole second group being in the right place in build-helper. 2013/4/11 Robert Scholte <codeh...@sourcegrounds.com> > A small summary of the available goals, grouped by function > > Add/Attach files or directories to MavenProject > build-helper:add-source Add more source directories to the POM. > build-helper:add-test-source Add test source directories to the POM. > build-helper:add-resource Add more resource directories to the POM. > build-helper:add-test-resource Add test resource directories to the POM. > build-helper:attach-artifact Attach additional artifacts to be installed > and deployed. > Agreed, goals above should stay in build-helper > > Give a property a Maven related value > build-helper:maven-version Set a property containing the current version > of maven. > -> build-metadata good candidate imo > build-helper:parse-version Set properties containing the parsed > components of a version string. > Not sure. Maybe this one should stay where it is. > build-helper:released-version Resolve the latest released version of this > project. > -> as I think about this one, this is an actually an information about the current project. In this sense, I'd be inclined to move it to build-metadata-m-p. > > Other helpful properties, not Maven related > build-helper:reserve-network-**port Reserve a list of random and unused > network ports. > build-helper:local-ip Retrieve current host IP address. > build-helper:regex-property Sets a property by applying a regex > replacement rule to a supplied value. > Definitely nothing to do with build-metadata, and can "help the build", so I think those goals should stay in build-helper. > build-helper:timestamp-**property Sets a property based on the current > date and time. > Can this be considered a metadata? Maybe it is, isn't it? > > Equivalent of dependency:purge-local-**repository? > build-helper:remove-project-**artifact Remove project's artifacts from > local repository. > +1, seems equivalent. I guess Dan could enter this discussion as he seems to have created that one. If confirmed equivalent, I didn't see any guidelines about deprecation. I suppose we would deprecate it and then wait for a few version before deleting it?