Your message dated Wed, 11 Oct 2006 17:32:20 -0700
with message-id <[EMAIL PROTECTED]>
and subject line Bug#375703: fixed in dpkg 1.13.23
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: dpkg
Version: 1.13.21
Severity: wishlist
Tags: patch

As discussed on debian-dpkg, I enclose the first step towards
supporting Breaks.  If you approve of the the patch I think it should
be applied in sid immediately: although we don't have a clear
deployment plan for Debian yet, this change is almost certain to be a
necessary first step and this new behaviour (rejecting Breaks) is
certainly a step in the right direction.

Thanks,
Ian.

diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/debian/changelog 
dpkg-1.13.21ubuntu1/debian/changelog
--- orig/dpkg-1.13.21ubuntu1/debian/changelog   2006-06-08 11:32:56.000000000 
+0100
+++ dpkg-1.13.21ubuntu1/debian/changelog        2006-06-27 18:14:53.000000000 
+0100
@@ -1,3 +1,17 @@
+dpkg (1.13.21ubuntu2) edgy; urgency=low
+
+  * `Breaks': Implement step 1 of PackageDependencyFieldBreaks:
+     - Parse Breaks as a dependency field where `|' is not allowed,
+       and know how to display it, etc.
+     - Refuse to install an archive which contains Breaks unless
+       --force-depends is specified (I think --force-depends is right
+       rather than --force-conflicts or a new --force-breaks for this).
+     - Explicitly ignore Breaks in the handful of places where that's
+       needed, so that if a package with Breaks is somehow installed the
+       Breaks field will not cause trouble (it will be ignored).
+
+ -- Ian Jackson <[EMAIL PROTECTED]>  Tue, 27 Jun 2006 18:14:46 +0100
+
 dpkg (1.13.21ubuntu1) edgy; urgency=low
 
   * Resynchronise with Debian. One change remains, namely IWJ's
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/lib/dpkg-db.h 
dpkg-1.13.21ubuntu1/lib/dpkg-db.h
--- orig/dpkg-1.13.21ubuntu1/lib/dpkg-db.h      2006-02-11 06:25:06.000000000 
+0000
+++ dpkg-1.13.21ubuntu1/lib/dpkg-db.h   2006-06-27 11:55:52.000000000 +0100
@@ -41,7 +41,8 @@
   dep_conflicts,
   dep_provides,
   dep_replaces,
-  dep_enhances
+  dep_enhances,
+  dep_breaks
 };
 
 enum depverrel {
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/lib/fields.c 
dpkg-1.13.21ubuntu1/lib/fields.c
--- orig/dpkg-1.13.21ubuntu1/lib/fields.c       2006-02-11 06:25:06.000000000 
+0000
+++ dpkg-1.13.21ubuntu1/lib/fields.c    2006-06-27 11:51:37.000000000 +0100
@@ -439,6 +439,7 @@
                  " error after reference to package `%.255s'"),
                  fip->name, dop->ed->name);
       if (fip->integer == dep_conflicts ||
+          fip->integer == dep_breaks ||
           fip->integer == dep_provides ||
           fip->integer == dep_replaces)
         parseerr(NULL,filename,lno, warnto,warncount,pigp,0,
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/lib/parse.c 
dpkg-1.13.21ubuntu1/lib/parse.c
--- orig/dpkg-1.13.21ubuntu1/lib/parse.c        2006-01-19 00:24:24.000000000 
+0000
+++ dpkg-1.13.21ubuntu1/lib/parse.c     2006-06-27 11:50:43.000000000 +0100
@@ -63,6 +63,7 @@
   { "Suggests",         f_dependency,      w_dependency,     dep_suggests      
       },
   { "Conflicts",        f_dependency,      w_dependency,     dep_conflicts     
       },
   { "Enhances",         f_dependency,      w_dependency,     dep_enhances      
       },
+  { "Breaks",           f_dependency,      w_dependency,     dep_breaks        
       },
   { "Conffiles",        f_conffiles,       w_conffiles                         
       },
   { "Filename",         f_filecharf,       w_filecharf,      FILEFOFF(name)    
       },
   { "Size",             f_filecharf,       w_filecharf,      FILEFOFF(size)    
       },
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/src/depcon.c 
dpkg-1.13.21ubuntu1/src/depcon.c
--- orig/dpkg-1.13.21ubuntu1/src/depcon.c       2006-06-04 13:51:24.000000000 
+0100
+++ dpkg-1.13.21ubuntu1/src/depcon.c    2006-06-27 11:55:42.000000000 +0100
@@ -156,6 +156,7 @@
   case dep_conflicts:   varbufaddstr(addto, _(" conflicts with ")); break;
   case dep_suggests:    varbufaddstr(addto, _(" suggests ")); break;
   case dep_enhances:    varbufaddstr(addto, _(" enhances "));       break;
+  case dep_breaks:      varbufaddstr(addto, _(" breaks "));         break;
   default:              internerr("unknown deptype");
   }
   varbufdependency(addto, dep);
