summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-02-10Fix split packages sitemapDan McGee1-1/+1
We had a ton of duplicate entries included due to the query implicitly including a 'GROUP BY' clause on the default sorting by pkgname. Fix it and cut the sitemap down to the correct size without duplicate entries. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Use 'update_fields' model.save() kwargDan McGee4-4/+4
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>
2013-02-09Change caching strategy on package.applicable_archesDan McGee1-4/+7
Rather than use the Django cache for this (aka memcached), just do it on a per-object instantiation basis. This means no external services calls except the first time to the database, which should be quite a bit faster. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Revert "Reduce query count when retrieving satisfiers and providers"Dan McGee2-14/+10
This reverts commit 20b64e42672d185821cc584dfa4b133ee259a144. Django 1.5 fixed this issue and now parent objects are automatically attached to their children when queries go through the related manager. See "Caching of related model instances" in the release notes. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Remove {% load url from future %} from templatesDan McGee14-14/+1
This is now the default in Django 1.5. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09reporead: remove batched_bulk_createDan McGee1-27/+5
Now that Django 1.5 is out and realized SQLite3 only allows for 999 parameters per SQL call, we don't need to manually batch things up anymore and can let the underlying bulk_create code do it for us. This basically reverts commit 88ee61a39ac3. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Update Konami JSDan McGee3-7/+7
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Ensure todolists are consistently sortedDan McGee1-1/+2
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>
2013-02-09Upgrade D3 to 3.0.6Dan McGee6-164/+145
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Add a releases model sitemapDan McGee2-0/+18
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Remove package seach by 'Last Updated After'Dan McGee2-23/+0
It is a lot easier to just sort the list rather than mess with this particular field, which didn't even allow you to specify a range or direction to search in. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-09Minify static files when running collectstaticDan McGee4-1/+41
This doesn't do any super optimizations, but does run the very basic cssmin and jsmin Python tools over the static resources we serve up. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-05Add './' hack to generate_keyring as wellDan McGee1-0/+4
If you specify a relative path to gpg without a slash character, it interprets as relative to ~/.gnupg, which is stupid. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-05Update exception to DeveloperKey.DoesNotExistDan McGee1-1/+1
We aren't looking up users; we are looking up developer keys. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Use DeveloperKey model on package page and reportsDan McGee2-12/+27
This introduces the new model to the package page so subkey signings show up as attributed to the original developer. We also teach the mismatched signatures report to recognize all keys and subkeys of a given developer, cutting down on some of the bogus results. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Update user_pgp_key_link template tag to use DeveloperKey modelDan McGee2-8/+13
The first of several small updates to use the new data we have available. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Add new pgp_import command; replaces import_signaturesDan McGee2-123/+241
This command now imports keys, subkeys, and signatures of those keys & subkeys. This will allow us to actually match developers with their packages signed by subkeys rather than the primary key. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Add DeveloperKey modelDan McGee3-3/+150
We're starting to see developers use subkeys of their primary key to sign packages, which we aren't handling well in the web interface. These subkeys show up as unknown, which isn't strictly true. Start the process of being able to handle these keys by adding a model that will store all known keys and subkeys and the relationships among them, as well as which developer owns each. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Move the home page script block further down the pageDan McGee2-2/+2
Put it after every bit of HTML content, including the page footer. Right now this was the only page using this block in the main template; we should move some other pages using a lot of JS to this format as well. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Fix spacing issues in signoffs 'Show More' linksDan McGee1-4/+6
When we had a simple multi-line message here, we would end up with too much spacing wherever the link had planted itself due to the div adding visual whitespace. Remove the div completely when the link is clicked to remedy this. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Remove some whitespace from index templateDan McGee1-9/+4
We had a lot going on here in the news section as far as Django template tags go, so remove some whitespace to prevent so many empty lines from being ommitted. This doesn't remove all of it from the generated HTML, but does cut it down significantly. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-03Run pngcrush and optipng over most static contentDan McGee28-0/+0
The programs have improved a bit and found some room for optimization, especially in the static logo content. Some files were reduced in size by 50% or more. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-29Merge branch 'release'Dan McGee6-17/+158
2013-01-29Fix missing template variable for removed todolist packagesDan McGee1-1/+3
When there was no longer an attached package, running in template debug mode showed we were trying to dereference a variable that didn't exist. Fix the issue by adding a bit more to the if conditional block. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-28Slight reorginization in the download page templateDan McGee1-7/+12
Move things up that don't belong to the torrent section; make magnet link more prominent by using a bulleted list. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-28Use torrent view and checksums where appropriateDan McGee3-9/+10
We no longer need to link externally to these items since we have all the data available in the web application now. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-28Extract torrent trackers into a settings variableDan McGee2-2/+9
This allows them to be overridden and changed in a central location, like we do with the SVN URL, PXE boot URL, etc. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-28Add MD5 and SHA1 fields for releasesDan McGee3-1/+127
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-28Don't error on empty torrent dataDan McGee1-0/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-27Fix todolist maintainer sortingDan McGee1-2/+2
And also fix up a place where we dereferenced a variable in a template that doesn't exist. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-25Merge branch 'on-the-plane'Dan McGee10-21/+76
2013-01-23Use more modern verison of string template formattingDan McGee1-6/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-23Use querysets for calls to get_object_or_404(Package)Dan McGee2-7/+7
This works better in most cases since we need the architecture and repository objects at some point during the view process. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-23Slight optimization when searching for removed packageDan McGee1-1/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-23Spice up the release listing page a bitDan McGee2-4/+23
Add JS tablesorter code and add some style to the yesno column. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-23Override the default admin queryset for some modelsDan McGee1-0/+10
Because some attributes are optional or otherwise not auto-magically picked up by Django, we can help the performance of loading these pages a lot by forcing a select_related() on the queryset used by the admin. For something like signoff_specifications, this drops the query count from ~107 to 9 queries. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-22Use a subquery rather than two queries in attach_maintainersDan McGee1-2/+6
Now that we are using a database that doesn't stink, it makes more sense to do all of the stuff we need to do down at the database level. This helps a lot when 500+ packages are in play at a given time, such as some of our larger rebuild todo lists. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-22Show staging version on todolist view pageDan McGee3-1/+26
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>
2013-01-21Switch to using the cached STATICFILES_STORAGE backendDan McGee3-4/+5
This should finally let us crank up the Expires: header to far-future values in production since updates to JS and CSS files will take effect immediately. Some minor removals were made from retro stylesheets as they were referencing files that don't actually exist because they were missing from the web archive. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-21Slight reorganization of urls.pyDan McGee1-34/+43
Move some of the not-so-frequently used resources further down in the list of URLs, which will ever so slightly speed up the resolver. Sitemaps don't need to be checked near as often, for instance. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-20Fix error in get_requiredby() when checking providesDan McGee1-0/+1
The query refactor in commit 1b1b516bd removed a queryset I didn't realize was getting used elsewhere in the function. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-20Remove AlwaysCommitMiddlewareDan McGee2-41/+0
Let's just go with the Django database option for PostreSQL autocommit mode instead. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-20Query performance enhancements in get_requiredby()Dan McGee1-5/+6
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>
2013-01-20Lengthen the mirror rsync IP address fieldDan McGee2-2/+69
Make it long enough to support a full-form IPv6 address with a subnet. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-20Add a view to download the torrent available for a given releaseDan McGee2-5/+26
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-20Mark release version string as uniqueDan McGee2-1/+118
It should be unique anyway, but it is especially important now that we are using it in URL patterns for lookup. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-19Implement torrent data parsing and extraction via bencodeDan McGee4-5/+58
This allows uploading of the actual torrent file itself into the webapp and then pulling the relevant pieces of information out of it. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-19Add basic release list and details viewsDan McGee6-5/+90
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-19Add more metadata to releng Release modelDan McGee4-2/+136
Add a file_size field which we will use in the RSS feed, and also add a field for future storage of the torrent data itself. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-19Don't redefine mirror_url function every callDan McGee1-10/+11
If we pull this out and define it at the top level once, we save the interpreter a fair amount of work. Signed-off-by: Dan McGee <dan@archlinux.org>