Bug#677582: needs to be fixed in gcc-4.7-base (gcc-4.4-base: upgrade problems since removal of gcj-4.4)

2012-09-23 Thread Matthias Klose
On 22.09.2012 15:04, Andreas Beckmann wrote:
 On 2012-09-22 12:08, Matthias Klose wrote:
 I don't want this in gcc-4.7. Please provide a patch for gcc-defaults. This
 should work as well.
 
 That won't work, just tried it. The only package from gcc-defaults that
 could be involved in the problematic upgrade paths is gcj-jre-headless

wrong. You even include another one below:

 libgcj-bc 4.7.1-1

and libgcj-common.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#677582: needs to be fixed in gcc-4.7-base (gcc-4.4-base: upgrade problems since removal of gcj-4.4)

2012-09-23 Thread Andreas Beckmann
On 2012-09-23 14:32, Matthias Klose wrote:
 On 22.09.2012 15:04, Andreas Beckmann wrote:
 On 2012-09-22 12:08, Matthias Klose wrote:
 I don't want this in gcc-4.7. Please provide a patch for gcc-defaults. This
 should work as well.

 That won't work, just tried it. The only package from gcc-defaults that
 could be involved in the problematic upgrade paths is gcj-jre-headless
 
 wrong. You even include another one below:
 
 libgcj-bc 4.7.1-1
 
 and libgcj-common.

Oops, overlooked these two.
But libgcj-bc is uninteresting as it does not show up in the
dependencies of any other of the listed packages ...

libgcj-common is an interesting candidate for adding the Breaks, as it 
is included in all the upgrade paths. Unfortunately there are still a 
few failing upgrades, because squeeze's apt decides to keep the old 
versions of gcc-4.4-base and libgcj-common instead of kicking out 
gcj-4.4-base (and some old libs that depend on this).
I've tested both squeeze2sid and squeeze2wheezy, both had the same problems.

So the solution with updating gcc-4.7-base works better because it is a 
new package, so during the distupgrade apt only has two choices 
(install or keep uninstalled) and keep uninstalled means a lot of 
packages cannot be upgraded. While for an updated (with additional breaks) 
gcc-4.4-base or libgcj-common which already exist in squeeze, apt actually
has three choices: upgrade, keep old version or remove. And keeping a few
old packages may weigh less expensive than removing a small dependency
tree of obsolete packages (gcj-4.4 and libs and support and ...)

Andreas


One example where to updated libgcj-common is not working:

libxml-commons-resolver1.1-java

0m40.6s DEBUG: Starting command: ['chroot', '/tmp/piupartss/tmplfjm_c', 
'apt-get', '-yf', 'dist-upgrade']
1m17.0s DUMP:
  Reading package lists...
  Building dependency tree...
  Reading state information...
  The following packages will be REMOVED:
defoma libpango1.0-common
  The following NEW packages will be installed:
gcc-4.7-base libapt-pkg4.12 libatk1.0-data libclass-isa-perl libdb5.1
libffi5 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libjbig0 libjpeg8
liblzma5 libmount1 libp11-kit0 libpam-modules-bin libsemanage-common
libsemanage1 libssl1.0.0 libswitch-perl libtinfo5 libustr-1.0-1 libxcb-shm0
multiarch-support python2.7 python2.7-minimal
  The following packages have been kept back:
gcc-4.4-base libgcj-common
  The following packages will be upgraded:
