Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pyenv for openSUSE:Factory checked 
in at 2022-12-20 20:21:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pyenv (Old)
 and      /work/SRC/openSUSE:Factory/.pyenv.new.1835 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pyenv"

Tue Dec 20 20:21:07 2022 rev:20 rq:1043908 version:2.3.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/pyenv/pyenv.changes      2022-12-15 
19:26:18.332431933 +0100
+++ /work/SRC/openSUSE:Factory/.pyenv.new.1835/pyenv.changes    2022-12-20 
20:21:49.354317377 +0100
@@ -1,0 +2,14 @@
+Tue Dec 20 10:59:40 UTC 2022 - Thomas Schraitle <thomas.schrai...@suse.com> - 
2.3.9
+
+- Update to 2.3.9
+  - Add -latest suffix to miniforge3 by @nwh in #2551
+  - Add PyPy 7.3.10 by @dand-oss in #2553
+  - Add miniforge3 and mambaforge 22.9.0-2 by @smcgivern in #2559
+  - Fix compilation error when building OpenSSL 1.1.1q in MacOS 11+
+    for 3.9.16 by @lisbethw1130 in #2558
+  - Add openssl patches for 3.7.15, 3.7.16, and 3.8.16 by @samdoran in #2564
+  - Add support for Anaconda3-2022.10 by @huypn12 in #2565
+
+Full Changelog: https://github.com/pyenv/pyenv/compare/v2.3.8...v2.3.9
+
+-------------------------------------------------------------------

Old:
----
  pyenv-2.3.8.tar.gz

New:
----
  pyenv-2.3.9.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pyenv.spec ++++++
--- /var/tmp/diff_new_pack.3ChPTm/_old  2022-12-20 20:21:50.062321256 +0100
+++ /var/tmp/diff_new_pack.3ChPTm/_new  2022-12-20 20:21:50.066321278 +0100
@@ -19,7 +19,7 @@
 %define pyenv_dir      %{_libexecdir}/pyenv
 #
 Name:           pyenv
-Version:        2.3.8
+Version:        2.3.9
 Release:        0
 Summary:        Python Version Management
 License:        MIT

++++++ pyenv-2.3.8.tar.gz -> pyenv-2.3.9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/.github/workflows/modified_scripts_build.yml 
new/pyenv-2.3.9/.github/workflows/modified_scripts_build.yml
--- old/pyenv-2.3.8/.github/workflows/modified_scripts_build.yml        
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/.github/workflows/modified_scripts_build.yml        
2022-12-19 05:52:52.000000000 +0100
@@ -32,26 +32,36 @@
     steps:
       - uses: actions/checkout@v2
       - run: |
-          brew install openssl openssl@1.1 readline sqlite3 xz zlib
-      - run: |
+          #envvars
           export PYENV_ROOT="$GITHUB_WORKSPACE"
           echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
           echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
       - run: |
+          #prerequisites
+          brew install openssl openssl@1.1 readline sqlite3 xz zlib
+          if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
+            export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
+            echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> 
$GITHUB_ENV
+            pyenv install $PYENV_BOOTSTRAP_VERSION
+          fi
+      - run: |
+          #build
           pyenv install -v ${{ matrix.python-version }}
           pyenv global ${{ matrix.python-version }}
       # Micropython doesn't support --version
-      - run: >
+      - run: |
+          #print version
           if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
             python -c 'import sys; print(sys.version)'
           else
-            python --version;
+            python --version
             python -m pip --version
           fi
       # Micropython doesn't support sys.executable, os.path, older versions 
even os
       - env:
           EXPECTED_PYTHON: ${{ matrix.python-version }}
         run: |
+          #check
           if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
             [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ 
matrix.python-version }}/bin/python" ]] || exit 1
             python -c 'import sys; assert sys.implementation.name == 
"micropython"'
@@ -82,29 +92,39 @@
     steps:
       - uses: actions/checkout@v2
       - run: |
+          #envvars
+          export PYENV_ROOT="$GITHUB_WORKSPACE"
+          echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
+          echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
+      - run: |
+          #prerequisites
           sudo apt-get update -q; sudo apt-get install -yq make 
build-essential \
             libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \
             curl llvm libncurses5-dev libncursesw5-dev \
             xz-utils tk-dev libffi-dev liblzma-dev
+          if [[ "${{ matrix.python-version }}" =~ pypy.*-(src|dev) ]]; then
+            export PYENV_BOOTSTRAP_VERSION=pypy2.7-7
+            echo "PYENV_BOOTSTRAP_VERSION=$PYENV_BOOTSTRAP_VERSION" >> 
$GITHUB_ENV
+            pyenv install $PYENV_BOOTSTRAP_VERSION
+          fi
       - run: |
-          export PYENV_ROOT="$GITHUB_WORKSPACE"
-          echo "PYENV_ROOT=$PYENV_ROOT" >> $GITHUB_ENV
-          echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
-      - run: |
+          #build
           pyenv install -v ${{ matrix.python-version }}
           pyenv global ${{ matrix.python-version }}
       # Micropython doesn't support --version
-      - run: >
+      - run: |
+          #print version
           if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
             python -c 'import sys; print(sys.version)'
           else
