Skip to content

Commit 1d107bc

Browse files
replace opt dependencies with dep groups (#1170)
1 parent f16a91c commit 1d107bc

File tree

9 files changed

+53
-35
lines changed

9 files changed

+53
-35
lines changed

.github/workflows/build-docs.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,9 @@ jobs:
1818
python-version: '3.13'
1919

2020
- name: Install Dev dependencies
21-
run: |
22-
pip3 install --disable-pip-version-check -e .[doc]
21+
run: >
22+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
23+
pip3 install --disable-pip-version-check --group doc
2324
2425
- name: Build HTML
2526
run: |

.github/workflows/build-package.yml

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,9 @@ jobs:
3232
python-version: '3.13'
3333

3434
- name: Install Dev dependencies
35-
run: |
36-
pip3 install --disable-pip-version-check -e .[dev]
35+
run: >
36+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
37+
pip3 install --disable-pip-version-check -e . --group dev
3738
3839
- name: Build Python Wheel
3940
run: |
@@ -72,6 +73,7 @@ jobs:
7273
- name: Install Dev dependencies
7374
run: >
7475
export DEBIAN_FRONTEND=noninteractive && sudo apt-get update && sudo apt-get install -y tzdata locales-all &&
76+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
7577
pip3 install --disable-pip-version-check -e .
7678
7779
- name: Get Version
@@ -112,6 +114,7 @@ jobs:
112114
export MUSL_LOCPATH="/usr/share/i18n/locales/musl" &&
113115
apk add --update tzdata musl-locales musl-locales-lang &&
114116
cd /work &&
117+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
115118
pip3 install . &&
116119
TZ=America/Los_Angeles LC_ALL=ru_RU.UTF-8 icloudpd --use-os-locale --version 1>.result
117120
@@ -282,8 +285,9 @@ jobs:
282285
python-version: '3.13'
283286

284287
- name: Install Dev dependencies
285-
run: |
286-
pip3 install --disable-pip-version-check .[dev]
288+
run: >
289+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
290+
pip3 install --disable-pip-version-check --group dev
287291
288292
- name: Build Dummy Python Wheel
289293
run: |
@@ -323,8 +327,9 @@ jobs:
323327
python-version: '3.13'
324328

325329
- name: Install Dev dependencies
326-
run: |
327-
pip3 install --disable-pip-version-check .[dev]
330+
run: >
331+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
332+
pip3 install --disable-pip-version-check --group dev
328333
329334
- name: Build Dummy Python Wheel
330335
run: |
@@ -363,8 +368,9 @@ jobs:
363368
python-version: '3.13'
364369

365370
- name: Install Dev dependencies
366-
run: |
367-
pip3 install --disable-pip-version-check .[dev]
371+
run: >
372+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
373+
pip3 install --disable-pip-version-check --group dev
368374
369375
- name: Build Dummy Python Wheel
370376
run: |
@@ -403,8 +409,9 @@ jobs:
403409
python-version: '3.13'
404410

405411
- name: Install Dev dependencies
406-
run: |
407-
pip3 install --disable-pip-version-check .[dev]
412+
run: >
413+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
414+
pip3 install --disable-pip-version-check --group dev
408415
409416
- name: Build Dummy Python Wheel
410417
run: |
@@ -528,8 +535,9 @@ jobs:
528535
python-version: '3.13'
529536

530537
- name: Install Dev dependencies
531-
run: |
532-
pip3 install --disable-pip-version-check -e .[dev]
538+
run: >
539+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
540+
pip3 install --disable-pip-version-check -e . --group dev
533541
534542
- name: Build Release Executables
535543
run: |
@@ -575,8 +583,9 @@ jobs:
575583
python-version: '3.13'
576584

577585
- name: Install Dev dependencies
578-
run: |
579-
pip3 install --disable-pip-version-check -e .[dev]
586+
run: >
587+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
588+
pip3 install --disable-pip-version-check -e . --group dev
580589
581590
- name: Build Release Executables
582591
run: |

.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ jobs:
9797

9898
- name: Install Dev dependencies
9999
run: |
100-
pip3 install -e .[dev]
100+
pip3 install --group dev
101101
102102
- name: Download artifacts (src)
103103
uses: actions/download-artifact@v4

.github/workflows/quality-checks.yml

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,9 @@ jobs:
4141
with:
4242
python-version: ${{ matrix.python-version }}
4343
- name: Install Test dependencies
44-
run: |
45-
pip3 install --disable-pip-version-check .[test]
44+
run: >
45+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
46+
pip3 install --disable-pip-version-check . --group test
4647
4748
- name: Lint
4849
run: |
@@ -63,8 +64,9 @@ jobs:
6364
python-version: ${{ matrix.python-version }}
6465
cache: 'pip'
6566
- name: Install Test dependencies
66-
run: |
67-
pip3 install --disable-pip-version-check .[test]
67+
run: >
68+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
69+
pip3 install --disable-pip-version-check . --group test
6870
- name: Type Check
6971
run: |
7072
scripts/type_check
@@ -102,8 +104,9 @@ jobs:
102104
cache: 'pip'
103105

104106
- name: Install Test dependencies
105-
run: |
106-
pip3 install --disable-pip-version-check .[test]
107+
run: >
108+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
109+
pip3 install --disable-pip-version-check . --group test
107110
108111
- name: Test
109112
run: |
@@ -143,8 +146,9 @@ jobs:
143146
cache: 'pip'
144147

145148
- name: Install Test dependencies
146-
run: |
147-
pip3 install --disable-pip-version-check .[test]
149+
run: >
150+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt &&
151+
pip3 install --disable-pip-version-check . --group test
148152
149153
- name: Test
150154
run: |

Dockerfile.build

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ ARG TARGETVARIANT
4444
WORKDIR /app
4545
COPY LICENSE.md .
4646
COPY README_PYPI.md .
47+
COPY requirements-pip.txt .
4748
COPY scripts scripts/
4849
COPY binary_dist binary_dist/
4950
COPY pyproject.toml .
@@ -62,7 +63,8 @@ RUN \
6263
. .venv/bin/activate && \
6364
echo "List pip cache..." && \
6465
pip3 cache list && \
65-
pip3 install --disable-pip-version-check .[dev,devlinux] && \
66+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt && \
67+
pip3 install --disable-pip-version-check . --group dev --group devlinux && \
6668
BOOTLOADER_CC=musl-gcc pip3 install --disable-pip-version-check staticx==0.14.1
6769
RUN \
6870
. .venv/bin/activate && \

Dockerfile.build-musl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ ARG QEMU_CPU
3333
WORKDIR /app
3434
COPY LICENSE.md .
3535
COPY README_PYPI.md .
36+
COPY requirements-pip.txt .
3637
COPY scripts scripts/
3738
COPY binary_dist binary_dist/
3839
COPY pyproject.toml .
@@ -43,7 +44,8 @@ RUN \
4344
--mount=type=cache,target=/root/.cache/pip,sharing=shared \
4445
python3 -m venv .venv && \
4546
. .venv/bin/activate && \
46-
pip3 install --disable-pip-version-check .[dev,devlinux]
47+
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt && \
48+
pip3 install --disable-pip-version-check . --group dev --group devlinux
4749
RUN \
4850
. .venv/bin/activate && \
4951
scripts/build_bin2 icloudpd icloud && \

pyproject.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,18 +43,18 @@ dependencies = [
4343
"srp==1.0.22",
4444
]
4545

46-
[project.optional-dependencies]
47-
dev = [
48-
"twine==6.1.0",
49-
"pyinstaller==6.14.0",
50-
"wheel==0.45.1",
51-
]
46+
[dependency-groups]
5247
doc = [
5348
"furo==2024.8.6",
5449
"Sphinx==7.4.7",
5550
"sphinx-autobuild==2024.10.3",
5651
"myst-parser==3.0.1"
5752
]
53+
dev = [
54+
"twine==6.1.0",
55+
"pyinstaller==6.14.0",
56+
"wheel==0.45.1",
57+
]
5858
devlinux = [
5959
"auditwheel==6.4.0",
6060
#"staticx==0.14.1",

requirements-pip.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
pip>=24.3.1,<25
1+
pip>=25.1

scripts/install_deps

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
# this is used to setup development env (all required dependencies for all cases)
33
set -euo pipefail
44
python3 -m pip install --disable-pip-version-check -r requirements-pip.txt
5-
pip3 install --disable-pip-version-check -e .[test,dev]
5+
pip3 install --disable-pip-version-check -e . --group test --group dev

0 commit comments

Comments
 (0)