@@ -186,7 +187,8 @@
 
   assert(dep->type == dep_depends || dep->type == dep_predepends ||
          dep->type == dep_conflicts || dep->type == dep_recommends ||
-        dep->type == dep_suggests || dep->type == dep_enhances );
+        dep->type == dep_suggests || dep->type == dep_enhances ||
+        dep->type == dep_breaks );
   
   /* The dependency is always OK if we're trying to remove the depend*ing*
    * package.
@@ -212,6 +214,16 @@
     internerr("unknown istobe depending");
   }
 
+  if (dep->type == dep_breaks)
+    /* We don't implement this and we can only be in this state
+     * if either a Breaks-ignorant or a Breaks-supporting dpkg
+     * installed the package.  In both cases it's probably too
+     * late to do anything useful about it now in this version
+     * so we just ignore it and hope.
+     * fixme-implement-Breaks
+     */
+    return 1;
+
   /* Describe the dependency, in case we have to moan about it. */
   varbufreset(whynot);
   varbufaddc(whynot, ' ');
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/src/packages.c 
dpkg-1.13.21ubuntu1/src/packages.c
--- orig/dpkg-1.13.21ubuntu1/src/packages.c     2006-05-17 00:29:42.000000000 
+0100
+++ dpkg-1.13.21ubuntu1/src/packages.c  2006-06-27 12:04:39.000000000 +0100
@@ -352,6 +352,9 @@
   debug(dbg_depcon,"checking dependencies of %s (- %s)",
         pkg->name, removing ? removing->name : "<none>");
   assert(pkg->installed.valid);
+  /* To implement Breaks we need to add code here which prevents
+   * configuration of Broken packages.
+   * fixme-implement-Breaks */
   for (dep= pkg->installed.depends; dep; dep= dep->next) {
     if (dep->type != dep_depends && dep->type != dep_predepends) continue;
     debug(dbg_depcondetail,"  checking group ...");
diff --exclude='*~' -ruN orig/dpkg-1.13.21ubuntu1/src/processarc.c 
dpkg-1.13.21ubuntu1/src/processarc.c
--- orig/dpkg-1.13.21ubuntu1/src/processarc.c   2006-05-31 03:01:49.000000000 
+0100
+++ dpkg-1.13.21ubuntu1/src/processarc.c        2006-06-27 18:00:25.000000000 
+0100
@@ -252,6 +252,16 @@
         }
       }
       break;
+    case dep_breaks:
+      fprintf(stderr, _("dpkg: regarding %s containing %s:\n"
+                       " package uses Breaks; not supported in this dpkg\n"),
+             pfilename, pkg->name);
+      if (!force_depends(dsearch->list))
+       ohshit(_("unsupported dependency problem - not installing %.250s"),
+              pkg->name);
+      fprintf(stderr, _("dpkg: warning - ignoring Breaks !\n"));
+      /* fixme-implement-Breaks */
+      break;
     case dep_suggests:
     case dep_recommends:
     case dep_depends:


--- End Message ---
--- Begin Message ---
Source: dpkg
Source-Version: 1.13.23

We believe that the bug you reported is fixed in the latest version of
dpkg, which is due to be installed in the Debian FTP archive:

dpkg-dev_1.13.23_all.deb
  to pool/main/d/dpkg/dpkg-dev_1.13.23_all.deb
dpkg_1.13.23.dsc
  to pool/main/d/dpkg/dpkg_1.13.23.dsc
dpkg_1.13.23.tar.gz
  to pool/main/d/dpkg/dpkg_1.13.23.tar.gz
dpkg_1.13.23_i386.deb
  to pool/main/d/dpkg/dpkg_1.13.23_i386.deb
