be.git
12 years agostorage:http: use an explicit relative import for base.
W. Trevor King [Fri, 24 Aug 2012 11:36:20 +0000 (07:36 -0400)]
storage:http: use an explicit relative import for base.

12 years agostorage:http: adjust HTTPError message in get_post_url.
W. Trevor King [Fri, 24 Aug 2012 11:24:31 +0000 (07:24 -0400)]
storage:http: adjust HTTPError message in get_post_url.

We'll usually get this message if we fail to reach the server, but we
can also get it if the server is so broken that it dies without
returning a valid HTTP response.

12 years agostorage:http: add agent argument to get_post_url.
W. Trevor King [Fri, 24 Aug 2012 11:22:39 +0000 (07:22 -0400)]
storage:http: add agent argument to get_post_url.

This allows us to set an appropriate user agent if we use this
function in other places (e.g. upcoming Command._run_remote).

12 years agocommand:serve: add SilentRequestHandler to avoid double-logging requests.
W. Trevor King [Thu, 23 Aug 2012 21:26:36 +0000 (17:26 -0400)]
command:serve: add SilentRequestHandler to avoid double-logging requests.

They were being logged by the request handler, and then logged again
by WSGI_Object.log_request.  After this patch, requests are only
logged when logger.level is at a <= level (e.g. closer to DEBUG)
than the WSGI_Object.log_level (usually INFO).  For example, in
Serve_setup_logging,

  self.logger.setLevel(logging.INFO)

will get request logs printed, but

  self.logger.setLevel(logging.WARNING)

will not.

12 years agolibbe:util:plugin: cleanup recent zip/egg handling code.
W. Trevor King [Thu, 23 Aug 2012 17:35:58 +0000 (13:35 -0400)]
libbe:util:plugin: cleanup recent zip/egg handling code.

To test this, you'll need to build an egg.  You can use setuptools to
do this, by applying:

<snip-patch>

12 years agoCherrypick improved zipfile support from Niall Douglas.
Niall Douglas (a [underscors] sourceforge {at} nedprod [dot] com) [Wed, 22 Feb 2012 17:46:06 +0000 (17:46 +0000)]
Cherrypick improved zipfile support from Niall Douglas.

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

12 years agoCherrypick initial zipfile support from Niall Douglas.
Niall Douglas (a [underscors] sourceforge {at} nedprod [dot] com) [Fri, 24 Feb 2012 19:35:04 +0000 (14:35 -0500)]
Cherrypick initial zipfile support from Niall Douglas.

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

12 years agostorage:vcs:hg: remove grandchildren from Hg._vcs_listdir.
W. Trevor King [Thu, 23 Aug 2012 14:38:14 +0000 (10:38 -0400)]
storage:vcs:hg: remove grandchildren from Hg._vcs_listdir.

This fixes:

  From: Phil Schumm
  Date: Thu, 23 Aug 2012 08:15:21 -0500
  Subject: [Be-devel] -be diff- under Hg

  ...
  I've just noticed that -be diff- seems to yield different output
  under Git than it does under Hg (e.g., in a Mercurial +repository,
  -be diff- appears to show all changes as new bugs rather than
  modified).
  ...

12 years agostorage:base: add tests to catch grandchildren in .children() output.
W. Trevor King [Thu, 23 Aug 2012 14:35:43 +0000 (10:35 -0400)]
storage:base: add tests to catch grandchildren in .children() output.

With a tree like:

  a
  `-- b
      `-- c

children(a) should return [b], not [b, c] or [c].  This catches a bug
in the Mercurial backend.  Fix to follow.

12 years agostorage:vcs:hg: fix missformed file_a -> file_b message typo.
W. Trevor King [Thu, 23 Aug 2012 13:46:22 +0000 (09:46 -0400)]
storage:vcs:hg: fix missformed file_a -> file_b message typo.

12 years agoUpdate CherryPy dependency package to python-cherrypy3 on Debian.
W. Trevor King [Thu, 10 May 2012 12:56:02 +0000 (08:56 -0400)]
Update CherryPy dependency package to python-cherrypy3 on Debian.

