aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/util
Commit message (Collapse)AuthorAgeFilesLines
* util:wsgi: handle all dispatch() exceptions in BEExceptionAppW. Trevor King2012-10-281-9/+15
| | | | | | This brings BEExceptionApp into closer agreement with libbe.ui.command_line.dispatch(), and avoids having the server go down when a user submits a silly command.
* util:http: special handling for HTTP_USER_ERROR in get_post_url().W. Trevor King2012-10-281-4/+5
|
* Use libbe.util.http.HTTP_USER_ERROR everywhere instead of hardcoding 418W. Trevor King2012-10-281-3/+3
|
* util:wsgi: catch NoIDMatches in BEExceptionAppW. Trevor King2012-10-281-0/+4
|
* util:wsgi: add --daemon, --pidfile, and --logfileW. Trevor King2012-10-281-25/+151
| | | | | | | | | | | | | | | | | | | | This allows you to manage BE servers from inetd scripts, etc. Shortcomings of the current implementation: * ServerCommand._daemonize() currently only sets a SIGTERM handler and double forks. If you want to do this right, see PEP 3143. Unfortunately, the PEP seems to have stalled, python-daemon appears unmaintained, and I don't care enough at the moment to do this right. * ServerCommand._get_pidfile() races between checking for an existing PID file and claiming the file itself. It is possible that two processes would check around the same time, and both see no existing file. Then they would both open the PID file and write their pid, without noticing that the other process was contending for the file. Solving this requires file locking, which is difficult to do portably. This shouldn't be an issue in normal operation, where each server will be using its own PID file path.
* util:wsgi: fix From -> from typo in pyOpenSSL commentW. Trevor King2012-10-271-1/+1
|
* util:wsgi: fix get_cert_filenames -> _get_cert_filenames typoW. Trevor King2012-10-271-1/+1
| | | | | | | | | | | This was broken in the creation of libbe.util.wsgi from libbe.command.serve: commit 0fa17f6bf6a809df14ae1930542059a9e62066b0 Author: W. Trevor King <wking@tremily.us> Date: Mon Aug 27 13:37:58 2012 -0400 libbe:util:wsgi: extract WSGI utilities into a separate module.
* util:wsgi: import os.path for _get_cert_filenames()W. Trevor King2012-10-271-0/+1
| | | | | | | | | | | This was lost in the creation of libbe.util.wsgi from libbe.command.serve: commit 0fa17f6bf6a809df14ae1930542059a9e62066b0 Author: W. Trevor King <wking@tremily.us> Date: Mon Aug 27 13:37:58 2012 -0400 libbe:util:wsgi: extract WSGI utilities into a separate module.
* util:wsgi: fix Clossing -> Closing typo.W. Trevor King2012-10-271-1/+1
|
* util:wsgi: remove %default from option help stringsW. Trevor King2012-10-271-2/+2
|
* doc: update :attr: to :py:attr: for modern Sphinx.W. Trevor King2012-10-261-1/+1
|
* doc: update :data: to :py:data: for modern Sphinx.W. Trevor King2012-10-261-3/+3
|
* doc: update :meth: to :py:meth: for modern Sphinx.W. Trevor King2012-10-263-9/+9
|
* doc: update :class: to :py:class: for modern Sphinx.W. Trevor King2012-10-263-10/+10
|
* doc: update :func: to :py:func: for modern Sphinx.W. Trevor King2012-10-261-5/+5
|
* Ran update-copyright.py.W. Trevor King2012-10-169-9/+42
|
* util:wsgi: WSGITestCase should not subclass WSGICaller.W. Trevor King2012-09-031-10/+18
| | | | | | | | The old implementation caused a number of unittest errors. This commit adds a WSGICaller instance as WSGITestCase.caller, and provides a wrapper .getURL method which copies the status/headers/etc. from the caller back into the WSGITestCase.
* util:wsgi: Pull WSGICaller out of WSGITestCase.W. Trevor King2012-09-031-49/+56
|
* util:wsgi: add HandlerErrorApp to return HTTP errors.W. Trevor King2012-09-031-0/+13
|
* util:wsgi: fix WSGI_AppObject.default_callback -> .default_handler typo.W. Trevor King2012-09-031-1/+1
|
* command:serve-storage: rename `be serve` -> `be serve-storage`.W. Trevor King2012-08-291-1/+2
| | | | | | | | | | This will help avoid confusion between be serve-storage and be serve-commands
* Rewrite commands to use bugdirs instead of a single bugdir.W. Trevor King2012-08-291-13/+19
| | | | | | | The bulk of the work is in regard to XML, with new BugDir.xml and .from_xml methods to support the new <bugdir> entity. I also split the guts import_xml's ._run method into sub-methods to make the import logic more obvious.
* util:wsgi: add BEExceptionApp for translating storage exceptions.W. Trevor King2012-08-291-0/+22
| | | | | | This fixes .test_get_initial_value for the HTTP backend, because the tests use TestingHTTP.getURL, which only catch HandlerError, not the more specific storage exceptions.
* util:plugin: modnames() should only list *.py or *.pyc files.W. Trevor King2012-08-271-1/+3
| | | | | By appending '.py' to *everything*, it was listing '__pycache__' for Python 3.
* libbe:util:wsgi: extract WSGI utilities into a separate module.W. Trevor King2012-08-271-0/+962
|
* util:http: add ability to pass raw POST data with get_post_url.W. Trevor King2012-08-241-10/+17
|
* util:http: convert urllib2.URLError into HTTPError in get_post_url.W. Trevor King2012-08-241-5/+11
| | | | | Also rework liburl2.HTTPError handling to get both the reason and the error code into the HTTPError message.
* util:http: pull HTTP helpers from libbe.storage.http into their own module.W. Trevor King2012-08-241-0/+116
| | | | This way they can be shared with the upcoming Command._run_remote.
* libbe:util:plugin: cleanup recent zip/egg handling code.W. Trevor King2012-08-231-33/+16
| | | | | | | To test this, you'll need to build an egg. You can use setuptools to do this, by applying: <snip-patch>
* Cherrypick improved zipfile support from Niall Douglas.Niall Douglas (a [underscors] sourceforge {at} nedprod [dot] com)2012-08-231-9/+15
| | | | | | | | | | | WTK: This is the meat of Niall's commit 4632cb6d22faa7220540f92af67693084f80f033 Author: Niall Douglas ... Date: Wed Feb 22 17:46:06 2012 +0000 Fixed small bug where running from inside zip support was over preferring .pyc files
* Cherrypick initial zipfile support from Niall Douglas.Niall Douglas (a [underscors] sourceforge {at} nedprod [dot] com)2012-08-231-2/+27
| | | | | | | | | | | WTK: This is a portion of Niall's commit 7f7a7738bcbcfd06a026f2985c1823a4ba5eb55b Author: Niall Douglas ... Date: Tue Feb 21 20:35:28 2012 +0000 Several hacks to make BE compatible with bbfreeze and therefore compilable into a self contained directory
* Make ID expansion less strict for comment text.W. Trevor King2012-03-031-3/+11
| | | | | This avoids errors if the comment text references a repository that you don't have locally.
* Added BE_INPUT_ENCODING and BE_OUTPUT_ENCODING to allow charset for stdin ↵Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)2012-02-251-0/+8
| | | | and stdout to be overridden. This is necessary on Windows as there is no way for external programs to set stdin or stdout charsets :(
* Remove util.subproc.Pipe, as we no longer use it in BE.W. Trevor King2012-02-251-139/+0
| | | | | | | | | | This was at one point used by `update_copyright.py`. Now that that is an external package (and doesn't use `Pipe` anymore either), we can safely remove this code. As a side benifit, the Pipe doctests will no longer be there to fail on OS X and other systems sufficiently different from my development box.
* Add update-copyright as a submodule and update release.py accordingly.W. Trevor King2012-02-161-3/+3
| | | | Also add `**kwargs` to `invoke` so we can specify the environment.
* Ran update-copyright.py.W. Trevor King2012-02-167-70/+70
|
* Fix my busted 1512c0e2a64e patch to libbe/util/encoding.py.W. Trevor King2011-11-131-3/+3
| | | | | | | | | | | | | | Some temporary changes to encoding.py seem to have been added to commit 1512c0e2a64e19c8d4e5697257a4df5ddd8bc727 Author: W. Trevor King <wking@drexel.edu> Date: Tue Nov 8 07:14:43 2011 -0500 by accident. The initial change came from discussions with Niall Douglas, during which I realized that "filesystem encoding" ususally means the encoding for the *path*, not the *contents*. To avoid further confusion I'd renamed `get_filesystem_encoding` to the less ambiguous `get_text_file_encoding`. This commit should complete the transition.
* Correct doc/install.txt to refer to INSTALL_OPTIONS instead of PREFIX.W. Trevor King2011-11-081-6/+2
| | | | | | | This catches the docs up with the changes made in: commit a7ad89a6ad7da55089e6f9a4cdd645b7079ee04e Author: W. Trevor King <wking@drexel.edu> Date: Sat Apr 16 21:26:02 2011 -0400
* Add the BE_ENCODING environmental variable to override the default encoding.W. Trevor King2011-09-081-1/+3
|
* Adjust encoding detection (using sys.getfilesystemencoding for file contents).W. Trevor King2011-09-081-5/+8
|
* Run update_copyright.py.W. Trevor King2011-05-257-5/+12
|
* Update libbe.util.id other_uuids documentation (may contain uuid).W. Trevor King2011-05-121-4/+4
|
* Add --notify to `be serve`.W. Trevor King2011-04-161-6/+19
|
* Import ElementTree in libbe.util.utility for InvalidXML.W. Trevor King2011-04-161-0/+4
|
* Cleanup libbe.util.subproc.Pipe docstring.W. Trevor King2011-04-151-8/+8
|
* get_output_encoding falls back to get_encoding if sys.__stdout__ is redirected.W. Trevor King2011-04-141-1/+1
|
* Fix command-line encoding processing.W. Trevor King2011-04-081-1/+4
| | | | | | | | | | | | | | | | | | | | | | | String command-line options are converted to unicode using the input encoding. We use the fact that Python sets up the original sys.stdout to determine the terminal encoding. This should fix Anders Sneckenborg's issues with Swedish characters: C:\temp\slask4>be new "Svenska tecken åäö" Created bug with ID 6be/5c3 C:\temp\slask4> C:\temp\slask4> C:\temp\slask4>be list ERROR: 'ascii' codec can't decode byte 0xe5 in position 15: ordinal not in range(128) You should set a locale that supports unicode, e.g. export LANG=en_US.utf8 See http://docs.python.org/library/locale.html for details
* Bumped to version 1.0.01.0.0Chris Ball2011-01-087-7/+7
|
* Ran update_copyright.py.W. Trevor King2010-10-211-1/+1
|
* Ran update_copyright.pyW. Trevor King2010-06-227-79/+86
|