Skip to content

Latest commit



111 lines (83 loc) · 4.28 KB

File metadata and controls

111 lines (83 loc) · 4.28 KB


Note: This changelog is not very complete.


  • Update to jQuery 3.3 and Bootstrap 4.
  • Major changes on the bootstrap form framework to ensure consistency accross all forms.


  • View HTTP upload limits at /account/uploads.


  • Add social media and meta tags for clients and registration page.
  • Add a sitemap to help search engines discover content
  • The past few days saw massive updates to the German translation as well as some more content updates to the clients page.


  • Email address used in registration is now stored as note to address activities.
  • HTTP headers are now stored in all address activities.
  • Ability to delete XEP-0363 uploads in the webinterface.
  • Add Twitter/Opengraph/meta tags to start page.


  • The blog list page (the overview of blog posts) now lists autogenerated summaries.
  • RSS and Atom feeds now contain logos and correctly generated summaries. They are valid HTML and most HTML tags are stripped.


  • Start working on the ability to block users from the admin interface.


  • Add an Atom feed.
  • Add a robots.txt file and a favicon.
  • Add meta tags for Facebook Opengraph and Twitter cards.
  • Add a meta description and canonical URL.
  • Update


  • Interface
    • the right sidebar no longer wraps in "small" devices (e.g. a half-width window on a full-hd screen).
    • Add a - and/or - note between GPG fingerprint and key upload, to make sure it's clear you don't have to do both.
  • Add a RSS 2.0 feed to the main page and individual blog posts.
  • Check if the domain of an email address exists when registering or setting a new email address.
  • Remove users from the database that (no longer) exist on the XMPP server.
  • More consistently use variable names.


  • Fix anonymous contact form.
  • Verious documentation updates (templatetags, dependencies, use numpydoc, ...)


  • Various admin interface improvements:
    • Users:
      • Filter users by if they have a confirmed email address or if they were created on the server. (Older users do not have a confirmed email address but do exists on the server)
      • Admin action to resend confirmation emails. As a precaution, this only sends emails for users that are not yet created on the XMPP server.
    • GPG keys:
      • List with their validity status and if they are usable (not expired and not revoked)
      • Keys are now searchable by fingerprint, username and email.
      • List filter for the revoked property.
      • Refresh admin action to refresh keys from keyserver.
    • Admin action Resend for resending confirmation keys.
  • Logging: Celery tasks that raise an (uncaught) exception, send an email.
  • Email addresses from forms are now consistently lower-cased.
  • Import public key of signer when sending signed email.
  • Start Sphinx documenation (build with make -C doc html). You can view the documentation at
  • Check Syntax with flake8 upon deployment.


  • Add an overview of XEP-0363 uploads to the user page.
  • Add the format_filesize template filter to display a filesize in a human-readable form.
  • Update the contact form to display information and mention our chatroom.
  • Remove jumbotron about how this is still a beta page.


  • Improve logging configuration to make sure that logging calls are properly logged in any configuration, via uWSGI and Celery. log.error() and exceptions in Celery tasks are now mailed to admins.
  • The set-language view (/api/set-lang/) no longer fails if any query parameter is missing. The query string is also passed via the next query parameter.
  • Add rel="nofollow" set-language links.
  • Remove dependency for python-gnupg (we use pygpgme now).

Contact form

  • Do not CC the message to anonymous users, to make sure that the contact form cannot be abused to send SPAM.
  • Set the Reply-To header to the contact address and the users address. That way we can just hit "Reply" to answer more quickly.
  • Add the IP-Address that submitted the contact form is passed in the X-Homepage-Submit-Address header.
  • The user currently logged in, if any, is passed in the X-Homepage-Logged-In-User header.
  • Add the users GPG keys as attachement, if he has configured any.