-            python --version;
+            python --version
             python -m pip --version
           fi
       # Micropython doesn't support sys.executable, os.path, older versions 
even os
       - env:
           EXPECTED_PYTHON: ${{ matrix.python-version }}
         run: |
+          #check
           if [[ "${{ matrix.python-version }}" == "micropython-"* ]]; then
             [[ $(pyenv which python) == "${{ env.PYENV_ROOT }}/versions/${{ 
matrix.python-version }}/bin/python" ]] || exit 1
             python -c 'import sys; assert sys.implementation.name == 
"micropython"'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pyenv-2.3.8/CHANGELOG.md new/pyenv-2.3.9/CHANGELOG.md
--- old/pyenv-2.3.8/CHANGELOG.md        2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/CHANGELOG.md        2022-12-19 05:52:52.000000000 +0100
@@ -1,5 +1,14 @@
 # Version History
 
+## Release 2.3.9
+
+* Add -latest suffix to miniforge3 by @nwh in 
https://github.com/pyenv/pyenv/pull/2551
+* Add PyPy 7.3.10 by @dand-oss in https://github.com/pyenv/pyenv/pull/2553
+* Add miniforge3 and mambaforge 22.9.0-2 by @smcgivern in 
https://github.com/pyenv/pyenv/pull/2559
+* Fix compilation error when building OpenSSL 1.1.1q in MacOS 11+ for 3.9.16 
by @lisbethw1130 in https://github.com/pyenv/pyenv/pull/2558
+* Add `openssl` patches for 3.7.15, 3.7.16, and 3.8.16 by @samdoran in 
https://github.com/pyenv/pyenv/pull/2564
+* Add support for Anaconda3-2022.10 by @huypn12 in 
https://github.com/pyenv/pyenv/pull/2565
+
 ## Release 2.3.8
 
 * Export detected shell environment in pyenv-init by @ianchen-tw in 
https://github.com/pyenv/pyenv/pull/2540
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pyenv-2.3.8/libexec/pyenv---version 
new/pyenv-2.3.9/libexec/pyenv---version
--- old/pyenv-2.3.8/libexec/pyenv---version     2022-12-08 08:07:26.000000000 
+0100
+++ new/pyenv-2.3.9/libexec/pyenv---version     2022-12-19 05:52:52.000000000 
+0100
@@ -12,7 +12,7 @@
 set -e
 [ -n "$PYENV_DEBUG" ] && set -x
 
-version="2.3.8"
+version="2.3.9"
 git_revision=""
 
 if cd "${BASH_SOURCE%/*}" 2>/dev/null && git remote -v 2>/dev/null | grep -q 
pyenv; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pyenv-2.3.8/plugins/python-build/bin/pyenv-install 
new/pyenv-2.3.9/plugins/python-build/bin/pyenv-install
--- old/pyenv-2.3.8/plugins/python-build/bin/pyenv-install      2022-12-08 
08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/bin/pyenv-install      2022-12-19 
05:52:52.000000000 +0100
@@ -219,7 +219,7 @@
       done
     fi
     if [ -n "$PYENV_BOOTSTRAP_VERSION" ]; then
-      for dep in curses genc pycparser; do
+      for dep in pycparser; do
         if ! PYENV_VERSION="$PYENV_BOOTSTRAP_VERSION" pyenv-exec python -c 
"import ${dep}" 1>/dev/null 2>&1; then
           echo "pyenv-install: $VERSION_NAME: PyPy requires \`${dep}' in 
$PYENV_BOOTSTRAP_VERSION to build from source." >&2
           exit 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pyenv-2.3.8/plugins/python-build/bin/python-build 
new/pyenv-2.3.9/plugins/python-build/bin/python-build
--- old/pyenv-2.3.8/plugins/python-build/bin/python-build       2022-12-08 
08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/bin/python-build       2022-12-19 
05:52:52.000000000 +0100
@@ -940,7 +940,13 @@
 
 pypy_architecture() {
   case "$(uname -s)" in
-  "Darwin" ) echo "osx64" ;;
+  "Darwin" )
+    case "$(uname -m)" in
+    "arm64" ) echo "osarm64" ;;
+    "x86_64" ) echo "osx64" ;;
+    * ) return 1 ;;
+    esac
+    ;;
   "Linux" )
     case "$(uname -m)" in
     "armel" ) echo "linux-armel" ;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/anaconda3-2022.10 
new/pyenv-2.3.9/plugins/python-build/share/python-build/anaconda3-2022.10
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/anaconda3-2022.10   
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/anaconda3-2022.10   
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,28 @@
+case "$(anaconda_architecture 2>/dev/null || true)" in
+"Linux-aarch64" )
+  install_script "Anaconda3-2022.10-Linux-aarch64" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-aarch64.sh#dac187c9fa6cae4ad663937f0ef79c8f";
 "anaconda" verify_py39
+  ;;
+"Linux-ppc64le" )
+  install_script "Anaconda3-2022.10-Linux-ppc64le" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-ppc64le.sh#8dee159ac42f80eca8ce99ddbfd94099";
 "anaconda" verify_py39
+  ;;
+"Linux-s390x" )
+  install_script "Anaconda3-2022.10-Linux-s390x" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-s390x.sh#ef2a6accc4d0d77756130198cb481358";
 "anaconda" verify_py39
