stevedlawrence opened a new pull request, #64: URL: https://github.com/apache/daffodil-sbt/pull/64
If a project implements a Daffodil layer, character set, or user defined function plugin, and enables the associated setting, then we add the appropriate Daffodil library as a dependency. This is necessary to compile the plugin. However, this means that any schema projects that depend on the layer/charset/udf plugin will now transitively pull in Daffodil as a dependency. In most cases, this doesn't really matter because the transitive dependencies will be overridden by `daffodilVersion`, or if you use `sbt "export fullClasspath"` to set DAFFODIL_CLASSPATH, the CLI will override any Daffodil dependencies. But, even though this transitive dependency is never really used it still clutters up the dependency listings and can make it difficult to see what the real dependencies are. Since Daffodil jars will almost always be provided by what ever actually uses these plugins and schemas, this sets those dependencies to the "provided" scope. This allows the plugins to be compiled, but will not cause Daffodil jars to be transitively pulled it. Note that as a rule of thumb, all dependencies to a daffodil jar probably want to either be in the "test" or "provided" scopes. All dependencies this plug adds now follow that rule. Closes #63 -- 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]
