summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-11Add a field for package base popularityLukas Fleischer
Create a new field Popularity in the PackageBases table. The field is updated by the popupdate script and reflects the popularity of a package. Popularity is the sum of all votes with each vote being weighted with a factor of 0.98 per day since its creation. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Add popupdate scriptLukas Fleischer
This adds a simple script that can be used to recalculate the number of votes per package. It can be used in a cronjob. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11git-update: Allow non-fast-forwards for TUsLukas Fleischer
Although we theoretically never want to lose history, there may be rare occasions when a forced push is required (e.g. if illegal data is pushed). Allow Trusted Users and Developers to perform non-fast-forward pushes. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11git-update: Deny non-fast-forwardsLukas Fleischer
To make sure we never lose any history, non-fast-forwards are forbidden. Instead of relying on receive.denyNonFastForwards, add a simple check to the update hook. This has the added benefit of more flexibility. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Update message catalogLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Support exceptions in the maintenance modeLukas Fleischer
Allow for excluding certain IP addresses from the maintenance mode. This allows administrators to view the web page while the site is still under maintenance for the rest of the world. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Implement a maintenance modeLukas Fleischer
Add support for a maintenance mode that disables both the website and the SSH interface and can be enabled easily using a configuration option. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Do not use symrefs for manually created Git refsLukas Fleischer
When creating the refs for the package base branch and the HEAD ref workaround, directly use commit IDs instead of symrefs. It looks like Git cannot pack symrefs, so this is expected to improve space efficiency. Also, since the refs are now only created (or updated) when new objects are actually received, this fixes a problem with dangling refs that were created when a user initialized a repository but did not push anything. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Reintroduce the URLPath fieldLukas Fleischer
In commit 74edb6f (Use Git repositories to store packages, 2014-06-06), the URLPath field was dropped from RPC package results. Reintroduce the field for backwards compatibility, even though it is no longer recommended to use snapshot tarballs. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-11Make URIs to the individual cgit pages configurableLukas Fleischer
Make the locations of the PKGBUILD preview, the log and the snapshot tarball configurable. This increases flexibility and simplifies the code a bit. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-10pkgbase.php: Escape error messagesLukas Fleischer
Fixes FS#45284. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Release 4.0.0-rc3v4.0.0-rc3Lukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Encode cgit URIs properlyLukas Fleischer
Fixes FS#45276 and FS#45277. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09INSTALL: Add note on disabling non-fast-forwardsLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09pkgbase_details.php: Fix cgit linksLukas Fleischer
We forgot to amend those when switching to gitnamespaces-based storage in b44411f (Use gitnamespaces for efficient storage, 2015-06-01). Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Invert order when sorting packages by ageLukas Fleischer
Fixes FS#44195. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Add a confirmation check box below search resultsLukas Fleischer
Always show the confirmation check box next to the package actions drop-down on the package search results page. This allows regular users to confirm disown commands. Fixes FS#45264. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Drop suffixes from confirm parametersLukas Fleischer
Remove the _delete and _disown suffixes from HTTP POST confirmation parameters. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Add Spanish (Latin America) and Asturian translationsLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09Fix official language name of CzechLukas Fleischer
Reported-by: Pablo Lezaeta Reyes <prflr88@gmail.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-09aurjson.class.php: Exclude hidden package basesLukas Fleischer
Do not return packages belonging to hidden package bases in RPC results. Fixes FS#45271. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Release 4.0.0-rc2v4.0.0-rc2Lukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08git-update: Avoid duplicate notificationsLukas Fleischer
Fixes FS#45254. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Fix searching for an empty stringLukas Fleischer
Return all packages when an empty search term is used with keyword search. Reported-by: G. Schlisio <g.schlisio@dukun.de> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08pkg_details: Use correct clone URLJohannes Löthberg
The clone URLs should use the pkgbase name, not the pkgname itself Reported-by: Jonathan Steel <jsteel@archlinux.org> Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08git-update: Drop writing git description fileJohannes Löthberg
All PKGBUILDs are stored in a single repository now, so there is no use for writing out a description file for the repo anymore. This fixes a bug where pkgdescs containing UTF-8 characters are rejected due to it trying to write the file out using ASCII. Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Fix package statisticsLukas Fleischer
Exclude hidden package bases from the package statistics. Reported-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Show official language names in the drop-down listLukas Fleischer
We already store the native language names. Display them in the drop-down list instead of using language codes. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Add Chinese (Taiwan) translationsLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08git-update: Improve error message for non-blob objectsLukas Fleischer
When a repository contains a directory, a user is currently faced with the following error message: remote: Traceback (most recent call last): remote: File "hooks/update", line 194, in <module> remote: if repo[treeobj.id].size > 250000: remote: AttributeError: '_pygit2.Tree' object has no attribute 'size' remote: error: hook declined to update refs/heads/master Explicitly check for directories and other non-blob objects and display a more intuitive message. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Use extract_arch_fields when checking for source filesJohannes Löthberg
This fixes a bug where pushes are rejected in split PKGBUILDs if there are no arch-independent source array. Fixes FS#45253 Reported-by: Marti <marti@juffo.org> Reported-by: Maxime Gauduin <alucryd@archlinux.org> Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08git-update: Increase maximum blob size to 250kBLukas Fleischer
Large blobs are needed in some packages, such as customized Linux kernels including kernel configurations. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08git-serve: Use `pkgbase` for errors about invalid namesWieland Hoffmann
`repo` is not defined at the point it's used, so you would get errors like > Traceback (most recent call last): > File "/srv/http/vhosts/aur-dev.archlinux.org/public/git-interface/git-serve.py", line 138, in <module> > die('%s: invalid repository name: %s' % (action, repo)) > NameError: name 'repo' is not defined Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Release 4.0.0-rc1v4.0.0-rc1Lukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Translation updates from TransifexLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04Update message catalogLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04cgitrc.proto: Fix clone prefixLukas Fleischer
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04git-update: Prevent from overwriting packagesLukas Fleischer
Make sure we do not overwrite a package belonging to another package base. We forgot to add this check to git-update when porting the package submission script to Python in commit 74edb6f (Use Git repositories to store packages, 2014-06-06). Reported-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04git-update: Only check HEAD for blacklisted packagesLukas Fleischer
When a part of a package base is moved to the official repositories, it needs to be dropped from the AUR package. However, we want to allow that the moved packages still appear in the history. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04aurblup: Fix path to configuration fileLukas Fleischer
Fixes a regression introduced in commit 10ecd39 (Restructure scripts, 2015-06-01). Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04git-update: Only check HEAD for matching pkgbaseLukas Fleischer
When renaming a package base, we want to keep commits of the former package. Move the check that compares the package base name with the repository name such that only HEAD is validated. Fixes FS#45065. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04pkgfuncs.inc.php: Remove a conflict markerLukas Fleischer
Remove a Git conflict marker that was added accidentally in 74edb6f (Use Git repositories to store packages, 2014-06-06). Reported-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-02config.proto: CleanupLukas Fleischer
Remove the template-path and git-update-hook options which are no longer used. Update the git_clone_uri_anon default value. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-02Setup Git repositories even if package base existsLukas Fleischer
Sometimes, we need to initialize the Git repository even if the package base already exists (e.g. when using a non-empty package database with empty repositories during the AUR 4.0.0 migration period). Make sure that the package branch and the namespaced HEAD ref is always created. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-02Add a Makefile for the git-auth wrapperLukas Fleischer
Avoid manual editing of the wrapper script when a non-standard path is used. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-02Restructure scriptsLukas Fleischer
* Move scripts/git-integration/ to git-interface/. * Move scripts/aurblup/aurblup.py to scripts/aurblup.py. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-01git-update: Check for missing install and source filesLukas Fleischer
Suggested-by: Marcel Korpel <marcel.korpel@gmail.com> Suggested-by: carstene1ns <arch@carsten-teibes.de> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-01Use gitnamespaces for efficient storageLukas Fleischer
Instead of using one Git repository per package, use a single large object storage for space efficiency. The refs of the individual package bases are divided using gitnamespaces(7) which allows for exposing each namespace as an independent repository easily. Also, git-serve is modified to create a branch for each package, allowing to browse the large repository with cgit. Helped-by: Florian Pritz <bluewind@xinu.at> Helped-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Do not show the activity check box when registeringLukas Fleischer
Creating an inactive account does not make sense. Hide the activity check box from the registration page. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Show the SSH key field on the registration pageLukas Fleischer
Now that we have a short explanation on how we use the SSH public key, we can show that field on the registration page. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>