W. Trevor King [Sat, 17 Nov 2012 13:16:54 +0000 (08:16 -0500)]
Add explicit positional argument specifiers to .format() strings
This fixes issues with Python 2.6 (before the implicit specifiers
introduced by Python 2.7).
On Fri, Nov 16, 2012 at 09:04:56AM -0600, Daniel Heater wrote:
> ...
> Traceback (most recent call last):
> File "setup.py", line 22, in <module>
> version='{}'.format(version.version()),
> ValueError: zero length field name in format
> ...
W. Trevor King [Mon, 12 Nov 2012 18:07:44 +0000 (13:07 -0500)]
release.py: use Python 2.7 for sphinx-build
W. Trevor King [Mon, 12 Nov 2012 17:20:40 +0000 (12:20 -0500)]
doc:Makefile: use Python 2.7 for generate-libbe-txt.py
W. Trevor King [Mon, 12 Nov 2012 17:18:50 +0000 (12:18 -0500)]
storage:base: convert to Python 3.3 compatibility
W. Trevor King [Mon, 12 Nov 2012 17:18:43 +0000 (12:18 -0500)]
storage: convert to Python 3 compatibility
W. Trevor King [Mon, 12 Nov 2012 17:18:32 +0000 (12:18 -0500)]
version: convert to Python 3 compatibility
W. Trevor King [Mon, 12 Nov 2012 17:18:23 +0000 (12:18 -0500)]
test: convert to Python 3 compatibility
W. Trevor King [Mon, 12 Nov 2012 16:54:47 +0000 (11:54 -0500)]
release.py: build HTML docs when cutting releases
W. Trevor King [Mon, 29 Oct 2012 00:20:27 +0000 (20:20 -0400)]
util:wsgi: handle all dispatch() exceptions in BEExceptionApp
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.
W. Trevor King [Mon, 29 Oct 2012 00:08:30 +0000 (20:08 -0400)]
util:http: special handling for HTTP_USER_ERROR in get_post_url().
W. Trevor King [Sun, 28 Oct 2012 23:59:41 +0000 (19:59 -0400)]
Use libbe.util.http.HTTP_USER_ERROR everywhere instead of hardcoding 418
W. Trevor King [Sun, 28 Oct 2012 23:00:32 +0000 (19:00 -0400)]
util:wsgi: catch NoIDMatches in BEExceptionApp
W. Trevor King [Sat, 27 Oct 2012 23:46:41 +0000 (19:46 -0400)]
util:wsgi: add --daemon, --pidfile, and --logfile
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.
W. Trevor King [Sat, 27 Oct 2012 20:16:50 +0000 (16:16 -0400)]
util:wsgi: fix From -> from typo in pyOpenSSL comment
W. Trevor King [Sat, 27 Oct 2012 20:14:45 +0000 (16:14 -0400)]
util:wsgi: fix get_cert_filenames -> _get_cert_filenames typo
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.
W. Trevor King [Sat, 27 Oct 2012 20:11:57 +0000 (16:11 -0400)]
util:wsgi: import os.path for _get_cert_filenames()
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.
W. Trevor King [Sat, 27 Oct 2012 20:01:01 +0000 (16:01 -0400)]
doc:install: CherryPy is *not* used for HTTP, only for HTTPS.
For plain HTTP, we use wsgiref.simple_server from the stdlib.
Also include the `html` command as a WSGI-based command.
W. Trevor King [Sat, 27 Oct 2012 19:41:08 +0000 (15:41 -0400)]
util:wsgi: fix Clossing -> Closing typo.
W. Trevor King [Sat, 27 Oct 2012 19:29:12 +0000 (15:29 -0400)]
util:wsgi: remove %default from option help strings
W. Trevor King [Sat, 27 Oct 2012 19:29:00 +0000 (15:29 -0400)]
command:html: remove %default from option help strings
W. Trevor King [Sat, 27 Oct 2012 16:39:47 +0000 (12:39 -0400)]
README: Update NumPy/SciPy doc link
W. Trevor King [Sat, 27 Oct 2012 16:38:55 +0000 (12:38 -0400)]
README: wrap doc/index.txt reference in backticks
File names, code, etc., should have special markup so they aren't
confused with regular text.
W. Trevor King [Sat, 27 Oct 2012 16:27:16 +0000 (12:27 -0400)]
storage:util:upgrade: use YAML parser to get BE Tree 1 0 settings
This fixes the "Bugs Everywhere Tree 1 0" -> "Bugs Everywhere
Directory v1.1" upgrade broken by the switch to JSON in:
commit
a95915c6c7d6a4e29c1e5547580e0c1fed2467e1
Author: W. Trevor King <wking@tremily.us>
Date: Mon Sep 17 08:14:21 2012 -0400
storage:util:mapfile: convert YAML settings to JSON.
W. Trevor King [Sat, 27 Oct 2012 15:51:05 +0000 (11:51 -0400)]
misc:completion:be.zsh: update import-xml --comment-root -> --root
This catches the script up with:
commit
4db1a045a0606bead191a563abc54dfa8352efe0
Author: W. Trevor King <wking@tremily.us>
Date: Wed Aug 29 23:26:17 2012 -0400
Rewrite commands to use bugdirs instead of a single bugdir.
W. Trevor King [Sat, 27 Oct 2012 15:49:19 +0000 (11:49 -0400)]
test_usage.sh: update import-xml --comment-root -> --root
This catches the tests up with:
commit
4db1a045a0606bead191a563abc54dfa8352efe0
Author: W. Trevor King <wking@tremily.us>
Date: Wed Aug 29 23:26:17 2012 -0400
Rewrite commands to use bugdirs instead of a single bugdir.
W. Trevor King [Sat, 27 Oct 2012 15:38:20 +0000 (11:38 -0400)]
storage:vcs:git: don't accept pygit2 version 0.17.3.
My Repository.revparse_single() series was merged into pygit2 with:
Merge:
3e9daa4 0238fb7
Author: J. David Ibáñez <jdavid.ibp@gmail.com>
Date: Tue Sep 25 15:10:55 2012 +0200
Merge remote-tracking branch 'wking/revparse'
But this happened after the 0.17.3 release. The next pygit2 release
should contain the .revparse_single() code.
The getattr() hackery works because versions of pygit2 before 0.17.3
lacked a __version__ attribute.
W. Trevor King [Sat, 27 Oct 2012 11:47:29 +0000 (07:47 -0400)]
doc:power: add Zsh completion location and update Bash install location
This puts both scripts in the right spot on Gentoo, and shows the
suggested installed filename (not just the suggested directory).
W. Trevor King [Sat, 27 Oct 2012 10:56:52 +0000 (06:56 -0400)]
command:serve_*: remove wordy "with, for example" from help message
W. Trevor King [Sat, 27 Oct 2012 10:55:46 +0000 (06:55 -0400)]
command:serve_commands: fix --repo -> --server in help message
W. Trevor King [Fri, 26 Oct 2012 18:17:21 +0000 (14:17 -0400)]
doc:tutorial: use a Git tag for the `be diff` example
I haven't tagged 1.1.0 yet, but earlier tags do not use Bugs
Everywhere Directory v1.5, and we don't have on-the-fly storage
updates yet.
W. Trevor King [Fri, 26 Oct 2012 17:52:53 +0000 (13:52 -0400)]
doc:tutorial: fix ReST formatting for `be show --xml` example
W. Trevor King [Fri, 26 Oct 2012 17:46:11 +0000 (13:46 -0400)]
doc:tutorial: move "you think" before quote in initialization section
W. Trevor King [Fri, 26 Oct 2012 17:28:56 +0000 (13:28 -0400)]
doc:tutorial: fix ReST formatting for first `be comment` example
W. Trevor King [Fri, 26 Oct 2012 17:26:55 +0000 (13:26 -0400)]
doc:install: mention that we *do* post releases now
W. Trevor King [Fri, 26 Oct 2012 17:26:18 +0000 (13:26 -0400)]
doc:install: mention that PyYAML is now optional
W. Trevor King [Fri, 26 Oct 2012 17:18:21 +0000 (13:18 -0400)]
storage:util:upgrade: make yaml import optional (unless it isn't)
Importing `yaml` may fail (if the user doesn't have PyYAML installed),
but don't die until we need to use it. This way users without the old
YAML formats on disk can run BE without installing PyYAML.
W. Trevor King [Fri, 26 Oct 2012 17:09:21 +0000 (13:09 -0400)]
command: use mapfiles (JSON) instead of YAML for the command server
W. Trevor King [Fri, 26 Oct 2012 17:08:54 +0000 (13:08 -0400)]
storage:util:mapfile: add `context` argument to generate()
W. Trevor King [Fri, 26 Oct 2012 16:52:29 +0000 (12:52 -0400)]
doc/install: fix paragraph indentation in man page installation discussion
W. Trevor King [Fri, 26 Oct 2012 16:50:27 +0000 (12:50 -0400)]
doc/install: point out relevant Debian bugs in a comment
W. Trevor King [Fri, 26 Oct 2012 16:39:32 +0000 (12:39 -0400)]
doc:install: fix dependency table ReST formatting
The header had been broken by
commit
f174d8943c2edea25306ab522c27f69bbebd0be3
Author: W. Trevor King <wking@tremily.us>
Date: Thu May 10 08:56:02 2012 -0400
Update CherryPy dependency package to python-cherrypy3 on Debian.
W. Trevor King [Fri, 26 Oct 2012 16:36:36 +0000 (12:36 -0400)]
doc:index: mention that in-branch-bugs are not the only way
W. Trevor King [Fri, 26 Oct 2012 12:55:42 +0000 (08:55 -0400)]
doc: clean up top level module docstrings
W. Trevor King [Fri, 26 Oct 2012 12:48:30 +0000 (08:48 -0400)]
libbe:bugdir: avoid SimpleBugDir is not a item name
This happens because SimpleBugDir is not defined if libbe.TESTING is
not set before importing libbe.bugdir.
W. Trevor King [Fri, 26 Oct 2012 12:43:04 +0000 (08:43 -0400)]
doc: update :attr: to :py:attr: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:42:14 +0000 (08:42 -0400)]
doc: update :data: to :py:data: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:41:21 +0000 (08:41 -0400)]
doc: update :meth: to :py:meth: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:40:09 +0000 (08:40 -0400)]
doc:config: use :file: to markup filenames.
W. Trevor King [Fri, 26 Oct 2012 12:37:54 +0000 (08:37 -0400)]
doc: update :class: to :py:class: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:36:09 +0000 (08:36 -0400)]
storage:vcs:base: avoid `is not a item name` Sphinx error.
W. Trevor King [Fri, 26 Oct 2012 12:22:32 +0000 (08:22 -0400)]
doc:conf: use `version (date)` in Sphinx docs
Since
commit
bed7587fe4910f8e4b892a09675279c5a4ab5484
Author: W. Trevor King <wking@tremily.us>
Date: Thu Oct 25 19:07:09 2012 -0400
version: use abbreviated SHA instead of explicit _VERSION in master branch
the version SHA will either be explicit in version(), or version()
will return a release tag. This makes the long SHA in the Sphinx docs
unnecessary, so we can replace it with the more interesting commit
date.
W. Trevor King [Fri, 26 Oct 2012 12:13:13 +0000 (08:13 -0400)]
doc: update :mod: to :py:mod: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:12:08 +0000 (08:12 -0400)]
doc: update :func: to :py:func: for modern Sphinx.
W. Trevor King [Fri, 26 Oct 2012 12:00:31 +0000 (08:00 -0400)]
storage:util:config: path() now defaults to ~/.config/bugs-everywhere
Add a documentation section discussing the config file, respect
XDG_CONFIG_HOME, and add BE_CONFIG_PATH.
W. Trevor King [Fri, 26 Oct 2012 02:40:49 +0000 (22:40 -0400)]
release.py: strip trailing whitespace from ChangeLog.
W. Trevor King [Thu, 25 Oct 2012 23:46:13 +0000 (19:46 -0400)]
release.py: sign tags when cutting releases.
W. Trevor King [Thu, 25 Oct 2012 23:37:37 +0000 (19:37 -0400)]
release.py: use current Python executable for ./be invocation
This allow you to cut a release where your system Python is not
compatible with be. For example:
$ python --version
Python 3.2.3
$ python2.7 ./release.py 1.1.0
W. Trevor King [Thu, 25 Oct 2012 23:34:06 +0000 (19:34 -0400)]
setup.py: flesh out setup in preparation for PyPI posting
W. Trevor King [Thu, 25 Oct 2012 23:13:47 +0000 (19:13 -0400)]
setup.py: change setup.py name to something more PyPI friendly.
W. Trevor King [Thu, 25 Oct 2012 23:11:19 +0000 (19:11 -0400)]
setup.py: don't put the date in the setup.py version (PyPI gets mad).
W. Trevor King [Thu, 25 Oct 2012 23:07:09 +0000 (19:07 -0400)]
version: use abbreviated SHA instead of explicit _VERSION in master branch
Only official releases get a version number, which should help avoid
confusion. If you're running a live checkout, you shouldn't be scared
off by SHAs.
W. Trevor King [Thu, 25 Oct 2012 22:44:22 +0000 (18:44 -0400)]
release.py: pull main code into main().
W. Trevor King [Thu, 25 Oct 2012 21:57:39 +0000 (17:57 -0400)]
update-copyright: update to the python3 branch.
W. Trevor King [Thu, 25 Oct 2012 20:56:03 +0000 (16:56 -0400)]
release.py: remove dependency on deprecated libbe.subproc.Pipe
Pipe has been gone since:
commit
f1ae4b7f3fea6fb78a54ee5073aee648a3d73179
Author: W. Trevor King <wking@drexel.edu>
Date: Sat Feb 25 11:16:01 2012 -0500
Remove util.subproc.Pipe, as we no longer use it in BE.
W. Trevor King [Thu, 25 Oct 2012 12:19:42 +0000 (08:19 -0400)]
interfaces:web:web: use bugdir_bug_comment_from_user_id() in CFBE.
This gets CFBE working with:
commit
4db1a045a0606bead191a563abc54dfa8352efe0
Author: W. Trevor King <wking@tremily.us>
Date: Wed Aug 29 23:26:17 2012 -0400
Rewrite commands to use bugdirs instead of a single bugdir.
I'm not sure how much work it would take to rewrite CFBE to use
multiple bugdirs.
W. Trevor King [Thu, 25 Oct 2012 12:12:59 +0000 (08:12 -0400)]
bugdir|bug|comment: update default settings string to be value JSON.
W. Trevor King [Thu, 25 Oct 2012 12:03:30 +0000 (08:03 -0400)]
storage:util:mapfile: fix YAML -> JSON in docstrings.
This should have been done back in:
commit
a95915c6c7d6a4e29c1e5547580e0c1fed2467e1
Author: W. Trevor King <wking@tremily.us>
Date: Mon Sep 17 08:14:21 2012 -0400
storage:util:mapfile: convert YAML settings to JSON.
I also add an empty-settings generation as a sanity check.
W. Trevor King [Thu, 25 Oct 2012 11:00:42 +0000 (07:00 -0400)]
setup.py: make libbe._version optional.
Thanks to Timmie for pointing this out:
From: Timmie <timmichelsen@gmx-topmail.de>
Date: Thu, 25 Oct 2012 09:42:23 +0000 (UTC)
Subject: Re: [Be-devel] NotImplementedError with Bazaar
...
I notices the following glichtes during the install:
D:\be-be-master\be-be>python setup.py install
WARNING:root:unable to import libbe._version: No module named _version
Traceback (most recent call last):
File "setup.py", line 6, in <module>
from libbe import _version, version
ImportError: cannot import name _version
...
W. Trevor King [Sat, 20 Oct 2012 11:18:40 +0000 (07:18 -0400)]
.update-copyright.conf: update to pipe separators.
This brings the config file up to speed with the following
update-copyright commit:
commit
3c68a1a48419d8b2bbc2ce0e7f1700b996ec30e9
Author: W. Trevor King <wking@tremily.us>
Date: Fri Oct 19 21:52:48 2012 -0400
project: for consistency, also separate ignored paths with pipes
W. Trevor King [Tue, 16 Oct 2012 14:58:37 +0000 (10:58 -0400)]
Ran update-copyright.py.
W. Trevor King [Tue, 16 Oct 2012 14:54:58 +0000 (10:54 -0400)]
.mailmap: consilidate Niall Douglas' addresses.
W. Trevor King [Tue, 16 Oct 2012 14:36:53 +0000 (10:36 -0400)]
update-copyright: update to current update-copyright (v0.4+).
Nicolas Bigaouette [Wed, 19 Sep 2012 15:12:37 +0000 (11:12 -0400)]
doc:tutorial: fix typos in the attachment examples.
I wrote the actual patch, but Nicolas gave pretty unambiguous
directions, so I'm making him the author.
On Wed, Sep 19, 2012 at 11:03:39AM -0400, Nicolas Bigaouette wrote:
> Hi all,
>
> I'm trying out Bugs Everywhere, pretty neat!
>
> Reading the documentation, I see it's possible to add attachment to the bug
> report. The "commenting on bugs" section of the tutorial[1] gives the
> command for the attachment:
>
> > $ cat screenshot.png | be comment --content-type image/png bea/28f
> >
> or the following to reply to a specific comment:
>
> > $ be comment bea/28f “Whosit dissapears when you mouse-over whatsit.”
> > $ cat screenshot.png | be comment --content-type image/png bea/28f/41d
> >
>
> Both these commands fail as they will try to open the editor for entering
> the comment.
>
> The fix is simply to append a single dash "-" at the end of the attachment
> command to tell "be comment" to read the comment from stdin (see "be help
> comment").
>
> Also, the second example has not the same formatting as the first one. The
> first one seems to have a "code" formatting, while the second is just
> indented without any line breaks.
>
> Thanks!
>
> Nicolas
>
> [1] http://docs.bugseverywhere.org/tutorial.html#commenting-on-bugs
W. Trevor King [Mon, 17 Sep 2012 15:13:36 +0000 (11:13 -0400)]
storage:vcs:git: check for existence of pygit2.__version__.
Now that my pull request has been accepted, we can be fairly confident
that future releases of pygit2 will expose this attribute. The
accepted patch was a bit different from the original submission:
Add 'pygit2.__version__' for easy access from client software.
https://github.com/libgit2/pygit2/pull/128
commit
f10d2b7b3f0c67d81b175326035e4813420156bd
W. Trevor King [Mon, 17 Sep 2012 13:35:10 +0000 (09:35 -0400)]
command:html: convert -moz-border-radius to border-radius.
border-radius and friends are standard CSS3 [1].
[1]: http://www.w3.org/TR/css3-background/#the-border-radius
W. Trevor King [Mon, 17 Sep 2012 13:25:07 +0000 (09:25 -0400)]
command.html: display "Target:" detail for bugs with targets.
W. Trevor King [Mon, 17 Sep 2012 13:21:18 +0000 (09:21 -0400)]
command:html: fix two auto% -> auto typos in CSS.
These were introduced in
commit
d61d54ce33022f0613c5e19e2f52be4ab77c4664
Author: Gianluca Montecchi <gian@grys.it>
Date: Mon Jan 24 22:47:32 2011 +0100
New html output for html command
and propogated in
commit
5b6be7a511670cdf1961d13040cddcb34e70b8a1
Author: W. Trevor King <wking@drexel.edu>
Date: Sun Apr 17 02:41:07 2011 -0400
Rework `be html` to use Jinja2 templates.
W. Trevor King [Mon, 17 Sep 2012 13:01:20 +0000 (09:01 -0400)]
bea864: upgrade to Bugs Everywhere Directory v1.5 (YAML -> JSON).
W. Trevor King [Mon, 17 Sep 2012 12:14:21 +0000 (08:14 -0400)]
storage:util:mapfile: convert YAML settings to JSON.
This is faster and still readable. I also add an upgrader to convert
bug directories from:
Bugs Everywhere Directory v1.4
to:
Bugs Everywhere Directory v1.5
but I haven't upgraded the local bugdir yet.
W. Trevor King [Thu, 13 Sep 2012 23:07:59 +0000 (19:07 -0400)]
storage:vcs:git: move Git to ExecGit and add PygitGit using pygit2.
If `pygit2` is installed, use it (via PygitGit) rather than calling
the stand-alone `git` executable for all the Git (via ExecGit) for all
the Git storage stuff. This saves one serializing/deserializing and
process setup/teardown. I timed each test suite by commenting out one
of the `make_vcs_testcase_subclasses()` calls at the end of `git.py`
and running
$ time python test.py libbe.storage.vcs.git
The ExecGit tests ran in 13.7s and the PygitGit tests ran in 3.6s for
a 3.8x speedup.
I had to stretch pygit2 a bit to get a clean fit, so if you want to
test this, you'll need to build pygit2 with the following merge
requests:
Add 'pygit2.__version__' for easy access from client software.
https://github.com/libgit2/pygit2/pull/128
commit
0238fb72dfdf2a2308f2da347717cbaafddc4b83
signature: Add keyword argument parsing to Signature().
https://github.com/libgit2/pygit2/pull/129
commit
c934858b629f40221406f34166dd77e881b9d5fd
repository: add Repository.revparse_single()
https://github.com/libgit2/pygit2/pull/131
commit
3afdc8b2f59ed137531671fedde36f3a39cbcc9d
W. Trevor King [Thu, 13 Sep 2012 16:08:10 +0000 (12:08 -0400)]
storage:vcs:base: fix _gets_ -> _get_ typo in test_gets_existing_user_id.
VCS_get_user_id_TestCase.test_gets_existing_user_id is now
VCS_get_user_id_TestCase.test_get_existing_user_id
W. Trevor King [Thu, 13 Sep 2012 15:47:51 +0000 (11:47 -0400)]
storage:vcs:base: fix realtive -> relative typo in _u_abspath docstring.
W. Trevor King [Mon, 3 Sep 2012 20:37:17 +0000 (16:37 -0400)]
command:html: add --strip-email option.
W. Trevor King [Mon, 3 Sep 2012 20:17:14 +0000 (16:17 -0400)]
command:html: oops, use default arguments for 'notify' and 'auth'.
W. Trevor King [Mon, 3 Sep 2012 20:14:39 +0000 (16:14 -0400)]
command:html: fix super(HTML. self) -> super(HTML, self).
W. Trevor King [Mon, 3 Sep 2012 19:18:36 +0000 (15:18 -0400)]
ui:command_line: use `be help server` for help with `--server`.
Use the recently created topic, which provides more details than the
`serve-commands` help message.
W. Trevor King [Mon, 3 Sep 2012 19:18:22 +0000 (15:18 -0400)]
ui:command_line: display help.TOPICS during `be help`.
W. Trevor King [Mon, 3 Sep 2012 19:15:38 +0000 (15:15 -0400)]
command:help: add `repo` and `server` topics.
W. Trevor King [Mon, 3 Sep 2012 19:15:03 +0000 (15:15 -0400)]
command:help: match against command names (not module names).
W. Trevor King [Mon, 3 Sep 2012 18:26:36 +0000 (14:26 -0400)]
ui:command_line: use command names in command-list help message.
The old implementation used module names. For example:
command name: import-xml
module name: import_xml
W. Trevor King [Mon, 3 Sep 2012 18:21:56 +0000 (14:21 -0400)]
ui:command_line: add 'html' command to no-pager commands.
Also rename 'serve' -> 'serve-storaage'.
This catches the server version up with:
commit
0336db8d4052a319f1d959a33fc847814551e3f8
Author: W. Trevor King <wking@tremily.us>
Date: Wed Aug 29 23:55:37 2012 -0400
command:serve-storage: rename `be serve` -> `be serve-storage`.
W. Trevor King [Mon, 3 Sep 2012 17:54:07 +0000 (13:54 -0400)]
util:wsgi: WSGITestCase should not subclass WSGICaller.
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.
W. Trevor King [Mon, 3 Sep 2012 17:10:04 +0000 (13:10 -0400)]
command:html: rewrite as a libbe.util.wsgi.ServerCommand.
Now `be html` defaults to serving the BE repo live. With the
`--export-html` option, it reverts to the earlier static dump
behaviour.
This will make it easier for others to embed a read-only HTML server
in their own app (e.g. as a gitorious issue tracker).
W. Trevor King [Mon, 3 Sep 2012 17:09:06 +0000 (13:09 -0400)]
util:wsgi: Pull WSGICaller out of WSGITestCase.
W. Trevor King [Mon, 3 Sep 2012 15:53:32 +0000 (11:53 -0400)]
bea/c283cb: move 'wishlist' severity from bug summary to .severity attribute.
W. Trevor King [Mon, 3 Sep 2012 14:01:32 +0000 (10:01 -0400)]
command:serve-storage: rename server_version to BE-storage-server/<VERSION>.
This catches the server version up with:
commit
0336db8d4052a319f1d959a33fc847814551e3f8
Author: W. Trevor King <wking@tremily.us>
Date: Wed Aug 29 23:55:37 2012 -0400
command:serve-storage: rename `be serve` -> `be serve-storage`.
W. Trevor King [Mon, 3 Sep 2012 13:36:56 +0000 (09:36 -0400)]
command:serve_commands: allow unspecified parameters (use defaults).
Also raise UnknownCommand if there is no `command` key in the posted
dict (malformed request).
With the new code, you can run commands with:
$ wget --post-data='command: list' http://localhost:8000/run/
instead of having to go through and specify all the parameters
explicitly. This will make the command server more robust for use
with older clients (who may not know about all the parameters that the
server knows about). Parameters sent by the client that the server
does not know about are silently ignored.
W. Trevor King [Mon, 3 Sep 2012 13:34:35 +0000 (09:34 -0400)]
util:wsgi: add HandlerErrorApp to return HTTP errors.
W. Trevor King [Mon, 3 Sep 2012 13:26:42 +0000 (09:26 -0400)]
util:wsgi: fix WSGI_AppObject.default_callback -> .default_handler typo.
W. Trevor King [Mon, 3 Sep 2012 13:06:22 +0000 (09:06 -0400)]
bea/c283cb: remove Be-devel footer from Holger (Timmie)'s comment.