Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Sebastian, On Sa 30 Aug 2014 19:05:20 CEST, Sebastian Ramacher wrote: Here is a patch that implements the split. I've also renamed There was no patch attached to your mail. libfreerdp1-dbg to libfreerdp-dbg that contains the debug symbols for all shared libraries. The descriptions might need an update since I'm not really familiar what all the shared libraries do. Additionally there is fix included for the lintian warnings / errors in libfreerdp-standard-plugins. dh_makeshlibs is now told to ignore the plugins. Looking forward to introspecting it! Mike -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148 GnuPG Key ID 0x25771B31 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb pgpH8p9HZtjRp.pgp Description: Digitale PGP-Signatur
Bug#757926: ABI changes in libfreerdp1 makes other software break
Control: tags -1 + patch Hi Mike On 2014-08-26 21:44:56, Mike Gabriel wrote: > > Since this is becoming a blocker now for vlc and the libav transition, > > would you accept a patch that splits the shared libraries into separate > > binary packages? After that, a round of binNMUs is enough for the > > reverse dependencies to pick up the correct dependencies and this should > > not be a issue any longer. > > > > Please let me know what you think and I'll start working on a patch. > > Getting all the .so files in separate bin:packages is on my todo list > anyway, but I won't get to it before the midst of September. I will be > happy about sharing the work load. Here is a patch that implements the split. I've also renamed libfreerdp1-dbg to libfreerdp-dbg that contains the debug symbols for all shared libraries. The descriptions might need an update since I'm not really familiar what all the shared libraries do. Additionally there is fix included for the lintian warnings / errors in libfreerdp-standard-plugins. dh_makeshlibs is now told to ignore the plugins. Cheers -- Sebastian Ramacher signature.asc Description: Digital signature
Processed: Re: Bug#757926: ABI changes in libfreerdp1 makes other software break
Processing control commands: > tags -1 + patch Bug #757926 [libfreerdp1] ABI changes in libfreerdp1 makes other software break Bug #757605 [libfreerdp1] libfreerdp1: changes to soname cause remmina RDP plugin to fail Added tag(s) patch. Added tag(s) patch. -- 757605: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757605 757926: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757926 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Sebastian, - Original message - > Control: block 757917 by -1 > > Hi Mike > > On 2014-08-12 15:02:01, Mike Gabriel wrote: > > My suggestion would be to: > > > > (1) rename bin:package libfreerdp1 to some other name (actually, I am > > thinking to package > > all lib*.so.* files in individual bin:packages) > > (2) rename bin:package libfreerdp-dev to some other name > > (3) re-introduce a libfreerdp-1-0 package (providing libfreerdp1) and a > > libfreerdp-dev > > package providing the older headers. This then would be a new > > src:package ((lib)freerdp-1.0). > > > > I guess, this should fix those current issues, right? > > Since this is becoming a blocker now for vlc and the libav transition, > would you accept a patch that splits the shared libraries into separate > binary packages? After that, a round of binNMUs is enough for the > reverse dependencies to pick up the correct dependencies and this should > not be a issue any longer. > > Please let me know what you think and I'll start working on a patch. Getting all the .so files in separate bin:packages is on my todo list anyway, but I won't get to it before the midst of September. I will be happy about sharing the work load. Greetings, Mike -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976148 GnuPG Key ID 0x25771B13 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Processed: Re: Bug#757926: ABI changes in libfreerdp1 makes other software break
Processing control commands: > block 757917 by -1 Bug #757917 [release.debian.org] transition: libav11 757917 was blocked by: 758017 758203 758205 757917 was not blocking any bugs. Added blocking bug(s) of 757917: 757605 and 757926 -- 757917: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757917 757926: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757926 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
Control: block 757917 by -1 Hi Mike On 2014-08-12 15:02:01, Mike Gabriel wrote: > My suggestion would be to: > > (1) rename bin:package libfreerdp1 to some other name (actually, I am > thinking to package > all lib*.so.* files in individual bin:packages) > (2) rename bin:package libfreerdp-dev to some other name > (3) re-introduce a libfreerdp-1-0 package (providing libfreerdp1) and a > libfreerdp-dev > package providing the older headers. This then would be a new > src:package ((lib)freerdp-1.0). > > I guess, this should fix those current issues, right? Since this is becoming a blocker now for vlc and the libav transition, would you accept a patch that splits the shared libraries into separate binary packages? After that, a round of binNMUs is enough for the reverse dependencies to pick up the correct dependencies and this should not be a issue any longer. Please let me know what you think and I'll start working on a patch. Cheers -- Sebastian Ramacher signature.asc Description: Digital signature
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Mike, On 12.08.2014 19:36, Mike Gabriel wrote: On Di 12 Aug 2014 17:43:13 CEST, Andreas Cadhalpun wrote: There are only four packages build-depending on libfreerdp-dev: * remmina: fails to build for unrelated reasons Actually, this is probably related, I just didn't realize, what this CMake error means: CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: FREERDP_CHANNELS_LIBRARY linked by target "remmina-plugin-rdp" in directory /tmp/buildd/remmina-1.0.0/remmina-plugins/rdp FREERDP_KBD_LIBRARY linked by target "remmina-plugin-rdp" in directory /tmp/buildd/remmina-1.0.0/remmina-plugins/rdp I have this wild guess that some of upstream's commits [1, 2, 3] could fix remmina when building against freerdp 1.1. Luca seems to think so, too: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757821#10 Best regards, Andreas -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Andreas, hi Luka, On Di 12 Aug 2014 17:43:13 CEST, Andreas Cadhalpun wrote: There are only four packages build-depending on libfreerdp-dev: * remmina: fails to build for unrelated reasons I have this wild guess that some of upstream's commits [1, 2, 3] could fix remmina when building against freerdp 1.1. I haven't tested it, yet, but will try that tomorrow (unless I receive notice from either of you, having been faster than me). [1] https://github.com/FreeRDP/Remmina/commit/9369ddb49d1dc1c082c1f5552c5937678dd3d2d2.patch [2] https://github.com/FreeRDP/Remmina/commit/630f587f4163e934aa27eea371ab1953427ad334.patch [3] https://github.com/FreeRDP/Remmina/commit/a2ed720b365cf75eec91952889393bcaede08d32.patch Regards+Greets, Mike -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148 GnuPG Key ID 0x25771B31 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb pgpW1U9ZXa6q3.pgp Description: Digitale PGP-Signatur
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Andreas, On Di 12 Aug 2014 17:43:13 CEST, Andreas Cadhalpun wrote: There are only four packages build-depending on libfreerdp-dev: * guacamole-server: builds with new API * remmina: fails to build for unrelated reasons * vlc: FAILS with new API * xrdp: builds with new API thanks for checking these... Given that there are only 4 reverse-build-dependencies and only one of them fails to build with the new API, this plan seems to be overkill. I think it would be better to: a) fix the current breakage by reverting to the version in jessie b) upload the new version with new package names to experimental c) create a patch for VLC (possibly with upstream help) d) upload the new freerdp to unstable e) upload the patched VLC and request binNMUs for the others As the problem is very easy to fix in VLC [1], I will file a bug against the vlc package and ask kindly to prepare a new (sourceful) uploade of vlc. @Luca: any idea why remmina is FTBFS'ing? I will test that later and see myself. Mike [1] https://github.com/videolan/vlc/commit/14c90980a039175db436beb65419b8146c056db5.patch -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148 GnuPG Key ID 0x25771B31 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb pgpbWaMn8pNKp.pgp Description: Digitale PGP-Signatur
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi Mike, On 12.08.2014 17:02, Mike Gabriel wrote: sorry for not checking the API/ABI dependencies/compatibilities of libfreerdp any better. There are requests to have the new API/ABI (e.g. from the vinagre maintainer), as well. I'm not sure how vinagre uses freerdp, but it doesn't build-depend on libfreerdp-dev and the binary package only recommends freerdp-x11. But at the same time, we break several packages from upstream projects that have not migrated their code to the new freerdp-1.1 ABI/API. There are only four packages build-depending on libfreerdp-dev: * guacamole-server: builds with new API * remmina: fails to build for unrelated reasons * vlc: FAILS with new API * xrdp: builds with new API My suggestion would be to: (1) rename bin:package libfreerdp1 to some other name (actually, I am thinking to package all lib*.so.* files in individual bin:packages) (2) rename bin:package libfreerdp-dev to some other name (3) re-introduce a libfreerdp-1-0 package (providing libfreerdp1) and a libfreerdp-dev package providing the older headers. This then would be a new src:package ((lib)freerdp-1.0). I guess, this should fix those current issues, right? Given that there are only 4 reverse-build-dependencies and only one of them fails to build with the new API, this plan seems to be overkill. I think it would be better to: a) fix the current breakage by reverting to the version in jessie b) upload the new version with new package names to experimental c) create a patch for VLC (possibly with upstream help) d) upload the new freerdp to unstable e) upload the patched VLC and request binNMUs for the others Best regards, Andreas -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi all, sorry for not checking the API/ABI dependencies/compatibilities of libfreerdp any better. There are requests to have the new API/ABI (e.g. from the vinagre maintainer), as well. But at the same time, we break several packages from upstream projects that have not migrated their code to the new freerdp-1.1 ABI/API. On Di 12 Aug 2014 16:29:12 CEST, Luca Falavigna wrote: 2014-08-12 16:19 GMT+02:00 Andreas Cadhalpun : As the API apparently changed, the SONAME change is correct, but according to Policy 8.1, the package name of the library must be changed in such a case. IIRC, API changes should be quite easy to address, renaming the -dev package should be avoided as it introduces a much higher maintenance burden on top of reverse-dependencies, which have to be transitioned with sourceful uploads. Probably the best way forward is to revert to the version in jessie (possibly via an epoch) and then package the new upstream version properly. I think the problem could be better addressed by renaming the library package to libfreerdp1d0, and make sure it builds on all architectures (apparently, it fails in several architectures due to missing symbols, another clue of a potential ABI break). My suggestion would be to: (1) rename bin:package libfreerdp1 to some other name (actually, I am thinking to package all lib*.so.* files in individual bin:packages) (2) rename bin:package libfreerdp-dev to some other name (3) re-introduce a libfreerdp-1-0 package (providing libfreerdp1) and a libfreerdp-dev package providing the older headers. This then would be a new src:package ((lib)freerdp-1.0). I guess, this should fix those current issues, right? Happy about feedback... Mike -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148 GnuPG Key ID 0x25771B31 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb pgp11EbgrSufR.pgp Description: Digitale PGP-Signatur
Bug#757926: ABI changes in libfreerdp1 makes other software break
Hi, On 12.08.2014 16:29, Luca Falavigna wrote: 2014-08-12 16:19 GMT+02:00 Andreas Cadhalpun : As the API apparently changed, the SONAME change is correct, but according to Policy 8.1, the package name of the library must be changed in such a case. IIRC, API changes should be quite easy to address, Do you know of a transition guide (or even a patch for VLC)? renaming the -dev package should be avoided as it introduces a much higher maintenance burden on top of reverse-dependencies, which have to be transitioned with sourceful uploads. I didn't suggest to rename the -dev package, but rather the library package, just as you do below. Probably the best way forward is to revert to the version in jessie (possibly via an epoch) and then package the new upstream version properly. I think the problem could be better addressed by renaming the library package to libfreerdp1d0, A better name would be libfreerdp1.1, because that is the soversion: objdump -p /usr/lib/x86_64-linux-gnu/libfreerdp-core.so.1.1 | grep SONAME SONAME libfreerdp-core.so.1.1 and make sure it builds on all architectures (apparently, it fails in several architectures due to missing symbols, another clue of a potential ABI break). But changing this will need a transition that involves fixing all reverse dependencies. Therefore I think it would be better to revert the version in sid to the version in jessie and upload this new version with the new library package name to experimental first, also because it has to go through binary-NEW. Best regards, Andreas -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
2014-08-12 16:19 GMT+02:00 Andreas Cadhalpun : > As the API apparently changed, the SONAME change is correct, but according > to Policy 8.1, the package name of the library must be changed in such a > case. IIRC, API changes should be quite easy to address, renaming the -dev package should be avoided as it introduces a much higher maintenance burden on top of reverse-dependencies, which have to be transitioned with sourceful uploads. > Probably the best way forward is to revert to the version in jessie > (possibly via an epoch) and then package the new upstream version properly. I think the problem could be better addressed by renaming the library package to libfreerdp1d0, and make sure it builds on all architectures (apparently, it fails in several architectures due to missing symbols, another clue of a potential ABI break). Cheers, Luca -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
On 12.08.2014 15:36, Luca Falavigna wrote: Package: libfreerdp1 Version: 1.1.0~git20140809.1.b07a5c1+dfsg-1 Severity: grave Dear Maintainer, with latest changes in FreeRDP, libfreerdp1 changes its internal structure, causing depenent packages to fail to load. remmina is an example of this (see #757821), it requires some of the objects provided by libfreerdp1, but these are not available anymore: $ ldd /usr/lib/remmina/plugins/remmina-plugin-rdp.so | grep found libfreerdp-core.so.1.0 => not found libfreerdp-gdi.so.1.0 => not found libfreerdp-kbd.so.1.0 => not found libfreerdp-codec.so.1.0 => not found libfreerdp-channels.so.1.0 => not found $ VLC (more specifically /usr/lib/vlc/plugins/access/librdp_plugin.so) is also affected by this. Even worse, VLC fails to build against this new version of libfreerdp: rdp.c: In function 'preConnectHandler': rdp.c:201:25: error: 'rdpSettings' has no member named 'sw_gdi' p_instance->settings->sw_gdi = true; /* render in buffer */ ^ rdp.c:202:25: error: 'rdpSettings' has no member named 'fullscreen' p_instance->settings->fullscreen = true; ^ rdp.c:203:25: error: 'rdpSettings' has no member named 'hostname' p_instance->settings->hostname = strdup( p_sys->psz_hostname ); ^ rdp.c:204:25: error: 'rdpSettings' has no member named 'username' p_instance->settings->username = ^ rdp.c:206:25: error: 'rdpSettings' has no member named 'password' p_instance->settings->password = ^ rdp.c:208:25: error: 'rdpSettings' has no member named 'port' p_instance->settings->port = p_sys->i_port; ^ rdp.c:209:25: error: 'rdpSettings' has no member named 'encryption' p_instance->settings->encryption = ^ I'm not sure whether FreeRDP SONAME should have been bumped upstream, but the changes introduced in the latest versions uploaded to Debian are breaking other software in the archive. As the API apparently changed, the SONAME change is correct, but according to Policy 8.1, the package name of the library must be changed in such a case. Probably the best way forward is to revert to the version in jessie (possibly via an epoch) and then package the new upstream version properly. Best regards, Andreas -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#757926: ABI changes in libfreerdp1 makes other software break
Package: libfreerdp1 Version: 1.1.0~git20140809.1.b07a5c1+dfsg-1 Severity: grave Dear Maintainer, with latest changes in FreeRDP, libfreerdp1 changes its internal structure, causing depenent packages to fail to load. remmina is an example of this (see #757821), it requires some of the objects provided by libfreerdp1, but these are not available anymore: $ ldd /usr/lib/remmina/plugins/remmina-plugin-rdp.so | grep found libfreerdp-core.so.1.0 => not found libfreerdp-gdi.so.1.0 => not found libfreerdp-kbd.so.1.0 => not found libfreerdp-codec.so.1.0 => not found libfreerdp-channels.so.1.0 => not found $ I'm not sure whether FreeRDP SONAME should have been bumped upstream, but the changes introduced in the latest versions uploaded to Debian are breaking other software in the archive. Cheers, Luca -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org