<commit_before>trigger:
  # start a new build for every push
  batch: False
  branches:
    include:
      - master
      - maintenance/*
  paths:
    include:
      - '*'
    exclude:
      - 'benchmarks/*'
      - './*.txt'
      - 'site.cfg.example'

pr:
  branches:
    include:
    - '*'  # must quote since "*" is a YAML reserved character; we want a string

# the version of OpenBLAS used is currently 0.3.15
# and should be updated to match scipy-wheels as appropriate
variables:
    openblas_version: 0.3.17
    pre_wheels: https://pypi.anaconda.org/scipy-wheels-nightly/simple
    CCACHE_DIR: $(Pipeline.Workspace)/ccache
    SCIPY_AVAILABLE_MEM: 3G
    NPY_NUM_BUILD_JOBS: 2
    CCACHE_COMPRESS: 1
    # Using a single thread can actually speed up some computations
    OPENBLAS_NUM_THREADS: 1

stages:

- stage: Check
  jobs:
    - job: Skip
      pool:
        vmImage: 'ubuntu-20.04'
      variables:
        DECODE_PERCENTS: 'false'
        RET: 'true'
      steps:
      - bash: |
          git_log=`git log --max-count=1 --skip=1 --pretty=format:"%B" | tr "\n" " "`
          echo "##vso[task.setvariable variable=log]$git_log"
      - bash: echo "##vso[task.setvariable variable=RET]false"
        condition: or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]'))
      - bash: echo "##vso[task.setvariable variable=start_main;isOutput=true]$RET"
        name: result

- stage: Main
  condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true'))
  dependsOn: Check
  variables:
    AZURE_CI: 'true'
  jobs:
  - job: prerelease_deps_coverage_64bit_blas
    pool:
      vmImage: 'ubuntu-18.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.8'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: full
        coverage: true
        numpy_spec: "--pre --upgrade --timeout=60 -i $PRE_WHEELS numpy"
        other_spec: "--pre --upgrade --timeout=60"
        use_64bit_blas: true
  - job: refguide_asv_check
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "--upgrade numpy"
        refguide_check: true
        asv_check: true
        use_wheel: true
  - job: source_distribution
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "numpy==1.19.3"
        use_sdist: true
  - job: wheel_optimized_gcc5
    pool:
      vmImage: 'ubuntu-18.04'
    variables:
      # The following is needed for optimized "-OO" test run but since we use
      # pytest-xdist plugin for load scheduling its workers don't pick up the
      # flag. This environment variable starts all Py instances in -OO mode.
      PYTHONOPTIMIZE: 2
      # Use gcc version 5
      CC: gcc-5
      CXX: g++-5
    steps:
    - script: |
        set -euo pipefail
        sudo apt update -y
        sudo apt install -y g++-5 gcc-5
      displayName: 'Install GCC 5'
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.8'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "numpy==1.17.3"
        use_wheel: true
  - job: Lint
    condition: and(succeeded(), ne(variables['Build.SourceBranch'], 'refs/heads/master'))  # skip for PR merges
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - script: >-
        python -m pip install
        flake8==3.9.2
      displayName: 'Install tools'
      failOnStderr: false
    - script: |
        set -euo pipefail<commit_msg>bump to gcc 6 (6.3 is compiler version for manylinux_2_24)<commit_after>trigger:
  # start a new build for every push
  batch: False
  branches:
    include:
      - master
      - maintenance/*
  paths:
    include:
      - '*'
    exclude:
      - 'benchmarks/*'
      - './*.txt'
      - 'site.cfg.example'

pr:
  branches:
    include:
    - '*'  # must quote since "*" is a YAML reserved character; we want a string

# the version of OpenBLAS used is currently 0.3.15
# and should be updated to match scipy-wheels as appropriate
variables:
    openblas_version: 0.3.17
    pre_wheels: https://pypi.anaconda.org/scipy-wheels-nightly/simple
    CCACHE_DIR: $(Pipeline.Workspace)/ccache
    SCIPY_AVAILABLE_MEM: 3G
    NPY_NUM_BUILD_JOBS: 2
    CCACHE_COMPRESS: 1
    # Using a single thread can actually speed up some computations
    OPENBLAS_NUM_THREADS: 1

stages:

- stage: Check
  jobs:
    - job: Skip
      pool:
        vmImage: 'ubuntu-20.04'
      variables:
        DECODE_PERCENTS: 'false'
        RET: 'true'
      steps:
      - bash: |
          git_log=`git log --max-count=1 --skip=1 --pretty=format:"%B" | tr "\n" " "`
          echo "##vso[task.setvariable variable=log]$git_log"
      - bash: echo "##vso[task.setvariable variable=RET]false"
        condition: or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]'))
      - bash: echo "##vso[task.setvariable variable=start_main;isOutput=true]$RET"
        name: result

- stage: Main
  condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true'))
  dependsOn: Check
  variables:
    AZURE_CI: 'true'
  jobs:
  - job: prerelease_deps_coverage_64bit_blas
    pool:
      vmImage: 'ubuntu-18.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.8'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: full
        coverage: true
        numpy_spec: "--pre --upgrade --timeout=60 -i $PRE_WHEELS numpy"
        other_spec: "--pre --upgrade --timeout=60"
        use_64bit_blas: true
  - job: refguide_asv_check
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "--upgrade numpy"
        refguide_check: true
        asv_check: true
        use_wheel: true
  - job: source_distribution
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "numpy==1.19.3"
        use_sdist: true
  - job: wheel_optimized_gcc6
    pool:
      vmImage: 'ubuntu-18.04'
    variables:
      # The following is needed for optimized "-OO" test run but since we use
      # pytest-xdist plugin for load scheduling its workers don't pick up the
      # flag. This environment variable starts all Py instances in -OO mode.
      PYTHONOPTIMIZE: 2
      # Use gcc version 6
      CC: gcc-6
      CXX: g++-6
    steps:
    - script: |
        set -euo pipefail
        sudo apt update -y
        sudo apt install -y g++-6 gcc-6
      displayName: 'Install GCC 6'
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.8'
        addToPath: true
        architecture: 'x64'
    - template: ci/azure-travis-template.yaml
      parameters:
        test_mode: fast
        numpy_spec: "numpy==1.17.3"
        use_wheel: true
  - job: Lint
    condition: and(succeeded(), ne(variables['Build.SourceBranch'], 'refs/heads/master'))  # skip for PR merges
    pool:
      vmImage: 'ubuntu-20.04'
    steps:
    - task: UsePythonVersion@0
      inputs:
        versionSpec: '3.9'
        addToPath: true
        architecture: 'x64'
    - script: >-
        python -m pip install
        flake8==3.9.2
      displayName: 'Install tools'
      failOnStderr: false
    - script: |
        set -euo pipefail
{'fraction_non_alphanumeric': 0.11273757525675836, 'fraction_numerical': 0.02219336560028332, 'mean_word_length': 2.222518067706352, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '613986', 'n_tokens_mistral': 2959, 'n_tokens_neox': 2814, 'n_words': 712}