In pretalx 2025.2.0, a lot of static files (stylesheets and script files) have changed their name and location. The main reason for this is that our static files had grown for a long time without a lot of structure. As a result, we included a lot of styles on all pages, even when we didn't need them. This made pages larger and page loads slower than they needed to be. Once we started the cleanup, we decided to also move files to a more consistent naming and directory scheme. Sorry.
Please also note that pretalx now does not support SCSS out of the box anymore. If your plugin requires SCSS files to be processed, you will have to make sure that they are processed to CSS files. As a consequence, pretalx also does not provide the compress tag in templates anymore. Please check your templates and remove this tag.
You will notice that there are a lot of tiny stylesheets and scripts now.
This is in large part because pretalx now uses Django's form.Media to annotate which form field / widget needs which static files.
We advise you to do the same in your forms if any of your form fields require special widgets (and you can of course use the pretalx widgets like MarkdownWidget).
In your templates, you'll have to include the {% form_media %} tag, which will combine the form media for all forms on the page, and add the base form style and scripts aswell.
In the organiser area, we are including way fewer scripts by default now. If you need something like modals or tooltips on your page, please include the script in question.
Removed scripts
- We have dropped
moment.jsentirely, finally, after only including it for our availabilities input. If you requiremoment.js, please include it in your Plugin's static files. The removed files arevendored/fullcalendar/moment-timezone-plugin.min.js,vendored/moment-timezone-with-data-10-year-range.js,vendored/moment-with-locales.js - Likewise, we have dropped the library providing jQuery. Please include jQuery in your plugin if you depend on it.
Moved scripts
agenda/js/{ => ui}/datetime-local.jscfp/js/{animateFormset.js => forms/formsets.js}cfp/js/{proposalTabTitles.js => cfp-tabtitle.js}common/js/{ => forms}/availabilities.js{cfp/js/profile.js => common/js/forms/avatar.js}common/js/{password_strength.js => forms/password.js}common/js/{user_token.js => forms/token.js}common/js/{ => ui}/copy.jscommon/js/{modalDialog.js => ui/dialog.js}common/js/{ => ui}/lightbox.jscommon/js/{ => ui}/tabs.jsorga/js/{sidebar.js => ui/sidebar-preload.js}orga/js/{typeahead.js => base.js}orga/js/{ => forms}/anonymise.jsorga/js/{reviewAssignment.js => forms/assignment.js}orga/js/{ => forms}/cfp.jsorga/js/{speaker_export.js => forms/export.js}orga/js/{mailSettings.js => forms/mail.js}orga/js/{ => forms}/placeholder.jsorga/js/{questionForm.js => forms/question.js}orga/js/{reviewSubmission.js => forms/review.js}orga/js/{reviewSettings.js => forms/reviewsettings.js}orga/js/{eventSettings.js => forms/settings.js}orga/js/{submission_form.js => forms/submission.js}orga/js/{submission_filter.js => forms/submissionfilter.js}orga/js/{teamSettings.js => forms/team.js}orga/js/{speakers.js => forms/usersearch.js}orga/js/{widgetSettings.js => forms/widget.js}orga/js/{event_wizard.js => forms/wizard.js}{common/js => orga/js/ui}/collapse.jsorga/js/{ => ui}/colorpicker.jsorga/js/{highlightComment.js => ui/comments.js}orga/js/{ => ui}/dragsort.jsorga/js/{main.js => ui/featured.js}orga/js/{cfp_flow.js => ui/flow.js}orga/js/{question_stats.js => ui/questionstats.js}orga/js/{ => ui}/review.jsorga/js/{ => ui}/stats.jsvendored/{vanilla-picker => }/vanilla-picker.min.js
If you inherit from the base pretalx templates, nearly nothing here should impact you, apart from possibly having to include the form_media tag in your templates.
Removed stylesheets
- The following files have been folded into
common/css/base.css:common/css/_fonts.css,common/css/_pretalx.css,common/css/_reset.css orga/css/_layout.cssis now split up, with the core inorga/css/base.cssvendored/fullcalendar/fullcalendar.min.csswas dropped as the library moved to script-based styles
Moved stylesheets
agenda/css/_agenda.cssis now split up, with the core inagenda/css/base.css, and other parts in the newagenda/css/talk.cssagenda/css/{_speaker.css => speaker.css}agenda/css/{agenda_nojs.css => schedule_nojs.css}common/css/{ => forms}/availabilities.csscommon/css/{ => forms}/avatar.csscommon/css/{_forms.css => forms/base.css}common/css/{resource-form.css => forms/resource.css}common/css/{headers-uncompressed.css => headers/*}(split up){cfp/css/_layout.css => common/css/public.css}common/css/{_rtl.css => rtl.css}common/css/{_dropdown.css => ui/dropdown.css}common/css/{_stages.css => ui/stages.css}common/css/{ => ui}/tabs.csscommon/css/{_tooltip.css => ui/tooltip.css}orga/css/{_flags.css => forms/i18n.css}orga/css/{_rtl.css => rtl.css}orga/css/{ => ui}/dashboard.cssorga/css/{ => ui}/dragsort.cssorga/css/{ => ui}/flow.css
cfp/includes/forms_header.html: This file used to be included on frontend-facing pages with forms. Instead, pretalx now usesform.Mediato list the assets required for each form. We recommend you do so too, and then use the newform_mediatag, which will collect the media files for all forms on the page, and include them (in addition to the base form scripts and stylesheets, automatically included).common/availabilities.html: The availabilities field can now render without requiring a separate form template.orga/cfp/question/create.htmland similar templates were dropped because we can now manage without them for various reasons. These should have only been used by pretalx interally, but on the offchance that you were inheriting from some of them, we're listing them here. Other templates in this category areorga/cfp/track/_form.html,orga/cfp/track/create.html,orga/cfp/track/update.html,orga/event/wizard/basics.html,orga/event/wizard/initial.html,orga/event/wizard/timeline.html,orga/mails/mailtemplate/create.html,orga/mails/mailtemplate/update.html,orga/organiser/team/create.html,orga/organiser/team/list.html,orga/schedule/room/_form.html,orga/schedule/room/create.html,orga/schedule/room/update.html,orga/speaker/information_list.html,orga/speaker/speakerinformation/list.html,orga/submission/tag/_form.html,orga/submission/tag/create.html,orga/submission/tag/list.html,orga/submission/tag/update.html
pretalx did not use these templates anymore, and you probably weren't, either:
bootstrap4/field_help_text.htmlbootstrap4/form_errors.html