Age | Commit message (Collapse) | Author |
|
More Jinja2 conversion fallout, whoops.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is another one we spend a lot of time rendering, and packges like
sage-mathematics with 80,000+ files can really make the Django template
engine grind.
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>
|
|
There have been a few proposed solutions to this, but there really isn't
anything without a drawback. Things break pagination, require loading
the entire result set from the database, etc.
Just plop a new table on the page if someone did a so-called "simple"
search and we have a match. Only show on the first page of the search
results. This results in a relatively fast experience for someone doing
something like searching for the "perl" package.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We wrap the whole thing in a Django template so we don't have to convert
our base template to Jinja2 (or have one for each templating engine).
This also simplifies the static stuff so we can just keep using the
Django tags.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a start at improving performance of rendering the package
details page, our most-visited and slowest page on the production
website. The Django template system is not very efficient due to our
heavy use of broken out templates and pulling of various attributes and
such on related packages.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
* Don't allow sorting of packages columns, doesn't make much sense
* Default to sorting by pkgbase on all tables
* Ensure all JS is executed inside doc.ready function (wow, how has this
been wrong for so long?)
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
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>
|
|
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>
|
|
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>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
PendingDeprecationWarning: 'The `cycle` template tag is changing to
escape its arguments; the non-autoescaping version is deprecated. Load
it from the `future` tag library to start using the new behavior.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
And respect it elsewhere when we create a fake default specification
because a real one does not exist yet.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We had a weird conditional around everything on the page that doesn't
really need to be there. Remove it.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
I added this a while back, but didn't roll it out to all templates.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This tag is simply not worth the time it takes to do what it does.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This was a bit of premature optimization, and ends up slowing the page
generation a good amount since we have to run this ~400 times on some
packages with long depends or required by lists. Webserver compression
should handle this just fine and not result in too much page bloat.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Conflicts:
requirements.txt
requirements_prod.txt
|
|
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>
|
|
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>
|
|
|
|
This is now the default in Django 1.5.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
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>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
If one of them breaks, we don't want to prevent the rest of the on-load
events from firing. This is currently a problem on some browsers with
the versions of jQuery and tablesorter we are using.
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>
|
|
Just like we did with the rows of depends and required by, collapse down
conflicts, provides, etc. comma-separated lists if they grow too large.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Now that we do updates on the fly and not just once an hour, we can
afford to show a bit more granularity here.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This might help out search engines show more helpful blurbs for our
package details pages. Tested using the Google Rich Snippets Testing
Tool at http://www.google.com/webmasters/tools/richsnippets.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is a place where calling vercmp could come in really handy.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Use the spaceless tag and structure the {% if %} blocks smartly so
spaceless actually works and we aren't outputting one blank line per if
statement.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Very little dealt directly with this field.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For example, bitcoin-git in the Arch repos is currently marked replaced
by both bitcoin-qt and bitcoin-daemon. This allows us to show a page
with both options listed instead of a blank 404 page.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This matches the filtering options we have on the signoffs and package
differences 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 allows us to do better than a generic 404 handler when we know a
package previously existed in a given repository, and should also make
things a bit nicer when getting sent in from a search engine to a page
that no longer exists.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
And use it everywhere we were including the file before. This should
make updating the version a heck of a lot easier.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For now, this happens when the lists are over 20 items. Using JS, hide
the 21st and following packages listed in the list and replace them with
a 'Show More...' link that users can click to get the full list.
For a package such as glibc with 444 'Required By' entries, this can
make quite a visual difference.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
From FS#29922, indicate what happens if the package is unmaintained.
Signed-off-by: Dan McGee <dan@archlinux.org>
|