+  ;;
+"Linux-x86_64" )
+  install_script "Anaconda3-2022.10-Linux-x86_64" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh#80256bd7a55509665c4179fd61516745";
 "anaconda" verify_py39
+  ;;
+"MacOSX-arm64" )
+  install_script "Anaconda3-2022.10-MacOSX-arm64" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-MacOSX-arm64.sh#3a5d726f90e11270990e520905cf8466";
 "anaconda" verify_py39
+  ;;
+"MacOSX-x86_64" )
+  install_script "Anaconda3-2022.10-MacOSX-x86_64" 
"https://repo.anaconda.com/archive/Anaconda3-2022.10-MacOSX-x86_64.sh#83fe2cbd4b32eeb63e99c3e15d72be85";
 "anaconda" verify_py39
+  ;;
+* )
+  { echo
+    colorize 1 "ERROR"
+    echo ": The binary distribution of Anaconda is not available for 
$(anaconda_architecture 2>/dev/null || true)."
+    echo
+  } >&2
+  exit 1
+  ;;
+esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/mambaforge-22.9.0-2 
new/pyenv-2.3.9/plugins/python-build/share/python-build/mambaforge-22.9.0-2
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/mambaforge-22.9.0-2 
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/mambaforge-22.9.0-2 
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,25 @@
+case "$(anaconda_architecture 2>/dev/null || true)" in
+"Linux-aarch64" )
+  install_script "Mambaforge-22.9.0-2-Linux-aarch64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Mambaforge-22.9.0-2-Linux-aarch64.sh#26cf4a5cd3a3b9085f75911b459b969d6ff8ab426ef9a8e7ce3b47cc683ead86";
 "miniconda" verify_py310
+  ;;
+"Linux-ppc64le" )
+  install_script "Mambaforge-22.9.0-2-Linux-ppc64le.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Mambaforge-22.9.0-2-Linux-ppc64le.sh#e13044cdbce8542896dd8b7128a00b691c119e7ad6e872c7de93ec9954b4775d";
 "miniconda" verify_py310
+  ;;
+"Linux-x86_64" )
+  install_script "Mambaforge-22.9.0-2-Linux-x86_64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Mambaforge-22.9.0-2-Linux-x86_64.sh#d2bb6c33f2373131fc71283baae9eb81a279708d007e55d627d85abe30c2d0eb";
 "miniconda" verify_py310
+  ;;
+"MacOSX-arm64" )
+  install_script "Mambaforge-22.9.0-2-MacOSX-arm64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Mambaforge-22.9.0-2-MacOSX-arm64.sh#21959f1a17a662b3f260e8b04fe2dfe82f1246746875a72f513d39159d8b816b";
 "miniconda" verify_py310
+  ;;
+"MacOSX-x86_64" )
+  install_script "Mambaforge-22.9.0-2-MacOSX-x86_64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Mambaforge-22.9.0-2-MacOSX-x86_64.sh#844fc1ac61967990f0cfb9e516e8b0704ac2e500854588fd9851d2790d817bab";
 "miniconda" verify_py310
+  ;;
+* )
+  { echo
+    colorize 1 "ERROR"
+    echo ": The binary distribution of Mambaforge is not available for 
$(anaconda_architecture 2>/dev/null || true)."
+    echo
+  } >&2
+  exit 1
+  ;;
+esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3 
new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3  
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3  
1970-01-01 01:00:00.000000000 +0100
@@ -1,25 +0,0 @@
-case "$(anaconda_architecture 2>/dev/null || true)" in
-"Linux-ppc64le" )
-  install_script "Miniforge3-Linux-ppc64le" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-ppc64le.sh";
 "miniconda" verify_py3_latest
-  ;;
-"Linux-x86_64" )
-  install_script "Miniforge3-Linux-x86_64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh";
 "miniconda" verify_py3_latest
-  ;;
-"Linux-aarch64" )
-  install_script "Miniforge3-Linux-aarch64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-aarch64.sh";
 "miniconda" verify_py3_latest
-  ;;
-"MacOSX-arm64" )
-  install_script "Miniforge3-MacOSX-arm64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh";
 "miniconda" verify_py3_latest
-  ;;
-"MacOSX-x86_64" )
-  install_script "Miniforge3-MacOSX-x86_64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-x86_64.sh";
 "miniconda" verify_py3_latest
-  ;;
-* )
-  { echo
-    colorize 1 "ERROR"
-    echo ": The binary distribution of Miniforge3 is not available for 
$(anaconda_architecture 2>/dev/null || true)."
-    echo
-  } >&2
-  exit 1
-  ;;
-esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3-22.9.0-2 
new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3-22.9.0-2
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3-22.9.0-2 
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3-22.9.0-2 
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,25 @@
+case "$(anaconda_architecture 2>/dev/null || true)" in
+"Linux-aarch64" )
+  install_script "Miniforge3-22.9.0-2-Linux-aarch64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Miniforge3-22.9.0-2-Linux-aarch64.sh#3d75758c4d98181946b29d391323209752c5a111530738b5e36eba77e8e026aa";
 "miniconda" verify_py310
