Skip to content

Commit ecd0f89

Browse files
authored
Merge pull request #186 from cogip/185-raspios-upgrade-base-image-to-debian-13-trixie-and-python-313
185 Raspios: upgrade base image to Debian 13 (Trixie) and Python 3.13
2 parents 75765a4 + 96c2d83 commit ecd0f89

File tree

234 files changed

+9267
-6384
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

234 files changed

+9267
-6384
lines changed

.github/workflows/code-quality-workflow.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,21 @@ jobs:
1313
ruff:
1414
runs-on: ubuntu-24.04
1515
steps:
16-
- uses: actions/checkout@v3
16+
- uses: actions/checkout@v6.0.1
1717
- uses: chartboost/ruff-action@v1
18+
19+
qmllint:
20+
runs-on: ubuntu-24.04
21+
steps:
22+
- uses: actions/checkout@v6.0.1
23+
- uses: actions/setup-python@v6.1.0
24+
with:
25+
python-version: '3.13'
26+
- name: Install dependencies
27+
run: pip install PySide6
28+
- name: Run qmllint
29+
run: pyside6-qmllint cogip/tools/monitor/*.qml
30+
- name: Check qml format
31+
run: |
32+
pyside6-qmlformat --inplace cogip/tools/monitor/*.qml
33+
git diff --exit-code

.github/workflows/mkdocs-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
- name: Install Debian dependencies
1313
run: |
1414
sudo apt-get update
15-
sudo apt-get install -qq libegl1
15+
sudo apt-get install -qq libegl1 libsystemd-dev swig liblgpio-dev libcap-dev
1616
1717
- name: Git checkout
1818
uses: actions/checkout@v4

.github/workflows/mkdocs-deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
- name: Install Debian dependencies
1212
run: |
1313
sudo apt-get update
14-
sudo apt-get install -qq libegl1
14+
sudo apt-get install -qq libegl1 libsystemd-dev swig liblgpio-dev libcap-dev
1515
1616
- name: Git checkout
1717
uses: actions/checkout@v4

.pre-commit-config.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,17 @@ repos:
77
- id: ruff
88
# Run the formatter.
99
- id: ruff-format
10+
11+
- repo: local
12+
hooks:
13+
- id: qmllint
14+
name: QML Lint
15+
entry: pyside6-qmllint
16+
language: system
17+
files: ^cogip/tools/monitor/.*\.qml$
18+
19+
- id: qmlformat
20+
name: QML Format
21+
entry: pyside6-qmlformat --inplace
22+
language: system
23+
files: ^cogip/tools/monitor/.*\.qml$

.python-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.12
1+
3.13

.qmlformat.ini

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
[General]
2+
FunctionsSpacing=true
3+
IndentWidth=4
4+
MaxColumnWidth=-1
5+
NewlineType=native
6+
NormalizeOrder=true
7+
ObjectsSpacing=true
8+
SemicolonRule=always
9+
SortImports=true
10+
UseTabs=false

.qmllint.ini

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
[General]
2+
DisableDefaultImports=false
3+
MaxWarnings=0
4+
5+
[Warnings]
6+
AccessSingletonViaObject=warning
7+
AliasCycle=warning
8+
AssignmentInCondition=warning
9+
AttachedPropertyReuse=disable
10+
BadSignalHandlerParameters=warning
11+
Comma=warning
12+
CompilerWarnings=disable
13+
ComponentChildrenCount=warning
14+
ConfusingExpressionStatement=warning
15+
ConfusingMinuses=warning
16+
ConfusingPluses=warning
17+
ContextProperties=warning
18+
Deprecated=warning
19+
DuplicateEnumEntries=warning
20+
DuplicateImport=warning
21+
DuplicateInlineComponent=warning
22+
DuplicatePropertyBinding=warning
23+
DuplicatedName=warning
24+
EnumEntryMatchesEnum=warning
25+
EnumsAreNotTypes=warning
26+
EqualityTypeCoercion=warning
27+
Eval=warning
28+
FunctionUsedBeforeDeclaration=disable
29+
ImportFailure=warning
30+
ImportFileSelector=disable
31+
IncompatibleType=warning
32+
InheritanceCycle=warning
33+
InvalidLintDirective=warning
34+
LintPluginWarnings=disable
35+
LiteralConstructor=warning
36+
MissingEnumEntry=warning
37+
MissingProperty=warning
38+
MissingType=warning
39+
MultilineStrings=info
40+
NonListProperty=warning
41+
NonRootEnum=warning
42+
PreferNonVarProperties=warning
43+
PrefixedImportType=warning
44+
QtDesignStudio.FunctionsNotSupportedInQmlUi=warning
45+
QtDesignStudio.ImperativeCodeNotEditableInVisualDesigner=warning
46+
QtDesignStudio.InvalidIdeInVisualDesigner=warning
47+
QtDesignStudio.ReferenceToParentItemNotSupportedByVisualDesigner=warning
48+
QtDesignStudio.UnsupportedRootTypeInQmlUi=warning
49+
QtDesignStudio.UnsupportedTypeInQmlUi=warning
50+
Quick.Anchors=warning
51+
Quick.AttachedPropertyReuse=disable
52+
Quick.AttachedPropertyType=warning
53+
Quick.Color=warning
54+
Quick.ControlsAttachedPropertyReuse=disable
55+
Quick.ControlsNativeCustomize=warning
56+
Quick.LayoutsPositioning=warning
57+
Quick.PropertyChangesParsed=warning
58+
Quick.StateNoChildItem=warning
59+
Quick.UnexpectedVarType=warning
60+
ReadOnlyProperty=warning
61+
RedundantOptionalChaining=warning
62+
RequiredProperty=warning
63+
RestrictedType=warning
64+
StalePropertyRead=warning
65+
TopLevelComponent=warning
66+
TranslationFunctionMismatch=warning
67+
UncreatableType=warning
68+
UnintentionalEmptyBlock=warning
69+
UnqualifiedAccess=warning
70+
UnreachableCode=warning
71+
UnresolvedAlias=warning
72+
UnresolvedType=warning
73+
UnterminatedCase=warning
74+
UnusedImports=warning
75+
UseProperFunction=warning
76+
VarUsedBeforeDeclaration=warning
77+
Void=disable
78+
WithStatement=warning

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ endif()
1212
# Python packages
1313
find_package(Python COMPONENTS Interpreter Development REQUIRED)
1414
find_package(
15-
Python 3.12
15+
Python 3.13
1616
REQUIRED COMPONENTS Interpreter Development.Module
1717
OPTIONAL_COMPONENTS Development.SABIModule
1818
)

Dockerfile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
FROM ubuntu:24.04 AS uv_base
1+
FROM ubuntu:25.10 AS uv_base
22

33
ENV DEBIAN_FRONTEND=noninteractive
44
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
55

66
RUN apt-get update \
77
&& apt-get -y dist-upgrade --auto-remove --purge \
8-
&& apt-get -y install curl wait-for-it git socat g++ pkg-config libserial-dev gosu \
8+
&& apt-get -y install curl wait-for-it git socat g++ pkg-config libserial-dev gosu libsystemd-dev swig liblgpio-dev python3-libcamera libcap-dev \
99
&& apt-get -y clean
1010

1111
WORKDIR /src
1212

1313
# Install uv
14-
RUN curl -LsSf https://astral.sh/uv/0.6.6/install.sh | env UV_INSTALL_DIR="/usr/local/bin" sh
14+
RUN curl -LsSf https://astral.sh/uv/0.9.15/install.sh | env UV_INSTALL_DIR="/usr/local/bin" sh
1515

1616
# Install Python in /opt so regular users can use it
1717
ENV UV_PYTHON_INSTALL_DIR=/opt/python
@@ -34,6 +34,7 @@ RUN apt-get update && \
3434
apt-get install -y \
3535
cmake \
3636
swig \
37+
libfontconfig1 \
3738
libgl1 \
3839
libglib2.0-0 \
3940
libegl1 \
@@ -63,7 +64,6 @@ RUN group_exists=$(getent group ${GID} || true) && echo $group_exists \
6364

6465
ADD .python-version uv.lock pyproject.toml CMakeLists.txt LICENSE /src/
6566
ADD cogip /src/cogip
66-
RUN uv sync
6767

6868
CMD ["sleep", "infinity"]
6969

@@ -86,7 +86,7 @@ RUN apt-get update && \
8686
CMD ["sleep", "infinity"]
8787

8888

89-
FROM debian:12 AS build_wheel
89+
FROM debian:13 AS build_wheel
9090

9191
ENV DEBIAN_FRONTEND=noninteractive
9292
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
@@ -99,7 +99,7 @@ RUN apt-get update \
9999
WORKDIR /src
100100

101101
# Install uv
102-
RUN curl -LsSf https://astral.sh/uv/0.6.6/install.sh | env UV_INSTALL_DIR="/usr/local/bin" sh
102+
RUN curl -LsSf https://astral.sh/uv/0.9.15/install.sh | env UV_INSTALL_DIR="/usr/local/bin" sh
103103
ENV UV_PYTHON_INSTALL_DIR=/opt/python
104104
ENV PATH="/src/.venv/bin:${PATH}"
105105

assets/add.png

322 Bytes
Loading

0 commit comments

Comments
 (0)