summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* docs: Fix link creation exampleDirk Wallenstein2011-02-111-1/+1
| | | | | Signed-off-by: Dirk Wallenstein <halsmit@t-online.de> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tests/parser: Add subject encoding testsJeremy Kerr2011-02-112-0/+29
| | | | | | | We should now be able to decode internationalised Subject headers, so add tests for this. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* parser: Decode the subject headerDirk Wallenstein2011-02-111-0/+2
| | | | | | | | The clean_header function decodes internationalized headers. Use it for the subject, too. Signed-off-by: Dirk Wallenstein <halsmit@t-online.de> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Revert "Decode patch from UTF-8 while parsing from stdin"Jeremy Kerr2011-02-101-1/+2
| | | | | | | | | This reverts commit 7fd7d0bbe4e3fce405e02e9e630ef70023fdd43e. parse_patch() will never be handed anything but unicode, so no need to do the decode. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Decode patch from UTF-8 while parsing from stdinmartin f. krafft2010-12-131-2/+1
| | | | | | | | | | | | | | Patchwork (rightfully) hashes patches using UTF-8: parser.py: def hash_patch(str): […] hash.update(line.encode('utf-8') + '\n') This patch makes sure that it treats the incoming data as UTF-8 as well. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* pwclient: fix handling of UTF-8 char in submitter nameAndreas Bießmann2010-12-101-1/+2
| | | | | | | | | | | | | | | | | | | | This patch fixes following bug in 'list': ---8<--- # pwclient list -p uboot -w andreas.devel | grep New Traceback (most recent call last): File "/Users/andreas/bin/pwclient", line 463, in <module> main() File "/Users/andreas/bin/pwclient", line 411, in main action_list(rpc, filt, submitter_str, delegate_str) File "/Users/andreas/bin/pwclient", line 182, in action_list (person['name'], person['email']) UnicodeEncodeError: 'ascii' codec can't encode character u'\xdf' in position 32: ordinal not in range(128) --->8--- Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* templates: use custom templates for password changeJeremy Kerr2010-12-103-1/+59
| | | | | | | Add a couple of templates to keep the password change flow in the same look & feel as the rest of the site. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Add link to password change form on user profile pageSascha Silbe2010-12-101-0/+5
| | | | | Signed-off-by: Sascha Silbe <sascha-pgp@silbe.org> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* models: Fix HeaderParser import on python 2.4Jeremy Kerr2010-11-091-0/+1
| | | | | | | We need to add an import for HeaderParser on python 2.4; email.Parser appears to contain the right stuff. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Add support for git-pull requestsJeremy Kerr2010-11-018-9/+415
| | | | | | | | | Add a a pull_url to the Patch object, and update the parser to look for git-pull style emails. Requires SQL migration script. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* parsemail: change tab to spaceJeremy Kerr2010-11-011-1/+1
| | | | | | minor whitespace fix. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* parser: Recognize X-list list headerRalf Baechle2010-09-231-1/+1
| | | | | | Ecartis inserts X-list list headers. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tests/updates: Add delegate clear testJeremy Kerr2010-09-031-5/+15
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* forms: change MultiplePatchForm from a ModelForm to a FormJeremy Kerr2010-09-032-22/+28
| | | | | | | | | | | | | ModelForm was causing validation issues, especially with no-change fields on required model fields. Add a test for updating a required field (state) through MultiplePatchForm. Change it to a normal form, and call instance.setattr manually. This makes the new test pass. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tests/updates: Add multiple invalid state change testJeremy Kerr2010-09-031-5/+18
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* views/patch: remove unused codeJeremy Kerr2010-09-021-52/+0
| | | | | | | The number of times I've edited this code and wondered why nothing changes... Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* forms.MultiplePatchForm: remove no-change fields on clean()Jeremy Kerr2010-09-021-0/+15
| | | | | | | | | We need to remove no-change fields, as newer versions of django are checking for proper types on validation. Fixes MultipleUpdateTest. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tests: Add multiple patch update testJeremy Kerr2010-09-023-2/+74
| | | | | | | Add a test for updating mulitple patches. Currently fails with django 1.1. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* views/user: don't refer to request.POST for non-POST requestsJeremy Kerr2010-08-111-1/+2
| | | | | | | We're ending up wth form errors due to using request.POST, which is empty. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* css: specify a sans-serif fontJeremy Kerr2010-08-101-0/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* templates: remove "beta"Jeremy Kerr2010-08-102-8/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* views: implement CSRF protectionJeremy Kerr2010-08-102-0/+3
| | | | | | | | | | | Since we've got the csrf token present, we may as well check it for requests. We're using RequestContext already (via PatchworkRequestContext), so we just need to switch it on in the settings, and add an exemption on the xmlrpc interface. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* templates: Add CSRF (cross-site request forgery) values to form postsJohn 'Warthog9' Hawley2010-08-1010-0/+20
| | | | | | | | This is a fairly simple patch, basically it does what the error message told me to do: "add In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL." Signed-off-by: John 'Warthog9' Hawley <warthog9@kernel.org>
* parser: decode stdin from utf-8Jeremy Kerr2010-08-101-1/+4
| | | | | | | We need to decode stdin from the patch parser as UTF-8, rather than python assuming ascii. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tests/utils: Specify content encoding on MIMEText() constructionJeremy Kerr2010-08-101-6/+5
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tools: add simple patchwork-update-commits scriptJeremy Kerr2010-08-101-0/+16
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* sql: Add uncommitted migration scriptsJeremy Kerr2010-08-102-0/+29
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: fix apache2 referencesJeremy Kerr2010-08-101-3/+3
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Remove broken registration symlinkJeremy Kerr2010-08-101-1/+0
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* lib/apache2: Add WSGI HandlerMartin Krafft2010-08-104-2/+52
| | | | | | | | | | | | | | | | | | | Patchwork/Django can be run directly with WSGI, which is bound to be faster and less complex than FastCGI. This patch provides the necessary Apache configuration and the WSGI handler, as well as an update to the docs. Since python-flup is deprecated and WSGI supersedes FastCGI, it should be(come) the preferred method. Hence I documented it first. For the xmlrpc interface to work with WSGI, the HTTP authorization information needs to be passed to the WSGI handler. This is done by setting WSGIPassAuthorization On in the apache2 config file snippet. Ref: http://www.arnebrodowski.de/blog/508-Django,-mod_wsgi-and-HTTP-Authentication.html Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: Document password-based pgsql loginMartin Krafft2010-08-101-3/+24
| | | | | | | | | As an alternative to ident-based authentication for PostgreSQL, one can use password-based authentication. This patch adds the alternative to the docs. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: reformat INSTALLJeremy Kerr2010-08-101-55/+55
| | | | | | Fix up some tabs. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: elaborate on lib/ dirs in INSTALLJeremy Kerr2010-08-101-0/+3
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: update INSTALL for commonly-available packagesJeremy Kerr2010-08-101-6/+8
| | | | | | | We probably don't need to download django or django-registration anymore. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Registration framework maintained on bitbucketMartin Krafft2010-08-102-6/+4
| | | | | | | | The django-registration framework is now maintained on bitbucket, which requires some changes to the in-tree symlink and the documentation. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tools: Update license for post-receive hook.Jeremy Kerr2010-08-101-2/+1
| | | | | | | Martin has allowed distribution under the GPL. http://lists.ozlabs.org/pipermail/patchwork/2010-June/000263.html Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tools: Add a simple sample Git post-receive hookMartin Krafft2010-08-101-0/+73
| | | | | | | | | | | This patch adds a post-receive hook to lib/git, which can be used to update Patchwork following a push to the Git repository. Surely, it can be improved. One thing to do would be to export the state map to git-config somehow. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* tools: De-hyphenate Git commands in update-patchwork-status.pyMartin Krafft2010-08-101-2/+2
| | | | | | | | Even though update-patchwork-status.py doesn't really do anything yet, it uses the ancient way to call Git commands, so this patch fixes that. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* templates/patch-list: add default text for patches with no nameJeremy Kerr2010-08-101-1/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* views/bundle/public: Lookup on userJeremy Kerr2010-07-191-1/+2
| | | | | | | | | | | Currently, the public bundle view is only looking up bundles by their name. This may return multiple bundles if two users have bundles with the same name. This change adds the user to the bundle lookup. Reported-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Add TODO item: changing primary email addressesJeremy Kerr2010-04-271-0/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* views: Use request scheme in sample pwclientrc file.Jeremy Kerr2010-03-192-1/+5
| | | | | | Adapt the pwclientrc file to suit the current scheme in use. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* pwclient: allow authenticated https connectionsJeremy Kerr2010-03-191-4/+15
| | | | | | | | If the xmlrpc server is using HTTPS, we need to adapt our custom transport to use SafeTransport.make_connection Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Tested-by: Paul Mundt <lethal@linux-sh.org>
* pwclient get: fix for handling messages encoded in UTF-8Paul Menzel2010-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Trying `pwclient get` with a message containing UTF-8 characters you would get the following error. $ python -v pwclient get ID [...] # trying /usr/lib/python2.5/encodings/ascii.so # trying /usr/lib/python2.5/encodings/asciimodule.so # trying /usr/lib/python2.5/encodings/ascii.py # /usr/lib/python2.5/encodings/ascii.pyc matches /usr/lib/python2.5/encodings/ascii.py import encodings.ascii # precompiled from /usr/lib/python2.5/encodings/ascii.pyc Failed to write to subject.patch [...] You can reproduce it with $ pwclient get http://patchwork.openembedded.org/patch/1440/ and the fix is the same as in 4fc6a16910e595401e919abde28cca436193e0dd by Mauro Carvalho Chehab. Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
* pwclient: fallback to patch_get_by_hashJeremy Kerr2009-11-251-1/+7
| | | | | | | | | patch_get_by_project_hash isn't in older xmlrpc interfaces, so fall back to patch_get_by_hash if we see an xmlrpc fault when calling this function. Reported-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* Adjust postgres "grant all" script to new name of bundle tableJunio C Hamano2009-11-231-2/+2
| | | | | | | | | | | | | | Since c105cb0 (Initial bundle reordering support, 2009-01-29), the patchwork_bundle_patches table and its associated id sequence does not exist. The script to grant appropriate privileges was not updated when this change was made, and causes the set-up procedure described in docs/INSTALL to fail. This change adjust the script to grant appropriate access rights to match the change in the DB schema. Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* models: Add Reported-By to parsed comment fieldsJeremy Kerr2009-10-231-1/+3
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* docs: Fix typo in INSTALLJeremy Kerr2009-10-231-1/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* pwclient,xmlrpc: Specify project for patch hash lookupsJeremy Kerr2009-10-222-3/+13
| | | | | | | | | | | | We may see the same hash for two patches if one is sent to two lists tracked by patchwork. This change adds a new xmlrpc method, patch_get_by_project_hash, which adds the linkname parameter to the lookup. We need to add a new method instead of replacing patch_get_by_hash, to avoid breaking existing pwclient apps. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
* pwclient: Add newline to 'no hash' messageJeremy Kerr2009-10-221-1/+1
| | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org>