This PR adds a test replicating Kim's diamond dependency example. The top-level package, `D`, depends on two intermediate packages, `B` and `C`, which each require semantically different versions of another package, `A`. The portion of `A` that `B` and `C` publicly use is unchanged across the versions, but they both privately make use of changed API. Currently, this causes a version clash. This will be made to work without error later this quarter.
11 lines
262 B
Text
11 lines
262 B
Text
module
|
||
|
||
import DiamondExampleB.MainResult
|
||
import DiamondExampleC.MainResult
|
||
|
||
open Ring
|
||
|
||
-- This uses `foo` from `DiamondExampleB` and `bar` from `DiamondExampleC`
|
||
example [Ring α] (a b c d : α) : a + (b + (c + d)) = a + (b + c) + d := by
|
||
rw [foo]
|
||
rw [bar]
|