3 ms·
Separation of tasks. The build system builds. Another system (like a package manager, if you are so inclined, or not if not) manages packages.
by gspr 5y ago
Separation of tasks. The build system builds. Another system (like a package manager, if you are so inclined, or not if not) manages packages.
- howinteresting 5y agoSystems that combine the two generally let you use just one or the other. For example, cargo fetch just acts as the package manager. cargo build can be configured (through vendoring or just not using any external dependencies) to not perform any package management. What is missing is a modern cross-language, cross-platform package manager, I agree. But there are really good reasons for that, chief among them being that I don't think it's possible to define the scope of such a thing in a coherent fashion.
- gspr 5y ago> Systems that combine the two generally let you use just one or the other. For example, cargo fetch just acts as the package manager. cargo build can be configured (through vendoring or just not using any external dependencies) to not perform any package management. Indeed, and I'm still highly skeptical. Learning Rust has been an amazingly rare sequence of "wow that's perfect" uttered from my mouth – except for Cargo. I couldn't disable the networking functionality of Cargo fast enough!