Thanks to Tim Mazid for reporting the bug, and Israel Basurto for
suggesting the fix.

On Wed, May 09, 2012 at 07:26:14PM +1000, Tim Mazid wrote:
> $ interfaces/web/cfbe.py ~/projects/proj/
> Bugs Everywhere Directory v1.4
> Traceback (most recent call last):
>   File "interfaces/web/cfbe.py", line 42, in <module>
>     cherrypy.quickstart(WebInterface, '/', app_config)
> AttributeError: 'module' object has no attribute 'quickstart'
>
> This is with the latest be from git, and python-cherrypy 2.3.0-3 from
> Debian wheezy.

12 years agoFix deb-python -> dev-python typo in doc/install.txt.
W. Trevor King [Fri, 27 Apr 2012 00:08:47 +0000 (20:08 -0400)]
Fix deb-python -> dev-python typo in doc/install.txt.

12 years agoChange my email address from drexel.edu to tremily.us.
W. Trevor King [Wed, 18 Apr 2012 16:59:19 +0000 (12:59 -0400)]
Change my email address from drexel.edu to tremily.us.

12 years agoNormalize whitespace in interfaces/web/webpy.
W. Trevor King [Sun, 25 Mar 2012 15:43:33 +0000 (11:43 -0400)]
Normalize whitespace in interfaces/web/webpy.

12 years agoNormalize whitespace in interfaces/web/templates/base.html.
W. Trevor King [Sun, 25 Mar 2012 15:40:04 +0000 (11:40 -0400)]
Normalize whitespace in interfaces/web/templates/base.html.

12 years agoAdd tag filter on the web interface
Israel Basurto [Sat, 24 Mar 2012 12:22:11 +0000 (13:22 +0100)]
Add tag filter on the web interface

12 years agoApply Niall's earlier fix for comment XML loading to bug XML loading.
W. Trevor King [Sat, 3 Mar 2012 16:22:08 +0000 (11:22 -0500)]
Apply Niall's earlier fix for comment XML loading to bug XML loading.

Sometimes saxutils returns unicode.

12 years agoMake ID expansion less strict for comment text.
W. Trevor King [Sat, 3 Mar 2012 16:19:43 +0000 (11:19 -0500)]
Make ID expansion less strict for comment text.

This avoids errors if the comment text references a repository that
you don't have locally.

12 years agoFix `be import_xml` bugs.
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) [Sat, 3 Mar 2012 15:59:43 +0000 (10:59 -0500)]
Fix `be import_xml` bugs.

12 years agoMake the full UUIDs optional for `new` and `comment`.
W. Trevor King [Sat, 3 Mar 2012 15:49:03 +0000 (10:49 -0500)]
Make the full UUIDs optional for `new` and `comment`.

This makes the default output less threatening for new users, while
still supplying the full UUIDs for driving BE from external software.

12 years agoPrint full UUIDs during `new` and `comment`.
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) [Fri, 2 Mar 2012 12:28:34 +0000 (07:28 -0500)]
Print full UUIDs during `new` and `comment`.

