summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-03-11Only show incomplete todolists to unauthenticated usersrelease_2013-03-11Dan McGee1-1/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-11Make todolists fully publicDan McGee2-3/+5
Remove the login_required decorator from the index and detail views to allow everyone to see the same thing. Of course, when I say "same" here, unauthenticated users don't see the same links developers do to mark packages complete and incomplete. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-11Add some explanatory info back to todolist index pageDan McGee1-4/+7
This is similar to what we had before on the public list page; put it here too so the page explains at least a little to the general public. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-11Sort incomplete todolists firstDan McGee1-1/+1
And continue sorting by creation date after that. Turns out most people care about incomplete todolists more than complete ones. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-11Remove public todolists viewDan McGee3-80/+1
Replace this with a redirect to the developer todolist index page. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-11Don't link to a one-element listing page from recent updatesDan McGee1-3/+8
If a package is built as a split package where pkgname != pkgbase, but only one actual split package is produced, the link on the recent update screen requires an extra click to get to the single package. Fix this by linking directly to the package itself. (Examples in current repos: ntfs-3g, python2-south) Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-09Remove /jsi18n/ view mappingDan McGee1-2/+0
We removed the last non-admin usage of this in commit e65c78055474, so it can be removed. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-07Fix IntegrityError in corner case todolist updateDan McGee1-6/+19
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>
2013-03-06Don't add blank options to rsync command linerelease_2013-03-06Dan McGee1-1/+5
Rsync doesn't like this so much: Unexpected remote arg: rsync://mirror.example.com/archlinux/lastsync rsync error: syntax or usage error (code 1) at main.c(1214) [sender=3.0.9] Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Teach mirrorcheck management command about check locationsDan McGee1-17/+46
This adds the -l/--location argument to the command in order to pass in a check location that we are currently running from. This locks the IP address family to the one derived from the address on that location, and stores any check results tagged with a location ID. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Add location ID to mirror logsDan McGee2-0/+84
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Add family property to mirror check locationDan McGee1-0/+7
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Revert "mirrorcheck: Don't use bulk_create on sqlite3"Dan McGee1-6/+1
This reverts commit 3c4ceb16. We don't need this anymore as bulk_create gets automatic batching now on sqlite3 so it is safe to use. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Add mirror CheckLocationAdminDan McGee1-1/+17
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Add 'created' field to more mirror modelsDan McGee2-2/+104
We have been better about doing this to most of our models, but the ones here didn't have a created field. Add it where appropriate and set a reasonably old default value. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-06Add mirror check locations modelDan McGee2-1/+105
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-05Add link to get HTTPS-only mirrorlistDan McGee1-0/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-03-04Add HTTPS mirror protocol fixtureDan McGee1-2/+11
For now, it is not included in the default selection, but we have a few existing mirrors that do support it. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-28Add django.http.response:Http404 to ignored NewRelic errorsDan McGee1-1/+1
This moved around in Django 1.5, so add it to the override list so it continues to be ignore like it was in older versions of Django. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-27Disable more @cache_function usagerelease_2013-02-27Dan McGee1-2/+2
Seems the Django caching layer has changed quite a bit and is doing all sorts of funky s**t at this point. Yay for errors! Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-27Remove caching on reverse_conflictsDan McGee1-1/+1
We started seeing this in production with memcached usage and the upgrade to Django 1.5: PicklingError: Can't pickle <class 'devel.models.UserProfile_allowed_repos'>: attribute lookup devel.models.UserProfile_allowed_repos failed Without having time to investigate further, something changed, likely due to the whole user profile/configurable user model shenanigans done in Django 1.5. For now, simply don't cache this attribute to work around the problem. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-26Use user.userprofile rather than user.get_profile()Dan McGee2-3/+3
The get_profile() function is deprecated as of Django 1.5. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-26Don't blow up in download template if no releases existDan McGee1-3/+3
Protect a few more things in {% if %} block logic. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-26Fix ALPM unittest to run when ALPM isn't presentDan McGee1-2/+21
This gets some proper unittest skip decorator action now in addition to adding more testing around everything. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-26Merge branch 'django-1.5'Dan McGee23-65/+29
Conflicts: requirements.txt requirements_prod.txt
2013-02-26Bump Django requirement to 1.5Dan McGee2-2/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-20Package sitemap adjustmentsDan McGee1-5/+15
Adjust changefreq and priority based on the repository the package is in. Testing and staging have quick turnover so set the changefreq to 'daily'. Additionally, give staging packages a super low priority of 0.1 and testing a slightly lowered priority of 0.4. We didn't include staging packages before, but since search engines are finding them anyway, we might as well. This gives us a chance to share how important the page is as well, which they could only guess before. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-20Fix some fallout with moving page to query paramsDan McGee1-1/+3
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-19Update Django versionrelease_2013-02-19Dan McGee2-2/+2
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-16Make page a query string parameter on package searchDan McGee3-3/+4
This is a bit silly to encode in the URL, or at least makes it much harder to screen out via robots.txt and other such things. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-16Remove configurable pagination for package searchDan McGee2-40/+1
Switch it to a hardcoded value of 100 for all searches instead. It didn't make much sense having a page number be part of the URL and a limit value being part of the query string. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-16Paginator template cleanupDan McGee2-9/+9
2013-02-16Move all red/green/orange styles into single declarationDan McGee1-37/+15
We use these all over the place and can express them in a much shorter fashion. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-16Fix missing template variableDan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-16Defer loading of some JS on public index pageDan McGee1-5/+7
We don't need typeahead and easter eggs working right away, so defer them into a onload event. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-10Fix split packages sitemaprelease_2013-02-16Dan 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-08Ensure 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-08Upgrade D3 to 3.0.6release_2013-02-08Dan McGee6-164/+145
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-08Add a releases model sitemapDan McGee2-0/+18
Signed-off-by: Dan McGee <dan@archlinux.org>
2013-02-08Remove 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-08Minify 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-04Add './' hack to generate_keyring as wellrelease_2013-02-04Dan 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-04Update 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>