LAVA Dashboard (deprecated) 2011.10

Milestone information

Project:
LAVA Dashboard (deprecated)
Series:
linaro-11.11
Version:
2011.10
Released:
 
Registrant:
Paul Larson
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
1 Paul Larson, 3 Zygmunt Krynicki
Blueprints:
2 Implemented
Bugs:
2 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon lava-dashboard-0.9-2011.10.tar.gz (md5, sig) Source code release 1,639
last downloaded 71 weeks ago
Total downloads: 1,639

Release notes 

* UI Improvements

Changelog 

View the full changelog

2011-10-21 Zygmunt Krynicki <email address hidden>

 Bump version to 0.9

 Note that 1.0 is not after .9, it's years away at this speed :-(

2011-10-21 Zygmunt Krynicki <email address hidden>

 Handle a case where we have multiple dashboard initialization requests on one page

2011-10-20 Zygmunt Krynicki <email address hidden>

 Merge next tree

2011-10-13 Zygmunt Krynicki <email address hidden>

 Add dashboard-specific css with report chart style class

2011-10-13 Zygmunt Krynicki <email address hidden>

 Put selected reports on the front page

2011-10-13 Zygmunt Krynicki <email address hidden>

 Allow data reports to have front_page attribute

2011-10-13 Zygmunt Krynicki <email address hidden>

 Put a mutex around loading of repository items

2011-10-13 Zygmunt Krynicki <email address hidden>

 Stop adding south to installed apps, it is there automatically

2011-10-11 Zygmunt Krynicki <email address hidden>

 Make image status view super fast :-)

 This is achieved by using denormalized test run view for getting to summary
 data quickly combined with better query management thanks to select_related()

2011-10-18 Paul Larson <email address hidden>

 Fix setup-dev-env.sh so that it works again

2011-09-30 Paul Larson <email address hidden>

 Fix setup-dev-env.sh so that it works again

2011-10-06 Zygmunt Krynicki <email address hidden>

 Add test effort create/update views

2011-09-30 Zygmunt Krynicki <email address hidden>

 Use hint when reporting version using versiontools

 This allows versiontools to track down the place the code is stored and thus
 initialize vcs helpers correctly.

2011-09-30 Zygmunt Krynicki <email address hidden>

 Bump version to 0.9 dev

2011-09-30 Zygmunt Krynicki <email address hidden>

 Require latest development lava-server

2011-09-30 Zygmunt Krynicki <email address hidden>

 Use breadcrumbs from lava-server

2011-09-29 Zygmunt Krynicki <email address hidden>

 Allow dots in bundle stream pathnames

2011-09-27 Paul Larson <email address hidden>

 Release 0.8

2011-09-28 Zygmunt Krynicki <email address hidden>

 Bump version to 0.8

2011-09-28 Zygmunt Krynicki <email address hidden>

 Fix TestRun.denormalize

2011-09-28 Zygmunt Krynicki <email address hidden>

 Use TestRunDenormalization in effort detail page

2011-09-28 Zygmunt Krynicki <email address hidden>

 Denormalize each test run on deserialization

2011-09-28 Zygmunt Krynicki <email address hidden>

 Add data migration that denormalizes all test runs

2011-09-28 Zygmunt Krynicki <email address hidden>

 Add TestRunDenormalization model + schema migration

2011-09-28 Zygmunt Krynicki <email address hidden>

 Add testing effort views

2011-09-27 Zygmunt Krynicki <email address hidden>

 Don't use FixedHeader in bundle list view

2011-09-27 Zygmunt Krynicki <email address hidden>

 Don't use fixed header in the test run list template

 It seems to break when sidebar gets created (it only works fine after users
 start scrolling in the window again).

2011-09-27 Zygmunt Krynicki <email address hidden>

 Rework test run list view to be more efficient (select related + only)

 I had to disable summary views as withouth de-normalized data in the same table
 counting this is too slow.

2011-09-27 Zygmunt Krynicki <email address hidden>

 Make test_result_detail use TestRun.get_results.

 This makes x50 speed difference on posix test suite results

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add TestRun.get_results() that iterates over results efficiently and use it in test_run_detail view.

2011-09-27 Zygmunt Krynicki <email address hidden>

 Fix whitespace

2011-09-27 Zygmunt Krynicki <email address hidden>

 Display attachment list without including the size in the <a> hyperlink

2011-09-27 Zygmunt Krynicki <email address hidden>

 Display bundle SHA1 in smaller font

2011-09-27 Zygmunt Krynicki <email address hidden>

 Fix typo

2011-09-27 Zygmunt Krynicki <email address hidden>

 Whitespace fix

2011-09-27 Zygmunt Krynicki <email address hidden>

 Display custom attributes in test run detail view, add more description helpers

2011-09-27 Zygmunt Krynicki <email address hidden>

 Display board details in hardware context section

2011-09-27 Zygmunt Krynicki <email address hidden>

 Improve bundle detail and test run detail sidebars.

 Appart from adding more meaningful sections the test run view shows a lot of
 descriptions that explain the meaning of some of the more cryptic properties.

2011-09-27 Zygmunt Krynicki <email address hidden>

 Fix tag mismatch in HTML template

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add a signal bundle_was_deserialized

 This signal is sent after a successful deserialization of a bundle. It carries
 the bundle object as argument. I plan on using it for building incremental
 "index" that referes to all test runs with a particular tag reachable from a
 testing effort.

2011-09-27 Zygmunt Krynicki <email address hidden>

 Improve bundle detail view.

 Adding the sidebar with useful information makes bundles feel more as
 first-class objects. This also exposes some hidden data such as the
 serialization format used in the bundle (currently hard-coded to JSON in the
 model) as well as the document format. Additionally the user is given a hint on
 how to download the bundle for local storage/analysis/processing using a full
 lava-dashboard-tool invocation.

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add missing import

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add Bundle.get_document_format(), Bundle.get_serialization_format()

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add Tag and TestingEffort to the admin site

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add TestingEffort model

2011-09-27 Zygmunt Krynicki <email address hidden>

 Add test for deserializing bundles with 1.3 format and tags

2011-09-26 Zygmunt Krynicki <email address hidden>

 Add 1.3 format importer

2011-09-26 Zygmunt Krynicki <email address hidden>

 Add south migration for Tag and TestRun.tags

2011-09-26 Zygmunt Krynicki <email address hidden>

 Add TestRun.tags m2m field to Tag model

2011-09-26 Zygmunt Krynicki <email address hidden>

 Add Tag model

2011-09-26 Zygmunt Krynicki <email address hidden>

 Fix calling deserialize via xml-rpc API

2011-09-26 Zygmunt Krynicki <email address hidden>

 Fix typo in docstring

2011-09-26 Zygmunt Krynicki <email address hidden>

 Make bundle_list view much more database efficient by using select_related().

 Previously, for each bundle, there was an additional query that selected the
 bundle deserialization error object. Now this is query is no longer needed and
 entire page is generated with one bigger query using left outer join. This is
 made possible by using select_related() that joins on the
 BundleDeserializationError model. In addition a second join is made on
 BundleStream this prevents us from re-fetching multiple copies of the single
 bundle stream that all bundles share.

 Based on my rough testing the running time of this page has dropped by x10 or
 more, it was bound by the time required to process each of the queries for all
 N bundles (in my case about 1500)

2011-09-26 Zygmunt Krynicki <email address hidden>

 Convert BundleDeserializationError.bundle to OneToOneField.

 This field makes it possible to use more efficient optimization tricks.

2011-09-19 Zygmunt Krynicki <email address hidden>

 Make front page snippets for dashboard more effective in vertical spacing

2011-09-16 Zygmunt Krynicki <email address hidden>

 spell URL with uppercase letters

2011-09-16 Zygmunt Krynicki <email address hidden>

 Fix attachment list to render correctly when remote attachments are used

2011-09-14 Zygmunt Krynicki <email address hidden>

 Bump version to 0.7.2

2011-09-14 Zygmunt Krynicki <email address hidden>

 Allow packages with name and version up to 128 characters

2011-09-14 Zygmunt Krynicki <email address hidden>

 Add schema migration for SoftwarePackage column changes

2011-09-14 Zygmunt Krynicki <email address hidden>

 Increase package name and version column length to 128

2011-09-09 Paul Larson <email address hidden>

 Improve column data in dashboard results

2011-09-09 Paul Larson <email address hidden>

 Use the content_filename instead of the sha1 sum for bundles (this will
 need to accompany a dispatcher change to take the name of the job and
 use it for the submission filename)

 Also, quit using the uuid for the text of the link to click on for
 viewing the results. Using "[test name] results" may be a little
 redundant I guess, but it's better than putting the uuid there.

2011-08-26 Michael-Doyle Hudson <email address hidden>

 bump version down to 0.7.1

2011-08-25 Michael-Doyle Hudson <email address hidden>

 * the redirect views now preserve trailing path segments and the query string
 * add a jsonp compatible view hanging off a bundle that returns a little bit
 of data about the bundle

2011-08-24 Michael-Doyle Hudson <email address hidden>

 tidy a bit

2011-08-24 Michael-Doyle Hudson <email address hidden>

 extraneous comma

2011-08-24 Michael-Doyle Hudson <email address hidden>

 add tests for preserving query strings

2011-08-24 Michael-Doyle Hudson <email address hidden>

 make other views preserve trailing url parts, add tests & fix exisiting ones

2011-08-23 Michael-Doyle Hudson <email address hidden>

 include *absolute* test_run url in $bundle/json

2011-08-23 Michael-Doyle Hudson <email address hidden>

 include test_run url in $bundle/json

2011-08-23 Michael-Doyle Hudson <email address hidden>

 slightly less useless $bundle/json view

2011-08-23 Michael-Doyle Hudson <email address hidden>

 preserve query string in redirect_to_bundle too

2011-08-23 Michael-Doyle Hudson <email address hidden>

 * allow bundle permalinks to have trailing parts, which are appended to the
 redirected url
 * add a super super simple JSONP view of a bundle

2011-08-23 Zygmunt Krynicki <email address hidden>

 Bump version to 0.8 dev

2011-08-19 Zygmunt Krynicki <email address hidden>

 Bump version to 0.7 final

2011-08-19 Zygmunt Krynicki <email address hidden>

 Use select_related in test run detail template

2011-08-19 Zygmunt Krynicki <email address hidden>

 Speed up image status detail page

2011-08-19 Zygmunt Krynicki <email address hidden>

 Rewrite image_status_detail template to show visual overview ala meego reports

2011-08-18 Zygmunt Krynicki <email address hidden>

 Add jquery.flot.stack plugin (from flot 0.7)

2011-08-18 Zygmunt Krynicki <email address hidden>

 Add front page snippet template and advertise it in extension API

2011-08-18 Zygmunt Krynicki <email address hidden>

 Add dashboard_globals to context processor

2011-08-18 Michael-Doyle Hudson <email address hidden>

 add a put_ex xmlrpc method that returns the URL of the bundle rather than its sha1

2011-08-17 Michael-Doyle Hudson <email address hidden>

 restore put() to the old api and add put_ex() with the new one

2011-08-17 Michael-Doyle Hudson <email address hidden>

 return a link to the bundle from put()

2011-07-26 Zygmunt Krynicki <email address hidden>

 Bump version to 0.7a1

2011-07-26 Zygmunt Krynicki <email address hidden>

 Merge slight theme variation that removes the double navigation bar

2011-07-26 Zygmunt Krynicki <email address hidden>

 Hide lava navigation while browsing the dashboard

2011-07-22 Zygmunt Krynicki <email address hidden>

 Bump version to 0.6 final

2011-07-22 Zygmunt Krynicki <email address hidden>

 Merge 0.6-wip branch

 * New UI synchronized with lava-server, the UI is going to be changed in the
 next release to be more in line with the official Linaro theme. Currently
 most changes are under-the-hood, sporting more jQuery UI CSS.
 * New test browser that allows to see all the registered tests and their test
 cases.
 * New data view browser, similar to data view browser.
 * New permalink system that allows easy linking to bundles, test runs and test
 results.
 * New image status views that allow for quick inspection of interesting
 hardware pack + root filesystem combinations.
 * New image status detail view with color-coded information about test failures
 affecting current and historic instances of a particular root filesystem +
 hardware pack combination.
 * New image test history view showing all the runs of a particular test on a
 particular combination of root filesystem + hardware pack.
 * New table widget for better table display with support for client side
 sorting and searching.
 * New option to render data reports without any navigation that is suitable for
 embedding inside an iframe (by appending &iframe=yes to the URL)
 * New view for showing text attachments associated with test runs.
 * New view showing test runs associated with a specific bundle.
 * New view showing the raw JSON text of a bundle.
 * New view for inspecting bundle deserialization failures.
 * Integration with lava-server/RPC2/ for web APIs
 * Added support for non-anonymous submissions (test results uploaded by
 authenticated users), including uploading results to personal (owned by
 person), team (owned by group), public (visible) and private (hidden from
 non-owners) bundle streams.
 * Added support for creating non-anonymous bundle streams with
 dashboard.make_stream() (for authenticated users)

2011-07-22 Zygmunt Krynicki <email address hidden>

 Add changelog for 0.6

2011-07-22 Zygmunt Krynicki <email address hidden>

 Link to official documentation

2011-07-22 Zygmunt Krynicki <email address hidden>

 Use xml_rpc_signature from linaro_django_xmlrpc

2011-07-22 Zygmunt Krynicki <email address hidden>

 Rename LEBs to Image Status

2011-07-22 Zygmunt Krynicki <email address hidden>

 Remove obsolete dispatcher tests

2011-07-22 Zygmunt Krynicki <email address hidden>

 Merge fixes and tests for bundle deserializer issue LP: 813567

2011-07-22 Zygmunt Krynicki <email address hidden>

 Remove the unused xml-rpc dispatcher

2011-07-22 Zygmunt Krynicki <email address hidden>

 Fix some pyflakes (missing and unused imports)

2011-07-22 Zygmunt Krynicki <email address hidden>

 Add missing import

2011-07-22 Zygmunt Krynicki <email address hidden>

 Use DataView.get_absolute_url() instead of {% url %}

2011-07-22 Zygmunt Krynicki <email address hidden>

 Update DataView tests to match code changes

2011-07-22 Zygmunt Krynicki <email address hidden>

 Clean up DataReport

 - reorder methods to look nicer
 - add __repr__

2011-07-22 Zygmunt Krynicki <email address hidden>

 Clean up DataView

 - make DataView.name a normal accessor, not a property
 - add get_absolute_url()
 - add __unicode__

2011-07-22 Zygmunt Krynicki <email address hidden>

 Clean up _DataViewHandler and DataViewRepostiory

 This code mainly goes to match the DataReportRepository

2011-07-22 Zygmunt Krynicki <email address hidden>

 Clean up _DataReportHandler

2011-07-22 Zygmunt Krynicki <email address hidden>

 Add BaseContentHandler.characters()

2011-07-22 Zygmunt Krynicki <email address hidden>

 Some PEP8 fixes

2011-07-22 Zygmunt Krynicki <email address hidden>

 Reformat data_view_detail breadcrumb for easier reading

2011-07-20 Zygmunt Krynicki <email address hidden>

 Make DataViews use the same repository classes as DataReports

2011-07-20 Zygmunt Krynicki <email address hidden>

 Fix ImageHealth not to crash on missing 'android' rootfs

2011-07-20 Zygmunt Krynicki <email address hidden>

 Add DataView.__repr__

2011-07-20 Zygmunt Krynicki <email address hidden>

 Add a small border to make better distinction in LEB detail page

2011-07-20 Zygmunt Krynicki <email address hidden>

 Only look at /anonymous/lava-daily/ for LEB pages

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add {% call %} template tag.

 This tag allows one to easily call arbitrary functions (including methods on
 objects) with positional arguments. The there are two restrictions:

 1) The object, function or bound method must be in the context
 2) Calling methods prefixed with _ is not allowed

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add special iframe-only mode to report detail pages

2011-07-19 Zygmunt Krynicki <email address hidden>

 Provide top-level link to LEB page

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add templates for thee new LEB views

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add new LEB status/health views:

 1) Page with matrix of links to rootfs / hwpack
 2) Page showing status for all tests for a particular rootfs / hwpack
 3) Page showing history of all the test runs for a particular rootfs / hwpack

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add ImageHealth model

 This is not a real database backed model but a simple helper to build the new
 LEB health/status pages. In the future it can be refactored to a real database
 model backed by periodic de-normalized updates.

2011-07-19 Zygmunt Krynicki <email address hidden>

 Improve TestRun admin page

 Display bundle and test, allow to filter by test

2011-07-19 Zygmunt Krynicki <email address hidden>

 Add fist approximation of the dashboard front page text

2011-07-19 Zygmunt Krynicki <email address hidden>

 Fix links to test run UUID in tables generated with jquery.dashboard.js

2011-07-18 Zygmunt Krynicki <email address hidden>

 Add redirects to bundle, test run and test result

2011-07-16 Zygmunt Krynicki <email address hidden>

 Better breadcrumb name for test result

2011-07-16 Zygmunt Krynicki <email address hidden>

 Improve grammar in api docs

2011-07-16 Zygmunt Krynicki <email address hidden>

 Add support for creating all kinds of streams with make_stream()

2011-07-21 Michael-Doyle Hudson <email address hidden>

 * make the bundle used in the BundleDeserializerSuccessTests tests more
 pathological, as seen in bug 813567
 * fix the bug on postgres by uniqifying test case ids from the bundle being
 imported at the python level

2011-07-21 Michael-Doyle Hudson <email address hidden>

 uniquify test cases at python level before inserting, fixing bug 813567

2011-07-21 Michael-Doyle Hudson <email address hidden>

 more of the same, this time triggering a test failure on postgres

2011-07-21 Michael-Doyle Hudson <email address hidden>

 make the deserialization success test bundle a bit more pathological

2011-07-19 Zygmunt Krynicki <email address hidden>

 Bump version to 0.6b4

2011-07-19 Zygmunt Krynicki <email address hidden>

 Bump required version of lava-server to 0.3b5

2011-07-15 Zygmunt Krynicki <email address hidden>

 Merge 0.6b3 changes

 Note: I removed the two symlinks I added by accident

2011-07-13 Zygmunt Krynicki <email address hidden>

 Bump version to 0.6b3

2011-07-13 Zygmunt Krynicki <email address hidden>

 Fix breadcrumb in attachment detail view

2011-07-13 Zygmunt Krynicki <email address hidden>

 Fix link to images in test result list

2011-07-13 Zygmunt Krynicki <email address hidden>

 Display dates as numbers so that they sort properly

2011-07-13 Zygmunt Krynicki <email address hidden>

 Improve wording in table header

2011-07-13 Zygmunt Krynicki <email address hidden>

 Merge 0.6b2 changes

2011-07-13 Zygmunt Krynicki <email address hidden>

 Bump required version of linaro-django-xmlrpc

2011-07-13 Zygmunt Krynicki <email address hidden>

 Fix tests after shuffling urls

2011-07-13 Zygmunt Krynicki <email address hidden>

 Rework the deprecated XML-RPC handler

2011-07-13 Zygmunt Krynicki <email address hidden>

 Remove obsolete tests of dashboard xml-rpc view

2011-07-13 Zygmunt Krynicki <email address hidden>

 Bump version to 0.6b2

2011-07-13 Zygmunt Krynicki <email address hidden>

 Remove a copy of demo_table_jui.css (already in lava-server)

2011-07-13 Zygmunt Krynicki <email address hidden>

 Use correct app-specific prefixes for all static files

2011-07-12 Zygmunt Krynicki <email address hidden>

 Pass STATIC_URL to report template context

2011-07-12 Zygmunt Krynicki <email address hidden>

 Use linaro-django-xmlrpc in dashboard

2011-07-07 Zygmunt Krynicki <email address hidden>

 Add a copyright header to dashboard_app.extension

2011-07-07 Zygmunt Krynicki <email address hidden>

 Add a note about make-stream

2011-07-07 Zygmunt Krynicki <email address hidden>

 Fix data view tests on python2.6

2011-07-07 Zygmunt Krynicki <email address hidden>

 Expose DashboardAPI to lava-server

2011-07-07 Zygmunt Krynicki <email address hidden>

 Use linaro-django-xmlrpc for all RPC processing

2011-07-07 Zygmunt Krynicki <email address hidden>

 Merge new accelerated data import code from Michael Hudson

2011-07-12 Zygmunt Krynicki <email address hidden>

 Merge performance improvements to Bundle.deserialize()