+  ;;
+"Linux-ppc64le" )
+  install_script "Miniforge3-22.9.0-2-Linux-ppc64le.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Miniforge3-22.9.0-2-Linux-ppc64le.sh#e84ffc9f018d5b23601106f299fefd25a75afb6fdd3416037ce4b561781156fc";
 "miniconda" verify_py310
+  ;;
+"Linux-x86_64" )
+  install_script "Miniforge3-22.9.0-2-Linux-x86_64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Miniforge3-22.9.0-2-Linux-x86_64.sh#180aefcbcf8a9f24123adb9e64e16c9bb16bc3f129bd79a5912ff44f295cc405";
 "miniconda" verify_py310
+  ;;
+"MacOSX-arm64" )
+  install_script "Miniforge3-22.9.0-2-MacOSX-arm64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Miniforge3-22.9.0-2-MacOSX-arm64.sh#6ac610dabf9a64574ec83b158b2eb6023bc3de0de9a0c528d4fa876df2a27d13";
 "miniconda" verify_py310
+  ;;
+"MacOSX-x86_64" )
+  install_script "Miniforge3-22.9.0-2-MacOSX-x86_64.sh" 
"https://github.com/conda-forge/miniforge/releases/download/22.9.0-2/Miniforge3-22.9.0-2-MacOSX-x86_64.sh#d7f50abd340f63515b2059ed462548f5d395e2f9d7847a98c5428998504f5bff";
 "miniconda" verify_py310
+  ;;
+* )
+  { echo
+    colorize 1 "ERROR"
+    echo ": The binary distribution of Miniforge is not available for 
$(anaconda_architecture 2>/dev/null || true)."
+    echo
+  } >&2
+  exit 1
+  ;;
+esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3-latest 
new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3-latest
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/miniforge3-latest   
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/miniforge3-latest   
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,25 @@
+case "$(anaconda_architecture 2>/dev/null || true)" in
+"Linux-ppc64le" )
+  install_script "Miniforge3-Linux-ppc64le" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-ppc64le.sh";
 "miniconda" verify_py3_latest
+  ;;
+"Linux-x86_64" )
+  install_script "Miniforge3-Linux-x86_64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh";
 "miniconda" verify_py3_latest
+  ;;
+"Linux-aarch64" )
+  install_script "Miniforge3-Linux-aarch64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-aarch64.sh";
 "miniconda" verify_py3_latest
+  ;;
+"MacOSX-arm64" )
+  install_script "Miniforge3-MacOSX-arm64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh";
 "miniconda" verify_py3_latest
+  ;;
+"MacOSX-x86_64" )
+  install_script "Miniforge3-MacOSX-x86_64" 
"https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-x86_64.sh";
 "miniconda" verify_py3_latest
+  ;;
+* )
+  { echo
+    colorize 1 "ERROR"
+    echo ": The binary distribution of Miniforge3 is not available for 
$(anaconda_architecture 2>/dev/null || true)."
+    echo
+  } >&2
+  exit 1
+  ;;
+esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.7.15/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.7.15/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
--- 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.7.15/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.7.15/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,12 @@
+diff --git a/test/v3ext.c b/test/v3ext.c
+index 7a240cd706..6cec6f1a9b 100644
+--- a/test/v3ext.c
++++ b/test/v3ext.c
+@@ -15,6 +15,7 @@
+ #include <openssl/err.h>
+ #include "internal/nelem.h"
+ 
++#include <string.h>
+ #include "testutil.h"
+ 
+ static const char *infile;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.7.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.7.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
--- 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.7.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.7.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,12 @@
+diff --git a/test/v3ext.c b/test/v3ext.c
+index 7a240cd706..6cec6f1a9b 100644
+--- a/test/v3ext.c
++++ b/test/v3ext.c
+@@ -15,6 +15,7 @@
+ #include <openssl/err.h>
+ #include "internal/nelem.h"
+ 
++#include <string.h>
+ #include "testutil.h"
+ 
+ static const char *infile;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.8.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.8.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
--- 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.8.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.8.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,12 @@
+diff --git a/test/v3ext.c b/test/v3ext.c
+index 7a240cd706..6cec6f1a9b 100644
+--- a/test/v3ext.c
++++ b/test/v3ext.c
+@@ -15,6 +15,7 @@
+ #include <openssl/err.h>
+ #include "internal/nelem.h"
+ 
++#include <string.h>
+ #include "testutil.h"
+ 
+ static const char *infile;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.9.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.9.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
--- 
old/pyenv-2.3.8/plugins/python-build/share/python-build/patches/3.9.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/pyenv-2.3.9/plugins/python-build/share/python-build/patches/3.9.16/openssl-1.1.1q/openssl_1.1.1q_fix_c_include.patch
    2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,12 @@
