[New-bugs-announce] [issue35186] distutils.command.upload uses deprecated platform.dist with bdist_rpm

Paul Ganssle report at bugs.python.org
Wed Nov 7 20:56:11 EST 2018

New submission from Paul Ganssle <p.ganssle at gmail.com>:

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).

components: Distutils
messages: 329453
nosy: dstufft, eric.araujo, p-ganssle
priority: normal
severity: normal
status: open
title: distutils.command.upload uses deprecated platform.dist with bdist_rpm
versions: Python 3.6, Python 3.7, Python 3.8

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list