John Doe [Sun, 14 Jun 2009 07:24:29 +0000 (17:24 +1000)]
Refactor mega-testcases into separate true-or-false testcases.
John Doe [Sun, 14 Jun 2009 04:34:11 +0000 (14:34 +1000)]
Make RCS testcase subclasses dynamically.
W. Trevor King [Mon, 24 Nov 2008 23:29:16 +0000 (18:29 -0500)]
Merge from W. Trevor King's tree.
W. Trevor King [Mon, 24 Nov 2008 22:02:16 +0000 (17:02 -0500)]
Tweaked usage strings to increase consistency. Also added README.dev.
I tried to stick to CAPS for argument placeholders.
W. Trevor King [Mon, 24 Nov 2008 21:30:52 +0000 (16:30 -0500)]
Fixed broken doctest and inconsitent indentation from not wrapping comments.
Also emptied becommands/__init__.py. I didn't understand the plugin
interface when I wrote it.
W. Trevor King [Mon, 24 Nov 2008 13:49:44 +0000 (08:49 -0500)]
Marked
c45e5ece-63e3-4fd2-b33f-
0bfd06820cf4 as fixed.
It's been fixed for a while
W. Trevor King [Mon, 24 Nov 2008 13:11:08 +0000 (08:11 -0500)]
Removed auto-wrapping from comment.Comment.string().
It makes tracebacks almost illegible. I doubt markup/markdown systax
or auto-formatting is really useful, since bugs-reports are ususally a
short comment and a traceback.
I also closed
a4d38ba7-ec28-4096-a4f3-
eb8c9790ffb2 and
7bfc591e-584a-476e-8e11-
b548f1afcaa6, which have probably been fixed
for a long time...
W. Trevor King [Mon, 24 Nov 2008 12:47:06 +0000 (07:47 -0500)]
Added Bug.comments(), BugDir.has_bug() & cleaned up diff.diff().
+ some other minor fixes and cleanups.
W. Trevor King [Mon, 24 Nov 2008 12:31:51 +0000 (07:31 -0500)]
Replaced direct filesystem read from bugdir.py with RCS mediated read.
Also replaced utility.FileString with StringIO() in cmdutil.py, which
allowed the removal of utility.FileString and utility.get_file.
The only remaining file().read() outside the RCS framework is the read
in utility.editor_string(), but should probably not go through the
RCS.
W. Trevor King [Mon, 24 Nov 2008 12:09:03 +0000 (07:09 -0500)]
Added 'allow_no_rcs' flag to RCS file system access methods.
Now mapfile access has fewer special cases, and there is less
redundant rcs.add/update code.
W. Trevor King [Sun, 23 Nov 2008 19:46:51 +0000 (14:46 -0500)]
Created bugdir.MultipleBugMatches so bugdir no longer imports cmdutil.
W. Trevor King [Sun, 23 Nov 2008 15:58:40 +0000 (10:58 -0500)]
Removed outdated beuuid import from libbe/bugdir.py
W. Trevor King [Sun, 23 Nov 2008 15:08:18 +0000 (10:08 -0500)]
libbe/diff.diff() was missing newly created bugs. Fixed.
Also added blank lines to separate the new/modified/removed groups.
W. Trevor King [Sun, 23 Nov 2008 14:50:56 +0000 (09:50 -0500)]
Go back to lazy bug loading to get execution speed back up.
Fixes bug
b3c6da51-3a30-42c9-8c75-
587c7a1705c5
W. Trevor King [Sun, 23 Nov 2008 13:43:40 +0000 (08:43 -0500)]
Improved user-id saving/loading/caching & save user-id into duplicate bugdirs.
Fixes the duplicate bugs
a403de79-8f39-41f2-b9ec-
15053b175ee2
c894f10f-197d-4b22-9c5b-
19f394df40d4
W. Trevor King [Sun, 23 Nov 2008 13:16:19 +0000 (08:16 -0500)]
Added bugdir user-id caching and save/load from settings file.
W. Trevor King [Sun, 23 Nov 2008 12:40:11 +0000 (07:40 -0500)]
`be show` now supports showing multiple bugs with a single call.
W. Trevor King [Sun, 23 Nov 2008 12:31:14 +0000 (07:31 -0500)]
Oops,
dba25cfd-aa15-457c-903a-
b53ecb5a3b2c was fixed with commit 253.
W. Trevor King [Sun, 23 Nov 2008 12:26:15 +0000 (07:26 -0500)]
Oops,
dac91856-cb6a-4f69-8c03-
38ff0b29aab2 was fixed with commit 242.
W. Trevor King [Sun, 23 Nov 2008 12:19:36 +0000 (07:19 -0500)]
Fixed "'NoneType' object is not callable" error in libbe/utility/Dir.__del__
W. Trevor King [Sun, 23 Nov 2008 11:51:30 +0000 (06:51 -0500)]
Added archive/project init code for `./test_usage.sh arch`.
Also some minor cleanups.
W. Trevor King [Sun, 23 Nov 2008 00:45:37 +0000 (19:45 -0500)]
Explicit rcs.cleanup() in bugdir test.
Don't use del(rcs), because if there was an error, there is still a
reference to rcs in the traceback, so it is never cleaned up. This
can leave the external archive cluttering up your Arch install if
you're using the Arch backend. See the __del__ documentation
http://python.active-venture.com/ref/customization.html#l2h-175
for details.
Also fixed some out-of-date method names in libbe.diff
W. Trevor King [Sat, 22 Nov 2008 21:46:42 +0000 (16:46 -0500)]
libbe.utility.Dir was complaining of a missing shutil in __del__().
Presumably the cleanup process removed shutil before cleaning up the Dir.
Now Dir keeps a local reference.
W. Trevor King [Sat, 22 Nov 2008 21:30:24 +0000 (16:30 -0500)]
Oops, bug
8e83da06-26f1-4763-a972-
dae7e7062233 was fixed by commit 254.
W. Trevor King [Sat, 22 Nov 2008 21:15:16 +0000 (16:15 -0500)]
Created and fixed bug
496edad5-1484-413a-bc68-
4b01274a65eb.
I figured out why Arch was complaining. For non-Arch users, file
system access has been tweaked a bit see the BugDir doc string for
details. Also, you should now set BugDir.rcs instead of .rcs_name.
.rcs_name automatically tracks changes in .rcs (the reverse of the
previous situation), so read from whichever you like.
W. Trevor King [Sat, 22 Nov 2008 21:14:04 +0000 (16:14 -0500)]
Oops, these new submods are used by the new, classified Bug & BugDir.
I'd forgotten tell bzr...
W. Trevor King [Fri, 21 Nov 2008 19:56:05 +0000 (14:56 -0500)]
Another major rewrite. Now BugDir, Bug, and Comment are more distinct.
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.
W. Trevor King [Thu, 20 Nov 2008 00:47:46 +0000 (19:47 -0500)]
Updated misc/gui/wxbe with wxPython -> wx changes.
I'd like to be able to sort the bugs by clicking on the various column
titles, but I don't know enough about wxPython to pull it off. After
wrestling with it for a bit, I realized that I'll only be using the
command line interface anyway, and other people can use the web
interface. Probably a common feeling, which would explain why the
GUIs feel so abandoned ;).
At any rate, I think the effects of turning the RCSs into classes have
been passed through and stabilized, so my churning should decrease...
W. Trevor King [Thu, 20 Nov 2008 00:47:00 +0000 (19:47 -0500)]
names.creator() replaced by rcs.get_user_id().
W. Trevor King [Wed, 19 Nov 2008 17:02:23 +0000 (12:02 -0500)]
Some more fixes to get BE-Web working with libbe changes.
W. Trevor King [Wed, 19 Nov 2008 16:55:40 +0000 (11:55 -0500)]
Added identity discussion to BE-Web README.txt & require login to edit bugs.
W. Trevor King [Wed, 19 Nov 2008 16:12:43 +0000 (11:12 -0500)]
Added BE-Web repo-access warning to Bugs-Everywhere-Web/README.txt.
W. Trevor King [Wed, 19 Nov 2008 13:31:45 +0000 (08:31 -0500)]
Updated Bugs-Everywhere-Web to work with new architecture.
W. Trevor King [Wed, 19 Nov 2008 13:05:17 +0000 (08:05 -0500)]
Merged bug.new_comment into bug.Bug.new_comment.
W. Trevor King [Wed, 19 Nov 2008 12:57:57 +0000 (07:57 -0500)]
Moved bug.new_bug code into bugdir.BugDir.new_bug.
Also removed explicit comparisons from beweb/controllers.py, since
they are now built into the Bug.__cmp__ method.
W. Trevor King [Wed, 19 Nov 2008 12:45:36 +0000 (07:45 -0500)]
Added test_usage.sh pointer to the README.
W. Trevor King [Wed, 19 Nov 2008 12:40:47 +0000 (07:40 -0500)]
Removed libbe/tests.py
Not needed with stronger test.py. It's only use would be testing an
installed libbe in place... Maybe that is useful enough? If so, we
can bring it back.
W. Trevor King [Wed, 19 Nov 2008 01:51:16 +0000 (20:51 -0500)]
One of my tests left my bzr name as John Doe. Seems to be fixed now.
I checked with
$ python test.py
...
$ ./test_usage.py
...
$ hg showconfig | grep ui.username && bzr whoami
$ git config user.name && git config user.email && tla my-id
W. Trevor King [Wed, 19 Nov 2008 01:42:50 +0000 (20:42 -0500)]
Major rewrite of RCS backends. RCS now represented as a class.
Lots of changes and just one commit. This started with bug
dac91856-cb6a-4f69-8c03-
38ff0b29aab2, when I noticed that new bugs
were not being added appropriately with the Git backend. I'd been
working with Git trouble before with bug
0cad2ac6-76ef-4a88-abdf-
b2e02de76f5c, and decided things would be
better off if I just scrapped the current RCS architecture and went to
a more object oriented setup. So I did. It's not clear how to add
support for an RCS backend:
* Create a new module that
- defines an inheritor of rsc.RCS, overriding the _rcs_*() methods
- provide a new() function for instantizating the new class
- defines an inheritor of rcs.RCStestCase, overiding the Class attribute
- defines 'suite' a unittest.TestSuite testing the module
* Add your new module to the rest in rcs._get_matching_rcs()
* Add your new module to the rest in libbe/tests.py
Although I'm not sure libbe/tests.py is still usefull.
The new framework clears out a bunch of hackery that used to be
involved with supporting becommands/diff.py. There's still room for
progress though. While implementing the new verision, I moved the
testing framework over from doctest to a doctest/unittest combination.
Longer tests that don't demonstrate a function's usage should be moved
to unittests at the end of the module, since unittest has better
support for setup/teardown, etc.
The new framework also revealed some underimplented backends, most
notably arch. These backends have now been fixed.
I also tweaked the test_usage.sh script to run through all the backends
if it is called with no arguments.
The fix for the dac bug turned out to be an unflushed file write :p.
W. Trevor King [Sun, 16 Nov 2008 20:59:41 +0000 (15:59 -0500)]
Added 'hg', 'arch', and 'none' RCS modes to test_usage.sh.
W. Trevor King [Sun, 16 Nov 2008 20:37:14 +0000 (15:37 -0500)]
Fixed another bug in git.strip_git() (bug 0cad).
Also added git mode to test_usage.sh.
I'll go through and add modes for the other RCSs...
W. Trevor King [Sun, 16 Nov 2008 19:55:55 +0000 (14:55 -0500)]
Oops, I'd forgotten to tell bzr about my becommands/remove.py.
W. Trevor King [Sun, 16 Nov 2008 19:54:52 +0000 (14:54 -0500)]
Merged in my git.py changed fixing Hubert Chathi's git set-root bug (0cad).
W. Trevor King [Sun, 16 Nov 2008 19:47:16 +0000 (14:47 -0500)]
Added ./test_usage.sh as an example usage scenario.
It is also a good integration test.
W. Trevor King [Sun, 16 Nov 2008 19:35:53 +0000 (14:35 -0500)]
Removed dud bug 11e. Moved several bugs from 'closed' to 'fixed'.
W. Trevor King [Sun, 16 Nov 2008 19:32:19 +0000 (14:32 -0500)]
Fix Bug.string() handling of None times.
W. Trevor King [Sun, 16 Nov 2008 19:14:49 +0000 (14:14 -0500)]
Removed the empty bugs 14c and 38b. Fixed bug.string() call in libbe/diff.py.
W. Trevor King [Sun, 16 Nov 2008 19:12:06 +0000 (14:12 -0500)]
Added 'remove' command to remove bugs. Use __desc__ for command help.
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.
W. Trevor King [Sat, 15 Nov 2008 23:53:45 +0000 (18:53 -0500)]
Fixed '-' parsing bug for list --assigned option.
W. Trevor King [Sat, 15 Nov 2008 23:48:08 +0000 (18:48 -0500)]
Fixed some errors produced while moving bug_summary to Bug.string().
W. Trevor King [Sat, 15 Nov 2008 23:35:41 +0000 (18:35 -0500)]
Moved libbe.cmdutil.bug_summary() to libbe.bug.Bug.string().
This seems like a natual place for a function that only operates on Bugs.
W. Trevor King [Sat, 15 Nov 2008 23:31:04 +0000 (18:31 -0500)]
Removed libbe/template.
This file is not used anywhere, and appears to be an outdated version
of libbe/diff.py.
W. Trevor King [Sat, 15 Nov 2008 21:17:05 +0000 (16:17 -0500)]
becommands/show.py gives more specific bug information.
W. Trevor King [Sat, 15 Nov 2008 20:48:30 +0000 (15:48 -0500)]
Generalized becommands/list.py to allow more specific bug searches.
W. Trevor King [Sat, 15 Nov 2008 01:34:57 +0000 (20:34 -0500)]
Fixed a few more Comment.date->time calls.
Bug keeps timestamps in Bug.time, so working towards consitency for
Comment.
W. Trevor King [Sat, 15 Nov 2008 01:32:15 +0000 (20:32 -0500)]
Removerd the diff3 functions from mapfile.py.
They don't seem to be used anywhere...
W. Trevor King [Sat, 15 Nov 2008 01:21:29 +0000 (20:21 -0500)]
Fixed some bug.py split effects in diff.py
Also added 'disabled' status back in so diff doesn't choke trying to
load the older versions... Ugly hack, but I don't want to change the
past ;).
W. Trevor King [Sat, 15 Nov 2008 00:25:44 +0000 (19:25 -0500)]
Split Bug and Comment class out to bug.py from bugdir.py
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.
W. Trevor King [Fri, 14 Nov 2008 05:32:38 +0000 (00:32 -0500)]
Changed __get/setattribute__ calls to get/setattr() calls.
See
http://www.python.org/doc/2.5.2/lib/built-in-funcs.html#l2h-33
http://www.python.org/doc/2.5.2/lib/built-in-funcs.html#l2h-66
W. Trevor King [Fri, 14 Nov 2008 05:24:08 +0000 (00:24 -0500)]
Replaced libbe.arch.invoke() with general rcs.invoke()
W. Trevor King [Fri, 14 Nov 2008 05:23:09 +0000 (00:23 -0500)]
Added caveat about using short bug names to unique_name().
W. Trevor King [Fri, 14 Nov 2008 05:10:44 +0000 (00:10 -0500)]
Cleaned up and docstringed libbe.cmdutil.unique_name().
Now the first bug will have a 3 char short name (used to be one char,
with the second bug having a 3 char name).
W. Trevor King [Fri, 14 Nov 2008 05:03:04 +0000 (00:03 -0500)]
Remove blank lines from `be list' output
W. Trevor King [Fri, 14 Nov 2008 05:00:51 +0000 (00:00 -0500)]
Closed bug 210 (target options not parsed).
I imagine this has been fixed for a while...
W. Trevor King [Thu, 13 Nov 2008 20:27:07 +0000 (15:27 -0500)]
Oops... *Now* I've fixed 0cad
W. Trevor King [Thu, 13 Nov 2008 19:31:49 +0000 (14:31 -0500)]
Fixed 0cad bug with smaller fix.
Hubert Chathi's fix was confusing for me, so I made a simpler change.
Seems to work so far. The problem was that
os.path.dirname('filename')
returns an empty string ('') if there are no directories in the
filename. So when `git rev-parse --git-dir` returned '.git', os
returned ''. Later programs didn't recognize '' as a valid directory
and crashed. My fix returns '.' in this case, so we don't crash,
and avoid having to use full paths. I'm not sure why I don't want
to use full paths; they just give me bad vibes...
W. Trevor King [Thu, 13 Nov 2008 19:19:38 +0000 (14:19 -0500)]
Added Hubert Chathi's git set-root bug report.
Bug report patch from
http://void.printf.net/pipermail/be-devel/attachments/
20080623/
49500aaf/0cad.bin
Reporting thread
[Be-devel] Re: set-root in git repository fails
Hubert Chathi hubert at uhoreg.ca
Tue Jun 24 03:49:23 BST 2008
http://void.printf.net/pipermail/be-devel/2008-June/000038.html
W. Trevor King [Thu, 13 Nov 2008 18:47:33 +0000 (13:47 -0500)]
Merge from main branch
W. Trevor King [Thu, 13 Nov 2008 18:10:13 +0000 (13:10 -0500)]
* use python2.4/2.5 compatible import of ElementTree
* catch Popen() calls to missing VCS binaries
* test.py should only test installed backends
W. Trevor King [Thu, 13 Nov 2008 17:31:40 +0000 (12:31 -0500)]
Updated imports to handle Python 2.5 ElementTree module.
Opened, fixed, and closed as bug 31c.
W. Trevor King [Thu, 13 Nov 2008 16:40:06 +0000 (11:40 -0500)]
Created bug c4e. Wrote a simple (an hopefully correct) be/test.py docstring.
W. Trevor King [Thu, 13 Nov 2008 16:30:18 +0000 (11:30 -0500)]
Created late bug report for Popen OSError catches
W. Trevor King [Thu, 13 Nov 2008 14:02:22 +0000 (09:02 -0500)]
Catch OSErrors from Popen()s
From the subprocess module documentation:
http://www.python.org/doc/2.5.2/lib/node530.html
"The most common exception raised is OSError. This occurs, for example,
when trying to execute a non-existent file. Applications should prepare
for OSError exceptions."
And from the os module documentation:
http://www.python.org/doc/2.5.2/lib/module-os.html
"exception error
This exception is raised when a function returns a system-related
error (not for illegal argument types or other incidental
errors). This is also known as the built-in exception OSError. The
accompanying value is a pair containing the numeric error code
from errno and the corresponding string, as would be printed by
the C function perror(). See the module errno, which contains
names for the error codes defined by the underlying operating
system.
When exceptions are classes, this exception carries two
attributes, errno and strerror. The first holds the value of the C
errno variable, and the latter holds the corresponding error
message from strerror(). For exceptions that involve a file system
path (such as chdir() or unlink()), the exception instance will
contain a third attribute, filename, which is the file name passed
to the function."
I turned this up running be/test.py, when it defaulted to the tla client
which I didn't have installed. I don't have things working yet, so I
can't create a bug at the moment...
Chris Ball [Fri, 16 May 2008 19:25:59 +0000 (15:25 -0400)]
Don't require python2.4 for "be".
Chris Ball [Fri, 16 May 2008 19:25:16 +0000 (15:25 -0400)]
Require editbugs permission to edit bugs. Patch from j@oil21.org.
Chris Ball [Fri, 16 May 2008 19:20:54 +0000 (15:20 -0400)]
Apply patches from j@oil21.org, Ben Finney, Jelmer Vernooij.
Chris Ball [Fri, 16 May 2008 18:43:02 +0000 (14:43 -0400)]
Add GIT support, from Chris Ball and Michael Stone.
Jelmer Vernooij [Wed, 14 May 2008 12:40:18 +0000 (14:40 +0200)]
Fix branding: Bazaar-NG -> Bazaar.
Jelmer Vernooij [Wed, 14 May 2008 12:40:06 +0000 (14:40 +0200)]
Make setup.py executable.
Ben Finney [Fri, 18 Apr 2008 10:08:49 +0000 (20:08 +1000)]
Makefile: Add with 'clean' target.
j^ [Mon, 14 Apr 2008 16:43:33 +0000 (18:43 +0200)]
Bugs-Everywhere-Web works with python2.5 do not hardcode python2.4
Aaron Bentley [Mon, 30 Jul 2007 14:47:43 +0000 (10:47 -0400)]
Assume commit messages are in utf-8 for now...
Aaron Bentley [Mon, 16 Jul 2007 17:33:06 +0000 (13:33 -0400)]
Add support for VISUAL
Aaron Bentley [Mon, 16 Jul 2007 16:22:59 +0000 (12:22 -0400)]
Ensure that Arch tests have a user id set
Aaron Bentley [Mon, 16 Jul 2007 15:24:03 +0000 (11:24 -0400)]
Clarify VISUAL meaning
Aaron Bentley [Sun, 15 Jul 2007 16:45:25 +0000 (12:45 -0400)]
Add setup-tables script
Aaron Bentley [Sun, 15 Jul 2007 16:45:06 +0000 (12:45 -0400)]
Add bug report from Jelmer
Aaron Bentley [Sun, 15 Jul 2007 16:43:30 +0000 (12:43 -0400)]
Merge from panometrics
Jelmer Vernooij [Sun, 15 Jul 2007 13:35:07 +0000 (16:35 +0300)]
New bug.
Aaron Bentley [Mon, 5 Feb 2007 22:00:40 +0000 (17:00 -0500)]
Fix long lines
Aaron Bentley [Mon, 5 Feb 2007 21:59:52 +0000 (16:59 -0500)]
More Mercurial support
Aaron Bentley [Mon, 5 Feb 2007 21:35:50 +0000 (16:35 -0500)]
Get beweb mostly working
Aaron Bentley [Tue, 23 Jan 2007 20:30:02 +0000 (15:30 -0500)]
Add support for Mercurial (Steve Borho)
Aaron Bentley [Tue, 5 Dec 2006 21:08:03 +0000 (16:08 -0500)]
Mostly upgrade to turbogears 1.0b1
Aaron Bentley [Tue, 5 Dec 2006 17:30:04 +0000 (12:30 -0500)]
Add top_level.txt
Aaron Bentley [Tue, 17 Oct 2006 19:26:02 +0000 (15:26 -0400)]
Disable commit behavior because it's not reliable
Aaron Bentley [Tue, 17 Oct 2006 19:24:53 +0000 (15:24 -0400)]
New bugs
Aaron Bentley [Tue, 5 Sep 2006 17:15:06 +0000 (13:15 -0400)]
Fix double-invocation bug
Aaron Bentley [Fri, 11 Aug 2006 16:07:10 +0000 (12:07 -0400)]
Merge changes from Belchenko
Alexander Belchenko [Fri, 11 Aug 2006 15:25:36 +0000 (18:25 +0300)]
line-endings in .bzrignore