Skip to content

Commit 88d9247

Browse files
committed
uv!
1 parent 3ace8a2 commit 88d9247

File tree

5 files changed

+2279
-3963
lines changed

5 files changed

+2279
-3963
lines changed

Makefile

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
manage = poetry run python src/manage.py
1+
manage = uv run python src/manage.py
22
SIMULTANEOUS_TEST_JOBS=4
33

44
compilemessages:
55
$(manage) compilemessages
66

77
fmt:
8-
poetry run ruff format src
9-
poetry run ruff check src --fix --unsafe-fixes
10-
poetry run toml-sort pyproject.toml
8+
uv run ruff format src
9+
uv run ruff check src --fix --unsafe-fixes
10+
uv run toml-sort pyproject.toml
1111

1212
lint:
13-
poetry run ruff format --check src
14-
poetry run ruff check src
15-
poetry run mypy src
13+
uv run ruff format --check src
14+
uv run ruff check src
15+
uv run mypy src
1616
$(manage) makemigrations --check --no-input --dry-run
1717
$(manage) check --fail-level WARNING
1818
$(manage) spectacular --api-version v1 --fail-on-warn > /dev/null
19-
poetry run toml-sort pyproject.toml --check
20-
poetry run pymarkdown scan README.md
19+
uv run toml-sort pyproject.toml --check
20+
uv run pymarkdown scan README.md
2121
@if command -v hadolint >/dev/null 2>&1; then \
2222
echo Running hadolint...; \
2323
hadolint Dockerfile; \
@@ -35,9 +35,9 @@ server: compilemessages
3535
$(manage) runserver
3636

3737
test:
38-
cd src && poetry run pytest -n ${SIMULTANEOUS_TEST_JOBS} --create-db --cov-report=xml --cov=. --junit-xml=junit-multithread.xml -m 'not single_thread'
39-
cd src && poetry run pytest --create-db --cov-report=xml --cov=. --cov-append --junit-xml=junit-singlethread.xml -m 'single_thread'
40-
cd src && poetry run pytest --dead-fixtures
38+
cd src && uv run pytest -n ${SIMULTANEOUS_TEST_JOBS} --create-db --cov-report=xml --cov=. --junit-xml=junit-multithread.xml -m 'not single_thread'
39+
cd src && uv run pytest --create-db --cov-report=xml --cov=. --cov-append --junit-xml=junit-singlethread.xml -m 'single_thread'
40+
cd src && uv run pytest --dead-fixtures
4141

4242
worker:
43-
poetry run celery --app core --workdir src worker --events --purge
43+
uv run celery --app core --workdir src worker --events --purge

mypy.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ plugins =
1818
mypy_drf_plugin.main,
1919
mypy_django_plugin.main
2020

21-
exclude = .*\/migrations\/.*
21+
exclude = .*\/migrations\/.*|\.venv\/.*
2222

2323
[mypy.plugins.django-stubs]
2424
django_settings_module = "core.settings"

poetry.lock

Lines changed: 0 additions & 3861 deletions
This file was deleted.

pyproject.toml

