"Eugene V. Lyubimkin" <jac...@debian.org> writes: > Package: debian-policy > Version: 3.8.4.0 > Severity: normal > >>From Debian policy, paragraph 7.3: > > -8<- > If the breaking package also overwrites some files from the older > package, it should use Replaces (not Conflicts) to ensure this goes > smoothly. > ->8- > > This phrase does not fits well with the 7.4 paragraph: > > -8<- > When one binary package declares a conflict with another using a > Conflicts field, dpkg will refuse to allow them to be installed on the > system at the same time. > ->8- > > Package with file conflicts should use Conflicts, not Breaks if they
And nowhere does it say that. This bug is about making policy say that. > overwrite some files in another package, because they are not allowed to > be unpacked at the same time, contrary to the Breaks case whey they are > not allowed to be configured at the same time. Otherwise it will be able > to lead to file overwrites in case of downgrading the "breaking" > package. You mean the "broken" package. The being broken and not the one doing the breaking. But that is a bug in dpkg. Dpkg does not check all reverse dependencies when a package is installed. The "doing the breaking" package still Replaces the "broken" package and there should therefore be no overwrite conflict. It should also be impossible to configure the "broken" package but you can also do that. The bad effect that isn't a bug is files getting lost. > Also, generally, this phrase makes impossible for high-level package > manager to know if two packages, one of which breaks another, have > conflicting files or no, which has impact of generating sequence of dpkg > calls when dependencies is so tight that high-level package manager > should break some dependencies temporarily. Plus, I don't see the > rationale why Breaks+Replaces should be used instead of > Conflicts+Replaces - with that setup upgrade also goes smoothly. No. They can trivially see if two packages have conflicting files. There is a Replaces entry in the package. The rational for using breaks instead of conflicts is that it imposes a much weaker condition on the sequencing of packages and avoids temporarily removing (essential) packages. Something that happened in apt and is extremly anoying, since you have to type in that long sentence, and dangerous. It just isn't sufficient in combination with Replaces. MfG Goswin -- To UNSUBSCRIBE, email to debian-policy-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87zl0ukyfj....@frosties.localdomain