From patchwork Sun Oct 18 01:47:43 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 101163 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8F847CCF2C7 for ; Sun, 18 Oct 2026 01:49:46 +0000 (UTC) Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.7856.1792288180028040309 for ; Sat, 17 Oct 2026 18:49:40 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=YAsJqg/d; spf=pass (domain: gmail.com, ip: 209.85.214.173, mailfrom: ticotimo@gmail.com) Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-2e9ae391a05so5466075ad.1 for ; Sat, 17 Oct 2026 18:49:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1792288179; x=1792892979; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=q9jMNuVtV9zDuiq4gkcU2zPWq/glICDYDKT0aOQCg34=; b=YAsJqg/d/CZ//BiwgNjdBm4sTyyGIZdr21TU9OnWypXozM/+DLqarDMf34I61+8ogV qNLkRLBaigyGY6MI13l30pQ8ulEdfeD0IcuNKkpJn3vch2EycY7INKcR0cFa3zdnZ5KC wn2SqlqcSL6X8HTn8DWTmcs5f+u9zK8nGDZYmlV5grIWW/hu9OCzamKSEv2lOoOjWFz1 8OyzWfF+ccndPeC+us2OfrqClzlJlcO5fFusoDuMu0aI041BVu4OEyGR2FWz893DGs0R FWATGo5WUtwisjPt6CAL5a6CRIqIYkuCQM7mzaijt3upZnzhqC9nJdA33xeQJDxRTohJ UFGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792288179; x=1792892979; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=q9jMNuVtV9zDuiq4gkcU2zPWq/glICDYDKT0aOQCg34=; b=hLhq4yD469aVproEsOPXdnXmg0PUlEmor2Z+AXAfoctekOHyJ7YJDHsnWr8ilNPGHj g/NiICIJ/DeW9dYuoK6bhKnmUoKnhV6Mr04FRi2Baei1CjeTCPxGnUrnyBONIr481ipF mIJhvUivymF2wWOH/Q+1b019KsRVSzj8LT4qrs7Bb79pnPmEmmeYbkoMtZsUWz1ODocZ tb2Bn6MqgFL3TIGlAZ2txNueUnJfFa7q2G/xw3x5S3nMVGGu+mDdXaoLyeyL6PpDrLKf Dbw3mYEKS3UZJEwBsFtF6quwI8acaWXetGoq26PuUbv1DhLxkT07Hl2g0hOFsb0A5kCH oH1Q== X-Gm-Message-State: AFq9FYK5oLv56NjIb+VlFuml+OHgg2sAvrLMPnq8737vWtkvKMFfnBBK vig3bZqso5w6/L3Ne0e6cmWnbtICrlTPlgUBZi9kL7EnVDBGPmt6/tUgrvjmkg== X-Gm-Gg: AYBFou0yeU6uTy6ZcYzUygOGbHtHxNjzdtQGoQsWVD3yXCIWIqVPvQJvz60CWAKss/b Mwnmde8Ybfh1XLqdO5bzVIR1Dc7iq+cijYSNj73sTOLD9CJA9z5zFDojtt818PeUHNjzwQ0mRew 0tSX1Oev3yvJQtXQPGBGBBdaSR9Ta8W87n92NX+ZpwGiC2ayoteZq88QUK8umn0VR/b8KciQnyl Hlznk9jkbqYARSsR70PBY7YT6n98JUocSG8DbRqfWCTDbhYFVagHsEWqQVWStj6opp1oUWWmpRt Azi1HWb5SthATN/7o1YrzZ22LuIiaemLF/Czks0TNX+kdJRnsF6ltFBxfvt/cATYJ/1lScwJBkb oCFUb5KiY2BIL6It+CAoS9y5t85fuftt3d6HV9yq9htJrynYWNWJtXccBSEDHBopgBstWzdDdUk 6yWVIU081Og4DoYEqjkxM5a0Ao2H22FZgZIe/+hvljAh5s/WvBTLpnZ1Oxglelfog3XsPnz1/9q 6L7HxXWhtef81kBHqyaPYqX8tnOSULyNLTvkS+SzA== X-Received: by 2002:a17:903:240e:b0:2e9:5313:8f7b with SMTP id d9443c01a7336-2e97752b4c4mr49830775ad.9.1792288179290; Sat, 17 Oct 2026 18:49:39 -0700 (PDT) Received: from localhost.localdomain ([69.9.132.159]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2e97e87994bsm25005515ad.60.2026.10.17.18.49.38 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 17 Oct 2026 18:49:38 -0700 (PDT) From: Tim Orling X-Google-Original-From: Tim Orling To: yocto-patches@lists.yoctoproject.org Cc: Tim Orling Subject: [error-report-web][PATCH 1/3] Upgrade to Django 5.2. Date: Sat, 17 Oct 2026 18:47:43 -0700 Message-ID: <20261018014924.73070-3-tim.orling@konsulko.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261018014924.73070-1-tim.orling@konsulko.com> References: <20261018014924.73070-1-tim.orling@konsulko.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sun, 18 Oct 2026 01:49:46 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto-patches/message/5051 Django 4.2.30 has 7 known vulnerabilities, fixed in 5.2.18. Pin the other requirements to the installed versions. Drop USE_L10N, removed in 5.0, and AUTH_PROFILE_MODULE, unused since 1.7. No migrations needed. [YOCTO #16458] AI-Generated: Claude Opus 5.5 Signed-off-by: Tim Orling --- project/settings.py | 6 ------ project/settings.py.docker | 6 ------ requirements.txt | 10 +++++----- 3 files changed, 5 insertions(+), 17 deletions(-) diff --git a/project/settings.py b/project/settings.py index 1ec6891..bc63c49 100644 --- a/project/settings.py +++ b/project/settings.py @@ -87,10 +87,6 @@ SITE_ID = 1 # to load the internationalization machinery. USE_I18N = True -# If you set this to False, Django will not format dates, numbers and -# calendars according to the current locale. -USE_L10N = True - # If you set this to False, Django will not use timezone-aware datetimes. USE_TZ = True @@ -218,8 +214,6 @@ TEMPLATE_CONTEXT_PROCESSORS = ( 'Post.views.common_context', ) -AUTH_PROFILE_MODULE = 'registration.RegistrationProfile' - BUGZILLA_URL = 'https://bugzilla.yoctoproject.org' ACCOUNT_ACTIVATION_DAYS = 2 diff --git a/project/settings.py.docker b/project/settings.py.docker index 9f98715..680b485 100644 --- a/project/settings.py.docker +++ b/project/settings.py.docker @@ -81,10 +81,6 @@ SITE_ID = 1 # to load the internationalization machinery. USE_I18N = True -# If you set this to False, Django will not format dates, numbers and -# calendars according to the current locale. -USE_L10N = True - # If you set this to False, Django will not use timezone-aware datetimes. USE_TZ = True @@ -212,8 +208,6 @@ TEMPLATE_CONTEXT_PROCESSORS = ( 'Post.views.common_context', ) -AUTH_PROFILE_MODULE = 'registration.RegistrationProfile' - BUGZILLA_URL = 'https://bugzilla.yoctoproject.org' ACCOUNT_ACTIVATION_DAYS = 2 diff --git a/requirements.txt b/requirements.txt index 920d9d0..f5022da 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -Django<4.3 -python-Levenshtein -bleach -mysqlclient -django-registration +Django>=5.2.18,<5.3 +python-Levenshtein==0.27.4 +bleach==6.4.0 +mysqlclient==2.3.0 +django-registration==5.2.1 From patchwork Sun Oct 18 01:47:45 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 101164 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 89536CCF2C4 for ; Sun, 18 Oct 2026 01:50:16 +0000 (UTC) Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.7863.1792288206791374016 for ; Sat, 17 Oct 2026 18:50:06 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=UccKSKuh; spf=pass (domain: gmail.com, ip: 209.85.214.170, mailfrom: ticotimo@gmail.com) Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2e5d0ee1951so6834275ad.0 for ; Sat, 17 Oct 2026 18:50:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1792288206; x=1792893006; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Oc/DnWUlrLl0MmxFE64g5XLO5o0d20SY8JI/vZlBoRU=; b=UccKSKuhD0QRbwAXy5ztjk/8LCXiTbcnBJnalpztgxlTdqcOCNb0aUD37OLoYUwTCH tpK8VA9trPkvGf3xMm8MMteIf4WGq8HcEOvPU99ud1ZtskhxBjtSqIEyEODv+qx1cRWV UI6YWf/lV3hpfEXaCkS97O9nmythTvnMYwbsta36L/NMhb7sWDtnYhSDc/mFLWMuPw+L CASZfc07HnU4TzGrW7YB8mteTnS5fDQUVFCDOdDMj96Nw6Ign2zauuhC41JFSxLAfPIi bQdc+jidrE1BBRhNVuCHY868uela2OcBxVOUWlpsl9oKlKIdnUUrrRM6kXT3hzxzIOj5 N8TA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792288206; x=1792893006; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=Oc/DnWUlrLl0MmxFE64g5XLO5o0d20SY8JI/vZlBoRU=; b=kHNRBv9aqjIpRGVRcYbnDAw6Sz27eXl/mapz7IorXKBd1kzUCw176pAuKQKal2PdUc Bi8nXModZNnOLSuENFnTmL6U5Xy9xajq1cwCj/58/jpmlVBy4kRi8FLP2JvxqVWI3sPw gR7j8bJc0etxTgBHjPpkCKxAMxFaXax9SuAg2jhzi6PzPzFm6JuOVS+cxadcvcW+4ObF ziKoNIu2IC3W06IyYIXe4uiTCpbZq0kpmuFxTQIiqUGJU2BWTrGvaUhCWcIJ4ESTG0io QTmESW5kWcNFkqkqCFmzuuKwj6VgK5OfmP02//lXW2DUF8CpNfS6Zww24ZgCoLBiQWIA HbfQ== X-Gm-Message-State: AFq9FYLS1D/9BAUX0CdeeAcioQOd9a6AXz7OjqjsUrqYJ+IffhC0aZOz TKIVFlewiVQCCHUaxgAJV4OkDnfZodWB9WG0oVk+dvTaZfomwl9G1xpZ9FWO9w== X-Gm-Gg: AYBFou3ghcJhMfYe4ijSv/ckXQf8VJPjczSU3sGZVf9500T3WYjoPB/EmMX0uuNiOCY tQM5AYyCl2YgRW/2IWob+00WsOFN0RMU/AFdEFSSMrpy5aDNeXsY/koa368cpAJf5Mnumvo0M8f VXaozFqqwSOjVCBFBSIYfh/yOiQnQj186HVlhLyCJsG9W4vzzgUnlYRSl87alG5Ul5Vefm4ukaL mQVhfNpKyk0xZzi7r3k0QrAnt6zpZU613A66IWFj08K03k//UrqdgWWPmAOu60OSo8JNQftcAlX WAU3chlemE06xcVgWBxRkbhz5+FqaQyMiyrX/89Rkdf0M8NFWAzUjqwTaK0j7RDG4fNSSKJaup8 eD5l0mu/obAddew1RKfVt56av7vWRuFnDDb2vSPKaIX0cUGNRglCd8iN3dpW8tqe6zOiAJr9JDH p1qPcwKNoNFu0zHdbQdiJJrsM2NC/bjFfXw+B/SiA1g1CLQUC4GWp767ALYllyu4sr6dWZCn6uN LDGPo0jko4LOXBNDlF4PEoulz/rG3Y= X-Received: by 2002:a17:902:d4c9:b0:2e9:66c4:1717 with SMTP id d9443c01a7336-2e9a735f740mr33219875ad.61.1792288206157; Sat, 17 Oct 2026 18:50:06 -0700 (PDT) Received: from localhost.localdomain ([69.9.132.159]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2e97e87994bsm25005515ad.60.2026.10.17.18.50.05 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 17 Oct 2026 18:50:05 -0700 (PDT) From: Tim Orling X-Google-Original-From: Tim Orling To: yocto-patches@lists.yoctoproject.org Cc: Tim Orling Subject: [error-report-web][PATCH 2/3] Update base images to Python 3.12 and MySQL 8.4. Date: Sat, 17 Oct 2026 18:47:45 -0700 Message-ID: <20261018014924.73070-5-tim.orling@konsulko.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261018014924.73070-1-tim.orling@konsulko.com> References: <20261018014924.73070-1-tim.orling@konsulko.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sun, 18 Oct 2026 01:50:16 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto-patches/message/5052 Python 3.10 is end of life in October 2026, MySQL 8.0 was in April 2026. Test against the same MySQL as compose. Use ENV key=value, which docker build no longer warns about. AI-Generated: Claude Opus 5.5 Signed-off-by: Tim Orling --- Dockerfile | 6 +++--- docker-compose.yaml | 2 +- docker/run-tests.sh | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index 080befc..94d55a6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,9 @@ # Use an official Python runtime as a parent image -FROM python:3.10 +FROM python:3.12 # Set environment variables -ENV PYTHONDONTWRITEBYTECODE 1 -ENV PYTHONUNBUFFERED 1 +ENV PYTHONDONTWRITEBYTECODE=1 +ENV PYTHONUNBUFFERED=1 # Set the working directory WORKDIR /app diff --git a/docker-compose.yaml b/docker-compose.yaml index 5ef4913..0291ff5 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,7 +1,7 @@ version: '3' services: db: - image: mysql:8.0.36 + image: mysql:8.4 container_name: error_report_web_db restart: always volumes: diff --git a/docker/run-tests.sh b/docker/run-tests.sh index 54aaa8b..2eafd98 100755 --- a/docker/run-tests.sh +++ b/docker/run-tests.sh @@ -17,7 +17,7 @@ trap 'docker rm -f $DB >/dev/null; docker network rm $NET >/dev/null' EXIT # Root so Django can create the test database; testingpw isn't a secret. docker run -d --name $DB --network $NET --network-alias db \ -e MYSQL_ROOT_PASSWORD=testingpw -e MYSQL_DATABASE=errorreport \ - mysql:8.0.36 >/dev/null + mysql:8.4 >/dev/null until docker exec $DB mysql -h127.0.0.1 -uroot -ptestingpw -e 'SELECT 1' >/dev/null 2>&1; do if [ "$(docker inspect -f '{{.State.Running}}' $DB)" != true ]; then docker logs $DB | tail -5; exit 1 From patchwork Sun Oct 18 01:47:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 101165 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 85FD2CCF2C7 for ; Sun, 18 Oct 2026 01:50:26 +0000 (UTC) Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.7868.1792288226178279086 for ; Sat, 17 Oct 2026 18:50:26 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=TWO2wo/U; spf=pass (domain: gmail.com, ip: 209.85.214.172, mailfrom: ticotimo@gmail.com) Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-2d71d1cc8b2so5799035ad.1 for ; Sat, 17 Oct 2026 18:50:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1792288225; x=1792893025; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=9BtWE7R9zMiQ/M455k1HDoT1LD1Pd5kXaCUctU9/nfA=; b=TWO2wo/UIDBuYG/O+2V4MKV95S1vLYjEd+azmS0qw/OyI1jUsqX/n2DNuCvO9om8YM AgspjGgw+AU96yZUidgIVPhTiFYh8WxsUPJIOUZ1glmpL9FunGZPd4Mscv2C4DiI3Mlw /1XiYSMp0GeHGZh/nSq8rCoaXbnOGoEcWNxIqSO+0nBz2p5PbnLTeJI/qaYE/4BGOccC ymqxxbP9mmuhoHiVVwtE3+iaOhASql+0SDEIgtSbgY0k9LbxMKxO8excebyHZxS8wq/B 0YA33v7kEhFg9PYkgLzUh2zb32debiX6w6rZIrIvn3IFd8deXurg5YXqO8+lBq10SauO ARHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792288225; x=1792893025; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=9BtWE7R9zMiQ/M455k1HDoT1LD1Pd5kXaCUctU9/nfA=; b=dlOutRjIs9Rm8F8KXa9U44e7wyDUvUHZonJaCaKNHkfs0gA9xr9Y/GeTCGigGdcERB 7l071/sy7aJX/GWzXOx95xxV0k3SgOhb5oPc6G9p/txPAEVh+4KGmVOHz6QkoggqDLIX j2m8KGMFJ5uam2VoIYrq/TqMq5ua4/4JxzPB2p0l5mN5ND/zKwkK1TDZ4K1NcXdmI9qR tDdITY+Qp+fH1INcnzsa/lQyznbl3+wH1s1aYWPjI/dTbWpNqJDqa3ZLMsoI4p1WJoUe +gMwAWxRN0STj87kIrY9GWlbNGxWaN/wzh4fN8TjH3DUqyWcp9Tj+Led345/5r28bS0R ICjA== X-Gm-Message-State: AFq9FYLf9cbY9USG0GjcZUK3dhqE4dA+dzF8T1c3CysW88InVKaan0Cf +jGOgy1f/lc6dxPgoS5014Uvy3Jk3HadceTVsTNtWx2AWDMobLAtYm4IBmjC/g== X-Gm-Gg: AYBFou0EUoloDDtxkpwELxdbixGsZS88Fa6gHAkvoydsVDLjbiAFPV1SjFvo00S/gIM QBgbjA6l8iaaRsuhIQokVgwwUfSrJk78pZrXbmivTVZjWqZeXjk1c1G3S4Q6FVh3i5cwtXtI7qo j/TT+Kbl0Ep4q/3lr2HXBdanR/pSqN9uz1tPFQphwESDrxBOrX7KXQnrLLSEfyHR71F1x+3TG23 oIhh1GUUHFZaS33hqYn92FmcldzqFga0FiSwMUYHHrcQ+z7NNj2C9A+u1Gyx6NH4z4oEPd799JM sMX/3iJ+NjQ1VBmwMwDw5Bu1jTFQkxtUXgR4/AdRLkQbTWCg+79CRVDEDSDB14mfvrjGxi2GeWo u8Ej4XPhyU0mQhRU2FpPynxjEtznCS3edMBsoUsEMVRJaO1hC6g/QO9ulUcxXp2TjYWM0C3OL6/ P21BMp3RfHPvZ95YhaZK4mhwmpOcL6UYIQhtPAdRH7Hr+ZiXRcSOzZCs9YtNv8lGbOpbROPWvvY RaFakHV6h/jJ5V9EKPfjA1diohSVXo= X-Received: by 2002:a17:902:e852:b0:2e9:7dda:bfd1 with SMTP id d9443c01a7336-2e9a69f9512mr33724315ad.30.1792288225442; Sat, 17 Oct 2026 18:50:25 -0700 (PDT) Received: from localhost.localdomain ([69.9.132.159]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2e97e87994bsm25005515ad.60.2026.10.17.18.50.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sat, 17 Oct 2026 18:50:24 -0700 (PDT) From: Tim Orling X-Google-Original-From: Tim Orling To: yocto-patches@lists.yoctoproject.org Cc: Tim Orling Subject: [error-report-web][PATCH 3/3] Add a GitHub Actions workflow to scan dependencies with Safety. Date: Sat, 17 Oct 2026 18:47:47 -0700 Message-ID: <20261018014924.73070-7-tim.orling@konsulko.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261018014924.73070-1-tim.orling@konsulko.com> References: <20261018014924.73070-1-tim.orling@konsulko.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sun, 18 Oct 2026 01:50:26 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto-patches/message/5053 Scan the packages installed in the image, weekly and on push, as layerindex-web does. Skipped without SAFETY_API_KEY. AI-Generated: Claude Opus 5.5 Signed-off-by: Tim Orling --- .github/workflows/safety.yml | 39 ++++++++++++++++++++++++++++++++++++ .safety-project.ini | 5 +++++ 2 files changed, 44 insertions(+) create mode 100644 .github/workflows/safety.yml create mode 100644 .safety-project.ini diff --git a/.github/workflows/safety.yml b/.github/workflows/safety.yml new file mode 100644 index 0000000..768229d --- /dev/null +++ b/.github/workflows/safety.yml @@ -0,0 +1,39 @@ +# SPDX-License-Identifier: MIT + +name: Safety + +on: + push: + branches: [master,master-next] + schedule: + - cron: '0 6 * * 1' + workflow_dispatch: + +permissions: + contents: read + +jobs: + scan: + runs-on: ubuntu-latest + timeout-minutes: 15 + env: + SAFETY_API_KEY: ${{ secrets.SAFETY_API_KEY }} + # Skipped where the secret isn't set, e.g. forks. + steps: + - uses: actions/checkout@v5 + + - name: Build image + if: env.SAFETY_API_KEY != '' + run: docker build -t error-report-web-test . + + # Scan what's installed, not requirements.txt ranges. + - name: Safety scan + if: env.SAFETY_API_KEY != '' + run: | + mkdir safety-scan + cp .safety-project.ini safety-scan/ + docker run --rm error-report-web-test pip3 freeze > safety-scan/requirements.txt + # typer pinned: newer releases break safety 3.7.0 ("no active click context") + python3 -m venv /tmp/safety + /tmp/safety/bin/pip install -q safety==3.7.0 typer==0.23.0 + /tmp/safety/bin/safety scan --target safety-scan --detailed-output diff --git a/.safety-project.ini b/.safety-project.ini new file mode 100644 index 0000000..29b7a3b --- /dev/null +++ b/.safety-project.ini @@ -0,0 +1,5 @@ +[project] +id = error-report-web +url = /codebases/error-report-web/findings +name = error-report-web +