+diff --git a/test/v3ext.c b/test/v3ext.c
+index 7a240cd706..6cec6f1a9b 100644
+--- a/test/v3ext.c
++++ b/test/v3ext.c
+@@ -15,6 +15,7 @@
+ #include <openssl/err.h>
+ #include "internal/nelem.h"
+ 
++#include <string.h>
+ #include "testutil.h"
+ 
+ static const char *infile;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.10 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.10
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.10      
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.10      
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,81 @@
+VERSION='7.3.10'
+PYVER='2.7'
+
+# https://www.pypy.org/checksums.html
+aarch64_hash=274342f0e75e99d60ba7a0cfb0e13792e7664163e01450d2f7f2f7825603a0ae
+linux32_hash=0b17132f62d2a0c3c4572c57eb53820f25611afad71f3d6a310202942baed6e1
+linux64_hash=461fb6df524208af9e94ffb16989f628b585bdb4b9e97d81e668899fc3a064a3
+osarm64_hash=14b178f005603e3df6db7574b77b9c65ae79feda1a629214cafcb4eee7da679d
+osx64_hash=188551185ee945d5e42a3a619205d02ac31db77bdd5d98b6c11469e125c3bdb5
+s390x_hash=0fac1ec1e05c70941f758be05d40ce7ffe6a42c0416e70b55d40a7523e3e70ae
+
+### end of manual settings - following lines same for every download
+
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
+function pypy_pkg_data {
+    # pypy architecture tag
+    local ARCH="${1}"
+
+    # defaults
+    local cmd='install_package'  # use bz2
+    local pkg="${ARCH}" # assume matches
+    local ext='tar.bz2'
+    local hash='' # undefined
+
+    # select the hash, fix pkg if not match ARCH
+    case "${ARCH}" in
+    'linux-aarch64' )
+      hash="${aarch64_hash}"
+      pkg='aarch64'
+      ;;
+    'linux' )
+      hash="${linux32_hash}"
+      pkg='linux32'
+      ;;
+    'linux64' )
+      hash="${linux64_hash}"
+      ;;
+    'osarm64' )
+      hash="${osarm64_hash}"
+      pkg='macos_arm64'
+      ;;
+    'osx64' )
+      if require_osx_version "10.13"; then
+        hash="${osx64_hash}"
+        pkg='macos_x86_64'
+      else
+        err_no_binary "${ARCH}, OS X < 10.13"
+      fi
+      ;;
+    's390x' )
+      hash="${s390x_hash}"
+      ;;
+    * )
+      err_no_binary "${ARCH}"
+      ;;
+    esac
+
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
+    # result - command, package dir, url+hash
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
+}
+
+# determine command, package directory, url+hash
+declare -a pd="$(pypy_pkg_data "$(pypy_architecture 2>/dev/null || true)")"
+
+# install
+${pd[0]} "${pd[1]}" "${pd[2]}" 'pypy' "verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.10-src 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.10-src
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.10-src  
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.10-src  
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,14 @@
+VERSION='7.3.10'
+PYVER='2.7'
+
+# https://www.pypy.org/checksums.html
+hash=35e2cf4519cb51c4d5ffb4493ee24f0c7f42b4b04944903ca4b33981a04a3bc5
+
+### end of manual settings - following lines same for every download
+
+ver="pypy${PYVER}-v${VERSION}-src"
+url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+
+prefer_openssl11
+install_package "openssl-1.1.1f" 
"https://www.openssl.org/source/openssl-1.1.1f.tar.gz#186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35";
 mac_openssl --if has_broken_mac_openssl
+install_package "${ver}" "${url}#${hash}" 'pypy_builder' 
"verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.9 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.9
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy2.7-7.3.9       
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy2.7-7.3.9       
2022-12-19 05:52:52.000000000 +0100
@@ -11,29 +11,38 @@
 
 ### end of manual settings - following lines same for every download
 
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
 function pypy_pkg_data {
-    # pypy architecture
+    # pypy architecture tag
     local ARCH="${1}"
 
-    local basesrc="pypy${PYVER}-${VERSION}-src"
-    local basever="pypy${PYVER}-v${VERSION}"
-    local baseurl="https://downloads.python.org/pypy/${basever}";
-
     # defaults
     local cmd='install_package'  # use bz2
     local pkg="${ARCH}" # assume matches
-    local url="${baseurl}-${pkg}.tar.bz2" # use bz2
+    local ext='tar.bz2' # windows is always diff...
     local hash='' # undefined
 
-    case "${pkg}" in
+    # select the hash, fix pkg if not match ARCH, windows has ext of zip
+    case "${ARCH}" in
     'linux-aarch64' )
       hash="${aarch64_hash}"
-      url="${baseurl}-aarch64.tar.bz2" # diff url
+      pkg='aarch64'
       ;;
     'linux' )
       hash="${linux32_hash}"
-      pkg='linux32'  # package name revised
-      url="${baseurl}-${pkg}.tar.bz2"  # new url
+      pkg='linux32'
       ;;
     'linux64' )
       hash="${linux64_hash}"
@@ -42,13 +51,7 @@
       if require_osx_version "10.13"; then
         hash="${osx64_hash}"
       else
-        { echo
-          colorize 1 "ERROR"
-          echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true), OS X < 10.13."
-          echo "try '${basesrc}' to build from source."
-          echo
-        } >&2
-        exit 1
+        err_no_binary "${ARCH}, OS X < 10.13"
       fi
       ;;
     's390x' )
@@ -57,21 +60,18 @@
     'win64' )
       hash="${win64_hash}"
       cmd='install_zip'  # diff command
-      url="${baseurl}-${pkg}.zip"  # zip rather than bz2
+      ext='zip' # zip rather than bz2
       ;;
     * )
