On 28/07/2016 16:44, Paul Benedict wrote:
Here is an example use case. Please confirm my understanding. I'd like to
know if transitive dependencies go one module deep or go all the way
through.
1) A@1.0 is published
module A { // exports all packages }
2a) A@1.1 gets split into B@1.0 and C@1.0
2b) A@1.1 uses "requires public" to mimic its previously unsplit self
module A {
requires public static B;
requires public static C;
}
module B { // exports all packages }
module C { // exports all packages }
3a) B@1.1 gets split into X@1.0 and Y@1.0
3c) B@1.1 uses "requires public" to mimic its previously unsplit self
Assuming one level deep...
module A {
requires public static B;
requires public static C;
}
module B {
requires public static X;
requires public static Y;
}
module C { // exports all packages }
module X { // exports all packages }
module Y { // exports all packages }
Will this chain of configuration allow consumers of A to notice no
difference?
That's right, the users of A will not notice. I assume in the above that
"exports all packages" in B, C, X and Y means all the packages in their
split.
-Alan