[opensuse-factory] MDNS/Bonjour fixes for hplip
Hi all,
I've been suffering from "Unable to communicate with device (code=12)"
errors with hplip for months. These errors are sporadic but tend to
show up when I just needed to print some document urgently.
I traced it down to the mdns implementation of hplip. The upstream bug
report with technical details is
https://bugs.launchpad.net/hplip/+bug/1616861. I believe I have a
working fix now, but I can only test it in my home environment with a
single HP device.
Thus I'd be grateful if some volunteers could check my packages and
report back:
http://download.opensuse.org/repositories/home:/mwilck:/branches:/Printing/o...
The changes will only affect people with more recent printers using
mdns/Bonjour for discovery. Problems that are fixed include "device
communication errors", and silent stopping of the printer queue (this
may happen if the cups backend fails to communicate with the device).
Problem situations (that my patches should fix) occur in particular if
the HP devices are not on the "default" network that the kernel would
use for multicast (e.g. default route is through wired LAN but HP
device only reachable through Wifi).
Regards
Martin
--
Dr. Martin Wilck
Hello, On Aug 25 14:31 Martin Wilck wrote (excerpt):
the mdns implementation of hplip
Only an addendum FYI: In general regarding that HPLIP has its own mdns implementation, see in particular https://bugzilla.opensuse.org/show_bug.cgi?id=528819#c7 (excerpts): ---------------------------------------------------------- mdns is already handled by avahi ... hplip must not implement mdns itself but rather use avahi, it just doesn't work well if two services try to listen to the same udp port. ---------------------------------------------------------- Regarding "hplip must not implement mdns itself" I filed https://bugs.launchpad.net/hplip/+bug/426153 but nothing at all happened there since 2009-09-08. Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Graham Norton - HRB 21284 (AG Nuernberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hello Martin, On Aug 25 14:31 Martin Wilck wrote (excerpt):
From what I read there I would "just accept" your fixes if you submit them for hplip in the "Printing" project provided(!) you would maintain your fixes in the future which means you adapt them so that they still apply in future HPLIP versions and you remove them when the issue is fixed upstream and that you would also have a look if there appear openSUSE bug reports regarding HPLIP and MDNS/Bonjour because I know basically nothing at all about MDNS/Bonjour.
In general see "How to contribute to the Printing project" https://en.opensuse.org/openSUSE:How_to_contribute_to_the_Printing_project If you could verify that with your fixes it still works for you with your printer under openSUSE Leap 42.1 (or on SLES12) and if you agree to maintain your fixes, please do a submitrequest from home:mwilck:branches:Printing/hplip to Printing/hplip Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Graham Norton - HRB 21284 (AG Nuernberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Johannes, On Thu, 2016-08-25 at 17:30 +0200, Johannes Meixner wrote:
Hello Martin,
On Aug 25 14:31 Martin Wilck wrote (excerpt):
From what I read there I would "just accept" your fixes if you submit them for hplip in the "Printing" project provided(!) you would maintain your fixes in the future which means you adapt them so that they still apply in future HPLIP versions and you remove them when the issue is fixed upstream and that you would also have a look if there appear openSUSE bug reports regarding HPLIP and MDNS/Bonjour because I know basically nothing at all about MDNS/Bonjour.
That's ok.
If you could verify that with your fixes it still works for you with your printer under openSUSE Leap 42.1 (or on SLES12) and if you agree to maintain your fixes, please do a submitrequest from home:mwilck:branches:Printing/hplip to Printing/hplip
Created request id 423053. Verified under Leap 42.1. Of course I agree
to maintain my code, hoping that this doesn't make me the hplip
maintainer :-)
Cheers,
Martin
PS: I noticed that the hplip package doesn't build
for openSUSE:Backports:SLE-12 x86_64 because of missing cups154
package. Strangely, the other architectures aren't affected, and the
package also builds for SLE_12 plain.
--
Dr. Martin Wilck
Hello Martin, On Aug 26 13:59 Martin Wilck wrote (excerpt):
Created request id 423053. Verified under Leap 42.1. Of course I agree to maintain my code, hoping that this doesn't make me the hplip maintainer :-)
Of course this does not make you THE hplip maintainer. But I granted you write permissions for the hplip package in the Printing project so that you can now directly work on it. Technically this means you are now one of the maintainers of the hplip package in the Printing project (but you are not a bugowner of hplip). Unfortunately I had to decline your submitrequest 423053 because there is no RPM changelog entry that describes it. You could just use your really perfect submitrequest message as RPM changelog entry. I like it when RPM changelog entries are explanatory so that even relatively unexperienced users can understand what an issue is about (regardless whether or not others may prefer terse RPM changelog entries). As you now have write permissions for the hplip package in the Printing project you do no longer need my accept for a submitrequest. You could now change hplip directly in the Printing project. But I do not recommend that - and I never work this way. I always branch it and then I test my own branch and only if it works for me I do a submitrequest that I accept myself. For me the crucial point of the branch is that I can test that my own branch works for me which is a mandatory precondition before submitting changes to the Printing project, cf. https://en.opensuse.org/openSUSE:How_to_contribute_to_the_Printing_project
PS: I noticed that the hplip package doesn't build for openSUSE:Backports:SLE-12 x86_64 because of missing cups154 package. Strangely, the other architectures aren't affected, and the package also builds for SLE_12 plain.
Don't worry about openSUSE:Backports - its policy is a dead end for me: One cannot have packages in openSUSE:Backports that also exist in SLE_12 - in particulat one cannot provide version upgrades for printer driver packages via openSUSE:Backports, cf. http://lists.opensuse.org/opensuse-factory/2015-10/msg00594.html Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Graham Norton - HRB 21284 (AG Nuernberg)
On Fri, 2016-08-26 at 15:25 +0200, Johannes Meixner wrote:
I like it when RPM changelog entries are explanatory so that even relatively unexperienced users can understand what an issue is about (regardless whether or not others may prefer terse RPM changelog entries).
Hmm, I didn't quite grok this when you first wrote it. I just committed
a new version to my branch with a terse commit message:
- Fixed device communication/detection problems with mdns/Bonjour
see https://bugs.launchpad.net/hplip/+bug/1616861
The launchpad bug contains an explanation similar to the one in my
request. If this is OK for you, I'll resubmit & accept as you
suggested. Otherwise I'll rework the change message to make it more
verbose.
Martin
--
Dr. Martin Wilck
Hello Martin, On Aug 26 15:41 Martin Wilck wrote (excerpt):
On Fri, 2016-08-26 at 15:25 +0200, Johannes Meixner wrote:
I like it when RPM changelog entries are explanatory so that even relatively unexperienced users can understand what an issue is about (regardless whether or not others may prefer terse RPM changelog entries).
Hmm, I didn't quite grok this when you first wrote it. I just committed a new version to my branch with a terse commit message:
- Fixed device communication/detection problems with mdns/Bonjour see https://bugs.launchpad.net/hplip/+bug/1616861
Everything is perfectly o.k. because https://en.opensuse.org/openSUSE:How_to_contribute_to_the_Printing_project reads (excerpts): --------------------------------------------------------------------- For each change describe the change and provide a reason why the change was done in the RPM changelog. For example describe what does not work without the change or what additional functionality is provided by the change. Such a reason could be an URL to an openSUSE bug report (e.g. boo#1234) or an URL to an upstream issue report. When there is no URL you need to explain the change and its reason in a way so that others who do not yet know about it can understand what the issue is about. ... For example "Foo-driver version upgrade to 1.2.3" alone is insufficient because it tells only "what" but not "why". In contrast "Bugfix for boo#1234 (upstream issue http://www.example.org/issue4567)" could be perfectly sufficient provided at least one of the openSUSE bug report and the upstream issue report is public accessible and tells about "what" and "why". --------------------------------------------------------------------- => Just resubmit & accept. FYI: What I mean with "terse changelog entry" would be something like - Fix mdns that we had at least in the past more often than not. Kind Regards Johannes Meixner -- SUSE LINUX GmbH - GF: Felix Imendoerffer, Jane Smithard, Graham Norton - HRB 21284 (AG Nuernberg)
participants (2)
-
Johannes Meixner
-
Martin Wilck