12 years agoAdded BE_INPUT_ENCODING and BE_OUTPUT_ENCODING to allow charset for stdin and stdout...
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) [Mon, 20 Feb 2012 15:34:59 +0000 (15:34 +0000)]
Added BE_INPUT_ENCODING and BE_OUTPUT_ENCODING to allow charset for stdin and stdout to be overridden. This is necessary on Windows as there is no way for external programs to set stdin or stdout charsets :(

12 years agoOops, forgot to bump the version and date when tweaking the man page.
W. Trevor King [Sat, 25 Feb 2012 21:12:26 +0000 (16:12 -0500)]
Oops, forgot to bump the version and date when tweaking the man page.

12 years agoUse a bare URL for the link from the man page to online docs.
W. Trevor King [Sat, 25 Feb 2012 21:08:30 +0000 (16:08 -0500)]
Use a bare URL for the link from the man page to online docs.

This will make it easier (possible?) for people using the roff version
of the man page to follow the link.

12 years agoUse $ instead of % for the prompt in the man page bug submission example.
W. Trevor King [Sat, 25 Feb 2012 21:04:51 +0000 (16:04 -0500)]
Use $ instead of % for the prompt in the man page bug submission example.

12 years agoI changed my mind and fixed #/03d07e61#.
W. Trevor King [Sat, 25 Feb 2012 20:47:58 +0000 (15:47 -0500)]
I changed my mind and fixed #/03d07e61#.

12 years agoKeep stdin (file descriptor 0) open in the pager's child process.
W. Trevor King [Sat, 25 Feb 2012 20:05:04 +0000 (15:05 -0500)]
Keep stdin (file descriptor 0) open in the pager's child process.

This fixes the underlying problem that we worked around in commit
2c9ae15f53aef57d28091b237c193c653c6e80dd.  Now even

  $ echo 'some bug | be --paginate new -

will work instead of raising IOError: [Errno 9] Bad file descriptor.

12 years agoAdd `new` to list of commands that should not default to using the pager.
W. Trevor King [Sat, 25 Feb 2012 17:53:17 +0000 (12:53 -0500)]
Add `new` to list of commands that should not default to using the pager.

If the command is run in the pager, access to stdin is tricky, so I
avoid it by default.  I'd just missed the fact that `new -` used
stdin, which caused

  https://bugzilla.redhat.com/show_bug.cgi?id=751473

  $ be new -
  Traceback (most recent call last):
    ...
    File "/usr/lib/python2.7/site-packages/libbe/command/new.py", line 89, in _run
      summary = self.stdin.readline()
    ...
    File "/usr/lib64/python2.7/codecs.py", line 473, in read
      newdata = self.stream.read(size)
  IOError: [Errno 9] Bad file descriptor

12 years agoHide the traceback on InvalidURL errors.
W. Trevor King [Sat, 25 Feb 2012 17:04:01 +0000 (12:04 -0500)]
Hide the traceback on InvalidURL errors.

In response to

  https://bugzilla.redhat.com/show_bug.cgi?id=733945

in which Neal Becker was bummed at the long traceback, which may
initially look like a programming issue.

12 years agoRemove util.subproc.Pipe, as we no longer use it in BE.
W. Trevor King [Sat, 25 Feb 2012 16:16:01 +0000 (11:16 -0500)]
Remove util.subproc.Pipe, as we no longer use it in BE.

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.

12 years agoAdd CherryPy dependency and minimal install info to doc/install.txt.
W. Trevor King [Sat, 25 Feb 2012 15:43:09 +0000 (10:43 -0500)]
Add CherryPy dependency and minimal install info to doc/install.txt.

I seem to have left CherryPy out of the earlier list.

The extra handholding for minimal installations is an attempt to
address problems people have had installing BE on non-Linux systems,
where the standard build tools are less common.

I also mention my Gentoo overlay and Michel Alexandre Salim's Fedora
package, so people running Gentoo and Fedora don't have to bother
figuring any of this out ;).

Finally, I moved the package information up to the top of the install
page, so people on supported systems realize they have an easy out
before reading through the install procedure.

12 years agoCherrypick a better version string for setup.py from Niall Douglas.
Niall Douglas (a [underscors] sourceforge {at} nedprod [dot] com) [Fri, 24 Feb 2012 19:35:04 +0000 (14:35 -0500)]
Cherrypick a better version string for setup.py from Niall Douglas.

WTK: This is a small part 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

I cleaned up his string construction, which was originally

  version.version()+" ("+rev_date+")"

12 years agoAvoid generating another StringIO instance in StringInputOutput.get_stdout().
W. Trevor King [Fri, 24 Feb 2012 19:25:21 +0000 (14:25 -0500)]
Avoid generating another StringIO instance in StringInputOutput.get_stdout().

12 years agoShuffle doc/conf.py to get the Git revision into the Sphinx documentation.
W. Trevor King [Fri, 17 Feb 2012 20:02:57 +0000 (15:02 -0500)]
Shuffle doc/conf.py to get the Git revision into the Sphinx documentation.

