rmannibucau commented on pull request #104: URL: https://github.com/apache/maven-shade-plugin/pull/104#issuecomment-883963310
@kriegaex oki, let me try to list more clearly the points: 1. I think we want filters to be consistent with the shader (which is the central feature of the plugin) so yes we should handle dirs in both cases 2. if minification exists it must also exists for the main artifact - for the cases of libraries like spring which put all integrations in the same module but can run without most of them (compile scope vs runtime more or less) 3. as of today minification rarely works so - for me - 1 is the minimum requirement on it, 2 is a nice to have but we can also - my preference - drop the feature and replace it by plain transformers registration in the configuration which would be more powerful and generic. This point is only doable in next major but I mentionned it because it justifies why I don't want to put too much effort on minification *now*. So for next releases we must fix this dir issue and long term the discussion can be to rethink if it needs to exists, if not no big deal except doc to write, if yes it must be completely reimplemented and more configurable (which makes it back to transformers and why i think it is not a big feature of the plugin for the *future*). Side note: your main example is exactly what I talked about, you assume the main is in the manifest but it is not uncommon to have a generic main launching subcommands (take any cli) so you need to track these commands which are often missed by the minijarfilter as of today because it requires some knowledge about how to register a command (let illustrate it by a META-INF/commands.txt file). So you end up needing to do the minification with a filter which excludes what you don't want. Java has too much indirection in the code to let jdependency be relevant in a generic manner, only works for simple application with no indirections. From the ones I'm working on, it is very few cases, this is why I think we should review this param for next *major* version. Hope it makes sense. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
