This PR adds a module resolution procedure to Lake to disambiguate modules that are defined in multiple packages. On an `import`, Lake will now check if multiple packages within the workspace define the module. If so, it will verify that modules have sufficiently similar definitions (i.e., artifacts with the same content hashes). If not, Lake will report an error. This verification is currently only done for direct imports. Transitive imports are not checked for consistency. An overhaul of transitive imports will come later.
3 lines
43 B
Text
3 lines
43 B
Text
module
|
|
|
|
public def similar : String := "B"
|