Bump dependencies (#841)

This commit is contained in:
Sascha Ißbrücker 2024-09-19 19:15:51 +02:00 committed by GitHub
parent 8544137a31
commit 3d8866c7bc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 42 additions and 44 deletions

View file

@ -2,7 +2,7 @@
// README at: https://github.com/devcontainers/templates/tree/main/src/python // README at: https://github.com/devcontainers/templates/tree/main/src/python
{ {
"name": "Python 3", "name": "Python 3",
"image": "mcr.microsoft.com/devcontainers/python:3.11", "image": "mcr.microsoft.com/devcontainers/python:3.12",
"features": { "features": {
"ghcr.io/devcontainers/features/node:1": {} "ghcr.io/devcontainers/features/node:1": {}
}, },

View file

@ -61,7 +61,7 @@ Small improvements, bugfixes and documentation improvements are always welcome.
The application is built using the Django web framework. You can get started by checking out the excellent [Django docs](https://docs.djangoproject.com/en/4.1/). The `bookmarks` folder contains the actual bookmark application, `siteroot` is the Django root application. Other than that the code should be self-explanatory / standard Django stuff 🙂. The application is built using the Django web framework. You can get started by checking out the excellent [Django docs](https://docs.djangoproject.com/en/4.1/). The `bookmarks` folder contains the actual bookmark application, `siteroot` is the Django root application. Other than that the code should be self-explanatory / standard Django stuff 🙂.
### Prerequisites ### Prerequisites
- Python 3.10 - Python 3.12
- Node.js - Node.js
### Setup ### Setup
@ -105,7 +105,7 @@ The frontend is now available under http://localhost:8000
Run all tests with pytest: Run all tests with pytest:
``` ```
pytest make test
``` ```
### Formatting ### Formatting

View file

@ -522,8 +522,7 @@ class BookmarkDetailsModalTestCase(TestCase, BookmarkFactoryMixin, HtmlTestMixin
soup = self.get_index_details_modal(bookmark) soup = self.get_index_details_modal(bookmark)
edit_link = soup.find("a", string="Edit") edit_link = soup.find("a", string="Edit")
self.assertIsNotNone(edit_link) self.assertIsNotNone(edit_link)
details_url = reverse("bookmarks:index") + f"?details={bookmark.id}" expected_url = f"/bookmarks/{bookmark.id}/edit?return_url=/bookmarks%3Fdetails%3D{bookmark.id}"
expected_url = "/bookmarks/1/edit?return_url=/bookmarks%3Fdetails%3D1"
self.assertEqual(expected_url, edit_link["href"]) self.assertEqual(expected_url, edit_link["href"])
def test_delete_button(self): def test_delete_button(self):

View file

@ -10,8 +10,7 @@ COPY bookmarks/styles ./bookmarks/styles
RUN npm run build RUN npm run build
# Use 3.11 for now, as django4-background-tasks doesn't work with 3.12 yet FROM python:3.12.6-alpine3.20 AS python-base
FROM python:3.11.8-alpine3.19 AS python-base
# Add required packages # Add required packages
# alpine-sdk linux-headers pkgconfig: build Python packages from source # alpine-sdk linux-headers pkgconfig: build Python packages from source
# libpq-dev: build Postgres client from source # libpq-dev: build Postgres client from source
@ -66,7 +65,7 @@ RUN wget https://www.sqlite.org/${SQLITE_RELEASE_YEAR}/sqlite-amalgamation-${SQL
gcc -fPIC -shared icu.c `pkg-config --libs --cflags icu-uc icu-io` -o libicu.so gcc -fPIC -shared icu.c `pkg-config --libs --cflags icu-uc icu-io` -o libicu.so
FROM python:3.11.8-alpine3.19 AS linkding FROM python:3.12.6-alpine3.20 AS linkding
LABEL org.opencontainers.image.source="https://github.com/sissbruecker/linkding" LABEL org.opencontainers.image.source="https://github.com/sissbruecker/linkding"
# install runtime dependencies # install runtime dependencies
RUN apk update && apk add bash curl icu libpq mailcap libssl3 RUN apk update && apk add bash curl icu libpq mailcap libssl3

View file

@ -10,8 +10,7 @@ COPY bookmarks/styles ./bookmarks/styles
RUN npm run build RUN npm run build
# Use 3.11 for now, as django4-background-tasks doesn't work with 3.12 yet FROM python:3.12.6-slim-bookworm AS python-base
FROM python:3.11.8-slim-bookworm AS python-base
# Add required packages # Add required packages
# build-essential pkg-config: build Python packages from source # build-essential pkg-config: build Python packages from source
# libpq-dev: build Postgres client from source # libpq-dev: build Postgres client from source
@ -68,7 +67,7 @@ RUN wget https://www.sqlite.org/${SQLITE_RELEASE_YEAR}/sqlite-amalgamation-${SQL
gcc -fPIC -shared icu.c `pkg-config --libs --cflags icu-uc icu-io` -o libicu.so gcc -fPIC -shared icu.c `pkg-config --libs --cflags icu-uc icu-io` -o libicu.so
FROM python:3.11.8-slim-bookworm as linkding FROM python:3.12.6-slim-bookworm as linkding
LABEL org.opencontainers.image.source="https://github.com/sissbruecker/linkding" LABEL org.opencontainers.image.source="https://github.com/sissbruecker/linkding"
RUN apt-get update && apt-get -y install mime-support libpq-dev libicu-dev libssl3 curl RUN apt-get update && apt-get -y install mime-support libpq-dev libicu-dev libssl3 curl
WORKDIR /etc/linkding WORKDIR /etc/linkding

View file

@ -1,20 +1,20 @@
# #
# This file is autogenerated by pip-compile with Python 3.11 # This file is autogenerated by pip-compile with Python 3.12
# by the following command: # by the following command:
# #
# pip-compile requirements.dev.in # pip-compile requirements.dev.in
# #
asgiref==3.7.2 asgiref==3.8.1
# via django # via django
black==24.3.0 black==24.8.0
# via -r requirements.dev.in # via -r requirements.dev.in
click==8.1.7 click==8.1.7
# via black # via black
coverage==7.4.1 coverage==7.6.1
# via -r requirements.dev.in # via -r requirements.dev.in
django==5.0.8 django==5.1.1
# via django-debug-toolbar # via django-debug-toolbar
django-debug-toolbar==4.2.0 django-debug-toolbar==4.4.6
# via -r requirements.dev.in # via -r requirements.dev.in
execnet==2.1.1 execnet==2.1.1
# via pytest-xdist # via pytest-xdist
@ -24,32 +24,32 @@ iniconfig==2.0.0
# via pytest # via pytest
mypy-extensions==1.0.0 mypy-extensions==1.0.0
# via black # via black
packaging==23.2 packaging==24.1
# via # via
# black # black
# pytest # pytest
pathspec==0.12.1 pathspec==0.12.1
# via black # via black
platformdirs==4.1.0 platformdirs==4.3.6
# via black # via black
playwright==1.41.1 playwright==1.47.0
# via -r requirements.dev.in # via -r requirements.dev.in
pluggy==1.4.0 pluggy==1.5.0
# via pytest # via pytest
pyee==11.0.1 pyee==12.0.0
# via playwright # via playwright
pytest==8.0.0 pytest==8.3.3
# via # via
# -r requirements.dev.in # -r requirements.dev.in
# pytest-django # pytest-django
# pytest-xdist # pytest-xdist
pytest-django==4.7.0 pytest-django==4.9.0
# via -r requirements.dev.in # via -r requirements.dev.in
pytest-xdist==3.6.1 pytest-xdist==3.6.1
# via -r requirements.dev.in # via -r requirements.dev.in
sqlparse==0.5.0 sqlparse==0.5.1
# via # via
# django # django
# django-debug-toolbar # django-debug-toolbar
typing-extensions==4.9.0 typing-extensions==4.12.2
# via pyee # via pyee

View file

@ -1,10 +1,10 @@
# #
# This file is autogenerated by pip-compile with Python 3.11 # This file is autogenerated by pip-compile with Python 3.12
# by the following command: # by the following command:
# #
# pip-compile requirements.in # pip-compile requirements.in
# #
asgiref==3.7.2 asgiref==3.8.1
# via django # via django
beautifulsoup4==4.12.3 beautifulsoup4==4.12.3
# via -r requirements.in # via -r requirements.in
@ -12,22 +12,22 @@ bleach==6.1.0
# via -r requirements.in # via -r requirements.in
bleach-allowlist==1.0.3 bleach-allowlist==1.0.3
# via -r requirements.in # via -r requirements.in
certifi==2024.7.4 certifi==2024.8.30
# via requests # via requests
cffi==1.16.0 cffi==1.17.1
# via cryptography # via cryptography
charset-normalizer==3.3.2 charset-normalizer==3.3.2
# via requests # via requests
click==8.1.7 click==8.1.7
# via waybackpy # via waybackpy
confusable-homoglyphs==3.2.0 confusable-homoglyphs==3.3.1
# via django-registration # via django-registration
cryptography==42.0.5 cryptography==43.0.1
# via # via
# josepy # josepy
# mozilla-django-oidc # mozilla-django-oidc
# pyopenssl # pyopenssl
django==5.0.8 django==5.1.1
# via # via
# -r requirements.in # -r requirements.in
# django-registration # django-registration
@ -39,23 +39,23 @@ django-widget-tweaks==1.5.0
# via -r requirements.in # via -r requirements.in
djangorestframework==3.15.2 djangorestframework==3.15.2
# via -r requirements.in # via -r requirements.in
huey==2.5.0 huey==2.5.1
# via -r requirements.in # via -r requirements.in
idna==3.7 idna==3.10
# via requests # via requests
josepy==1.14.0 josepy==1.14.0
# via mozilla-django-oidc # via mozilla-django-oidc
markdown==3.5.2 markdown==3.7
# via -r requirements.in # via -r requirements.in
mozilla-django-oidc==4.0.1 mozilla-django-oidc==4.0.1
# via -r requirements.in # via -r requirements.in
psycopg2-binary==2.9.9 psycopg2-binary==2.9.9
# via -r requirements.in # via -r requirements.in
pycparser==2.21 pycparser==2.22
# via cffi # via cffi
pyopenssl==24.1.0 pyopenssl==24.2.1
# via josepy # via josepy
python-dateutil==2.8.2 python-dateutil==2.9.0.post0
# via -r requirements.in # via -r requirements.in
requests==2.32.3 requests==2.32.3
# via # via
@ -66,17 +66,17 @@ six==1.16.0
# via # via
# bleach # bleach
# python-dateutil # python-dateutil
soupsieve==2.5 soupsieve==2.6
# via beautifulsoup4 # via beautifulsoup4
sqlparse==0.5.0 sqlparse==0.5.1
# via django # via django
supervisor==4.2.5 supervisor==4.2.5
# via -r requirements.in # via -r requirements.in
urllib3==2.2.2 urllib3==2.2.3
# via # via
# requests # requests
# waybackpy # waybackpy
uwsgi==2.0.23 uwsgi==2.0.26
# via -r requirements.in # via -r requirements.in
waybackpy==3.0.6 waybackpy==3.0.6
# via -r requirements.in # via -r requirements.in

View file

@ -4,4 +4,5 @@ export OIDC_USE_PKCE=True
export OIDC_OP_AUTHORIZATION_ENDPOINT=http://localhost:8080/oauth/v2/authorize export OIDC_OP_AUTHORIZATION_ENDPOINT=http://localhost:8080/oauth/v2/authorize
export OIDC_OP_TOKEN_ENDPOINT=http://localhost:8080/oauth/v2/token export OIDC_OP_TOKEN_ENDPOINT=http://localhost:8080/oauth/v2/token
export OIDC_OP_USER_ENDPOINT=http://localhost:8080/oidc/v1/userinfo export OIDC_OP_USER_ENDPOINT=http://localhost:8080/oidc/v1/userinfo
export OIDC_RP_CLIENT_ID=258574559115018243@linkding export OIDC_OP_JWKS_ENDPOINT=http://localhost:8080/oauth/v2/keys
export OIDC_RP_CLIENT_ID=<client-id>