On Wed, Jan 6, 2010 at 7:14 PM, Santiago Vila <[email protected]> wrote: > Nothing bad happens when 'diffutils' is installed but diff=2.8.1-12 is > not upgraded automatically to the same version as 'diffutils', so > there is no need to avoid that. > > Your problem came from removing diffutils, which was essential, > not from installing diffutils.
Lets recap one last time and see which are the pros and cons and if this is a real problem. We have a renaming of 'diff' essential package to 'diffutils'. This is achieved so far by these two directives: | Package: diffutils | Essential: yes | Version: 1:2.8.1-18 | Replaces: diff and | Package: diff | Priority: extra | Version: 1:2.8.1-18 | Pre-Depends: diffutils This configuration will provide a smooth transition from lenny to squeeze. I think there is nothing to argue so far. We have 'diffutils >= 2.8.1-14" providing these essential tools: /usr/bin/cmp /usr/bin/diff /usr/bin/sdiff /usr/bin/diff3 We have 'diff <= 2.8.1-13" providing these essential tools: /usr/bin/cmp /usr/bin/diff /usr/bin/sdiff /usr/bin/diff3 Obviously, these two binary packages at these version conflict with each other. I'm reading one more time section 7.6.1 "Overwriting files in other packages" from Debian Policy and I've found that by declaring "Replaces" diffutils can overwrite files from diff. This is what I tried to explain in my previous messages and NOW I see that it is not a bug. It is not clear however what happens if diff=2.8.1-12 is purged after diffutils=1:2.8.1-18 is installed. Will dpkg remove these essential tools on postrm? These are owned by diffutils now and must not be removed because are no longer owned by 'diff' binary package. However, there is one scenario that could create problems. If someone reinstalls diff=2.8.1-12 is will override the binaries from diffutils. And this is exactly what I'm trying to accomplish: avoid diff=2.8.1-12 and diffutils>=1:2.8.1-18 to be installed at the same time. Technically this is done by adding: | Package: diffutils | Essential: yes | Version: 1:2.8.1-18 | Replaces: diff | Conflicts: diff <= 2.8.1-12 I see the following cons: - forces the removal of 'diff' on upgrade from lenny; - downgrades are not officially supported by Debian; I see the following pros: - the overwrite of essential tools is no longer possible; - the empty transitional package 'diff' is removed. This was my last attempt to explain the problem. I realize now that the initial report was wrong, but also that the adding "Conflicts:" besides "Replaces:" brings no problem and solves one minor problem. > Could we please close this bug? Yes, but please consider the above minor issue. Thanks (Just a notice unrelated to this bug report, diffutils has "Pre-Depends: libc6 (>= 2.3)" but on diff the restriction was higher to "2.5"). -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

