diff --git a/azure-pipelines.yml b/azure-pipelines.yml index d3e716d74d..2224e1fcd9 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -37,19 +37,19 @@ jobs: sendCoverage: "true" mac_python_2_7: python.version: "2.7" - imageName: macos-10.13 + imageName: macOS-10.15 sendCoverage: "false" mac_python_3_5: python.version: "3.5" - imageName: macos-10.13 + imageName: macOS-10.15 sendCoverage: "false" mac_python_3_6: python.version: "3.6" - imageName: macos-10.13 + imageName: macOS-10.15 sendCoverage: "false" mac_python_3_7: python.version: "3.7" - imageName: macos-10.13 + imageName: macOS-10.15 sendCoverage: "false" windows_python_2_7: python.version: "2.7" diff --git a/setup.py b/setup.py index 6dd02b3b85..894bef93aa 100644 --- a/setup.py +++ b/setup.py @@ -14,6 +14,7 @@ # limitations under the License. import os +import sys from distutils.core import setup from setuptools import find_packages @@ -38,6 +39,13 @@ def read(fname): with open(os.path.join(repository_dir, 'requirements.txt')) as fh: requirements = fh.readlines() +# soupsieve is not a direct requirement of this package, but left to it's own +# devices a version >= 2.0 is installed for Python 2 which is not compatible. +# Therefore perform the installation of a compatible package before any other +# packages are installed. +if sys.version_info.major == 2: + requirements.insert(0, "soupsieve<2.0") + with open(os.path.join(repository_dir, 'test_requirements.txt')) as fh: test_requirements = fh.readlines() diff --git a/src/mbed_os_tools/detect/darwin.py b/src/mbed_os_tools/detect/darwin.py index 2533b4508b..701ac5cbf8 100644 --- a/src/mbed_os_tools/detect/darwin.py +++ b/src/mbed_os_tools/detect/darwin.py @@ -43,7 +43,8 @@ def _plist_from_popen(popen): return [] try: try: - # Try simple and fast first if this fails fall back to the slower but better process + # Try simple and fast first if this fails fall back to the slower but + # more robust process. return loads(out) except ExpatError: # Beautiful soup ensures the XML is properly formed after it is parsed