classification
Title: distutils.command.upload uses deprecated platform.dist with bdist_rpm
Type: Stage: patch review
Components: Distutils Versions: Python 3.8, Python 3.7, Python 3.6
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: dstufft, eric.araujo, p-ganssle
Priority: normal Keywords: patch

Created on 2018-11-08 01:56 by p-ganssle, last changed 2018-11-08 14:43 by p-ganssle.

Pull Requests
URL Status Linked Edit
PR 10414 open p-ganssle, 2018-11-08 14:43
Messages (1)
msg329453 - (view) Author: Paul Ganssle (p-ganssle) * Date: 2018-11-08 01:56
It seems that in issue #1322, `platform.dist` was deprecated, and is slated for removal in Python 3.8, but it is currently used in distutils.command.upload.upload_file: https://github.com/python/cpython/blob/6843ffe4533e9f2cde036296fd932fef6f059687/Lib/distutils/command/upload.py#L126

As far as I can tell, this line is hit only when you run `python setup.py bdist_rpm upload`, as far as I can tell.

Using the `upload` command is *itself* very deprecated, and is dangerously broken in many ways. See, for example, this setuptools issue: https://github.com/pypa/setuptools/issues/1381

So I see three possible options (two realistic):

1. Remove the whole "comment" field from the upload, both for bdist_rpm and bdist_dumb. I'm not sure if PyPI uses this for anything, but I highly doubt it.

2. Have both bdist_rpm and bdist_dumb send a comment based on `platform.platform(terse=1)`

3. Remove the upload command functionality entirely for Python 3.8 with no deprecation warning.

Obviously #3 is the unrealistic one, but it's very tempting. That said, I think we should go with #1 and maybe open a separate issue to actually deprecate the `upload` command in distutils (though to be honest we'll probably monkey-patch it out of existence in setuptools within a year and everyone uses `setuptools` anyway, so maybe #3 is less unrealistic than it seems).
History
Date User Action Args
2018-11-08 14:43:00p-gansslesetkeywords: + patch
stage: patch review
pull_requests: + pull_request9694
2018-11-08 01:56:11p-gansslecreate