Age | Commit message (Collapse) | Author | Files | Lines |
|
This allows you to see very easily who last manipulated a package
todolist item in case you have a need to know.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Most of these were suggested by PyCharm, and include everything from
little syntax issues and other bad smells to dead or bad code.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Replace this with a redirect to the developer todolist index page.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We were seeing this in production:
IntegrityError: duplicate key value violates unique constraint "todolists_todolistpackage_todolist_id_700d1b623414814c_uniq"
DETAIL: Key (todolist_id, pkgname, arch_id)=(206, ruby-cairo, 2) already exists.
This is due to a corner case where a package was originally on a
todolist and the underlying package object disappeared, so the todolist
entry was unlinked and pkg_id set to NULL. Later, this package came
back, but our get_or_create tried to create an object that violated our
unique constraint because of the missing pkg_id.
Call get_or_create with the minimum necessary bits to find the todolist
package object, and pass the rest of the values via defaults to avoid
this problem. Additionally, relink any todolist entries up to a package
in the repositories if one is available.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Conflicts:
requirements.txt
requirements_prod.txt
|
|
This was added in Django 1.5 and allows saving only a subset of a
model's fields. It makes sense in a few cases to utilize it.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is for the public view page; we had no order_by() call so lists
could be displayed in seemingly random order.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
If one exists, it is easy enough to show it here so in-progress
todolists can easily be cross-checked with the current state of the
repository.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Bug #16519 in Django deprecates mimetype, so update our code
accordingly.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
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>
|
|
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>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Instead of putting 'www.archlinux.org' all over the place, use the Django
sites framework to pull the site name out of the database. Now these
amazing things will work if you are running locally and decide to change the
site!
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
More in line with our other templates that have .txt extensions.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Fixes FS#18935.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Forgot to update this, whoops.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We used 'Todo', 'ToDo', and 'To-do' in different places. Unify them all to
the first.
Signed-off-by: Dan McGee <dan@archlinux.org>
|