diff options
| author | Jason R. Coombs <jaraco@jaraco.com> | 2022-02-12 05:39:08 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-12 05:39:08 -0500 |
| commit | 577af8b46e0929731de6ebfefccd0f6d870d1ed4 (patch) | |
| tree | 1a59ea34992910179333379cbff1d9cc9f9f5e4f /setuptools/build_meta.py | |
| parent | b653408e78891c6ce827ea237d3cd9f6e6a9a2f3 (diff) | |
| parent | 6b0b410572b11e0be9a62ff478616abfddc8633a (diff) | |
| download | python-setuptools-git-577af8b46e0929731de6ebfefccd0f6d870d1ed4.tar.gz | |
Merge pull request #2876 from gentlegiantJGC/main
Fixed string list concatenation error
Diffstat (limited to 'setuptools/build_meta.py')
| -rw-r--r-- | setuptools/build_meta.py | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/setuptools/build_meta.py b/setuptools/build_meta.py index 2a5b529a..5dc65e2d 100644 --- a/setuptools/build_meta.py +++ b/setuptools/build_meta.py @@ -38,6 +38,8 @@ import warnings import setuptools import distutils from ._reqs import parse_strings +from .extern.more_itertools import always_iterable + __all__ = ['get_requires_for_build_sdist', 'get_requires_for_build_wheel', @@ -127,9 +129,24 @@ def suppress_known_deprecation(): class _BuildMetaBackend: - def _fix_config(self, config_settings): + @staticmethod + def _fix_config(config_settings): + """ + Ensure config settings meet certain expectations. + + >>> fc = _BuildMetaBackend._fix_config + >>> fc(None) + {'--global-option': []} + >>> fc({}) + {'--global-option': []} + >>> fc({'--global-option': 'foo'}) + {'--global-option': ['foo']} + >>> fc({'--global-option': ['foo']}) + {'--global-option': ['foo']} + """ config_settings = config_settings or {} - config_settings.setdefault('--global-option', []) + config_settings['--global-option'] = list(always_iterable( + config_settings.get('--global-option'))) return config_settings def _get_build_requires(self, config_settings, requirements): |