Lines changed: 80 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1,98 +1,90 @@
1-
[build-system]
2-
build-backend = "poetry.core.masonry.api"
3-
requires = ["poetry-core"]
4-
51
[project]
62
authors = [
7-
{email = "[email protected]>", name = "Fedor Borshev"},
3+
{email = "[email protected]", name = "Fedor Borshev"},
4+
]
5+
dependencies = [
6+
"babel>=2.12.1,<3.0.0",
7+
"bcrypt>=4.0.1,<5.0.0",
8+
"bleach>=6.0.0,<7.0.0",
9+
"boto3>=1.28.48,<2.0.0",
10+
"celery==5.5.3",
11+
"cmarkgfm>=2024.0.0,<2025.0.0",
12+
"dj-rest-auth>=7.0.0,<8.0.0",
13+
"django-admin-sortable2>=2.2.4,<3.0.0",
14+
"django-anymail>=13.0.0,<14.0.0",
15+
"django-axes>=8.0.0,<9.0.0",
16+
"django-behaviors>=0.5.1,<1.0.0",
17+
"django-cachalot>=2.6.1,<3.0.0",
18+
"django-cors-headers>=4.2.0,<5.0.0",
19+
"django-debug-toolbar>=6.0.0,<7.0.0",
20+
"django-environ>=0.12.0,<1.0.0",
21+
"django-filter>=23.2,<24.0",
22+
"django-healthchecks>=1.5.0,<2.0.0",
23+
"django-ipware>=7.0.0,<8.0.0",
24+
"django-prettyjson>=0.4.1,<1.0.0",
25+
"django-silk>=5.3.2,<6.0.0",
26+
"django-split-settings>=1.2.0,<2.0.0",
27+
"django-storages>=1.14,<2.0",
28+
"django-tree-queries>=0.20.0,<1.0.0",
29+
"django>=4.2.5,<5.0.0",
30+
"djangorestframework>=3.14.0,<4.0.0",
31+
"drf-jwt>=1.19.2,<2.0.0",
32+
"drf-spectacular[sidecar]>=0.28.0,<1.0.0",
33+
"emoji>=2.8.0,<3.0.0",
34+
"geoip2fast>=1.2.2,<2.0.0",
35+
"httpx[http2]>=0.27.0,<1.0.0",
36+
"pillow>=11.3.0,<12.0.0",
37+
"psycopg2-binary>=2.9.7,<3.0.0",
38+
"python-benedict>=0.34.0,<1.0.0",
39+
"redis>=6.0.0,<7.0.0",
40+
"retry>=0.9.2,<1.0.0",
41+
"sentry-sdk>=2.0.0,<3.0.0",
42+
"shortuuid>=1.0.11,<2.0.0",
43+
"simplejson>=3.19.1,<4.0.0",
44+
"stripe>=12.0.0,<13.0.0",
45+
"tqdm>=4.67.1,<5.0.0",
46+
"whitenoise>=6.5.0,<7.0.0",
847
]
948
description = ""
10-
dynamic = ["dependencies"]
1149
name = "education-backend"
1250
readme = "README.md"
13-
requires-python = "~=3.11"
14-
version = "2023.10.20"
15-
16-
[tool.poetry.dependencies]
17-
babel = "^2.12.1"
18-
bcrypt = "^4.0.1"
19-
bleach = "^6.0.0"
20-
boto3 = "^1.28.48"
21-
celery = "5.5.3"
22-
cmarkgfm = "^2024.0.0"
23-
dj-rest-auth = "^7.0.0"
24-
django = "^4.2.5"
25-
django-admin-sortable2 = "^2.2.4"
26-
django-anymail = "^13.0.0"
27-
django-axes = "^8.0.0"
28-
django-behaviors = "^0.5.1"
29-
django-cachalot = "^2.6.1"
30-
django-cors-headers = "^4.2.0"
31-
django-debug-toolbar = "^6.0.0"
32-
django-environ = "^0.12.0"
33-
django-filter = "^23.2"
34-
django-healthchecks = "^1.5.0"
35-
django-ipware = "^7.0.0"
36-
django-prettyjson = "^0.4.1"
37-
django-silk = "^5.3.2"
38-
django-split-settings = "^1.2.0"
39-
django-storages = "^1.14"
40-
django-tree-queries = "^0.20.0"
41-
djangorestframework = "^3.14.0"
42-
drf-jwt = "^1.19.2"
43-
drf-spectacular = {extras = ["sidecar"], version = "^0.28.0"}
44-
emoji = "^2.8.0"
45-
geoip2fast = "^1.2.2"
46-
httpx = {extras = ["http2"], version = "^0.27.0"}
47-
pillow = "^11.3.0"
48-
psycopg2-binary = "^2.9.7"
49-
python = "~=3.11"
50-
python-benedict = "^0.34.0"
51-
redis = "^6.0.0"
52-
retry = "^0.9.2"
53-
sentry-sdk = "^2.0.0"
54-
shortuuid = "^1.0.11"
55-
simplejson = "^3.19.1"
56-
stripe = "^12.0.0"
57-
tqdm = "^4.67.1"
58-
whitenoise = "^6.5.0"
51+
requires-python = "~=3.12.0"
52+
version = "2025.08.29"
5953

