Remix.run Logo
lmm a day ago

Multiple package managers is fine, what's needed is a common repository standard (or even any repository functionality at all). Look at how it works in Java land, where if you don't want to use Maven you can use Gradle or Bazel or what have you, or if you hate yourself you can use Ant+Ivy, but all of them share the same concept of what a dependency is and can use the same repositories.

zarzavat a day ago | parent [-]

Also, having one standard packaging format and registry doesn't preclude having alternatives for special use cases.

There should be a happy path for the majority of C++ use cases so that I can make a package, publish it and consume other people's packages. Anyone who wants to leave that happy path can do so freely at their own risk.

The important thing is to get one system blessed as The C++ Package Format by the standard to avoid xkcd 927 issues.

smallstepforman a day ago | parent | next [-]

In the Linux world and even Haiku, there is a standard package dependacy format, so dependencies aren’t really a problem. Even OSX has Homebrew. Windows is the odd man out.

daemin 21 hours ago | parent [-]

Are you talking about system/application dependencies for installed applications or programming dependencies like compiled libraries and header files?

daemin a day ago | parent | prev [-]

That would actually be pretty cool. Though I think there might have been papers written on this a few years ago. Does anyone know of these or have any updates about them?

nickelpro 16 hours ago | parent [-]

CPS[1] is where all the effort is currently going for a C++ packaging standard, CMake shipped it in 4.3 and Meson is working on it. Pkgconf maintainer said they have vague plans to support at some point.

There's no current effort to standardize what a package registry is or how build frontends and backends communicate (a la PEP 517/518), though its a constant topic of discussion.

[1]: https://github.com/cps-org/cps