On Wed, May 7, 2014 at 4:11 PM, Paul Tagliamonte <paul...@ubuntu.com> wrote: > On Wed, May 7, 2014 at 5:01 PM, Steve Langasek <vor...@debian.org> wrote: >> FWIW, while I think getting the python policy to recommend Python3 is a good >> step forward, I think it's more important that we make sure the base system >> is leading by example. As described on debian-devel[1], there seem to be >> some porting blockers before we can migrate from python to python3 in the >> standard install. >> >> [1] https://lists.debian.org/debian-devel/2014/04/msg00784.html > > Ugh, suds strikes again. > > If I had more time to blow, I'd likely try a run at something SUDS API > compatible in Python 3. Won't happen any time soon for me, but it's > something I will eternally praise someone over. > > So many people have tried to forward-port the SUDS codebase, > apparently it's *bad*.
I do not consider suds to be the issue here. Currently the python-debianbts library uses SOAPpy. I opted to attempt to port the codebase to suds rather than port SOAPpy to python3. I have worked with a multitude of SOAP libraries in a few different languages and I have found suds to be easy to use and very efficient in comparison to other options. If you want to see a *bad* SOAP library codebase, have a look at python-zsi. In order to even get started with the port, I had to write a WSDL. I was very surprised to find a SOAP service that didn't expose one. Luckily, some of the work had already been done for an Emacs plugin which I was able to use as a base. The XML I was unable to get suds to produce in a call was XML that I would have otherwise never expected to be correct for a SOAP request. Let's take the get_usertag() method as an example, which the documentation says takes an email address and a list of tags. This is what I expect with an array of something in SOAP (usually there is a wsdl to tell exactly what it expects): <email>foo</email> <tags> <tag>foo</tag> <tag>bar</tag> </tags> What debbugs expects: <email>foo</email> <tag1>foo</tag1> <icannamethisanything>bar</icannamethisanything> It doesn't care about the names of the tags, it only cares about order. Since the first example matches the SOAP specification for arrays and the later does not[1], I consider debbugs to be broken, not suds. [1] http://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383522 Regards, Jordan Metzmeier -- To UNSUBSCRIBE, email to debian-python-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/cad758rhesybhjhenzumk4y6o8qjean6skexbvfyqng5v3ky...@mail.gmail.com