From 81357e8909e608293d9cf1ab4b4d7b9e81ce193f Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Tue, 23 Dec 2025 14:16:56 +0000 Subject: [PATCH 01/13] updating versions to address vulnerabilities --- .../files/etc/requirements.txt | 16 +++++++------- .../failtester/files/etc/requirements.txt | 16 +++++++------- .../files/etc/requirements.txt | 16 +++++++------- .../stylechecker/files/etc/requirements.txt | 22 +++++++++---------- 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/circleci/images/citusupgradetester/files/etc/requirements.txt b/circleci/images/citusupgradetester/files/etc/requirements.txt index eacce81..9075337 100644 --- a/circleci/images/citusupgradetester/files/etc/requirements.txt +++ b/circleci/images/citusupgradetester/files/etc/requirements.txt @@ -5,24 +5,24 @@ -i https://pypi.python.org/simple asgiref==3.4.1; python_version >= '3.6' blinker==1.4 -brotli==1.0.9 -certifi==2024.2.2; python_version >= '3.6' +brotli==1.1.0 +certifi==2024.8.30; python_version >= '3.6' cffi==1.16.0; platform_python_implementation != 'PyPy' click==8.0.4; python_version >= '3.6' construct==2.9.45 -cryptography==42.0.3; python_version >= '3.7' +cryptography==46.0.3; python_version >= '3.7' docopt==0.6.2 exceptiongroup==1.2.0; python_version < '3.11' execnet==2.0.2; python_version >= '3.7' filelock==3.13.1; python_version >= '3.8' -flask==2.0.3; python_version >= '3.6' +flask==2.3.2; python_version >= '3.6' h11==0.12.0; python_version >= '3.6' -h2==4.1.0; python_full_version >= '3.6.1' +h2==4.3.0; python_full_version >= '3.6.1' hpack==4.0.0; python_full_version >= '3.6.1' hyperframe==6.0.1; python_full_version >= '3.6.1' iniconfig==2.0.0; python_version >= '3.7' itsdangerous==2.1.2; python_version >= '3.7' -jinja2==3.1.3; python_version >= '3.7' +jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.9 ldap3==2.9.1 markupsafe==2.1.5; python_version >= '3.7' @@ -31,7 +31,7 @@ msgpack==1.0.7; python_version >= '3.8' packaging==23.2; python_version >= '3.7' passlib==1.7.4 pluggy==1.4.0; python_version >= '3.8' -protobuf==3.18.3; python_version >= '3.5' +protobuf==4.25.8; python_version >= '3.8' psycopg==3.1.18; python_version >= '3.7' publicsuffix2==2.20191221 pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' @@ -49,7 +49,7 @@ ruamel.yaml==0.17.16; python_version >= '3' ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' sortedcontainers==2.4.0 tomli==2.0.1; python_version < '3.11' -tornado==6.4; python_version >= '3.8' +tornado==6.4.2; python_version >= '3.8' typing-extensions==4.9.0; python_version >= '3.8' urwid==2.1.2 werkzeug==2.3.7; python_version >= '3.8' diff --git a/circleci/images/failtester/files/etc/requirements.txt b/circleci/images/failtester/files/etc/requirements.txt index eacce81..9075337 100644 --- a/circleci/images/failtester/files/etc/requirements.txt +++ b/circleci/images/failtester/files/etc/requirements.txt @@ -5,24 +5,24 @@ -i https://pypi.python.org/simple asgiref==3.4.1; python_version >= '3.6' blinker==1.4 -brotli==1.0.9 -certifi==2024.2.2; python_version >= '3.6' +brotli==1.1.0 +certifi==2024.8.30; python_version >= '3.6' cffi==1.16.0; platform_python_implementation != 'PyPy' click==8.0.4; python_version >= '3.6' construct==2.9.45 -cryptography==42.0.3; python_version >= '3.7' +cryptography==46.0.3; python_version >= '3.7' docopt==0.6.2 exceptiongroup==1.2.0; python_version < '3.11' execnet==2.0.2; python_version >= '3.7' filelock==3.13.1; python_version >= '3.8' -flask==2.0.3; python_version >= '3.6' +flask==2.3.2; python_version >= '3.6' h11==0.12.0; python_version >= '3.6' -h2==4.1.0; python_full_version >= '3.6.1' +h2==4.3.0; python_full_version >= '3.6.1' hpack==4.0.0; python_full_version >= '3.6.1' hyperframe==6.0.1; python_full_version >= '3.6.1' iniconfig==2.0.0; python_version >= '3.7' itsdangerous==2.1.2; python_version >= '3.7' -jinja2==3.1.3; python_version >= '3.7' +jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.9 ldap3==2.9.1 markupsafe==2.1.5; python_version >= '3.7' @@ -31,7 +31,7 @@ msgpack==1.0.7; python_version >= '3.8' packaging==23.2; python_version >= '3.7' passlib==1.7.4 pluggy==1.4.0; python_version >= '3.8' -protobuf==3.18.3; python_version >= '3.5' +protobuf==4.25.8; python_version >= '3.8' psycopg==3.1.18; python_version >= '3.7' publicsuffix2==2.20191221 pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' @@ -49,7 +49,7 @@ ruamel.yaml==0.17.16; python_version >= '3' ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' sortedcontainers==2.4.0 tomli==2.0.1; python_version < '3.11' -tornado==6.4; python_version >= '3.8' +tornado==6.4.2; python_version >= '3.8' typing-extensions==4.9.0; python_version >= '3.8' urwid==2.1.2 werkzeug==2.3.7; python_version >= '3.8' diff --git a/circleci/images/pgupgradetester/files/etc/requirements.txt b/circleci/images/pgupgradetester/files/etc/requirements.txt index eacce81..9075337 100644 --- a/circleci/images/pgupgradetester/files/etc/requirements.txt +++ b/circleci/images/pgupgradetester/files/etc/requirements.txt @@ -5,24 +5,24 @@ -i https://pypi.python.org/simple asgiref==3.4.1; python_version >= '3.6' blinker==1.4 -brotli==1.0.9 -certifi==2024.2.2; python_version >= '3.6' +brotli==1.1.0 +certifi==2024.8.30; python_version >= '3.6' cffi==1.16.0; platform_python_implementation != 'PyPy' click==8.0.4; python_version >= '3.6' construct==2.9.45 -cryptography==42.0.3; python_version >= '3.7' +cryptography==46.0.3; python_version >= '3.7' docopt==0.6.2 exceptiongroup==1.2.0; python_version < '3.11' execnet==2.0.2; python_version >= '3.7' filelock==3.13.1; python_version >= '3.8' -flask==2.0.3; python_version >= '3.6' +flask==2.3.2; python_version >= '3.6' h11==0.12.0; python_version >= '3.6' -h2==4.1.0; python_full_version >= '3.6.1' +h2==4.3.0; python_full_version >= '3.6.1' hpack==4.0.0; python_full_version >= '3.6.1' hyperframe==6.0.1; python_full_version >= '3.6.1' iniconfig==2.0.0; python_version >= '3.7' itsdangerous==2.1.2; python_version >= '3.7' -jinja2==3.1.3; python_version >= '3.7' +jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.9 ldap3==2.9.1 markupsafe==2.1.5; python_version >= '3.7' @@ -31,7 +31,7 @@ msgpack==1.0.7; python_version >= '3.8' packaging==23.2; python_version >= '3.7' passlib==1.7.4 pluggy==1.4.0; python_version >= '3.8' -protobuf==3.18.3; python_version >= '3.5' +protobuf==4.25.8; python_version >= '3.8' psycopg==3.1.18; python_version >= '3.7' publicsuffix2==2.20191221 pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' @@ -49,7 +49,7 @@ ruamel.yaml==0.17.16; python_version >= '3' ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' sortedcontainers==2.4.0 tomli==2.0.1; python_version < '3.11' -tornado==6.4; python_version >= '3.8' +tornado==6.4.2; python_version >= '3.8' typing-extensions==4.9.0; python_version >= '3.8' urwid==2.1.2 werkzeug==2.3.7; python_version >= '3.8' diff --git a/circleci/images/stylechecker/files/etc/requirements.txt b/circleci/images/stylechecker/files/etc/requirements.txt index a37c9cb..977c139 100644 --- a/circleci/images/stylechecker/files/etc/requirements.txt +++ b/circleci/images/stylechecker/files/etc/requirements.txt @@ -4,7 +4,7 @@ -i https://pypi.python.org/simple attrs==23.2.0; python_version >= '3.7' -black==24.2.0; python_version >= '3.8' +black==24.10.0; python_version >= '3.8' click==8.0.4; python_version >= '3.6' flake8==7.0.0; python_full_version >= '3.8.1' flake8-bugbear==24.2.6; python_full_version >= '3.8.1' @@ -20,23 +20,23 @@ tomli==2.0.1; python_version < '3.11' typing-extensions==4.9.0; python_version >= '3.8' asgiref==3.4.1; python_version >= '3.6' blinker==1.4 -brotli==1.0.9 -certifi==2024.2.2; python_version >= '3.6' +brotli==1.1.0 +certifi==2024.8.30; python_version >= '3.6' cffi==1.16.0; platform_python_implementation != 'PyPy' construct==2.10.70; python_version >= '3.6' -cryptography==42.0.3; python_version >= '3.7' +cryptography==46.0.3; python_version >= '3.7' docopt==0.6.2 exceptiongroup==1.2.0; python_version < '3.11' execnet==2.0.2; python_version >= '3.7' filelock==3.13.1; python_version >= '3.8' -flask==2.0.3; python_version >= '3.6' -h11==0.12.0; python_version >= '3.6' -h2==4.1.0; python_full_version >= '3.6.1' +flask==2.3.2; python_version >= '3.6' +h11==0.16.0; python_version >= '3.6' +h2==4.3.0; python_full_version >= '3.6.1' hpack==4.0.0; python_full_version >= '3.6.1' hyperframe==6.0.1; python_full_version >= '3.6.1' iniconfig==2.0.0; python_version >= '3.7' itsdangerous==2.1.2; python_version >= '3.7' -jinja2==3.1.3; python_version >= '3.7' +jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.9 ldap3==2.9.1 markupsafe==2.1.5; python_version >= '3.7' @@ -44,7 +44,7 @@ markupsafe==2.1.5; python_version >= '3.7' msgpack==1.0.7; python_version >= '3.8' passlib==1.7.4 pluggy==1.4.0; python_version >= '3.8' -protobuf==3.18.3; python_version >= '3.5' +protobuf==4.25.8; python_version >= '3.8' psycopg==3.1.18; python_version >= '3.7' publicsuffix2==2.20191221 pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' @@ -61,8 +61,8 @@ pyyaml==6.0.1; python_version >= '3.6' ruamel.yaml==0.17.16; python_version >= '3' ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' sortedcontainers==2.4.0 -tornado==6.4; python_version >= '3.8' +tornado==6.4.2; python_version >= '3.8' urwid==2.1.2 -werkzeug==2.3.7; python_version >= '3.8' +werkzeug==3.1.4; python_version >= '3.8' wsproto==1.0.0; python_full_version >= '3.6.1' zstandard==0.15.2; python_version >= '3.5' From 418e3c5a530e75db607bea51117b6a3cdadbd28a Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Wed, 24 Dec 2025 10:40:00 +0000 Subject: [PATCH 02/13] updated requirements based on citus repo vulnerabilities --- .../files/etc/requirements.txt | 94 ++++++++++--------- .../failtester/files/etc/requirements.txt | 94 ++++++++++--------- .../files/etc/requirements.txt | 94 ++++++++++--------- .../stylechecker/files/etc/requirements.txt | 12 +-- 4 files changed, 159 insertions(+), 135 deletions(-) diff --git a/circleci/images/citusupgradetester/files/etc/requirements.txt b/circleci/images/citusupgradetester/files/etc/requirements.txt index 9075337..5d156b8 100644 --- a/circleci/images/citusupgradetester/files/etc/requirements.txt +++ b/circleci/images/citusupgradetester/files/etc/requirements.txt @@ -3,55 +3,63 @@ # need for pipenv/pyenv in this image -i https://pypi.python.org/simple -asgiref==3.4.1; python_version >= '3.6' -blinker==1.4 +aioquic==1.2.0; python_version >= '3.8' +asgiref==3.8.1; python_version >= '3.8' +attrs==25.4.0; python_version >= '3.9' +backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +blinker==1.9.0; python_version >= '3.9' brotli==1.1.0 -certifi==2024.8.30; python_version >= '3.6' -cffi==1.16.0; platform_python_implementation != 'PyPy' -click==8.0.4; python_version >= '3.6' -construct==2.9.45 -cryptography==46.0.3; python_version >= '3.7' +certifi==2025.11.12; python_version >= '3.7' +cffi==2.0.0; python_version >= '3.9' +click==8.3.1; python_version >= '3.10' +construct==2.10.70; python_version >= '3.6' +cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.2.0; python_version < '3.11' -execnet==2.0.2; python_version >= '3.7' -filelock==3.13.1; python_version >= '3.8' -flask==2.3.2; python_version >= '3.6' -h11==0.12.0; python_version >= '3.6' -h2==4.3.0; python_full_version >= '3.6.1' -hpack==4.0.0; python_full_version >= '3.6.1' +exceptiongroup==1.3.1; python_version >= '3.7' +execnet==2.1.2; python_version >= '3.8' +filelock==3.20.1; python_version >= '3.10' +flask==3.1.0; python_version >= '3.9' +h11==0.14.0; python_version >= '3.7' +h2==4.1.0; python_full_version >= '3.6.1' +hpack==4.1.0; python_version >= '3.9' hyperframe==6.0.1; python_full_version >= '3.6.1' -iniconfig==2.0.0; python_version >= '3.7' -itsdangerous==2.1.2; python_version >= '3.7' +iniconfig==2.3.0; python_version >= '3.10' +itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.9 +kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 -markupsafe==2.1.5; python_version >= '3.7' --e git+https://github.com/citusdata/mitmproxy.git@2fd18ef051b987925a36337ab1d61aa674353b44#egg=mitmproxy -msgpack==1.0.7; python_version >= '3.8' -packaging==23.2; python_version >= '3.7' +markupsafe==3.0.3; python_version >= '3.9' +mitmproxy==11.0.2; python_version >= '3.10' +mitmproxy-rs==0.10.7; python_version >= '3.10' +msgpack==1.1.0; python_version >= '3.8' +packaging==25.0; python_version >= '3.8' passlib==1.7.4 -pluggy==1.4.0; python_version >= '3.8' -protobuf==4.25.8; python_version >= '3.8' -psycopg==3.1.18; python_version >= '3.7' +pluggy==1.6.0; python_version >= '3.9' +psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 -pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' -pycparser==2.21 -pyopenssl==24.0.0; python_version >= '3.7' -pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' -pyperclip==1.8.2 -pytest==8.0.0; python_version >= '3.8' -pytest-asyncio==0.23.5; python_version >= '3.8' -pytest-repeat==0.9.3; python_version >= '3.7' -pytest-timeout==2.2.0; python_version >= '3.7' -pytest-xdist==3.5.0; python_version >= '3.7' -pyyaml==6.0.1; python_version >= '3.6' -ruamel.yaml==0.17.16; python_version >= '3' -ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' +pyasn1==0.6.1; python_version >= '3.8' +pyasn1-modules==0.4.2; python_version >= '3.8' +pycparser==2.23; python_version >= '3.8' +pygments==2.19.2; python_version >= '3.8' +pylsqpack==0.3.23; python_version >= '3.10' +pyopenssl==24.3.0; python_version >= '3.7' +pyparsing==3.2.0; python_version >= '3.9' +pyperclip==1.9.0 +pytest==8.4.2; python_version >= '3.9' +pytest-asyncio==1.1.1; python_version >= '3.9' +pytest-repeat==0.9.4; python_version >= '3.9' +pytest-timeout==2.4.0; python_version >= '3.7' +pytest-xdist==3.8.0; python_version >= '3.9' +pyyaml==6.0.3; python_version >= '3.8' +ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml.clib==0.2.15; python_version >= '3.9' +service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.0.1; python_version < '3.11' +tomli==2.3.0; python_version >= '3.8' tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.9.0; python_version >= '3.8' -urwid==2.1.2 -werkzeug==2.3.7; python_version >= '3.8' -wsproto==1.0.0; python_full_version >= '3.6.1' -zstandard==0.15.2; python_version >= '3.5' +typing-extensions==4.11.0; python_version >= '3.8' +urwid==2.6.16; python_version >= '3.8' +wcwidth==0.2.14; python_version >= '3.6' +werkzeug==3.1.0; python_version >= '3.9' +wsproto==1.2.0; python_full_version >= '3.7.0' +zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file diff --git a/circleci/images/failtester/files/etc/requirements.txt b/circleci/images/failtester/files/etc/requirements.txt index 9075337..5d156b8 100644 --- a/circleci/images/failtester/files/etc/requirements.txt +++ b/circleci/images/failtester/files/etc/requirements.txt @@ -3,55 +3,63 @@ # need for pipenv/pyenv in this image -i https://pypi.python.org/simple -asgiref==3.4.1; python_version >= '3.6' -blinker==1.4 +aioquic==1.2.0; python_version >= '3.8' +asgiref==3.8.1; python_version >= '3.8' +attrs==25.4.0; python_version >= '3.9' +backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +blinker==1.9.0; python_version >= '3.9' brotli==1.1.0 -certifi==2024.8.30; python_version >= '3.6' -cffi==1.16.0; platform_python_implementation != 'PyPy' -click==8.0.4; python_version >= '3.6' -construct==2.9.45 -cryptography==46.0.3; python_version >= '3.7' +certifi==2025.11.12; python_version >= '3.7' +cffi==2.0.0; python_version >= '3.9' +click==8.3.1; python_version >= '3.10' +construct==2.10.70; python_version >= '3.6' +cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.2.0; python_version < '3.11' -execnet==2.0.2; python_version >= '3.7' -filelock==3.13.1; python_version >= '3.8' -flask==2.3.2; python_version >= '3.6' -h11==0.12.0; python_version >= '3.6' -h2==4.3.0; python_full_version >= '3.6.1' -hpack==4.0.0; python_full_version >= '3.6.1' +exceptiongroup==1.3.1; python_version >= '3.7' +execnet==2.1.2; python_version >= '3.8' +filelock==3.20.1; python_version >= '3.10' +flask==3.1.0; python_version >= '3.9' +h11==0.14.0; python_version >= '3.7' +h2==4.1.0; python_full_version >= '3.6.1' +hpack==4.1.0; python_version >= '3.9' hyperframe==6.0.1; python_full_version >= '3.6.1' -iniconfig==2.0.0; python_version >= '3.7' -itsdangerous==2.1.2; python_version >= '3.7' +iniconfig==2.3.0; python_version >= '3.10' +itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.9 +kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 -markupsafe==2.1.5; python_version >= '3.7' --e git+https://github.com/citusdata/mitmproxy.git@2fd18ef051b987925a36337ab1d61aa674353b44#egg=mitmproxy -msgpack==1.0.7; python_version >= '3.8' -packaging==23.2; python_version >= '3.7' +markupsafe==3.0.3; python_version >= '3.9' +mitmproxy==11.0.2; python_version >= '3.10' +mitmproxy-rs==0.10.7; python_version >= '3.10' +msgpack==1.1.0; python_version >= '3.8' +packaging==25.0; python_version >= '3.8' passlib==1.7.4 -pluggy==1.4.0; python_version >= '3.8' -protobuf==4.25.8; python_version >= '3.8' -psycopg==3.1.18; python_version >= '3.7' +pluggy==1.6.0; python_version >= '3.9' +psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 -pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' -pycparser==2.21 -pyopenssl==24.0.0; python_version >= '3.7' -pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' -pyperclip==1.8.2 -pytest==8.0.0; python_version >= '3.8' -pytest-asyncio==0.23.5; python_version >= '3.8' -pytest-repeat==0.9.3; python_version >= '3.7' -pytest-timeout==2.2.0; python_version >= '3.7' -pytest-xdist==3.5.0; python_version >= '3.7' -pyyaml==6.0.1; python_version >= '3.6' -ruamel.yaml==0.17.16; python_version >= '3' -ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' +pyasn1==0.6.1; python_version >= '3.8' +pyasn1-modules==0.4.2; python_version >= '3.8' +pycparser==2.23; python_version >= '3.8' +pygments==2.19.2; python_version >= '3.8' +pylsqpack==0.3.23; python_version >= '3.10' +pyopenssl==24.3.0; python_version >= '3.7' +pyparsing==3.2.0; python_version >= '3.9' +pyperclip==1.9.0 +pytest==8.4.2; python_version >= '3.9' +pytest-asyncio==1.1.1; python_version >= '3.9' +pytest-repeat==0.9.4; python_version >= '3.9' +pytest-timeout==2.4.0; python_version >= '3.7' +pytest-xdist==3.8.0; python_version >= '3.9' +pyyaml==6.0.3; python_version >= '3.8' +ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml.clib==0.2.15; python_version >= '3.9' +service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.0.1; python_version < '3.11' +tomli==2.3.0; python_version >= '3.8' tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.9.0; python_version >= '3.8' -urwid==2.1.2 -werkzeug==2.3.7; python_version >= '3.8' -wsproto==1.0.0; python_full_version >= '3.6.1' -zstandard==0.15.2; python_version >= '3.5' +typing-extensions==4.11.0; python_version >= '3.8' +urwid==2.6.16; python_version >= '3.8' +wcwidth==0.2.14; python_version >= '3.6' +werkzeug==3.1.0; python_version >= '3.9' +wsproto==1.2.0; python_full_version >= '3.7.0' +zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file diff --git a/circleci/images/pgupgradetester/files/etc/requirements.txt b/circleci/images/pgupgradetester/files/etc/requirements.txt index 9075337..5d156b8 100644 --- a/circleci/images/pgupgradetester/files/etc/requirements.txt +++ b/circleci/images/pgupgradetester/files/etc/requirements.txt @@ -3,55 +3,63 @@ # need for pipenv/pyenv in this image -i https://pypi.python.org/simple -asgiref==3.4.1; python_version >= '3.6' -blinker==1.4 +aioquic==1.2.0; python_version >= '3.8' +asgiref==3.8.1; python_version >= '3.8' +attrs==25.4.0; python_version >= '3.9' +backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +blinker==1.9.0; python_version >= '3.9' brotli==1.1.0 -certifi==2024.8.30; python_version >= '3.6' -cffi==1.16.0; platform_python_implementation != 'PyPy' -click==8.0.4; python_version >= '3.6' -construct==2.9.45 -cryptography==46.0.3; python_version >= '3.7' +certifi==2025.11.12; python_version >= '3.7' +cffi==2.0.0; python_version >= '3.9' +click==8.3.1; python_version >= '3.10' +construct==2.10.70; python_version >= '3.6' +cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.2.0; python_version < '3.11' -execnet==2.0.2; python_version >= '3.7' -filelock==3.13.1; python_version >= '3.8' -flask==2.3.2; python_version >= '3.6' -h11==0.12.0; python_version >= '3.6' -h2==4.3.0; python_full_version >= '3.6.1' -hpack==4.0.0; python_full_version >= '3.6.1' +exceptiongroup==1.3.1; python_version >= '3.7' +execnet==2.1.2; python_version >= '3.8' +filelock==3.20.1; python_version >= '3.10' +flask==3.1.0; python_version >= '3.9' +h11==0.14.0; python_version >= '3.7' +h2==4.1.0; python_full_version >= '3.6.1' +hpack==4.1.0; python_version >= '3.9' hyperframe==6.0.1; python_full_version >= '3.6.1' -iniconfig==2.0.0; python_version >= '3.7' -itsdangerous==2.1.2; python_version >= '3.7' +iniconfig==2.3.0; python_version >= '3.10' +itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.9 +kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 -markupsafe==2.1.5; python_version >= '3.7' --e git+https://github.com/citusdata/mitmproxy.git@2fd18ef051b987925a36337ab1d61aa674353b44#egg=mitmproxy -msgpack==1.0.7; python_version >= '3.8' -packaging==23.2; python_version >= '3.7' +markupsafe==3.0.3; python_version >= '3.9' +mitmproxy==11.0.2; python_version >= '3.10' +mitmproxy-rs==0.10.7; python_version >= '3.10' +msgpack==1.1.0; python_version >= '3.8' +packaging==25.0; python_version >= '3.8' passlib==1.7.4 -pluggy==1.4.0; python_version >= '3.8' -protobuf==4.25.8; python_version >= '3.8' -psycopg==3.1.18; python_version >= '3.7' +pluggy==1.6.0; python_version >= '3.9' +psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 -pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' -pycparser==2.21 -pyopenssl==24.0.0; python_version >= '3.7' -pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' -pyperclip==1.8.2 -pytest==8.0.0; python_version >= '3.8' -pytest-asyncio==0.23.5; python_version >= '3.8' -pytest-repeat==0.9.3; python_version >= '3.7' -pytest-timeout==2.2.0; python_version >= '3.7' -pytest-xdist==3.5.0; python_version >= '3.7' -pyyaml==6.0.1; python_version >= '3.6' -ruamel.yaml==0.17.16; python_version >= '3' -ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' +pyasn1==0.6.1; python_version >= '3.8' +pyasn1-modules==0.4.2; python_version >= '3.8' +pycparser==2.23; python_version >= '3.8' +pygments==2.19.2; python_version >= '3.8' +pylsqpack==0.3.23; python_version >= '3.10' +pyopenssl==24.3.0; python_version >= '3.7' +pyparsing==3.2.0; python_version >= '3.9' +pyperclip==1.9.0 +pytest==8.4.2; python_version >= '3.9' +pytest-asyncio==1.1.1; python_version >= '3.9' +pytest-repeat==0.9.4; python_version >= '3.9' +pytest-timeout==2.4.0; python_version >= '3.7' +pytest-xdist==3.8.0; python_version >= '3.9' +pyyaml==6.0.3; python_version >= '3.8' +ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml.clib==0.2.15; python_version >= '3.9' +service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.0.1; python_version < '3.11' +tomli==2.3.0; python_version >= '3.8' tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.9.0; python_version >= '3.8' -urwid==2.1.2 -werkzeug==2.3.7; python_version >= '3.8' -wsproto==1.0.0; python_full_version >= '3.6.1' -zstandard==0.15.2; python_version >= '3.5' +typing-extensions==4.11.0; python_version >= '3.8' +urwid==2.6.16; python_version >= '3.8' +wcwidth==0.2.14; python_version >= '3.6' +werkzeug==3.1.0; python_version >= '3.9' +wsproto==1.2.0; python_full_version >= '3.7.0' +zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file diff --git a/circleci/images/stylechecker/files/etc/requirements.txt b/circleci/images/stylechecker/files/etc/requirements.txt index 977c139..051670d 100644 --- a/circleci/images/stylechecker/files/etc/requirements.txt +++ b/circleci/images/stylechecker/files/etc/requirements.txt @@ -5,7 +5,7 @@ -i https://pypi.python.org/simple attrs==23.2.0; python_version >= '3.7' black==24.10.0; python_version >= '3.8' -click==8.0.4; python_version >= '3.6' +click==8.1.7; python_version >= '3.6' flake8==7.0.0; python_full_version >= '3.8.1' flake8-bugbear==24.2.6; python_full_version >= '3.8.1' isort==5.13.2; python_full_version >= '3.8.0' @@ -17,12 +17,12 @@ platformdirs==4.2.0; python_version >= '3.8' pycodestyle==2.11.1; python_version >= '3.8' pyflakes==3.2.0; python_version >= '3.8' tomli==2.0.1; python_version < '3.11' -typing-extensions==4.9.0; python_version >= '3.8' +typing-extensions==4.13.2; python_version >= '3.8' asgiref==3.4.1; python_version >= '3.6' -blinker==1.4 +blinker==1.8.2 brotli==1.1.0 certifi==2024.8.30; python_version >= '3.6' -cffi==1.16.0; platform_python_implementation != 'PyPy' +cffi==2.0.0; platform_python_implementation != 'PyPy' construct==2.10.70; python_version >= '3.6' cryptography==46.0.3; python_version >= '3.7' docopt==0.6.2 @@ -32,8 +32,8 @@ filelock==3.13.1; python_version >= '3.8' flask==2.3.2; python_version >= '3.6' h11==0.16.0; python_version >= '3.6' h2==4.3.0; python_full_version >= '3.6.1' -hpack==4.0.0; python_full_version >= '3.6.1' -hyperframe==6.0.1; python_full_version >= '3.6.1' +hpack==4.1.0; python_full_version >= '3.6.1' +hyperframe==6.1.0; python_full_version >= '3.6.1' iniconfig==2.0.0; python_version >= '3.7' itsdangerous==2.1.2; python_version >= '3.7' jinja2==3.1.6; python_version >= '3.7' From 3a10a546a4b58962714f71c182ef40ae1e6b135a Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Wed, 24 Dec 2025 11:13:12 +0000 Subject: [PATCH 03/13] update to min python version for current dependency set --- circleci/images/citusupgradetester/Dockerfile | 2 +- circleci/images/failtester/Dockerfile | 2 +- circleci/images/pgupgradetester/Dockerfile | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/circleci/images/citusupgradetester/Dockerfile b/circleci/images/citusupgradetester/Dockerfile index 7b96584..e318675 100644 --- a/circleci/images/citusupgradetester/Dockerfile +++ b/circleci/images/citusupgradetester/Dockerfile @@ -1,5 +1,5 @@ # we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.9.7-slim-bullseye AS base +FROM python:3.10-slim-bullseye AS base # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci diff --git a/circleci/images/failtester/Dockerfile b/circleci/images/failtester/Dockerfile index 67cd0ab..7bb9266 100644 --- a/circleci/images/failtester/Dockerfile +++ b/circleci/images/failtester/Dockerfile @@ -1,5 +1,5 @@ # we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.9.7-slim-bullseye +FROM python:3.10-slim-bullseye # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci diff --git a/circleci/images/pgupgradetester/Dockerfile b/circleci/images/pgupgradetester/Dockerfile index 28ec831..8367dea 100644 --- a/circleci/images/pgupgradetester/Dockerfile +++ b/circleci/images/pgupgradetester/Dockerfile @@ -1,5 +1,5 @@ # we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.9.7-slim-bullseye +FROM python:3.10-slim-bullseye # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci From aaac2b214cb18759d13e2fd8e63fd29c0e857855 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Wed, 24 Dec 2025 12:32:43 +0000 Subject: [PATCH 04/13] updated requirements and citus PR reference --- .../files/etc/requirements.txt | 2 +- .../failtester/files/etc/requirements.txt | 2 +- .../files/etc/requirements.txt | 2 +- .../stylechecker/files/etc/requirements.txt | 113 ++++++++++-------- 4 files changed, 63 insertions(+), 56 deletions(-) diff --git a/circleci/images/citusupgradetester/files/etc/requirements.txt b/circleci/images/citusupgradetester/files/etc/requirements.txt index 5d156b8..735226a 100644 --- a/circleci/images/citusupgradetester/files/etc/requirements.txt +++ b/circleci/images/citusupgradetester/files/etc/requirements.txt @@ -1,4 +1,4 @@ -# generated from Citus's Pipfile.lock (in src/test/regress) as of #7491 +# generated from Citus's Pipfile.lock (in src/test/regress) as of #8422 # using `pipenv requirements > requirements.txt`, so as to avoid the # need for pipenv/pyenv in this image diff --git a/circleci/images/failtester/files/etc/requirements.txt b/circleci/images/failtester/files/etc/requirements.txt index 5d156b8..735226a 100644 --- a/circleci/images/failtester/files/etc/requirements.txt +++ b/circleci/images/failtester/files/etc/requirements.txt @@ -1,4 +1,4 @@ -# generated from Citus's Pipfile.lock (in src/test/regress) as of #7491 +# generated from Citus's Pipfile.lock (in src/test/regress) as of #8422 # using `pipenv requirements > requirements.txt`, so as to avoid the # need for pipenv/pyenv in this image diff --git a/circleci/images/pgupgradetester/files/etc/requirements.txt b/circleci/images/pgupgradetester/files/etc/requirements.txt index 5d156b8..735226a 100644 --- a/circleci/images/pgupgradetester/files/etc/requirements.txt +++ b/circleci/images/pgupgradetester/files/etc/requirements.txt @@ -1,4 +1,4 @@ -# generated from Citus's Pipfile.lock (in src/test/regress) as of #7491 +# generated from Citus's Pipfile.lock (in src/test/regress) as of #8422 # using `pipenv requirements > requirements.txt`, so as to avoid the # need for pipenv/pyenv in this image diff --git a/circleci/images/stylechecker/files/etc/requirements.txt b/circleci/images/stylechecker/files/etc/requirements.txt index 051670d..61ebf42 100644 --- a/circleci/images/stylechecker/files/etc/requirements.txt +++ b/circleci/images/stylechecker/files/etc/requirements.txt @@ -1,68 +1,75 @@ -# generated from Citus's Pipfile.lock (in src/test/regress) as of #7491 +# generated from Citus's Pipfile.lock (in src/test/regress) as of #8422 # using `pipenv requirements --dev > requirements.txt`, so as to avoid the # need for pipenv/pyenv in this image -i https://pypi.python.org/simple -attrs==23.2.0; python_version >= '3.7' -black==24.10.0; python_version >= '3.8' -click==8.1.7; python_version >= '3.6' -flake8==7.0.0; python_full_version >= '3.8.1' -flake8-bugbear==24.2.6; python_full_version >= '3.8.1' -isort==5.13.2; python_full_version >= '3.8.0' +attrs==25.4.0; python_version >= '3.9' +black==24.10.0; python_version >= '3.9' +click==8.3.1; python_version >= '3.10' +flake8==7.3.0; python_version >= '3.9' +flake8-bugbear==25.11.29; python_version >= '3.10' +isort==7.0.0; python_full_version >= '3.10.0' mccabe==0.7.0; python_version >= '3.6' -mypy-extensions==1.0.0; python_version >= '3.5' -packaging==23.2; python_version >= '3.7' +mypy-extensions==1.1.0; python_version >= '3.8' +packaging==25.0; python_version >= '3.8' pathspec==0.12.1; python_version >= '3.8' -platformdirs==4.2.0; python_version >= '3.8' -pycodestyle==2.11.1; python_version >= '3.8' -pyflakes==3.2.0; python_version >= '3.8' -tomli==2.0.1; python_version < '3.11' -typing-extensions==4.13.2; python_version >= '3.8' -asgiref==3.4.1; python_version >= '3.6' -blinker==1.8.2 +platformdirs==4.5.1; python_version >= '3.10' +pycodestyle==2.14.0; python_version >= '3.9' +pyflakes==3.4.0; python_version >= '3.9' +tomli==2.3.0; python_version >= '3.8' +typing-extensions==4.11.0; python_version >= '3.8' +aioquic==1.2.0; python_version >= '3.8' +asgiref==3.8.1; python_version >= '3.8' +backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +blinker==1.9.0; python_version >= '3.9' brotli==1.1.0 -certifi==2024.8.30; python_version >= '3.6' -cffi==2.0.0; platform_python_implementation != 'PyPy' +certifi==2025.11.12; python_version >= '3.7' +cffi==2.0.0; python_version >= '3.9' construct==2.10.70; python_version >= '3.6' -cryptography==46.0.3; python_version >= '3.7' +cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.2.0; python_version < '3.11' -execnet==2.0.2; python_version >= '3.7' -filelock==3.13.1; python_version >= '3.8' -flask==2.3.2; python_version >= '3.6' -h11==0.16.0; python_version >= '3.6' -h2==4.3.0; python_full_version >= '3.6.1' -hpack==4.1.0; python_full_version >= '3.6.1' -hyperframe==6.1.0; python_full_version >= '3.6.1' -iniconfig==2.0.0; python_version >= '3.7' -itsdangerous==2.1.2; python_version >= '3.7' +exceptiongroup==1.3.1; python_version >= '3.7' +execnet==2.1.2; python_version >= '3.8' +filelock==3.20.1; python_version >= '3.10' +flask==3.1.0; python_version >= '3.9' +h11==0.14.0; python_version >= '3.7' +h2==4.1.0; python_full_version >= '3.6.1' +hpack==4.1.0; python_version >= '3.9' +hyperframe==6.0.1; python_full_version >= '3.6.1' +iniconfig==2.3.0; python_version >= '3.10' +itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.9 +kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 -markupsafe==2.1.5; python_version >= '3.7' --e git+https://github.com/citusdata/mitmproxy.git@2fd18ef051b987925a36337ab1d61aa674353b44#egg=mitmproxy -msgpack==1.0.7; python_version >= '3.8' +markupsafe==3.0.3; python_version >= '3.9' +mitmproxy==11.0.2; python_version >= '3.10' +mitmproxy-rs==0.10.7; python_version >= '3.10' +msgpack==1.1.0; python_version >= '3.8' passlib==1.7.4 -pluggy==1.4.0; python_version >= '3.8' -protobuf==4.25.8; python_version >= '3.8' -psycopg==3.1.18; python_version >= '3.7' +pluggy==1.6.0; python_version >= '3.9' +psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 -pyasn1==0.5.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5' -pycparser==2.21 -pyopenssl==24.0.0; python_version >= '3.7' -pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3' -pyperclip==1.8.2 -pytest==8.0.0; python_version >= '3.8' -pytest-asyncio==0.23.5; python_version >= '3.8' -pytest-repeat==0.9.3; python_version >= '3.7' -pytest-timeout==2.2.0; python_version >= '3.7' -pytest-xdist==3.5.0; python_version >= '3.7' -pyyaml==6.0.1; python_version >= '3.6' -ruamel.yaml==0.17.16; python_version >= '3' -ruamel.yaml.clib==0.2.8; python_version < '3.10' and platform_python_implementation == 'CPython' +pyasn1==0.6.1; python_version >= '3.8' +pyasn1-modules==0.4.2; python_version >= '3.8' +pycparser==2.23; python_version >= '3.8' +pygments==2.19.2; python_version >= '3.8' +pylsqpack==0.3.23; python_version >= '3.10' +pyopenssl==24.3.0; python_version >= '3.7' +pyparsing==3.2.0; python_version >= '3.9' +pyperclip==1.9.0 +pytest==8.4.2; python_version >= '3.9' +pytest-asyncio==1.1.1; python_version >= '3.9' +pytest-repeat==0.9.4; python_version >= '3.9' +pytest-timeout==2.4.0; python_version >= '3.7' +pytest-xdist==3.8.0; python_version >= '3.9' +pyyaml==6.0.3; python_version >= '3.8' +ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml.clib==0.2.15; python_version >= '3.9' +service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 tornado==6.4.2; python_version >= '3.8' -urwid==2.1.2 -werkzeug==3.1.4; python_version >= '3.8' -wsproto==1.0.0; python_full_version >= '3.6.1' -zstandard==0.15.2; python_version >= '3.5' +urwid==2.6.16; python_version >= '3.8' +wcwidth==0.2.14; python_version >= '3.6' +werkzeug==3.1.0; python_version >= '3.9' +wsproto==1.2.0; python_full_version >= '3.7.0' +zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file From 2e578a5d29d128c0e501574cc93b66b0127d9482 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Wed, 24 Dec 2025 14:44:55 +0000 Subject: [PATCH 05/13] added open-ssl dependency --- circleci/images/stylechecker/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/circleci/images/stylechecker/Dockerfile b/circleci/images/stylechecker/Dockerfile index e6db9c8..acfa09c 100644 --- a/circleci/images/stylechecker/Dockerfile +++ b/circleci/images/stylechecker/Dockerfile @@ -16,6 +16,7 @@ apk add --no-cache --virtual installdeps \ gcc \ gzip \ musl-dev \ + openssl-dev \ py3-pip \ python3-dev \ tar \ From 1496145853bfe343425e9fb010c5a82bd28e058a Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Wed, 24 Dec 2025 15:07:44 +0000 Subject: [PATCH 06/13] stylechecker: fetch tarballs via codeload endpoint --- circleci/images/stylechecker/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/circleci/images/stylechecker/Dockerfile b/circleci/images/stylechecker/Dockerfile index acfa09c..5dcdeaa 100644 --- a/circleci/images/stylechecker/Dockerfile +++ b/circleci/images/stylechecker/Dockerfile @@ -31,13 +31,13 @@ apk add --no-cache \ python3 \ py3-packaging \ -curl -L "https://github.com/citusdata/tools/archive/v${TOOLS_VERSION}.tar.gz" | tar xz +curl -fsSL "https://codeload.github.com/citusdata/tools/tar.gz/v${TOOLS_VERSION}" | tar xz cd "tools-${TOOLS_VERSION}" make uncrustify/.install cd .. rm -rf "v${TOOLS_VERSION}.tar.gz" -curl -L "https://github.com/uncrustify/uncrustify/archive/uncrustify-0.82.0.tar.gz" | tar xz +curl -fsSL "https://codeload.github.com/uncrustify/uncrustify/tar.gz/uncrustify-0.82.0" | tar xz cd uncrustify-uncrustify-0.82.0/ mkdir build cd build From 02b64c9444110f0dceb6bd225235ff8e7082a9f9 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Thu, 25 Dec 2025 10:35:06 +0000 Subject: [PATCH 07/13] testing with updated mitmproxy --- .../files/etc/requirements.txt | 46 +++++++++---------- .../failtester/files/etc/requirements.txt | 46 +++++++++---------- .../files/etc/requirements.txt | 46 +++++++++---------- 3 files changed, 69 insertions(+), 69 deletions(-) diff --git a/circleci/images/citusupgradetester/files/etc/requirements.txt b/circleci/images/citusupgradetester/files/etc/requirements.txt index 735226a..fa655a6 100644 --- a/circleci/images/citusupgradetester/files/etc/requirements.txt +++ b/circleci/images/citusupgradetester/files/etc/requirements.txt @@ -4,36 +4,37 @@ -i https://pypi.python.org/simple aioquic==1.2.0; python_version >= '3.8' -asgiref==3.8.1; python_version >= '3.8' +argon2-cffi==25.1.0; python_version >= '3.8' +argon2-cffi-bindings==25.1.0; python_version >= '3.9' +asgiref==3.10.0; python_version >= '3.9' attrs==25.4.0; python_version >= '3.9' -backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' -brotli==1.1.0 +brotli==1.2.0 certifi==2025.11.12; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.3.1; python_version >= '3.7' execnet==2.1.2; python_version >= '3.8' filelock==3.20.1; python_version >= '3.10' -flask==3.1.0; python_version >= '3.9' -h11==0.14.0; python_version >= '3.7' -h2==4.1.0; python_full_version >= '3.6.1' +flask==3.1.2; python_version >= '3.9' +h11==0.16.0; python_version >= '3.8' +h2==4.3.0; python_version >= '3.9' hpack==4.1.0; python_version >= '3.9' -hyperframe==6.0.1; python_full_version >= '3.6.1' +hyperframe==6.1.0; python_version >= '3.9' iniconfig==2.3.0; python_version >= '3.10' itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy==11.0.2; python_version >= '3.10' -mitmproxy-rs==0.10.7; python_version >= '3.10' -msgpack==1.1.0; python_version >= '3.8' +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy-linux==0.12.8; python_version >= '3.12' +mitmproxy-rs==0.12.8; python_version >= '3.12' +msgpack==1.1.2; python_version >= '3.9' packaging==25.0; python_version >= '3.8' -passlib==1.7.4 pluggy==1.6.0; python_version >= '3.9' psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 @@ -42,24 +43,23 @@ pyasn1-modules==0.4.2; python_version >= '3.8' pycparser==2.23; python_version >= '3.8' pygments==2.19.2; python_version >= '3.8' pylsqpack==0.3.23; python_version >= '3.10' -pyopenssl==24.3.0; python_version >= '3.7' -pyparsing==3.2.0; python_version >= '3.9' +pyopenssl==25.1.0; python_version >= '3.7' +pyparsing==3.2.5; python_version >= '3.9' pyperclip==1.9.0 -pytest==8.4.2; python_version >= '3.9' -pytest-asyncio==1.1.1; python_version >= '3.9' +pytest==9.0.2; python_version >= '3.10' +pytest-asyncio==1.3.0; python_version >= '3.10' pytest-repeat==0.9.4; python_version >= '3.9' pytest-timeout==2.4.0; python_version >= '3.7' pytest-xdist==3.8.0; python_version >= '3.9' pyyaml==6.0.3; python_version >= '3.8' -ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml==0.18.16; python_version >= '3.8' ruamel.yaml.clib==0.2.15; python_version >= '3.9' service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.3.0; python_version >= '3.8' -tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.11.0; python_version >= '3.8' -urwid==2.6.16; python_version >= '3.8' +tornado==6.5.2; python_version >= '3.9' +typing-extensions==4.14.0; python_version >= '3.9' +urwid==3.0.3; python_full_version >= '3.9.0' wcwidth==0.2.14; python_version >= '3.6' werkzeug==3.1.0; python_version >= '3.9' wsproto==1.2.0; python_full_version >= '3.7.0' -zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file +zstandard==0.25.0; python_version >= '3.9' \ No newline at end of file diff --git a/circleci/images/failtester/files/etc/requirements.txt b/circleci/images/failtester/files/etc/requirements.txt index 735226a..fa655a6 100644 --- a/circleci/images/failtester/files/etc/requirements.txt +++ b/circleci/images/failtester/files/etc/requirements.txt @@ -4,36 +4,37 @@ -i https://pypi.python.org/simple aioquic==1.2.0; python_version >= '3.8' -asgiref==3.8.1; python_version >= '3.8' +argon2-cffi==25.1.0; python_version >= '3.8' +argon2-cffi-bindings==25.1.0; python_version >= '3.9' +asgiref==3.10.0; python_version >= '3.9' attrs==25.4.0; python_version >= '3.9' -backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' -brotli==1.1.0 +brotli==1.2.0 certifi==2025.11.12; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.3.1; python_version >= '3.7' execnet==2.1.2; python_version >= '3.8' filelock==3.20.1; python_version >= '3.10' -flask==3.1.0; python_version >= '3.9' -h11==0.14.0; python_version >= '3.7' -h2==4.1.0; python_full_version >= '3.6.1' +flask==3.1.2; python_version >= '3.9' +h11==0.16.0; python_version >= '3.8' +h2==4.3.0; python_version >= '3.9' hpack==4.1.0; python_version >= '3.9' -hyperframe==6.0.1; python_full_version >= '3.6.1' +hyperframe==6.1.0; python_version >= '3.9' iniconfig==2.3.0; python_version >= '3.10' itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy==11.0.2; python_version >= '3.10' -mitmproxy-rs==0.10.7; python_version >= '3.10' -msgpack==1.1.0; python_version >= '3.8' +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy-linux==0.12.8; python_version >= '3.12' +mitmproxy-rs==0.12.8; python_version >= '3.12' +msgpack==1.1.2; python_version >= '3.9' packaging==25.0; python_version >= '3.8' -passlib==1.7.4 pluggy==1.6.0; python_version >= '3.9' psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 @@ -42,24 +43,23 @@ pyasn1-modules==0.4.2; python_version >= '3.8' pycparser==2.23; python_version >= '3.8' pygments==2.19.2; python_version >= '3.8' pylsqpack==0.3.23; python_version >= '3.10' -pyopenssl==24.3.0; python_version >= '3.7' -pyparsing==3.2.0; python_version >= '3.9' +pyopenssl==25.1.0; python_version >= '3.7' +pyparsing==3.2.5; python_version >= '3.9' pyperclip==1.9.0 -pytest==8.4.2; python_version >= '3.9' -pytest-asyncio==1.1.1; python_version >= '3.9' +pytest==9.0.2; python_version >= '3.10' +pytest-asyncio==1.3.0; python_version >= '3.10' pytest-repeat==0.9.4; python_version >= '3.9' pytest-timeout==2.4.0; python_version >= '3.7' pytest-xdist==3.8.0; python_version >= '3.9' pyyaml==6.0.3; python_version >= '3.8' -ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml==0.18.16; python_version >= '3.8' ruamel.yaml.clib==0.2.15; python_version >= '3.9' service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.3.0; python_version >= '3.8' -tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.11.0; python_version >= '3.8' -urwid==2.6.16; python_version >= '3.8' +tornado==6.5.2; python_version >= '3.9' +typing-extensions==4.14.0; python_version >= '3.9' +urwid==3.0.3; python_full_version >= '3.9.0' wcwidth==0.2.14; python_version >= '3.6' werkzeug==3.1.0; python_version >= '3.9' wsproto==1.2.0; python_full_version >= '3.7.0' -zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file +zstandard==0.25.0; python_version >= '3.9' \ No newline at end of file diff --git a/circleci/images/pgupgradetester/files/etc/requirements.txt b/circleci/images/pgupgradetester/files/etc/requirements.txt index 735226a..fa655a6 100644 --- a/circleci/images/pgupgradetester/files/etc/requirements.txt +++ b/circleci/images/pgupgradetester/files/etc/requirements.txt @@ -4,36 +4,37 @@ -i https://pypi.python.org/simple aioquic==1.2.0; python_version >= '3.8' -asgiref==3.8.1; python_version >= '3.8' +argon2-cffi==25.1.0; python_version >= '3.8' +argon2-cffi-bindings==25.1.0; python_version >= '3.9' +asgiref==3.10.0; python_version >= '3.9' attrs==25.4.0; python_version >= '3.9' -backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' -brotli==1.1.0 +brotli==1.2.0 certifi==2025.11.12; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.3.1; python_version >= '3.7' execnet==2.1.2; python_version >= '3.8' filelock==3.20.1; python_version >= '3.10' -flask==3.1.0; python_version >= '3.9' -h11==0.14.0; python_version >= '3.7' -h2==4.1.0; python_full_version >= '3.6.1' +flask==3.1.2; python_version >= '3.9' +h11==0.16.0; python_version >= '3.8' +h2==4.3.0; python_version >= '3.9' hpack==4.1.0; python_version >= '3.9' -hyperframe==6.0.1; python_full_version >= '3.6.1' +hyperframe==6.1.0; python_version >= '3.9' iniconfig==2.3.0; python_version >= '3.10' itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy==11.0.2; python_version >= '3.10' -mitmproxy-rs==0.10.7; python_version >= '3.10' -msgpack==1.1.0; python_version >= '3.8' +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy-linux==0.12.8; python_version >= '3.12' +mitmproxy-rs==0.12.8; python_version >= '3.12' +msgpack==1.1.2; python_version >= '3.9' packaging==25.0; python_version >= '3.8' -passlib==1.7.4 pluggy==1.6.0; python_version >= '3.9' psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 @@ -42,24 +43,23 @@ pyasn1-modules==0.4.2; python_version >= '3.8' pycparser==2.23; python_version >= '3.8' pygments==2.19.2; python_version >= '3.8' pylsqpack==0.3.23; python_version >= '3.10' -pyopenssl==24.3.0; python_version >= '3.7' -pyparsing==3.2.0; python_version >= '3.9' +pyopenssl==25.1.0; python_version >= '3.7' +pyparsing==3.2.5; python_version >= '3.9' pyperclip==1.9.0 -pytest==8.4.2; python_version >= '3.9' -pytest-asyncio==1.1.1; python_version >= '3.9' +pytest==9.0.2; python_version >= '3.10' +pytest-asyncio==1.3.0; python_version >= '3.10' pytest-repeat==0.9.4; python_version >= '3.9' pytest-timeout==2.4.0; python_version >= '3.7' pytest-xdist==3.8.0; python_version >= '3.9' pyyaml==6.0.3; python_version >= '3.8' -ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml==0.18.16; python_version >= '3.8' ruamel.yaml.clib==0.2.15; python_version >= '3.9' service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tomli==2.3.0; python_version >= '3.8' -tornado==6.4.2; python_version >= '3.8' -typing-extensions==4.11.0; python_version >= '3.8' -urwid==2.6.16; python_version >= '3.8' +tornado==6.5.2; python_version >= '3.9' +typing-extensions==4.14.0; python_version >= '3.9' +urwid==3.0.3; python_full_version >= '3.9.0' wcwidth==0.2.14; python_version >= '3.6' werkzeug==3.1.0; python_version >= '3.9' wsproto==1.2.0; python_full_version >= '3.7.0' -zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file +zstandard==0.25.0; python_version >= '3.9' \ No newline at end of file From 84f117d44316cb75c17c4e1b6d9388b9065217d7 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Thu, 25 Dec 2025 11:03:05 +0000 Subject: [PATCH 08/13] =?UTF-8?q?corrected=20requirements=20+=20dockerfile?= =?UTF-8?q?s=20to=20use=20pyth=C4=B1n=203.12?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- circleci/images/citusupgradetester/Dockerfile | 7 ++- circleci/images/failtester/Dockerfile | 7 ++- circleci/images/pgupgradetester/Dockerfile | 7 ++- .../stylechecker/files/etc/requirements.txt | 46 +++++++++---------- 4 files changed, 32 insertions(+), 35 deletions(-) diff --git a/circleci/images/citusupgradetester/Dockerfile b/circleci/images/citusupgradetester/Dockerfile index e318675..b434779 100644 --- a/circleci/images/citusupgradetester/Dockerfile +++ b/circleci/images/citusupgradetester/Dockerfile @@ -1,5 +1,4 @@ -# we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.10-slim-bullseye AS base +FROM python:3.12-slim-bookworm AS base # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci @@ -56,8 +55,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" >> /etc/apt/sources.list.d/postgresql.list -echo "deb https://apt-archive.postgresql.org/pub/repos/apt bullseye-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/failtester/Dockerfile b/circleci/images/failtester/Dockerfile index 7bb9266..e46fa28 100644 --- a/circleci/images/failtester/Dockerfile +++ b/circleci/images/failtester/Dockerfile @@ -1,5 +1,4 @@ -# we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.10-slim-bullseye +FROM python:3.12-slim-bookworm # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci @@ -55,8 +54,8 @@ RUN <<'EOF' # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" >> /etc/apt/sources.list.d/postgresql.list -echo "deb https://apt-archive.postgresql.org/pub/repos/apt bullseye-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/pgupgradetester/Dockerfile b/circleci/images/pgupgradetester/Dockerfile index 8367dea..9e0237d 100644 --- a/circleci/images/pgupgradetester/Dockerfile +++ b/circleci/images/pgupgradetester/Dockerfile @@ -1,5 +1,4 @@ -# we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it -FROM python:3.10-slim-bullseye +FROM python:3.12-slim-bookworm # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci @@ -56,8 +55,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" >> /etc/apt/sources.list.d/postgresql.list -echo "deb https://apt-archive.postgresql.org/pub/repos/apt bullseye-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/stylechecker/files/etc/requirements.txt b/circleci/images/stylechecker/files/etc/requirements.txt index 61ebf42..7340ef6 100644 --- a/circleci/images/stylechecker/files/etc/requirements.txt +++ b/circleci/images/stylechecker/files/etc/requirements.txt @@ -16,36 +16,35 @@ pathspec==0.12.1; python_version >= '3.8' platformdirs==4.5.1; python_version >= '3.10' pycodestyle==2.14.0; python_version >= '3.9' pyflakes==3.4.0; python_version >= '3.9' -tomli==2.3.0; python_version >= '3.8' -typing-extensions==4.11.0; python_version >= '3.8' aioquic==1.2.0; python_version >= '3.8' -asgiref==3.8.1; python_version >= '3.8' -backports-asyncio-runner==1.2.0; python_version < '3.11' and python_version >= '3.8' +argon2-cffi==25.1.0; python_version >= '3.8' +argon2-cffi-bindings==25.1.0; python_version >= '3.9' +asgiref==3.10.0; python_version >= '3.9' +bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' -brotli==1.1.0 +brotli==1.2.0 certifi==2025.11.12; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 -exceptiongroup==1.3.1; python_version >= '3.7' execnet==2.1.2; python_version >= '3.8' filelock==3.20.1; python_version >= '3.10' -flask==3.1.0; python_version >= '3.9' -h11==0.14.0; python_version >= '3.7' -h2==4.1.0; python_full_version >= '3.6.1' +flask==3.1.2; python_version >= '3.9' +h11==0.16.0; python_version >= '3.8' +h2==4.3.0; python_version >= '3.9' hpack==4.1.0; python_version >= '3.9' -hyperframe==6.0.1; python_full_version >= '3.6.1' +hyperframe==6.1.0; python_version >= '3.9' iniconfig==2.3.0; python_version >= '3.10' itsdangerous==2.2.0; python_version >= '3.8' jinja2==3.1.6; python_version >= '3.7' -kaitaistruct==0.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' +kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy==11.0.2; python_version >= '3.10' -mitmproxy-rs==0.10.7; python_version >= '3.10' -msgpack==1.1.0; python_version >= '3.8' -passlib==1.7.4 +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy-linux==0.12.8; python_version >= '3.12' +mitmproxy-rs==0.12.8; python_version >= '3.12' +msgpack==1.1.2; python_version >= '3.9' pluggy==1.6.0; python_version >= '3.9' psycopg==3.3.2; python_version >= '3.10' publicsuffix2==2.20191221 @@ -54,22 +53,23 @@ pyasn1-modules==0.4.2; python_version >= '3.8' pycparser==2.23; python_version >= '3.8' pygments==2.19.2; python_version >= '3.8' pylsqpack==0.3.23; python_version >= '3.10' -pyopenssl==24.3.0; python_version >= '3.7' -pyparsing==3.2.0; python_version >= '3.9' +pyopenssl==25.1.0; python_version >= '3.7' +pyparsing==3.2.5; python_version >= '3.9' pyperclip==1.9.0 -pytest==8.4.2; python_version >= '3.9' -pytest-asyncio==1.1.1; python_version >= '3.9' +pytest==9.0.2; python_version >= '3.10' +pytest-asyncio==1.3.0; python_version >= '3.10' pytest-repeat==0.9.4; python_version >= '3.9' pytest-timeout==2.4.0; python_version >= '3.7' pytest-xdist==3.8.0; python_version >= '3.9' pyyaml==6.0.3; python_version >= '3.8' -ruamel.yaml==0.18.6; python_version >= '3.7' +ruamel.yaml==0.18.16; python_version >= '3.8' ruamel.yaml.clib==0.2.15; python_version >= '3.9' service-identity==24.2.0; python_version >= '3.8' sortedcontainers==2.4.0 -tornado==6.4.2; python_version >= '3.8' -urwid==2.6.16; python_version >= '3.8' +tornado==6.5.2; python_version >= '3.9' +typing-extensions==4.14.0; python_version >= '3.9' +urwid==3.0.3; python_full_version >= '3.9.0' wcwidth==0.2.14; python_version >= '3.6' werkzeug==3.1.0; python_version >= '3.9' wsproto==1.2.0; python_full_version >= '3.7.0' -zstandard==0.23.0; python_version >= '3.8' \ No newline at end of file +zstandard==0.25.0; python_version >= '3.9' \ No newline at end of file From c2ea04d9d4c4c92885ca7afd2f8cdc7b94566731 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Thu, 25 Dec 2025 11:51:18 +0000 Subject: [PATCH 09/13] added new build tool dependency --- circleci/images/stylechecker/Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/circleci/images/stylechecker/Dockerfile b/circleci/images/stylechecker/Dockerfile index 5dcdeaa..6376c04 100644 --- a/circleci/images/stylechecker/Dockerfile +++ b/circleci/images/stylechecker/Dockerfile @@ -16,6 +16,8 @@ apk add --no-cache --virtual installdeps \ gcc \ gzip \ musl-dev \ + cargo \ + rust \ openssl-dev \ py3-pip \ python3-dev \ @@ -47,6 +49,10 @@ make install cd ../.. rm -rf uncrustify-uncrustify-0.82.0/ +export CARGO_HOME="${CARGO_HOME:-/root/.cargo}" +cargo install --locked bpf-linker +install -m 755 "$CARGO_HOME/bin/bpf-linker" /usr/local/bin/bpf-linker + # this image is only used for testing purposes, so should be okay to overwrite system-managed packages pip3 install -Ir /tmp/etc/requirements.txt --break-system-packages apk del installdeps From d51068185d271434d9034976cc205412c24ade09 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Fri, 26 Dec 2025 10:34:47 +0000 Subject: [PATCH 10/13] mitmproxy build dependencies added to dockerfile --- circleci/images/stylechecker/Dockerfile | 35 ++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/circleci/images/stylechecker/Dockerfile b/circleci/images/stylechecker/Dockerfile index 6376c04..1b74fb8 100644 --- a/circleci/images/stylechecker/Dockerfile +++ b/circleci/images/stylechecker/Dockerfile @@ -16,12 +16,22 @@ apk add --no-cache --virtual installdeps \ gcc \ gzip \ musl-dev \ - cargo \ - rust \ openssl-dev \ py3-pip \ python3-dev \ tar \ + llvm21 \ + llvm21-dev \ + llvm21-libs \ + llvm21-linker-tools \ + llvm21-static \ + clang \ + elfutils-dev \ + zlib-dev \ + zlib-static \ + libxml2-static \ + xz-static \ + zstd-static apk add --no-cache \ ca-certificates \ @@ -50,7 +60,26 @@ cd ../.. rm -rf uncrustify-uncrustify-0.82.0/ export CARGO_HOME="${CARGO_HOME:-/root/.cargo}" -cargo install --locked bpf-linker +export RUSTUP_HOME="${RUSTUP_HOME:-/root/.rustup}" + +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-host x86_64-unknown-linux-musl +. "$CARGO_HOME/env" +rustup toolchain install nightly-x86_64-unknown-linux-musl +rustup component add rust-src --toolchain nightly-x86_64-unknown-linux-musl +cargo install --locked bpf-linker --no-default-features --features llvm-21 +export PATH="/root/.cargo/bin:${PATH}" + +LLVM_CONFIG="$(command -v llvm-config || command -v llvm-config-21)" +LLVM_LIBDIR="$(${LLVM_CONFIG} --libdir)" +LLVM_PREFIX="$(dirname "${LLVM_LIBDIR}")" +export LD_LIBRARY_PATH="${LLVM_LIBDIR}:${LD_LIBRARY_PATH:-}" +export PKG_CONFIG_PATH="${LLVM_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH:-}" +export LLVM_SYS_211_PREFIX="${LLVM_SYS_211_PREFIX:-${LLVM_PREFIX}}" +export LLVM_SYS_211_STATIC=1 +export AYA_RUSTC_LLVM_PROXY_DISABLE_DLOPEN=1 +export AYA_RUSTC_LLVM_PROXY_LIB_DIR="${LLVM_LIBDIR}" + + install -m 755 "$CARGO_HOME/bin/bpf-linker" /usr/local/bin/bpf-linker # this image is only used for testing purposes, so should be okay to overwrite system-managed packages From e96ceb301c0615121d2421974441fec3279ad6b5 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Fri, 26 Dec 2025 12:50:42 +0000 Subject: [PATCH 11/13] update remaining images to bookworm --- circleci/images/extbuilder/Dockerfile | 6 +++--- circleci/images/exttester/Dockerfile | 17 +++++++++-------- circleci/images/stylechecker/Dockerfile | 1 - 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/circleci/images/extbuilder/Dockerfile b/circleci/images/extbuilder/Dockerfile index d7e6e18..d703a28 100644 --- a/circleci/images/extbuilder/Dockerfile +++ b/circleci/images/extbuilder/Dockerfile @@ -1,4 +1,4 @@ -FROM buildpack-deps:bullseye +FROM buildpack-deps:bookworm # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci @@ -48,8 +48,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" >> /etc/apt/sources.list.d/postgresql.list -echo "deb https://apt-archive.postgresql.org/pub/repos/apt bullseye-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/exttester/Dockerfile b/circleci/images/exttester/Dockerfile index 661cf3c..505be7b 100644 --- a/circleci/images/exttester/Dockerfile +++ b/circleci/images/exttester/Dockerfile @@ -1,6 +1,6 @@ # postgres doesn't ship their isolation tester in the server-dev images # we use this builder to build the isolation tester from a specific version -FROM buildpack-deps:bullseye AS dev-tools-builder +FROM buildpack-deps:bookworm AS dev-tools-builder RUN <<'EOF' # install dependencies @@ -65,7 +65,7 @@ WORKDIR /build/postgresql-${PG_VERSION_CLEAN}/build RUN ../configure --prefix /usr/lib/postgresql/${PG_MAJOR}/ RUN make -sj8 -FROM buildpack-deps:bullseye AS dev-tools-collection +FROM buildpack-deps:bookworm AS dev-tools-collection WORKDIR /collect @@ -84,7 +84,7 @@ COPY --from=dev-tools-builder /build/postgresql-${PG_VERSION_CLEAN}/build/src/te COPY --from=dev-tools-builder /build/postgresql-${PG_VERSION_CLEAN}/src/test/regress/ usr/lib/postgresql/${PG_MAJOR}/lib/regress/ RUN rm -rf usr/lib/postgresql/${PG_MAJOR}/lib/regress/*.c usr/lib/postgresql/${PG_MAJOR}/lib/regress/*.h -FROM buildpack-deps:bullseye +FROM buildpack-deps:bookworm # add unpriviliged user for tests RUN useradd -ms /bin/bash circleci @@ -151,8 +151,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" >> /etc/apt/sources.list.d/postgresql.list -echo "deb https://apt-archive.postgresql.org/pub/repos/apt bullseye-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update @@ -161,16 +161,17 @@ pgdg_version=$(apt list -a postgresql-server-dev-${PG_MAJOR} 2>/dev/null | grep apt-get install -y --no-install-recommends --allow-downgrades \ libdbi-perl \ - libdbd-pg-perl=3.16.3-1.pgdg110+1 \ libpq-dev=${pgdg_version} \ libpq5=${pgdg_version} \ postgresql-${PG_MAJOR}=${pgdg_version} \ postgresql-client-${PG_MAJOR}=${pgdg_version} \ postgresql-${PG_MAJOR}-dbgsym=${pgdg_version} \ postgresql-server-dev-${PG_MAJOR}=${pgdg_version} \ - postgresql-${PG_MAJOR}-wal2json \ + postgresql-${PG_MAJOR}-wal2json - # clear apt cache +apt-get install -y --no-install-recommends -t bookworm libdbd-pg-perl + +# clear apt cache rm -rf /var/lib/apt/lists/* EOF diff --git a/circleci/images/stylechecker/Dockerfile b/circleci/images/stylechecker/Dockerfile index 1b74fb8..1ef89e1 100644 --- a/circleci/images/stylechecker/Dockerfile +++ b/circleci/images/stylechecker/Dockerfile @@ -1,4 +1,3 @@ -# we cannot easily upgrade to python 3.11 as our mitmproxy fork does not ship with it FROM alpine:latest ARG TOOLS_VERSION From 7bb489c6cffb5e200fb77e86d6fba61af837cd4a Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Fri, 26 Dec 2025 20:09:23 +0000 Subject: [PATCH 12/13] ensure mitmdump executable is accesible --- circleci/images/failtester/Dockerfile | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/circleci/images/failtester/Dockerfile b/circleci/images/failtester/Dockerfile index e46fa28..ac68c87 100644 --- a/circleci/images/failtester/Dockerfile +++ b/circleci/images/failtester/Dockerfile @@ -81,6 +81,23 @@ ENV PATH=/usr/lib/postgresql/$PG_MAJOR/bin/:$PATH RUN mkdir -p /var/run/postgresql && chown -R postgres:postgres /var/run/postgresql && chmod 2777 /var/run/postgresql COPY ./files/etc/requirements.txt /tmp/etc/ -RUN pip3 install -Ir /tmp/etc/requirements.txt +RUN <&2 + exit 1 +fi + +if [ "$MITMDUMP_BIN" != "/usr/local/bin/mitmdump" ]; then + ln -sf "$MITMDUMP_BIN" /usr/local/bin/mitmdump +fi + +hash mitmdump +EOF WORKDIR /home/circleci From 0ff0faaac16b45460b816127c0063f42bd2a8b50 Mon Sep 17 00:00:00 2001 From: Ibrahim Halatci Date: Mon, 5 Jan 2026 12:50:57 +0000 Subject: [PATCH 13/13] mitmproxy reverts to main (upgrde PR merged) --- .../images/citusupgradetester/files/etc/requirements.txt | 6 +++--- circleci/images/failtester/files/etc/requirements.txt | 6 +++--- circleci/images/pgupgradetester/files/etc/requirements.txt | 6 +++--- circleci/images/stylechecker/files/etc/requirements.txt | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/circleci/images/citusupgradetester/files/etc/requirements.txt b/circleci/images/citusupgradetester/files/etc/requirements.txt index fa655a6..5b2da17 100644 --- a/circleci/images/citusupgradetester/files/etc/requirements.txt +++ b/circleci/images/citusupgradetester/files/etc/requirements.txt @@ -11,14 +11,14 @@ attrs==25.4.0; python_version >= '3.9' bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' brotli==1.2.0 -certifi==2025.11.12; python_version >= '3.7' +certifi==2026.1.4; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 execnet==2.1.2; python_version >= '3.8' -filelock==3.20.1; python_version >= '3.10' +filelock==3.20.2; python_version >= '3.10' flask==3.1.2; python_version >= '3.9' h11==0.16.0; python_version >= '3.8' h2==4.3.0; python_version >= '3.9' @@ -30,7 +30,7 @@ jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@30b588eb1b7c66da233d7c471ec23f2b632ed531 mitmproxy-linux==0.12.8; python_version >= '3.12' mitmproxy-rs==0.12.8; python_version >= '3.12' msgpack==1.1.2; python_version >= '3.9' diff --git a/circleci/images/failtester/files/etc/requirements.txt b/circleci/images/failtester/files/etc/requirements.txt index fa655a6..5b2da17 100644 --- a/circleci/images/failtester/files/etc/requirements.txt +++ b/circleci/images/failtester/files/etc/requirements.txt @@ -11,14 +11,14 @@ attrs==25.4.0; python_version >= '3.9' bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' brotli==1.2.0 -certifi==2025.11.12; python_version >= '3.7' +certifi==2026.1.4; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 execnet==2.1.2; python_version >= '3.8' -filelock==3.20.1; python_version >= '3.10' +filelock==3.20.2; python_version >= '3.10' flask==3.1.2; python_version >= '3.9' h11==0.16.0; python_version >= '3.8' h2==4.3.0; python_version >= '3.9' @@ -30,7 +30,7 @@ jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@30b588eb1b7c66da233d7c471ec23f2b632ed531 mitmproxy-linux==0.12.8; python_version >= '3.12' mitmproxy-rs==0.12.8; python_version >= '3.12' msgpack==1.1.2; python_version >= '3.9' diff --git a/circleci/images/pgupgradetester/files/etc/requirements.txt b/circleci/images/pgupgradetester/files/etc/requirements.txt index fa655a6..5b2da17 100644 --- a/circleci/images/pgupgradetester/files/etc/requirements.txt +++ b/circleci/images/pgupgradetester/files/etc/requirements.txt @@ -11,14 +11,14 @@ attrs==25.4.0; python_version >= '3.9' bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' brotli==1.2.0 -certifi==2025.11.12; python_version >= '3.7' +certifi==2026.1.4; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' click==8.3.1; python_version >= '3.10' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 execnet==2.1.2; python_version >= '3.8' -filelock==3.20.1; python_version >= '3.10' +filelock==3.20.2; python_version >= '3.10' flask==3.1.2; python_version >= '3.9' h11==0.16.0; python_version >= '3.8' h2==4.3.0; python_version >= '3.9' @@ -30,7 +30,7 @@ jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@30b588eb1b7c66da233d7c471ec23f2b632ed531 mitmproxy-linux==0.12.8; python_version >= '3.12' mitmproxy-rs==0.12.8; python_version >= '3.12' msgpack==1.1.2; python_version >= '3.9' diff --git a/circleci/images/stylechecker/files/etc/requirements.txt b/circleci/images/stylechecker/files/etc/requirements.txt index 7340ef6..44fe55d 100644 --- a/circleci/images/stylechecker/files/etc/requirements.txt +++ b/circleci/images/stylechecker/files/etc/requirements.txt @@ -23,13 +23,13 @@ asgiref==3.10.0; python_version >= '3.9' bcrypt==5.0.0; python_version >= '3.8' blinker==1.9.0; python_version >= '3.9' brotli==1.2.0 -certifi==2025.11.12; python_version >= '3.7' +certifi==2026.1.4; python_version >= '3.7' cffi==2.0.0; python_version >= '3.9' construct==2.10.70; python_version >= '3.6' cryptography==44.0.3; python_version >= '3.7' and python_full_version not in '3.9.0, 3.9.1' docopt==0.6.2 execnet==2.1.2; python_version >= '3.8' -filelock==3.20.1; python_version >= '3.10' +filelock==3.20.2; python_version >= '3.10' flask==3.1.2; python_version >= '3.9' h11==0.16.0; python_version >= '3.8' h2==4.3.0; python_version >= '3.9' @@ -41,7 +41,7 @@ jinja2==3.1.6; python_version >= '3.7' kaitaistruct==0.11; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' ldap3==2.9.1 markupsafe==3.0.3; python_version >= '3.9' -mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@66594bb8af146cce8d9bd7f79f46b77785f3d699 +mitmproxy @ git+https://github.com/citusdata/mitmproxy.git@30b588eb1b7c66da233d7c471ec23f2b632ed531 mitmproxy-linux==0.12.8; python_version >= '3.12' mitmproxy-rs==0.12.8; python_version >= '3.12' msgpack==1.1.2; python_version >= '3.9'