2011-07-04 Michael-Doyle Hudson <email address hidden>

 bah, fix sqlite

2011-07-04 Michael-Doyle Hudson <email address hidden>

 try, probably futilely, to make the sql a bit more readable

2011-07-04 Michael-Doyle Hudson <email address hidden>

 more pg specific stuff

2011-07-04 Michael-Doyle Hudson <email address hidden>

 give up and start dispatching on database engine

2011-07-04 Michael-Doyle Hudson <email address hidden>

 a very quick self-review

2011-07-04 Michael-Doyle Hudson <email address hidden>

 finally, postgres and sqlite support at the same time

2011-07-04 Michael-Doyle Hudson <email address hidden>

 tests pass on sqlite

2011-07-04 Michael-Doyle Hudson <email address hidden>

 well, this will work on sqlite...

2011-07-04 Michael-Doyle Hudson <email address hidden>

 random progress towards an approach that might work with sqlite

2011-07-01 Michael-Doyle Hudson <email address hidden>

 yay for getting logic 180 out

2011-07-01 Michael-Doyle Hudson <email address hidden>

 merge trunk

2011-06-30 Michael-Doyle Hudson <email address hidden>

 revert view changes

2011-06-30 Michael-Doyle Hudson <email address hidden>

 this might import attributes, my test bundle does not have any of them though

2011-06-30 Michael-Doyle Hudson <email address hidden>

 payoff!! but without importing attachments

2011-06-30 Michael-Doyle Hudson <email address hidden>

 more progress that brings no speed benefits

2011-06-30 Michael-Doyle Hudson <email address hidden>

 bulk insert testcases. no performance improvement yet

2011-06-29 Michael-Doyle Hudson <email address hidden>

 do packages in batches of 1000

2011-06-29 Michael-Doyle Hudson <email address hidden>

 use sensible interpolation, but one big statement still

2011-06-29 Michael-Doyle Hudson <email address hidden>

 use executemany: cleaner, safer but noticeably slower

2011-06-28 Michael-Doyle Hudson <email address hidden>

 horrifying all sql version

2011-06-28 Michael-Doyle Hudson <email address hidden>

 completely the wrong branch, but:
 * do the source package filtering in python, not sql
 * also some debugging crap

2011-06-27 Michael-Doyle Hudson <email address hidden>

 start of a page that shows the test runs from a particular bundle

2011-06-27 Michael-Doyle Hudson <email address hidden>

 start to wire up a view for a specific bundle

2011-07-12 Zygmunt Krynicki <email address hidden>

 Drastic rework of all dashboard UI plus a few new features:

 1) Ability to browse tests
 2) Ability to browse test cases
 2) Ability to browse attachments for a particular test run
 3) Ability to see a particular attachment (+ ajax content download)
 4) Ability to see a particular bundle (+ ajax content download)
 5) Efficient navigation between results in a particular test run

 General UI improvements include:
 1) A whole new theme
 2) Better tables everywhere (with client side search and sort)
 3) Tabs to logically group things together
 4) AJAX progress notification bar
 5) Better hardware context browser

 Some bug fixes:
 1) Proper escaping of %s in data view queries
 2) Cherry-pick hot-fix for django issue preventing usage of strftime("%s") in SQLite

2011-07-12 Zygmunt Krynicki <email address hidden>

 Bump version to 0.6b1

2011-07-12 Zygmunt Krynicki <email address hidden>

 Add templates for few new views and drastically rework dashboard UI

2011-07-12 Zygmunt Krynicki <email address hidden>

 Disabled one test.

 This test is hard to fix without creating dummy bundle stream + bundle. I will
 fix that in the future.

2011-07-12 Zygmunt Krynicki <email address hidden>

 Changed main dashboard view to dashboard index

2011-07-12 Zygmunt Krynicki <email address hidden>

 Several changes to dashboard UI code:

 1) All breadcrumbs are now based on a simple breadcrumb system
 2) Changed all URLs to be rather long and verbose but play well with breadcrumbs
 3) Added attachment list view
 4) Added attachment detail view
 5) Added AJAX view for attachment content

2011-07-09 Zygmunt Krynicki <email address hidden>

 Escape % in data view queries

2011-07-09 Zygmunt Krynicki <email address hidden>

 Display an alert() when chart-related query fails

2011-07-09 Zygmunt Krynicki <email address hidden>

 Automatically patch django issues

2011-07-09 Zygmunt Krynicki <email address hidden>

 Copy patches from django-repots

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add empty production views/reports directory (for development)

2011-07-09 Zygmunt Krynicki <email address hidden>

 Make development settings automatically load example and production dataviews/reports

2011-07-09 Zygmunt Krynicki <email address hidden>

 Move support for dataview-specific database from lava-server

2011-07-09 Zygmunt Krynicki <email address hidden>

 Do not use fixed-width containers for table controls on bundle_list - it was causing problems in firefox

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add additional pagination options to test_detail.html

2011-07-09 Zygmunt Krynicki <email address hidden>

 Convert the "other results" list into a smart option/select

2011-07-09 Zygmunt Krynicki <email address hidden>

 Sort test results in descending order on test_run_detail.html

2011-07-09 Zygmunt Krynicki <email address hidden>

 Re-arrange columns in test_run_list.html

2011-07-09 Zygmunt Krynicki <email address hidden>

 Display summary for results of a test without test cases in test_detail, also display number of failures

2011-07-09 Zygmunt Krynicki <email address hidden>

 Improve visual alignment of cells in bundle_stream_list.html table

2011-07-09 Zygmunt Krynicki <email address hidden>

 Make the pathame column wider in bundle_stream_list.html

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add "Problems?" column to bundle_list and improve other column names in bundle_list.html

2011-07-09 Zygmunt Krynicki <email address hidden>

 Re-arrange tabs in bundle_detail.html so that deserialization error tab shows up before raw json tab

2011-07-09 Zygmunt Krynicki <email address hidden>

 Change extension navigation to look like a nice buttonset

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add get_absolute_url_pattern to TestResult

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add count_failures to TestCase

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add count_results_without_test_case and count_failures_without_test_case to Test

2011-07-09 Zygmunt Krynicki <email address hidden>

 Change default view for bundle stream to bundle list

2011-07-09 Zygmunt Krynicki <email address hidden>

 Add a note to BundleManager.create_with_content

2011-07-08 Zygmunt Krynicki <email address hidden>

 Update/add new dashboard views

2011-07-08 Zygmunt Krynicki <email address hidden>

 Slightly better DataReport model

2011-07-08 Zygmunt Krynicki <email address hidden>

 Add SanitizedBundle model

2011-07-08 Zygmunt Krynicki <email address hidden>

 Static resources related to datatables

2011-07-08 Zygmunt Krynicki <email address hidden>

 Big template rewrite

2011-07-05 Zygmunt Krynicki <email address hidden>

 Merge 0.5.2 release changes

2011-07-01 Zygmunt Krynicki <email address hidden>

 Update bzrignore

2011-07-01 Zygmunt Krynicki <email address hidden>

 Bump version to 0.5.2

2011-07-01 Zygmunt Krynicki <email address hidden>

 Add support for configuring data views and reports

2011-07-01 Zygmunt Krynicki <email address hidden>

 Bump version to 0.5.1

2011-07-01 Zygmunt Krynicki <email address hidden>

 Do not import * at function level

2011-07-01 Zygmunt Krynicki <email address hidden>

 Depend on more recent stuff

2011-07-01 Zygmunt Krynicki <email address hidden>

 Drop the LGPL copyright

2011-06-29 Zygmunt Krynicki <email address hidden>

 Make the 0.6 release to be 0.5, sorry for the confusion

2011-06-29 Zygmunt Krynicki <email address hidden>

 Update changelog for release 0.6/2011.06

2011-06-29 Paul Larson <email address hidden>

 This branch adds two new views for looking at data views (list of and
 details)

2011-06-29 Zygmunt Krynicki <email address hidden>

 Add ability to browse data views

2011-06-29 Paul Larson <email address hidden>

 Use the new extension menu block to provide links to reports and data views.

2011-06-29 Zygmunt Krynicki <email address hidden>

 Add extension menu with links to bundle browser and report list

2011-06-29 Zygmunt Krynicki <email address hidden>

 Handle DashboardAPI.make_stream(name=None) properly

 Work around bug https://bugs.launchpad.net/lava-dashboard/+bug/771182. Older
 clients would send None as the name and this would trigger an IntegrityError to
 be raised by BundleStream.objects.create() which in turn would be captured by
 the fault handler and reported as an unrelated issue to the user. Let's work
 around that by using an empty string instead.

2011-05-24 <email address hidden>

 Deal with None case for name

2011-06-29 Zygmunt Krynicki <email address hidden>

 Allow underscore in URLs to test runs and bundles

2011-06-29 Yongqin Liu<email address hidden>

 Commit for NoReverseMatch when name is bundle_stream

2011-06-29 Zygmunt Krynicki <email address hidden>

 Merge installation docs

2011-06-28 Zygmunt Krynicki <email address hidden>

 Add installation docs

2011-06-28 Zygmunt Krynicki <email address hidden>

 Add documentation template

2011-06-28 Zygmunt Krynicki <email address hidden>

 Add setup.cfg

2011-06-26 Zygmunt Krynicki <email address hidden>

 Use lava-dev-tool in setup-dev-env.sh

2011-06-23 Zygmunt Krynicki <email address hidden>

 Update dependencies

2011-06-23 Zygmunt Krynicki <email address hidden>

 Do not bundle mocker

2011-06-23 Zygmunt Krynicki <email address hidden>

 Mark python2.7 as supported

2011-06-23 Zygmunt Krynicki <email address hidden>

 PEP8 issues in setup.py

2011-06-23 Zygmunt Krynicki <email address hidden>

 Be pip friendly

2011-06-17 Zygmunt Krynicki <email address hidden>

 Fix broken imports and use linaro-django-pagination

2011-06-06 Zygmunt Krynicki <email address hidden>

 Merge lava-server / lava-dashboard resources reorganization

2011-06-03 Michael-Doyle Hudson <email address hidden>

 delete static assets that are now part of lava-server

2011-06-03 Michael-Doyle Hudson <email address hidden>

 load static assets from lava/ namespace where possible

2011-06-06 Zygmunt Krynicki <email address hidden>

 Merge setup-dev-env improvements

2011-06-03 Michael-Doyle Hudson <email address hidden>

 fix --force in a kinda crappy way

2011-06-03 Michael-Doyle Hudson <email address hidden>

 this seems to work now, bit mystified as to where db ends up so --force is broken

2011-05-30 Zygmunt Krynicki <email address hidden>

 Consolidate test_client tests

 TestClient tests used to span views, urls and actual tests. I have now
 abolished non-production views and moved everything to that TestClient's test
 module

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name of dashboard_xml_rpc_handler

2011-05-30 Zygmunt Krynicki <email address hidden>

 Do not use deprecated test class

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name of xml-rpc endpoint in dashboard_api tests

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name for dashboard_xml_rpc_handler in api.html

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name of xml-rpc endpoint URL

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name of dashboard_xml_rpc_handler, fix test

 The test for RequestContext is more complicated in recent django versions,
 response.context is a list of context objects.

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name for test_run_list view

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use canonical name for view

2011-05-30 Zygmunt Krynicki <email address hidden>

 Abolish test urls

2011-05-30 Zygmunt Krynicki <email address hidden>

 Simplify dashboard_app.urls

 Each view will now be named using the canonical form $APP.views.$NAME

2011-05-30 Zygmunt Krynicki <email address hidden>

 Less code duplication

2011-05-30 Zygmunt Krynicki <email address hidden>

 Use reverse() to find real urls

2011-05-30 Zygmunt Krynicki <email address hidden>

 Move import to top-of-file

2011-05-30 Zygmunt Krynicki <email address hidden>

 Make DashboardViewsTestCase a no-op class

 Tests will now run in the real production environment (that defines urls). The
 notion of django applications (libraries) being not testable outside django
 projects (executables) means that either your tests mock the environment (and
 thus don't test what happens at production) or fail (when the containing
 project chooses something that is different from your assumptions). Since this
 is so annoying I'm starting to write "lava server extensions" and not just
 django applications. Lava server extensions are fortunate enough to run in a
 well-defined environment (hosted in the lava server). Because of that we can
 assume all code is production, all urls are out of our control, all urls are
 included. The same simplification applies to templates, temlpates are always
 production. No more dummy empty templates for your django applications.

 This allows us to greatly simplify testing and produce more reliable code.

2011-05-25 Zygmunt Krynicki <email address hidden>

 Remove reference to the about page

2011-05-25 Zygmunt Krynicki <email address hidden>

 Use proper name of xml-rpc handler

2011-05-25 Zygmunt Krynicki <email address hidden>

 Install PaginationMiddleware

2011-05-25 Zygmunt Krynicki <email address hidden>

 Add comma in comment

2011-05-25 Zygmunt Krynicki <email address hidden>

 Remove about page

2011-05-25 Zygmunt Krynicki <email address hidden>

 Update setup.py (still in progress)

2011-05-25 Zygmunt Krynicki <email address hidden>

 Remove usage of versiontools from dashboard_app/__init__.py

2011-05-25 Zygmunt Krynicki <email address hidden>

 Update MANIFEST.in

2011-05-25 Zygmunt Krynicki <email address hidden>

 Add extension point for lava-server

2011-05-25 Zygmunt Krynicki <email address hidden>

 Kill launch_control (as package), move contents to dashboard_app

2011-05-25 Zygmunt Krynicki <email address hidden>

 Kill dashboard_server

2011-05-24 Zygmunt Krynicki <email address hidden>

 Remove dummy templates

2011-05-25 Zygmunt Krynicki <email address hidden>

 Merge changes required to work on current django-testscenarios

2011-05-23 Zygmunt Krynicki <email address hidden>

 Adapt to recent churn in django-testscenarios

2011-05-23 Zygmunt Krynicki <email address hidden>

 Merge more DashboardAPI tests

2011-05-19 Zygmunt Krynicki <email address hidden>

 Add some more test for make_stream failure

2011-05-19 Zygmunt Krynicki <email address hidden>

 Add simple tests for DashboardAPI.make_stream()

2011-05-19 Zygmunt Krynicki <email address hidden>

 Merge tests for DataReport

2011-05-19 Zygmunt Krynicki <email address hidden>

 Add tests for DataReport context, make the code easier to test

2011-05-19 Zygmunt Krynicki <email address hidden>

 Merge sandbox for data view queries

2011-05-19 Zygmunt Krynicki <email address hidden>

 Fix typo in sandbox settings

2011-05-18 Zygmunt Krynicki <email address hidden>

 Add two tests for DataView.get_connection()

2011-05-18 Zygmunt Krynicki <email address hidden>

 Use DataView.get_connection() to actually dispatch queries, cleanup imports

2011-05-18 Zygmunt Krynicki <email address hidden>

 Make settings.debian data-view aware

2011-05-18 Zygmunt Krynicki <email address hidden>

 Add DataView.get_connection()

2011-05-19 Zygmunt Krynicki <email address hidden>

 Merge documentation explaining how to setup sandboxing

2011-05-19 Zygmunt Krynicki <email address hidden>

 Reword certain sentences

2011-05-19 Zygmunt Krynicki <email address hidden>

 Document how to setup sandboxed/secured data views

2011-05-08 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c9

