microctar
microctar
https://github.com/rust-lang/cargo/blob/bfb0d197d20a19f7cd811493081b4f769a1377cf/src/cargo/core/source/source_id.rs#L21 /// Cargo uniquely identifies packages using [`PackageId`], a combination of the /// package name, version, and the code source. `SourceId` exactly represents /// the "code source" in `PackageId`. See...
用路径做模块(module)名是没有问题的,可以用as关键字为模块起别名避免冲突。编译器本身可以只管在指定路径下能否查找到模块。 错误排查可以考虑参照Rust,将完整的模块名抛出。 依赖及其路径应该由包管理器管理,包管理器为编译器提供包的路径,解决包名冲突和包之间的依赖关系。 关于包管理: pnpm 将实际包路径链接到项目目录下。它是基于内容寻址存储设计的,能节省硬盘空间和包的更新成本。 nimble 是nim-lang的包管理器,相对于其他包管理器,它的实现相对简洁。