[wip] use Python 3.11 & update all dependencies

This commit is contained in:
ducklet 2023-02-02 00:00:24 +01:00
parent 7823708383
commit 13b65103fd
4 changed files with 439 additions and 410 deletions

View file

@ -1,4 +1,4 @@
FROM docker.io/library/python:3.10-alpine
FROM docker.io/library/python:3.11-alpine
RUN apk update --no-cache \
&& apk upgrade --no-cache \
@ -11,13 +11,8 @@ WORKDIR /var/app
COPY requirements.txt ./
# Required to build greenlet on Alpine, dependency of SQLAlchemy 1.4.
RUN apk add --no-cache \
--virtual .build-deps \
g++ gcc musl-dev \
&& pip install --no-cache-dir --upgrade \
--requirement requirements.txt \
&& apk del .build-deps
RUN pip install --no-cache-dir --upgrade \
--requirement requirements.txt
USER 10000:10001

811
poetry.lock generated

File diff suppressed because it is too large Load diff

View file

@ -6,21 +6,20 @@ authors = ["ducklet <ducklet@noreply.code.dumpr.org>"]
license = "LOL"
[tool.poetry.dependencies]
python = "^3.10"
python = "^3.11"
requests = "^2.25.1"
beautifulsoup4 = "^4.9.3"
html5lib = "^1.1"
starlette = "^0.17.0"
starlette = "^0.23.1"
ulid-py = "^1.1.0"
databases = {extras = ["sqlite"], version = "^0.6.1"}
toml = "^0.10.2"
uvicorn = "^0.19.0"
databases = {extras = ["sqlite"], version = "^0.7.0"}
uvicorn = "^0.20.0"
[tool.poetry.group.fixes.dependencies]
# `databases` is having issues with new versions of SQLAlchemy 1.4,
# and `greenlet` is also always a pain.
SQLAlchemy = "1.4.25"
greenlet = "1.1.2"
# [tool.poetry.group.fixes.dependencies]
# # `databases` is having issues with new versions of SQLAlchemy 1.4,
# # and `greenlet` is also always a pain.
# SQLAlchemy = "1.4.25"
# greenlet = "1.1.2"
[tool.poetry.group.dev]
optional = true
@ -37,4 +36,4 @@ requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.pyright]
pythonVersion = "3.10"
pythonVersion = "3.11"

View file

@ -1,8 +1,7 @@
import os
import tomllib
from pathlib import Path
import toml
datadir = Path(os.getenv("UNWIND_DATA") or "./data")
cachedir = (
Path(cachedir)
@ -14,7 +13,8 @@ loglevel = os.getenv("UNWIND_LOGLEVEL") or ("DEBUG" if debug else "INFO")
storage_path = os.getenv("UNWIND_STORAGE", datadir / "db.sqlite")
config_path = os.getenv("UNWIND_CONFIG", datadir / "config.toml")
_config = toml.load(config_path)
with open(config_path, "rb") as fd:
_config = tomllib.load(fd)
api_base = _config["api"].get("base", "/api/")
api_cors = _config["api"].get("cors", "*")