2011-05-08 Zygmunt Krynicki <email address hidden>

 Merge bugfixes and cleanups found thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Fix undefined variable reference, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Remove unused local, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Document broken code (that we're not using most likely), thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Fix undefined variable, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Fix duplicate test function name, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Use time_check_performed in tests, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Remove unused locals, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Remove unused imports, thanks to pyflakes

2011-05-08 Zygmunt Krynicki <email address hidden>

 Remove duplicate import

2011-05-08 Zygmunt Krynicki <email address hidden>

 Fix invalid argument found by pyflakes

2011-05-05 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c8

2011-05-05 Zygmunt Krynicki <email address hidden>

 Fix render_to_table() without specifying options

2011-05-05 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c7

2011-05-05 Zygmunt Krynicki <email address hidden>

 Minor style change

2011-05-05 Zygmunt Krynicki <email address hidden>

 Add support for adding table caption

2011-05-05 Zygmunt Krynicki <email address hidden>

 Add some margin around data tables

2011-05-05 Zygmunt Krynicki <email address hidden>

 Better report template

2011-05-05 Zygmunt Krynicki <email address hidden>

 Update dashboard plugin so that it's possible to have multiple charts per page

2011-05-05 Zygmunt Krynicki <email address hidden>

 Update axislabel plugin

2011-05-05 Zygmunt Krynicki <email address hidden>

 Update to jQuery.flot 0.7

2011-05-04 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c6

2011-05-04 Zygmunt Krynicki <email address hidden>

 Convert decimals to floats when calling query_data_view

2011-05-04 Zygmunt Krynicki <email address hidden>

 Add plot support and simple charting API for jquery.dashboard.js

2011-05-04 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c5

2011-05-04 Zygmunt Krynicki <email address hidden>

 Construct proper URLs in render_to_table

2011-05-04 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c4

2011-05-04 Zygmunt Krynicki <email address hidden>

 Fix JavaScript API render_to_table

2011-05-04 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c3

2011-05-04 Zygmunt Krynicki <email address hidden>

 Remove jsonfield application

2011-05-04 Zygmunt Krynicki <email address hidden>

 Remove apache files

2011-05-04 Zygmunt Krynicki <email address hidden>

 Merge data-reports branch with 0.4 release

2011-05-04 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c2

2011-05-04 Zygmunt Krynicki <email address hidden>

 Don't crash if the repository directory cannot be enumerated

2011-05-03 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4c1

2011-05-03 Zygmunt Krynicki <email address hidden>

 Provide API_URL in report context pointing to XML-RPC server

2011-05-03 Zygmunt Krynicki <email address hidden>

 Refresh example reports, use API_URL

2011-05-03 Zygmunt Krynicki <email address hidden>

 Updated changelog

2011-05-03 Zygmunt Krynicki <email address hidden>

 Cleanup assets, remove unused content

2011-05-03 Zygmunt Krynicki <email address hidden>

 Remove old jquery and jquery ui

2011-05-03 Zygmunt Krynicki <email address hidden>

 Fix pygments css URL

2011-05-03 Zygmunt Krynicki <email address hidden>

 Document query_data_views and data_view_info

2011-05-03 Zygmunt Krynicki <email address hidden>

 Remove databrowse.css file

2011-05-03 Zygmunt Krynicki <email address hidden>

 Update jquery in registeration/base.html template

2011-05-03 Zygmunt Krynicki <email address hidden>

 Update jquery and jquery.ui in api.html

2011-05-03 Zygmunt Krynicki <email address hidden>

 Update jquery and jquery ui usage in test_run_list.html

2011-05-03 Zygmunt Krynicki <email address hidden>

 Make all data reports use pathnames relative to the directory with .xml file

2011-05-03 Zygmunt Krynicki <email address hidden>

 Add jQuery 1.5.1 and jQuery UI 1.8.12

2011-05-03 Zygmunt Krynicki <email address hidden>

 Redesign report_detail template

2011-05-03 Zygmunt Krynicki <email address hidden>

 Add Aristo jquery.ui theme.

 Licensed under Creative Commons Attribution-Share Alike 3.0 with permission from 280 North and Pinvoke.
 See: http://taitems.tumblr.com/post/482577430/introducing-aristo-a-jquery-ui-theme

2011-05-03 Zygmunt Krynicki <email address hidden>

 Add automatically generated pygments.css

 pygmentize -S friendly -a .pygments -O nobackground=1 -f html

2011-05-03 Zygmunt Krynicki <email address hidden>

 Add stylizet tag (based on pygments) to pretty-print code

2011-05-03 Zygmunt Krynicki <email address hidden>

 Remove unused variable

2011-05-03 Zygmunt Krynicki <email address hidden>

 Move Object and Undefined to dashboard_app.repositories

2011-05-03 Zygmunt Krynicki <email address hidden>

 Make sure Repository is loaded in production mode

2011-05-03 Zygmunt Krynicki <email address hidden>

 Make DataReport more resilient to IOErrors, reload the report each time in debug mode

2011-05-03 Zygmunt Krynicki <email address hidden>

 Fix unit tests for Bundle.__unicode__

2011-05-03 Zygmunt Krynicki <email address hidden>

 Add debian configuration related to data views and data reports

2011-05-02 Zygmunt Krynicki <email address hidden>

 Add indices on NamedAttribute and HardwareDevice to speed up lookup of certain queries

2011-05-02 Zygmunt Krynicki <email address hidden>

 Attempt to reference /srv/launch-control/data-views-and-reports/ in development mode

2011-05-02 Zygmunt Krynicki <email address hidden>

 Make streams and bundle-import-queue more portable

2011-05-02 Zygmunt Krynicki <email address hidden>

 Add render_to_table to JavaScript dashboard API

2011-05-02 Zygmunt Krynicki <email address hidden>

 Bundle.__unicode__ referes to sha1 only

2011-04-29 Zygmunt Krynicki <email address hidden>

 Add bundle-import-queue.xml

2011-04-29 Zygmunt Krynicki <email address hidden>

 Rewrite SQL for bundles.xml

2011-04-29 Zygmunt Krynicki <email address hidden>

 Better admin site for Bundle and BundleDeserializationError

2011-04-29 Zygmunt Krynicki <email address hidden>

 Rewrite SQL for streams.xml to be easier to read

2011-04-29 Zygmunt Krynicki <email address hidden>

 Remove default value of testruns 'pathname' argument

2011-04-29 Zygmunt Krynicki <email address hidden>

 Change DashboardAPI.bundles() to include Bundle.content_size

2011-04-29 Zygmunt Krynicki <email address hidden>

 Allow admin view for HardwareDevice to filter devices by class

2011-04-29 Zygmunt Krynicki <email address hidden>

 Add data view for looking at boards in a bundle stream

2011-04-29 Zygmunt Krynicki <email address hidden>

 Add data view for looking at test runs in a bundle stream

2011-04-28 Zygmunt Krynicki <email address hidden>

 Reindent jquery.rpc.js, what a mess :/

2011-04-28 Zygmunt Krynicki <email address hidden>

 Fix some javascript code in reports

2011-04-28 Zygmunt Krynicki <email address hidden>

 Move example bundles to examples/bundles and make setup-dev-env create a dedicated data stream for example content

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add example reports

2011-04-28 Zygmunt Krynicki <email address hidden>

 Change development settings to look into examples/reports and examples/views

2011-04-28 Zygmunt Krynicki <email address hidden>

 Link reports back to base template

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add templates for report views

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add javascript libraries for XML-RPC and dashboard

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add report views to url mapper

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add views for listing and accessing reports

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add DataReport pseudo-model for storing report information

2011-04-28 Zygmunt Krynicki <email address hidden>

 Add common code for repository directory-of-xml-files

2011-04-26 Zygmunt Krynicki <email address hidden>

 Remove django-reports

2011-04-25 Zygmunt Krynicki <email address hidden>

 Merge workaround for test-specific models and south

2011-04-25 Zygmunt Krynicki <email address hidden>

 Add a hacky workaround to make models defined in tests work with south

2011-04-25 Zygmunt Krynicki <email address hidden>

 Merge branch that adds south support

2011-04-22 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2011-04-18 Zygmunt Krynicki <email address hidden>

 Run migrate in setup-dev-env.sh

2011-04-18 Zygmunt Krynicki <email address hidden>

 Add initial migration

2011-04-18 Zygmunt Krynicki <email address hidden>

 Don't run south tests

2011-04-18 Zygmunt Krynicki <email address hidden>

 Add south to dependencies

2011-04-22 Zygmunt Krynicki <email address hidden>

 Merge data-views feature

2011-04-22 Zygmunt Krynicki <email address hidden>

 Merge with trunk to resolve conflicts

2011-04-18 Zygmunt Krynicki <email address hidden>

 Add new field to dashboard_app.dataview.__all__

2011-04-18 Zygmunt Krynicki <email address hidden>

 Use more settings features from django-debian

2011-04-11 Zygmunt Krynicki <email address hidden>

 Fix old name in __all__

2011-04-09 Zygmunt Krynicki <email address hidden>

 Fix typo

2011-04-09 Zygmunt Krynicki <email address hidden>

 Implement DashboardAPI.query_data_view

2011-04-09 Zygmunt Krynicki <email address hidden>

 Change DataView parsing, add notion of backend-specific queries, add __call__ method

2011-04-09 Zygmunt Krynicki <email address hidden>

 Add another example data view

2011-04-08 Zygmunt Krynicki <email address hidden>

 Add DashboardAPI.data_view_info()

2011-04-08 Zygmunt Krynicki <email address hidden>

 Make DataViewRepository iterable

2011-04-08 Zygmunt Krynicki <email address hidden>

 In development mode load data views from dashboard_server/data_views

2011-04-08 Zygmunt Krynicki <email address hidden>

 Add DashboardAPI.data_views() function

2011-04-08 Zygmunt Krynicki <email address hidden>

 Add DataViewRepository implementation

2011-04-08 Zygmunt Krynicki <email address hidden>

 Add example query for listing bundle streams

2011-04-08 Zygmunt Krynicki <email address hidden>

 Add initial DataView code, xml loader and tests

2011-04-07 Zygmunt Krynicki <email address hidden>

 Bump version to 0.4 development

2011-04-22 Zygmunt Krynicki <email address hidden>

 Merge 0.3 branch into trunk

2011-04-22 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3 final

2011-04-22 Zygmunt Krynicki <email address hidden>

 Merge 0.3c10 (tenth release candidate)

2011-04-22 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3~c10

2011-04-22 Zygmunt Krynicki <email address hidden>

 Allow more elements to be configured with django-debian

2011-04-14 Zygmunt Krynicki <email address hidden>

 Use login.ubuntu.com as OpenID provider

2011-04-13 Michael-Doyle Hudson <email address hidden>

 use login.ubuntu.com not login.launchpad.net

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c9 (ninth release candidate)

2011-04-06 Zygmunt Krynicki <email address hidden>

 Add ability to define bundle stream name in DashboardAPI.make_stream()

2011-04-06 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c9

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c8 (eighth release candidate)

2011-04-06 Zygmunt Krynicki <email address hidden>

 Catch IntegrityError properly

2011-04-06 Zygmunt Krynicki <email address hidden>

 Fix typo

2011-04-06 Zygmunt Krynicki <email address hidden>

 Update changelog

2011-04-06 Zygmunt Krynicki <email address hidden>

 Add DashboardAPI.make_stream()

 This function can create anonymous bundle streams

2011-04-06 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c8

2011-04-06 Zygmunt Krynicki <email address hidden>

 Remove print statement

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c7 (seventh release candidate)

2011-04-06 Zygmunt Krynicki <email address hidden>

 Link to bundle lists in a bundle stream view

2011-04-06 Zygmunt Krynicki <email address hidden>

 Add a view for showing bundles in a particular stream

2011-04-06 Zygmunt Krynicki <email address hidden>

 Display hardware devices in test run's hardware context view

2011-04-06 Zygmunt Krynicki <email address hidden>

 Display software package in test run's software context view

2011-04-06 Zygmunt Krynicki <email address hidden>

 Display software sources in test run's software context view

2011-04-05 Zygmunt Krynicki <email address hidden>

 Update NEWS

2011-04-05 Zygmunt Krynicki <email address hidden>

 Document TestRun.time_check_performed

2011-04-05 Zygmunt Krynicki <email address hidden>

 Use test_result.relative_index in test_run_detail template

2011-04-05 Zygmunt Krynicki <email address hidden>

 Fix TestRun.get_summary_results()

2011-04-05 Zygmunt Krynicki <email address hidden>

 Provide mini-list of test results from the same run in the sidebar.

2011-04-05 Zygmunt Krynicki <email address hidden>

 Better TestResult admin site and __unicode__ method

2011-04-05 Zygmunt Krynicki <email address hidden>

 Document TestResult.relative_index

2011-04-04 Zygmunt Krynicki <email address hidden>

 Better description for TestCase.units

2011-04-01 Zygmunt Krynicki <email address hidden>

 Change tabs to spaces and reindent.

2011-04-01 Zygmunt Krynicki <email address hidden>

 Change how DashboardAPI documentation is rendered, fixes LP:740595

2011-04-01 Zygmunt Krynicki <email address hidden>

 Change default initial header level for REsT rendering.

 The initial level was 1 which made DashboardAPI documentation look
 odd. I changed it to 4 to make it more pleasant to look at.

2011-04-01 Zygmunt Krynicki <email address hidden>

 Fix indent issue in REsT documentation for DashboardAPI.get()

2011-04-01 Zygmunt Krynicki <email address hidden>

 Add regression tests for LP:744922

2011-03-23 Zygmunt Krynicki <email address hidden>

 Fix description of various kinds of bundle streams in the bundle stream details page

2011-03-22 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c7

2011-03-22 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c6 (which was released as 0.5 sorry)

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c6 (sixth release candidate)

2011-03-22 Zygmunt Krynicki <email address hidden>

 Bump the max_length of SoftwarePackage.version to 64 characters.

 Damn you pulseaudio 1:0.9.22~0.9.21+stable-queue-32-g8478-0ubuntu14

2011-03-22 Zygmunt Krynicki <email address hidden>

 Fix older fixtures after changing models

2011-03-22 Zygmunt Krynicki <email address hidden>

 Add missing import

2011-03-22 Zygmunt Krynicki <email address hidden>

 Count test_result in a test run from 1, not from 0

2011-03-22 Zygmunt Krynicki <email address hidden>

 Fix test_result unicode unit tests

2011-03-22 Zygmunt Krynicki <email address hidden>

 Change sorting on test runs

2011-03-22 Zygmunt Krynicki <email address hidden>

 Store the order of test results when importing them from json

 This allows to have predictable ordering of results in cases when
 a test run has more than one result.

2011-03-21 Zygmunt Krynicki <email address hidden>

 Increase NamedAttribute.value.max_length to 512

2011-03-18 Zygmunt Krynicki <email address hidden>

 Fix typo (thanks plars!)

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c5 (fifth release candidate)

2011-03-18 Zygmunt Krynicki <email address hidden>

 Add simple text attachment viewer

2011-03-18 Zygmunt Krynicki <email address hidden>

 When importing attachments in older formats set mime type to text/plain

2011-03-18 Zygmunt Krynicki <email address hidden>

 Add fixture with gcc bundle stream

2011-03-18 Zygmunt Krynicki <email address hidden>

 Add example_coremark bundle

2011-03-18 Zygmunt Krynicki <email address hidden>

 Add support for importing 1.2 format documents

2011-03-18 Zygmunt Krynicki <email address hidden>

 Minor improvements to admin site

2011-03-18 Zygmunt Krynicki <email address hidden>

 Add better support for postgresql

2011-03-18 Zygmunt Krynicki <email address hidden>

 Use fetchall() instead of a loop

2011-03-18 Zygmunt Krynicki <email address hidden>

 Cast javascript_commit_timestamp to integer after multiplication to get better resolution

2011-03-18 Zygmunt Krynicki <email address hidden>

 Check if TestCase exists before rendering a gcc report

2011-03-18 Zygmunt Krynicki <email address hidden>

 Remove useless imports from urls

2011-03-18 Zygmunt Krynicki <email address hidden>

 Use floatformat to display measurement fields

2011-03-18 Zygmunt Krynicki <email address hidden>

 Change project timezone to UTC

2011-03-17 Zygmunt Krynicki <email address hidden>

 Add custom SQL for PostgreSQL and Sqlite so that gcc charts can produce correct data.

2011-03-17 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c5

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c4 (fourth release candidate)

2011-03-16 Zygmunt Krynicki <email address hidden>

 Add simple shell script that simplifies testing of sqlite and pgsql backends.

2011-03-16 Zygmunt Krynicki <email address hidden>

 Support more possible error messages in database-specific test case

2011-03-16 Zygmunt Krynicki <email address hidden>

 Make successful deserialization tests not use TransactionTestCase

 Those tests don't fail and transactions just prolong testing. If something goes
 wrong they will still fail, they may just affect subsequent tests with
 IntegrityError but we don't care about that (one test failure is just as bad as
 100 failures)

2011-03-16 Zygmunt Krynicki <email address hidden>

 Separate duplicate bundle upload test to use TransactionTestCase

 This test case may raise IntegrityError and therefore must use real
 transactions that are only provided by TransactionTestCase.

2011-03-16 Zygmunt Krynicki <email address hidden>

 Delete created attachments and bundles.

 This is required due to the way django 1.2.5 behaves.
 http://docs.djangoproject.com/en/1.2/releases/1.2.5/#filefield-no-longer-deletes-files

2011-03-16 Zygmunt Krynicki <email address hidden>

 Drop some dead code and add Bundle.delete_files to clean up in test code

2011-03-16 Zygmunt Krynicki <email address hidden>

 Rewrite fixture.create_bundle to use Bundle.objects.create_with_content

2011-03-16 Zygmunt Krynicki <email address hidden>

 Rewrite DashboardAPI.put() to use Bundle.objects.create_with_content()

2011-03-16 Zygmunt Krynicki <email address hidden>

 Add new manager to Bundles.

 This manager adds a method to conventiently and safely create a bundle with
 content without having to worry about transactions, uniqueness constraints,
 rollbacks and so on.

2011-03-16 Zygmunt Krynicki <email address hidden>

 Improve transaction handling in document import code.

 This code change was created after experiencing PostgreSQL behavior of handling
 IntegrityErrrors. The major change is to ensure the actual importer runs in
 transaction (commit_on_success) and can properly clean up anything it created
 (including attachments).

 Some minor changes are to the public API, it is no longer using transaction
 decorators. There is also some supplementary logging to help figure out where
 problems creep.

2011-03-16 Zygmunt Krynicki <email address hidden>

 Reorder middleware entries.

 Previously middleware was sorted by name. This is not a good idea. This order
 is based on what I found on djangoproject.com

2011-03-16 Zygmunt Krynicki <email address hidden>

 Add database type to MEDIA_ROOT in development mode.

 This allows one to keep separate state for both sqlite and pgsql

2011-03-15 Zygmunt Krynicki <email address hidden>

 Use BigIntegerField to store microseconds for test duration.

 Previously IntegerField failed on PostgreSQL

2011-03-15 Zygmunt Krynicki <email address hidden>

 Rollback failed transactions when deserialization goes bad.

 This prevents issues with transaction handling on postgresql.

2011-03-15 Zygmunt Krynicki <email address hidden>

 Add hacky support for postgresql as development database

2011-03-15 Zygmunt Krynicki <email address hidden>

 Enable DEBUG_PROPAGATE_EXCEPTIONS in development mode

 This allows to clearly see the actual exception that caues a view to fail

2011-03-15 Zygmunt Krynicki <email address hidden>

 Generate random strings that will fit in max_length constraint for the corresponding database fields

2011-03-15 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c4

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c3 third release candidate

2011-03-14 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c3

2011-03-14 Zygmunt Krynicki <email address hidden>

 Remove unused apache.conf

2011-03-14 Zygmunt Krynicki <email address hidden>

 Fix LOGIN_REDIRECT_URL

2011-03-14 Zygmunt Krynicki <email address hidden>

 Increase max_length of few fields after preliminary testing on postgresql

2011-04-07 Zygmunt Krynicki <email address hidden>

 Merge 0.3c2 (second release candidate)

2011-03-14 Zygmunt Krynicki <email address hidden>

 Add TODO file

2011-03-14 Zygmunt Krynicki <email address hidden>

 Add apache integration files

2011-03-14 Zygmunt Krynicki <email address hidden>

 Remove messages application from installed applications.

 We were not using it, it was added by accident when converting settings

2011-03-14 Zygmunt Krynicki <email address hidden>

 Ship package data when installing, this is needed by debian package

2011-03-14 Zygmunt Krynicki <email address hidden>

 Depend on django-staticfiles in setup.py

2011-03-14 Zygmunt Krynicki <email address hidden>

 Update MANIFEST.in after media got renamed to htdocs

2011-03-14 Zygmunt Krynicki <email address hidden>

 Import * from django.conf.url.defaults

 This prevents tests from failing to work as a side effect of missing handler404
 and handler500

2011-03-14 Zygmunt Krynicki <email address hidden>

 Remove CSRFClient

 The functionality of this client is now available in the built in django test client.

2011-03-14 Zygmunt Krynicki <email address hidden>

 Fix csrf test to explicitly use RequestContext and csrf_token

 This is needed because previusly this test depended on middleware rewriting all
 responses to include the token. This is not recommended, slow and might break
 unrelated views. With django 1.2 as dependency we can now use proper, explicit,
 csrf tokens.

2011-03-14 Zygmunt Krynicki <email address hidden>

 Add csrf_token to all registration forms

2011-03-14 Zygmunt Krynicki <email address hidden>

 Reorganize settings and urls based on django-hello

 This reorganization has several important consequences:
 * URLs can now be installed relative to any desired prefix
 * Settings are now split into common, development, production and debian (each
 except for common is inheriting from exactly one parent).
 * Add dependency on django-staticfiles
 * Use django-staticfiles to serve static/media content in development mode
 * Build cache of static files in setup-dev-env.sh

2011-03-14 Zygmunt Krynicki <email address hidden>

 Load static files from STATIC_URL

2011-03-09 Zygmunt Krynicki <email address hidden>

 Remove databrowse remains from dashboard_server.urls

2011-03-03 Zygmunt Krynicki <email address hidden>

 Bug fixes found in 0.3c1

 * Bump version to 0.3c2
 * Add helper that aids in debugging deserialization errors.
 * Fix missing import and invalid attribute name.
 * Bump required version of linaro-dashboard-bundle to 1.4

2011-03-03 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c2

2011-03-03 Zygmunt Krynicki <email address hidden>

 Add helper that aids in debugging deserialization errors.

 This helper tests a precondition in deserialization tests. If the
 deserialization failed totally then a traceback will be included in the
 assertion error.

2011-03-03 Zygmunt Krynicki <email address hidden>

 Fix missing import and invalid attribute name.

 This was never caught because while I implemented linaro-dashboard-bundle 1.4 I
 was still using 1.2 from my system's deb package. The evolution code-path was
 (in that version) silently ignored and I never properly tested 1.1 attachment
 importer

2011-03-02 Zygmunt Krynicki <email address hidden>

 Bump required version of linaro-dashboard-bundle to 1.4

2011-03-02 Zygmunt Krynicki <email address hidden>

 Preparation for 0.3 release candidate 1

 * Bump version to 0.3c1
 * Refresh dependencies

2011-03-02 Zygmunt Krynicki <email address hidden>

 Bump version to 0.3c1

2011-03-02 Zygmunt Krynicki <email address hidden>

 Refresh dependencies

2011-03-02 Zygmunt Krynicki <email address hidden>

 Few tweaks for GCC benchmark reports

 * Generate "best data" series only if we have some data in the first place
 * Autopaginate test run detail view by 50 test results
 * Display test run UUID in test run detail context pane
 * Display test run attributes in test result details
 * Add a button that removes gcc report

2011-03-02 Zygmunt Krynicki <email address hidden>

 Generate "best data" series only if we have some data in the first place

2011-03-02 Zygmunt Krynicki <email address hidden>

 Autopaginate test run detail view by 50 test results

2011-03-02 Zygmunt Krynicki <email address hidden>

 Display test run UUID in test run detail context pane

2011-03-02 Zygmunt Krynicki <email address hidden>

 Display test run attributes in test result details

2011-03-02 Zygmunt Krynicki <email address hidden>

 Add a button that removes gcc report

2011-03-02 Zygmunt Krynicki <email address hidden>

 Improvements to import process

 * Fix a typo in example "source-refs" bundle
 * Add an ability to import all documents as latest format via evolution.
 * Add support for importing 1.1 format attachments.
 * Remove debian copyright file (moved to packaging branch)
 * Add mime_type to Attachment model.

2011-03-02 Zygmunt Krynicki <email address hidden>

 Fix a typo in example "source-refs" bundle

2011-03-02 Zygmunt Krynicki <email address hidden>

 Add an ability to import all documents as latest format via evolution.

 This option is disabled by default but can simplify the import process and
 currently passes all tests. In the future we can consider discarding all but
 the latest and greatest importer to simplify the codebase. Since all format
 upgrades retain all information this operation is safe.

 The only downside would be the lack of DocumentEvolution method that safely
 converts from a more recent format to an older format if the operation is safe
 and is not discarding anything. This would be needed if there are some legacy
 programs that are still processing 1.0 documents manually and were not adapted
 to use any abstraction libraries or more recent formats directly.

 Currently we store the actual test bundle / document that the user is uploading
 to the system but in the future we may choose to discard it and only re-crate
 it on demand.

