aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/rcs.py
Commit message (Collapse)AuthorAgeFilesLines
* Added 'allow_no_rcs' flag to RCS file system access methods.W. Trevor King2008-11-241-23/+86
| | | | | Now mapfile access has fewer special cases, and there is less redundant rcs.add/update code.
* Created bugdir.MultipleBugMatches so bugdir no longer imports cmdutil.W. Trevor King2008-11-231-1/+0
|
* Added bugdir user-id caching and save/load from settings file.W. Trevor King2008-11-231-1/+5
|
* Created and fixed bug 496edad5-1484-413a-bc68-4b01274a65eb.W. Trevor King2008-11-221-5/+11
| | | | | | | | 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.
* Another major rewrite. Now BugDir, Bug, and Comment are more distinct.W. Trevor King2008-11-211-22/+25
| | | | | | | | | | | | | | | 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.
* Major rewrite of RCS backends. RCS now represented as a class.W. Trevor King2008-11-181-45/+533
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * use python2.4/2.5 compatible import of ElementTreeW. Trevor King2008-11-131-6/+10
| | | | | * catch Popen() calls to missing VCS binaries * test.py should only test installed backends
* Add GIT support, from Chris Ball and Michael Stone.Chris Ball2008-05-161-0/+6
|
* Add support for Mercurial (Steve Borho)Aaron Bentley2007-01-231-0/+6
|
* Fix double-invocation bugAaron Bentley2006-09-051-1/+0
|
* Merge changes from BelchenkoAaron Bentley2006-08-111-0/+8
|\
| * subprocess: win32 don't have os.execvp() so have to run command in a shellAlexander Belchenko2006-07-191-1/+7
| |
* | Use subprocess-native functionality for changing directoryAaron Bentley2006-07-191-2/+2
| |
* | Use Popen.communicate instead of reading the individual streams (why needed?)Aaron Bentley2006-07-191-3/+2
|/
* Got commit basics working for bzrAaron Bentley2006-02-031-0/+16
|
* Added appropriate copyright notices, GPLed.Aaron Bentley2005-05-161-0/+16
|
* Support for bzr inventory operationsAaron Bentley2005-05-041-0/+6
|
* Added RCS configuration.Aaron Bentley2005-03-191-17/+15
|
* Switched tree format to mapfile-basedAaron Bentley2005-03-171-2/+6
|
* Added RCS integrationAaron Bentley2005-03-091-0/+14