desruisseaux commented on PR #12745: URL: https://github.com/apache/maven/pull/12745#issuecomment-5287294349
I question the idea that only API dependencies should be transitive and not the dependencies with the `compile` scope. Even if a project does not expose a dependency in its API, if that project needs that dependency for its working, then the dependency must be on the classpath. Or maybe you mean `compiler` as "transitive for Surefire but not transitive for the compiler"? Do we need to add this complexity when Java module already handle that for us? I would rather suggest to keep Maven as it stands today, where `compiler` scope means "put the dependency on the module-path", then `module-info` tells whether that dependency shall be visible for users of that project or hidden as an implementation details. In other words, keep a separation of tasks: Maven controls what to put on the module-path, and `module-info` controls which ones of these dependencies are API. The two are complementary. -- 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]