2011-03-02 Zygmunt Krynicki <email address hidden>

 Add support for importing 1.1 format attachments.

 The actual method does three operations to achieve this:
 1) move importing of software context and hardware context to dedicated helper methods
 2) change the way software context import method works in 1.1 to import
 software sources and software image description from an alternate name
 3) change the way attachment importing works in 1.1 (new code)

2011-03-02 Zygmunt Krynicki <email address hidden>

 Remove debian copyright file (moved to packaging branch)

2011-03-02 Zygmunt Krynicki <email address hidden>

 Add mime_type to Attachment model.

2011-03-01 Zygmunt Krynicki <email address hidden>

 Update MANIFEST.in to ship all everything that should be shipped in the tarball

2011-03-01 Zygmunt Krynicki <email address hidden>

 Refresh dependencies

2011-02-23 Zygmunt Krynicki <email address hidden>

 Use UTC timestamps when adding new bundle

 Previously the Bundle.uploaded_on attribute used the auto_add_now = True django feature.
 This feature uses _local_ time, depending on timezone. This causes issues when working
 with datetimes as all other timestamps are in UTC.

2011-02-08 Zygmunt Krynicki <email address hidden>

 Display branch name in base.html template, is possible

2010-12-22 Zygmunt Krynicki <email address hidden>

 For development branches display branch nickname longside the branch version

2011-02-08 Zygmunt Krynicki <email address hidden>

 Merge sprint work (new reports UI) and 1.1 format work

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merge with trunk to resolve merge conflicts.

2011-02-01 Zygmunt Krynicki <email address hidden>

 Do not display shadows in the plot, fixes 26

2011-02-01 Zygmunt Krynicki <email address hidden>

 Drop another debug line

2011-02-01 Zygmunt Krynicki <email address hidden>

 Remove logging statements

2011-02-01 Zygmunt Krynicki <email address hidden>

 Fix typo in css path

2011-02-01 Zygmunt Krynicki <email address hidden>

 Do not tread measurement of 0 as unassigned

2011-02-01 Zygmunt Krynicki <email address hidden>

 Add gcc benchmark report

2011-01-29 Zygmunt Krynicki <email address hidden>

 Add jquery.flot.axislabel plugin

 This plugin came directly from github https://github.com/xuanluo/flot-axislabels

2011-01-29 Zygmunt Krynicki <email address hidden>

 Add jquery.flot.navigate plugin

2011-01-29 Zygmunt Krynicki <email address hidden>

 Add jquery-ui-1.8.9

2011-01-26 Zygmunt Krynicki <email address hidden>

 Add sample bundle with source references

2011-01-26 Zygmunt Krynicki <email address hidden>

 Display test case and test name in test case admin

2011-01-26 Zygmunt Krynicki <email address hidden>

 Add gcc benchmark report and data source with required dependencies

2011-01-24 Zygmunt Krynicki <email address hidden>

 Adapt to new linaro-json 2.0

2011-01-13 Zygmunt Krynicki <email address hidden>

 Merge django-reports

2011-02-04 Zygmunt Krynicki <email address hidden>

 Fix wording error

2011-02-04 Zygmunt Krynicki <email address hidden>

 Clean up one test class

2011-02-04 Zygmunt Krynicki <email address hidden>

 Merge django-restricted-resource work with significant changes to tests, views and several other places

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing DashboardAPIBundlesTests test

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing TestRunTests, BundleDeserializerText2DatabaseFailureTestCase, BundleDeserializerText2DatabaseTestCase and DashboardAPIPutFailureTransactionTests tests

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing DashboardAPIPutTests and DashboardAPIStreamsTests tests

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app.DashboardAPIGetTests and DashboardAPIPutFailureTests tests

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app..BundleStreamManagerAllowedForAnyoneTestCase , dashboard_app.BundleTests, dashboard_app.DashboardAPIBundlesTests

2011-01-13 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app.BundleStreamManagerAllowedForUserTestCase

2011-01-12 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app.DashboardAPIBundlesFailureTests

2011-01-12 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app.DashboardAPIPutFailureTests tests

2011-01-12 Deepti B. Kalakeri<email address hidden>

 Fixing dashboard_app.TestRunViewAuth and dashboard_app.TestRunDetailView tests

2011-01-12 Deepti B. Kalakeri<email address hidden>

 Fixing bundle_stream.BundleStreamTests tests

2011-01-11 Deepti B. Kalakeri<email address hidden>

 Fixing some of the test failures

2011-01-10 Zygmunt Krynicki <email address hidden>

 Change bundle stream ownership semantics.

 Add explicit anonymous streams (that are also public)
 Make all streams owned by someone (either group or user)
 Rework pathnames so that new ownership is expressed there

2011-01-10 Deepti B. Kalakeri<email address hidden>

 Fixing a small typo in the default_settings.py

2011-01-10 Deepti B. Kalakeri<email address hidden>

 Adding zygmunts changes to automate using django-restricted-resource

2011-01-07 Deepti B. Kalakeri<email address hidden>

 Removing/changing more things for bundlestream to make use of the django-restricted-resource code

2011-01-07 Deepti B. Kalakeri<email address hidden>

 Removing the dashboard_app/managers.py as we make use of the django-restricted-resource managers.py

2011-01-07 Deepti B. Kalakeri<email address hidden>

 Adding code to bundlestream to make use of the django-restricted-resource

2011-02-02 Zygmunt Krynicki <email address hidden>

 Adapte to new version of linaro-json

2011-02-02 Zygmunt Krynicki <email address hidden>

 Cherry pick revision 132 from development branch to work around merge conflicts, this brings in "Adapt to new linaro-json 2.0"

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merge better templates for various views.

2011-01-13 Zygmunt Krynicki <email address hidden>

 Several things clumped together

 * Fix title on all pages to use the block.super to get consistent Launch Control prefix
 * Add simple software context / hardware context views/templates
 * Recreate dummy (empty) templates in the dashboard_app/templates tree for testing
 * Rework bundle_stream_detail to test_run_list. Showing list of bundles that
 each has a list of test runs was a bad idea that just complicated the code
 for no benefit. To work properly it also needed two-way pagination which we
 proabably cannot do with autopaginate. This is also the first step to get
 rid of odd terminology from the UI and make it more about testing and
 less about "bundles" and "stream"

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merge initial dependency on django-reports

2010-12-20 Zygmunt Krynicki <email address hidden>

 Add support for django-reports

2011-02-02 Zygmunt Krynicki <email address hidden>

 Fix a bug in the way test cases are imported from the bundle

2011-01-11 Zygmunt Krynicki <email address hidden>

 Fix test case importing when test case is not present in the bundle

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merge meta-data for django model of software source

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add help/verbose_name to each field of SoftwareSource

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add SoftwarePackage to admin interface

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merge initial work on 1.1 bundle format with support for source references

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add 1.1 format importer test suite

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add 1.1 format deserializer (incomplete) that understands sources

2011-01-10 Zygmunt Krynicki <email address hidden>

 Make SoftwareSource.commit_timestamp nullable

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add 'sources' many-to-many field to TestRun model

2011-01-10 Zygmunt Krynicki <email address hidden>

 Add SoftwareSource model

2011-02-02 Zygmunt Krynicki <email address hidden>

 Merege linaro-dashboard-bundle dependency

 This changes the way bundles are deserialized on import and introduces strict json validation

2011-01-10 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-12-13 Zygmunt Krynicki <email address hidden>

 Added several tests for the 1.0 format importer

2010-12-13 Zygmunt Krynicki <email address hidden>

 Add simple test for IBundleImporter interface

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove parts of LP658917 regression tests.

 Those tests were meant to be moved to memory-to-database deserialization tests
 but that layer changed significantly and all of those tests were using
 internals that no longer exist.

 Three tests are removed:

 1) test_mem2db_TestCase__no_test_case

 This tests checked that a database TestCase when deserialized from a object
 with no test_case_id would end up with a None test_case reference. This test
 should be rewritten and become a part of BundleFormatImporter_1_0 test case.

 2) test_mem2db_TestCase_test_case_with_units

 This test is similar and checks the usage of units field

 3) test_mem2db_TestCase_test_case_without_units

 This test is also similar and checks what is the default value of the units field.

2010-12-10 Zygmunt Krynicki <email address hidden>

 Rework deserialization tests

 There are substantial changes to deserialization tests that warrant some
 description. First of all, in the old code there was a path that all data would
 have to traverse at it was "imported" from a bundle:
 1) Load JSON from text
 2) Load object model (based on launch_control.models.*) from JSON document
 3) Create or reference database-backed objects from object model

 At each step there was some validation and different things could go wrong.
 The whole point of step 2 was validation (performed as a side effect of
 instantiation all those objects since they had different checks hard-coded
 based on their understanding of the JSON schema.

 The new model is conceptually simpler:
 1) Load JSON from text
 2) Validate JSON document using appropriate schema (depending on format)
 3) Create or reference database-backed objects from JSON document

 Don't think that step 2 is the same. It's not, there is no "format" here.
 It's just the _exact_ _raw_ object (JSON document, a python dictionary really)
 that was returned by the JSON loader. There is no type mangling (converting
 certain strings to datetime.datetime objects for example) or translating all
 dictionaries into python classes. The validation works _only_ on the JSON
 document (again just a dict of bools, ints, Decimals, strings and lists and
 dicts of thereof). The validation looks _only_ at the JSON schema. There is a
 single definition of what is considered valid. This is a big improvement, both
 conceptually (the model is simple and defined in a single place) and for
 performance reasons (the old code spent lots of time instantiating new python
 object for each dictionary in the JSON document).

 Another improvement comes from usage of DocumentIO from
 linaro-python-dashboard-bundle. It allows us to easily evolve the format and
 load and check any supported formats using one API. There is also separate API,
 not yet used here, DocumentEvolution that allows for converting between older
 versions to newer versions without loosing any data. This will be used later
 to, for example, allowing users to export old data in most recent and
 feature-full format. It will also be a single well defined point for defining
 new versions and their schema.

 Lastly, all of those changes mean that some tests no longer make any sense.
 Previous code had tests that ensured we constructed the "object model" from raw
 JSON correctly. This step no longer exists as there is only JSON for storage
 and processing and django database model internal application needs.

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove comment referencing to now-inexisting launch_control.modles

2010-12-10 Zygmunt Krynicki <email address hidden>

 Replace old deserializer with new modular deserializer based on versioned JSON documents

2010-12-10 Zygmunt Krynicki <email address hidden>

 Add a dependency on linaro-python-dashboard-bundle

