diff --git a/Dockerfile b/Dockerfile index 78620da..80307bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,13 +1,13 @@ # syntax=docker/dockerfile:1.7 -FROM node:20-alpine AS frontend-builder +FROM node:22-alpine AS frontend-builder WORKDIR /build COPY frontend/package.json frontend/package-lock.json* ./ RUN npm ci --no-audit --no-fund COPY frontend/ ./ RUN npm run build -FROM python:3.12-slim AS runtime +FROM python:3.14-slim AS runtime ENV PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 \ PIP_NO_CACHE_DIR=1 \ diff --git a/Dockerfile.ml b/Dockerfile.ml index 3812915..cf90ec4 100644 --- a/Dockerfile.ml +++ b/Dockerfile.ml @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1.7 -FROM python:3.12-slim +FROM python:3.14-slim ENV PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 \ PIP_NO_CACHE_DIR=1 \ diff --git a/frontend/package.json b/frontend/package.json index 32e9f00..d123574 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -3,6 +3,9 @@ "version": "0.1.0", "private": true, "type": "module", + "engines": { + "node": ">=22" + }, "scripts": { "dev": "vite", "build": "vite build", diff --git a/pyproject.toml b/pyproject.toml index 3ff350f..0cd1a87 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "fabledcurator" version = "0.1.0" description = "FabledSword family — self-hosted media curation, gallery, ML tagging, and subscription-driven downloads." -requires-python = ">=3.12" +requires-python = ">=3.14" [tool.setuptools.packages.find] where = ["."] diff --git a/ruff.toml b/ruff.toml index f71eae8..b8603a4 100644 --- a/ruff.toml +++ b/ruff.toml @@ -1,4 +1,4 @@ -target-version = "py312" +target-version = "py314" line-length = 100 [lint]