Skip to content

Commit c0367d5

Browse files
authored
Merge pull request #190 from jedie/dev
Update requirements and some small code parts
2 parents 56a9de5 + caeecd9 commit c0367d5

File tree

9 files changed

+809
-794
lines changed

9 files changed

+809
-794
lines changed

README.md

+5-3
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,8 @@ To make a new release, do this:
166166

167167
[comment]: <> (✂✂✂ auto generated history start ✂✂✂)
168168

169+
* [**dev**](https://github.com/jedie/PyInventory/compare/v0.21.0...main)
170+
* 2025-04-30 - Update requirements and some small code parts
169171
* [v0.21.0](https://github.com/jedie/PyInventory/compare/v0.20.1...v0.21.0)
170172
* 2025-03-23 - Bugfix publish: setuptools missing
171173
* 2025-03-23 - Migrate "pip-tools" -> "uv" and remove tox
@@ -176,6 +178,9 @@ To make a new release, do this:
176178
* 2024-09-05 - Project updates
177179
* 2024-01-16 - Use typeguard in tests
178180
* 2024-01-16 - Update requirements
181+
182+
<details><summary>Expand older history entries ...</summary>
183+
179184
* [v0.19.3](https://github.com/jedie/PyInventory/compare/v0.19.2...v0.19.3)
180185
* 2023-11-01 - Auto generate README history
181186
* 2023-11-01 - Update requirements
@@ -184,9 +189,6 @@ To make a new release, do this:
184189
* 2023-10-08 - Use playwrigth manage command from manage-django-project
185190
* 2023-09-24 - Update test snapshot files
186191
* 2023-09-24 - Add playwright CLI wrapper command
187-
188-
<details><summary>Expand older history entries ...</summary>
189-
190192
* [v0.19.2](https://github.com/jedie/PyInventory/compare/v0.19.1...v0.19.2)
191193
* 2023-08-17 - Bugfix packaging by adding "requests" as normal dependencies
192194
* 2023-08-17 - Bugfix packageing by adding "requests" as normal dependencies

inventory/ckeditor_upload.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
def get_filename(filename, request):
11-
random_string = get_random_string()
11+
random_string = get_random_string(length=12)
1212
filename = clean_filename(filename)
1313
filename = f'{random_string}/{filename}'
1414
logger.info(f'Upload filename: {filename!r}')

inventory_project/settings/prod.py

-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,6 @@
148148

149149
LANGUAGES = [('ca', _('Catalan')), ('de', _('German')), ('en', _('English')), ('es', _('Spanish'))]
150150
USE_I18N = True
151-
USE_L10N = True
152151
TIME_ZONE = 'Europe/Paris'
153152
USE_TZ = True
154153

inventory_project/tests/test_admin.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ class AdminAnonymousTests(HtmlAssertionMixin, TestCase):
1212
"""
1313

1414
def test_login_en(self):
15-
response = self.client.get('/admin/', secure=True, HTTP_ACCEPT_LANGUAGE='en')
15+
response = self.client.get('/admin/', secure=True, headers={"accept-language": 'en'})
1616
self.assertRedirects(response, expected_url='/admin/login/?next=/admin/', fetch_redirect_response=False)
1717

1818
def test_login_de(self):
19-
response = self.client.get('/admin/', secure=True, HTTP_ACCEPT_LANGUAGE='de')
19+
response = self.client.get('/admin/', secure=True, headers={"accept-language": 'de'})
2020
self.assertRedirects(response, expected_url='/admin/login/?next=/admin/', fetch_redirect_response=False)
2121

2222

@@ -33,7 +33,7 @@ def setUpTestData(cls):
3333
def test_staff_admin_index(self):
3434
self.client.force_login(self.staffuser)
3535

36-
response = self.client.get("/admin/", secure=True, HTTP_ACCEPT_LANGUAGE="en")
36+
response = self.client.get("/admin/", secure=True, headers={"accept-language": "en"})
3737
self.assert_html_parts(
3838
response,
3939
parts=(
@@ -47,7 +47,7 @@ def test_staff_admin_index(self):
4747

4848
def test_superuser_admin_index(self):
4949
self.client.force_login(self.superuser)
50-
response = self.client.get("/admin/", secure=True, HTTP_ACCEPT_LANGUAGE="en")
50+
response = self.client.get("/admin/", secure=True, headers={"accept-language": "en"})
5151
self.assert_html_parts(
5252
response,
5353
parts=(

inventory_project/tests/test_admin_item.py

+5-3
Original file line numberDiff line numberDiff line change
@@ -44,22 +44,24 @@
4444
class AdminAnonymousTests(HtmlAssertionMixin, TestCase):
4545
def test_login(self):
4646
# HTTP -> HTTPS redirect:
47-
response = self.client.get('/admin/', HTTP_ACCEPT_LANGUAGE='en')
47+
response = self.client.get('/admin/', headers={"accept-language": 'en'})
4848
self.assertRedirects(
4949
response,
5050
expected_url='https://testserver/admin/',
5151
status_code=301, # Permanent redirect
5252
fetch_redirect_response=False,
5353
)
5454

55-
response = self.client.get(path='/admin/inventory/itemmodel/add/', secure=True, HTTP_ACCEPT_LANGUAGE='en')
55+
response = self.client.get(
56+
path='/admin/inventory/itemmodel/add/', secure=True, headers={"accept-language": 'en'}
57+
)
5658
self.assertRedirects(
5759
response, expected_url='/admin/login/?next=/admin/inventory/itemmodel/add/', fetch_redirect_response=False
5860
)
5961
with mock.patch.object(
6062
CsrfTokenNode, 'render', return_value='MockedCsrfTokenNode'
6163
), MockInventoryVersionString():
62-
response = self.client.get(path='/admin/login/', secure=True, HTTP_ACCEPT_LANGUAGE='en')
64+
response = self.client.get(path='/admin/login/', secure=True, headers={"accept-language": 'en'})
6365
self.assert_html_parts(
6466
response,
6567
parts=(

inventory_project/tests/test_admin_memo.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
class AdminAnonymousTests(TestCase):
1818
def test_login(self):
19-
response = self.client.get('/admin/inventory/memomodel/add/', secure=True, HTTP_ACCEPT_LANGUAGE='en')
19+
response = self.client.get('/admin/inventory/memomodel/add/', secure=True, headers={"accept-language": 'en'})
2020
self.assertRedirects(
2121
response,
2222
expected_url='/admin/login/?next=/admin/inventory/memomodel/add/',

inventory_project/urls.py

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
from django.conf import settings
2-
from django.conf.urls import include
32
from django.contrib import admin
4-
from django.urls import path, re_path
3+
from django.urls import include, path
54
from django.views.generic import RedirectView
65

76

87
admin.autodiscover()
98

109
urlpatterns = [ # Don't use i18n_patterns() here
1110
path('admin/', admin.site.urls),
12-
re_path(r'^$', RedirectView.as_view(pattern_name='admin:index')),
11+
path('', RedirectView.as_view(pattern_name='admin:index')),
1312
path('tinymce/', include('tinymce.urls')), # TODO: check permissions?
1413
path(settings.MEDIA_URL.lstrip('/'), include('django_tools.serve_media_app.urls')),
1514
]
@@ -18,4 +17,4 @@
1817
if settings.DEBUG:
1918
import debug_toolbar
2019

21-
urlpatterns = [re_path(r'^__debug__/', include(debug_toolbar.urls))] + urlpatterns
20+
urlpatterns = [path('__debug__/', include(debug_toolbar.urls))] + urlpatterns

pyproject.toml

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ authors = [
1010
keywords=['inventory','django']
1111
requires-python = ">=3.11"
1212
dependencies = [
13-
"django", # https://docs.djangoproject.com
13+
# Stay with Django v5.1.x until https://github.com/radiac/django-tagulous/issues/187 is fixed
14+
"django!=5.2.0", # https://docs.djangoproject.com
1415

1516
"colorlog", # https://github.com/borntyping/python-colorlog
1617
"gunicorn", # https://github.com/benoimyproject.wsgitc/gunicorn

0 commit comments

Comments
 (0)