Created by Ricardo Kirkner on 2013-08-06 and last modified on 2014-09-01
Get this branch:
bzr branch lp:~ubuntuone-pqm-team/python-timeline-django/stable
Members of Ubuntu One PQM Team can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Ubuntu One PQM Team

Recent revisions

26. By Ricardo Kirkner on 2014-09-01

merged stable branch back into trunk

25. By James Westby on 2014-09-01

Post-release version bump.

24. By James Westby on 2014-09-01

Prepare for release.

23. By James Westby on 2014-09-01

Be more careful about leaking objects.

1. Register signals with a dispatch_uid so that if register is called
   twice there aren't double receivers. There is a very slim chance that
   someone could two want two sets of receivers with timeline_factories
   that get different timelines. In that case this should be rewritten
   to not use dispatch_uid and offer a disconnect method that can be
   used in tests etc.

2. Re-set the environ stored in the thread local after the wsgi response
   is delivered. In a case where some requests go through wsgi and some
   don't (e.g. tests) the environ would leak in to those that don't use
   wsgi. This could lead to an ever-growing timeline.

22. By James Westby on 2014-04-29

Properly handle absence of query in filters

This fixes a TypeError that triggered because django-statsd db patches
caused a max recursion exception that propagated up until the filters,
rendering the query parameter of them as None. Because of this, while
the error was really passed through oops, the final error reported to
the user was related to python-timeline-django.

21. By James Westby on 2014-03-18

Make the hooks more robust.

20. By James Westby on 2013-09-03

Save the environ before sending the wsgi_request_started signal.

Code that listens to the wsgi_request_started signal may want to use the
environ, but instead of using the one passed to the signal, it may
call get_environ() to get the saved version. That has to be the
current request's environ, not any previous request, so save the environ
before triggering the signal.

19. By James Westby on 2013-08-26

Add signals for the start of the wsgi request and start of the response.

The django signal for request-finished fires when the client has consumed
the response. However, when generating an oops it can be done before this
meaning that the timeline doesn't have a reference for an end point.
This defines a response-started signal that fires when start_response
is called in the wsgi stack, making it more likely that there will be
an end point in the timeline.

18. By James Westby on 2013-08-26

Drop the model signal handlers.

They cause a lot of noise in the timeline, and slow down all requests,
for little benefit. The context they provide for db queries can
just as easily be inferred from the backtraces on the queries.

17. By James Westby on 2012-09-22

Fix the README formatting.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.