Bump django from 4.2.13 to 4.2.14 in /requirements (#22461)

* Bump django from 4.2.13 to 4.2.14 in /requirements

Bumps [django](https://github.com/django/django) from 4.2.13 to 4.2.14.
- [Commits](https://github.com/django/django/compare/4.2.13...4.2.14)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* rm one-time fix_missing_icons command

* fix Storage tests to not save to absolute paths

* rm unused import

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Williamson <awilliamson@mozilla.com>
This commit is contained in:
dependabot[bot] 2024-07-17 09:43:09 +01:00 коммит произвёл GitHub
Родитель 27525af387
Коммит 4b76b7cee4
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
10 изменённых файлов: 9 добавлений и 76 удалений

Просмотреть файл

@ -530,9 +530,9 @@ colorgram.py==1.2.0 \
Deprecated==1.2.14 \
--hash=sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c \
--hash=sha256:e5323eb936458dccc2582dc6f9c322c852a775a27065ff2b0c4970b9d53d01b3
Django==4.2.13 \
--hash=sha256:837e3cf1f6c31347a1396a3f6b65688f2b4bb4a11c580dcb628b5afe527b68a5 \
--hash=sha256:a17fcba2aad3fc7d46fdb23215095dbbd64e6174bf4589171e732b18b07e426a
Django==4.2.14 \
--hash=sha256:3ec32bc2c616ab02834b9cac93143a7dc1cdcd5b822d78ac95fc20a38c534240 \
--hash=sha256:fc6919875a6226c7ffcae1a7d51e0f2ceaf6f160393180818f6c95f51b1e7b96
django-aesfield==4.0.0 \
--hash=sha256:2c88e7dc063919c4fa2fba6d7c65eb7be05838323ca3adcce76fb687d30d630b \
--hash=sha256:425b5c0ed6d96045af8b47230dd5870a12cf3feb7a9c601878c82ebaf409cdce

Просмотреть файл

@ -1,36 +0,0 @@
from django.core.files.storage import default_storage as storage
from django.core.management.base import BaseCommand
from olympia import amo
from olympia.addons.models import Addon
from olympia.addons.tasks import resize_icon
from olympia.core.logger import getLogger
log = getLogger('z.addons.fix_missing_icons')
class Command(BaseCommand):
help = 'Fix missing icons on specific add-ons'
addon_ids = [271830, 823490, 805933, 583250, 790974, 3006]
def handle(self, *args, **options):
for addon in Addon.objects.filter(pk__in=self.addon_ids):
icon_path = addon.get_icon_path('original')
if storage.exists(icon_path):
log.info(
'Original icon already exists for addon %s, skipping.', addon.pk
)
continue
backup_path = f'static/img/addon-icons/{addon.pk}-64.png'
with open(backup_path, 'rb') as f:
storage.save(storage.path(icon_path), f)
resize_icon.delay(
icon_path,
addon.pk,
amo.ADDON_ICON_SIZES,
set_modified_on=addon.serializable_reference(),
)
log.info(
'Saved new original icon for addon %s and triggered resizing.', addon.pk
)

Просмотреть файл

@ -1,4 +1,3 @@
import hashlib
import random
from contextlib import contextmanager
from datetime import timedelta
@ -574,32 +573,3 @@ def test_delete_list_theme_previews():
assert VersionPreview.objects.filter(id=other_firefox_preview.id).exists()
assert VersionPreview.objects.filter(id=other_amo_preview.id).exists()
assert not VersionPreview.objects.filter(id=other_old_list_preview.id).exists()
class TestFixMissingIcons(TestCase):
def test_basic(self):
extra_addons = [addon_factory(), addon_factory()]
addons_with_missing_icons = [
addon_factory(pk=271830),
addon_factory(pk=823490),
addon_factory(pk=805933),
addon_factory(pk=583250),
addon_factory(pk=790974),
addon_factory(pk=3006),
]
call_command('fix_missing_icons')
for addon in extra_addons:
addon.reload()
assert not addon.icon_hash
for size in ['original'] + list(amo.ADDON_ICON_SIZES):
assert not self.root_storage.exists(addon.get_icon_path(size))
for addon in addons_with_missing_icons:
addon.reload()
for size in ['original'] + list(amo.ADDON_ICON_SIZES):
assert self.root_storage.exists(addon.get_icon_path(size))
backup_path = f'{settings.ROOT}/static/img/addon-icons/{addon.pk}-64.png'
with open(backup_path, 'rb') as f:
icon_hash = hashlib.md5(f.read()).hexdigest()[:8]
assert addon.icon_hash == icon_hash

Просмотреть файл

@ -4,7 +4,6 @@ from functools import partial
from django.conf import settings
from django.core.files.base import ContentFile
from django.utils.encoding import force_str
import pytest
@ -16,7 +15,7 @@ pytestmark = pytest.mark.django_db
def test_storage_walk():
tmp = force_str(tempfile.mkdtemp(dir=settings.TMP_PATH))
tmp = os.path.basename(tempfile.mkdtemp(dir=settings.TMP_PATH))
jn = partial(os.path.join, tmp)
storage = SafeStorage(root_setting='TMP_PATH')
try:
@ -50,11 +49,11 @@ def test_storage_walk():
assert results.pop(0) == (jn('one/two'), set(), {'file1.txt'})
assert len(results) == 0
finally:
rm_local_tmp_dir(tmp)
rm_local_tmp_dir(storage.path(tmp))
def test_rm_stored_dir():
tmp = tempfile.mkdtemp(dir=settings.TMP_PATH)
tmp = os.path.basename(tempfile.mkdtemp(dir=settings.TMP_PATH))
jn = partial(os.path.join, tmp)
storage = SafeStorage(root_setting='TMP_PATH')
try:
@ -72,17 +71,17 @@ def test_rm_stored_dir():
assert not storage.exists(jn('one/kristi\u0107/kristi\u0107.txt'))
assert storage.exists(jn('file1.txt'))
finally:
rm_local_tmp_dir(tmp)
rm_local_tmp_dir(storage.path(tmp))
class TestFileOps(TestCase):
def setUp(self):
super().setUp()
self.tmp = tempfile.mkdtemp(dir=settings.TMP_PATH)
self.tmp = os.path.basename(tempfile.mkdtemp(dir=settings.TMP_PATH))
self.storage = SafeStorage(root_setting='TMP_PATH')
def tearDown(self):
rm_local_tmp_dir(self.tmp)
rm_local_tmp_dir(self.storage.path(self.tmp))
super().tearDown()
def path(self, path):

Двоичные данные
static/img/addon-icons/271830-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 2.5 KiB

Двоичные данные
static/img/addon-icons/3006-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 2.9 KiB

Двоичные данные
static/img/addon-icons/583250-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 5.3 KiB

Двоичные данные
static/img/addon-icons/790974-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 3.8 KiB

Двоичные данные
static/img/addon-icons/805933-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 4.3 KiB

Двоичные данные
static/img/addon-icons/823490-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 3.9 KiB