<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On May 27, 2013, at 9:33 PM, Donald Stufft <<a href="mailto:donald@stufft.io">donald@stufft.io</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On May 27, 2013, at 6:02 PM, Ralf Schmitt <<a href="mailto:ralf@systemexit.de">ralf@systemexit.de</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Noah Kantrowitz <<a href="mailto:noah@coderanger.net">noah@coderanger.net</a>> writes:<br><br><blockquote type="cite"><blockquote type="cite"><br><br>the xmlrpc api is broken when using http 1.0. the second call to curl<br>uses http/1.0 and returns an empty response:<br><br>$ cat >body.txt <<EOF<br><?xml version='1.0'?><br><methodCall><br><methodName>package_releases</methodName><br><params><br><param><br><value><string>e</string></value><br></param><br></params><br></methodCall><br>EOF<br>$ curl -X POST -d @body.txt <a href="http://pypi.python.org/pypi">http://pypi.python.org/pypi</a> --header "Content-Type:text/xml"<br><?xml version='1.0'?><br><methodResponse><br><params><br><param><br><value><array><data><br><value><string>1.4.5</string></value><br></data></array></value><br></param><br></params><br></methodResponse><br>$ curl -0 -X POST -d @body.txt <a href="http://pypi.python.org/pypi">http://pypi.python.org/pypi</a> --header "Content-Type:text/xml"<br>$ <br></blockquote><br>We have not supported HTTP 1.0 for quite some time. <br></blockquote><br>well, it has been working until at least last friday.<br><br><blockquote type="cite">Even before the CDN move, we used the Host header to route between<br>different HAProxy server blocks on the load balancers. I'm unaware of<br>any reason people would be using HTTP 1.0 clients at this point, HTTP<br>1.1 has been a standard for 14 years now.<br></blockquote><br>the fact that you are unaware of any reason people would be using HTTP<br>1.0 is not a good reason not to support it.<br><br>python 2.6 xmlrpclib uses HTTP/1.0!<br></blockquote><div><br></div><div>Maybe I misunderstand, but xmlrpclib on Python2.6 and the new CDN work fine together.</div><div><br></div><div>$ python2.6                                                                                 (pypi)</div><div>Python 2.6.7 (r267:88850, Oct 11 2012, 20:15:00)</div><div>[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin</div><div>Type "help", "copyright", "credits" or "license" for more information.</div><div>>>> import xmlrpclib</div><div>>>> s = xmlrpclib.ServerProxy("<a href="https://pypi.python.org/pypi">https://pypi.python.org/pypi</a>")</div><div>>>> s</div><div><ServerProxy for <a href="http://pypi.python.org/pypi">pypi.python.org/pypi</a>></div><div>>>> s.user_packages("dstufft")</div><div>[...]</div><div>>>> # Just incase we aren't getting the CDN on <a href="http://pypi.python.org/">pypi.python.org</a></div><div><div>>>> s = xmlrpclib.ServerProxy("<a href="https://pypi.a.ssl.fastly.net/pypi">https://pypi.a.ssl.fastly.net/pypi</a>")</div><div>>>> s.user_packages("dstufft")</div><div>[...]</div></div><br><blockquote type="cite"><br>-- <br>Cheers<br>Ralf<br>_______________________________________________<br>Distutils-SIG maillist  -  <a href="mailto:Distutils-SIG@python.org">Distutils-SIG@python.org</a><br><a href="http://mail.python.org/mailman/listinfo/distutils-sig">http://mail.python.org/mailman/listinfo/distutils-sig</a><br></blockquote></div><br><div>
<div style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><br class="Apple-interchange-newline">-----------------</div><div style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Donald Stufft</div><div style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA</div>
</div>
<br></div>_______________________________________________<br>Distutils-SIG maillist  -  <a href="mailto:Distutils-SIG@python.org">Distutils-SIG@python.org</a><br><a href="http://mail.python.org/mailman/listinfo/distutils-sig">http://mail.python.org/mailman/listinfo/distutils-sig</a><br></blockquote></div><br><div apple-content-edited="true">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Figured it out.</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><br></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Use HTTPS.</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><br></div><div style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; "><div>$ curl -0 -X POST -d @body.txt <a href="https://pypi.python.org/pypi">https://pypi.python.org/pypi</a> --header "Content-Type:text/xml"</div><div><?xml version='1.0'?></div><div><methodResponse></div><div><params></div><div><param></div><div><value><array><data></div><div><value><string>1.4.5</string></value></div><div></data></array></value></div><div></param></div><div></params></div><div></methodResponse></div><div><br></div>-----------------</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">Donald Stufft</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA</div>
</div>
<br></body></html>