2010-12-10 Zygmunt Krynicki <email address hidden>

 Disable setup.py test support (until it's working)

2010-12-10 Zygmunt Krynicki <email address hidden>

 Add Attachment to admin view

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove leacy test script

 This script was used for testing the non-django parts of launch control and
 most of that got removed.

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove all legacy launch control models

2011-01-04 Zygmunt Krynicki <email address hidden>

 Rewrite virtualenv-install.sh not to install launch-control itself but install all the deps instead.

 This makes it useful for working with l-c code on fresh installs (so that
 python does not complain about duplicate imports). The script was never useful
 as a deployment tool so this makes it more useful for the indented purpose.

2011-01-04 Zygmunt Krynicki <email address hidden>

 Merge test result detail view from deepti.

 I rewrote the template and added two helper methods for the model to make it more friendly.
 I also added example bundle that has attachments to see how that works.

2010-12-24 Deepti B. Kalakeri<email address hidden>

 Improving the test run detail view

2010-12-23 Deepti B. Kalakeri<email address hidden>

 Adding a simple json development data set for test result detail view

2010-12-23 Deepti B. Kalakeri<email address hidden>

 Adding the missing template changes for test result display view

2010-12-23 Deepti B. Kalakeri<email address hidden>

 Adding the Test result details view and making associated view,model,template changes

2011-01-04 Zygmunt Krynicki <email address hidden>

 Add a note about sort order for bundles in the bundle stream view

2010-12-23 Zygmunt Krynicki <email address hidden>

 Remove bogus sort statement on the BundleStream queryset.

 This sort was intended for _bundles_ not _bundle streams_, my bad

2010-12-22 Zygmunt Krynicki <email address hidden>

 Sort bundle streams by upload date (most recent first)

2011-01-04 Zygmunt Krynicki <email address hidden>

 Add support for cloned bundles in setup-dev-env.sh

2010-12-22 Zygmunt Krynicki <email address hidden>

 Add "dummy" example bundle template and make setup-dev-env.sh import a derivative of that bundle twenty times.

2011-01-04 Zygmunt Krynicki <email address hidden>

 Improve HTML for IE6 and beyond, also fix some webkit issues

2010-12-22 Zygmunt Krynicki <email address hidden>

 Make primary layout table based.

 The previous layout based on relative positioned div's was very hard to
 understand or debug. It did not work correctly in simple browsers (among them
 IE6, PSP-buit in browser). It also broke in subtle ways on webkit-based
 browsers due to the well-known property of 1px gap between relative floating
 elements using percentage width.

 The new layout is using tables (boo) but works great on all platforms I tested
 this on (yay)

2011-01-04 Zygmunt Krynicki <email address hidden>

 Improve CSS for IE6 and beyond

2010-12-22 Zygmunt Krynicki <email address hidden>

 Add IE6 :focus support via jQuery

2010-12-22 Zygmunt Krynicki <email address hidden>

 Add fallback css for IE6 support.

 Some parts are still not working but they will require a general restructuring
 of page layout. With those changes the account management pages (login,
 password reset, password change) behave virtually the same as in other browsers.

 This patch also adds :focus css for IE6 although IE6 does not natively support
 that. A separate patch adds jQuery hack to get :focus working on IE6

2011-01-04 Zygmunt Krynicki <email address hidden>

 Use ubuntu font via google font directory

2010-12-22 Zygmunt Krynicki <email address hidden>

 Use google font directory to get the Ubuntu font on any platform

2011-01-04 Zygmunt Krynicki <email address hidden>

 Require linaro-json 1.2.3

2011-01-04 Zygmunt Krynicki <email address hidden>

 Install additional dependencies

2011-01-04 Zygmunt Krynicki <email address hidden>

 Add virtualenv install script

2011-01-04 Zygmunt Krynicki <email address hidden>

 Mark as not safe to zip

2011-01-04 Zygmunt Krynicki <email address hidden>

 Fix dashboard_api.version after versiontool

2011-01-04 Zygmunt Krynicki <email address hidden>

 Update manifest and declared packages in setup.py

2011-01-04 Zygmunt Krynicki <email address hidden>

 Refresh dependencies

2011-01-04 Zygmunt Krynicki <email address hidden>

 Change shebang on dashboar_server/manage.py to use the envrionment python

2011-01-04 Zygmunt Krynicki <email address hidden>

 Use versiontools, drop bundled copy

2010-12-22 Zygmunt Krynicki <email address hidden>

 Use pagination on bundle stream detail template

2010-12-22 Deepti B. Kalakeri<email address hidden>

 Adding pagination feature to bundle stream detail view and correcting some indentation

2010-12-22 Zygmunt Krynicki <email address hidden>

 Use django-pagination to paginate test results in the test run detail template

2010-12-21 Zygmunt Krynicki <email address hidden>

 Paginate test results in a test run by 10

2010-12-21 Zygmunt Krynicki <email address hidden>

 Add fallback content when the page number is invalid

2010-12-21 Zygmunt Krynicki <email address hidden>

 Center pagination controls

2010-12-21 Zygmunt Krynicki <email address hidden>

 Reindent longish lines

2010-12-21 Zygmunt Krynicki <email address hidden>

 Use object_detail generic view (since it's a detail of TestRun model)
 Change how autopagination is applied to test results.

2010-12-21 Zygmunt Krynicki <email address hidden>

 Add big bundle for testing pagination

2010-12-21 Zygmunt Krynicki <email address hidden>

 Add missing {% endfor %} tag in test_run_detail.html

2010-12-21 Zygmunt Krynicki <email address hidden>

 Add depdendency on django-pagination

2010-12-21 Deepti B. Kalakeri<email address hidden>

 Using the pagination module to give pagination feature to the test run view

2010-12-20 Deepti B. Kalakeri<email address hidden>

 Removing the extra debug statements

2010-12-20 Deepti B. Kalakeri<email address hidden>

 Adding Pagination to the Test Run view

2010-12-21 Zygmunt Krynicki <email address hidden>

 Fix broken parts of the bundle detail view template

2010-12-20 Zygmunt Krynicki <email address hidden>

 Fix missing and broken template parts for bundle detail view

 * Each breadcrumb part is now clickable
 * The test run list now properly handles bundles with multiple test runs.
 * The test run list now displays more columns (Import Status, Analyzed On)

2010-12-20 Zygmunt Krynicki <email address hidden>

 Improve test_run_detail view

2010-12-20 Zygmunt Krynicki <email address hidden>

 Make human-friendly version of TestResult.result more human friendly

2010-12-20 Zygmunt Krynicki <email address hidden>

 Change TestRun __unicode__ method to say "Test run {analyzer_assigned_uuid}"

2010-12-20 Zygmunt Krynicki <email address hidden>

 Remove needles whitespace in test run detail template

2010-12-20 Zygmunt Krynicki <email address hidden>

 Improve test run template breadcrumbs

2010-12-20 Zygmunt Krynicki <email address hidden>

 Use images to represent test result outcome

2010-12-20 Zygmunt Krynicki <email address hidden>

 Drop the databrowse application

2010-12-17 Zygmunt Krynicki <email address hidden>

 Drop databrowse application

2010-12-20 Zygmunt Krynicki <email address hidden>

 Add missing file

2010-12-20 Zygmunt Krynicki <email address hidden>

 Add missing file

2010-12-20 Zygmunt Krynicki <email address hidden>

 Use project version in base template

2010-12-20 Zygmunt Krynicki <email address hidden>

 Add context processor exposing {{project_version}} and use that on the base template

2010-12-20 Zygmunt Krynicki <email address hidden>

 Fix bundle stream list breadcrumbs

2010-12-20 Zygmunt Krynicki <email address hidden>

 Make breadcrumbs in bundle stream list template clickable

2010-12-20 Zygmunt Krynicki <email address hidden>

 Merge hacking helpers

2010-12-20 Zygmunt Krynicki <email address hidden>

 Add various helpers for hacking:
 * script to setup fresh checkout to fully-loaded database
 * intial bundles with various data
 * fixtures with various non-bundle data (uses, sites, streams)

2010-12-20 Zygmunt Krynicki <email address hidden>

 Merge test run view from deepti

2010-12-17 Deepti B. Kalakeri<email address hidden>

 Removing the extra end tag for element td

2010-12-16 Deepti B. Kalakeri<email address hidden>

 Addressing review comments on adding test scenario to verify unauthorised access to the test run and addressing the review comments to .css, .html and .json files

2010-12-16 Deepti B. Kalakeri<email address hidden>

 Adding test scenario to verify unauthorised access to the test run and addressing the review comments to .css, .html and .json files

2010-12-16 Deepti B. Kalakeri<email address hidden>

 Addressing the review comments to .css, .html and .json files

2010-12-16 Deepti B. Kalakeri<email address hidden>

 Modifying the test_run_detail to include scenarion to verify unauthorized test run access

2010-12-15 Deepti B. Kalakeri<email address hidden>

 Modifying the test_run_detail_view to include scenarion to verify test run access

2010-12-15 Deepti B. Kalakeri<email address hidden>

 Adding test to verify the test_run_detail view

2010-12-13 Deepti B. Kalakeri<email address hidden>

 Removed the duplicated line from urls.py that was added during rebase

2010-12-10 Deepti B. Kalakeri<email address hidden>

 Minor change to the side bar caption

2010-12-10 Deepti B. Kalakeri<email address hidden>

 Moving the Test name to the side bar and adding the bundle content_sha1

2010-12-10 Deepti B. Kalakeri<email address hidden>

 Using the results status code of css file for color coding

2010-12-10 Deepti B. Kalakeri<email address hidden>

 Adding the results status code to css file and using it in the html

2010-12-10 Deepti B. Kalakeri<email address hidden>

 Modified test_run_detail.html to improve the way the test results are displayed

2010-12-09 Deepti B. Kalakeri<email address hidden>

 Adding new template to display the test run information

2010-12-01 Zygmunt Krynicki <email address hidden>

 Initial test_run_detail view

2010-12-01 Deepti B. Kalakeri<email address hidden>

 To build a view that shows a list of test results given a test run ID

2010-12-13 Zygmunt Krynicki <email address hidden>

 Remove needless whitespace

2010-12-13 Zygmunt Krynicki <email address hidden>

 Fix unit tests to be compatible with simplejson < 2.1.x

 The fix is innoncent, instead of checking error type we just check for error
 subclass. Newer versions of simplejson have a dedicated class for decoding
 errors that is a subclass of ValueError. We can just check for ValueError since
 none of launch-control actually looks at any of the extended attributes.

2010-12-13 Zygmunt Krynicki <email address hidden>

 Fix install.sh function definition

2010-12-13 Zygmunt Krynicki <email address hidden>

 Fix versiontools.py to be compatible with bzr 2.1.x

2010-10-14 Zygmunt Krynicki <email address hidden>

 Add simple install script

2010-12-12 Zygmunt Krynicki <email address hidden>

 Merge branch dropping internal json utils in favour of linaro_json

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove test-json.sh as linaro_json does not use multiple backends anymore

2010-12-10 Zygmunt Krynicki <email address hidden>

 Fix a test regression that assumed __version__ is a tuple

2010-12-10 Zygmunt Krynicki <email address hidden>

 Add missing versiontools module

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove old copy of json tools

2010-12-10 Zygmunt Krynicki <email address hidden>

 Use linaro_json instead of local copy of the same.

 Due to backend change some error contidions in unit tests have been slightly
 changed. As a positive side effect I found a typo in one of the tests (in the
 JSON text used by the test) that caused the test to fail for a different
 reason. The new backend includes line and column information in all syntax
 errors.

2010-12-10 Zygmunt Krynicki <email address hidden>

 Move version handling to dedicated module.

 Add support for looking at bzr revision for development versions

2010-12-10 Zygmunt Krynicki <email address hidden>

 Update the set of required dependencies

2010-12-10 Zygmunt Krynicki <email address hidden>

 Remove lc-tool (it is provided by lp:launch-control-tool)

2010-12-09 Zygmunt Krynicki <email address hidden>

 Make the footer of auth pages more visible

2010-12-09 Zygmunt Krynicki <email address hidden>

 Merge openid unification branch.

 Both openid and user&pass authetnication options are now supported by default.
 The whole look and feel of registration was reworked to look better.

2010-12-09 Zygmunt Krynicki <email address hidden>

 Rework login form to use non-javascript, styled, link instead of a dummy button

2010-12-09 Zygmunt Krynicki <email address hidden>

 Restore sign-in link in bundle stream list view

2010-12-09 Zygmunt Krynicki <email address hidden>

 Rework auth pages to integrate better with the site theme and openid

2010-12-01 Zygmunt Krynicki <email address hidden>

 Merge improvements to OpenID auth support

2010-10-15 Zygmunt Krynicki <email address hidden>

 Simplify openid deployment and offer both options by default.

 I changed the base.html template to offer both authentication methods. After
 thinking about it for some time I think this way is better (existing users have
 accounts, admin has a model account). I also changed bundle_stream_list.html
 not to offer a sign-in link at all (the user probably would not have noticed it
 at all as the header is same on every page so it's easier to remember that
 users can sign in from there). I also removed the context processors with
 LOGIN_URL as it was no longer required.

 I also fixed LOGIN_REDIRECT_URL to point back to /dashboard (in default
 settings) as this corresponds with the default apache configuration file.

2010-12-09 Zygmunt Krynicki <email address hidden>

 Merge with django-testscenarios branch

 This branch cleans up many test cases, adds universal support to testtools and
 testscenarios in a django-compatible manner.

2010-12-09 Zygmunt Krynicki <email address hidden>

 Re-reaise ImportError when loading tests

2010-12-08 Zygmunt Krynicki <email address hidden>

 Rewrite test loader to work better with django internal test runner.

 It's now possible to run tests selectively by running manage.py test and providing a list of test identifiers.
 An identifier uses this format: ApplicationName <DOT> TestClass [ <DOT> TestFunction ]

 Note that module paths are not relevant, so it's not important if TestClass is
 inside some.other.submodule, that part is not taken into account.

2010-12-08 Zygmunt Krynicki <email address hidden>

 Remove misc.py as it's now part of django-testscenarios internal test suite

2010-12-08 Zygmunt Krynicki <email address hidden>

 Use django_testscenarios, add some extra cleanup code and upcalls to super

2010-12-08 Zygmunt Krynicki <email address hidden>

 Remove direct references to TestCaseWithScenarios (moved to base class) and add setUp/tearDown to one test case

2010-12-08 Zygmunt Krynicki <email address hidden>

 Add TestScenarios support to xml-rpc tests

2010-12-08 Zygmunt Krynicki <email address hidden>

 Remove reference to TestCaseWithScenarios since common base class now implements that internally

2010-12-08 Zygmunt Krynicki <email address hidden>

 Remove explicit reference to TestCaseWithScenarios since common base class now supports that internally

2010-12-08 Zygmunt Krynicki <email address hidden>

 Move tearDown() call to happen after local cleanup

2010-12-08 Zygmunt Krynicki <email address hidden>

 Make common helper test cases inherit from TransactionTestCase and make them remove all bundles in tearDown()

2010-12-08 Zygmunt Krynicki <email address hidden>

 Change how manage.py injects local directory into sys.path to ensure it overwrites other instalations

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to view tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to model tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to misc tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to dashboard_api tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to xml-rpc tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Apply django_testscenarios to deserialization tests

2010-11-22 Zygmunt Krynicki <email address hidden>

 Note that python-django-testscenarios are required for testing

2010-11-23 Zygmunt Krynicki <email address hidden>

 Added NEWS file

2010-11-12 Zygmunt Krynicki <email address hidden>

 Note that python-django-openid-auth is required

2010-11-12 Zygmunt Krynicki <email address hidden>

 Move openid logging silencer to default_settings.py

2010-10-19 Zygmunt Krynicki <email address hidden>

 Use RequestContext on XML-RPC API page.

 Without this none of the context variables (for example user) were visible and thus accessing api page would make the user believe that he was not signed in despite doing so earlier.

2010-10-15 Zygmunt Krynicki <email address hidden>

 Add test case for xml_rpc_handler

2010-10-15 Zygmunt Krynicki <email address hidden>

 Use RequestContext on XML-RPC API page.

 Without this none of the context variables (for example user) were visible and
 thus accessing api page would make the user believe that he was not signed in
 despite doing so earlier.

2010-10-18 Guilherme Salgado <email address hidden>

 Switch from password-based login to OpenID

2010-10-15 Guilherme Salgado <email address hidden>

 A bunch of tweaks suggested by James and Zygmunt

2010-10-14 Guilherme Salgado <email address hidden>

 Drop password login pages (accounts/) and change the CSRF tests to not use the login form.

2010-10-14 Guilherme Salgado <email address hidden>

 Do not hard-code the login URL/view in templates -- use a template context processor instead

2010-10-14 Guilherme Salgado <email address hidden>

 merge trunk

2010-10-14 Guilherme Salgado <email address hidden>

 Add a test for OpenID login

2010-10-13 Guilherme Salgado <email address hidden>

 merge trunk

2010-10-08 Guilherme Salgado <email address hidden>

 merge trunk

2010-10-06 James Westby <email address hidden>

 Add the configuration to use django_openid_auth.

 Unfortunately it doesn't override contrib.auth's login view, though
 we may be able to work around that.

2010-10-15 Zygmunt Krynicki <email address hidden>

 Fix typo in HardwareDevice.description field verbose_name

2010-10-14 Zygmunt Krynicki <email address hidden>

 Backport bugfix from 0.2 branch and bump version in trunk

 * Backport a bugfix from 0.2 branch
 * Bump internal version number to 0.3 dev
 * Change HTML template to display "trunk" whever version name used to be

2010-10-14 Zygmunt Krynicki <email address hidden>

 Fix fallout from OneToOne -> ForeignKey transition.

 Fix DashboardAPI().deserialize() to return error message correctly.
 Fix template to display deserialization errors correctly

2010-10-14 Zygmunt Krynicki <email address hidden>

 Change internal version to 0.3 dev and make web template show "trunk"

2010-10-14 Zygmunt Krynicki <email address hidden>

 Separate xml-rpc, views and miscellaneous tests from last remains of monolithic tests.

2010-10-14 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merged move-tests-for-dashbard-api into move-final-tests-code.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Separate xml-rpc, views and miscellaneous tests from last remains of monolithic tests.

2010-10-14 Zygmunt Krynicki <email address hidden>

 Move tests for DashboardAPI to dedicated module

2010-10-14 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merged move-csrf-tests into move-tests-for-dashbard-api.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move dashboard_api tests to separate module.

 In addition to API tests I moved some utility code into utils and extracted
 unit tests for that utility code into test_client module.

2010-10-14 Zygmunt Krynicki <email address hidden>

 Move cross site request forgery tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-12 Zygmunt Krynicki <email address hidden>

 Fix PEP8 whitespace

2010-10-11 Zygmunt Krynicki <email address hidden>

 Add reference to csrf tests in tests loader list

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move CSRF configuration tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for Attachment model to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Pump conflict resolved

2010-10-13 Zygmunt Krynicki <email address hidden>

 Pump conflict resolved

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merged move-tests-for-named-attribute-model into move-deserialization-tests.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move unit tests for Attachment model to dedicated module

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move tests for TestRun model into a dedicated module

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move deserialization unit tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for NamedAttribute model to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Pump conflict resolved

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move tests of NamedAttribute model to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for TestResult model into a dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merged move-tests-for-test-model into move-tests-for-test-result-model.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move TestResult tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for Test model into dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move Test (model) tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for BundleStream model into a dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move BundleStream unicode tests to the bundle stream module

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move BundleStream tests to dedicated module

2010-10-13 Zygmunt Krynicki <email address hidden>

 Merge fix and tests for LP658917.

 The issue was caused by bundle with TestResult that had a test_case_id field
 but did not have units. The code failed on IntegrityError as TestCase.units
 cannot be NULL per schema definition. The solution is to use an empty string
 instead.

2010-10-12 Zygmunt Krynicki <email address hidden>

 Merge with trunk

2010-10-12 Zygmunt Krynicki <email address hidden>

 Write unit tests root cause of LP658917

2010-10-12 Zygmunt Krynicki <email address hidden>

 Shorten test data for LP658917 regression tests

2010-10-12 Zygmunt Krynicki <email address hidden>

 Fix LP658917 and add regression test.

 The issue was caused by bundle with TestResult that had a test_case_id field
 but did not have units. The code failed on IntegrityError as TestCase.units
 cannot be NULL per schema definition. The solution is to use an empty string
 instead.

2010-10-13 Zygmunt Krynicki <email address hidden>

 Move tests for Bundle model into dedicated module

2010-10-12 Zygmunt Krynicki <email address hidden>

 Add test that got killed by accident. Thanks Deepti!

2010-10-12 Zygmunt Krynicki <email address hidden>

 Remove unused import

2010-10-11 Zygmunt Krynicki <email address hidden>

 Resolve pump conflict

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move bundle deserialization tests to tests.bundle module.

 Unlike the rest of deserialization tests those tests are only checking the
 surface layer and mock the BundleDeserializer that would normally run so they
 belong together with other model tests.

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move some bundle tests to dedicated module

2010-10-12 Zygmunt Krynicki <email address hidden>

 Move tests for TestCase model to dedicated module

2010-10-11 Zygmunt Krynicki <email address hidden>

 Resolve pump conflict

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move TestCase model tests to dedicated module

2010-10-12 Zygmunt Krynicki <email address hidden>

 Move tests for HardwareDevice model into a dedicated module.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Resolve pump conflict

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move tests for HardwareDevice model into a dedicated module.

 Oh and fix the class name, it used to be called HardwarePackageTestCase

2010-10-12 Zygmunt Krynicki <email address hidden>

 Move tests for SoftwarePackage model into a dedicated module.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Resolve pump conflict

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move tests for SoftwarePackage model into a dedicated module.

 In addition to trivial move I also integrated test for unicode method from
 another class as it was meant to be.

2010-10-12 Zygmunt Krynicki <email address hidden>

 Change dashboard_app.tests test loader code

 Remove the old code that imported everything from the test module. Add test
 loader that imports each test module explicitly and constructs a test case out
 of the contents.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Don't call old tests legacy, don't use needless underscores

2010-10-08 Zygmunt Krynicki <email address hidden>

 Change dashboard_app.tests test loader code

 Remove the old code that imported everything from the test module. Add test
 loader that imports each test module explicitly and constructs a test case out
 of the contents.

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move fixtures to tests package

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move fixtures to tests package

2010-10-11 Zygmunt Krynicki <email address hidden>

 Move TestClient to tests.utils

2010-10-08 Zygmunt Krynicki <email address hidden>

 Move TestClient to tests.utils

2010-10-11 Zygmunt Krynicki <email address hidden>

 Prepare for test splitup into separate modules.

 This step is fairly simple, all tests are moved to a tests package and __init__
 ensures that all old behaviour is kept as is. Test urls are renamed to
 'tests.urls' test utils were likewise moved to tests.utils.

 There was one required change, tests.tests has one model that is needed for
 testing and this model previously belonged to the 'dashboard_app' application.
 After moving tests to a dedicated python package I had to update 'app_label' to
 make django test runner instantiate appropriate database tables.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Prepare for test splitup into separate modules.

 This step is fairly simple, all tests are moved to a tests package and __init__
 ensures that all old behaviour is kept as is. Test urls are renamed to
 'tests.urls' test utils were likewise moved to tests.utils.

 There was one required change, tests.tests has one model that is needed for
 testing and this model previously belonged to the 'dashboard_app' application.
 After moving tests to a dedicated python package I had to update 'app_label' to
 make django test runner instantiate appropriate database tables.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Bump version to 0.2 final for release

2010-10-07 Zygmunt Krynicki <email address hidden>

 Bump the version to 0.2 final

2010-10-07 Zygmunt Krynicki <email address hidden>

 Inside DashboardAPI.put() commit current transaction before calling deserialize()

 This fixes an error where the bundle instance we just created would be wiped
 out by transaction rollback in deserialize failure path

2010-10-07 Zygmunt Krynicki <email address hidden>

 Move first call to save() away from try/catch block.

 This call should never raise IntegrityError exceptions as it is used to get the
 primary key for the bundle and content_sha is not calculated here.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Move the call to deserialize away from the try/catch block.

 The rationale is that deserialize already handles all exceptions and we don't
 want to remove the bundle if the process fails for any reason as we store the
 error message _and_ the bundle for inspection.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Inside DashboardAPI.put() commit current transaction before calling deserialize()

 This fixes an error where the bundle instance we just created would be wiped
 out by transaction rollback in deserialize failure path

2010-10-07 Zygmunt Krynicki <email address hidden>

 Merge with 0.1 branch after 0.1.1 release

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged lc-tool-DASHBOARD_URL-env into merge-0.1.1.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merge with private development branch

2010-09-28 Zygmunt Krynicki <email address hidden>

 Improve local_settings.py.example (better documentation, explicit email settings section)

2010-09-28 Zygmunt Krynicki <email address hidden>

 Fix settings.py to allow local_settings.py to define CONFIGURED=True

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merge with 0.1 branch

2010-09-30 Zygmunt Krynicki <email address hidden>

 Use dashboard_app for version information for setup.py

2010-09-30 Zygmunt Krynicki <email address hidden>

 Bump server version to 0.1.1

2010-09-30 Zygmunt Krynicki <email address hidden>

 Fix configuration issue that would prevent local_settings from working properly

2010-10-07 Zygmunt Krynicki <email address hidden>

 Fix compatibility issues with django 1.1 and document known remaining issues

2010-10-06 Zygmunt Krynicki <email address hidden>

 Add reference to issues on django 1.1

2010-10-06 Zygmunt Krynicki <email address hidden>

 Skip unit tests that depend on 1.2 CSRF features

2010-10-06 Zygmunt Krynicki <email address hidden>

 Fix django 1.1 compatibility issue.

 It seems that related object reference (the other end of ForeignKey) in django
 1.1 lacks the 'exists()' method so fall back to using count instead.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Make lc-tool.py use DASHBOARD_URL environment variable as a default argument to --dashboard-url

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-generic-templates into lc-tool-DASHBOARD_URL-env.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add support for passing --dashboard-url via environment variable DASHBOARD_URL

2010-10-07 Zygmunt Krynicki <email address hidden>

 Make some improvements to the index and about pages

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged admin-link-in-menu into better-generic-templates.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Slight modifications to about.html and base.html (translations and xhtml notice)

2010-10-07 Zygmunt Krynicki <email address hidden>

 Add link to the administrator panel for signed in users with super-user flag

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Change wording from "admin site" to "admin interface"

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-details into admin-link-in-menu.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add link to the administration panel for signed in users with super-user flag

2010-10-07 Zygmunt Krynicki <email address hidden>

 Improve bundle stream detail view

 * list all bundles uploaded to the stream
 * display basic information about each bundle
 * conform to current layout

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged change-unicode-methods into fix-test-templates.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged better-databrowser-pages into change-unicode-methods.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged workaround-django-ticket-10227 into better-databrowser-pages.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged better-api-page into workaround-django-ticket-10227.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Move custom styles to default.css and fix some template details

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Make sure bundles() xml-rpc API returns bundles in the same order as before.

 This patch balances the Meta: ordering change.
 Some unit tests depend on the order of the returned bundles.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged bundle-stream-list into bundle-stream-details.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add view for showing bundle stream details

2010-10-07 Zygmunt Krynicki <email address hidden>

 Improve and enable bundle stream list view:

 * list all streams we can access
 * conform to current layout

2010-10-06 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Show special link to the admin panel only to staff users.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Fix breadcrumbs in bundle_stream_list.html

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add link to bundle streams to the navigation menu

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged fix-test-templates into bundle-stream-list.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add pretty template for bundle stream list view

2010-10-02 Zygmunt Krynicki <email address hidden>

 Improve dashboard_bundle_list view

 The view will now report if the user (when signed in) has any personal and team
 bundle streams. This can be used to construct better templates.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Include all dashboard_app URLs from dashboard_server URLs under /dashboard

2010-10-07 Zygmunt Krynicki <email address hidden>

 Make dashboard_app tests independent from the project they are in.

 Isolate all test cases that depend on template rendering to use only templates
 from the application directory (which are empty and will not depend on project
 elements). The idea for implementation is taken from
 django.contrib.auth.tests.views

 I added two new classes:
 * DashboardViewsTestCase - for testing regular views
 * DashboardXMLRPCViewsTestCase - for testing XML-RPC views

 They are loosely based on older DashboardViewTestCase and DashboardAPITestCase
 respectively.

 As a positive side effect we can purge the mess from dashboard_app.test_urls
 where we used to mimic dashboard_server.urls.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Fix csrf tests not to isolate from the project environment.

 Tests were failing because of missing reverse URL loopkups

2010-10-05 Zygmunt Krynicki <email address hidden>

 pump conflict resolved

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-databrowser-pages into change-unicode-methods.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged workaround-django-ticket-10227 into better-databrowser-pages.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-api-page into workaround-django-ticket-10227.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Commit after pump

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merge pump

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged workaround-django-ticket-10227 into better-databrowser-pages.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged better-api-page into workaround-django-ticket-10227.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-05 Zygmunt Krynicki <email address hidden>

 Merged change-unicode-methods into fix-test-templates.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged change-unicode-methods into fix-test-templates.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged change-unicode-methods into fix-test-templates.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Make dashboard_app tests independent from the project they are in.

 Isolate all test cases that depend on template rendering to use only templates
 from the application directory (which are empty and will not depend on project
 elements). The idea for implementation is taken from
 django.contrib.auth.tests.views

 I added two new classes:
 * DashboardViewsTestCase - for testing regular views
 * DashboardXMLRPCViewsTestCase - for testing XML-RPC views

 They are loosely based on older DashboardViewTestCase and DashboardAPITestCase
 respectively.

 As a positive side effect we can purge the mess from dashboard_app.test_urls
 where we used to mimic dashboard_server.urls.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Change __unicode__() methods on all dashboard_app models to look better in data browser

2010-10-05 Zygmunt Krynicki <email address hidden>

 Add tests for all unicode methods

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-databrowser-pages into change-unicode-methods.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged workaround-django-ticket-10227 into better-databrowser-pages.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged better-api-page into workaround-django-ticket-10227.

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged better-databrowser-pages into change-unicode-methods.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged workaround-django-ticket-10227 into better-databrowser-pages.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged better-api-page into workaround-django-ticket-10227.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Change __unicode__() methods on all models not to include model name.

 This makes the data browser much more user friendly as previously each page had
 ugly-looking double names like "bundle stream bundle stream foo"

2010-10-07 Zygmunt Krynicki <email address hidden>

 Add custom templates for the data browser to match current layout

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add custom databrowse templates.

 With those templates all views are integrated and work well with the rest of
 the site. In addition the breadcrumbs are now working properly and are
 integrated between the two applications.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Add a work around for django ticket 10227

 This makes the data browser not crash on the Bundle model when there are no BundleDeserializationError instances. It does so by dropping OneToOne field and using unique ForeignKey field.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Update BundleDeserializationError unit tests after previous change

2010-10-02 Zygmunt Krynicki <email address hidden>

 Change BundleDeserializationError.bundle to be a ForeignKey relation.

 This works around django issue where OneToOneField behaves asymmetrically
 (raising DoesNotExist from one side and returning None from another).

 Unfortunately this behaviour caused databrowse application to crash when
 accessing most important model we have, the bundle. As a workaround we use an
 unique ForeignKey and change the API a little bit to account for the extra
 get() all required.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged csrf-fixes into better-api-page.

2010-10-07 Zygmunt Krynicki <email address hidden>

 Improve the API page by adding example python code and links in the sidebar

2010-10-02 Zygmunt Krynicki <email address hidden>

 Improve XML-RPC API help page.

 The sidebar contains a list of functions that link to anchors in the page. The
 page has an example python code that can interact with the server. The view
 exposes dashboard URL (the full URL of the website) using 'sites' application.
 Administrators need to configure correct site for the values to make sense.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Fix CSRF middleware configuration for 1.2

2010-10-05 Zygmunt Krynicki <email address hidden>

 Fix CSRF test by calling super.setUp() Thanks James!

2010-10-05 Zygmunt Krynicki <email address hidden>

 Add tests for CSRF middleware configuration

2010-10-04 Zygmunt Krynicki <email address hidden>

 Add test for cross site request forgery token on login page

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged configuration-fixes into csrf-fixes.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged configuration-fixes into csrf-fixes.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add cross-site request forgery excempt for xml-rpc handler

2010-10-02 Zygmunt Krynicki <email address hidden>

 Use full CsrfMiddleware instead of Csrf{View,Response}Middleware.

 Without this change 1.2.x login support is broken. I must have tested a wrong
 combination previously as the values used could not have worked on 1.2.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Fix development environment configuration to redirect back to /

2010-10-04 Zygmunt Krynicki <email address hidden>

 Merged layout-changes into configuration-fixes.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Merged layout-changes into configuration-fixes.

2010-10-02 Zygmunt Krynicki <email address hidden>

 Set LOGIN_REDIRECT_URL to / for development environment.

 Without this change the default value (from default_settings.py) is /dashboard/
 which causes a redirect to inexisting page.

2010-10-06 Zygmunt Krynicki <email address hidden>

 Make some HTML layout changes:

 * The navigation bar is redesigned
 * Beneath it there is a new breadcrumbs bar
 * There is a new sidebar for putting context information.

 In addition there are multiple CSS fixes for cross-browser support (firefox 3/4, chrome, opera) and graceful fallback (IE)

2010-10-04 Zygmunt Krynicki <email address hidden>

 Prefer Ubuntu to UbuntuBeta font

2010-10-04 Zygmunt Krynicki <email address hidden>

 Remove duplicate font-weight: bold;

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add <meta> tag specifying the encoding

2010-10-02 Zygmunt Krynicki <email address hidden>

 Remove uneeded <div>

2010-10-02 Zygmunt Krynicki <email address hidden>

 Add sidebar and breadcrumbs to layout.

 Breadcrumbs facilitate site navigation and easily convey current location as
 well as the path taken to reach it. Sidebar offers context information that
 enhances them main content.

2010-09-30 Zygmunt Krynicki <email address hidden>

 Improve local_settings.py.example (more documentation)

2010-09-28 Zygmunt Krynicki <email address hidden>

 Improve local_settings.py.example (better documentation, explicit email settings section)

2010-09-30 Zygmunt Krynicki <email address hidden>

 Add cross-site request forgery protections

2010-09-28 Zygmunt Krynicki <email address hidden>

 Make cross-site request forgery protection work for both django 1.1 and 1.2

2010-09-28 Zygmunt Krynicki <email address hidden>

 Enable CSRF middleware and use it in all password forms

2010-09-30 Zygmunt Krynicki <email address hidden>

 Add user authentication support for web UI:

 Implements 5 (Add support for user sign-in)
 Implements 19 (Add /login view that allows the users to log in)
 Implements 20 (Add /logout view)
 Implements 18 (Display currently signed user in the page header)

2010-09-28 Zygmunt Krynicki <email address hidden>

 Change default LOGIN_REDIRECT_URL to /dashboard/ to match default apache.conf, keep old default for unconfigured deployments.

2010-09-28 Zygmunt Krynicki <email address hidden>

 Update dashbaord_app/test_urls.py so that authentication references in our templates don't blow up during testing. Thanks James!

2010-09-28 Zygmunt Krynicki <email address hidden>

 Add support for user sign-in, password reset by email and password change

2010-09-28 Zygmunt Krynicki <email address hidden>

 Fix typo in docstring

2010-09-28 Zygmunt Krynicki <email address hidden>

 Bump dashboard app version to 0.2 dev

2010-09-30 Zygmunt Krynicki <email address hidden>

 Merge configuration fixes from 0.1 branch

2010-09-30 Zygmunt Krynicki <email address hidden>

 Improved installation instructions

2010-09-29 Zygmunt Krynicki <email address hidden>

 Fix typo

2010-09-29 Zygmunt Krynicki <email address hidden>

 Rework configuration so that it's easier to get started

2010-09-28 Zygmunt Krynicki <email address hidden>

 Fix settings.py to allow local_settings.py to define CONFIGURED=True

 Cherry-picked from trunk

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix default apache deployment so that static assets work

2010-09-23 Zygmunt Krynicki <email address hidden>

 Move static content to assets directory and add relevant apache rules to make it work

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add note to INSTALL about necessity of creating the fist bundle stream manually

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add note about need to create bundle stream to use the dashboard from XML-RPC interface

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix bug in lc-tool.py that would strip the path of the provided dashboard URL

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix path handling in XMLRPCCommand and add unit tests

2010-09-22 Zygmunt Krynicki <email address hidden>

 Preserve path of the dashboard URL in all lc-tool commands.

 This allows to install the dashboard on a sub-location such as:
 http://suxx.pl/dashboard/ and still make use of the XML-RPC interface
 which is located at http://suxx.pl/dashboard/xml-rpc/

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add transaction management around bundle deserialization

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix test suite failure on lucid where sqlite does not have a native uuid type

2010-09-23 Zygmunt Krynicki <email address hidden>

 Recover lost TestConstructionTestCase

2010-09-23 Zygmunt Krynicki <email address hidden>

 Simplify transaction handling and add unit tests for DeserializationHelper

2010-09-22 Zygmunt Krynicki <email address hidden>

 Use a transaction inside deserialization helper call

 This prevents leftovers from littering the database when the deserialization fails somewhere in the middle.

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add deployment instructions

 Implements 9 (Deployment instructions needed)

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix typo and inconsistent sudo usage in INSTALL

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix broken indentation in apache.conf

2010-09-23 Zygmunt Krynicki <email address hidden>

 Updated source URL in installation instructions

2010-09-23 Zygmunt Krynicki <email address hidden>

 Updated installation instructions with additional notes about manual configuration steps

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add information on how to report bugs

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add deployment instructions

2010-09-23 Zygmunt Krynicki <email address hidden>

 Set server and client version to 0.1

2010-09-23 Zygmunt Krynicki <email address hidden>

 Change version to 0.1 final

2010-09-23 Zygmunt Krynicki <email address hidden>

 Merge new frontend

2010-09-23 Zygmunt Krynicki <email address hidden>

 List all possible test results in about.html

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix typo

2010-09-23 Zygmunt Krynicki <email address hidden>

 Minor whiespace change

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add get_media_url tag to get around databrowse's inability to use RequestContext which holds MEDIA_URL

2010-09-23 Zygmunt Krynicki <email address hidden>

 Fix tests after URL changes

2010-09-23 Zygmunt Krynicki <email address hidden>

 Update ignore file

2010-09-23 Zygmunt Krynicki <email address hidden>

 Add a copy of the JSON schema

2010-09-23 Zygmunt Krynicki <email address hidden>

 Update frontend for 0.1 release

2010-09-22 Zygmunt Krynicki <email address hidden>

 Cosmetic improvements:

 * bundle deserialization failure stores a traceback
 * deseralization errors are browsable via /databrowse/
 * TestResult have __unicode__() method

2010-09-22 Zygmunt Krynicki <email address hidden>

 Apply some cosmetic changes prior to 0.1 release

2010-09-22 Zygmunt Krynicki <email address hidden>

 Better NamedAttribute.__unicode__() method

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add __unicode__ to TestResult model

2010-09-22 Zygmunt Krynicki <email address hidden>

 PEP-8 Whitespace

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add BundleDeserializationError to databrowser

2010-09-22 Zygmunt Krynicki <email address hidden>

 Store python traceback on import error

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add licenses to all source files and DEP-5 COPYING file

 Closes 28 (Licensing not specified)

2010-09-22 Zygmunt Krynicki <email address hidden>

 Change file headers to refer to version 3 of the license, not 3 or any later version

2010-09-22 Zygmunt Krynicki <email address hidden>

 Use uppercase 'C' in Copyright (C)

2010-09-22 Zygmunt Krynicki <email address hidden>

 Change "Linaro" to "Linaro Limited" per lool's advice

2010-09-22 Zygmunt Krynicki <email address hidden>

 Move AGPL and LGPL to separate files
 Change from "Linaro Organization" to "Linaro Limited" per lool's advice

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add license header to each file

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add COPYING file

2010-09-22 Zygmunt Krynicki <email address hidden>

 Add support for storing deserialized bundle in the database

 Implements 30 (API for storing in-memory model to the database)

2010-09-22 Zygmunt Krynicki <email address hidden>

 Whitespace changes

2010-09-22 Zygmunt Krynicki <email address hidden>

 Rework deserializer tests

2010-09-21 Zygmunt Krynicki <email address hidden>

 Do away with crazy lisp-like test code and convert Test and TestCase deserialization tests into regular methods

2010-09-21 Zygmunt Krynicki <email address hidden>

 Make deserialization from memory to db work correctly

2010-09-21 Zygmunt Krynicki <email address hidden>

 Add units property to TestCase

2010-09-19 Zygmunt Krynicki <email address hidden>

 Add initial code for converting memory model to db model

2010-09-21 Zygmunt Krynicki <email address hidden>

 Add tests for json-to-memory deserialization failures

2010-09-19 Zygmunt Krynicki <email address hidden>

 Add test for invalid timedelta values

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add some test for decoder failure

2010-09-17 Zygmunt Krynicki <email address hidden>

 Guard uuid.UUID constructor against invalid argument type and raise TypeError

 It seems that UUID.uuid() blindly assumes it's going to get a string.
 Since we're not sure how broken it can get let's check argument type
 before calling.

2010-09-17 Zygmunt Krynicki <email address hidden>

 Raise TypeError inside ValueError if decoded object is not of expected type

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add ability to chain exceptions to DocumentError

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test case for TestRun attributes

2010-09-17 Zygmunt Krynicki <email address hidden>

 Added test case for test run attachments

2010-09-17 Zygmunt Krynicki <email address hidden>

 Update unit tests to match fixes in TestRun and DashboardBundle

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change TestRun to require test_id, test_results, analyzer_assigned_uuid and analyzer_assigned_date

 Creating values without those fields is pointless and should be disallowed

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change (clientside) DashboardBundle to require current value of format

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add tests for parsing TestResult

2010-09-17 Zygmunt Krynicki <email address hidden>

 Parse all numbers as decimals

2010-09-17 Zygmunt Krynicki <email address hidden>

 Allow undefined test_case_id when deserializing TestResult

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for HardwareDevice.attributes parsin

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for parsing HardwareDevice

2010-09-17 Zygmunt Krynicki <email address hidden>

 Update test suite to reflect recent fix to SoftwareImage attribute being called 'desc' vs 'name'

 According to the spec (1.0) it should be desc

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for software package parsing and for hardware context defaults

2010-09-17 Zygmunt Krynicki <email address hidden>

 SoftwareImage should fail to construct without 'desc' argument

2010-09-17 Zygmunt Krynicki <email address hidden>

 Do not tests for defaults, this should fail

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add more deserialization tests and fix SoftwareImage class to conform to 1.0 spec

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change launch_control.models.TestRun so that analyzer_assigned_uuid and _date default to None

2010-09-17 Zygmunt Krynicki <email address hidden>

 Much better tests for BundleDeserializer

 Tests are based around test scenarios and just one test method.
 Each scenario has three variables: json_text, selectors and validators.
 json_text contains the whole text of the bundle to deserialize.
 selectors is a dictionary of variable name to lambda mapping. Each lambda is
 called with the deserialized object and the result of the computation is stored
 as attribute. Finally validators is an array of lambdas, each lambda is called
 with self (the test object) and object created by running all selectors.

 The design allows for tight coupling of json_text and tests (using
 self.assertXXX). Selectors allow to shorten attribute traversal as something
 deeply nested can be 'selected' just once.

2010-09-17 Zygmunt Krynicki <email address hidden>

 open and close FileField objects to avoid situations where we assume it was opened before

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add new deserialize() method for testing period during which deserializer is not really working very well

2010-09-17 Zygmunt Krynicki <email address hidden>

 Deserialize bundles on upload

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add deserialization helper

 refs 26 (Make it possible to import bundles into the database)

2010-09-21 Zygmunt Krynicki <email address hidden>

 Add one-half of the deserialization logic (from JSON to memory).

 Some changes spill to related components (clientside models) as a side effect of additional review and extra checks

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test case for TestRun attributes

2010-09-17 Zygmunt Krynicki <email address hidden>

 Added test case for test run attachments

2010-09-17 Zygmunt Krynicki <email address hidden>

 Update unit tests to match fixes in TestRun and DashboardBundle

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change TestRun to require test_id, test_results, analyzer_assigned_uuid and analyzer_assigned_date

 Creating values without those fields is pointless and should be disallowed

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change (clientside) DashboardBundle to require current value of format

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add tests for parsing TestResult

2010-09-17 Zygmunt Krynicki <email address hidden>

 Parse all numbers as decimals

2010-09-17 Zygmunt Krynicki <email address hidden>

 Allow undefined test_case_id when deserializing TestResult

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for HardwareDevice.attributes parsin

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for parsing HardwareDevice

2010-09-17 Zygmunt Krynicki <email address hidden>

 Update test suite to reflect recent fix to SoftwareImage attribute being called 'desc' vs 'name'

 According to the spec (1.0) it should be desc

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add test for software package parsing and for hardware context defaults

2010-09-17 Zygmunt Krynicki <email address hidden>

 SoftwareImage should fail to construct without 'desc' argument

2010-09-17 Zygmunt Krynicki <email address hidden>

 Do not tests for defaults, this should fail

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add more deserialization tests and fix SoftwareImage class to conform to 1.0 spec

2010-09-17 Zygmunt Krynicki <email address hidden>

 Change launch_control.models.TestRun so that analyzer_assigned_uuid and _date default to None

2010-09-17 Zygmunt Krynicki <email address hidden>

 Much better tests for BundleDeserializer

 Tests are based around test scenarios and just one test method.
 Each scenario has three variables: json_text, selectors and validators.
 json_text contains the whole text of the bundle to deserialize.
 selectors is a dictionary of variable name to lambda mapping. Each lambda is
 called with the deserialized object and the result of the computation is stored
 as attribute. Finally validators is an array of lambdas, each lambda is called
 with self (the test object) and object created by running all selectors.

 The design allows for tight coupling of json_text and tests (using
 self.assertXXX). Selectors allow to shorten attribute traversal as something
 deeply nested can be 'selected' just once.

2010-09-17 Zygmunt Krynicki <email address hidden>

 open and close FileField objects to avoid situations where we assume it was opened before

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add new deserialize() method for testing period during which deserializer is not really working very well

2010-09-17 Zygmunt Krynicki <email address hidden>

 Deserialize bundles on upload

2010-09-17 Zygmunt Krynicki <email address hidden>

 Add deserialization helper

 refs 26 (Make it possible to import bundles into the database)

2010-09-16 Zygmunt Krynicki <email address hidden>

 Merge BundleDeserializationError model and improved fixtures

 Implements 23 (Add BundleDeserializationError model)

2010-09-16 Zygmunt Krynicki <email address hidden>

 Use constants instead of magic strings for anonymous/team/private BundleStreams

2010-09-16 Zygmunt Krynicki <email address hidden>

 Fix mocker comment

2010-09-15 Zygmunt Krynicki <email address hidden>

 Add comment to mysterious mocker usage

2010-09-15 Zygmunt Krynicki <email address hidden>

 Fix Bundle.deserialize() to remove old errors on success, add unit tests to check this

2010-09-15 Zygmunt Krynicki <email address hidden>

 Add BundleDeserializationError class with unit tests and admin panel components.

 This class is used by Bundle.deserialize() to store any deserialization issues

2010-09-15 Zygmunt Krynicki <email address hidden>

 Add fixtures.create_bundle(), refactor remaining fixtures

2010-09-16 Zygmunt Krynicki <email address hidden>

 Merge TestResult model

 Implements 7 (TestResult model needed)

2010-09-16 Zygmunt Krynicki <email address hidden>

 Fix microseconds-to-duration translation in TestResult and add unit tests to check that

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add test result model

2010-09-15 Zygmunt Krynicki <email address hidden>

 Merge databrowse support

 References 24 (Add basic views for looking at data)

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add django.contrib.databrowse support

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix typo in error message

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix docstring for fixtures.created_bundles()

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add TestRun model with unit tests and admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Improved TestCase.__unicode__ method

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add TestCase to admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Addd TestCase model, manager and unit tests

2010-09-15 Zygmunt Krynicki <email address hidden>

 Merge TestRun model

 Implements 13 (TestRun model needed)

2010-09-15 Zygmunt Krynicki <email address hidden>

 Remove tests of TestCaseManager, they got in by rebase going wrong

2010-09-15 Zygmunt Krynicki <email address hidden>

 Refer to forward model by string

2010-09-15 Zygmunt Krynicki <email address hidden>

 Add generic relation TestRun.attachments to Attachment

2010-09-15 Zygmunt Krynicki <email address hidden>

 Split AttachmentTestCase into more specific tests

2010-09-15 Zygmunt Krynicki <email address hidden>

 Remove copy-paste issue in certain docstring

2010-09-15 Zygmunt Krynicki <email address hidden>

 Rework TestRunAttachment into generic Attachment model, add unit tests

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix typo in error message

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix docstring for fixtures.created_bundles()

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add TestRun model with unit tests and admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Improved TestCase.__unicode__ method

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add TestCase to admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Addd TestCase model, manager and unit tests

2010-09-15 Zygmunt Krynicki <email address hidden>

 Merge TestCase model

 Implements 6 (TestCase model needed)

2010-09-15 Zygmunt Krynicki <email address hidden>

 Drop TestCaseManager with custom get_or_create()

2010-09-14 Zygmunt Krynicki <email address hidden>

 Improved TestCase.__unicode__ method

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add TestCase to admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Addd TestCase model, manager and unit tests

2010-09-15 Zygmunt Krynicki <email address hidden>

 Merge Test model

 Implements 14 (Test model needed)

2010-09-15 Zygmunt Krynicki <email address hidden>

 Remove model manager feature that generates Test.name when creating instances via get_or_create()

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add Test.__unicode__ method

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add Test to admin panel

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add some more tests in Test construction tests

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix Test.name.verbose_name (copy paste issue)

2010-09-14 Zygmunt Krynicki <email address hidden>

 Add Test model.

 This model represents collections of test cases.

2010-09-14 Zygmunt Krynicki <email address hidden>

 Merge bundle stream views

 Implements 1 (List view for BundleStream)
 Implements 2 (Detail view for BundleStream)

2010-09-14 Zygmunt Krynicki <email address hidden>

 Use get_or_create to not cause duplicate errors in test class setup function

2010-09-14 Zygmunt Krynicki <email address hidden>

 Fix test class inheritance, thanks Paul!

2010-09-13 Zygmunt Krynicki <email address hidden>

 Make auth_test view only visible while testing, improve TestClient misconfiguration

2010-09-13 Zygmunt Krynicki <email address hidden>

 Add tests for views.bundle_stream_detail() with one bug fix they helped to find

2010-09-13 Zygmunt Krynicki <email address hidden>

 Add fixtures.make_bundle_stream and adapt fixtures.created_bundle_streams

2010-09-13 Zygmunt Krynicki <email address hidden>

 Redo test authentication not to use explicit credentials any longer

 Courtesy of James Westby.

2010-09-13 Zygmunt Krynicki <email address hidden>

 Add test cases for views.bundle_stream_list and fix bug in the original code

2010-09-09 Zygmunt Krynicki <email address hidden>

 Fix BundleStream.can_upload() (missing argument)

2010-09-09 Zygmunt Krynicki <email address hidden>

 Add templates for bundle stream list and bundle stream details

2010-09-09 Zygmunt Krynicki <email address hidden>

 Extend the list.html template to include a dedicated block when there is nothing to show

2010-09-09 Zygmunt Krynicki <email address hidden>

 Update dashboard_app.urls and lc-server.urls, hook new views

2010-09-09 Zygmunt Krynicki <email address hidden>

 Add views bundle_stream_list() and bundle_stream_detail()

2010-09-10 Zygmunt Krynicki <email address hidden>

 Improve DashboardStream authorization API and unit tests

2010-09-10 Zygmunt Krynicki <email address hidden>

 Fix copy-paste erorr

2010-09-10 Zygmunt Krynicki <email address hidden>

 Drop unnecessary parentheses

2010-09-10 Zygmunt Krynicki <email address hidden>

 Better test names for can_access() which used to be can_upload()

2010-09-10 Zygmunt Krynicki <email address hidden>

 Add tests for BundleStreamManager.allowed_for_user()

2010-09-10 Zygmunt Krynicki <email address hidden>

 Add tests for BundleStreamManager.allowed_for_anyone()

2010-09-10 Zygmunt Krynicki <email address hidden>

 Make DashboardAPI().streams() use new model manager methods

2010-09-10 Zygmunt Krynicki <email address hidden>

 Move BundleStream.get_allowed_for_user() to BundleStreamManager.allowed_for_user()

2010-09-10 Zygmunt Krynicki <email address hidden>

 Cherry-pick bundle stream access changes from stable.bundle-views

2010-09-09 Zygmunt Krynicki <email address hidden>

 Add BundleStream().can_access(user) and BundleStream.get_allowed_for_user(user)

 Those methods capture all the access control logic hence will be easier to test and reuse.

2010-09-10 Zygmunt Krynicki <email address hidden>

 Merge packaging changes. Drop native debian package. provide working setup.py

2010-09-09 Zygmunt Krynicki <email address hidden>

 Rework packaging to actually work this time

2010-09-09 Zygmunt Krynicki <email address hidden>

 Separate dashboard_app from launch_control and rename lc-server to dashboard_server

2010-09-09 Zygmunt Krynicki <email address hidden>

 Remove .bzr-builddeb (again, not a native package)

2010-09-09 Zygmunt Krynicki <email address hidden>

 Remove debian directory (this will not be a native debian package)

2010-09-10 Zygmunt Krynicki <email address hidden>

 Remove some old code and bits that moved to abrek

2010-09-09 Zygmunt Krynicki <email address hidden>

 Remove old code (samples, sw_profile, old json stack, test cases for that)

2010-09-10 Zygmunt Krynicki <email address hidden>

 Merge DashboardAPI().bundles() fixes

2010-09-09 Zygmunt Krynicki <email address hidden>

 Fix implementation of DashboardAPI().bundles()

 The previous implementation did not raise NOT_FOUND or FORBIDDEN as documented.
 One test case that previously worked was removed (listing bundles in inexistent
 stream silently returned empty list). New test case for all failure conditions
 was also added.

2010-09-10 Zygmunt Krynicki <email address hidden>

 Merge DashboardAPI().{get,put,bundles,streams}() and corresponding client-side commands

2010-09-09 Zygmunt Krynicki <email address hidden>

 Allow DashboardAPI().streams() to see private streams of the owner and public streams

2010-09-09 Zygmunt Krynicki <email address hidden>

 Redirect lc-tool.py get errors to stderr

2010-09-09 Zygmunt Krynicki <email address hidden>

 Merged test scenario improvements from James

 I added a test case that scenarios indeed work as we expect (that the database is empty).
 I also removed the now-unnecessary code from fixtures.create_xxx

2010-09-09 Zygmunt Krynicki <email address hidden>

 Simplify fixtures not to remove most of the resources it has created.

 This is no longer necessary because scenarios no longer interfere with django
 database magic. The only resources that are still managed are model instances
 with FileField fields.

2010-09-09 Zygmunt Krynicki <email address hidden>

 Add test case that makes sure the database is empty even when using scenarios

2010-09-08 James Westby <email address hidden>

 Use testscenarios rather than a custom scenarios decorator.

2010-09-08 Zygmunt Krynicki <email address hidden>

 Update tests to reflect the fact that dispatcher now exits the python interpreter after running a command

2010-09-08 Zygmunt Krynicki <email address hidden>

 Use abs() instead of if statement

2010-09-08 Zygmunt Krynicki <email address hidden>

 Fix typo in comment

2010-09-08 Zygmunt Krynicki <email address hidden>

 Use "number of bundles" instead of "bundles #"

2010-09-08 Zygmunt Krynicki <email address hidden>

 Whitespace fix

2010-09-08 Zygmunt Krynicki <email address hidden>

 Remove debugging print statement from admin panel

2010-09-08 Zygmunt Krynicki <email address hidden>

 Change output of lc-tool.py put

2010-09-08 Zygmunt Krynicki <email address hidden>

 Allow commands to return error codes on error

2010-09-08 Zygmunt Krynicki <email address hidden>

 Print error messages to stderr

2010-09-08 Zygmunt Krynicki <email address hidden>

 Remove support for --user and --password from XMLRPC commands, drop default location

2010-09-08 Zygmunt Krynicki <email address hidden>

 Make default row_formatter None

2010-09-08 Zygmunt Krynicki <email address hidden>

 Fix inaccurate comment from the dev branch

2010-09-07 Zygmunt Krynicki <email address hidden>

 Fix lc-tool.py get command to print the SHA1 and not the (now gone) BUNDLE_ID

2010-09-07 Zygmunt Krynicki <email address hidden>

 Documentation for DashboardAPI().bundles()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Documentation for DashboardAPI().streams()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve documentation for DashboardAPI.get()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add missing django application for markup support

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve HTML template that displays XML-RPC API help page

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve documentation of DashboardAPI().version() and DashboardAPI().put()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve DjangoXMLRPCDispatcher

 Use standard fault codes for the following error conditions:
 - calling unknown function
 - internal server error

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add test for DashboardAPI.put() and duplicate bundles

2010-09-07 Zygmunt Krynicki <email address hidden>

 PEP8 whitespace

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve DashboardAPI.put()

 There is a comprehensive docstring that explains all the error conditions of the
 function and its precise behaviour. A small API change has been made to make
 put() return the SHA1 of the content instead of the database-dependent primary
 key. In addition the actual bundle content is stored with a filename that is
 derived from the primary key instead of the provided content_filename. This
 change will simplify storage management and gets rid of the requirement to
 validate the user-provided data that might have been used to derive a file name
 on the file system (thus improves security)

 All of the above is thoroughly tested with unit tests.

2010-09-07 Zygmunt Krynicki <email address hidden>

 Shorten one test by using default test argument

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add more test scenarios for DashboardAPI.get() that show when the function fails

2010-09-07 Zygmunt Krynicki <email address hidden>

 Enhance fixtures.created_bundles to be able to create personal and team bundle streams

2010-09-07 Zygmunt Krynicki <email address hidden>

 Fix DashboardAPI.get() when there is no matching bundle.

2010-09-07 Zygmunt Krynicki <email address hidden>

 Make fixtures.use_test_scenarios call the test function with keyword arguments

 Instead of:
 def foo(self, values):
 values['something]
 ...

 We get:
 def foo(self, something):
 ...

 This dramatically simplifies test code and allows to use defaults to shorten test scenario definitions

2010-09-07 Zygmunt Krynicki <email address hidden>

 Move uses_scenarios and test_loop to fixtures module

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add fixture for creating bundle streams, simplify tests

2010-09-07 Zygmunt Krynicki <email address hidden>

 Rename fixture methods not to clash with common variables

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add test for DashboardAPI.get()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Create fixtures module with helper context managers, adapt existing tests

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add some more scenarios for DashboardAPI.bundles()

2010-09-07 Zygmunt Krynicki <email address hidden>

 Change lc-tool subcommand 'streams' not to print user and group name.

 This information was pointless as it is also encoded in the pathname

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add missing whitespace

2010-09-07 Zygmunt Krynicki <email address hidden>

 Reorder Bundle fields in the administration panel

2010-09-07 Zygmunt Krynicki <email address hidden>

 Improve test helpers uses_results and test_loop()

 The uses_results() function no longer passes scenario_name to test functions
 (nobody used it anyway). It also depends on test_loop() to report scenario
 details during unexpected exception caused by test failure.

 The test_loop() class now uses logging.exception() to print exception
 information, including backtrace. The output is shorter and pinpoints the error
 location. Loop arguments are also displayed clearly so it's easy to figure out
 why something has gone wrong.

2010-09-07 Zygmunt Krynicki <email address hidden>

 Add test case for DashboardAPI.bundles() and a small support class for loop testing

2010-09-07 Zygmunt Krynicki <email address hidden>

 Change Bundle addressing to use SHA1 of the content instead of the primary key.

 Change DjangoAPI.get() and DjangoAPI.bundles() not to depend the primary key of
 Bundle table. Instead the means of addressing bundles is by using SHA1 of the
 content. This makes test results stable and generally feels better. You can
 share bundle SHA1 and it will work on any database that has this document.

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add some test cases for DashboardAPI.streams()

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add subcommands for lc-tool to list bundles and bundle streams as well as upload and download data

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add DataSetRenderer support class to dashboard command line interface module

 The new class can pretty-print table-like data such as list of bundles or bundle streams

2010-09-06 Zygmunt Krynicki <email address hidden>

 Improved error handling in XML-RPC backed commands for lc-tool

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add XML-RPC API for listing bundles and bundle streams and uploading and downloading bundles

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add a BundleStream.can_download() method

 The access rights required to download a bundle are the same as for uploading

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add content_sha1 field to Bundle model

 This allows to spot duplicates easily. It is not required but useful as it
 enables workflows where a fresh dashboard is fed with lots of pre-existing data
 without the fear of duplicate bundles being uploaded.

2010-09-06 Zygmunt Krynicki <email address hidden>

 Add ability to define scenarios per test case

2010-09-04 Zygmunt Krynicki <email address hidden>

 Fix a bug in urlparse usage

2010-09-02 Zygmunt Krynicki <email address hidden>

 Add client version command to lc-tool

2010-09-02 Zygmunt Krynicki <email address hidden>

 Change launch_control.__version__ to be like python version tuple

2010-09-02 Zygmunt Krynicki <email address hidden>

 Update unit tests for command dispatcher to take account for __abstract__

2010-09-02 Zygmunt Krynicki <email address hidden>

 Make XMLRPCCommand (base class) not show up in lc-tool

2010-09-02 Zygmunt Krynicki <email address hidden>

 Wrap long line in commands.dispatcher

2010-09-02 Zygmunt Krynicki <email address hidden>

 Add lc-tool command module for dashboard

2010-09-02 Zygmunt Krynicki <email address hidden>

 Use absolute import in commands.dispatcher

2010-09-02 Zygmunt Krynicki <email address hidden>

 PEP8 whitespace fixes

2010-09-01 Zygmunt Krynicki <email address hidden>

 Merge with stable.xml-rpc branch

 This brings in XML-RPC support and paves the way for new features

2010-09-01 Zygmunt Krynicki <email address hidden>

 Move XML-RPC API to separate module

2010-09-01 Zygmunt Krynicki <email address hidden>

 Improved xml-rpc interface test code

2010-09-01 Zygmunt Krynicki <email address hidden>

 Improve docstring on xml_rpc_handler()

2010-09-01 Zygmunt Krynicki <email address hidden>

 Missing PEP8 blanks

2010-09-01 Zygmunt Krynicki <email address hidden>

 Move import_settings import before the conditional branch

2010-09-01 Zygmunt Krynicki <email address hidden>

 Improve some comments

2010-09-01 Zygmunt Krynicki <email address hidden>

 Fix copy-paste issue with double call to pong()

2010-09-01 Zygmunt Krynicki <email address hidden>

 Update .bzringore (database and local_settings.py)

2010-09-01 Zygmunt Krynicki <email address hidden>

 Add XML-RPC interface with initial API and associated unit tests

2010-09-01 Zygmunt Krynicki <email address hidden>

 Add __version__ to launch_control.dashboard_app

2010-09-01 Zygmunt Krynicki <email address hidden>

 Rework settings to make initial configuration easier

2010-09-01 Zygmunt Krynicki <email address hidden>

 Merge with stable.pure-server-side-models branch.

 This brings in:
 - preliminary django models
 - dashboard bundles
 - streams
 - software packages
 - hardware devices
 - unit tests for server side code
 - improved object factory class

2010-08-31 Zygmunt Krynicki <email address hidden>

 Use strict naming in uses_scenario() docstring

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add simple scenario decorator that rolls common code into one place and adapt test cases to use it.

2010-08-30 Zygmunt Krynicki <email address hidden>

 Minor whitespace and naming changes (s/_1//)

2010-08-30 Zygmunt Krynicki <email address hidden>

 Rework pathname tests to use scenarios

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add unit tests for BundleStream._calc_pathname()

2010-08-30 Zygmunt Krynicki <email address hidden>

 Update upload rights test case class name

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add more anonymous users upload rights unit tests

2010-08-30 Zygmunt Krynicki <email address hidden>

 Fix BundleStream.can_upload() when authorized users could not upload to public streams, add unit tests to check that

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add more tests for BundleStream.can_upload()

2010-08-30 Zygmunt Krynicki <email address hidden>

 Fix DashboardBundle.can_upload() for group permissions and add unit tests to validate that

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add test for BundleStream pathname being regenerated on save()

2010-08-30 Zygmunt Krynicki <email address hidden>

 Add initial Bundle unit tests

2010-08-30 Zygmunt Krynicki <email address hidden>

 Make pathname a regular field of BundleStream.

 This prevents the issue that a unique field may have
 any number of NULL values and thus resolves issues found
 in recently added unit tests.

 The API is not changed in any way.

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add BundleStream test cases (failing on sqlite)

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add support for using properties in Dummy classes

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add docstrings to urls and views

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add BundleStream and Bundle admin

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add BundleStream and Bundle models

2010-08-27 Zygmunt Krynicki <email address hidden>

 Merge with .pure-server-side-models branch.

 This brings in initial dashboard_app models for SoftwarePackage and
 HardwareDevice. It also establishes code quality level for server-side
 code merges.

2010-08-27 Zygmunt Krynicki <email address hidden>

 Add test checking that NamedAttribute uniqueness constraints are enforced

2010-08-27 Zygmunt Krynicki <email address hidden>

 Call .save() on database model tests to trigger any DB-level constraints

2010-08-26 Zygmunt Krynicki <email address hidden>

 Add NamedAttribute and HardwareDevice models, unit tests and admin interface

2010-08-26 Zygmunt Krynicki <email address hidden>

 Update SoftwarePackageTestCase to use ObjectFactoryMixIn

2010-08-26 Zygmunt Krynicki <email address hidden>

 Add ObjectFactoryMixIn class to utils.call_helper

2010-08-26 Zygmunt Krynicki <email address hidden>

 Add SoftwarePackage model and unit tests

2010-08-26 Zygmunt Krynicki <email address hidden>

 Add empty dashboard_app application

2010-08-26 Zygmunt Krynicki <email address hidden>

 Merge with new-models branch.

 This brings in new common models package and associated unit tests.
 The previous implementation in sample.py and sw_context.py is deprecated
 and will be removed as soon as remaining models/factories changes land.

2010-08-26 Zygmunt Krynicki <email address hidden>

 Better error message in TestResult looping construction test

2010-08-26 Zygmunt Krynicki <email address hidden>

 Fix typo in unit tests code

2010-08-26 Zygmunt Krynicki <email address hidden>

 Fix copy-pase omission

2010-08-26 Zygmunt Krynicki <email address hidden>

 Remove unnecessary whitespace

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add TestRun unit tests

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add TestResult() test case for handling of default arguments

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add more TestResult unit tests

2010-08-25 Zygmunt Krynicki <email address hidden>

 Make test_case_id and result mandatory arguments of TestResult

2010-08-25 Zygmunt Krynicki <email address hidden>

 Tighten valid pattern of test_case_id, add unit tests to check this

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add test case for Command.register_argments()

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix additional unit tests inheriting from our own TestCase class instead of unittest.TestCase

2010-08-25 Zygmunt Krynicki <email address hidden>

 Remove empty implementation of PlainOldData.get_json_attr_types()

 This is expected as this method is really not implemented in this class

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix argument name in TestCase constructor

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix DashboardBundle constructor default argument handling

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix HardwareDevice constructor default argument handling

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add unit tests for TestCase model

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix DashboardBundle test case

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix test_dashboard_bundle_format_1_0 module to use TestCase from unittest not from own models

 This makes all the unit tests in the module start to be picked up by TestLoader

2010-08-24 Zygmunt Krynicki <email address hidden>

 Improve SoftwareImage unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Improve HardwareDevice unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Improve HardwareContext unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Improve DashboardBundle unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add SoftwarePackage unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add unit tests for SoftwareImage

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix slot name in SoftwareImage

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add unit tests for SoftwareContext

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add unit tests for HardwareDevice

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix slot name in HardwareDevice

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add initial unit tests for launch_control.models

2010-08-24 Zygmunt Krynicki <email address hidden>

 PEP8 whitespace in sw_image.py

2010-08-24 Zygmunt Krynicki <email address hidden>

 Consistently use plain strings in get_json_attr_types()

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix TestCase definition to have a slot 'name' instead of 'desc'

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix TestResult docstrings for some fields copied over from older code

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix HardwareDevice docstring to match implementation

2010-08-24 Zygmunt Krynicki <email address hidden>

 Fix HardwareDevice constructor to provide 'description' argument

2010-08-24 Zygmunt Krynicki <email address hidden>

 Use absolute imports in launch_control.models

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add new client side models that conform to the agreed "Dashboard Bundle format 1.0"

2010-08-26 Zygmunt Krynicki <email address hidden>

 Merge with json-simplejson-compat branch.

 This brings in bug fixes, unit tests and consistent support for
 two json implementations: python2.6 own json and python-simplejson package

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add test script for checking JSON implementation support

2010-08-25 Zygmunt Krynicki <email address hidden>

 Fix typo in comment

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add __inhibit_protect__ to utils.json.impl as a temporary workaround

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add a note that utils.json supports two json backed implementations

2010-08-25 Zygmunt Krynicki <email address hidden>

 Remove json vs simplejson importing unit test.

 This test does not make sense after adding the selection machinery

2010-08-25 Zygmunt Krynicki <email address hidden>

 Add mechanism for selecting JSON implementation to work with.

 This is a little hacky and might be removed in the future.
 By setting JSON_IMPL to one of 'json', 'simplejson' or 'auto' you
 can change the implementation on which utils.json will be based on.

 This needs much more testing on python2.5 and python2.7, I suspect
 some bugs are still there to find with this new switch.

2010-08-25 Zygmunt Krynicki <email address hidden>

 Improve class hint existance test to be slightly more strict

2010-08-25 Zygmunt Krynicki <email address hidden>

 Improve json and simplejson compatibility, always decode strings to unicode before processing

2010-08-25 Zygmunt Krynicki <email address hidden>

 Improve json and simplejson compatibility, use iterencode instead of _iterencode

2010-08-25 Zygmunt Krynicki <email address hidden>

 Remove unneeded imports from the json tutorial

2010-08-25 Zygmunt Krynicki <email address hidden>

 Simplify imports sample.py

2010-08-24 Zygmunt Krynicki <email address hidden>

 Merge with stable.cli branch.

 This brings in preliminary support for command-line tool that assists launch-control web application

2010-08-24 Zygmunt Krynicki <email address hidden>

 Do not pass command arguments twice, remove argument from Command.invoke()

2010-08-20 Zygmunt Krynicki <email address hidden>

 Add unit tests for launch_control.commands package

2010-08-20 Zygmunt Krynicki <email address hidden>

 Raise NotImplementedError instead of NotImplemented

2010-08-20 Zygmunt Krynicki <email address hidden>

 Use inspect.getdoc() instead of plain __doc__

2010-08-20 Zygmunt Krynicki <email address hidden>

 Add ability to pass explicit arguments to LaunchControlDispatcher

2010-08-16 Zygmunt Krynicki <email address hidden>

 Add command line tool and associated infrastructure.

2010-08-24 Zygmunt Krynicki <email address hidden>

 Merge with stable.software_package_comparison branch.

 This brings in a minor change to the way SoftwarePackage instances are compared

2010-08-13 Zygmunt Krynicki <email address hidden>

 Fix SoftwarePackage comparison by implementing __cmp__ instead of __eq__ and __lt__
 ------------- This line and the following will be ignored --------------

 modified:
 launch_control/sw_profile.py

2010-08-24 Zygmunt Krynicki <email address hidden>

 Merge with .deprecate_old_json branch.

 This moves sample.py to use the new json stack

2010-08-20 Zygmunt Krynicki <email address hidden>

 Make sample use PlainOldData and new JSON stack, update unit tests

2010-08-24 Zygmunt Krynicki <email address hidden>

 Merge .json_fixes branch

 This brings in small improvements and bug fixes to the utils.json package

2010-08-24 Zygmunt Krynicki <email address hidden>

 Add missing call to super(xxx, self).setUp()

2010-08-22 Zygmunt Krynicki <email address hidden>

 Use mix-in classes to define common test cases for Simple/Complex JSON types

2010-08-20 Zygmunt Krynicki <email address hidden>

 Fix a typo in comment

2010-08-20 Zygmunt Krynicki <email address hidden>

 Improve efficiency of JSON deserialization for IComplexJSONType without customized attributes

2010-08-20 Zygmunt Krynicki <email address hidden>

 When Proxy types don't map correctly raise a more descrptive exception

2010-08-20 Zygmunt Krynicki <email address hidden>

 Rewrite PlainOldData.pod_attrs to be easier to read

2010-08-20 Zygmunt Krynicki <email address hidden>

 Allow to disable test coverage with environment variable

2010-08-20 Zygmunt Krynicki <email address hidden>

 Improve utils.json unit tests

2010-08-17 Zygmunt Krynicki <email address hidden>

 Explain the purpose of the simple JSON type decoding test

2010-08-17 Zygmunt Krynicki <email address hidden>

 Don't use backslashes in to create long docstrings

2010-08-17 Zygmunt Krynicki <email address hidden>

 Better type checking when registering json proxy types

2010-08-17 Zygmunt Krynicki <email address hidden>

 Separate import mocking into additional module to simplify other tests

2010-08-17 Zygmunt Krynicki <email address hidden>

 Additional tests for JSON encoding/decoding

2010-08-17 Zygmunt Krynicki <email address hidden>

 Import PlainOldData in json package

2010-08-16 Zygmunt Krynicki <email address hidden>

 Treat unimplemented get_json_attr_types() as empty type mapping

2010-08-16 Zygmunt Krynicki <email address hidden>

 Lookup proxy and reverse-proxy (proxied) classes to make type checking work

2010-08-16 Zygmunt Krynicki <email address hidden>

 Use _unmarshall_object when using class_hints (as it uses get_json_attr_types())

2010-08-16 Zygmunt Krynicki <email address hidden>

 Make test output deterministic by using sorted_keys=True

2010-08-17 Zygmunt Krynicki <email address hidden>

 Merge with stable.registration branch.
 This adds easier subclass registration and enumeration APIs that will improve future code

2010-08-16 Zygmunt Krynicki <email address hidden>

 Add simple module for detecting all known sub-classes of a particular class.

2010-08-13 Zygmunt Krynicki <email address hidden>

 Reorganize JSON package imports:
 - __init__.py is empty and just imports everything from various places for simplicity.
 - each major class gets a separate module
 - common interfaces are moved to interface module
 - class registry moved to registry module
 - "find a json implementation" moved to module for future-compatibility
 - all imports are sorted/layed out correctly
 - all imports still use PEP8 discouraged package-reltaive imports
 - all modules are added to test coverage reporting

2010-08-13 Zygmunt Krynicki <email address hidden>

 Change logging configuration for PluggableJSONDecoder

2010-08-12 Zygmunt Krynicki <email address hidden>

 Minor cleanup in PluggableJSONDecoder:
 - replace all commented-out print statements with debug logging messages
 - use "unmarshall" instead of "awake"

2010-08-12 Zygmunt Krynicki <email address hidden>

 Improve utils.filesystem module (docstrings and unit tests)

2010-08-12 Zygmunt Krynicki <email address hidden>

 Some code review fixes
 - all modules containing unit tests are named test_FOO
 - import lists and other modul lists are sorted

2010-08-11 Zygmunt Krynicki <email address hidden>

 Add new utils package.

 This package contains the brand-new utils.json package with comprehensive json
 support. Miscellaneous testing support modules (import_prohibitor and
 call_helper) are also relocated to the utils package.

 The utils_json module is _not_ removed yet. For review simplicity changes that
 remove this module and adapt everything that depended on it are applied in
 separate patches.

2010-08-13 Zygmunt Krynicki <email address hidden>

 Merge initial bits of the server side application

2010-08-13 Zygmunt Krynicki <email address hidden>

 Add initial server code.

 Note that this only includes the "lc-server" django project without any django
 apps that actually matter. Subsequent patches will bring each app, one at a
 time.

2010-08-11 Zygmunt Krynicki <email address hidden>

 Better support displaying test coverage

2010-07-01 Zygmunt Krynicki <email address hidden>

 Merge with .python2.5 branch

 This brings in:
 - python2.5 support
 - tested on Ubuntu 8.04/Hardy
 - removal of any usage of class decorators using @ syntax
 - __future__ imports where appropriate
 - json / simplejson / utils_json compatibility fixes
 - one generic bugfix for prohibited_modules.py

2010-06-29 Zygmunt Krynicki <email address hidden>

 Add python-simplejson to dependencies

2010-06-29 Zygmunt Krynicki <email address hidden>

 Do not automatically attempt to hide all prohibited modules.
 Fixes an issue where prohibited module was not loaded yet
 (and is in fact not available at all) and would fail to unload.

2010-06-29 Zygmunt Krynicki <email address hidden>

 Import json from utils_json (python2.5 compatibility)

2010-06-29 Zygmunt Krynicki <email address hidden>

 Use from __future__ import with_statement (python2.5 compatibility)

2010-06-29 Zygmunt Krynicki <email address hidden>

 Do not use class decorators (python2.5 compatibility)

2010-06-29 Zygmunt Krynicki <email address hidden>

 Fix test suite to work on lucid

2010-06-29 Zygmunt Krynicki <email address hidden>

 Whitespace fix

2010-06-29 Zygmunt Krynicki <email address hidden>

 Add test case for importing debian_version_compare from debian_bundle if debian is not available

2010-06-29 Zygmunt Krynicki <email address hidden>

 Add support to import_prohibitor.py for reloading explicitly listed modules

2010-06-28 Zygmunt Krynicki <email address hidden>

 Fix issue in PluggableJSONDecoder._object_hook() that would prevent it from working on python 2.6.4

2010-06-28 Zygmunt Krynicki <email address hidden>

 Merge with .unittest branch

 This brings in:
 - import_prohibitor module for mocking ImportError failures
 - support for python-coverage for test coverage tracking
 - simplified unit test launcher
 - 100% coverage for current application code

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add another test case for SoftwarePackage ordering when package names are different

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add test case contributed by James Westby

2010-06-28 Zygmunt Krynicki <email address hidden>

 Rework the comment next to code testing debian version comparator

2010-06-28 Zygmunt Krynicki <email address hidden>

 Wrap long lines

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add more newlines where appropriate

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add unit tests for launch_control.utils_json module

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add helper module for mocking ImportError

2010-06-28 Zygmunt Krynicki <email address hidden>

 Separate ClassRegistry from IJSONSerializable for better ensapsulation

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add .coverage to ignored files

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add unit tests for _Sample.to_json()

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add unit tests for SoftwareProfile.inspect_system()

2010-06-28 Zygmunt Krynicki <email address hidden>

 Simplify SoftwareProfile.find_installed_packages and associated unit tests

2010-06-28 Zygmunt Krynicki <email address hidden>

 Remove support for running doctests directly to get better test coverage reporting

2010-06-28 Zygmunt Krynicki <email address hidden>

 Add support for checking code coverage

2010-06-24 Zygmunt Krynicki <email address hidden>

 Add unit tests for SoftwareProfile

2010-06-24 Zygmunt Krynicki <email address hidden>

 Add unit tests for SoftwarePackage

2010-06-24 Zygmunt Krynicki <email address hidden>

 Remove obsolete shebang from sample.py

2010-06-24 Zygmunt Krynicki <email address hidden>

 Merge with .sw_profile branch

 This brings in:
 - sw_profile module with SoftwarePackage and SoftwareProfile classes
 for inspecting runtime software environment
 - third party mocker module (in launch_control.thirdparty.mocker)
 from Gustavo Niemeyer

2010-06-24 Zygmunt Krynicki <email address hidden>

 Don't catch import error on 'import apt'. Adjust documentation.

2010-06-24 Zygmunt Krynicki <email address hidden>

 Use python-debian to compare package version

2010-06-24 Zygmunt Krynicki <email address hidden>

 Replace testing.mocker to thirdparty.mocker to reflect actual module location

2010-06-24 Zygmunt Krynicki <email address hidden>

 Added doctests for sw_profile module
 Most of them will be converted to unit tests as soon as the testing branch is merged into trunk

2010-06-24 Zygmunt Krynicki <email address hidden>

 Add third party mocker module

2010-06-22 Zygmunt Krynicki <email address hidden>

 Add sw_profile module with SoftwarePackage and SoftwareProfile classes

2010-06-24 Zygmunt Krynicki <email address hidden>

 Merge with .testing branch

 This brings in:
 - easier way to run unit tests from multiple modules
 - clear upgrade path from doctests

2010-06-23 Zygmunt Krynicki <email address hidden>

 Rename test_all() to test_suite()

2010-06-22 Zygmunt Krynicki <email address hidden>

 Simplify unittest setup code

2010-06-22 Zygmunt Krynicki <email address hidden>

 Whitespace fix in call_helper.py

2010-06-22 Zygmunt Krynicki <email address hidden>

 Improved testing framework/loader for launch_control. It is sufficient to list
 modules to test in launch_control.tests.__init__.py's _modules variable. The
 __doctests_module__ hack can now go away as doctests are extracted from all
 modules.

2010-06-24 Zygmunt Krynicki <email address hidden>

 Merge with .json branch.

 This brings in:
 - support for universal json serialization/deserialization with type registration
 - support for serializing QualitativeSample and QuantitativeSample
 - unit tests and documentation

2010-06-24 Zygmunt Krynicki <email address hidden>

 Move some QualitativeSampleJOSNSupport fields into setUp() method and add PEP8 whitespace

2010-06-24 Zygmunt Krynicki <email address hidden>

 Remove __lt__() method from _Sample

2010-06-24 Zygmunt Krynicki <email address hidden>

 Add support to serialize datetime.datetime() and datetime.timedelta() fields

2010-06-24 Zygmunt Krynicki <email address hidden>

 Fix issues unovered during code review
 1) Rename _serialize/_deserialize -> to_json/from_json
 2) Dont use abc as it is python2.6 only
 3) Fall back to simplejson if full-blown json is not available
 4) Remove save/load functions as they don't have any advantage over json.dump/json.load

