summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2014-01-28Cleanups and enhancments to JS package search typeaheadDan McGee1-1/+11
Remove the need to press enter twice when using this typeahead box. Submit the form on enter, regardless of whether an item is selected or not. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-27Fix linebreak issues in preformatted code blocksDan McGee1-0/+1
In text blocks that have preformatted code, such as news items, we don't handle the overflow case very well. Let the browser do the job and wrap things if absolutely required. Fixes FS#35649. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-27Bump pgpdump required versionDan McGee2-2/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-26Revert "Change old packages report from two years to one year"Dan McGee2-3/+3
This reverts commit 8d3a1a1c504a70dd23d36c3ed5be0ebcd2f7a86d. Turns out we aren't updating packages quite as often anymore. There are currently 1900+ packages in the repos built more than one year ago. Signed-off-by: Dan McGee <dan@archlinux.org> Conflicts: devel/views.py
2014-01-25Add 'Latest Update' column to stale package relationsDan McGee3-4/+10
This helps when doing the irregular cleanup of these things and making sure a relation has been stale for some time and not just a couple minutes or hours. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-21Flag out-of-date message is no longer optionalDan McGee2-2/+2
Changed way back in commit ef9d1c1e, but I didn't update the actual text at the same time. FS#38126. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-11Add a 'last_modified' function for mirror status pagesDan McGee1-0/+7
We can use this on both the HTML and JSON views of this data to prevent recomputation for smart clients that respect the modified date header. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-11Speed up feeds generation by batching writesDan McGee1-3/+32
The XML generation underlying our package feeds was doing 1600+ calls to the write() method on the outfile. For some reason, the Python standard library insists on calling flush() after every write, which really makes performance take a nosedive. Wrap the write calls and do them in batches to remove some of the overhead and make feed generation a bit snappier. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-09Bump psycopg2 versionDan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-09Remove release fields we can pull from the torrentDan McGee3-9/+125
This makes entering new releases a bit less cumbersome as we don't really need to enter either the file size or the torrent infohash. Signed-off-by: Dan McGee <dan@archlinux.org>
2014-01-09Remove remaining references to release file_size fieldDan McGee3-3/+6
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-23A few more tweaks to the URL details templateDan McGee1-1/+9
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-23Set all attributes to default values on status URL fetchDan McGee1-0/+2
We were missing two duration-related attributes here, causing some 500 errors to happen if we had cached status_data around that didn't agree with our current list of checked mirrors. Don't blow up on the JSON data fetch by ensuring we provide a value, even if it is out of date. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-23Change import location of django_countries fieldsDan McGee2-2/+2
This will work with both the newer and older versions. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-19Allow mirror notes to wrapDan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-18reporead: implement delayed parsing of files dataDan McGee1-23/+35
This gives us some large memory savings in python due to the internal storage of Unicode strings vs. byte strings, as well as saving us processing time up front for filelist data we are never going to have to actually use. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-18reporead: bring back batched_bulk_create()Dan McGee1-1/+19
For packages with filelists with > 80,000 items, we were starting to see some serious memory issues in reporead. This was both on the statement generation side in Python as well as on the database side. Break the updates into chunks of 10,000 when we encounter packages with tons of files to control things in a bit. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-15Use select_related() in new mirror URL details viewDan McGee1-2/+4
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-15Add mirror URL details pageDan McGee5-1/+118
This will allow those that care about mirrors to zoom into URL-level details for each mirror and examine the individual check results. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-15Add delay function to MirrorLog modelDan McGee1-0/+7
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-15Admin template updates for Django 1.6Dan McGee2-5/+9
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-15Use stable parameters for cacheable functionDan McGee1-2/+3
It doesn't do much good to mark a function as cacheable if we call it every single time with different arguments due to using the current date and time. Fix it by passing the offset in instead. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Fix some caching issues on the front pageDan McGee3-6/+7
The return value from get_recent_updates() was too big for memcached due to all the attached objects, so the cache never actually worked. This sucks, because we ended up doing all the work in this function and most of the time we didn't use it because template fragment caching kicked in. Remove the cache_function decorator from this method, and instead implement delayed calling of the function so we don't compute values we aren't going to use. Template fragment caching will help us in most cases. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Don't list downstream mirrors one per lineDan McGee1-6/+5
This looks really crazy on our current Tier 1 mirrors, as some of them have tons of downstream mirrors. Instead, do what we did on the package details page and allow wrapping of the comma-separated list. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Add Flyspray Issue to mirror details templateDan McGee1-0/+4
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Add update query for extracting Flyspray bug numberDan McGee1-0/+8
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Add Flyspray Bug field to mirror modelDan McGee3-1/+86
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Show all mirror status data to authorized usersDan McGee2-14/+24
Regardless of whether the mirror URL is active or not, we often have data we can show the end user, especially if mirror admins care to see the data we've been gathering. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Speed up master key listing pageDan McGee2-9/+17
We were spending a lot of time getting the developer name for a given key on this page, which involved sending one query per key ID. Use the cache to our advantage here and save ourselves the "expensive" lookups. This eliminates ~100 queries per page load. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Fix double space in templateDan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-14Bump Django requirement for minor version releaseDan McGee2-2/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-12-03Old TODO file is very out of dateDan McGee1-4/+0
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-27Stop using Django-provided floatformat template tagDan McGee4-11/+16
It turns out this is a HUGE part of our slow mirror status template rendering, due to the internal workings. Everything is converted to a Python decimal object which is way slower than just staying in native floating point. Given we are always dealing with floats when we need to do our formatting, a home-rolled template tag can accomplish this much faster. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-27Syntax cleanups to main adminDan McGee1-0/+4
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-27Remove date_hierarchy from several package admin viewsDan McGee1-8/+4
I was never using this and it adds some pretty substantial overhead to each render of the admin page, so toss it. Add the simple date filter to the sidebar instead. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-27Allow pkg_details_link to honor package flag stateDan McGee2-8/+7
This allows the tag to be used in a few more places we weren't already able to use it, and hopefully speeds up rendering a tad on the package differences page. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-27Use pkg_details_link tag on differences report pageDan McGee1-4/+3
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-26Move markdown formatted readme to README.mdDan McGee2-80/+81
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-26Capitalize URL properly in Django adminDan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-26Bump some requirementsDan McGee2-4/+4
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-26Merge branch 'cleaned-reqdby'Dan McGee2-3/+32
2013-11-26Merge branch 'django-1.6'Dan McGee35-34/+407
2013-11-26Merge branch 'retro'Dan McGee34-3/+2044
2013-11-12Add 2012 and 2013 retro sitesDan McGee33-0/+2040
From our friends over at web.archive.org again, thanks! Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-11Filtered requiredby list for non-primary dependsDan McGee2-3/+32
For something like gambas3 which has a makedepend on postgresql, we end up getting every single split package listed in the required by list for postgresql. This is a bit crazy and unnecessary, so slim it down a bit when possible by using a slightly crazy groupby function and some smarts in our get_requiredby function. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-08Ensure user has a profile created when they go to edit itDan McGee1-3/+4
Use get_or_create, even though it leaves a bad taste in my mouth. The first user created won't have a profile becuase Django doesn't create one for users created at the command line, causing an exception when the user goes to edit it. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-07Drop old base64-ed PGP signature columnDan McGee4-3/+114
We've moved onto bytes only now. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-07Move signature data from base64 string to bytes typeDan McGee3-8/+129
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-07Add new `signature_bytes` field on package modelDan McGee2-3/+119
Now that we have a BinaryField option in Django 1.6, put it to use. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-11-07Bump requirements versions for Django 1.6Dan McGee2-4/+4
Signed-off-by: Dan McGee <dan@archlinux.org>