[Python-checkins] bpo-31355: Travis-CI: re-enable macOS job (#5858)

Antoine Pitrou webhook-mailer at python.org
Tue Feb 27 15:40:40 EST 2018


https://github.com/python/cpython/commit/d7687eb4b66c9f675b112eff1169326a1766c111
commit: d7687eb4b66c9f675b112eff1169326a1766c111
branch: master
author: Antoine Pitrou <pitrou at free.fr>
committer: GitHub <noreply at github.com>
date: 2018-02-27T21:40:37+01:00
summary:

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.

files:
M .travis.yml
M Tools/scripts/smelly.py

diff --git a/.travis.yml b/.travis.yml
index ab43318975fb..292b9c687638 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,6 +52,15 @@ matrix:
         - python -m pip install sphinx~=1.6.1 blurb
       script:
         - 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
       language: c
       compiler: gcc
@@ -76,9 +85,9 @@ before_install:
   - set -e
   - |
       # Check short-circuit conditions
-      if [ "${TESTING}" != "docs" ]
+      if [[ "${TESTING}" != "docs" ]]
       then
-        if [ "$TRAVIS_PULL_REQUEST" = "false" ]
+        if [[ "$TRAVIS_PULL_REQUEST" == "false" ]]
         then
           echo "Not a PR, doing full build."
         else
@@ -101,7 +110,7 @@ before_install:
 install:
   - |
       # Install OpenSSL as necessary
-      if [ "${TESTING}" != "docs" ]
+      if [[ "${TESTING}" != "docs" ]]
       then
         # clang complains about unused-parameter a lot, redirect stderr
         python3 Tools/ssl/multissltests.py --steps=library \
diff --git a/Tools/scripts/smelly.py b/Tools/scripts/smelly.py
index 212eedb30bc3..43d091654d2d 100755
--- a/Tools/scripts/smelly.py
+++ b/Tools/scripts/smelly.py
@@ -27,6 +27,11 @@ def get_exported_symbols():
 def get_smelly_symbols(stdout):
     symbols = []
     ignored_symtypes = set()
+
+    allowed_prefixes = ('Py', '_Py')
+    if sys.platform == 'darwin':
+        allowed_prefixes += ('__Py',)
+
     for line in stdout.splitlines():
         # Split line '0000000000001b80 D PyTextIOWrapper_Type'
         if not line:
@@ -47,7 +52,7 @@ def get_smelly_symbols(stdout):
             continue
 
         symbol = parts[-1]
-        if symbol.startswith(('Py', '_Py')):
+        if symbol.startswith(allowed_prefixes):
             continue
         symbol = '%s (type: %s)' % (symbol, symtype)
         symbols.append(symbol)



More information about the Python-checkins mailing list