(disable irrelevant)

This commit is contained in:
Ivan Pozdeev 2025-03-28 00:20:49 +03:00
parent 39bcf8fb7f
commit f1a7e36930
5 changed files with 390 additions and 390 deletions

View File

@ -11,10 +11,10 @@ jobs:
matrix: matrix:
python-version: python-version:
- "3.9" - "3.9"
- "3.10" # - "3.10"
- "3.11" # - "3.11"
- "3.12" # - "3.12"
- "3.13" # - "3.13"
runs-on: macos-14 runs-on: macos-14
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

View File

@ -1,269 +1,269 @@
name: modified_scripts # name: modified_scripts
on: [pull_request] # on: [pull_request]
jobs: # jobs:
discover_modified_scripts: # discover_modified_scripts:
runs-on: ubuntu-latest # runs-on: ubuntu-latest
outputs: # outputs:
versions: ${{steps.modified-versions.outputs.versions}} # versions: ${{steps.modified-versions.outputs.versions}}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
- run: git fetch origin "$GITHUB_BASE_REF" # - run: git fetch origin "$GITHUB_BASE_REF"
- shell: bash # - shell: bash
run: > # run: >
versions=$(git diff "origin/$GITHUB_BASE_REF" --name-only -z # versions=$(git diff "origin/$GITHUB_BASE_REF" --name-only -z
| perl -ne 'BEGIN {$\="\n";$/="\0";} chomp; # | perl -ne 'BEGIN {$\="\n";$/="\0";} chomp;
if (/^plugins\/python-build\/share\/python-build\/(?:([^\/]+)|patches\/([^\/]+)\/.*)$/ and -e $& ) # if (/^plugins\/python-build\/share\/python-build\/(?:([^\/]+)|patches\/([^\/]+)\/.*)$/ and -e $& )
{ print $1.$2; }' \ # { print $1.$2; }' \
| sort -u); # | sort -u);
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64); # EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64);
echo "versions<<$EOF" >> $GITHUB_ENV; # echo "versions<<$EOF" >> $GITHUB_ENV;
echo "$versions" >> $GITHUB_ENV; # echo "$versions" >> $GITHUB_ENV;
echo "$EOF" >> $GITHUB_ENV; # echo "$EOF" >> $GITHUB_ENV;
versions_cpython_only=$(grep -Ee '^[[:digit:]]' <<<"$version") # versions_cpython_only=$(grep -Ee '^[[:digit:]]' <<<"$version")
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64); # EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64);
echo "versions_cpython_only<<$EOF" >> $GITHUB_ENV; # echo "versions_cpython_only<<$EOF" >> $GITHUB_ENV;
echo $versions_cpython_only >> $GITHUB_ENV; # echo $versions_cpython_only >> $GITHUB_ENV;
echo "$EOF" >> $GITHUB_ENV; # echo "$EOF" >> $GITHUB_ENV;
- id: modified-versions # - id: modified-versions
run: | # run: |
echo "versions=`echo "${{ env.versions }}" | jq -R . | jq -sc .`" >> $GITHUB_OUTPUT # echo "versions=`echo "${{ env.versions }}" | jq -R . | jq -sc .`" >> $GITHUB_OUTPUT
echo "versions_cpython_only=`echo "${{ env.versions_cpython_only }}" | jq -R . | jq -sc .`" >> $GITHUB_OUTPUT # echo "versions_cpython_only=`echo "${{ env.versions_cpython_only }}" | jq -R . | jq -sc .`" >> $GITHUB_OUTPUT
macos_build: # macos_build:
needs: discover_modified_scripts # needs: discover_modified_scripts
if: needs.discover_modified_scripts.outputs.versions != '[""]' # if: needs.discover_modified_scripts.outputs.versions != '[""]'
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions)}} # python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions)}}
os: ["macos-13", "macos-14"] # os: ["macos-13", "macos-14"]
runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
- run: | # - run: |
#envvars # #envvars
export PYENV_ROOT="$GITHUB_WORKSPACE" # export PYENV_ROOT="$GITHUB_WORKSPACE"
echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
- run: | # - run: |
#prerequisites # #prerequisites
brew install openssl openssl@1.1 readline sqlite3 xz zlib # brew install openssl openssl@1.1 readline sqlite3 xz zlib
if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then # if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
export PYENV_BOOTSTRAP_VERSION=pypy2.7-7 # export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV # echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV
pyenv install $PYENV_BOOTSTRAP_VERSION # pyenv install $PYENV_BOOTSTRAP_VERSION
fi # fi
- run: | # - run: |
#build # #build
pyenv --debug install ${{ matrix.python-version }} # pyenv --debug install ${{ matrix.python-version }}
pyenv global ${{ matrix.python-version }} # pyenv global ${{ matrix.python-version }}
# Micropython doesn't support --version # # Micropython doesn't support --version
- run: | # - run: |
#print version # #print version
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
python -c 'import sys; print(sys.version)' # python -c 'import sys; print(sys.version)'
else # else
python --version # python --version
python -m pip --version # python -m pip --version
fi # fi
# Micropython doesn't support sys.executable, os.path, older versions even os # # Micropython doesn't support sys.executable, os.path, older versions even os
- env: # - env:
EXPECTED_PYTHON: ${{ matrix.python-version }} # EXPECTED_PYTHON: ${{ matrix.python-version }}
run: | # run: |
#check # #check
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
[[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1 # [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1
python -c 'import sys; assert sys.implementation.name == "micropython"' # python -c 'import sys; assert sys.implementation.name == "micropython"'
else # else
python -c 'if True: # python -c 'if True:
import os, sys, os.path # import os, sys, os.path
correct_dir = os.path.join( # correct_dir = os.path.join(
os.environ["PYENV_ROOT"], # os.environ["PYENV_ROOT"],
"versions", # "versions",
os.environ["EXPECTED_PYTHON"], # os.environ["EXPECTED_PYTHON"],
"bin") # "bin")
assert os.path.dirname(sys.executable) == correct_dir' # assert os.path.dirname(sys.executable) == correct_dir'
fi # fi
# bundled executables in some Anaconda releases cause the post-run step to hang in MacOS # # bundled executables in some Anaconda releases cause the post-run step to hang in MacOS
- run: | # - run: |
pyenv global system # pyenv global system
rm -f "$(pyenv root)"/shims/* # rm -f "$(pyenv root)"/shims/*
macos_build_bundled_dependencies: # macos_build_bundled_dependencies:
needs: discover_modified_scripts # needs: discover_modified_scripts
if: needs.discover_modified_scripts.outputs.versions_cpython_only != '[""]' # if: needs.discover_modified_scripts.outputs.versions_cpython_only != '[""]'
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions_cpython_only)}} # python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions_cpython_only)}}
os: ["macos-13", "macos-14"] # os: ["macos-13", "macos-14"]
runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
- run: | # - run: |
#envvars # #envvars
export PYENV_ROOT="$GITHUB_WORKSPACE" # export PYENV_ROOT="$GITHUB_WORKSPACE"
echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
- run: | # - run: |
#prerequisites # #prerequisites
brew install sqlite3 xz zlib # brew install sqlite3 xz zlib
"$GITHUB_WORKSPACE/.github/workflows/scripts/brew-uninstall-cascade.sh" openssl@3 openssl@1.1 readline # "$GITHUB_WORKSPACE/.github/workflows/scripts/brew-uninstall-cascade.sh" openssl@3 openssl@1.1 readline
if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then # if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
export PYENV_BOOTSTRAP_VERSION=pypy2.7-7 # export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV # echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV
pyenv install $PYENV_BOOTSTRAP_VERSION # pyenv install $PYENV_BOOTSTRAP_VERSION
fi # fi
- run: | # - run: |
#build # #build
pyenv --debug install ${{ matrix.python-version }} # pyenv --debug install ${{ matrix.python-version }}
pyenv global ${{ matrix.python-version }} # pyenv global ${{ matrix.python-version }}
# Micropython doesn't support --version # # Micropython doesn't support --version
- run: | # - run: |
#print version # #print version
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
python -c 'import sys; print(sys.version)' # python -c 'import sys; print(sys.version)'
else # else
python --version # python --version
python -m pip --version # python -m pip --version
fi # fi
# Micropython doesn't support sys.executable, os.path, older versions even os # # Micropython doesn't support sys.executable, os.path, older versions even os
- env: # - env:
EXPECTED_PYTHON: ${{ matrix.python-version }} # EXPECTED_PYTHON: ${{ matrix.python-version }}
run: | # run: |
#check # #check
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
[[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1 # [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1
python -c 'import sys; assert sys.implementation.name == "micropython"' # python -c 'import sys; assert sys.implementation.name == "micropython"'
else # else
python -c 'if True: # python -c 'if True:
import os, sys, os.path # import os, sys, os.path
correct_dir = os.path.join( # correct_dir = os.path.join(
os.environ["PYENV_ROOT"], # os.environ["PYENV_ROOT"],
"versions", # "versions",
os.environ["EXPECTED_PYTHON"], # os.environ["EXPECTED_PYTHON"],
"bin") # "bin")
assert os.path.dirname(sys.executable) == correct_dir' # assert os.path.dirname(sys.executable) == correct_dir'
fi # fi
# bundled executables in some Anaconda releases cause the post-run step to hang in MacOS # # bundled executables in some Anaconda releases cause the post-run step to hang in MacOS
- run: | # - run: |
pyenv global system # pyenv global system
rm -f "$(pyenv root)"/shims/* # rm -f "$(pyenv root)"/shims/*
ubuntu_build: # ubuntu_build:
needs: discover_modified_scripts # needs: discover_modified_scripts
if: needs.discover_modified_scripts.outputs.versions != '[""]' # if: needs.discover_modified_scripts.outputs.versions != '[""]'
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions)}} # python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions)}}
os: ["ubuntu-22.04", "ubuntu-24.04"] # os: ["ubuntu-22.04", "ubuntu-24.04"]
runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
- run: | # - run: |
#envvars # #envvars
export PYENV_ROOT="$GITHUB_WORKSPACE" # export PYENV_ROOT="$GITHUB_WORKSPACE"
echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
- run: | # - run: |
#prerequisites # #prerequisites
sudo apt-get update -q; sudo apt-get install -yq make build-essential \ # sudo apt-get update -q; sudo apt-get install -yq make build-essential \
libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ # libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \
curl llvm libncurses5-dev libncursesw5-dev \ # curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev # xz-utils tk-dev libffi-dev liblzma-dev
if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then # if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
export PYENV_BOOTSTRAP_VERSION=pypy2.7-7 # export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV # echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV
pyenv install $PYENV_BOOTSTRAP_VERSION # pyenv install $PYENV_BOOTSTRAP_VERSION
fi # fi
- run: | # - run: |
#build # #build
pyenv install -v ${{ matrix.python-version }} # pyenv install -v ${{ matrix.python-version }}
pyenv global ${{ matrix.python-version }} # pyenv global ${{ matrix.python-version }}
# Micropython doesn't support --version # # Micropython doesn't support --version
- run: | # - run: |
#print version # #print version
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
python -c 'import sys; print(sys.version)' # python -c 'import sys; print(sys.version)'
else # else
python --version # python --version
python -m pip --version # python -m pip --version
fi # fi
# Micropython doesn't support sys.executable, os.path, older versions even os # # Micropython doesn't support sys.executable, os.path, older versions even os
- env: # - env:
EXPECTED_PYTHON: ${{ matrix.python-version }} # EXPECTED_PYTHON: ${{ matrix.python-version }}
run: | # run: |
#check # #check
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
[[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1 # [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1
python -c 'import sys; assert sys.implementation.name == "micropython"' # python -c 'import sys; assert sys.implementation.name == "micropython"'
else # else
python -c 'if True: # python -c 'if True:
import os, sys, os.path # import os, sys, os.path
correct_dir = os.path.join( # correct_dir = os.path.join(
os.environ["PYENV_ROOT"], # os.environ["PYENV_ROOT"],
"versions", # "versions",
os.environ["EXPECTED_PYTHON"], # os.environ["EXPECTED_PYTHON"],
"bin") # "bin")
assert os.path.dirname(sys.executable) == correct_dir' # assert os.path.dirname(sys.executable) == correct_dir'
fi # fi
ubuntu_build_tar_gz: # ubuntu_build_tar_gz:
needs: discover_modified_scripts # needs: discover_modified_scripts
if: needs.discover_modified_scripts.outputs.versions_cpython_only != '[""]' # if: needs.discover_modified_scripts.outputs.versions_cpython_only != '[""]'
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions_cpython_only)}} # python-version: ${{fromJson(needs.discover_modified_scripts.outputs.versions_cpython_only)}}
os: ["ubuntu-latest"] # os: ["ubuntu-latest"]
runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
- run: | # - run: |
#envvars # #envvars
export PYENV_ROOT="$GITHUB_WORKSPACE" # export PYENV_ROOT="$GITHUB_WORKSPACE"
echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV # echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
echo "_PYTHON_BUILD_FORCE_SKIP_XZ=1" >> $GITHUB_PATH # echo "_PYTHON_BUILD_FORCE_SKIP_XZ=1" >> $GITHUB_PATH
- run: | # - run: |
#prerequisites # #prerequisites
sudo apt-get update -q; sudo apt-get install -yq make build-essential \ # sudo apt-get update -q; sudo apt-get install -yq make build-essential \
libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ # libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \
curl llvm libncurses5-dev libncursesw5-dev \ # curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev # xz-utils tk-dev libffi-dev liblzma-dev
if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then # if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
export PYENV_BOOTSTRAP_VERSION=pypy2.7-7 # export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV # echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> $GITHUB_ENV
pyenv install $PYENV_BOOTSTRAP_VERSION # pyenv install $PYENV_BOOTSTRAP_VERSION
fi # fi
- run: | # - run: |
#build # #build
pyenv install -v ${{ matrix.python-version }} # pyenv install -v ${{ matrix.python-version }}
pyenv global ${{ matrix.python-version }} # pyenv global ${{ matrix.python-version }}
# Micropython doesn't support --version # # Micropython doesn't support --version
- run: | # - run: |
#print version # #print version
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
python -c 'import sys; print(sys.version)' # python -c 'import sys; print(sys.version)'
else # else
python --version # python --version
python -m pip --version # python -m pip --version
fi # fi
# Micropython doesn't support sys.executable, os.path, older versions even os # # Micropython doesn't support sys.executable, os.path, older versions even os
- env: # - env:
EXPECTED_PYTHON: ${{ matrix.python-version }} # EXPECTED_PYTHON: ${{ matrix.python-version }}
run: | # run: |
#check # #check
if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then # if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
[[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1 # [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ matrix.python-version }}/bin/python" ]] || exit 1
python -c 'import sys; assert sys.implementation.name == "micropython"' # python -c 'import sys; assert sys.implementation.name == "micropython"'
else # else
python -c 'if True: # python -c 'if True:
import os, sys, os.path # import os, sys, os.path
correct_dir = os.path.join( # correct_dir = os.path.join(
os.environ["PYENV_ROOT"], # os.environ["PYENV_ROOT"],
"versions", # "versions",
os.environ["EXPECTED_PYTHON"], # os.environ["EXPECTED_PYTHON"],
"bin") # "bin")
assert os.path.dirname(sys.executable) == correct_dir' # assert os.path.dirname(sys.executable) == correct_dir'
fi # fi

View File

@ -1,30 +1,30 @@
name: No Response # name: No Response
# Both `issue_comment` and `scheduled` event types are required for this Action # # Both `issue_comment` and `scheduled` event types are required for this Action
# to work properly. # # to work properly.
on: # on:
issue_comment: # issue_comment:
types: [created] # types: [created]
schedule: # schedule:
# Schedule for ten minutes after the hour, every hour # # Schedule for ten minutes after the hour, every hour
- cron: '10 * * * *' # - cron: '10 * * * *'
permissions: {} # permissions: {}
jobs: # jobs:
noResponse: # noResponse:
permissions: # permissions:
issues: write # to update issues (lee-dohm/no-response) # issues: write # to update issues (lee-dohm/no-response)
runs-on: ubuntu-latest # runs-on: ubuntu-latest
steps: # steps:
- uses: lee-dohm/no-response@v0.5.0 # - uses: lee-dohm/no-response@v0.5.0
with: # with:
token: ${{ github.token }} # token: ${{ github.token }}
daysUntilClose: 30 # daysUntilClose: 30
responseRequiredLabel: need-feedback # responseRequiredLabel: need-feedback
closeComment: > # closeComment: >
This issue has been automatically closed because there has been no response # This issue has been automatically closed because there has been no response
to our request for more information from the original author. With only the # to our request for more information from the original author. With only the
information that is currently in the issue, we don't have enough information # information that is currently in the issue, we don't have enough information
to take action. Please reach out if you have or find the answers we need so # to take action. Please reach out if you have or find the answers we need so
that we can investigate further. # that we can investigate further.

View File

@ -1,49 +1,49 @@
name: pyenv_tests # name: pyenv_tests
on: [pull_request, push] # on: [pull_request, push]
permissions: # permissions:
contents: read # to fetch code (actions/checkout) # contents: read # to fetch code (actions/checkout)
jobs: # jobs:
pyenv_tests: # pyenv_tests:
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
os: # os:
- ubuntu-24.04 # - ubuntu-24.04
- ubuntu-22.04 # - ubuntu-22.04
- macos-14 # - macos-14
- macos-13 # - macos-13
runs-on: ${{ matrix.os }} # runs-on: ${{ matrix.os }}
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
# Normally, we would use the superbly maintained... # # Normally, we would use the superbly maintained...
# - uses: actions/setup-python@v2 # # - uses: actions/setup-python@v2
# with: # # with:
# python-version: ${{ matrix.python-version }} # # python-version: ${{ matrix.python-version }}
# ... but in the repo, we want to test pyenv builds on Ubuntu # # ... but in the repo, we want to test pyenv builds on Ubuntu
# # - run: |
# # sudo apt-get install -y build-essential libssl-dev zlib1g-dev libbz2-dev \
# # libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
# # xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
# # https://github.com/pyenv/pyenv#installation
# - run: | # - run: |
# sudo apt-get install -y build-essential libssl-dev zlib1g-dev libbz2-dev \ # if test "$RUNNER_OS" == "macOS"; then
# libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \ # brew install coreutils fish
# xz-utils tk-dev libffi-dev liblzma-dev python-openssl git # elif [[ $(lsb_release -sr | awk -F. '{print $1}') -ge 20 ]]; then
# https://github.com/pyenv/pyenv#installation # # Ubuntu 18 has fish 2 which lacks many features that facilitate testing
- run: | # sudo apt install fish -yq
if test "$RUNNER_OS" == "macOS"; then # fi
brew install coreutils fish # - run: pwd
elif [[ $(lsb_release -sr | awk -F. '{print $1}') -ge 20 ]]; then # - env:
# Ubuntu 18 has fish 2 which lacks many features that facilitate testing # PYENV_ROOT: /home/runner/work/pyenv/pyenv
sudo apt install fish -yq # run: |
fi # echo $PYENV_ROOT
- run: pwd # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
- env: # - run: |
PYENV_ROOT: /home/runner/work/pyenv/pyenv # make test
run: | # - env:
echo $PYENV_ROOT # PYENV_NATIVE_EXT: 1
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # run: |
- run: | # (cd src; ./configure; make)
make test # bats/bin/bats test/{pyenv,hooks,versions}.bats
- env:
PYENV_NATIVE_EXT: 1
run: |
(cd src; ./configure; make)
bats/bin/bats test/{pyenv,hooks,versions}.bats

View File

@ -1,49 +1,49 @@
name: ubuntu_build # name: ubuntu_build
on: [pull_request, push] # on: [pull_request, push]
permissions: # permissions:
contents: read # to fetch code (actions/checkout) # contents: read # to fetch code (actions/checkout)
jobs: # jobs:
ubuntu_build: # ubuntu_build:
strategy: # strategy:
fail-fast: false # fail-fast: false
matrix: # matrix:
python-version: # python-version:
- "3.9" # - "3.9"
- "3.10" # - "3.10"
- "3.11" # - "3.11"
- "3.12" # - "3.12"
- "3.13" # - "3.13"
runs-on: ubuntu-latest # runs-on: ubuntu-latest
steps: # steps:
- uses: actions/checkout@v4 # - uses: actions/checkout@v4
# Normally, we would use the superbly maintained... # # Normally, we would use the superbly maintained...
# - uses: actions/setup-python@v2 # # - uses: actions/setup-python@v2
# with: # # with:
# python-version: ${{ matrix.python-version }} # # python-version: ${{ matrix.python-version }}
# ... but in the repo, we want to test pyenv builds on Ubuntu # # ... but in the repo, we want to test pyenv builds on Ubuntu
- run: | # - run: |
sudo apt-get update -q; sudo apt install -yq make build-essential libssl-dev zlib1g-dev \ # sudo apt-get update -q; sudo apt install -yq make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl \ # libbz2-dev libreadline-dev libsqlite3-dev curl \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev # libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
- name: Ccache for gh actions # - name: Ccache for gh actions
uses: hendrikmuhs/ccache-action@v1.2.17 # uses: hendrikmuhs/ccache-action@v1.2.17
with: # with:
key: ${{ github.job }}-${{ matrix.python-version}} # key: ${{ github.job }}-${{ matrix.python-version}}
# https://github.com/pyenv/pyenv#installation # # https://github.com/pyenv/pyenv#installation
- run: pwd # - run: pwd
- env: # - env:
PYENV_ROOT: /home/runner/work/pyenv/pyenv # PYENV_ROOT: /home/runner/work/pyenv/pyenv
run: | # run: |
echo $PYENV_ROOT # echo $PYENV_ROOT
echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH # echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
bin/pyenv --debug install ${{ matrix.python-version }} # bin/pyenv --debug install ${{ matrix.python-version }}
bin/pyenv global ${{ matrix.python-version }} # bin/pyenv global ${{ matrix.python-version }}
bin/pyenv rehash # bin/pyenv rehash
- run: python --version # - run: python --version
- run: python -m pip --version # - run: python -m pip --version
- shell: python # Prove that actual Python == expected Python # - shell: python # Prove that actual Python == expected Python
env: # env:
EXPECTED_PYTHON: ${{ matrix.python-version }} # EXPECTED_PYTHON: ${{ matrix.python-version }}
run: import os, sys ; assert sys.version.startswith(os.getenv("EXPECTED_PYTHON")) # run: import os, sys ; assert sys.version.startswith(os.getenv("EXPECTED_PYTHON"))