Skip to content

Commit

Permalink
Merge pull request #3482 from pypa/bugfix/format-commands-regr
Browse files Browse the repository at this point in the history
  • Loading branch information
jaraco authored Aug 3, 2022
2 parents d90cf84 + 7c55391 commit 6a6f41f
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 10 deletions.
1 change: 1 addition & 0 deletions changelog.d/3482.misc.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Sync with pypa/distutils@274758f1c02048d295efdbc13d2f88d9923547f8, restoring compatibility shim in bdist.format_commands.
37 changes: 27 additions & 10 deletions setuptools/_distutils/command/bdist.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
distribution)."""

import os
import warnings

from distutils.core import Command
from distutils.errors import DistutilsPlatformError, DistutilsOptionError
from distutils.util import get_platform
Expand All @@ -20,6 +22,16 @@ def show_formats():
pretty_printer.print_help("List of available distribution formats:")


class ListCompat(dict):
# adapter to allow for Setuptools compatibility in format_commands
def append(self, item):
warnings.warn(
"""format_commands is now a dict. append is deprecated.""",
DeprecationWarning,
stacklevel=2,
)


class bdist(Command):

description = "create a built (binary) distribution"
Expand Down Expand Up @@ -65,18 +77,23 @@ class bdist(Command):
default_format = {'posix': 'gztar', 'nt': 'zip'}

# Define commands in preferred order for the --help-formats option
format_commands = dict(
rpm=('bdist_rpm', "RPM distribution"),
gztar=('bdist_dumb', "gzip'ed tar file"),
bztar=('bdist_dumb', "bzip2'ed tar file"),
xztar=('bdist_dumb', "xz'ed tar file"),
ztar=('bdist_dumb', "compressed tar file"),
tar=('bdist_dumb', "tar file"),
wininst=('bdist_wininst', "Windows executable installer"),
zip=('bdist_dumb', "ZIP file"),
msi=('bdist_msi', "Microsoft Installer"),
format_commands = ListCompat(
{
'rpm': ('bdist_rpm', "RPM distribution"),
'gztar': ('bdist_dumb', "gzip'ed tar file"),
'bztar': ('bdist_dumb', "bzip2'ed tar file"),
'xztar': ('bdist_dumb', "xz'ed tar file"),
'ztar': ('bdist_dumb', "compressed tar file"),
'tar': ('bdist_dumb', "tar file"),
'wininst': ('bdist_wininst', "Windows executable installer"),
'zip': ('bdist_dumb', "ZIP file"),
'msi': ('bdist_msi', "Microsoft Installer"),
}
)

# for compatibility until consumers only reference format_commands
format_command = format_commands

def initialize_options(self):
self.bdist_base = None
self.plat_name = None
Expand Down

0 comments on commit 6a6f41f

Please sign in to comment.