2010-06-22 Zygmunt Krynicki <email address hidden>

 Minor whitespace fixes in utils_json.py

2010-06-22 Zygmunt Krynicki <email address hidden>

 Fix inaccurate docstring for utils_json.py

2010-06-21 Zygmunt Krynicki <email address hidden>

 Make QualitativeSample and QuantitativeSample serializable to JSON documents

2010-06-21 Zygmunt Krynicki <email address hidden>

 Add load() function to utils_json module

2010-06-21 Zygmunt Krynicki <email address hidden>

 Simplify type registration and move the type registry to IJSONSerializable class

2010-06-21 Zygmunt Krynicki <email address hidden>

 Add extensible objects-to-JSON serialization support module

2010-06-21 Zygmunt Krynicki <email address hidden>

 Merge with .quantitative-sample branch

2010-06-21 Zygmunt Krynicki <email address hidden>

 Additional tests for QuantitativeSample, move Dummy classes closer to usage

2010-06-21 Zygmunt Krynicki <email address hidden>

 Improve comments in QuantitativeSample.__init__()

2010-06-21 Zygmunt Krynicki <email address hidden>

 Do not use 'pass' constant directly

2010-06-21 Zygmunt Krynicki <email address hidden>

 Fix incorrect docstring for QuantitativeSample

