Jump to >

Djblets 1.0.6 Release Notes

Release date: June 5, 2018



  • Added optional support for requiring a user’s consent to load Gravatars on their behalf.

    If the avatars_enable_consent_checks siteconfig setting is set to True, then users will have to grant consent in order to load a Gravatar using their e-mail address.

    See the section below on djblets.privacy for more information on consent.

  • The alt text for avatars now displays the username and not the full name of users, reducing the amount of personal information shown to users.

  • Avatar templates now have access to the current HTTP request through the request context variable.


  • ConfigPageForm.save can now return a HttpResponse to return a custom response to send to the client.

  • ConfigPagesView.render_sidebar can now be set to False to disable the sidebar.

    This can be set on the class or in an instance to render a particular page without allowing the user to switch to another page.


  • Fixed a crash that would sometimes occur when loading DataGrid columns with only invalid names.


  • Fixed crashes that could occur when shutting down extension hooks when extensions shut down.


  • Fixed crashes that could occur when shutting down integration hooks when integrations shut down.

djblets.privacy (new)

Added the new djblets.privacy module, designed to help ensure privacy of user data.

This module helps applications be compatible with the GDPR legislation in the EU. It contains:

  • Support for requesting and tracking consent for the usage of personally identifiable information (“PII” – usernames, full names, e-mail addresses, and other such information), which should especially be used when that data might be sent to a third-party.
  • Functions and template tags for filtering personally identifiable information from URLs.
  • A privacy-enhanced template and settings for working with Google Analytics, featuring anonymized IPs and titles and URLs safe of PII.
  • An extension hook (ConsentRequirementHook) for registering consent requirements.
  • Decorators for redirecting to a page if consent choices are still pending.

See Privacy Compliance Guides for more information.



  • Added djblets.util.html.mark_safe_lazy() for lazily marking a string as HTML.

    This is useful when used alongside ugettext_lazy() or other functions that lazily generate content, in order to prevent the strings from being resolved too soon.

  • Added @optional_decorator for applying a decorator only if a condition is met.

    This is useful for applying a decorator only if a particular setting or feature flag is enabled.

  • The {% label_tag %} template tag no longer renders label tags if the label text is an empty string.

Style Sheets

  • The .retina() LessCSS macro no longer overrides other background attributes.
  • Flattened the CSS rules for Config Forms, helping to override styling.


  • Barret Rennie
  • Christian Hammond
  • David Trowbridge