12 years agoUpdate update-copyright to version 0.3.
W. Trevor King [Thu, 16 Feb 2012 22:05:19 +0000 (17:05 -0500)]
Update update-copyright to version 0.3.

12 years agoAdd update-copyright as a submodule and update release.py accordingly.
W. Trevor King [Thu, 16 Feb 2012 21:15:24 +0000 (16:15 -0500)]
Add update-copyright as a submodule and update release.py accordingly.

Also add `**kwargs` to `invoke` so we can specify the environment.

12 years agoFix release.py to allow uncommented initial _VERSION.
W. Trevor King [Thu, 16 Feb 2012 16:57:31 +0000 (11:57 -0500)]
Fix release.py to allow uncommented initial _VERSION.

I was in favor of always leaving _VERSION commented in the trunk,
since released branches should fork off the trunk:

  trunkA -> trunkB -> trunkC -> trunkD
   `-> 1.0.0           `-> 1.1.0
        `-> 1.0.1           `-> 1.1.1

But that doesn't seem to have been how things have worked out in BE.
In any case, you will need to release on top of a previous release
(e.g. 1.0.1 on top of 1.0.0 in my above example), so we cannot depend
on an initial comment character before _VERSION.

12 years agoModify release.py for external update-copyright.py.
W. Trevor King [Thu, 16 Feb 2012 16:50:23 +0000 (11:50 -0500)]
Modify release.py for external update-copyright.py.

12 years agoRan update-copyright.py.
W. Trevor King [Thu, 16 Feb 2012 16:45:25 +0000 (11:45 -0500)]
Ran update-copyright.py.

12 years agoTransition to my external update-copyright package.
W. Trevor King [Thu, 16 Feb 2012 16:44:27 +0000 (11:44 -0500)]
Transition to my external update-copyright package.

http://pypi.python.org/pypi/update-copyright/

12 years agoAdd .mailmap, mapping Git committers and authors to canonical names.
W. Trevor King [Thu, 16 Feb 2012 16:41:55 +0000 (11:41 -0500)]
Add .mailmap, mapping Git committers and authors to canonical names.

12 years agoGenerated libbe/_version.py was not UTF-8 aware.
Matěj Cepl [Mon, 2 Jan 2012 20:57:56 +0000 (15:57 -0500)]
Generated libbe/_version.py was not UTF-8 aware.

So make failed for me (Matěj Cepl).

Signed-off-by: Matěj Cepl <mcepl@redhat.com>
12 years agoFix .gitignore
Matěj Cepl [Mon, 2 Jan 2012 15:14:35 +0000 (16:14 +0100)]
Fix .gitignore

Per gitignore(5) it seems to me that directories in the root of the
repository should be ignored without leading ./ files. E.g.

build/

is correct for ignoring build/ directory and its content.

Signed-off-by: Matěj Cepl <mcepl@redhat.com>
12 years agoMerge http://www.physics.drexel.edu/~wking/code/git/be
Chris Ball [Mon, 2 Jan 2012 20:43:30 +0000 (15:43 -0500)]
Merge www.physics.drexel.edu/~wking/code/git/be

12 years agoFix up broken merge commit.
Chris Ball [Mon, 2 Jan 2012 20:43:13 +0000 (15:43 -0500)]
Fix up broken merge commit.

13 years agoFix my busted 1512c0e2a64e patch to libbe/util/encoding.py.
W. Trevor King [Mon, 14 Nov 2011 02:06:43 +0000 (21:06 -0500)]
Fix my busted 1512c0e2a64e patch to libbe/util/encoding.py.

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.

13 years agoRan update_copyright.py.
W. Trevor King [Wed, 9 Nov 2011 11:54:43 +0000 (06:54 -0500)]
Ran update_copyright.py.

13 years agoMention `~/.local/bin/` when using default `--user` install.
W. Trevor King [Tue, 8 Nov 2011 12:20:44 +0000 (07:20 -0500)]
Mention `~/.local/bin/` when using default `--user` install.