2010-06-19 Zygmunt Krynicki <email address hidden>

 Improve docstring for QuantitativeSample._set_test_id

2010-06-19 Zygmunt Krynicki <email address hidden>

 Drop dependency on types module

2010-06-19 Zygmunt Krynicki <email address hidden>

 Add QuantitativeSample class

2010-06-21 Zygmunt Krynicki <email address hidden>

 Merge with .code-and-docs-clenaup branch

2010-06-21 Zygmunt Krynicki <email address hidden>

 Explain how constructor testing works together with ObjectFactory.
 Rename some methods that test for default argument not to include the value in
 the method name should the argument value change in sub-classes.

2010-06-21 Zygmunt Krynicki <email address hidden>

 Improve comments around __init__ and explain the purpose od double-assignment

2010-06-21 Zygmunt Krynicki <email address hidden>

 Do not force the value of QualitativeSample.test_result into str()

2010-06-18 Zygmunt Krynicki <email address hidden>

 Remove old diagnostic commands from call_helper.py

2010-06-18 Zygmunt Krynicki <email address hidden>

 Add docstring to launch_control package

2010-06-18 Zygmunt Krynicki <email address hidden>

 Decouple _Sample and QualitativeSample tests

2010-06-18 Zygmunt Krynicki <email address hidden>

 Make the mininum timestamp test more obvious

