"Required for compilation" is <scope>compile</scope> which is the
default so you don't need to specify it.

"Optional at runtime" is <optional>true</optional>

That will force your users to declare this dependency in their own
projects if they want it.  This is how we handle the Cargo depdendency
in Shale Test, because there is one class that needs Cargo to compile,
but not everyone who uses Shale Test will want to use Cargo with it.

* http://svn.apache.org/repos/asf/shale/framework/trunk/shale-test/pom.xml

Just to make sure I have this right, you are now saying I should use "compile" scope with the optional flag, and not the "runtime" scope?

This is still completely non-intuitive, and the dependency tables are confusing enough even without adding the "optional" dimension.

Wouldn't it be much more intuitive to express it something like this:

<dependency compile-time="required" runtime="optional">...</dependency>

or, since there seems to be a convention not to use attributes for some reason, like this:

<dependency>
   ...
   <compile-time>required</compile-time>
   <runtime>optional</runtime>
</dependency>

where the default values for both compile-time and runtime are "required"
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to