chore: upgrade deps
This commit is contained in:
@@ -162,4 +162,6 @@ data/
|
|||||||
*.db
|
*.db
|
||||||
junit.xml
|
junit.xml
|
||||||
|
|
||||||
|
tailwindcss
|
||||||
|
|
||||||
# End of https://www.toptal.com/developers/gitignore/api/django
|
# End of https://www.toptal.com/developers/gitignore/api/django
|
||||||
|
|||||||
+4
-3
@@ -2,19 +2,20 @@ FROM python:3.13-slim
|
|||||||
|
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||||||
ENV PYTHONUNBUFFERED=1
|
ENV PYTHONUNBUFFERED=1
|
||||||
|
ENV UV_SYSTEM_PYTHON=1
|
||||||
|
|
||||||
RUN mkdir /code
|
RUN mkdir /code
|
||||||
|
|
||||||
WORKDIR /code
|
WORKDIR /code
|
||||||
COPY requirements.txt /code
|
COPY pyproject.toml /code
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y gcc git nginx gettext vim libpq-dev && \
|
apt-get install -y gcc git nginx gettext vim libpq-dev && \
|
||||||
pip install -r requirements.txt && \
|
pip install uv && \
|
||||||
|
uv pip install -r pyproject.toml && \
|
||||||
apt-get autoremove -y
|
apt-get autoremove -y
|
||||||
|
|
||||||
COPY . /code
|
COPY . /code
|
||||||
COPY nginx/nginx.conf /etc/nginx/sites-enabled/default
|
|
||||||
|
|
||||||
RUN ["sh", "scripts/build_static.sh"]
|
RUN ["sh", "scripts/build_static.sh"]
|
||||||
CMD ["sh", "./scripts/run.sh"]
|
CMD ["sh", "./scripts/run.sh"]
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ PROJECT_MIDDLEWARE = []
|
|||||||
|
|
||||||
DJANGO_MIDDLEWARE = [
|
DJANGO_MIDDLEWARE = [
|
||||||
'django.middleware.security.SecurityMiddleware',
|
'django.middleware.security.SecurityMiddleware',
|
||||||
|
'whitenoise.middleware.WhiteNoiseMiddleware',
|
||||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||||
'corsheaders.middleware.CorsMiddleware',
|
'corsheaders.middleware.CorsMiddleware',
|
||||||
'django.middleware.common.CommonMiddleware',
|
'django.middleware.common.CommonMiddleware',
|
||||||
@@ -130,7 +131,7 @@ LOGIN_REDIRECT_URL = '/login/'
|
|||||||
|
|
||||||
STORAGES = {
|
STORAGES = {
|
||||||
'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'},
|
'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'},
|
||||||
'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'},
|
'staticfiles': {'BACKEND': 'whitenoise.storage.CompressedManifestStaticFilesStorage'},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ services:
|
|||||||
- "./data:/var/lib/postgres/data"
|
- "./data:/var/lib/postgres/data"
|
||||||
|
|
||||||
minio:
|
minio:
|
||||||
image: bitnami/minio:latest
|
image: minio/minio:latest
|
||||||
ports:
|
ports:
|
||||||
- "9001:9000"
|
- "9001:9000"
|
||||||
- "9002:9001"
|
- "9002:9001"
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@ services:
|
|||||||
- "./data/postgres:/var/lib/postgres/data"
|
- "./data/postgres:/var/lib/postgres/data"
|
||||||
|
|
||||||
minio:
|
minio:
|
||||||
image: bitnami/minio:latest
|
image: minio/minio:latest
|
||||||
ports:
|
ports:
|
||||||
- "9190:9000"
|
- "9190:9000"
|
||||||
- "9191:9001"
|
- "9191:9001"
|
||||||
|
|||||||
+11
-9
@@ -7,32 +7,35 @@ requires-python = ">=3.13"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"boto3==1.34.105",
|
"boto3==1.34.105",
|
||||||
"celery==5.4.0",
|
"celery==5.4.0",
|
||||||
"dj-database-url==1.0.0",
|
"django==6.0.2",
|
||||||
"django==5.1.4",
|
"django-celery-beat==2.9.0",
|
||||||
"django-celery-beat==2.7.0",
|
|
||||||
"django-cors-headers==3.13.0",
|
"django-cors-headers==3.13.0",
|
||||||
"django-cryptography==1.1",
|
"django-cryptography==1.1",
|
||||||
"django-debug-toolbar==4.4.6",
|
"django-debug-toolbar==4.4.6",
|
||||||
"django-environ==0.10.0",
|
"django-environ==0.10.0",
|
||||||
"django-extensions==3.2.0",
|
"django-extensions==3.2.0",
|
||||||
"django-filter==24.3",
|
"django-filter==24.3",
|
||||||
|
"django-environ==0.10.0",
|
||||||
|
"django-watchman==1.3.0",
|
||||||
"django-silk==5.1.0",
|
"django-silk==5.1.0",
|
||||||
"django-storages==1.13.2",
|
"django-storages==1.13.2",
|
||||||
"django-unfold==0.42.0",
|
"django-unfold==0.42.0",
|
||||||
"django-watchman==1.3.0",
|
"django-watchman==1.3.0",
|
||||||
"djangorestframework==3.15.2",
|
"djangorestframework==3.15.2",
|
||||||
|
"dj-database-url==1.0.0",
|
||||||
"djangorestframework-simplejwt==5.4.0",
|
"djangorestframework-simplejwt==5.4.0",
|
||||||
"drf-spectacular==0.26.1",
|
"drf-spectacular==0.26.1",
|
||||||
"gonk==0.6.1",
|
"gonk==0.6.1",
|
||||||
"ipython==8.16.1",
|
"ipython==8.16.1",
|
||||||
"pillow==11.0.0",
|
"Pillow==11.0.0",
|
||||||
"psycopg2-binary==2.9.10",
|
"psycopg2-binary==2.9.10",
|
||||||
"pydes==2.0.1",
|
"pyDes==2.0.1",
|
||||||
"pytailwindcss==0.2.0",
|
|
||||||
"redis==4.5.4",
|
"redis==4.5.4",
|
||||||
"requests==2.32.3",
|
"requests==2.32.4",
|
||||||
|
"pytailwindcss==0.2.0",
|
||||||
"uvicorn==0.21.1",
|
"uvicorn==0.21.1",
|
||||||
"xmltodict==0.13.0",
|
"xmltodict==0.13.0",
|
||||||
|
"whitenoise==6.11.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.ruff]
|
[tool.ruff]
|
||||||
@@ -88,10 +91,9 @@ venv = ".venv"
|
|||||||
dev = [
|
dev = [
|
||||||
"coverage==7.2.3",
|
"coverage==7.2.3",
|
||||||
"django-browser-reload==1.17.0",
|
"django-browser-reload==1.17.0",
|
||||||
"django-celery-beat==2.7.0",
|
|
||||||
"django-debug-toolbar==4.4.6",
|
"django-debug-toolbar==4.4.6",
|
||||||
"django-silk==5.1.0",
|
"django-silk==5.1.0",
|
||||||
"pytest==7.3.0",
|
"pytest==9.0.2",
|
||||||
"pytest-cov==4.0.0",
|
"pytest-cov==4.0.0",
|
||||||
"pytest-django==4.8.0",
|
"pytest-django==4.8.0",
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
-r requirements.txt
|
-r requirements.txt
|
||||||
pytest==7.3.0
|
pytest==9.0.2
|
||||||
pytest-django==4.8.0
|
pytest-django==4.8.0
|
||||||
coverage==7.2.3
|
coverage==7.2.3
|
||||||
pytest-cov==4.0.0
|
pytest-cov==4.0.0
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
boto3==1.34.105
|
boto3==1.34.105
|
||||||
celery==5.4.0
|
celery==5.4.0
|
||||||
django==5.1.4
|
django==5.2.10
|
||||||
django-celery-beat==2.7.0
|
django-celery-beat==2.8.1
|
||||||
django-cors-headers==3.13.0
|
django-cors-headers==3.13.0
|
||||||
django-cryptography==1.1
|
django-cryptography==1.1
|
||||||
django-debug-toolbar==4.4.6
|
django-debug-toolbar==4.4.6
|
||||||
@@ -22,7 +22,7 @@ Pillow==11.0.0
|
|||||||
psycopg2-binary==2.9.10
|
psycopg2-binary==2.9.10
|
||||||
pyDes==2.0.1
|
pyDes==2.0.1
|
||||||
redis==4.5.4
|
redis==4.5.4
|
||||||
requests==2.32.3
|
requests==2.32.4
|
||||||
pytailwindcss==0.2.0
|
pytailwindcss==0.2.0
|
||||||
uvicorn==0.21.1
|
uvicorn==0.21.1
|
||||||
xmltodict==0.13.0
|
xmltodict==0.13.0
|
||||||
|
|||||||
@@ -12,10 +12,8 @@ python manage.py compilemessages
|
|||||||
python manage.py build_tailwind_theme
|
python manage.py build_tailwind_theme
|
||||||
|
|
||||||
if [ $RUN_SERVER = "TRUE" ]; then
|
if [ $RUN_SERVER = "TRUE" ]; then
|
||||||
service nginx start
|
|
||||||
uvicorn --workers $ASGI_WORKERS --host $ASGI_HOST --port $ASGI_PORT config.asgi:application
|
uvicorn --workers $ASGI_WORKERS --host $ASGI_HOST --port $ASGI_PORT config.asgi:application
|
||||||
elif [ $RUN_CELERY = "TRUE" ]; then
|
elif [ $RUN_CELERY = "TRUE" ]; then
|
||||||
service nginx stop
|
|
||||||
celery -A config worker
|
celery -A config worker
|
||||||
else
|
else
|
||||||
echo "You have to set RUN_CELERY or RUN_SERVER to TRUE"
|
echo "You have to set RUN_CELERY or RUN_SERVER to TRUE"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -6,59 +6,41 @@
|
|||||||
{% block main %}
|
{% block main %}
|
||||||
{% include 'components/generic/navbar.html' %}
|
{% include 'components/generic/navbar.html' %}
|
||||||
|
|
||||||
<section class="min-w-full py-8 bg-white md:py-16 dark:bg-gray-900 antialiased">
|
<section class="min-w-full py-8 bg-white md:py-16 antialiased">
|
||||||
<div class="max-w-screen-xl px-4 mx-auto 2xl:px-0">
|
<div class="max-w-screen-xl px-4 mx-auto 2xl:px-0">
|
||||||
<div class="lg:grid lg:grid-cols-2 lg:gap-8 xl:gap-16">
|
<div class="lg:grid lg:grid-cols-2 lg:gap-8 xl:gap-16">
|
||||||
<div class="shrink-0 max-w-md lg:max-w-lg mx-auto">
|
<div class="shrink-0 max-w-md lg:max-w-lg mx-auto">
|
||||||
|
|
||||||
<sl-carousel pagination navigation mouse-dragging style="--aspect-ratio: 1/1;">
|
<div class="carousel w-full">
|
||||||
{% for image in product.images.all %}
|
{% for image in product.images.all %}
|
||||||
<sl-carousel-item>
|
|
||||||
<img
|
<div id="product-image-{{ forloop.counter }}" class="carousel-item w-full">
|
||||||
alt="{{ product.name }}"
|
<img class="carousel-item w-full " src="{{ image.xl.url }}"
|
||||||
src="{{ image.xl.url }}"
|
alt="{{ product.name }}"/>
|
||||||
/>
|
</div>
|
||||||
</sl-carousel-item>
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</sl-carousel>
|
|
||||||
|
</div>
|
||||||
|
<div class="flex w-full justify-center gap-2 py-2">
|
||||||
|
{% for image in product.images.all %}
|
||||||
|
<a href="#product-image-{{ forloop.counter }}" class="btn btn-xs">{{ forloop.counter }}</a>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="my-4 sm:m-8 lg:m-0">
|
<div class="my-4 sm:m-8 lg:m-0">
|
||||||
<h1 class="text-xl font-semibold text-gray-900 sm:text-2xl dark:text-white">
|
|
||||||
|
<h1 class="text-xl font-semibold text-gray-900 sm:text-2xl ">
|
||||||
{{ product.name }}
|
{{ product.name }}
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<div class="my-4 sm:items-center sm:gap-4 sm:flex">
|
<div class="my-4 sm:items-center sm:gap-4 sm:flex">
|
||||||
<p
|
<p
|
||||||
class="text-2xl font-extrabold text-gray-900 sm:text-3xl dark:text-white"
|
class="text-2xl font-extrabold text-gray-900 sm:text-3xl "
|
||||||
>
|
>
|
||||||
{{ product.price.price_with_tax }} €
|
{{ product.price.price_with_tax }} €
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<sl-rating label="Rating" readonly value="3"></sl-rating>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<div class="flex items-center gap-2 mt-2 sm:mt-0">
|
|
||||||
<div class="flex items-center gap-1">
|
|
||||||
{% include 'components/icons/star.svg' %}
|
|
||||||
{% include 'components/icons/star.svg' %}
|
|
||||||
{% include 'components/icons/star.svg' %}
|
|
||||||
{% include 'components/icons/star.svg' %}
|
|
||||||
{% include 'components/icons/star.svg' %}
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<p
|
|
||||||
class="text-sm font-medium leading-none text-gray-500 dark:text-gray-400"
|
|
||||||
>
|
|
||||||
(5.0)
|
|
||||||
</p>
|
|
||||||
<a
|
|
||||||
href="#"
|
|
||||||
class="text-sm font-medium leading-none text-gray-900 underline hover:no-underline dark:text-white"
|
|
||||||
>
|
|
||||||
345 Reviews
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="my-4 sm:gap-4 items-center flex sm:m-8">
|
<div class="my-4 sm:gap-4 items-center flex sm:m-8">
|
||||||
|
|||||||
Reference in New Issue
Block a user