<div dir="ltr">Donald, thanks for the thoughtful and complete reply to the original poster. <br><br><div class="gmail_quote"><div dir="ltr">On Fri, Aug 4, 2017 at 3:52 PM Donald Stufft <<a href="mailto:donald@stufft.io">donald@stufft.io</a>> wrote:<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div></div></div><div style="word-wrap:break-word"><div>Going through your text, there’s a mixture of things that sort of combined here, I’m kind of just going to stream of conscious reply to them here, because I can’t reply inline.</div><div><br></div><div><br></div></div></blockquote><div><br></div><div>[...]</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div></div><div>> I must have missed the deprecation period that preceded the complete removal of the old APIs. A friendly email would have been nice if you expect me to migrate to a new solution.</div><div><br></div><div>This is a hard balance to strike. When I have generated emails in the past I tend to get a slew of people berating me for sending them emails about things. Particularly for changes like this where there belief is that for most people, the impact should be minimal, if there is any at all. I do try to at least tweet and post to distutils-sig about possibly disruptive changes like this. For this specific change, that thread was at <a href="https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html" target="_blank">https://mail.python.org/pipermail/distutils-sig/2017-June/030766.html</a>.</div><div><br></div><div><br></div><div><div></div></div></div></blockquote><div><br></div><div> [...]</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><div> </div></div><div>> HTTPError: 400 Client Error: Invalid file extension. for url: <a href="https://upload.pypi.org/legacy/" target="_blank">https://upload.pypi.org/legacy/</a></div><div><br></div><div>The ability to upload anything besides sdists, wheels, and eggs was deprecated and removed. You can read the PEP that removed them at <a href="https://www.python.org/dev/peps/pep-0527/" target="_blank">https://www.python.org/dev/peps/pep-0527/</a>.</div><div><br></div></div></blockquote><div><br></div><div>[...]</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div></div><div><br></div><div>> I try python setup.py bdist upload</div><div><br></div><div>As I mentioned above, we deprecated/removed everything but sdist, wheels, and eggs as per PEP 527. We could probably do better error messages here though.</div><div><br></div></div></blockquote><div><br></div><div>Has the team considered putting deprecation messages in the tools to warn of these deprecations before they're removed?  A warning for the API deprecations in pip or the underlying libraries, though not the perfect solution, might go a long way towards informing users of impending changes.</div><div><br></div><div>Thanks, as always, for your efforts.</div><div><br></div><div>Sincerely,</div><div>e.</div><div><br></div></div></div>