-      { echo
-        colorize 1 "ERROR"
-        echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true)."
-        echo "try '${basesrc}' to build from source."
-        echo
-      } >&2
-      exit 1
+      err_no_binary "${ARCH}"
       ;;
     esac
 
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
     # result - command, package dir, url+hash
-    echo "${cmd}" "${basever}-${pkg}" "${url}#${hash}"
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
 }
 
 # determine command, package directory, url+hash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.7-7.3.9 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.7-7.3.9
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.7-7.3.9       
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.7-7.3.9       
2022-12-19 05:52:52.000000000 +0100
@@ -11,29 +11,38 @@
 
 ### end of manual settings - following lines same for every download
 
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
 function pypy_pkg_data {
-    # pypy architecture
+    # pypy architecture tag
     local ARCH="${1}"
 
-    local basesrc="pypy${PYVER}-${VERSION}-src"
-    local basever="pypy${PYVER}-v${VERSION}"
-    local baseurl="https://downloads.python.org/pypy/${basever}";
-
     # defaults
     local cmd='install_package'  # use bz2
     local pkg="${ARCH}" # assume matches
-    local url="${baseurl}-${pkg}.tar.bz2" # use bz2
+    local ext='tar.bz2' # windows is always diff...
     local hash='' # undefined
 
-    case "${pkg}" in
+    # select the hash, fix pkg if not match ARCH, windows has ext of zip
+    case "${ARCH}" in
     'linux-aarch64' )
       hash="${aarch64_hash}"
-      url="${baseurl}-aarch64.tar.bz2" # diff url
+      pkg='aarch64'
       ;;
     'linux' )
       hash="${linux32_hash}"
-      pkg='linux32'  # package name revised
-      url="${baseurl}-${pkg}.tar.bz2"  # new url
+      pkg='linux32'
       ;;
     'linux64' )
       hash="${linux64_hash}"
@@ -42,13 +51,7 @@
       if require_osx_version "10.13"; then
         hash="${osx64_hash}"
       else
-        { echo
-          colorize 1 "ERROR"
-          echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true), OS X < 10.13."
-          echo "try '${basesrc}' to build from source."
-          echo
-        } >&2
-        exit 1
+        err_no_binary "${ARCH}, OS X < 10.13"
       fi
       ;;
     's390x' )
@@ -57,21 +60,18 @@
     'win64' )
       hash="${win64_hash}"
       cmd='install_zip'  # diff command
-      url="${baseurl}-${pkg}.zip"  # zip rather than bz2
+      ext='zip' # zip rather than bz2
       ;;
     * )
-      { echo
-        colorize 1 "ERROR"
-        echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true)."
-        echo "try '${basesrc}' to build from source."
-        echo
-      } >&2
-      exit 1
+      err_no_binary "${ARCH}"
       ;;
     esac
 
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
     # result - command, package dir, url+hash
-    echo "${cmd}" "${basever}-${pkg}" "${url}#${hash}"
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
 }
 
 # determine command, package directory, url+hash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.10 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.10
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.10      
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.10      
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,81 @@
+VERSION='7.3.10'
+PYVER='3.8'
+
+# https://www.pypy.org/checksums.html
+aarch64_hash=e4caa1a545f22cfee87d5b9aa6f8852347f223643ad7d2562e0b2a2f4663ad98
+linux32_hash=b70ed7fdc73a74ebdc04f07439f7bad1a849aaca95e26b4a74049d0e483f071c
+linux64_hash=ceef6496fd4ab1c99e3ec22ce657b8f10f8bb77a32427fadfb5e1dd943806011
+osarm64_hash=6cb1429371e4854b718148a509d80143f801e3abfc72fef58d88aeeee1e98f9e
+osx64_hash=399eb1ce4c65f62f6a096b7c273536601b7695e3c0dc0457393a659b95b7615b
+s390x_hash=c294f8e815158388628fe77ac5b8ad6cd93c8db1359091fa02d41cf6da4d61a1
+
+### end of manual settings - following lines same for every download
+
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
+function pypy_pkg_data {
+    # pypy architecture tag
+    local ARCH="${1}"
+
+    # defaults
+    local cmd='install_package'  # use bz2
+    local pkg="${ARCH}" # assume matches
+    local ext='tar.bz2'
+    local hash='' # undefined
+
+    # select the hash, fix pkg if not match ARCH
+    case "${ARCH}" in
+    'linux-aarch64' )
+      hash="${aarch64_hash}"
+      pkg='aarch64'
+      ;;
+    'linux' )
+      hash="${linux32_hash}"
+      pkg='linux32'
+      ;;
+    'linux64' )
+      hash="${linux64_hash}"
+      ;;
+    'osarm64' )
+      hash="${osarm64_hash}"
+      pkg='macos_arm64'
+      ;;
+    'osx64' )
+      if require_osx_version "10.13"; then
+        hash="${osx64_hash}"
+        pkg='macos_x86_64'
+      else
+        err_no_binary "${ARCH}, OS X < 10.13"
+      fi
+      ;;
+    's390x' )
+      hash="${s390x_hash}"
+      ;;
+    * )
+      err_no_binary "${ARCH}"
+      ;;
+    esac
+
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
+    # result - command, package dir, url+hash
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
+}
+
+# determine command, package directory, url+hash
+declare -a pd="$(pypy_pkg_data "$(pypy_architecture 2>/dev/null || true)")"
+
+# install
+${pd[0]} "${pd[1]}" "${pd[2]}" 'pypy' "verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.10-src 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.10-src
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.10-src  
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.10-src  
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,14 @@
+VERSION='7.3.10'
+PYVER='3.8'
+
+# https://www.pypy.org/checksums.html
+hash=218a1e062f17aba89f61bc398e8498f13c048b9fcf294343f5d9d56c3ac9b882
+
+### end of manual settings - following lines same for every download
+
+ver="pypy${PYVER}-v${VERSION}-src"
+url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+
+prefer_openssl11
+install_package "openssl-1.1.1f" 
"https://www.openssl.org/source/openssl-1.1.1f.tar.gz#186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35";
 mac_openssl --if has_broken_mac_openssl
