From 11ac0d6ad646368429636353fd3c148ce38b70f2 Mon Sep 17 00:00:00 2001 From: Dennis Piehl Date: Mon, 9 Dec 2024 17:34:43 -0500 Subject: [PATCH] Update Azure pipelines to use latest macOS, Ubuntu, and python 3.10 --- HISTORY.txt | 1 + azure-pipelines.yml | 15 ++++++++------- azure-template-publish-job.yml | 4 ++-- azure-template-tox-job.yml | 26 +++++++------------------- rcsb/utils/dictionary/__init__.py | 2 +- setup.py | 2 +- tox.ini | 15 ++++++++------- 7 files changed, 28 insertions(+), 37 deletions(-) diff --git a/HISTORY.txt b/HISTORY.txt index f5aa63e..9d8bf03 100644 --- a/HISTORY.txt +++ b/HISTORY.txt @@ -137,3 +137,4 @@ Remove NeighborInteractionProvider from DictMethodResourceProvider, since will now be calculating interactions on the fly 20-Aug-2024 - V1.26 Add support for accessing target cofactor data from MongoDB 27-Aug-2024 - V1.27 Update order of CARD resource cache loading + 9-Dec-2024 - V1.28 Update Azure pipelines to use latest macOS, Ubuntu, and python 3.10 \ No newline at end of file diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 58019b0..827f829 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -6,6 +6,7 @@ # 21-Jul-2019 jdw update to Py38 # 10-Mar-2020 jdw py38 only # 10-Dec-2020 jdw py39 only +# 9-Dec-2024 dwp update to py310 # name: $(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.rr) @@ -26,20 +27,20 @@ schedules: jobs: - template: azure-template-tox-job.yml - parameters: { tox: "format_pep8", python: "3.9", os: "linux" } + parameters: { tox: "format_pep8", python: "3.10", os: "linux" } - template: azure-template-tox-job.yml - parameters: { tox: "lint_pylint", python: "3.9", os: "linux" } + parameters: { tox: "lint_pylint", python: "3.10", os: "linux" } - template: azure-template-tox-job.yml - parameters: { tox: "test_coverage", python: "3.9", os: "linux", fixtures: 'mongodb' } + parameters: { tox: "test_coverage", python: "3.10", os: "linux", fixtures: 'mongodb' } # - template: azure-template-tox-job.yml - parameters: { tox: "py39", python: "3.9", os: "linux", fixtures: 'mongodb' } + parameters: { tox: "py310", python: "3.10", os: "linux", fixtures: 'mongodb' } # - template: azure-template-tox-job.yml - parameters: { tox: "py39", python: "3.9", os: "macos", fixtures: 'mongodb' } + parameters: { tox: "py310", python: "3.10", os: "macos", fixtures: 'mongodb' } # #- template: azure-template-publish-job.yml - # parameters: {tox: 'py39', python: '3.9', os: 'macos'} + # parameters: {tox: "py310", python: "3.10", os: 'macos'} - template: azure-template-publish-job.yml - parameters: { tox: "py39", python: "3.9", os: "linux" } + parameters: { tox: "py310", python: "3.10", os: "linux" } # diff --git a/azure-template-publish-job.yml b/azure-template-publish-job.yml index 0984fd7..c502d70 100644 --- a/azure-template-publish-job.yml +++ b/azure-template-publish-job.yml @@ -15,9 +15,9 @@ jobs: - job: ${{ format('publish_{0}_{1}', parameters.tox, parameters.os) }} pool: ${{ if eq(parameters.os, 'macos') }}: - vmImage: 'macOS-12' + vmImage: 'macOS-latest' ${{ if eq(parameters.os, 'linux') }}: - vmImage: 'ubuntu-20.04' + vmImage: 'ubuntu-latest' dependsOn: - ${{ format('build_test_{0}_{1}', parameters.tox, parameters.os) }} condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.SourceBranch'], 'refs/heads/master')) diff --git a/azure-template-tox-job.yml b/azure-template-tox-job.yml index 6f2af5d..483f655 100644 --- a/azure-template-tox-job.yml +++ b/azure-template-tox-job.yml @@ -18,9 +18,9 @@ jobs: timeoutInMinutes: 0 pool: ${{ if eq(parameters.os, 'macos') }}: - vmImage: "macOS-12" + vmImage: "macOS-latest" ${{ if eq(parameters.os, 'linux') }}: - vmImage: "ubuntu-20.04" + vmImage: "ubuntu-latest" variables: - group: py-shared-variables @@ -41,7 +41,7 @@ jobs: - bash: | set -e ls -la /Applications/Xcode* - sudo xcode-select --switch /Applications/Xcode_14.2.app/Contents/Developer + sudo xcode-select --switch /Applications/Xcode_16.app/Contents/Developer which g++ c++ --version displayName: "setup Xcode" @@ -167,30 +167,18 @@ jobs: export CONFIG_SUPPORT_TOKEN_ENV=$(VAR_CONFIG_SUPPORT_TOKEN_ENV) ${{ format('python -m tox -e {0}', parameters.tox) }} displayName: "Running tox task" - - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '3.9')) }} - : - script: | - export OE_LICENSE=$(oelicense.secureFilePath) - export CONFIG_SUPPORT_TOKEN_ENV=$(VAR_CONFIG_SUPPORT_TOKEN_ENV) - ${{ format('python -m tox -e {0}-py39', parameters.tox) }} - displayName: "Running tox task" - - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '3.8')) }} + - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '3.10')) }} : - script: | export OE_LICENSE=$(oelicense.secureFilePath) export CONFIG_SUPPORT_TOKEN_ENV=$(VAR_CONFIG_SUPPORT_TOKEN_ENV) - ${{ format('python -m tox -e {0}-py38', parameters.tox) }} + ${{ format('python -m tox -e {0}-py310', parameters.tox) }} displayName: "Running tox task" - - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '3.7')) }} + - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '3.9')) }} : - script: | export OE_LICENSE=$(oelicense.secureFilePath) export CONFIG_SUPPORT_TOKEN_ENV=$(VAR_CONFIG_SUPPORT_TOKEN_ENV) - ${{ format('python -m tox -e {0}-py37', parameters.tox) }} + ${{ format('python -m tox -e {0}-py39', parameters.tox) }} displayName: "Running tox task" - - ? ${{ if and(not(startsWith(parameters.tox, 'py')), startsWith(parameters.python, '2.7')) }} - : - script: | - export OE_LICENSE=$(oelicense.secureFilePath) - export CONFIG_SUPPORT_TOKEN_ENV=$(VAR_CONFIG_SUPPORT_TOKEN_ENV) - ${{ format('python -m tox -e {0}-py27', parameters.tox) }} - displayName: "Runing tox task" # # Build artifacts if this is a test target (i.e. labeled as py##) # diff --git a/rcsb/utils/dictionary/__init__.py b/rcsb/utils/dictionary/__init__.py index f23dab6..50c25d7 100644 --- a/rcsb/utils/dictionary/__init__.py +++ b/rcsb/utils/dictionary/__init__.py @@ -2,4 +2,4 @@ __author__ = "John Westbrook" __email__ = "john.westbrook@rcsb.org" __license__ = "Apache 2.0" -__version__ = "1.27" +__version__ = "1.28" diff --git a/setup.py b/setup.py index 4467767..3fd1b4a 100755 --- a/setup.py +++ b/setup.py @@ -43,7 +43,7 @@ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", ), entry_points={}, # diff --git a/tox.ini b/tox.ini index 0544c9b..364aeac 100644 --- a/tox.ini +++ b/tox.ini @@ -30,10 +30,11 @@ coverage_cutoff = 50 # 12-Jul-2019 jdw Add placeholders for up to four test paths # 13-Jul-2019 jdw Add coverage exclusion # 23-Dec-2022 aae updates for tox 4 +# 9-Dec-2024 dwp py310 version ## [tox] # The complete list of supported test environments to setup and invoke -envlist = format_pep8-{py39}, lint_pylint-{py39}, format_black-{py39}, py{39} +envlist = format_pep8-{py310}, lint_pylint-{py310}, format_black-{py310}, py{310} # minversion = 3.7.0 skip_missing_interpreters = true @@ -42,11 +43,11 @@ skipsdist = True [testenv] passenv = CONFIG_SUPPORT_TOKEN_ENV,OE_LICENSE allowlist_externals = echo -basepython = py39: python3.9 +basepython = py310: python3.10 commands = echo "Starting default tests in testenv" -[testenv:py39] +[testenv:py310] description = 'Run unit tests (unittest runner) using {envpython}' platform= macos: darwin @@ -68,7 +69,7 @@ commands = echo "Completed {envname} with {envpython}" # -[testenv:format_pep8-py39] +[testenv:format_pep8-py310] description = 'Run selected PEP8 compliance checks (flake8)' platform= macos: darwin @@ -86,7 +87,7 @@ commands = echo "Completed {envname}" # -[testenv:lint_pylint-py39] +[testenv:lint_pylint-py310] description = 'Run linting compliance checks (pylint)' platform= macos: darwin @@ -100,7 +101,7 @@ commands = echo "Completed {envname}" # -[testenv:format_black-py39] +[testenv:format_black-py310] description = 'Run format compliance checks (black)' platform= macos: darwin @@ -116,7 +117,7 @@ commands = echo "Completed {envname}" # -[testenv:test_coverage-py39] +[testenv:test_coverage-py310] description = 'Run test coverage analysis' platform= macos: darwin