apt base-files base-passwd bash bsdutils coreutils dash debconf debconf-i18n
debian-archive-keyring debianutils diffutils dpkg e2fslibs e2fsprogs file
findutils fontconfig fontconfig-config gnupg gpgv grep gzip hostname
initscripts insserv libacl1 libasound2 libatk1.0-0 libattr1 libavahi-client3
libavahi-common-data libavahi-common3 libblkid1 libbz2-1.0 libc-bin libc6
libcairo2 libcomerr2 libcups2 libdatrie1 libdbus-1-3 libexpat1
libfontconfig1 libfreetype6 libgcc1 libgcrypt11 libgdbm3 libglib2.0-0
libgnutls26 libgpg-error0 libgssapi-krb5-2 libgtk2.0-0 libgtk2.0-common
libice6 libjasper1 libjpeg62 libk5crypto3 libkeyutils1 libkrb5-3
libkrb5support0 liblocale-gettext-perl libmagic1 libncurses5 libncursesw5
libnewt0.52 libpam-modules libpam-runtime libpam0g libpango1.0-0 libpcre3
libpixman-1-0 libpng12-0 libpopt0 libreadline6 libselinux1 libsepol1
libslang2 libsm6 libsqlite3-0 libss2 libstdc++6 libtasn1-3
libtext-charwidth-perl libtext-iconv-perl libthai-data libthai0 libtiff4
libusb-0.1-4 libuuid1 libx11-6 libx11-data libxau6 libxcb-render-util0
libxcb-render0 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6
libxext6 libxfixes3 libxft2 libxi6 libxinerama1
libxml-commons-resolver1.1-java libxml2 libxrandr2 libxrender1 libxtst6
login lsb-base mawk mime-support mount ncurses-base ncurses-bin passwd perl
perl-base perl-modules python python-minimal python2.6 python2.6-minimal
readline-common sed sensible-utils shared-mime-info sysv-rc sysvinit
sysvinit-utils tar ttf-dejavu-core tzdata ucf util-linux whiptail x11-common
xz-utils zlib1g
  141 upgraded, 24 newly installed, 2 to remove and 2 not upgraded.
  Need to get 74.8 MB of archives.
  After this operation, 15.8 MB of additional disk space will be used.
 
while the gcc-4.7-base with updated Breaks produces the better result:

1m3.5s DEBUG: Starting command: ['chroot', '/tmp/piupartss/tmpI_VRBi', 
'apt-get', '-yf', 'dist-upgrade']
1m44.5s DUMP:
  Reading package lists...
  Building dependency tree...
  Reading state information...
  The following packages will be REMOVED:
defoma gcj-4.4-base gcj-4.4-jre gcj-4.4-jre-headless libgcj10 libgcj10-awt
libpango1.0-common
  The following NEW packages will be installed:
gcc-4.7-base libapt-pkg4.12 libatk1.0-data libclass-isa-perl libdb5.1
libdpkg-perl libffi5 libfile-fnmatch-perl libgdk-pixbuf2.0-0
libgdk-pixbuf2.0-common libjbig0 libjpeg8 liblzma5 libmount1 

Bug#677582: needs to be fixed in gcc-4.7-base (gcc-4.4-base: upgrade problems since removal of gcj-4.4)

2012-09-22 Thread Andreas Beckmann
reassign 677582 gcc-4.7-base 4.7.2-2
reopen 677582
thanks

On 2012-09-21 14:22, Andreas Beckmann wrote:
[...]
 I'm now trying to add these Breaks to gcc-4.7-base, that can't be held
 back, hopefully.

Attached is a diff that finally fixes this upgrade issue, hopefully.
gcc-4.7-base isn't that optional as gcc-4.4-base, so it can't be held
back, actually enforcing the Breaks vs. ancient gcj. I looked a bit into
the history where these Breaks originated, and since gcc-4.7-base Breaks
old versions of gcc-4.6-base, I think it would be the right thing to do
and add the Breaks vs. 4.4, too.

 * gcc-4.7-base: ensure smooth upgrades from squeeze by adding
 Breaks: gcj-4.4-base ( 4.4.6-9~), gnat-4.4-base ( 4.4.6-3~)
   as in gcc-4.4-base (multiarch patches re-worked in 4.6.1-8/4.4.6-9).
   Fixes some squeeze-wheezy upgrade paths where apt chooses to hold back
   gcc-4.4-base and keep gcj-4.4-base installed instead of upgrading
   gcc-4.4-base and removing the obsolete gcj-4.4-base (Andreas Beckmann).
   (Closes: #677582)

The recent changes on gcc-4.4 that attempted to fix this issue by
upgrading Breaks to Conflicts could be reverted, but they can be left as
is as they won't do harm (should just add a lintian warning for a
versioned Conflicts).

I tested this patch with piuparts upgrade tests (squeeze-sid) on a
selection of the affected java packages (there are about 60-70 in total,
checked around 10 from different sources), and all passed once I added
an extra repository with the updated gcc-4.7 packages.


