bpo-31355: Travis-CI: re-enable macOS job (#5858)

The long build queues that plagued macOS builds on Travis seem to be
a thing of the past now.
This commit is contained in:
Antoine Pitrou 2018-02-27 21:40:37 +01:00 committed by GitHub
parent 5bd04f964b
commit d7687eb4b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 4 deletions

View File

@ -52,6 +52,15 @@ matrix:
- python -m pip install sphinx~=1.6.1 blurb - python -m pip install sphinx~=1.6.1 blurb
script: script:
- make check suspicious html SPHINXOPTS="-q -W -j4" - make check suspicious html SPHINXOPTS="-q -W -j4"
- os: osx
language: c
compiler: clang
# Testing under macOS is optional until testing stability has been demonstrated.
env: OPTIONAL=true
before_install:
# Python 3 is needed for Argument Clinic and multissl
- brew install xz python3
- export PATH=$(brew --prefix)/bin:$(brew --prefix)/sbin:$PATH
- os: linux - os: linux
language: c language: c
compiler: gcc compiler: gcc
@ -76,9 +85,9 @@ before_install:
- set -e - set -e
- | - |
# Check short-circuit conditions # Check short-circuit conditions
if [ "${TESTING}" != "docs" ] if [[ "${TESTING}" != "docs" ]]
then then
if [ "$TRAVIS_PULL_REQUEST" = "false" ] if [[ "$TRAVIS_PULL_REQUEST" == "false" ]]
then then
echo "Not a PR, doing full build." echo "Not a PR, doing full build."
else else
@ -101,7 +110,7 @@ before_install:
install: install:
- | - |
# Install OpenSSL as necessary # Install OpenSSL as necessary
if [ "${TESTING}" != "docs" ] if [[ "${TESTING}" != "docs" ]]
then then
# clang complains about unused-parameter a lot, redirect stderr # clang complains about unused-parameter a lot, redirect stderr
python3 Tools/ssl/multissltests.py --steps=library \ python3 Tools/ssl/multissltests.py --steps=library \

View File

@ -27,6 +27,11 @@ def get_exported_symbols():
def get_smelly_symbols(stdout): def get_smelly_symbols(stdout):
symbols = [] symbols = []
ignored_symtypes = set() ignored_symtypes = set()
allowed_prefixes = ('Py', '_Py')
if sys.platform == 'darwin':
allowed_prefixes += ('__Py',)
for line in stdout.splitlines(): for line in stdout.splitlines():
# Split line '0000000000001b80 D PyTextIOWrapper_Type' # Split line '0000000000001b80 D PyTextIOWrapper_Type'
if not line: if not line:
@ -47,7 +52,7 @@ def get_smelly_symbols(stdout):
continue continue
symbol = parts[-1] symbol = parts[-1]
if symbol.startswith(('Py', '_Py')): if symbol.startswith(allowed_prefixes):
continue continue
symbol = '%s (type: %s)' % (symbol, symtype) symbol = '%s (type: %s)' % (symbol, symtype)
symbols.append(symbol) symbols.append(symbol)