Age | Commit message (Collapse) | Author |
|
Let's just go with the Django database option for PostreSQL autocommit
mode instead.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For packages with particularly long lists of provides (e.g. perl), the
query was getting a bit out of control with the list of names passed in.
However, changing it to simply do a subquery resulted in some really
poor planning by PostgreSQL. Doing this as a custom 'WHERE' clause
utilizing the 'UNION ALL' SQL operator works very well.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This uses a new template tag to avoid repeating construction of the
necessary HTML element all over the place. The site should look exactly
as it did before, except now you don't have to download 20+ images to
see some pages.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This moves most migrations to the v2 format that have been presenting
some issues. One missing depends_on relationship has been added, and we
allow an index to not be dropped if it does not exist due to the
shittyness in sqlite3 actually keeping indexes across DDL on that table.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
The reason for this is documented in the middleware itself. Without
this, pgbouncer is of little use to us since it has to throw away every
connection we try to route through it because of unclean disconnects.
In theory, with the switch to using pgbouncer for all WSGI originating
connections and adding this middleware, we should see a notable decrease
in connection time to the database.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This will be used to eventually implement the UI side of FS#13441, but
to do that, we first need the data.
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 the preferred and non-deprecated way of doing this in Django
1.4+.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Since we need these in the template for any details links, we might as
well pull them back from the database in one query rather than three.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Django doesn't attach the parent object to the child objects, even when
queried through the related manager. This causes up to 3 extra queries:
one to retrieve the package again, and one each for arch and repo
retrieval.
For a package like archboot, this drops the number of necessary queries
for the package page from 805 to 222 (yes, this is still too high) and
cuts the time spent waiting on the database from 505ms to 262ms.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Instead of having multiple methods, move this into our single 'created'
setter method. If the 'last_modified' property is present, we now update
it accordingly when saving any model with this signal attached.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
When running tests, we can find old migrations that didn't use datetime
objects with timezones attached.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
CSS and display related tweaks
Conflicts:
public/views.py
requirements.txt
requirements_prod.txt
templates/public/download.html
|
|
Migrations, moving code around, random small improvements
|
|
I hate writing tag messages.
Conflicts:
packages/templatetags/package_extras.py
templates/packages/flag.html
templates/packages/flaghelp.html
templates/public/download.html
templates/public/index.html
templates/public/svn.html
|
|
Signing page changes, other tweaks
Conflicts:
README
local_settings.py.example
requirements_prod.txt
urls.py
|
|
Django 1.4 upgrade and a bunch of other stuff
|
|
Conflicts:
templates/base.html
templates/public/art.html
templates/public/donate.html
templates/public/download.html
templates/public/index.html
|
|
Conflicts:
requirements.txt
requirements_prod.txt
templates/base.html
templates/devel/clock.html
templates/public/download.html
templates/public/index.html
templates/releng/results.html
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Fix some that referenced non-existent attributes, and add the attribute
to other models.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For package signatures, it turns out it is way cheaper to just parse the
signature again rather than going though all the decorator and
cache_function_key business. This speeds up the mismatched signatures
report significantly once this is removed.
For base_package, given that we only call it once from our package
details template, it makes little sense to cache the result.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Show signature data on package details page
Conflicts:
requirements.txt
requirements_prod.txt
|
|
|
|
Quick release
Conflicts:
requirements.txt
requirements_prod.txt
|
|
Pkgbase view in todos, other changes related to caching
Conflicts:
public/views.py
|
|
|
|
|
|
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>
|
|
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 takes a HttpRequest object and grabs the HTTP headers out of it and
pretty-prints them in a familiar format. This will come in handy if we
want to log these when creating package FlagRequests, releng Tests, etc.
in addition to already logging the IP address of the user posting the
request.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
No need to show these as a matching request.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We handled None/NULL correctly, but not the empty string. Fix this
corner case.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This helps when creating test packages through the Django admin.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This should help cut down on the massive amount of emails I receive when
things go wrong on the production website.
Signed-off-by: Dan McGee <dan@archlinux.org>
|