#33494: Collectstatic fails with Django 4 and SourcemapManifestStaticFilesStorage ------------------------------------------------+------------------------ Reporter: Felix Kleinekathöfer | Owner: nobody Type: Bug | Status: new Component: contrib.staticfiles | Version: 4.0 Severity: Normal | Keywords: Triage Stage: Unreviewed | Has patch: 0 Needs documentation: 0 | Needs tests: 0 Patch needs improvement: 0 | Easy pickings: 0 UI/UX: 0 | ------------------------------------------------+------------------------ I've tried updating a django app to 4.0. We are building our scripts with gulp which are then collected by Django. Here is an example script asset which is being picked up:
{{{ "use strict"; (function () { // Automatically check "Uploaded avatar" radio button if user selects an avatar. Array.prototype.forEach.call(document.querySelectorAll('.avatar-image- upload'), function (el) { var form = el.closest('form'); var radioButton = form.querySelector('input[type=radio][name=avatar_from][value=upload]'); el.addEventListener('change', function () { if (el.value === '') return; radioButton.checked = true; }); }); })(); //# sourceMappingURL=../../../../maps/spongeauth/static/scripts/app.js.map }}} This file worked well with Django 3 but now it ends up in a KeyError: {{{ app_1 | + /home/spongeauth/env/bin/python spongeauth/manage.py collectstatic --noinput app_1 | Traceback (most recent call last): app_1 | File "/home/spongeauth/app/spongeauth/manage.py", line 28, in <module> app_1 | execute_from_command_line(sys.argv) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/core/management/__init__.py", line 425, in execute_from_command_line app_1 | utility.execute() app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/core/management/__init__.py", line 419, in execute app_1 | self.fetch_command(subcommand).run_from_argv(self.argv) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/core/management/base.py", line 373, in run_from_argv app_1 | self.execute(*args, **cmd_options) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/core/management/base.py", line 417, in execute app_1 | output = self.handle(*args, **options) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 187, in handle app_1 | collected = self.collect() app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 128, in collect app_1 | for original_path, processed_path, processed in processor: app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/storage.py", line 426, in post_process app_1 | yield from super().post_process(*args, **kwargs) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/storage.py", line 247, in post_process app_1 | for name, hashed_name, processed, _ in self._post_process(paths, adjustable_paths, hashed_files): app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/storage.py", line 312, in _post_process app_1 | content = pattern.sub(converter, content) app_1 | File "/home/spongeauth/env/lib/python3.10/site- packages/django/contrib/staticfiles/storage.py", line 173, in converter app_1 | matched = matches['matched'] app_1 | KeyError: 'matched' }}} I can't find a note on the migration docs that sourceFileMappingURLs need to be changed, so I suspect this being a bug. Source: https://github.com/SpongePowered/SpongeAuth/pull/926 -- Ticket URL: <https://code.djangoproject.com/ticket/33494> Django <https://code.djangoproject.com/> The Web framework for perfectionists with deadlines. -- You received this message because you are subscribed to the Google Groups "Django updates" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-updates+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/django-updates/050.0ad0ca63dfc1003b07d5c243e0aa3d4f%40djangoproject.com.