Andreas
diff -u gcc-4.7-4.7.2/debian/changelog gcc-4.7-4.7.2/debian/changelog
--- gcc-4.7-4.7.2/debian/changelog
+++ gcc-4.7-4.7.2/debian/changelog
@@ -1,3 +1,16 @@
+gcc-4.7 (4.7.2-2.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * gcc-4.7-base: ensure smooth upgrades from squeeze by adding
+  Breaks: gcj-4.4-base ( 4.4.6-9~), gnat-4.4-base ( 4.4.6-3~)
+as in gcc-4.4-base (multiarch patches re-worked in 4.6.1-8/4.4.6-9).
+Fixes some squeeze-wheezy upgrade paths where apt chooses to hold back
+gcc-4.4-base and keep gcj-4.4-base installed instead of upgrading
+gcc-4.4-base and removing the obsolete gcj-4.4-base (Andreas Beckmann).
+(Closes: #677582)
+
+ -- Andreas Beckmann deb...@abeckmann.de  Sat, 22 Sep 2012 01:31:33 +0200
+
 gcc-4.7 (4.7.2-2) unstable; urgency=low
 
   * Fix PR tree-optimization/54563 (), PR target/54564 (fma builtin fix),
diff -u gcc-4.7-4.7.2/debian/control gcc-4.7-4.7.2/debian/control
--- gcc-4.7-4.7.2/debian/control
+++ gcc-4.7-4.7.2/debian/control
@@ -18,7 +18,7 @@
 Priority: required
 Depends: ${misc:Depends}
 Replaces: ${base:Replaces}
-Breaks: gcj-4.6-base ( 4.6.1-4~), gnat-4.6 ( 4.6.1-5~), dehydra (= 
0.9.hg20110609-2)
+Breaks: gcj-4.4-base ( 4.4.6-9~), gnat-4.4-base ( 4.4.6-3~), gcj-4.6-base 
( 4.6.1-4~), gnat-4.6 ( 4.6.1-5~), dehydra (= 0.9.hg20110609-2)
 Description: GCC, the GNU Compiler Collection (base package)
  This package contains files common to all languages and libraries
  contained in the GNU Compiler Collection (GCC).
diff -u gcc-4.7-4.7.2/debian/control.m4 gcc-4.7-4.7.2/debian/control.m4
--- gcc-4.7-4.7.2/debian/control.m4
+++ gcc-4.7-4.7.2/debian/control.m4
@@ -105,7 +105,7 @@
 Priority: PRI(required)
 Depends: ${misc:Depends}
 Replaces: ${base:Replaces}
-Breaks: gcj-4.6-base ( 4.6.1-4~), gnat-4.6 ( 4.6.1-5~), dehydra (= 
0.9.hg20110609-2)
+Breaks: gcj-4.4-base ( 4.4.6-9~), gnat-4.4-base ( 4.4.6-3~), gcj-4.6-base 
( 4.6.1-4~), gnat-4.6 ( 4.6.1-5~), dehydra (= 0.9.hg20110609-2)
 Description: GCC, the GNU Compiler Collection (base package)
  This package contains files common to all languages and libraries
  contained in the GNU Compiler Collection (GCC).


Bug#677582: needs to be fixed in gcc-4.7-base (gcc-4.4-base: upgrade problems since removal of gcj-4.4)

2012-09-22 Thread Matthias Klose
I don't want this in gcc-4.7. Please provide a patch for gcc-defaults. This
should work as well.

On 22.09.2012 09:23, Andreas Beckmann wrote:
 reassign 677582 gcc-4.7-base 4.7.2-2
 reopen 677582
 thanks
 
 On 2012-09-21 14:22, Andreas Beckmann wrote:
 [...]
 I'm now trying to add these Breaks to gcc-4.7-base, that can't be held
 back, hopefully.
 
 Attached is a diff that finally fixes this upgrade issue, hopefully.
 gcc-4.7-base isn't that optional as gcc-4.4-base, so it can't be held
 back, actually enforcing the Breaks vs. ancient gcj. I looked a bit into
 the history where these Breaks originated, and since gcc-4.7-base Breaks
 old versions of gcc-4.6-base, I think it would be the right thing to do
 and add the Breaks vs. 4.4, too.
 
  * gcc-4.7-base: ensure smooth upgrades from squeeze by adding
  Breaks: gcj-4.4-base ( 4.4.6-9~), gnat-4.4-base ( 4.4.6-3~)
as in gcc-4.4-base (multiarch patches re-worked in 4.6.1-8/4.4.6-9).
Fixes some squeeze-wheezy upgrade paths where apt chooses to hold back
gcc-4.4-base and keep gcj-4.4-base installed instead of upgrading
gcc-4.4-base and removing the obsolete gcj-4.4-base (Andreas Beckmann).
(Closes: #677582)
 
 The recent changes on gcc-4.4 that attempted to fix this issue by
 upgrading Breaks to Conflicts could be reverted, but they can be left as
 is as they won't do harm (should just add a lintian warning for a
 versioned Conflicts).
 
 I tested this patch with piuparts upgrade tests (squeeze-sid) on a
 selection of the affected java packages (there are about 60-70 in total,
 checked around 10 from different sources), and all passed once I added
 an extra repository with the updated gcc-4.7 packages.
 
 
 Andreas
 


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#677582: needs to be fixed in gcc-4.7-base (gcc-4.4-base: upgrade problems since removal of gcj-4.4)

2012-09-22 Thread Andreas Beckmann
On 2012-09-22 12:08, Matthias Klose wrote:
 I don't want this in gcc-4.7. Please provide a patch for gcc-defaults. This
 should work as well.

That won't work, just tried it. The only package from gcc-defaults that
could be involved in the problematic upgrade paths is gcj-jre-headless
and that will be held back together with gcc-4.4-base after adding
  Breaks: gcj-4.4-base ( 4.4.6-9~)

The problem only manifests for a few java libraries (and their rdepends,
that cannot be tested due to these failures):

libcharva1-java 1.1.4-5
libcobra-java 0.98.4-4
libcrimson-java 1:1.1.3-11
libdtdparser-java 1.21a-5
libexml-java 0.0.20080703-4
libflute-java 1:1.1.6-3
libgcj-bc 4.7.1-1
libgdcm-java 2.2.1-1
libglpk-java 1.0.18-1
libgui-commands-java 1.1.43-6
libhsqldb-java 1.8.0.10-14
libjazzy-java 0.5.2-1
libjboss-aspects-java 4.2.3.GA-7
libjboss-classloader-java 2.0.6.GA-2
libjboss-cluster-java 4.2.3.GA-7
libjboss-connector-java 4.2.3.GA-7
libjboss-deployers-java 2.0.4.GA-2
libjboss-deployment-java 4.2.3.GA-7
libjboss-ejb3-java 4.2.3.GA-7
libjboss-ejb3x-java 4.2.3.GA-7
libjboss-integration-java 5.0.3.GA-2
libjboss-j2ee-java 4.2.3.GA-7
libjboss-jms-java 4.2.3.GA-7
libjboss-jmx-java 4.2.3.GA-7
libjboss-management-java 4.2.3.GA-7
libjboss-messaging-java 4.2.3.GA-7
libjboss-metadata-java 2.0.3.GA-1
libjboss-microcontainer-java 2.0.10.GA-2
libjboss-naming-java 4.2.3.GA-7
libjboss-reflect-java 2.0.3.GA-1
libjboss-security-java 4.2.3.GA-7
libjboss-server-java 4.2.3.GA-7
libjboss-system-java 4.2.3.GA-7
libjboss-test-java 4.2.3.GA-7
libjboss-transaction-java 4.2.3.GA-7
libjboss-vfs-java 2.0.1.GA-2
libjboss-web-services-java 0.0+svn5660+dak2-3
libjboss-webservices-java 4.2.3.GA-7
libjboss-xml-binding-java 2.0.3.GA-2
libjempbox-java 1:1.7.0+dfsg-3
libjgoodies-animation-java 1.2.0-5
libjgoodies-binding-java 2.1.0-1
libjmathtex-java 0.7~pre-6
libjmdns-java 3.4.1-2
libjorbis-java 0.0.17-2
libjrosetta-java 1.0.4-4
libjspeex-java 0.9.7-3
liblaf-plugin-java 1.0-2
libmp3spi-java 1.9.5-1
libsaxon-java 1:6.5.5-8
libsetools-java 3.3.7-3
libswing-layout-java 1.0.4-2
libvecmath-java 1.5.2-3
libvtk-java 5.8.0-13+b1
libxml-commons-resolver1.1-java 1.2-7
libxml-java 1.1.6.dfsg-3
libxmlgraphics-commons-java 1.4.dfsg-4

and my proposed gcc-4.7-base patch fixes all of them, just verified

Andreas


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org