dselect_1.13.23_i386.deb
  to pool/main/d/dpkg/dselect_1.13.23_i386.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Guillem Jover <[EMAIL PROTECTED]> (supplier of updated dpkg package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Thu, 12 Oct 2006 02:56:09 +0300
Source: dpkg
Binary: dpkg dselect dpkg-dev
Architecture: source i386 all
Version: 1.13.23
Distribution: unstable
Urgency: low
Maintainer: Dpkg Developers <[EMAIL PROTECTED]>
Changed-By: Guillem Jover <[EMAIL PROTECTED]>
Description: 
 dpkg       - package maintenance system for Debian
 dpkg-dev   - package building tools for Debian
 dselect    - user tool to manage Debian packages
Closes: 375099 375118 375703 375749 376351 376724 376746 377279 379030 379286 
379298 379417 379433 379661 379798 379825 379985 380130 380239 380365 380443 
380660 381047 381141 381349 381409 381488 381740 381865 382308 383448 383588 
383643 384768 384843 385675 386759 386963 386965 387282 387821 388192 388837 
391143 391144 391144
Changes: 
 dpkg (1.13.23) unstable; urgency=low
 .
   [ Guillem Jover ]
   * Add initial support for the Breaks field, by parsing but rejecting it.
     Thanks to Ian Jackson <[EMAIL PROTECTED]>. Closes: #375703
   * Use dpkg-architecture from the source tree to get the target Debian
     architecture, instead of duplicating the logic in the m4 files.
   * Remove comment headers in dselect/helpmsgs.{cc,h} about the files being
     autogenerated, replace them with a proper license and copyright comment.
     Closes: #382308
   * Add a new line at the end of m4/compiler.m4 file, to cope with an
     autoreconf failure due to the new m4 1.4.7.
 .
   [ Nicolas François ]
   * Specify --null before the -T tar's option to avoid the "tar: -: file name
     read contains nul character" warning.
     Closes: #376351, #375749, #376724, #377279
 .
   [ Added dpkg Translations ]
   * Dzongkha (Kinley Tshering).
 .
   [ Updated dpkg Translations ]
   * Basque (Piarres Beobide). Closes: #375118
   * Brazilian Portuguese (Andre Luis Lopes).
   * Catalan (Robert Millan, Jordi Mallach). Closes: #383448
   * Czech (Miroslav Kure).
   * Danish (Claus Hindsgaul).
   * Dutch (Bart Cornelis).
   * Dzongkha (Tenzin Dendup). Closes: #388192
   * French (Frédéric Bothamy).
   * Galician (Jacobo Tarrio).
   * German (Sven Joachim). Closes: #381409, #381740
   * Hungarian (SZERVÁC Attila).
   * Italian (Stefano Canepa, Davide Viti). Closes: #387821
   * Japanese (Kenshi Muto). Closes: #386963
   * Khmer (Khoem Sokhem). Closes: #375099
   * Portuguese (Miguel Figueiredo, Rui Branco).
   * Romanian (Eddy Petrişor).
   * Russian (Yuri Kozlov). Closes: #376746, #391143
   * Slovak (Peter Mann). Closes: #387282
   * Spanish (Javier Fernandez-Sanguino). Closes: #386759
   * Swedish (Daniel Nylander). Closes: #383643
   * Vietnamese (Clytie Siddall). Closes: #383588
 .
   [ Added dpkg-dev Translations ]
   * Catalan (Jordi Mallach).
   * French (Philippe Batailler).
 .
   [ Updated dselect Translations ]
   * Brazilian Portuguese (Andre Luis Lopes).
   * Catalan (Robert Millan, Jordi Mallach).
   * Danish (Claus Hindsgaul).
   * German (Sven Joachim). Closes: #384843
     (Sven is now the new German translation maintainer for dpkg and dselect).
   * Hungarian (SZERVÁC Attila).
   * Indonesian (Arief S Fitrianto). Closes: #391144
   * Italian (Stefano Canepa).
   * Japanese (Kenshi Muto).
   * Norwegian Bokmål (Hans Fr. Nordhaug).
   * Russian (Yuri Kozlov).
   * Slovak (Peter Mann).
   * Spanish (Javier Fernández-Sanguino Peña). Closes: #391144
   * Swedish (Daniel Nylander).
   * Vietnamese (Clytie Siddall).
 .
   [ Updated man pages translations ]
   * French (Philippe Batailler).
   * German (Helge Kreutzmann). Closes: #379030
 .
   [ Added man pages translations ]
   * German (Helge Kreutzmann).
     Closes: #379286, #379298, #379417, #379433, #379661, #379798, #379825
     Closes: #379985, #380130, #380239, #380365, #381047, #380660, #380443
     Closes: #381349, #381488
   * Japanese (KISE Hiroshi).
     Closes: #381141, #381865, #384768, #385675, #386965, #388837
Files: 
 2b2c94c822cb30b5d41d749dd8d6a84e 853 admin required dpkg_1.13.23.dsc
 867cae460bfe86e4a8d79b86518598a0 3338725 admin required dpkg_1.13.23.tar.gz
 42c2241292fb7a5a7cfcb269b0625273 1932060 admin required dpkg_1.13.23_i386.deb
 18a1cf6a321bfedf7d815f63ca03b006 528660 admin required dselect_1.13.23_i386.deb
 e36435c97290d3ef84d4f60c5238a75e 164074 utils standard dpkg-dev_1.13.23_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFLYeWuW9ciZ2SjJsRAv5ZAJ4o/14rD6Mmf8svvC+Et6MutI4W9ACfXqfP
Oc1Iw/7ct/GOCX8TVkRhvV8=
=HOjw
-----END PGP SIGNATURE-----


--- End Message ---

Reply via email to