13 years agoCorrect doc/install.txt to refer to INSTALL_OPTIONS instead of PREFIX.
W. Trevor King [Tue, 8 Nov 2011 12:14:43 +0000 (07:14 -0500)]
Correct doc/install.txt to refer to INSTALL_OPTIONS instead of PREFIX.

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

13 years agoAdd the BE_ENCODING environmental variable to override the default encoding.
W. Trevor King [Thu, 8 Sep 2011 20:10:02 +0000 (16:10 -0400)]
Add the BE_ENCODING environmental variable to override the default encoding.

13 years agoAdjust encoding detection (using sys.getfilesystemencoding for file contents).
W. Trevor King [Thu, 8 Sep 2011 20:03:09 +0000 (16:03 -0400)]
Adjust encoding detection (using sys.getfilesystemencoding for file contents).

13 years agoWon't fix #/03d07e61# (bad permission crash).
W. Trevor King [Thu, 8 Sep 2011 03:42:25 +0000 (23:42 -0400)]
Won't fix #/03d07e61# (bad permission crash).

13 years agoFixed #/bc1e6ff4# (extra argument crash).
W. Trevor King [Thu, 8 Sep 2011 03:24:18 +0000 (23:24 -0400)]
Fixed #/bc1e6ff4# (extra argument crash).

13 years agoOops, that forgot the equals part of Mercurial 1.9 or greater.
W. Trevor King [Thu, 8 Sep 2011 03:20:54 +0000 (23:20 -0400)]
Oops, that forgot the equals part of Mercurial 1.9 or greater.

13 years agoMerge remote branch 'tanguy/master'
W. Trevor King [Thu, 8 Sep 2011 03:15:25 +0000 (23:15 -0400)]
Merge remote branch 'tanguy/master'

13 years agoAdjust Mercurial execution so it works with version 1.9 and earlier.
W. Trevor King [Thu, 8 Sep 2011 02:54:00 +0000 (22:54 -0400)]
Adjust Mercurial execution so it works with version 1.9 and earlier.

This makes the changes for 1.9 brought in by
  bb645f8e489b9f50cd0aec7237ec9adb721797a8
optional.  If the Mercurial version is 1.9 or greater, the new code is
used.  Otherwise, the old code is used.

13 years agoMove Bzr.version_cmp to VCS.version_cmp.
W. Trevor King [Thu, 8 Sep 2011 02:47:14 +0000 (22:47 -0400)]
Move Bzr.version_cmp to VCS.version_cmp.

The version comparison code will be useful for all VCSs.

13 years agoMerge remote branch 'pschumms/master'
W. Trevor King [Thu, 8 Sep 2011 02:33:51 +0000 (22:33 -0400)]
Merge remote branch 'pschumms/master'

13 years agoAdd Jinja to the dependency documentation.
W. Trevor King [Thu, 8 Sep 2011 02:26:37 +0000 (22:26 -0400)]
Add Jinja to the dependency documentation.

13 years agoRemove redundant re import from previous bzr version_cmp patch.
W. Trevor King [Thu, 8 Sep 2011 02:09:00 +0000 (22:09 -0400)]
Remove redundant re import from previous bzr version_cmp patch.

13 years agoEnhance Bzr.version_cmp to handle non-numeric versions
Michel Alexandre Salim [Thu, 4 Aug 2011 15:50:32 +0000 (17:50 +0200)]
Enhance Bzr.version_cmp to handle non-numeric versions

bzr uses non-numeric tags to indicate prereleases; previously, this
triggers an exception in be's Bzr module as version comparison is only
supported between version strings that only contain numbers and dots.

This patch extends version_cmp to support a single non-numeric
pre-release string of arbitrary length (e.g. 'a', 'b', 'pre', 'rc'), and
extends the docstring tests to cover this extension.