60-
[tool.poetry.group.dev.dependencies]
61-
boto3-stubs = "^1.28.48"
62-
django-stubs = "^4.2.6"
63-
djangorestframework-stubs = "^3.14.4"
64-
freezegun = "^1.2.2"
65-
ipython = "^9.0.0"
66-
jedi = "^0.19.0"
67-
mixer = "^7.2.2"
68-
mypy = "^1.6.1"
69-
pymarkdownlnt = "^0.9.13.4"
70-
pytest-cov = "^6.0.0"
71-
pytest-deadfixtures = "^2.2.1"
72-
pytest-django = "^4.5.2"
73-
pytest-env = "^1.0.1"
74-
pytest-freezegun = "^0.4.2"
75-
pytest-mock = "^3.11.1"
76-
pytest-randomly = "^3.15.0"
77-
pytest-repeat = "^0.9.1"
78-
pytest-xdist = "^3.3.1"
79-
requests-mock = "^1.11.0"
80-
respx = "^0.22.0"
81-
rope = "^1.10.0"
82-
ruff = "^0.12.0"
83-
toml-sort = "^0.24.0"
84-
types-babel = "^2.11.0.15"
85-
types-bleach = "^6.0.0.4"
86-
types-freezegun = "^1.1.10"
87-
types-markdown = "^3.4.2.10"
88-
types-pillow = "^10.0.0.3"
89-
types-requests = "^2.31.0.2"
90-
types-retry = "^0.9.9.4"
91-
types-simplejson = "^3.19.0.2"
92-
types-stripe = "^3.5.2.14"
93-
94-
[tool.poetry.requires-plugins]
95-
poetry-plugin-export = "^1.9.0"
54+
[project.optional-dependencies]
55+
dev = [
56+
"boto3-stubs>=1.28.48,<2.0.0",
57+
"django-stubs>=4.2.6,<5.0.0",
58+
"djangorestframework-stubs>=3.14.4,<4.0.0",
59+
"ipython>=9.0.0,<10.0.0",
60+
"jedi>=0.19.0,<1.0.0",
61+
"mixer>=7.2.2,<8.0.0",
62+
"mypy>=1.6.1,<2.0.0",
63+
"pymarkdownlnt>=0.9.13.4,<1.0.0",
64+
"pytest-cov>=6.0.0,<7.0.0",
65+
"pytest-deadfixtures>=2.2.1,<3.0.0",
66+
"pytest-django>=4.5.2,<5.0.0",
67+
"pytest-env>=1.0.1,<2.0.0",
68+
"pytest-freezer>=0.4.9,<1.0.0",
69+
"pytest-mock>=3.11.1,<4.0.0",
70+
"pytest-randomly>=3.15.0,<4.0.0",
71+
"pytest-repeat>=0.9.1,<1.0.0",
72+
"pytest-xdist>=3.3.1,<4.0.0",
73+
"requests-mock>=1.11.0,<2.0.0",
74+
"respx>=0.22.0,<1.0.0",
75+
"rope>=1.10.0,<2.0.0",
76+
"ruff>=0.12.0,<1.0.0",
77+
"toml-sort>=0.24.0,<1.0.0",
78+
"types-babel>=2.11.0.15,<3.0.0",
79+
"types-bleach>=6.0.0.4,<7.0.0",
80+
"types-freezegun>=1.1.10,<2.0.0",
81+
"types-markdown>=3.4.2.10,<4.0.0",
82+
"types-pillow>=10.0.0.3,<11.0.0",
83+
"types-requests>=2.31.0.2,<3.0.0",
84+
"types-retry>=0.9.9.4,<1.0.0",
85+
"types-simplejson>=3.19.0.2,<4.0.0",
86+
"types-stripe>=3.5.2.14,<4.0.0",
87+
]
9688

9789
[tool.pymarkdown.plugins.md013]
9890
enabled = false

0 commit comments

Comments
 (0)