From 23e115d9a8d4038b33c82ad71b0d58700808f3e3 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Tue, 26 Jan 2021 12:27:18 -0300 Subject: [PATCH 01/21] Linux - Conan prev-prev is allowed to fail Signed-off-by: Uilian Ries --- .travis.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index eb34cc9c..3347a905 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,6 +3,8 @@ language: python dist: trusty jobs: + allow_failures: + env: TOXENV=py35-conanprevprev TOXENV=py38-conanprevprev fast_finish: true include: @@ -67,7 +69,7 @@ jobs: before_install: - ./.ci/travis/before_install.sh - + install: - | if [[ "$(uname -s)" == 'Darwin' ]]; then From d6f43cb29e76c38cccacd07eae7d2462beefc155 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Tue, 26 Jan 2021 17:20:20 -0300 Subject: [PATCH 02/21] Skip required_conan_version errors Signed-off-by: Uilian Ries --- .ci/run.py | 27 ++++++++++++++++++--------- .travis.yml | 2 -- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/.ci/run.py b/.ci/run.py index ee572f49..deb160a6 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -9,6 +9,7 @@ import sys import tempfile import uuid +import re from collections import OrderedDict from contextlib import contextmanager from packaging import version @@ -29,7 +30,7 @@ def is_appveyor(): def appveyor_image(): return os.getenv("APPVEYOR_BUILD_WORKER_IMAGE","") - + @contextmanager def chdir(dir_path): @@ -93,7 +94,7 @@ def get_build_list(): build = [it for it in files if "build.py" in it] if not build: build = [it for it in files if os.path.basename(it) == script] - + if build: builds.append(os.path.join(root, build[0])) dirs[:] = [] @@ -182,21 +183,27 @@ def run_scripts(scripts): with chdir(os.path.dirname(script)): print_build(script) build_script = [sys.executable, abspath] if abspath.endswith(".py") else abspath - + # Need to initialize the cache with default files if they are not already there try: subprocess.call(['conan', 'install', 'foobar/foobar@conan/stable'], env=env, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) except: pass - + with ensure_python_environment_preserved(): with ensure_cache_preserved(): - result = subprocess.call(build_script, env=env) - - results[script] = result - if result != 0 and FAIL_FAST: - break + result = subprocess.run(build_script, capture_output=True, env=env) + + results[script] = result.returncode + if result.returncode != 0: + stderror_decoded = result.stderr.decode() + if re.search('Current Conan version \(.*\) does not satisfy the defined one' + , stderror_decoded): + results[script] = "skip" + elif FAIL_FAST: + break + return results @@ -213,6 +220,8 @@ def print_results(results): def get_result_message(result): if result == 0: return colorama.Fore.GREEN + "SUCCESS" + colorama.Style.RESET_ALL + elif result == "skip": + return colorama.Fore.YELLOW + "SKIP" + colorama.Style.RESET_ALL return colorama.Fore.RED + "FAILURE" + colorama.Style.RESET_ALL diff --git a/.travis.yml b/.travis.yml index 3347a905..6498827c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,8 +3,6 @@ language: python dist: trusty jobs: - allow_failures: - env: TOXENV=py35-conanprevprev TOXENV=py38-conanprevprev fast_finish: true include: From ca8da405b00448ae5454ed2ee088861fe014477b Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Wed, 27 Jan 2021 09:19:11 -0300 Subject: [PATCH 03/21] Subprocess.run is not well supported Signed-off-by: Uilian Ries --- .ci/run.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.ci/run.py b/.ci/run.py index deb160a6..b3b18bda 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -193,13 +193,14 @@ def run_scripts(scripts): with ensure_python_environment_preserved(): with ensure_cache_preserved(): - result = subprocess.run(build_script, capture_output=True, env=env) + process = subprocess.Popen(build_script, env=env, stderr=subprocess.PIPE) + process.wait() - results[script] = result.returncode - if result.returncode != 0: - stderror_decoded = result.stderr.decode() + results[script] = process.returncode + if process.returncode != 0: + _, stderror_decoded = process.communicate() if re.search('Current Conan version \(.*\) does not satisfy the defined one' - , stderror_decoded): + , stderror_decoded.decode()): results[script] = "skip" elif FAIL_FAST: break From 9c91e066279d26e7ac7656eb12d17e5ba95c9934 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Thu, 28 Jan 2021 09:00:37 -0300 Subject: [PATCH 04/21] Skip is not an error Signed-off-by: Uilian Ries --- .ci/run.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/run.py b/.ci/run.py index b3b18bda..c158a7f2 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -228,7 +228,7 @@ def get_result_message(result): def validate_results(results): for value in results.values(): - if value != 0: + if value != 0 and value != "skip": sys.exit(value) From 22ddf400b1a328f625137a7af3fa891f9adae180 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Thu, 28 Jan 2021 18:06:38 -0300 Subject: [PATCH 05/21] Run subprocess.run again Signed-off-by: Uilian Ries --- .ci/run.py | 8 +++----- .travis.yml | 18 +++++++++--------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/.ci/run.py b/.ci/run.py index c158a7f2..df8e8ae4 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -193,14 +193,12 @@ def run_scripts(scripts): with ensure_python_environment_preserved(): with ensure_cache_preserved(): - process = subprocess.Popen(build_script, env=env, stderr=subprocess.PIPE) - process.wait() + process = subprocess.run(build_script, env=env, capture_output=True) results[script] = process.returncode if process.returncode != 0: - _, stderror_decoded = process.communicate() - if re.search('Current Conan version \(.*\) does not satisfy the defined one' - , stderror_decoded.decode()): + if re.search(r'Current Conan version \(.*\) does not satisfy the defined one' + , process.stderr.decode()): results[script] = "skip" elif FAIL_FAST: break diff --git a/.travis.yml b/.travis.yml index 6498827c..1a2df56a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,8 +7,8 @@ jobs: include: - stage: Linux - Conan develop - name: Python 3.5 - python: 3.5 + name: Python 3.6 + python: 3.6 env: TOXENV=py35-conandev dist: xenial - name: Python 3.8 @@ -18,8 +18,8 @@ jobs: # All Linux first, check versions - stage: Linux - Conan Current - name: Python 3.5 - python: 3.5 + name: Python 3.6 + python: 3.6 env: TOXENV=py35-conancurrent dist: xenial - name: Python 3.8 @@ -28,8 +28,8 @@ jobs: dist: xenial - stage: Linux - Conan prev - name: Python 3.5 - python: 3.5 + name: Python 3.6 + python: 3.6 env: TOXENV=py35-conanprev dist: xenial - name: Python 3.8 @@ -38,8 +38,8 @@ jobs: dist: xenial - stage: Linux - Conan prev-prev - name: Python 3.5 - python: 3.5 + name: Python 3.6 + python: 3.6 env: TOXENV=py35-conanprevprev dist: xenial - name: Python 3.8 @@ -54,7 +54,7 @@ jobs: os: osx osx_image: xcode10 env: PYVER=py38 TOXENV=py38-conandev - - name: Conan Current - Python 3.5 + - name: Conan Current - Python 3.6 language: generic os: osx osx_image: xcode10 From 6fb546a5020781290c8ae4da945c10af79e5ed7e Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 29 Jan 2021 08:15:31 -0300 Subject: [PATCH 06/21] Update python version Signed-off-by: Uilian Ries --- .travis.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 1a2df56a..cea93b8e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,7 +9,7 @@ jobs: - stage: Linux - Conan develop name: Python 3.6 python: 3.6 - env: TOXENV=py35-conandev + env: TOXENV=py36-conandev dist: xenial - name: Python 3.8 python: 3.8 @@ -20,7 +20,7 @@ jobs: - stage: Linux - Conan Current name: Python 3.6 python: 3.6 - env: TOXENV=py35-conancurrent + env: TOXENV=py36-conancurrent dist: xenial - name: Python 3.8 python: 3.8 @@ -30,7 +30,7 @@ jobs: - stage: Linux - Conan prev name: Python 3.6 python: 3.6 - env: TOXENV=py35-conanprev + env: TOXENV=py36-conanprev dist: xenial - name: Python 3.8 python: 3.8 @@ -40,7 +40,7 @@ jobs: - stage: Linux - Conan prev-prev name: Python 3.6 python: 3.6 - env: TOXENV=py35-conanprevprev + env: TOXENV=py36-conanprevprev dist: xenial - name: Python 3.8 python: 3.8 @@ -58,7 +58,7 @@ jobs: language: generic os: osx osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent + env: PYVER=py36 TOXENV=py36-conancurrent - name: Conan Current - Python 3.8 language: generic os: osx From 5fdf7d40c6f9e38e5c9759759cb866f34c43dd15 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 29 Jan 2021 11:11:38 -0300 Subject: [PATCH 07/21] Update Python version Signed-off-by: Uilian Ries --- .travis.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.travis.yml b/.travis.yml index cea93b8e..e02a68b0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,9 +7,9 @@ jobs: include: - stage: Linux - Conan develop - name: Python 3.6 - python: 3.6 - env: TOXENV=py36-conandev + name: Python 3.7 + python: 3.7 + env: TOXENV=py37-conandev dist: xenial - name: Python 3.8 python: 3.8 @@ -18,9 +18,9 @@ jobs: # All Linux first, check versions - stage: Linux - Conan Current - name: Python 3.6 - python: 3.6 - env: TOXENV=py36-conancurrent + name: Python 3.7 + python: 3.7 + env: TOXENV=py37-conancurrent dist: xenial - name: Python 3.8 python: 3.8 @@ -28,9 +28,9 @@ jobs: dist: xenial - stage: Linux - Conan prev - name: Python 3.6 - python: 3.6 - env: TOXENV=py36-conanprev + name: Python 3.7 + python: 3.7 + env: TOXENV=py37-conanprev dist: xenial - name: Python 3.8 python: 3.8 @@ -38,9 +38,9 @@ jobs: dist: xenial - stage: Linux - Conan prev-prev - name: Python 3.6 - python: 3.6 - env: TOXENV=py36-conanprevprev + name: Python 3.7 + python: 3.7 + env: TOXENV=py37-conanprevprev dist: xenial - name: Python 3.8 python: 3.8 @@ -54,11 +54,11 @@ jobs: os: osx osx_image: xcode10 env: PYVER=py38 TOXENV=py38-conandev - - name: Conan Current - Python 3.6 + - name: Conan Current - Python 3.7 language: generic os: osx osx_image: xcode10 - env: PYVER=py36 TOXENV=py36-conancurrent + env: PYVER=py37 TOXENV=py37-conancurrent - name: Conan Current - Python 3.8 language: generic os: osx From d4d82476cb00e94f9490b1edebd186af0886dc08 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 29 Jan 2021 18:20:17 -0300 Subject: [PATCH 08/21] Emulate check_output Signed-off-by: Uilian Ries --- .ci/run.py | 3 ++- .travis.yml | 30 +++++++++++++++--------------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/.ci/run.py b/.ci/run.py index df8e8ae4..9c62eaac 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -13,6 +13,7 @@ from collections import OrderedDict from contextlib import contextmanager from packaging import version +from subprocess import PIPE import colorama from conans.client.tools.scm import Git @@ -193,7 +194,7 @@ def run_scripts(scripts): with ensure_python_environment_preserved(): with ensure_cache_preserved(): - process = subprocess.run(build_script, env=env, capture_output=True) + process = subprocess.run(build_script, env=env, stdout=PIPE, stderr=PIPE) results[script] = process.returncode if process.returncode != 0: diff --git a/.travis.yml b/.travis.yml index e02a68b0..eb34cc9c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,9 +7,9 @@ jobs: include: - stage: Linux - Conan develop - name: Python 3.7 - python: 3.7 - env: TOXENV=py37-conandev + name: Python 3.5 + python: 3.5 + env: TOXENV=py35-conandev dist: xenial - name: Python 3.8 python: 3.8 @@ -18,9 +18,9 @@ jobs: # All Linux first, check versions - stage: Linux - Conan Current - name: Python 3.7 - python: 3.7 - env: TOXENV=py37-conancurrent + name: Python 3.5 + python: 3.5 + env: TOXENV=py35-conancurrent dist: xenial - name: Python 3.8 python: 3.8 @@ -28,9 +28,9 @@ jobs: dist: xenial - stage: Linux - Conan prev - name: Python 3.7 - python: 3.7 - env: TOXENV=py37-conanprev + name: Python 3.5 + python: 3.5 + env: TOXENV=py35-conanprev dist: xenial - name: Python 3.8 python: 3.8 @@ -38,9 +38,9 @@ jobs: dist: xenial - stage: Linux - Conan prev-prev - name: Python 3.7 - python: 3.7 - env: TOXENV=py37-conanprevprev + name: Python 3.5 + python: 3.5 + env: TOXENV=py35-conanprevprev dist: xenial - name: Python 3.8 python: 3.8 @@ -54,11 +54,11 @@ jobs: os: osx osx_image: xcode10 env: PYVER=py38 TOXENV=py38-conandev - - name: Conan Current - Python 3.7 + - name: Conan Current - Python 3.5 language: generic os: osx osx_image: xcode10 - env: PYVER=py37 TOXENV=py37-conancurrent + env: PYVER=py35 TOXENV=py35-conancurrent - name: Conan Current - Python 3.8 language: generic os: osx @@ -67,7 +67,7 @@ jobs: before_install: - ./.ci/travis/before_install.sh - + install: - | if [[ "$(uname -s)" == 'Darwin' ]]; then From a31e1f409d73eb1d4de97a0ee9fc12904ef5c5b9 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 09:39:35 -0300 Subject: [PATCH 09/21] Split OSX jobs Signed-off-by: Uilian Ries --- .ci/travis/build.sh | 12 +++++++++ .ci/travis/requirements.txt | 4 +++ .travis.yml | 50 ++++++++++++++++++++++--------------- tox.ini | 2 +- 4 files changed, 47 insertions(+), 21 deletions(-) create mode 100755 .ci/travis/build.sh create mode 100644 .ci/travis/requirements.txt diff --git a/.ci/travis/build.sh b/.ci/travis/build.sh new file mode 100755 index 00000000..63b9f610 --- /dev/null +++ b/.ci/travis/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -e +set -x + +if [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "1" ]; then + tox -v features/ +elif [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "2" ]; then + tox -v libraries/ +else + tox -v +fi diff --git a/.ci/travis/requirements.txt b/.ci/travis/requirements.txt new file mode 100644 index 00000000..ae094b1b --- /dev/null +++ b/.ci/travis/requirements.txt @@ -0,0 +1,4 @@ +tox +tox-venv +tox-travis +requests diff --git a/.travis.yml b/.travis.yml index eb34cc9c..137fa37d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,30 @@ jobs: fast_finish: true include: + # Macos is slow, only if everything has passed + - stage: Macos - All Conan versions + name: Conan develop - Python 3.8 + language: generic + os: osx + osx_image: xcode10 + env: + - PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 + - PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.5 + language: generic + os: osx + osx_image: xcode10 + env: + - PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 + - PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.8 + language: generic + os: osx + osx_image: xcode10 + env: + - PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 + - PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 + - stage: Linux - Conan develop name: Python 3.5 python: 3.5 @@ -47,35 +71,21 @@ jobs: env: TOXENV=py38-conanprevprev dist: xenial - # Macos is slow, only if everything has passed - - stage: Macos - All Conan versions - name: Conan develop - Python 3.8 - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conandev - - name: Conan Current - Python 3.5 - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent - - name: Conan Current - Python 3.8 - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conancurrent + before_install: - ./.ci/travis/before_install.sh - + install: - | if [[ "$(uname -s)" == 'Darwin' ]]; then if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi pyenv activate conan; + printenv + export fi - pip install --upgrade pip - - pip install tox tox-venv tox-travis requests + - pip install -r .ci/travis/requirements.txt script: - | @@ -84,4 +94,4 @@ script: pyenv activate conan fi - python .ci/last_conan_version.py - - tox + - .ci/travis/build.sh diff --git a/tox.ini b/tox.ini index d28e7c08..10ce73bb 100644 --- a/tox.ini +++ b/tox.ini @@ -17,7 +17,7 @@ setenv = PYTHONPATH = {toxinidir}{:}{env:PYTHONPATH:} CONAN_PRINT_RUN_COMMANDS=1 - coverage: PYTEST_TEST_RUNNER=coverage run -m pytest + coverage: PYTEST_TEST_RUNNER=coverage run -m pytest {posargs} coverage: COVERAGE_PROCESS_START={toxinidir}/.coveragerc coverage: COVERAGE_FILE={toxinidir}/.coverage coverage: PYTESTDJANGO_COVERAGE_SRC={toxinidir}/ From f55a67fd0778c321c3473ca45a665b6b86f20eb7 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 09:47:02 -0300 Subject: [PATCH 10/21] Add matrix for OSX Signed-off-by: Uilian Ries --- .travis.yml | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 137fa37d..d1c91a9f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,3 @@ -sudo: false language: python dist: trusty @@ -12,23 +11,28 @@ jobs: language: generic os: osx osx_image: xcode10 - env: - - PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 - - PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 + matrix: + include: + - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 + - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.5 language: generic os: osx osx_image: xcode10 - env: - - PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 - - PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 + matrix: + include: + - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 + - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.8 language: generic os: osx osx_image: xcode10 - env: - - PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 - - PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 + matrix: + include: + - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 + - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 - stage: Linux - Conan develop name: Python 3.5 From 8bff8c5bc5eca390145bdd2a5b11d6340197cdd9 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 09:50:48 -0300 Subject: [PATCH 11/21] Fix matrix for OSX Signed-off-by: Uilian Ries --- .travis.yml | 54 +++++++++++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/.travis.yml b/.travis.yml index d1c91a9f..62a94221 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,32 +7,38 @@ jobs: # Macos is slow, only if everything has passed - stage: Macos - All Conan versions - name: Conan develop - Python 3.8 - language: generic - os: osx - osx_image: xcode10 matrix: include: - - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 - - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 - - - name: Conan Current - Python 3.5 - language: generic - os: osx - osx_image: xcode10 - matrix: - include: - - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 - - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 - - - name: Conan Current - Python 3.8 - language: generic - os: osx - osx_image: xcode10 - matrix: - include: - - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 - - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 + - name: Conan develop - Python 3.8 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 + - name: Conan develop - Python 3.8 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.5 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 + - name: Conan Current - Python 3.5 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.8 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 + - name: Conan Current - Python 3.8 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 - stage: Linux - Conan develop name: Python 3.5 From c3821ddc7d0a716476cf24ca211515ba3345a993 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 09:58:45 -0300 Subject: [PATCH 12/21] Fix 2 matrix for OSX Signed-off-by: Uilian Ries --- .travis.yml | 65 +++++++++++++++++++++++++---------------------------- 1 file changed, 30 insertions(+), 35 deletions(-) diff --git a/.travis.yml b/.travis.yml index 62a94221..a43e140c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,44 +1,39 @@ -language: python -dist: trusty - jobs: fast_finish: true include: # Macos is slow, only if everything has passed - stage: Macos - All Conan versions - matrix: - include: - - name: Conan develop - Python 3.8 (Page 1) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 - - name: Conan develop - Python 3.8 (Page 2) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 - - name: Conan Current - Python 3.5 (Page 1) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 - - name: Conan Current - Python 3.5 (Page 2) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 - - name: Conan Current - Python 3.8 (Page 1) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 - - name: Conan Current - Python 3.8 (Page 2) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 + name: Conan develop - Python 3.8 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 + - name: Conan develop - Python 3.8 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.5 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 + - name: Conan Current - Python 3.5 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 + - name: Conan Current - Python 3.8 (Page 1) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 + - name: Conan Current - Python 3.8 (Page 2) + language: generic + os: osx + osx_image: xcode10 + env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 - stage: Linux - Conan develop name: Python 3.5 From 21cddb6d65dc903a0a385a8c69ea2e7a4d5df820 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 10:29:49 -0300 Subject: [PATCH 13/21] Filter scripts according ci page Signed-off-by: Uilian Ries --- .ci/run.py | 10 ++++++++++ .ci/travis/build.sh | 4 ++-- features/integrate_build_system/build.py | 0 tox.ini | 4 ++-- 4 files changed, 14 insertions(+), 4 deletions(-) mode change 100644 => 100755 features/integrate_build_system/build.py diff --git a/.ci/run.py b/.ci/run.py index 9c62eaac..dcde583e 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -231,9 +231,19 @@ def validate_results(results): sys.exit(value) +def filter_scripts(scripts): + folder = sys.argv[1] if len(sys.argv) == 2 else "" + if folder == "libraries": + scripts = [it for it in scripts if not it.startswith("features")] + elif folder == "features": + scripts = [it for it in scripts if not it.startswith("libraries")] + return scripts + + if __name__ == "__main__": colorama.init(autoreset=True) scripts = get_build_list() + scripts = filter_scripts(scripts) results = run_scripts(scripts) print_results(results) validate_results(results) diff --git a/.ci/travis/build.sh b/.ci/travis/build.sh index 63b9f610..6cb4ccf6 100755 --- a/.ci/travis/build.sh +++ b/.ci/travis/build.sh @@ -4,9 +4,9 @@ set -e set -x if [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "1" ]; then - tox -v features/ + tox -v features elif [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "2" ]; then - tox -v libraries/ + tox -v libraries else tox -v fi diff --git a/features/integrate_build_system/build.py b/features/integrate_build_system/build.py old mode 100644 new mode 100755 diff --git a/tox.ini b/tox.ini index 10ce73bb..be77f2b8 100644 --- a/tox.ini +++ b/tox.ini @@ -17,7 +17,7 @@ setenv = PYTHONPATH = {toxinidir}{:}{env:PYTHONPATH:} CONAN_PRINT_RUN_COMMANDS=1 - coverage: PYTEST_TEST_RUNNER=coverage run -m pytest {posargs} + coverage: PYTEST_TEST_RUNNER=coverage run -m pytest coverage: COVERAGE_PROCESS_START={toxinidir}/.coveragerc coverage: COVERAGE_FILE={toxinidir}/.coverage coverage: PYTESTDJANGO_COVERAGE_SRC={toxinidir}/ @@ -25,4 +25,4 @@ setenv = passenv = PYTEST_ADDOPTS * commands = - python .ci/run.py + python .ci/run.py {posargs} From b26a973a214ccf52060b033f7ec69d07cffd7537 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 10:53:11 -0300 Subject: [PATCH 14/21] Try to fix pyenv install Signed-off-by: Uilian Ries --- .ci/travis/before_install.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.ci/travis/before_install.sh b/.ci/travis/before_install.sh index bcd0651d..e4764e0f 100755 --- a/.ci/travis/before_install.sh +++ b/.ci/travis/before_install.sh @@ -4,10 +4,10 @@ set -e set -x if [ "$TRAVIS_OS_NAME" == "osx" ]; then - brew update - brew install openssl readline + brew update || brew update brew outdated pyenv || brew upgrade pyenv brew install pyenv-virtualenv + brew install openssl readline if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi @@ -47,4 +47,4 @@ if [ "$TRAVIS_OS_NAME" == "osx" ]; then pyenv activate conan python --version -fi \ No newline at end of file +fi From be317a9cf4b92ef1cb446c2571f9e73d90e3383a Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 11:22:16 -0300 Subject: [PATCH 15/21] Do not change extra files Signed-off-by: Uilian Ries --- features/integrate_build_system/build.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 features/integrate_build_system/build.py diff --git a/features/integrate_build_system/build.py b/features/integrate_build_system/build.py old mode 100755 new mode 100644 From 9812ddbbc4d70a732603d7dbb27332e4af064530 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 11:31:20 -0300 Subject: [PATCH 16/21] Disable pyenv for OSX Signed-off-by: Uilian Ries --- .travis.yml | 48 ++++++------------------------------------------ 1 file changed, 6 insertions(+), 42 deletions(-) diff --git a/.travis.yml b/.travis.yml index a43e140c..c3160777 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,36 +4,16 @@ jobs: # Macos is slow, only if everything has passed - stage: Macos - All Conan versions - name: Conan develop - Python 3.8 (Page 1) + name: Conan develop - Python 3.8 language: generic os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=1 - - name: Conan develop - Python 3.8 (Page 2) + osx_image: xcode12 + env: PYVER=py38 TOXENV=py38-conandev + - name: Conan Current - Python 3.8 language: generic os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conandev CONAN_CURRENT_PAGE=2 - - name: Conan Current - Python 3.5 (Page 1) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=1 - - name: Conan Current - Python 3.5 (Page 2) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py35 TOXENV=py35-conancurrent CONAN_CURRENT_PAGE=2 - - name: Conan Current - Python 3.8 (Page 1) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=1 - - name: Conan Current - Python 3.8 (Page 2) - language: generic - os: osx - osx_image: xcode10 - env: PYVER=py38 TOXENV=py38-conancurrent CONAN_CURRENT_PAGE=2 + osx_image: xcode12 + env: PYVER=py38 TOXENV=py38-conancurrent - stage: Linux - Conan develop name: Python 3.5 @@ -77,26 +57,10 @@ jobs: dist: xenial - -before_install: - - ./.ci/travis/before_install.sh - install: - - | - if [[ "$(uname -s)" == 'Darwin' ]]; then - if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi - pyenv activate conan; - printenv - export - fi - pip install --upgrade pip - pip install -r .ci/travis/requirements.txt script: - - | - if [[ "$(uname -s)" == 'Darwin' ]]; then - if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi - pyenv activate conan - fi - python .ci/last_conan_version.py - .ci/travis/build.sh From cdd37773e60193b8f3b941448de8dbe1ed27bdfe Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 14:24:11 -0300 Subject: [PATCH 17/21] Build missing packages for OSX Signed-off-by: Uilian Ries --- .ci/run.py | 10 ---------- libraries/dear-imgui/basic/build.sh | 2 +- libraries/folly/basic/build.sh | 2 +- libraries/protobuf/serialization/build.sh | 2 +- 4 files changed, 3 insertions(+), 13 deletions(-) diff --git a/.ci/run.py b/.ci/run.py index dcde583e..9c62eaac 100644 --- a/.ci/run.py +++ b/.ci/run.py @@ -231,19 +231,9 @@ def validate_results(results): sys.exit(value) -def filter_scripts(scripts): - folder = sys.argv[1] if len(sys.argv) == 2 else "" - if folder == "libraries": - scripts = [it for it in scripts if not it.startswith("features")] - elif folder == "features": - scripts = [it for it in scripts if not it.startswith("libraries")] - return scripts - - if __name__ == "__main__": colorama.init(autoreset=True) scripts = get_build_list() - scripts = filter_scripts(scripts) results = run_scripts(scripts) print_results(results) validate_results(results) diff --git a/libraries/dear-imgui/basic/build.sh b/libraries/dear-imgui/basic/build.sh index a09a066e..30b1a1fe 100755 --- a/libraries/dear-imgui/basic/build.sh +++ b/libraries/dear-imgui/basic/build.sh @@ -8,6 +8,6 @@ mkdir build pushd build export CONAN_SYSREQUIRES_MODE=enabled -conan install .. +conan install .. --building missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . diff --git a/libraries/folly/basic/build.sh b/libraries/folly/basic/build.sh index beb282c0..da0b4548 100755 --- a/libraries/folly/basic/build.sh +++ b/libraries/folly/basic/build.sh @@ -7,7 +7,7 @@ rm -rf build mkdir build pushd build -conan install .. +conan install .. --building missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . diff --git a/libraries/protobuf/serialization/build.sh b/libraries/protobuf/serialization/build.sh index c4b20ab5..8539a0b8 100755 --- a/libraries/protobuf/serialization/build.sh +++ b/libraries/protobuf/serialization/build.sh @@ -7,7 +7,7 @@ rm -rf build mkdir build pushd build -conan install .. +conan install .. --building missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . From 6cb263fdc852780be306015266ac98d9a82f571a Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 14:45:18 -0300 Subject: [PATCH 18/21] Dont execute extra build script Signed-off-by: Uilian Ries --- .ci/travis/build.sh | 12 ------------ tox.ini | 2 +- 2 files changed, 1 insertion(+), 13 deletions(-) delete mode 100755 .ci/travis/build.sh diff --git a/.ci/travis/build.sh b/.ci/travis/build.sh deleted file mode 100755 index 6cb4ccf6..00000000 --- a/.ci/travis/build.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -set -e -set -x - -if [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "1" ]; then - tox -v features -elif [ "${TRAVIS_OS_NAME}" == "osx" ] && [ "${CONAN_CURRENT_PAGE}" == "2" ]; then - tox -v libraries -else - tox -v -fi diff --git a/tox.ini b/tox.ini index be77f2b8..d28e7c08 100644 --- a/tox.ini +++ b/tox.ini @@ -25,4 +25,4 @@ setenv = passenv = PYTEST_ADDOPTS * commands = - python .ci/run.py {posargs} + python .ci/run.py From 0622d560f4726b2220f362c70cfb09231e301e98 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 15:25:56 -0300 Subject: [PATCH 19/21] Fix bad argument for conan install Signed-off-by: Uilian Ries --- features/integrate_build_system/build.py | 0 libraries/dear-imgui/basic/build.sh | 2 +- libraries/folly/basic/build.sh | 2 +- libraries/protobuf/serialization/build.sh | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) mode change 100644 => 100755 features/integrate_build_system/build.py diff --git a/features/integrate_build_system/build.py b/features/integrate_build_system/build.py old mode 100644 new mode 100755 diff --git a/libraries/dear-imgui/basic/build.sh b/libraries/dear-imgui/basic/build.sh index 30b1a1fe..56d26a90 100755 --- a/libraries/dear-imgui/basic/build.sh +++ b/libraries/dear-imgui/basic/build.sh @@ -8,6 +8,6 @@ mkdir build pushd build export CONAN_SYSREQUIRES_MODE=enabled -conan install .. --building missing +conan install .. --build=missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . diff --git a/libraries/folly/basic/build.sh b/libraries/folly/basic/build.sh index da0b4548..1bd5aa9f 100755 --- a/libraries/folly/basic/build.sh +++ b/libraries/folly/basic/build.sh @@ -7,7 +7,7 @@ rm -rf build mkdir build pushd build -conan install .. --building missing +conan install .. --build=missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . diff --git a/libraries/protobuf/serialization/build.sh b/libraries/protobuf/serialization/build.sh index 8539a0b8..06507f04 100755 --- a/libraries/protobuf/serialization/build.sh +++ b/libraries/protobuf/serialization/build.sh @@ -7,7 +7,7 @@ rm -rf build mkdir build pushd build -conan install .. --building missing +conan install .. --build=missing cmake .. -DCMAKE_BUILD_TYPE=Release cmake --build . From 42afc08d3cda5607b6307b6c8abf80d47923f60f Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 15:32:30 -0300 Subject: [PATCH 20/21] Fix tox cmmand Signed-off-by: Uilian Ries --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index c3160777..74267340 100644 --- a/.travis.yml +++ b/.travis.yml @@ -63,4 +63,4 @@ install: script: - python .ci/last_conan_version.py - - .ci/travis/build.sh + - tox -v From d51353a60c18116d1e8a7c091f1b487148743332 Mon Sep 17 00:00:00 2001 From: Uilian Ries Date: Fri, 5 Feb 2021 16:33:04 -0300 Subject: [PATCH 21/21] Wait more time for Travis Signed-off-by: Uilian Ries --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 74267340..c1eb6fac 100644 --- a/.travis.yml +++ b/.travis.yml @@ -63,4 +63,4 @@ install: script: - python .ci/last_conan_version.py - - tox -v + - travis_wait 30 tox -v