+install_package "${ver}" "${url}#${hash}" 'pypy_builder' 
"verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.9 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.9
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.8-7.3.9       
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.8-7.3.9       
2022-12-19 05:52:52.000000000 +0100
@@ -11,29 +11,38 @@
 
 ### end of manual settings - following lines same for every download
 
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
 function pypy_pkg_data {
-    # pypy architecture
+    # pypy architecture tag
     local ARCH="${1}"
 
-    local basesrc="pypy${PYVER}-${VERSION}-src"
-    local basever="pypy${PYVER}-v${VERSION}"
-    local baseurl="https://downloads.python.org/pypy/${basever}";
-
     # defaults
     local cmd='install_package'  # use bz2
     local pkg="${ARCH}" # assume matches
-    local url="${baseurl}-${pkg}.tar.bz2" # use bz2
+    local ext='tar.bz2' # windows is always diff...
     local hash='' # undefined
 
-    case "${pkg}" in
+    # select the hash, fix pkg if not match ARCH, windows has ext of zip
+    case "${ARCH}" in
     'linux-aarch64' )
       hash="${aarch64_hash}"
-      url="${baseurl}-aarch64.tar.bz2" # diff url
+      pkg='aarch64'
       ;;
     'linux' )
       hash="${linux32_hash}"
-      pkg='linux32'  # package name revised
-      url="${baseurl}-${pkg}.tar.bz2"  # new url
+      pkg='linux32'
       ;;
     'linux64' )
       hash="${linux64_hash}"
@@ -42,13 +51,7 @@
       if require_osx_version "10.13"; then
         hash="${osx64_hash}"
       else
-        { echo
-          colorize 1 "ERROR"
-          echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true), OS X < 10.13."
-          echo "try '${basesrc}' to build from source."
-          echo
-        } >&2
-        exit 1
+        err_no_binary "${ARCH}, OS X < 10.13"
       fi
       ;;
     's390x' )
@@ -57,21 +60,18 @@
     'win64' )
       hash="${win64_hash}"
       cmd='install_zip'  # diff command
-      url="${baseurl}-${pkg}.zip"  # zip rather than bz2
+      ext='zip' # zip rather than bz2
       ;;
     * )
-      { echo
-        colorize 1 "ERROR"
-        echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true)."
-        echo "try '${basesrc}' to build from source."
-        echo
-      } >&2
-      exit 1
+      err_no_binary "${ARCH}"
       ;;
     esac
 
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
     # result - command, package dir, url+hash
-    echo "${cmd}" "${basever}-${pkg}" "${url}#${hash}"
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
 }
 
 # determine command, package directory, url+hash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.10 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.10
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.10      
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.10      
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,81 @@
+VERSION='7.3.10'
+PYVER='3.9'
+
+# https://www.pypy.org/checksums.html
+aarch64_hash=657a04fd9a5a992a2f116a9e7e9132ea0c578721f59139c9fb2083775f71e514
+linux32_hash=b6db59613b9a1c0c1ab87bc103f52ee95193423882dc8a848b68850b8ba59cc5
+linux64_hash=95cf99406179460d63ddbfe1ec870f889d05f7767ce81cef14b88a3a9e127266
+osarm64_hash=e2a6bec7408e6497c7de8165aa4a1b15e2416aec4a72f2578f793fb06859ccba
+osx64_hash=f90c8619b41e68ec9ffd7d5e913fe02e60843da43d3735b1c1bc75bcfe638d97
+s390x_hash=ca6525a540cf0c682d1592ae35d3fbc97559a97260e4b789255cc76dde7a14f0
+
+### end of manual settings - following lines same for every download
+
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
+function pypy_pkg_data {
+    # pypy architecture tag
+    local ARCH="${1}"
+
+    # defaults
+    local cmd='install_package'  # use bz2
+    local pkg="${ARCH}" # assume matches
+    local ext='tar.bz2'
+    local hash='' # undefined
+
+    # select the hash, fix pkg if not match ARCH
+    case "${ARCH}" in
+    'linux-aarch64' )
+      hash="${aarch64_hash}"
+      pkg='aarch64'
+      ;;
+    'linux' )
+      hash="${linux32_hash}"
+      pkg='linux32'
+      ;;
+    'linux64' )
+      hash="${linux64_hash}"
+      ;;
+    'osarm64' )
+      hash="${osarm64_hash}"
+      pkg='macos_arm64'
+      ;;
+    'osx64' )
+      if require_osx_version "10.13"; then
+        hash="${osx64_hash}"
+        pkg='macos_x86_64'
+      else
+        err_no_binary "${ARCH}, OS X < 10.13"
+      fi
+      ;;
+    's390x' )
+      hash="${s390x_hash}"
+      ;;
+    * )
+      err_no_binary "${ARCH}"
+      ;;
+    esac
+
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
+    # result - command, package dir, url+hash
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
+}
+
+# determine command, package directory, url+hash
+declare -a pd="$(pypy_pkg_data "$(pypy_architecture 2>/dev/null || true)")"
+
+# install
+${pd[0]} "${pd[1]}" "${pd[2]}" 'pypy' "verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.10-src 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.10-src
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.10-src  
1970-01-01 01:00:00.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.10-src  
2022-12-19 05:52:52.000000000 +0100
@@ -0,0 +1,14 @@
+VERSION='7.3.10'
+PYVER='3.9'
+
+# https://www.pypy.org/checksums.html
+hash=3738d32575ed2513e3e66878e4e4c6c208caed267570f3f9f814748830002967
+
+### end of manual settings - following lines same for every download
+
+ver="pypy${PYVER}-v${VERSION}-src"
+url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+
+prefer_openssl11
+install_package "openssl-1.1.1f" 
"https://www.openssl.org/source/openssl-1.1.1f.tar.gz#186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35";
 mac_openssl --if has_broken_mac_openssl
+install_package "${ver}" "${url}#${hash}" 'pypy_builder' 
"verify_py${PYVER//./}" 'ensurepip'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.9 
new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.9
--- old/pyenv-2.3.8/plugins/python-build/share/python-build/pypy3.9-7.3.9       
2022-12-08 08:07:26.000000000 +0100
+++ new/pyenv-2.3.9/plugins/python-build/share/python-build/pypy3.9-7.3.9       
2022-12-19 05:52:52.000000000 +0100
@@ -11,29 +11,38 @@
 
 ### end of manual settings - following lines same for every download
 
+function err_no_binary {
+    local archmsg="${1}"
+    local ver="pypy${PYVER}-v${VERSION}-src"
+    local url="https://downloads.python.org/pypy/${ver}.tar.bz2";
+    { echo
+      colorize 1 "ERROR"
+      echo ": The binary distribution of PyPy is not available for ${archmsg}."
+      echo "try '${url}' to build from source."
+      echo
+    } >&2
+    exit 1
+}
+
 function pypy_pkg_data {
-    # pypy architecture
+    # pypy architecture tag
     local ARCH="${1}"
 
-    local basesrc="pypy${PYVER}-${VERSION}-src"
-    local basever="pypy${PYVER}-v${VERSION}"
-    local baseurl="https://downloads.python.org/pypy/${basever}";
-
     # defaults
     local cmd='install_package'  # use bz2
     local pkg="${ARCH}" # assume matches
-    local url="${baseurl}-${pkg}.tar.bz2" # use bz2
+    local ext='tar.bz2' # windows is always diff...
     local hash='' # undefined
 
-    case "${pkg}" in
+    # select the hash, fix pkg if not match ARCH, windows has ext of zip
+    case "${ARCH}" in
     'linux-aarch64' )
       hash="${aarch64_hash}"
-      url="${baseurl}-aarch64.tar.bz2" # diff url
+      pkg='aarch64'
       ;;
     'linux' )
       hash="${linux32_hash}"
-      pkg='linux32'  # package name revised
-      url="${baseurl}-${pkg}.tar.bz2"  # new url
+      pkg='linux32'
       ;;
     'linux64' )
       hash="${linux64_hash}"
@@ -42,13 +51,7 @@
       if require_osx_version "10.13"; then
         hash="${osx64_hash}"
       else
-        { echo
-          colorize 1 "ERROR"
-          echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true), OS X < 10.13."
-          echo "try '${basesrc}' to build from source."
-          echo
-        } >&2
-        exit 1
+        err_no_binary "${ARCH}, OS X < 10.13"
       fi
       ;;
     's390x' )
@@ -57,21 +60,18 @@
     'win64' )
       hash="${win64_hash}"
       cmd='install_zip'  # diff command
-      url="${baseurl}-${pkg}.zip"  # zip rather than bz2
+      ext='zip' # zip rather than bz2
       ;;
     * )
-      { echo
-        colorize 1 "ERROR"
-        echo ": The binary distribution of PyPy is not available for 
$(pypy_architecture 2>/dev/null || true)."
-        echo "try '${basesrc}' to build from source."
-        echo
-      } >&2
-      exit 1
+      err_no_binary "${ARCH}"
       ;;
     esac
 
+    local basever="pypy${PYVER}-v${VERSION}"
+    local baseurl="https://downloads.python.org/pypy/${basever}";
+
     # result - command, package dir, url+hash
-    echo "${cmd}" "${basever}-${pkg}" "${url}#${hash}"
+    echo "${cmd}" "${basever}-${pkg}" "${baseurl}-${pkg}.${ext}#${hash}"
 }
 
 # determine command, package directory, url+hash

Reply via email to