summaryrefslogtreecommitdiff
path: root/packages/models.py
AgeCommit message (Collapse)Author
2012-07-24Add index on package updates pkgname fieldDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-23Add '410 Gone' support for packages moved out of repositoriesDan McGee
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>
2012-07-08Don't log package updates in Python when we have DB trigger supportDan McGee
This adds a helper method to find the database engine in use, and then skips code we shouldn't execute if we are doing this another way. Note that this helper method could be useful for backend-specific code paths elsewhere, such as custom SQL being called or lack of StdDev() in sqlite3 out of the box. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-01Add indexes on 'created' field to several package-related modelsDan McGee
These models regularly sort by or limit by the created field, so adding a index on the created database column makes sense. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-01Log package updates during reporead invocationDan McGee
This adds a Manager and log_update method to help log all updates made to the packages table during reporead runs. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-01Add new package Update modelDan McGee
This will be used to track updates to package as we do them during reporead. By storing enough relevant fields from the package object, we should be able to produce a useful report on a regular basis of what has been happening in the repositories. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-01Remove no-longer necessary delayed imports of PackageDan McGee
Since commit 158be107e4ad6, we have been importing the Package model at the top-level in this file, so we can kill this code that was never updated. This should also give us back any performance hit we were seeing from the delayed imports. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-05-18Drop old PackageDepend modelDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-05-18Switch to usage of new Depend objectDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-05-18Add new depends modelDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-05-18Add a get_best_satisfier method to RelatedToBaseDan McGee
This is basically what we do in PackageDepend already. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-05-18Refactor an abstract base class out of conflicts/provides/replacesDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-04-27Use GenericIPAddressField in flag request ip_addressDan McGee
New (and slightly odd with regards to verbose_name) in Django 1.4. This simply ensures a deployment in an IPv6 environment actually works as expected. If you were using PostgreSQL as a database backend, you won't be affected by this as the 'inet' type was already used, but at least now you can edit the values in the admin without getting an error. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-02-07FlagRequest model behavior tweaksDan McGee
* Add a default field to be used for latest() calls. * Remove signal-based set of created date; instead, set it explicitly so all of our packages and flag request have the exact same date and time attached. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-01-10Add old version string to saved flag requestsrelease_2012-01-11Dan McGee
This makes it easier to match up a flag request with the package state at the time of flagging, and might also help to determine if flagging actions were legit. We only store it if it is the same across all packages to be marked. Also, move the various database write activities when flagging packages into a single transaction. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-12-11PyLint suggested cleanupsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-12-08Add a new FlagRequest modelDan McGee
This will be used to store all of the submitted data we get via flag out of date forms on the website. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-12-08Remove auto-deletion of package relations on inactive usersDan McGee
We have a page where these can all be managed now, so best leave it alone in case someone accidentally marks a user inactive and all the data is lost. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-14Allow population of signoff specs with SVN commit messagesDan McGee
This pulls them from the latest SVN commit on trunk. We don't have a failproof method of getting the exact right commit, but this should be close if it is run on a regular basis via cron (aka hourly). Note that running locally, I needed the development version of South to get the migration included here to apply because of information_schema changes in the current version of MySQL. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-03Signoffs changes and improvementsDan McGee
* Better signoff report with more detail * Show signoff specification in signoffs view * Honor disabled/bad flags and display in approval column * Various other small bugfixes and tweaks Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-03Add signoff options form and data entry pageDan McGee
This allows the criteria and other information about certain signoffs to be overridden as necessary. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-03Refactor more package signoff stuffDan McGee
This sets up some shared utility code for use in a later package signoff email report command. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-03Many signoff page improvementsDan McGee
Add a new 'SignoffSpecification' model which will capture metadata regarding a specific package if it differs from the norm- e.g. more or less than 2 required signoffs, is known to be bad, a comment from the maintainer, etc. The groundwork is laid here; much of this will still need to be wired up in the future. Enhance the view with a lot more JS prettiness and add revoking of signoffs. The signoff page can be filtered and the links and all the fun stuff are totally dynamic now. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-10-11Pylint suggested and other cleanupsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-07-29Add index to package groups name fieldDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-07-06Refactor code to use new signoff modelDan McGee
This moves signoff creation and display to the new packages.Signoff model. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-07-06Add new packages signoff modelDan McGee
This one is centered around pkgbase, much as our PackageRelation object is. However, it also tracks all of the versioning fields we have in order to making joining against the current package testing list possible. Finally, additional metadata including a created date, an (optional) revoke date, and a comments field are added. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-07-06Move package signoff URL to more logical locationDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-07-05Move set_created_field() to shared utils classDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-05-03Add a created date to package relationsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-23Fix package group unicode methodDan McGee
2011-03-23Add new package parts modelsDan McGee
This allows us to store conflicts, provisions (provides), and replacements in the database, things we weren't capturing before. All can be multivalued, just like License and PackageGroup. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-23Add stale package relations status screenDan McGee
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>
2011-02-19Remove maintainer relations if user marked inactiveDan McGee
These users are being marked inactive because they are no longer developers; thus they should have all of their maintainer relations removed from the database. This is one of two causes of "orphan" package relation objects, the other being pkgbase values that go out of existence. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-18Add unicode methods for packages modelsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-15Move license to a related modelDan McGee
This allows us to store multiple licenses per package in a more elegant fashion, and will later allow us to search and filter on this information. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-15Clean up Package related objects codeDan McGee
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>
2010-07-25Add package groups model and display to packagesDan McGee
They show up but aren't hotlinked to anything...just yet. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-03-27Move package maintainer off of package modelDan McGee
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>
2008-03-08Moved models aroundeliott
2007-12-29Massive retab fest.eliott
Also added vim command comment to the end of files.
2007-11-17Fix for FS#8547eliott
2007-11-03Initial import for public release...eliott
Special Note Prior to git import, approx 90% of the code was done by Judd Vinet. Thanks Judd!