From 54a935bdc3c9d41d97ef93b4d812e87cabb47339 Mon Sep 17 00:00:00 2001 From: ivanovac Date: Wed, 11 Mar 2026 09:41:36 +0200 Subject: [PATCH 1/7] feat: Add cflinuxfs5 (Ubuntu 24.04) stack support - Add cflinuxfs5 to supported stacks in install_go.sh and package.sh - Add cflinuxfs5 Python dependencies (3.10.9, 3.11.15, 3.12.13, 3.13.9, 3.14.3) - Extend libffi and libmemcache to support cflinuxfs5 stack - Update config.json and VERSION for cflinuxfs5 release Dependencies use official S3-hosted binaries from buildpacks.cloudfoundry.org. --- .gitignore | 1 + VERSION | 2 +- config.json | 2 +- manifest.yml | 56 +++++++++++++++++++++++++++++++++++++++++++ scripts/install_go.sh | 2 +- scripts/package.sh | 1 + 6 files changed, 61 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index ce2ca9190..91bdb582a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ log/ **/.DS_Store /python_buildpack-*.zip .idea/ +build/buildpack.zip diff --git a/VERSION b/VERSION index a49ebe627..0cf5a45b6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.8.44 +1.9.1-beta diff --git a/config.json b/config.json index a8129027d..9d6abb4e5 100644 --- a/config.json +++ b/config.json @@ -1,5 +1,5 @@ { - "stack": "cflinuxfs4", + "stack": "cflinuxfs5", "oses": [ "linux" ], diff --git a/manifest.yml b/manifest.yml index b61d4c9bb..6bcab0c67 100644 --- a/manifest.yml +++ b/manifest.yml @@ -32,6 +32,7 @@ dependencies: - name: libffi version: 3.2.1 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 uri: https://buildpacks.cloudfoundry.org/dependencies/manual-binaries/python/libffi-3.2.1-linux-x64-5f5bf32c.tgz @@ -41,6 +42,7 @@ dependencies: - name: libmemcache version: 1.0.18 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 uri: https://buildpacks.cloudfoundry.org/dependencies/manual-binaries/python/libmemcache-1.0.18-linux-x64-6d33aa02.tgz @@ -52,6 +54,7 @@ dependencies: uri: https://repo.anaconda.com/miniconda/Miniconda3-py39_25.7.0-2-Linux-x86_64.sh sha256: 790e8ea347cf49ba250fceacdc0b022237a9150717b9e4c17f2e70abc075c05d cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://github.com/conda/conda/archive/25.7.0.tar.gz @@ -61,6 +64,7 @@ dependencies: uri: https://github.com/conda-forge/miniforge/releases/download/24.7.1-0/Miniforge3-24.7.1-0-Linux-x86_64.sh sha256: b64f77042cf8eafd31ced64f9253a74fb85db63545fe167ba5756aea0e8125be cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://github.com/conda-forge/miniforge/archive/refs/tags/24.7.1-0.tar.gz @@ -77,6 +81,7 @@ dependencies: uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_25.2_linux_noarch_any-stack_7dc1e988.tgz sha256: 7dc1e9882eb18f53150261c3a0cde7d5a39cdb18843c930ee01db8582f6b4f27 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://files.pythonhosted.org/packages/20/16/650289cd3f43d5a2fadfd98c68bd1e1e7f2550a1a5326768cddfbcedb2c5/pip-25.2.tar.gz @@ -101,6 +106,7 @@ dependencies: uri: https://buildpacks.cloudfoundry.org/dependencies/pipenv/pipenv_2026.0.3_linux_noarch_cflinuxfs4_082d293b.tgz sha256: '082d293bd8ab79b4674af1aa3812a6488654ad87e07cec63d73d67f9fbbdc131' cf_stacks: + - cflinuxfs5 - cflinuxfs4 source: https://files.pythonhosted.org/packages/90/03/8958464e0d366530477f07fd041ef6b9df56f3ea9c56d0db24cc8cd87fff/pipenv-2026.0.3.tar.gz source_sha256: 9a39d13a41ed8e4368ad50620941191f357319c8ffb7df45875c7c5dc6604ff6 @@ -136,6 +142,14 @@ dependencies: - cflinuxfs4 source: https://www.python.org/ftp/python/3.10.19/Python-3.10.19.tgz source_sha256: a078fb2d7a216071ebbe2e34b5f5355dd6b6e9b0cd1bacc4a41c63990c5a0eec +- name: python + version: 3.10.9 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.10.9_linux_x64_cflinuxfs5_da6ea4c6.tgz + sha256: da6ea4c64b2a4feac3275a755bb4eafb1808b9ee6344ba6efcb5e0fefb1f961e + cf_stacks: + - cflinuxfs5 + source: https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tgz + source_sha256: 4ccd7e46c8898f4c7862910a1703aa0e63525913a519abb2f55e26220a914d88 - name: python version: 3.11.14 uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.11.14_linux_x64_cflinuxfs3_294394be.tgz @@ -152,6 +166,22 @@ dependencies: - cflinuxfs4 source: https://www.python.org/ftp/python/3.11.14/Python-3.11.14.tgz source_sha256: 563d2a1b2a5ba5d5409b5ecd05a0e1bf9b028cf3e6a6f0c87a5dc8dc3f2d9182 +- name: python + version: 3.11.15 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.11.15_linux_x64_cflinuxfs5_bf1265a4.tgz + sha256: bf1265a4d32793c2ad04c9f9d788e2ab16a628ebbb1a4687331857b0e2d93b43 + cf_stacks: + - cflinuxfs5 + source: https://www.python.org/ftp/python/3.11.15/Python-3.11.15.tgz + source_sha256: f4de1b10bd6c70cbb9fa1cd71fc5038b832747a74ee59d599c69ce4846defb50 +- name: python + version: 3.12.10 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.12.10_linux_x64_cflinuxfs3_c91697d7.tgz + sha256: c91697d70ad221408a586cb3ac6efc6dfa45ec4eda6f1375c9a38f12f9f3e403 + cf_stacks: + - cflinuxfs3 + source: https://www.python.org/ftp/python/3.12.10/Python-3.12.10.tgz + source_sha256: 15d9c623abfd2165fe816ea1fb385d6ed8cf3c664661ab357f1782e3036a6dac - name: python version: 3.12.12 uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.12.12_linux_x64_cflinuxfs4_3ae569b8.tgz @@ -160,6 +190,14 @@ dependencies: - cflinuxfs4 source: https://www.python.org/ftp/python/3.12.12/Python-3.12.12.tgz source_sha256: 487c908ddf4097a1b9ba859f25fe46d22ccaabfb335880faac305ac62bffb79b +- name: python + version: 3.12.13 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.12.13_linux_x64_cflinuxfs5_156543cb.tgz + sha256: 156543cb3ff9924317f90f0b5c7af342e93b21836fde8f390d1b944c05316580 + cf_stacks: + - cflinuxfs5 + source: https://www.python.org/ftp/python/3.12.13/Python-3.12.13.tgz + source_sha256: 0816c4761c97ecdb3f50a3924de0a93fd78cb63ee8e6c04201ddfaedca500b0b - name: python version: 3.13.9 uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.13.9_linux_x64_cflinuxfs3_1c04ba8c.tgz @@ -176,6 +214,14 @@ dependencies: - cflinuxfs4 source: https://www.python.org/ftp/python/3.13.11/Python-3.13.11.tgz source_sha256: 03cfedbe06ce21bc44ce09245e091a77f2fee9ec9be5c52069048a181300b202 +- name: python + version: 3.13.9 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.13.9_linux_x64_cflinuxfs5_42c6d33a.tgz + sha256: 42c6d33a0b69becf0ab8c27a7b0c94454672d76bea4c0965627f71053a276e21 + cf_stacks: + - cflinuxfs5 + source: https://www.python.org/ftp/python/3.13.9/Python-3.13.9.tgz + source_sha256: c4c066af19c98fb7835d473bebd7e23be84f6e9874d47db9e39a68ee5d0ce35c - name: python version: 3.14.2 uri: https://buildpack-dependencies.tanzu.vmware.com/cf/python/python_3.14.2_linux_x64_cflinuxfs3_82c1798d.tgz @@ -192,11 +238,20 @@ dependencies: - cflinuxfs4 source: https://www.python.org/ftp/python/3.14.2/Python-3.14.2.tgz source_sha256: c609e078adab90e2c6bacb6afafacd5eaf60cd94cf670f1e159565725fcd448d +- name: python + version: 3.14.3 + uri: https://buildpacks.cloudfoundry.org/dependencies/python/python_3.14.3_linux_x64_cflinuxfs5_62e6a7a7.tgz + sha256: 62e6a7a7a369c77412c1db87799128cd87a27bbfd14969c01ff4719a7bd7049f + cf_stacks: + - cflinuxfs5 + source: https://www.python.org/ftp/python/3.14.3/Python-3.14.3.tgz + source_sha256: d7fe130d0501ae047ca318fa92aa642603ab6f217901015a1df6ce650d5470cd - name: setuptools version: 80.9.0 uri: https://buildpacks.cloudfoundry.org/dependencies/setuptools/setuptools_80.9.0_linux_noarch_any-stack_db9ec7d3.tgz sha256: db9ec7d3c1b8e1494852b7228c3de7dd7449a1c4a53297ea9633a117eedf6787 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://files.pythonhosted.org/packages/18/5d/3bf57dcd21979b887f014ea83c24ae194cfcd12b9e0fda66b957c69d1fca/setuptools-80.9.0.tar.gz @@ -224,4 +279,5 @@ include_files: - bin/release - bin/supply - manifest.yml +- scripts/install_go.sh pre_package: scripts/build.sh diff --git a/scripts/install_go.sh b/scripts/install_go.sh index 6e998957d..c882bd5d2 100755 --- a/scripts/install_go.sh +++ b/scripts/install_go.sh @@ -5,7 +5,7 @@ set -u set -o pipefail function main() { - if [[ "${CF_STACK:-}" != "cflinuxfs3" && "${CF_STACK:-}" != "cflinuxfs4" ]]; then + if [[ "${CF_STACK:-}" != "cflinuxfs3" && "${CF_STACK:-}" != "cflinuxfs4" && "${CF_STACK:-}" != "cflinuxfs5" ]]; then echo " **ERROR** Unsupported stack" echo " See https://docs.cloudfoundry.org/devguide/deploy-apps/stacks.html for more info" exit 1 diff --git a/scripts/package.sh b/scripts/package.sh index 9314014da..af45cd726 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -95,6 +95,7 @@ function package::buildpack() { stack_flag="--any-stack" if [[ "${stack}" != "any" ]]; then stack_flag="--stack=${stack}" + export CF_STACK="${stack}" fi local file From 8a1e6f305f0fb6920eafa9a7b503758c9a2307e1 Mon Sep 17 00:00:00 2001 From: ivanovac Date: Thu, 12 Mar 2026 10:59:46 +0200 Subject: [PATCH 2/7] feat: Update install_go.sh to use Go 1.25.7 - Use cflinuxfs4 Go binary for all stacks (compatible with cflinuxfs5) - Remove cflinuxfs3 support (deprecated stack) - Single version/SHA simplifies maintenance --- scripts/install_go.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/install_go.sh b/scripts/install_go.sh index c882bd5d2..daf525891 100755 --- a/scripts/install_go.sh +++ b/scripts/install_go.sh @@ -5,22 +5,23 @@ set -u set -o pipefail function main() { - if [[ "${CF_STACK:-}" != "cflinuxfs3" && "${CF_STACK:-}" != "cflinuxfs4" && "${CF_STACK:-}" != "cflinuxfs5" ]]; then + if [[ "${CF_STACK:-}" != "cflinuxfs4" && "${CF_STACK:-}" != "cflinuxfs5" ]]; then echo " **ERROR** Unsupported stack" echo " See https://docs.cloudfoundry.org/devguide/deploy-apps/stacks.html for more info" exit 1 fi local version expected_sha dir - version="1.25.6" - expected_sha="0ed64e3b9cb9b1c2ec57880dae2427b0ee2676f2ae2fb53c2e1bb838c500f9fb" + version="1.25.7" + expected_sha="12a6e116cffdcd071988cf3c30216a3f08f54d2cfbb45fff67e375823fd0c3b9" dir="/tmp/go${version}" mkdir -p "${dir}" if [[ ! -f "${dir}/bin/go" ]]; then local url - url="https://buildpacks.cloudfoundry.org/dependencies/go/go_${version}_linux_x64_${CF_STACK}_${expected_sha:0:8}.tgz" + # Use cflinuxfs4 binary for all stacks (compatible with cflinuxfs5) + url="https://buildpacks.cloudfoundry.org/dependencies/go/go_${version}_linux_x64_cflinuxfs4_${expected_sha:0:8}.tgz" echo "-----> Download go ${version}" curl "${url}" \ From 467f4bccf604d0c20e6d12e8aec46e87142f64d2 Mon Sep 17 00:00:00 2001 From: ivanovac Date: Thu, 12 Mar 2026 17:24:43 +0200 Subject: [PATCH 3/7] feat: Add cflinuxfs5 to pip entries --- manifest.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/manifest.yml b/manifest.yml index 9b66713b8..0e1f7f4d5 100644 --- a/manifest.yml +++ b/manifest.yml @@ -72,6 +72,7 @@ dependencies: uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_25.2_linux_noarch_any-stack_7dc1e988.tgz sha256: 7dc1e9882eb18f53150261c3a0cde7d5a39cdb18843c930ee01db8582f6b4f27 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://files.pythonhosted.org/packages/20/16/650289cd3f43d5a2fadfd98c68bd1e1e7f2550a1a5326768cddfbcedb2c5/pip-25.2.tar.gz @@ -80,7 +81,10 @@ dependencies: version: 26.0.1 uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_26.0.1_linux_noarch_any-stack_0750a38b.tgz sha256: 0750a38b65c6038a0415a4ff15ef2df61fcaa6c1e5ec9d8c6678222dbac91306 - cf_stacks: [] + cf_stacks: + - cflinuxfs5 + - cflinuxfs4 + - cflinuxfs3 source: https://files.pythonhosted.org/packages/48/83/0d7d4e9efe3344b8e2fe25d93be44f64b65364d3c8d7bc6dc90198d5422e/pip-26.0.1.tar.gz source_sha256: c4037d8a277c89b320abe636d59f91e6d0922d08a05b60e85e53b296613346d8 - name: pipenv From 8fd9d4f98f5ff65b84aaf5831b6f9a51371cdfdc Mon Sep 17 00:00:00 2001 From: ivanovac Date: Fri, 13 Mar 2026 11:58:15 +0200 Subject: [PATCH 4/7] fix: Keep only one pip version per stack cflinuxfs5 uses pip 26.0.1 (latest) cflinuxfs3/cflinuxfs4 use pip 25.2 (as before) --- manifest.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/manifest.yml b/manifest.yml index 0e1f7f4d5..3d6feb3d0 100644 --- a/manifest.yml +++ b/manifest.yml @@ -72,7 +72,6 @@ dependencies: uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_25.2_linux_noarch_any-stack_7dc1e988.tgz sha256: 7dc1e9882eb18f53150261c3a0cde7d5a39cdb18843c930ee01db8582f6b4f27 cf_stacks: - - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://files.pythonhosted.org/packages/20/16/650289cd3f43d5a2fadfd98c68bd1e1e7f2550a1a5326768cddfbcedb2c5/pip-25.2.tar.gz @@ -83,8 +82,6 @@ dependencies: sha256: 0750a38b65c6038a0415a4ff15ef2df61fcaa6c1e5ec9d8c6678222dbac91306 cf_stacks: - cflinuxfs5 - - cflinuxfs4 - - cflinuxfs3 source: https://files.pythonhosted.org/packages/48/83/0d7d4e9efe3344b8e2fe25d93be44f64b65364d3c8d7bc6dc90198d5422e/pip-26.0.1.tar.gz source_sha256: c4037d8a277c89b320abe636d59f91e6d0922d08a05b60e85e53b296613346d8 - name: pipenv From 3f541507da9965e22763ae21ac9330f3a28fb883 Mon Sep 17 00:00:00 2001 From: ivanovac Date: Fri, 13 Mar 2026 14:59:10 +0200 Subject: [PATCH 5/7] fix: Use pip 25.2 for cflinuxfs5 pip 26.0.1 requires flit-core build dependency which is not available. Use pip 25.2 which works correctly for all stacks. --- manifest.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.yml b/manifest.yml index 3d6feb3d0..b22809c3a 100644 --- a/manifest.yml +++ b/manifest.yml @@ -72,6 +72,7 @@ dependencies: uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_25.2_linux_noarch_any-stack_7dc1e988.tgz sha256: 7dc1e9882eb18f53150261c3a0cde7d5a39cdb18843c930ee01db8582f6b4f27 cf_stacks: + - cflinuxfs5 - cflinuxfs4 - cflinuxfs3 source: https://files.pythonhosted.org/packages/20/16/650289cd3f43d5a2fadfd98c68bd1e1e7f2550a1a5326768cddfbcedb2c5/pip-25.2.tar.gz @@ -80,8 +81,7 @@ dependencies: version: 26.0.1 uri: https://buildpacks.cloudfoundry.org/dependencies/pip/pip_26.0.1_linux_noarch_any-stack_0750a38b.tgz sha256: 0750a38b65c6038a0415a4ff15ef2df61fcaa6c1e5ec9d8c6678222dbac91306 - cf_stacks: - - cflinuxfs5 + cf_stacks: [] source: https://files.pythonhosted.org/packages/48/83/0d7d4e9efe3344b8e2fe25d93be44f64b65364d3c8d7bc6dc90198d5422e/pip-26.0.1.tar.gz source_sha256: c4037d8a277c89b320abe636d59f91e6d0922d08a05b60e85e53b296613346d8 - name: pipenv From 827cb4b2014eb06d3f3683daef1571c1611fd8d0 Mon Sep 17 00:00:00 2001 From: Tsvetelina Marinova Date: Fri, 13 Mar 2026 15:39:28 +0200 Subject: [PATCH 6/7] Change stack version from cflinuxfs5 to cflinuxfs4 --- config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config.json b/config.json index 9d6abb4e5..a8129027d 100644 --- a/config.json +++ b/config.json @@ -1,5 +1,5 @@ { - "stack": "cflinuxfs5", + "stack": "cflinuxfs4", "oses": [ "linux" ], From edf74fe333d0b5d643539bad6f0018b46a0de8aa Mon Sep 17 00:00:00 2001 From: Tsvetelina Marinova Date: Fri, 13 Mar 2026 16:13:47 +0200 Subject: [PATCH 7/7] Bump the minor version to 1.9.0 Bump the minor version to 1.9.0 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 0cf5a45b6..f8e233b27 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.9.1-beta +1.9.0