Skip to content

fix(deps): update dependency django-debug-toolbar to v6

Renovate Bot requested to merge renovate/django-debug-toolbar-6.x into develop

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
django-debug-toolbar (changelog) ~4.4 -> ~6.0 age adoption passing confidence

Release Notes

django-commons/django-debug-toolbar (django-debug-toolbar)

v6.0.0

Compare Source

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 MR 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: https://github.com/django-commons/django-debug-toolbar/compare/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.

v5.2.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/django-commons/django-debug-toolbar/compare/5.1.0...5.2.0

v5.1.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/django-commons/django-debug-toolbar/compare/5.0.1...5.1.0

v5.0.1

Compare Source

What's Changed

There were no functional changes in this version.

MRs

Full Changelog: https://github.com/django-commons/django-debug-toolbar/compare/5.0.0...5.0.1

v5.0.0

Compare Source

What's Changed

Please note that Django Debug Toolbar has now moved into the Django Commons organization.

Changelog
  • Added Python 3.13 to the CI matrix.
  • Removed support for Python 3.8 as it has reached end of life.
  • Converted to Django Commons PyPI release process.
  • Fixed a crash which occurred when using non-str static file values.
  • Documented experimental async support.
  • Improved troubleshooting doc for incorrect mime types for .js static files
  • Support async applications and ASGI from Google Summer of Code Project 2024 <https://summerofcode.withgoogle.com/programs/2024/projects/iXVvyGYp>__.
  • Added Django 5.1 to the CI matrix.
  • Added support for the LoginRequiredMiddleware introduced in Django 5.1.
  • Support select and explain buttons for UNION queries on PostgreSQL.
  • Fixed internal toolbar requests being instrumented if the Django setting FORCE_SCRIPT_NAME was set.
  • Increase opacity of show Debug Toolbar handle to improve accessibility.
  • Changed the RedirectsPanel to be async compatible.
  • Increased the contrast of text with dark mode enabled.
  • Add translations for Bulgarian and Korean.
  • Update translations for several languages.
  • Include new translatable strings for translation.
  • Fixed a crash which happened in the fallback case when session keys cannot be sorted.
MRs

Google Summer of Code - Async project

This release contains the changes for async compatibility for the majority of panels. This is the result of the Google Summer of Code project by @​salty-ivy. A massive thank you 💚 and a round of applause 👏 is due to Aman!

New Contributors

Full Changelog: https://github.com/django-commons/django-debug-toolbar/compare/4.4.6...5.0.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Never, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Merge request reports