Age | Commit message (Collapse) | Author |
|
This will allow us to see who last changed the status of a todolist
item.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This makes it easier to see the progression of a todolist and its
contents easier since we are no longer losing the data.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Due to pgp_signature being added to the Package model, we need to depend
on this later change as well.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This will be utilized to soft-delete items from the list if the packages
are modified, rather than deleting them outright.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
A lot like skipping fetching of the news content; we definitely don't
need this just to list the todolists on index pages.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Given the way we retrieve certain related objects, it makes more sense
to use a custom tag here rather than our generic package details link
tag. When viewing a large todolist, this saves significantly on the
number of queries we need to build the page.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is ripped off from commit 7c92ddbd3c86d when we added slugs to
News objects.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This will be used to make more descriptive URLs for our todolists. The
`null=True` bit will be removed once a data migration is added to add
slugs to all previously created todolists.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a short-term fix before adding a slug field to todo lists as we
did to news a while back.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a rather widespread set of changes converting usage to the new
todo list and todo list package model recently introduced. The data
migration is not included in this commit. After this commit, the old
model should no longer be referenced anywhere.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This moves the data from the old models into the new ones. Note that IDs
are not preserved across the move, but we do store the old ID in the
old_id column so we don't break every link out there.
Links will become slugs in a future commit, so there should be no
ambiguity when linking via number vs string.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Move the todolist model from main to the todolists application, and make
a few minor tweaks to field names along the way. Also add a 'raw' field
that will hold the originally input text data from the creator or last
modifier of the todolist.
Add pkgname, pkgbase, arch, and repo fields to a new todolist package
model, which will supplement the former foreign key to an actual package
object. This will prevent todolist package objects from ever being
deleted as they can be now, which is not intuitive.
Also change the current boolean 'complete' flag to a 'status' enum that
can hold other values. For now, we add 'In-progress' to the mix.
Finally, add a 'user' field, and a 'comments' field that will be
utilized later by the UI.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Use some standard SQL and split the query into two different parts to
save a lot of unnecessary sorting and field retrieval at the database
level. The `CASE WHEN complete THEN 1 ELSE 0 END` syntax should be
accepted by any database that implements proper SQL; it was tested in
PostgreSQL and sqlite3 without issues.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This matches what we do on signoffs. Also beef up the styling a bit and
add the dynamically updated package count info.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Now that Django actually provides a concise way to use a RequestContext
object without instantiating it, we can use that rather than the old
function-based generic view that worked well to do the same.
Additionally, these function-based generic views will be gone in Django
1.5, so might as well make the move now.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a field shown on the general_form.html, and shows up as
@@@INVALID@@@ in development environments.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
As of Python 2.6, this is a builtin module that has all the same
functions and capabilities of the Django simplejson module. Additionally
simplejson is deprecated in the upcoming Django 1.5 release.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Otherwise the queryset returns nonsensical results. I find the design of
this less than obvious but so be it; we can ensure the results work
regardless of a default ordering on the model.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We can push this down to the database if we know in advance we only need
the incomplete lists. This helps our call on the developer dashboard
quite a bit; the time of the single query in question drops from >1300ms
to around 40ms.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a bit of a hack, but makes the resulting resultset returned from
the database a lot smaller and kills off all the columns we don't care
about and would never look at.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Until Django 1.3, the functions include(), patterns() and url() plus
handler404, handler500 were located in a django.conf.urls.defaults
module.
In Django 1.4, they live in django.conf.urls.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Remove never_cache from many places now that we don't actually need it
since we aren't caching by default. Adjust our cache_function decorator
times be shorter values, and also randomize them a bit to make cache
invalidations not all line up.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is for use after rebuilds when moving packages out of the staging
and testing repositories.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is rather sick to look at. Sorry, Django gives me no other choice.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Customize each email on a per-maintainer basis and list all the relevant
packages inside, rather than spamming people.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
So we do all of the work at once and don't let things leak out before
the list is completely added or updated.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Things are a bit cleaner now.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
When we show the edit todo list page, use a sorted list retrieved straight
from the database instead of a unordered set() we create at the application
level. Also add some comments for potential later improvements on
transaction boundaries and async emailing.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Add total package count and incomplete package count columns. Also reduce
the number of total queries by killing the query per row that was happening
before.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Rather than the need to include RequestContext() calls directly, we can
just use direct_to_template to do all the work for us.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Dan: rename template and view to something a bit more concise.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Also remove the @vary_on_headers('X-Requested-With') since it's
irrelevant now.
Dan: remove now unnecessary import.
Signed-off-by: Evangelos Foutras <foutrelis@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Now that we cache everything, we need to ensure anyone doing edits and
such gets the live data and not some cached version that was already
updated and is now stale. Add the never_cache decorator to any of the
CUD screens as well as a few others that might benefit from always being
regenerated.
Signed-off-by: Dan McGee <dan@archlinux.org>
|