| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, for the directory structure
A
|-- X
`-- Y
You could do something like
A$ be --dir X diff --dir ../Y
Now it's
A$ be --dir X diff --dir Y
The --root option to `be init` has been removed as redundant. Replace
calls like
be init --root DIR
with
be --dir DIR init
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes
wking@thor:be.target-as-bug$ be show 22b:7
Traceback (most recent call last):
File "/home/wking/bin/be", line 65, in <module>
sys.exit(cmdutil.execute(args[0], args[1:]))
File "/home/wking/src/fun/be/be.target-as-bug/libbe/cmdutil.py", line 87, in execute
restrict_file_access=restrict_file_access)
File "/home/wking/src/fun/be/be.target-as-bug/becommands/show.py", line 82, in execute
print output(args, bd, as_xml=options.XML, with_comments=options.comments)
File "/home/wking/src/fun/be/be.target-as-bug/becommands/show.py", line 174, in output
lines.append(comment.string(shortname=shortname))
NameError: global name 'shortname' is not defined
|
|
|
|
|
|
|
| |
+ associated adjustments in other files.
See cmdutil.restrict_file_access.__doc__ for an explanation of the
security hole this closes.
|
|
|
|
|
|
|
|
| |
Broke the bulk of show.py out into new function show.output(), which
is used by both show.py and email_bugs.py to reduce duplication of
effort and increase consistency of the XML.
Also a few relevant help string updates.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It should currently do everything that `be comment --xml` did, but it
still has a way to go before it lives up to it's longhelp string,
mostly figuring out bug/comment merging.
The allowed XML format also changed a bit, becoming a bit more
structured.
cmdutil.bug_from_shortname() renamed to cmdutil.bug_from_id().
New functions cmdutil.parse_id() and cmdutil.bug_comment_from_id().
Additional doctests in libbe.comment.Comment.comment_shortnames() to
show example output if bug_shortname==None.
Brought be-xml-to-mbox and be-mbox-to-xml up to speed on the current
<be-xml>-rooted format.
* Added <extra-string> handling to their comment handling.
* Moved extra strings from email bodies to X-Extra-String headers
(some comment bodies are not text, and we should keep the estr
location consistent between bugs and comments.)
|
| |
|
|
|
|
|
|
|
|
| |
Also simple_bug_dir -> SimpleBugDir class, which allows me to add
utility.Dir cleanup to SimpleBugDir.cleanup().
Still having a bit of trouble with the becommand.new tests due to
bugdir loading though...
|
|\ |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Other highlights:
* be show --no-comments
* Improved *.sync_with_disk.
* Improved be-mbox-to-xml.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Reminder from my initial libbe/encoding.py commit:
Because of the stdout replacement, the doctests executes now need an
optional 'test' argument to turn off replacement during the doctests,
otherwise doctest flips out (since it had set up stdout to catch
output, and then we clobbered it's setup).
I'm also trying to catch stdout/stderr from be-handle-mail, and I ran
into the same problem. It took me a bit to remember exactly what
"test" was supposed to do, so I thought I'd make the argument name
more specific. If you need other changes when running in "test" mode,
you'll have to add other kwargs.
|
| |/
|/|
| |
| | |
So user's don't get confused.
|
|/
|
|
|
|
|
|
|
| |
Also moved the XML-header line to the top of the argument loop, since
there should only be one. We're still missing global tags wrapping the
whole thing though...
Also set options.XML default to False. It had been defaulting to
None, which was breaking the non-XML newline-adding check.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes Ben's bug 00f26f04-9202-4288-8744-b29abc2342d6.
I also tweaked update_copyright.sh to make possible future
copyright-blurb revision easier. The new algorithm is greedier,
overwriting _all_ consecutive comments after a '^# Copyright' line, so
do
# Copyright
# GPL ... GPL ... GPL
# Your comment here...
not
# Copyright
# GPL ... GPL ... GPL
#
# Your comment here...
Without the blank line, your comment would get overwritten by the next
run of update_copyright.sh.
Note that catmutt is ignored by update_copyright.sh because Moritz
Barsnick has only licensed his grepm code under the GPLv2 (not
GPLv>=2). See the initial catmutt commit for details.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reworked to allow "be comment" to handle unicode strings (see bug
e4ed63f6-9000-4d0b-98c3-487269140141). The solution was to escape all
the unicode to produce and ASCII string before calling
ElementTree.XML, and then converting back to unicode afterwards.
Added a unicode-containing comment to the end of bug
f7ccd916-b5c7-4890-a2e3-8c8ace17ae3a so that there's a handy unicode
comment for testing.
XML headers (e.g. '<?xml version="1.0" encoding="UTF-8" ?>') are
now added to all xml output from be.
Switched non-text/* encoding library to base64 instead of
email.encoders, which makes that code in libbe/comment.py simpler.
Changed libbe/mapfile.py error encoding from string_escape to
unicode_escape so it can handle unicode.
Everything's still untested, and be-xml-to-mbox doesn't handle unicode
yet, but I felt this commit was getting a bit unwieldy ;).
|
|
|
|
|
|
|
|
|
|
|
| |
These didn't work with my update_copyright.sh.
I went with
Aaron Bentley and Panometrics, Inc.
instead of
Aaron Bentley <abentley@panoramicfeedback.com> and Panometrics, Inc.
just because of line length, but I'm open to convincing if people
prefer the latter...
|
| |
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Since
<creator>John Doe <jdoe@example.com></creator>
is not valid XML.
|
|/
|
|
| |
Following Chris' advice. Don't know what I was thinking before ;).
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I rewrote a few of his routines, e.g. generalizing
Comment.string_thread to run a caller-specified method avoided the
need for some duplicate code in Comment.xml_thread. There was also a
reasonable reorganization of libbe.settings_object.versioned_property
because the <in_reply_to> field of the Comment.xml output was giving
me `-1' (= old settings_object.EMPTY) instead of None, even after I
had set comm.in_reply_to to None. The rewritten versioned_property
avoids the ambiguity of UNPRIMED vs EMPTY, and avoids the stupididy of
my using EMPTY=-1 ;).
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
They currently have no effect, but you can see them with
$ be set
There's a lot of information in this one 'settings' variable. I think
set will have to be specialized to handle arrays smoothly...
|
| |
| |
| |
| |
| |
| |
| |
| | |
Now most of the bug-id arguments support Bash completion. Since there
will hopefully be lots of bugs in the database, I decided to filter
the list of available bugs. Currently, we just auto-complete active
bugs for most commands, with the exceptions of open (obviously) and
status (which needs to work on all types of bugs).
|
| |
| |
| |
| |
| |
| |
| |
| | |
All the other commands currently use default_complete(), which has no
effect other than catching the --complete option and effectively
aborting execution.
This closes 8e1bbda4-35b6-4579-849d-117b1596ee99
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I borrowed most of the code for this.
get_encoding() is from Trac
http://trac.edgewall.org/browser/trunk/trac/util/datefmt.py
format_datetime()
Trac has a BSD license
http://trac.edgewall.org/wiki/TracLicense
I don't know if such a small snippet requires us to "reproduce the
above copyright" or where we need to reproduce it if it is needed.
The stdout/stdin replacement code follows
http://wiki.python.org/moin/ShellRedirectionFails
Because of the stdout replacement, the doctests executes now need an
optional 'test' argument to turn off replacement during the doctests,
otherwise doctest flips out (since it had set up stdout to catch
output, and then we clobbered it's setup).
References:
http://wiki.python.org/moin/Unicode
http://www.amk.ca/python/howto/unicode
http://www.python.org/dev/peps/pep-0100/
I also split libbe/editor.py off from libbe.utility.py and started
explaining the motivation for the BugDir init flags in it's docstring.
|
|/
|
|
|
|
| |
The situation really calls for a global encoding setting rather than
lots of hardcoded "utf-8"s. See bug
f7ccd916-b5c7-4890-a2e3-8c8ace17ae3a
|
|
|
|
| |
I tried to stick to CAPS for argument placeholders.
|
|
|
|
| |
Fixes bug b3c6da51-3a30-42c9-8c75-587c7a1705c5
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I pushed a lot of the little helper functions into the main classes,
which makes it easier for me to keep track of what's going on. I'm
now at the point where I can run through `python test.py` with each of
the backends (by changing the search order in rcs.py
_get_matching_rcs) without any unexpected errors for each backend
(except Arch). I can also run `test_usage.sh` without non-Arch errors
either.
However, don't consider this a stable commit yet. The bzr backend is
*really*slow*, and the other's aren't blazingly fast either. I think
I'm rewriting the entire database every time I save it :p. Still, it
passes the checks. and I don't like it when zounds of changes build up.
|
|
|
|
|
|
|
|
|
|
|
| |
Using the __desc__ reduces documentation duplication. It's also better
than using __doc__, because __doc__ could (should?) be more than one-line
long, and we just want a short description to jog our memories in the
complete command list.
Also moved unique_name from cmdutil.py to names.py to avoid the
bug->cmdutil->bugdir->bug
cyclic include.
|
|
|
|
| |
This seems like a natual place for a function that only operates on Bugs.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Comment should probably have it's own file too...
I also tried to clean up the interface for setting status and
severity. Both attributes involve selecting strings from predefined
lists. The lists of valid strings (and descriptions of each string)
are now defined in bug.py. The bug.py lists are then used to generate
appropriate help strings in becommands/status.py and severity.py.
This should make it easier to keep the help strings in synch with the
validation information.
The original status strings weren't documented, and I didn't know what
they all ment, so I elimanted some of them. 'in-progress' and
'disabled' are no longer with us. Of course, it would be simple to
add them back in if people don't agree with me on that. Due to the
loss of 'disabled' I had to change the status of two bugs (11e and
597) to 'closed'. I removed becommands/inprogress.py as well. It's
functionality was replaced by the more general status.py command,
which mimics the severity.py command.
|
|\ |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|