Age | Commit message (Collapse) | Author |
|
We were silently eating errors and just showing a normal package list if
the form didn't validate. Rather than do that, make sure we return no
packages at all and display the form errors back to the user in a sane
fashion. Adjust the validation methods on the 'limit' parameter so any
integer is acceptable.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
When implementing search for multiple architectures or repositories, I
didn't update this method to accomidate the new query parameters. Clean
it up a bit by not appending/stripping the leading '?' anywhere but in
the template itself, and ensure we can handle multiple of any parameter
passed in. Fixes FS#23180.
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>
|
|
Add a column of checkboxes to each table, enclose the whole thing in a
form, and add a super-simple delete view that takes a list of IDs and
removes them from the database. The delete_packagerelation permission is
required to be able to delete relations.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
For now it is read only. Display a few tables of various ways of
detecting stale package relations. These include inactive users, pkgbase
values that no longer exist, and users that are listed as maintainers
that don't have the proper permissions for that package anymore.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Main change is just to move groups from the default packagegroup_set
location to a related_name of groups. Also refer to the Package class
directly rather than by text string if we have it available.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This allows the exact opposite of the 'flag' option as presented to the end
user, especially helpful for split packages. The original single unflag
package option is also still available. Implements FS#22520.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is easy enough to refactor and support with our current infrastructure
and group-fetching functions.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This makes the signoffs page a heck of a lot more usable as you can go
through and click a bunch at once without waiting for the rather slow
page to reload. Hopefully the first step to bringing life back into this
part of the site.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Don't check the valid repos when disowning; this should address the biggest
part of FS#20687 where a package going from [community] to [extra] can't
lose it's old maintainer due to permission issues.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This exposes something we added a while back, and has been shown elsewhere,
but will now be available for everyone to see. Also change the default
search order to just be by pkgname; we don't need to do a multi-column
search by default.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We had this set up as a unique ForeignKey before, which adds some
indirection due to the RelatedManager object being there. By making it a
OneToOneField, we can get the profile object directly, enforce uniqueness,
and also use it in select_related() calls to make our profiles page a bit
more efficient.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
With package pooling we don't put things in the '/any/' folder anymore under
each repository; they only show up in the actual architectures. Use a 'real'
architecture as part of the download link to rectify this. Fixes FS#20779.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
South actually makes this relatively painless if you get everything right,
so might as well start getting these out of the legacy main application to
eventually eliminate models being separate from their views.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Rather than the need to include RequestContext() calls directly, we can
just use direct_to_template to do all the work for us.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We had a bunch of extra imports, non-conventional variable names, spacing
issues, etc. that were relatively low-hanging fruit to clean up. Fix them
and make the code a bit cleaner in the process.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We now have a few of them, so move them to their own file like we do in the
other applications.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Make it more visible to the public, and cache the results of the group
information function since it was designed and made separate for that
purpose and the results can safely be reused without needing to worry too
much about it being stale.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Just another annotation to the queryset to get this data, and a little more
manipulation in the group data function. This will help when adding a
sitemap in a subsequent commit.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This makes the support asked for in FS#19801 a lot more useful since we
actually have an overview page for the entire group.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Implements FS#20416. Port over the architecture differences view from
archlinux.de and reimplement in Django with our DB schema. Also use a far
simpler SQL query to do the dirty work rather than the triple UNION
operation. This is accomplished by doing a bit more of the fetching work in
code once we know what packages are actually involved.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Instead of just showing usernames. It is especially helpful since we have
many similarly named developers at this point. In addition, only show active
developers/TUs and remove the rest from the list.
Also remove some cargo-cult code that set widget.choices; this is not
necesary as the widget automatically grabs the choices from the field.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
It sounded like the date had to match exactly which wasn't true, so clarify
the label on the form field.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Now that we cache everything, we need to ensure anyone doing edits and
such gets the live data and not some cached version that was already
updated and is now stale. Add the never_cache decorator to any of the
CUD screens as well as a few others that might benefit from always being
regenerated.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is also another step in making sure we don't unnecessarily access the
Django session object and thus add a Vary cache control header we don't
want.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Instead of putting 'www.archlinux.org' all over the place, use the Django
sites framework to pull the site name out of the database. Now these
amazing things will work if you are running locally and decide to change the
site!
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
After adding filename to the database, this is a rather simple request (see
FS#19546). Right now the "randomly" chosen mirror happens to always be
mirrors.kernel.org as it is the only one filed under the 'Any' country which
is what we screen on. Perhaps this logic could be improved in the future but
I don't see these links being all that high traffic anyway.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We were still using the user-facing package IDs here which we have
eliminated everywhere else Change it to use the same user-friendly URL
pattern we are using elsewhere.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Attempt to mark all packages built from the same PKGBUILD out of date at the
same time by using pkgbase instead of pkgname. Ensure testing and
non-testing repos are segregated as well.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This allows some of our queries to get a lot simpler as well as removing the
pkgbase_safe property added earlier.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This is an attempt to fix our long-standing problems dealing with maintainer
information. Move the actual maintainer information off of the package model
into a PackageRelation object, which has some flexibility to later represent
more than just maintainership.
This solves multiple problems:
* If a package gets accidentally deleted, so did the maintainer info
* Testing packages have always shown up as orphans
* With split packages, it was easy to miss some of the sub-packages
This commit does not include the deletion of the original maintainer column;
that will come at a later time when I feel more confident that the data was
migrated correctly.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Get rid of the copy/paste by including the sub-template.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Since the same URLs serve two different responses based on the request being
AJAX or not, we want to ensure we don't cache the wrong one and serve it up
incorrectly.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
This will put the filelist inline on the package details page if using a
capable browser. It should still fallback to a separate page if necessary
(e.g. all those users using links on the site).
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Move it away from the numeric pkgid-based view of old to the new pretty URL
format. This does nothing to actually make the view show files (or even
provide a link to it), but that will come in future commits.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Use update() instead of for x in y: save().
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We can pull the common queryset out into a local variable, as well as using
the mass-update function provided on a queryset instead of resorting to
iteration.
Signed-off-by: Dan McGee <dan@archlinux.org>
|