Signed-off-by: Michel Alexandre Salim <salimma@fedoraproject.org>
13 years agoMinor fix to doctest for command.base.get_command(); failure introduced by change...
Phil Schumm [Sat, 30 Jul 2011 17:00:53 +0000 (12:00 -0500)]
Minor fix to doctest for command.base.get_command(); failure introduced by change to command.base.UnknownCommand in commit 0d5c9c68e947617c9d073d5f19351bdd8f3866db

13 years agoAdd ImportError to UnknownCommand output in get_command doctest.
W. Trevor King [Sat, 30 Jul 2011 15:46:27 +0000 (11:46 -0400)]
Add ImportError to UnknownCommand output in get_command doctest.

This catches the test result up after:

  Commit: 0d5c9c68e947617c9d073d5f19351bdd8f3866db
  Author: W. Trevor King <wking@drexel.edu>
  Date:   Wed May 25 10:30:19 2011 -0400

    Attach ImportError message to UnknownCommand to aid debugging.

13 years agobugseverywhere.org has changed URL handling, so use different URLs for HTTP testing.
W. Trevor King [Sat, 30 Jul 2011 15:43:30 +0000 (11:43 -0400)]
bugseverywhere.org has changed URL handling, so use different URLs for HTTP testing.

13 years agoFixed problem with Hg support under version 1.9 (mercurial.dispatch.dispatch() now...
Phil Schumm [Thu, 28 Jul 2011 12:42:11 +0000 (07:42 -0500)]
Fixed problem with Hg support under version 1.9 (mercurial.dispatch.dispatch() now takes a single request object with option for capturing output stream)

13 years agoReport bug: crash on permission problems
Tanguy LE CARROUR [Mon, 6 Jun 2011 18:48:57 +0000 (20:48 +0200)]
Report bug: crash on permission problems

13 years agoReport bug in arguments processing
Tanguy LE CARROUR [Mon, 6 Jun 2011 18:07:34 +0000 (20:07 +0200)]
Report bug in arguments processing

13 years agoRaise UserError if summary is not given to `be commit`.
W. Trevor King [Wed, 25 May 2011 14:39:51 +0000 (10:39 -0400)]
Raise UserError if summary is not given to `be commit`.

If the user doesn't provide the summary on the command line, through
stdin, or through editor_string, raise an error.  This will generally
happen with

  $ be commit
  (user doesn't enter any text in the editory)

13 years agoAttach ImportError message to UnknownCommand to aid debugging.
W. Trevor King [Wed, 25 May 2011 14:30:19 +0000 (10:30 -0400)]
Attach ImportError message to UnknownCommand to aid debugging.

13 years agoAdd 'Power features' page to the docs.
W. Trevor King [Wed, 25 May 2011 12:54:53 +0000 (08:54 -0400)]
Add 'Power features' page to the docs.

13 years agoRework summary handling in `be commit`.
W. Trevor King [Wed, 25 May 2011 12:37:03 +0000 (08:37 -0400)]
Rework summary handling in `be commit`.

Now you can run `be commit` with no options and have the summary split
off the body automatically.  This should be more familiar to most VCS
users.

13 years agoRun update_copyright.py.
W. Trevor King [Wed, 25 May 2011 10:52:09 +0000 (06:52 -0400)]
Run update_copyright.py.

13 years agoMove Tim Guirgies' help for status/severity overrides to .
W. Trevor King [Wed, 25 May 2011 10:46:26 +0000 (06:46 -0400)]
Move Tim Guirgies' help for status/severity overrides to .

13 years agoRemove "be set" reference in favour of actual help
Tim Guirgies [Tue, 24 May 2011 16:15:13 +0000 (02:15 +1000)]
Remove "be set" reference in favour of actual help

Because "be set severity blah" does not actually work, referring users
there to set custom severity levels is just cruel (I spent a half hour
trying to figure out what I was doing wrong). Thus, it is much easier
to, at least for now, state in the help message what they must do in
order to get custom severities and statuses.

13 years agoTeach be status --help to load per tree config
Tim Guirgies [Tue, 24 May 2011 16:15:12 +0000 (02:15 +1000)]
Teach be status --help to load per tree config

Again, there is discrepancy between severity.py and status.py. I thought
this feature was extremely useful in severity.py and it should be put
into status.py too.

13 years agoRestructure severity help function to match status
Tim Guirgies [Tue, 24 May 2011 16:15:11 +0000 (02:15 +1000)]
Restructure severity help function to match status

The code structure was vastly different in severity.py to status.py, so
I mostly copied the structure from there and adjusted it to suit
severity.

The structure in status.py looked (to me) cleaner, more organised, and
easier to work with.

Also, users are now referred by "be severity --help" to "be set --help",
in a manner similar to "be status --help".
For those that don't know that severity can be adjusted on a per
repository basis, this seems extremely helpful. A similar message
appears for status, but not here.

13 years agoUse open() instead of file() in CachedPathID doctests (2to3 compatability).
W. Trevor King [Thu, 12 May 2011 20:21:09 +0000 (16:21 -0400)]
Use open() instead of file() in CachedPathID doctests (2to3 compatability).

13 years agoRemove form feeds (for compatibility with 2to3).
W. Trevor King [Thu, 12 May 2011 20:19:41 +0000 (16:19 -0400)]
Remove form feeds (for compatibility with 2to3).

13 years agoConvert tabs to spaces in a libbe.bug indention.
W. Trevor King [Thu, 12 May 2011 18:36:34 +0000 (14:36 -0400)]
Convert tabs to spaces in a libbe.bug indention.

13 years agoUpdate libbe.util.id other_uuids documentation (may contain uuid).
W. Trevor King [Thu, 12 May 2011 17:22:55 +0000 (13:22 -0400)]
Update libbe.util.id other_uuids documentation (may contain uuid).

13 years agoMention Stats.print_callees() in doc/hacking.txt.
W. Trevor King [Thu, 12 May 2011 13:44:55 +0000 (09:44 -0400)]
Mention Stats.print_callees() in doc/hacking.txt.

13 years agoMention Stats.print_callers() in doc/hacking.txt.
W. Trevor King [Thu, 12 May 2011 13:40:23 +0000 (09:40 -0400)]
Mention Stats.print_callers() in doc/hacking.txt.

13 years agoMake BugDir._uuids_cache a set.
W. Trevor King [Thu, 12 May 2011 13:23:14 +0000 (09:23 -0400)]
Make BugDir._uuids_cache a set.

For `be list` on a bugdir with 4096 open bugs, this reduced the
cumulative time spend in 8194 calls to BugDir.uuids() from 41 seconds
to 33 seconds.

Of the 33 cumulative seconds, 24 were spend in uuids() itself (and not
in child functions), which is probably from the list comprehension
extracting in-memory Bug uuids.  With fancier accounting, you could
probably trust _uuids_cache to already contain all the in-memory
uuids and dispense with the union altogether.

13 years agoCache Bug.time by hand to avoid lots of redundant calls to str_to_time.
W. Trevor King [Thu, 12 May 2011 12:41:25 +0000 (08:41 -0400)]
Cache Bug.time by hand to avoid lots of redundant calls to str_to_time.

13 years agoFix links to libbe.util.id from doc/tutorial.txt.
W. Trevor King [Wed, 11 May 2011 21:57:24 +0000 (17:57 -0400)]
Fix links to libbe.util.id from doc/tutorial.txt.

13 years agoFix test_log_request (broken by commit 36699d82).
W. Trevor King [Wed, 11 May 2011 17:24:50 +0000 (13:24 -0400)]
Fix test_log_request (broken by commit 36699d82).

13 years agoAdd extra strings to Bug.string() output.
W. Trevor King [Mon, 2 May 2011 22:09:58 +0000 (18:09 -0400)]
Add extra strings to Bug.string() output.

13 years agoRevive the UserError/UsageError distinction
W. Trevor King [Mon, 2 May 2011 21:48:18 +0000 (17:48 -0400)]
Revive the UserError/UsageError distinction

UsageError was removed back in

  commit bf3d434b244c57556bec979acbc658c30eb58221
  Author: W. Trevor King <wking@drexel.edu>
  Date:   Sat Dec 12 00:31:55 2009 -0500

      Added libbe.command.base (with Command class)...

because the distinction between UsageError and UserError was unclear.
I've brought it back to satisfy a request by Christian Heinrich:

On Sun, May 01, 2011 at 02:52:13AM +0200, Christian Heinrich wrote:
> 3.) Using wrong syntax should receive better help messages.
>
> Current:
>
> "be new" -> ERROR:
> Missing required argument SUMMARY
>
> Should be:
>
> "be new" -> usage: be new [options] SUMMARY
> ...

He suggested we print the full option list as well, but I've decided
to just print the usage summary and remind the user how to get the
full help message if they want it.

13 years agoAdd summary line to the Serve command.
W. Trevor King [Mon, 2 May 2011 02:02:57 +0000 (22:02 -0400)]
Add summary line to the Serve command.

Thanks to Christian Heinrich for pointing this out.

13 years ago"X or ''|e" -> "(X or '')|e" for proper escaping.
W. Trevor King [Sun, 17 Apr 2011 07:17:00 +0000 (03:17 -0400)]
"X or ''|e" -> "(X or '')|e" for proper escaping.

13 years agoCorrect <tdata> -> <tbody> typo in `be html` templates.
W. Trevor King [Sun, 17 Apr 2011 06:49:21 +0000 (02:49 -0400)]
Correct <tdata> -> <tbody> typo in `be html` templates.

13 years agoEnsure comment div ids start with a letter (per validator.w3.org).
W. Trevor King [Sun, 17 Apr 2011 06:47:43 +0000 (02:47 -0400)]
Ensure comment div ids start with a letter (per validator.w3.org).

13 years agoCorrect <tbody> -> </tbody> typo in `be html` templates.
W. Trevor King [Sun, 17 Apr 2011 06:46:25 +0000 (02:46 -0400)]
Correct <tbody> -> </tbody> typo in `be html` templates.

13 years agoRework `be html` to use Jinja2 templates.
W. Trevor King [Sun, 17 Apr 2011 06:41:07 +0000 (02:41 -0400)]
Rework `be html` to use Jinja2 templates.

13 years ago`be serve --notify` is a partial solution to /5fb (storage change hooks).
W. Trevor King [Sun, 17 Apr 2011 02:06:48 +0000 (22:06 -0400)]
`be serve --notify` is a partial solution to /5fb (storage change hooks).

13 years agoRevert 54801289, which makes it impossible to save new bugs/comments.
W. Trevor King [Sun, 17 Apr 2011 02:02:38 +0000 (22:02 -0400)]
Revert 54801289, which makes it impossible to save new bugs/comments.

13 years agoFix /64c by installing with `--user` by default (vs. --prefix=${HOME}).
W. Trevor King [Sun, 17 Apr 2011 01:26:02 +0000 (21:26 -0400)]
Fix /64c by installing with `--user` by default (vs. --prefix=${HOME}).

This way users don't need to mess with PYTHONPATH.  They'll still need
to tweak PATH so they can find the be entry script.

13 years agoRemove old exception types from libbe.bug and libbe.comment.
W. Trevor King [Sun, 17 Apr 2011 01:24:18 +0000 (21:24 -0400)]
Remove old exception types from libbe.bug and libbe.comment.

13 years agoRaise exceptions if bug or comment value files are missing.
W. Trevor King [Sun, 17 Apr 2011 01:01:53 +0000 (21:01 -0400)]
Raise exceptions if bug or comment value files are missing.

This happens most often when a previous crash leaves an empty
directory `abc` in .be/.../bugs/abc/ or
.be/.../bugs/.../comments/abc/.  The new exception ensures the error
message is "Bug/Comment X missing value file" which tells you where to
look for the repository corruption not "summary is None" which told
you nothing.

13 years agoRaise an exception for unrecognized errors in send_pgp_mime.
W. Trevor King [Sat, 16 Apr 2011 23:27:50 +0000 (19:27 -0400)]
Raise an exception for unrecognized errors in send_pgp_mime.