Skip to content

build(deps): bump django-debug-toolbar from 5.2.0 to 6.0.0 #5746

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 28, 2025

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 28, 2025

Bumps django-debug-toolbar from 5.2.0 to 6.0.0.

Release notes

Sourced from django-debug-toolbar's releases.

6.0.0

Description

The v6.0.0 release of Django Debug Toolbar significantly revamps how panels for the toolbar work. Each panel will now persist its data in a store. A store can either be backed by various backends. The toolbar will support a memory and database backend to start.

The toolbar is now using Django's SafeExceptionReporterFilter.cleanse_setting() function to filter out sensitive information. Some data will be replaced with "********************". This is because the toolbar could be configured to write the request information to a persistent store such as a cache or database.

Django applications with basic installations are backwards compatible with this change. If there are hooks into the internals of the toolbar, such as DebugToolbar.store_id then it will be backwards incompatible.

Third-party panels will need updating. Any data that is stored in record_stats will need to be fetched back out from self.get_stats() before being able to be rendered. This is to support loading an instance of the toolbar from persisted data. A simple example of this transition can be found in debug_toolbar/panels/cache.py in PR 2138

How to upgrade

  • Changes required if the toolbar isn't installed entirely programmatically
    • If you experience RuntimeError: Model class debug_toolbar.models.HistoryEntry doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS, you need to remove the reference to the toolbar's urls in your urls.py file and MIDDLEWARE setting when the toolbar isn't in INSTALLED_APPS
  • If you have a custom panel, you'll need to adjust record_stats and use self.get_stats() to fetch data for rendering
  • If you'd like to use the database store, see TOOLBAR_STORE_CLASS for more info

Why did the internals change?

The Django Debug Toolbar is a popular package we did not want to block the community from pursuing the async path for Django applications. Writing the request data to a store better positions the toolbar for async projects. It also opens the door for it being usable in production as well with API integrations.

What's Changed

Full Changelog: django-commons/django-debug-toolbar@5.2.0...6.0.0

Acknowlegements

Thank you to all the contributors who made this release possible. Thank you to @​robhudson, @​matthiask, @​tim-schilling, @​salty-ivy and @​dr-rompecabezas for their support, development and reviews of the serializable toolbar changes. A special shout-out to @​matthiask for leading the Djangonaut Space Session 4 team of @​dr-rompecabezas, @​andoriyaprashant and @​blingblin-g.

Changelog

Sourced from django-debug-toolbar's changelog.

6.0.0 (2025-07-22)

  • Added support for checking if pytest as the test runner when determining if tests are running.
  • Added show_toolbar_with_docker function to check Docker host IP address when running inside Docker containers.
  • Defines the BaseStore interface for request storage mechanisms.
  • Added the setting TOOLBAR_STORE_CLASS to configure the request storage mechanism. Defaults to debug_toolbar.store.MemoryStore.
  • Rename store_id properties to request_id and Toolbar.store to Toolbar.init_store.
  • Support Panel instances with stored stats via Panel.load_stats_from_store.
  • Swapped Toolbar._store for the get_store() class.
  • Created a StoredDebugToolbar that support creating an instance of the toolbar representing an old request. It should only be used for fetching panels' contents.
  • Drop raw_params from query data.
  • Queries now have a unique djdt_query_id. The SQL forms now reference this id and avoid passing SQL to be executed.
  • Move the formatting logic of SQL queries to just before rendering in SQLPanel.content.
  • Make Panel.panel_id a class member.
  • Update all panels to utilize data from Panel.get_stats() to load content to render. Specifically for Panel.title and Panel.nav_title.
  • Extend example app to contain an async version.
  • Added debug_toolbar.store.DatabaseStore for persistent debug data storage.
  • Deduplicated static files in the staticfiles panel.
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [django-debug-toolbar](https://github.com/django-commons/django-debug-toolbar) from 5.2.0 to 6.0.0.
- [Release notes](https://github.com/django-commons/django-debug-toolbar/releases)
- [Changelog](https://github.com/django-commons/django-debug-toolbar/blob/main/docs/changes.rst)
- [Commits](django-commons/django-debug-toolbar@5.2.0...6.0.0)

---
updated-dependencies:
- dependency-name: django-debug-toolbar
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Jul 28, 2025
@groovecoder groovecoder added this pull request to the merge queue Jul 28, 2025
Merged via the queue into main with commit d46845d Jul 28, 2025
32 checks passed
@groovecoder groovecoder deleted the dependabot/pip/django-debug-toolbar-6.0.0 branch July 28, 2025 17:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant