diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 57a0ca74..00000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: Build - -on: [push, pull_request, workflow_dispatch] - -permissions: {} - -env: - FORCE_COLOR: 1 - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - persist-credentials: false - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: 3.9 - - name: Check configuration - run: make check PIP=pip BUILDBOT=buildbot diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml new file mode 100644 index 00000000..ad9f7ff2 --- /dev/null +++ b/.github/workflows/check.yml @@ -0,0 +1,29 @@ +name: Check config + +on: [push, pull_request, workflow_dispatch] + +permissions: {} + +env: + FORCE_COLOR: 1 + +jobs: + check-config: + runs-on: ubuntu-latest + strategy: + # These are short jobs, fail-fast would only hide information from us + fail-fast: false + matrix: + python-version: + - '3.9' + - '3.13' + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + - name: Setup Python + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + - name: Check configuration + run: make check PIP=pip BUILDBOT=buildbot PYTHON_VERSION=${{ matrix.python-version }} diff --git a/Makefile b/Makefile index fff644d1..dc0b443d 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ PYTHON_VERSION=3.9 SYSTEM_PYTHON=python$(PYTHON_VERSION) VENV_DIR=./venv +REQUIREMENTS=requirements-$(PYTHON_VERSION).txt PIP=$(VENV_DIR)/bin/pip # make stop-server kills all processes named "python" PKILL_NAME="python" @@ -18,16 +19,16 @@ venv: $(VENV_CHECK) clean: rm -rf venv -$(VENV_CHECK): requirements.txt +$(VENV_CHECK): $(REQUIREMENTS) $(SYSTEM_PYTHON) -m venv --clear venv $(PIP) install -U pip - $(PIP) install -r requirements.txt + $(PIP) install -r $(REQUIREMENTS) regen-requirements: $(SYSTEM_PYTHON) -m venv --clear venv $(PIP) install -U pip $(PIP) install -U -r requirements.in - $(PIP) freeze > requirements.txt + $(PIP) freeze > $(REQUIREMENTS) # Test targets diff --git a/master/custom/workers.py b/master/custom/workers.py index ef952c18..b058aa70 100644 --- a/master/custom/workers.py +++ b/master/custom/workers.py @@ -182,8 +182,6 @@ def get_workers(settings): tags=['linux', 'unix', 'raspbian', 'debian', 'armv6', 'armv7l', 'aarch32', 'arm'], parallel_tests=4, - # Raspbian Debian bullseye ships with 3.9, bookworm with 3.11. - not_branches=['3.7', '3.8'], ), cpw( name="stan-raspbian", diff --git a/requirements-3.13.txt b/requirements-3.13.txt new file mode 100644 index 00000000..eee6b622 --- /dev/null +++ b/requirements-3.13.txt @@ -0,0 +1,55 @@ +alembic==1.16.5 +attrs==25.3.0 +autobahn==24.4.2 +Automat==25.4.16 +blinker==1.9.0 +buildbot==4.3.0 +buildbot-console-view==4.3.0 +buildbot-grid-view==4.3.0 +buildbot-waterfall-view==4.3.0 +buildbot-worker==4.3.0 +buildbot-wsgi-dashboards==4.3.0 +buildbot-www==4.3.0 +certifi==2025.8.3 +cffi==2.0.0 +charset-normalizer==3.4.3 +click==8.2.1 +constantly==23.10.4 +croniter==6.0.0 +cryptography==45.0.7 +Flask==3.1.2 +greenlet==3.2.4 +humanize==4.13.0 +hyperlink==21.0.0 +idna==3.10 +incremental==24.7.2 +itsdangerous==2.2.0 +Jinja2==3.1.6 +Mako==1.3.10 +MarkupSafe==3.0.2 +msgpack==1.1.1 +multipart==1.3.0 +packaging==25.0 +psycopg2==2.9.10 +pyasn1==0.6.1 +pyasn1_modules==0.4.2 +pycparser==2.23 +PyJWT==2.10.1 +pyOpenSSL==25.1.0 +python-dateutil==2.9.0.post0 +pytz==2025.2 +PyYAML==6.0.2 +requests==2.32.5 +sentry-sdk==2.37.1 +service-identity==24.2.0 +setuptools==80.9.0 +six==1.17.0 +SQLAlchemy==2.0.43 +treq==25.5.0 +Twisted==25.5.0 +txaio==25.6.1 +typing_extensions==4.15.0 +unidiff==0.7.5 +urllib3==2.5.0 +Werkzeug==3.1.3 +zope.interface==7.2 diff --git a/requirements.txt b/requirements-3.9.txt similarity index 66% rename from requirements.txt rename to requirements-3.9.txt index e8c377a3..dd84e9dc 100644 --- a/requirements.txt +++ b/requirements-3.9.txt @@ -1,4 +1,4 @@ -alembic==1.15.2 +alembic==1.16.5 attrs==25.3.0 autobahn==24.4.2 Automat==25.4.16 @@ -10,16 +10,16 @@ buildbot-waterfall-view==4.3.0 buildbot-worker==4.3.0 buildbot-wsgi-dashboards==4.3.0 buildbot-www==4.3.0 -certifi==2025.4.26 -cffi==1.17.1 -charset-normalizer==3.4.2 +certifi==2025.8.3 +cffi==2.0.0 +charset-normalizer==3.4.3 click==8.1.8 constantly==23.10.4 croniter==6.0.0 -cryptography==45.0.2 -Flask==3.1.1 -greenlet==3.2.2 -humanize==4.12.3 +cryptography==45.0.7 +Flask==3.1.2 +greenlet==3.2.4 +humanize==4.13.0 hyperlink==21.0.0 idna==3.10 importlib_metadata==8.7.0 @@ -28,29 +28,30 @@ itsdangerous==2.2.0 Jinja2==3.1.6 Mako==1.3.10 MarkupSafe==3.0.2 -msgpack==1.1.0 +msgpack==1.1.1 +multipart==1.3.0 packaging==25.0 psycopg2==2.9.10 pyasn1==0.6.1 pyasn1_modules==0.4.2 -pycparser==2.22 +pycparser==2.23 PyJWT==2.10.1 pyOpenSSL==25.1.0 python-dateutil==2.9.0.post0 pytz==2025.2 PyYAML==6.0.2 -requests==2.32.3 -sentry-sdk==2.28.0 +requests==2.32.5 +sentry-sdk==2.37.1 service-identity==24.2.0 six==1.17.0 -SQLAlchemy==2.0.41 +SQLAlchemy==2.0.43 tomli==2.2.1 -treq==24.9.1 -Twisted==24.11.0 -txaio==23.1.1 -typing_extensions==4.13.2 +treq==25.5.0 +Twisted==25.5.0 +txaio==23.6.1 +typing_extensions==4.15.0 unidiff==0.7.5 -urllib3==2.4.0 +urllib3==2.5.0 Werkzeug==3.1.3 -zipp==3.21.0 +zipp==3.23.0 zope.interface==7.2