2010-06-18 Zygmunt Krynicki <email address hidden>

 Use 'value' instead of 'timestamp' in one of the tests

2010-06-18 Zygmunt Krynicki <email address hidden>

 Change _Sample and QualitativeSample constructors to set attributes directly
 rather than by using setattr.

2010-06-18 Zygmunt Krynicki <email address hidden>

 Fix _Sample constructor to validate test_id

2010-06-18 Zygmunt Krynicki <email address hidden>

 Check that timestamp value is not too old

2010-06-18 Zygmunt Krynicki <email address hidden>

 Improve documentation for QualitativeSample.{message,duration,timestamp}

2010-06-18 Zygmunt Krynicki <email address hidden>

 Store test_result as string even if argument is unicode

2010-06-18 Zygmunt Krynicki <email address hidden>

 Merge with .zyga branch

2010-06-18 Zygmunt Krynicki <email address hidden>

 Rename TEST_RESULT_CRASH to TEST_RESULT_UNKNOWN

2010-06-18 Zygmunt Krynicki <email address hidden>

 Refactor CallHelper and ObjectFactory to remove necessity of CallHelper.__init__()'s ignore_self argument

2010-06-18 Zygmunt Krynicki <email address hidden>

 Improve ObjectFactory documentation

2010-06-18 Zygmunt Krynicki <email address hidden>

 Break one long line

2010-06-18 Zygmunt Krynicki <email address hidden>

 Move _Dummy classes from _Sample and QualitativeSample into unit testing module

2010-06-18 Zygmunt Krynicki <email address hidden>

 Add support for using external _Dummy classes in ObjectFactory

2010-06-18 Zygmunt Krynicki <email address hidden>

 Use constant names in test_result assignment tests

2010-06-18 Zygmunt Krynicki <email address hidden>

 Remove needless whitespace

2010-06-18 Zygmunt Krynicki <email address hidden>

 Use arbitrary dummy values instead of concrete values where possible

2010-06-18 Zygmunt Krynicki <email address hidden>

 Use constant names when passing test_result values

2010-06-18 Zygmunt Krynicki <email address hidden>

 Rename DUMMY and DEFAULT to DUMMY_VALUE and DEFAULT_VALUE

2010-06-18 Zygmunt Krynicki <email address hidden>

 Make it explicit in the CallHelper documentation that default values are not overriden by dummy values

2010-06-18 Zygmunt Krynicki <email address hidden>

 Reformat call_helper.py's docstrings, comments and code not to exceed 79 columns

2010-06-18 Zygmunt Krynicki <email address hidden>

 Fix typo error in CallHelper._fill_agrs()

2010-06-18 Zygmunt Krynicki <email address hidden>

 Fix overly long lines

2010-06-17 Zygmunt Krynicki <email address hidden>

 Remove inaccurate parts of a comment in CallHelper._fill_args

2010-06-17 Zygmunt Krynicki <email address hidden>

 Add generic call helper and generic object factory
 Improve unit tests with new factory objects and dummy values
 Make testing for default constructor attributes work across inheritance (finally!)

2010-06-17 Zygmunt Krynicki <email address hidden>

 Merge with .zyga branch

2010-06-17 Zygmunt Krynicki <email address hidden>

 Fix invalid assumptions on timestmap and duration storage

 Use datetime.datetime and datetime.timedelta instead of plain numbers

2010-06-16 Zygmunt Krynicki <email address hidden>

 Add make_qualitative_sample helper to make unit tests more explicit

2010-06-16 Zygmunt Krynicki <email address hidden>

 Move factory.py to testing package

2010-06-16 Zygmunt Krynicki <email address hidden>

 Remove unused import 'random'

2010-06-16 Zygmunt Krynicki <email address hidden>

 Add more newlines where appropriate

2010-06-16 Zygmunt Krynicki <email address hidden>

 Add tests for skip/crash test_result

2010-06-16 Zygmunt Krynicki <email address hidden>

 Rework tests to drop randomness, use factory methods

2010-06-16 Zygmunt Krynicki <email address hidden>

 Add newlines between methods (PEP8 compliance)

2010-06-16 Zygmunt Krynicki <email address hidden>

 Add QualitativeSample.duration field

2010-06-15 Zygmunt Krynicki <email address hidden>

 Add QualitativeSample.message and QualitativeSample.timestamp fields

2010-06-15 Zygmunt Krynicki <email address hidden>

 Check that QualitativeSample.test_result is a string type

2010-06-15 Zygmunt Krynicki <email address hidden>

 Simplify access to QualitativeSample.test_id

2010-06-15 Zygmunt Krynicki <email address hidden>

 Add 'message' and 'timestamp' fields to QualitativeSample

2010-06-14 Zygmunt Krynicki <email address hidden>

 Merged with .zyga branch

2010-06-14 Zygmunt Krynicki <email address hidden>

 Remove duplicates from Depends field

2010-06-14 Zygmunt Krynicki <email address hidden>

 Add bzr builddeb support

2010-06-14 Zygmunt Krynicki <email address hidden>

 Add debian directory

2010-06-14 Zygmunt Krynicki <email address hidden>

 Add setup.py for building and packaging

2010-06-14 Zygmunt Krynicki <email address hidden>

 Add doctest + unittest testing solution and some additional tests for sample module

2010-06-14 Zygmunt Krynicki <email address hidden>

 Removed the license until Linaro TSC makes a decision

2010-06-14 Zygmunt Krynicki <email address hidden>

 Rework doctests so that they make sense as a documentation

2010-06-14 Zygmunt Krynicki <email address hidden>

 Create launch_control package with __version__ field and apply PEP8 whitespace rules

2010-06-14 Zygmunt Krynicki <email address hidden>

 Add 'api.py' with some basic Sample API

2010-06-14 Zygmunt Krynicki <email address hidden>

 Initial import with license file

2 blueprints and 2 bugs targeted

Blueprint Priority Assignee Delivery
Accessible schema documentation Accessible schema documentation 3 Medium Zygmunt Krynicki  11 Implemented
Highlight results from bootchart testing on Ubuntu based images Highlight results from bootchart testing on Ubuntu based images 2 Low Paul Larson  11 Implemented
Bug report Importance Assignee Status
869478 #869478 Missing dependency on lava-server migration 0001_add_model_Project 3 High Zygmunt Krynicki  10 Fix Released
833185 #833185 periods not allowed in stream names 4 Medium Zygmunt Krynicki  10 Fix Released
This milestone contains Public information
Everyone can see this information.