lp:~wgrant/python-oops-tools/fix-str-coerce-list

Created by William Grant and last modified
Get this branch:
bzr branch lp:~wgrant/python-oops-tools/fix-str-coerce-list
Only William Grant can upload to this branch. If you are William Grant please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
William Grant
Project:
python-oops-tools
Status:
Merged

Recent revisions

56. By William Grant

Fix statement string coercion to cope with non-tuple actions.

We tend to encode actions as lists, not tuples, which causes the
coercion to fail when it tries to concatenate a list and a tuple.

This hit SSO when it started sending statements as binary rather than
string.

55. By Sidnei da Silva

Pin buildout version during bootstrap. Seems like there's a zc.buildout 2.x egg in the cache, which bootstrap prefers, thus causing the following error:

zc.buildout 2 needs distribute, not setuptools. Are you using an outdated bootstrap.py? Make sure you have the latest version downloaded from http://downloads.buildout.org/2/bootstrap.py

Since the version pinned in versions.cfg is 1.5.2, also use the same version when bootstrapping.

54. By James Westby

Ensure that statements are always strings.

Fixes a crash when adding an oops that doesn't have a string for one of
the statements. The data being sent is bad, but a crash means no further
oopses can be processed.

53. By James Westby

Add django_openid_auth.

Our production deployment hacks things such that django_openid_auth is used.
This adds it for real.

In addition it adds the common pattern of allowing a local_settings.py
that overrides values in settings.py so that prod can configure things like
the SSO server and the team mappings.

52. By James Westby

Set the version of lazr.restfulclient to pick up the cert fixes.

51. By James Westby

Improve the query performance of the recent oopses view.

Firstly the planner was picking a difficult plan because of the join, but
we expect few prefixes per-report, so getting the prefix ids first, then
using a simple IN rather than a join leads to an easier plan.

Once the easier plan is in use the indexes still aren't that helpful, as
it chooses the index on 'date', but it still has to filter based on the
prefix, so we add an index on (prefix_id, date) so that it can select the
right rows as quickly as possible.

Lastly lazy evaluation was causing 50 queries for the 'oopsinfestation'
info, so we use select_related() to include that in the main query.

There's a test that we do 1 query for the last point, but no test for
the speed of the query.

50. By James Westby

Decode the report when reading it to send the email.

49. By James Westby

Show the (paginated) oopses for each report.

48. By Robert Collins

0.6.7: make it possible to supply a complete list of projects or project groups to prune.

47. By Robert Collins

Fix another typo in the use of timeline-django, release 0.6.6 to get it out there.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:python-oops-tools
This branch contains Public information 
Everyone can see this information.

Subscribers