☰Read-only archive⌕
Looking for help with Bokeh?

This is a read-only archive. Ask questions and join the conversation on GitHub.

Visit Community Support on GitHub →
Archived discussions · Captured October 28, 2026

Django 3.2 has been released but bokeh.server.django is not compatible with it

Community Supportserverbokeh
ejprinz
ejprinz

I have just installed Django 3.2 and run Bokeh 2.3.0 and channels 2.4.0. With Django 3.1.8 things work. With Django 3.2 there is an error at startup (config check). The Django team added a test in …django/apps/config.py checking whether the app label is an identifier, and ‘bokeh.server.django’ fails that test. It looks like usual app labels do not have periods and so they are valid identifiers, example labels are:
bootstrap3, help_yms, home_page, utilities, accounts, projects, dashboard_1, pm_poll, django_markdown2, django_tables2, admin, auth, contenttypes, sessions, messages, staticfiles, django_extensions, django_filters, debug_toolbar, sliders, stepup, dashboard_yield, logs, channels
so ‘bokeh.server.django’ doesn’t fit the pattern.

The Django team added the identifier requirement for the following reason (see ticket):
https://code.djangoproject.com/ticket/32285
So Bokeh would need to change the label to be an identifier and fix the resulting issues.
How is this being initiated? Thanks in advance.

⌁   Link to post
mateusz
mateusz

At minimum this line:

needs to be split into two definitions:

name = 'bokeh.server.django'
label = 'bokeh_server_django'

If fact, we could drop label altogether, as it is inferred from name. However, that would give label == "django", which may potentially conflict in a thirdparty app.

Please submit a PR if you can.

⌁   Link to post
ejprinz
ejprinz

I filed bug #11148 on Bokeh GitHub.

The 2-line fix:

name = 'bokeh.server.django'
label = 'bokeh_server_django'

works but in the users’ code, calls to django.apps.get_app_config(…) need to call the new label.

apps.get_app_config('bokeh_server_django')

Maybe this should be mentioned in the release notes when this is fixed.

⌁   Link to post

End of archived discussion · Replies are disabled