Hello.
Assume I have two "stacks" of RPM packages available:
postgresql16 provides postgresql-any version 16 conflicts with other postgresql-any postgresql16-plugin provides postgresql-any-plugin requires postgresql16 conflicts with other postgresql-any-plugin
postgresql20 provides postgresql-any version 20 conflicts with other postgresql-any postgresql20-plugin provides postgresql-any-plugin requires postgresql20 conflicts with other postgresql-any-plugin
On my system, I have postgresql16 and postgresql16-plugin installed and I want to "upgrade" to postgresql20*.
Using my distribution package manager, I would want to run something like: dnf swap postgresql16 postgresql20
However that will fail, as the package manager does not know I want to also swap postgresql16-plugin with postgresql20-plugin.
Is there something I can do as a package maintainer to "guide" the co-dependent swap case?
I was thinking something like:
postgresql20-plugin: Obsoletes: (postgresql-any-plugin if postgresql-any != 20)
However that is not possible in RPM, "No rich dependencies allowed for this type: Obsoletes".
Is there anything else?
Thanks,