aboutsummaryrefslogtreecommitdiffstats
path: root/libbe/storage
Commit message (Collapse)AuthorAgeFilesLines
* command:serve-storage: rename `be serve` -> `be serve-storage`.W. Trevor King2012-08-291-5/+5
| | | | | | | | | | This will help avoid confusion between be serve-storage and be serve-commands
* util:wsgi: add BEExceptionApp for translating storage exceptions.W. Trevor King2012-08-291-1/+3
| | | | | | This fixes .test_get_initial_value for the HTTP backend, because the tests use TestingHTTP.getURL, which only catch HandlerError, not the more specific storage exceptions.
* Allow symlinks in bugdir directories.W. Trevor King2012-08-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This allows you to do things like: $ mkdir -p /tmp/joint-repo/.be $ cd /tml/joint-repo/.be $ ln -s ~/src/be/.be/version $ ln -s ~/src/be/.be/bea86499-824e-4e77-b085-2d581fa9ccab/ $ ln -s ~/src/BEurtle/.be/7017b289-f207-4e39-9746-f58323404eba/ $ be list without crashing with a: Traceback (most recent call last): File ".../libbe/storage/base.py", line 316, in children return self._children(*args, **kwargs) File ".../libbe/storage/vcs/base.py", line 820, in _children path = self.path(id, revision, relpath=False) File ".../libbe/storage/vcs/base.py", line 721, in path path = self._cached_path_id.path(id) File ".../libbe/storage/vcs/base.py", line 280, in path raise InvalidID(uuid) libbe.storage.base.InvalidID: 7017b289-f207-4e39-9746-f58323404eba in revision None Currently it only lists the first bug directory it comes across, but after this patch, it doesn't crash ;).
* libbe:util:wsgi: extract WSGI utilities into a separate module.W. Trevor King2012-08-271-2/+8
|
* util:http: pull HTTP helpers from libbe.storage.http into their own module.W. Trevor King2012-08-241-103/+11
| | | | This way they can be shared with the upcoming Command._run_remote.
* storage:http: use an explicit relative import for base.W. Trevor King2012-08-241-2/+3
|
* storage:http: adjust HTTPError message in get_post_url.W. Trevor King2012-08-241-2/+2
| | | | | | 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.
* storage:http: add agent argument to get_post_url.W. Trevor King2012-08-241-2/+4
| | | | | This allows us to set an appropriate user agent if we use this function in other places (e.g. upcoming Command._run_remote).
* storage:vcs:hg: remove grandchildren from Hg._vcs_listdir.W. Trevor King2012-08-231-1/+4
| | | | | | | | | | | | | | | 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). ...
* storage:base: add tests to catch grandchildren in .children() output.W. Trevor King2012-08-231-1/+51
| | | | | | | | | | | 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.
* storage:vcs:hg: fix missformed file_a -> file_b message typo.W. Trevor King2012-08-231-1/+1
|
* Ran update-copyright.py.W. Trevor King2012-02-1616-160/+160
|
* Fix my busted 1512c0e2a64e patch to libbe/util/encoding.py.W. Trevor King2011-11-132-4/+4
| | | | | | | | | | | | | | 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.
* Ran update_copyright.py.W. Trevor King2011-11-092-0/+2
|
* Oops, that forgot the equals part of Mercurial 1.9 or greater.W. Trevor King2011-09-071-1/+1
|
* Adjust Mercurial execution so it works with version 1.9 and earlier.W. Trevor King2011-09-071-3/+9
| | | | | | | 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.
* Move Bzr.version_cmp to VCS.version_cmp.W. Trevor King2011-09-072-92/+91
| | | | The version comparison code will be useful for all VCSs.
* Merge remote branch 'pschumms/master'W. Trevor King2011-09-071-6/+4
|\
| * Fixed problem with Hg support under version 1.9 ↵Phil Schumm2011-07-281-6/+4
| | | | | | | | (mercurial.dispatch.dispatch() now takes a single request object with option for capturing output stream)
* | Remove redundant re import from previous bzr version_cmp patch.W. Trevor King2011-09-071-1/+0
| |
* | Enhance Bzr.version_cmp to handle non-numeric versionsMichel Alexandre Salim2011-09-071-9/+50
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | bugseverywhere.org has changed URL handling, so use different URLs for HTTP ↵W. Trevor King2011-07-301-3/+3
|/ | | | testing.
* Run update_copyright.py.W. Trevor King2011-05-2515-9/+24
|
* Use open() instead of file() in CachedPathID doctests (2to3 compatability).W. Trevor King2011-05-121-3/+3
|
* Remove form feeds (for compatibility with 2to3).W. Trevor King2011-05-127-7/+7
|
* Add --notify to `be serve`.W. Trevor King2011-04-161-0/+1
|
* Fix typo libbe.storage.serve -> libbe.command.serve in libbe.storage.http ↵W. Trevor King2011-04-161-2/+2
| | | | comments.
* Add libbe.ui.util.user.get_fallback_fullname() and use pwd when possible.W. Trevor King2011-04-142-2/+2
| | | | This patch is based on Julien Muchembled's pwd suggestions.
* Work around bzr filelocking issue on Windows.W. Trevor King2011-02-242-2/+7
|
* Local imports and better missing-client detection in client-based VCS classes.W. Trevor King2011-02-224-20/+33
|
* Correct version for recent bzrlib fix.W. Trevor King2011-02-221-9/+9
| | | | | | | | | | | | | | | Rather than guessing from the output of `bzr tags`, I actually looked in the realease notes and tracked the removal of run_direct() to 2.2b2, which is confirmed by the r5146 patch itself: bzr.dev $ ./bzr log -p -n 0 -r 5146 | grep -1 deprec + + @deprecated_method(deprecated_in((2, 2, 0))) def run_direct(self, *args, **kwargs): -- + + @deprecated_method(deprecated_in((2, 2, 0))) def run_direct(self, *args, **kwargs):
* Don't call cmd.cleanup_now() for recent Bazaar versions.W. Trevor King2011-02-221-9/+18
| | | | | | | | | | | | | | | | | | | Bug reported by Michael Chaffin: > C:\XXX\ZZZ>be init > Traceback (most recent call last): > ... > AttributeError: 'cmd_root' object has no attribute '_operation' Due to changes in bzrlib: revno: 5146 [merge] committer: Canonical.com Patch Queue Manager <pqm@pqm.ubuntu.com> branch nick: +trunk timestamp: Mon 2010-04-12 04:09:46 +0100 So for versions of bzr since then, we don't have to worry about calling cleanup_now() anymore.
* Merge commit 'refs/merge-requests/3' of git://gitorious.org/be/beChris Ball2011-01-081-1/+1
|\
| * Refrain from committing outstanding changes.Robert Lehmann2010-11-211-1/+1
| | | | | | | | This makes be-commit act more like git-commit.
* | Bumped to version 1.0.01.0.0Chris Ball2011-01-0816-16/+17
| |
* | Make libbe.storage.vcs.darcs.Darcs._vcs_listdir() more robust.W. Trevor King2010-12-061-2/+3
| | | | | | | | | | | | | | | | | | | | The old version returned [] (for Darcs 2.5) on darcs show files --no-files --patch 'Initial commit' .be (called in `be diff` for `test_usage.sh darcs`), because darcs returned the paths prefixed with './' (e.g. `./.be`, not `.be`). By calculating relative paths and using the relative paths to determine which files belong to the directory, we can handle both prefixed and plain paths.
* | Run cmd.cleanup_now() after executing bzr commands.W. Trevor King2010-12-061-0/+10
|/ | | | | | | | | | | | | | | Otherwise be remove ... blocks if it needs to remove multiple files, since bzrlib.builtins.cmd_remove needs write locks, and the second remove will try to aquire the lock that the first aquire hadn't released. If we force the release, the lock will be available for the second (and later) removal. It's not a problem to call cleanup_now() too often, because calling it clears the cleanup command stack, so I just added explicit cleanups after every bzr .run() call.
* Ran update_copyright.py.W. Trevor King2010-10-211-1/+1
|
* Strip all whitespace from right side of the VCS storage version string.W. Trevor King2010-09-051-1/+1
| | | | The old method failed with Windows-style \r\n endlines, etc.
* Remove useless children[i] from libbe.storage.vcs.base.VCS._children().W. Trevor King2010-09-051-1/+0
|
* Don't assume len(os.path.sep) == 1 in libbe.storage.vcs.base.W. Trevor King2010-09-051-4/+4
|
* Ah, restored altered dirname code to Monotone's root method.W. Trevor King2010-06-271-1/+5
| | | | | | | | | | | | The previous implementation used cwd=path which would fail for non-directory paths. The implementation before that was missing the not from if not os.path.isdir(path): dirname = os.path.dirname(path) which meant it found the dirname when it didn't need to, and not when it did ;).
* Fixed Monotone driver rooting for interface versions >= 8.0.W. Trevor King2010-06-271-11/+8
| | | | | | | I'm not sure where the dirname manipulation came from, but it was screwing things up ;). Also some argument order and indentation cleanups.
* Use _invoke_client (vs. old _u_invoke_client) for Monotone get_workspace_root.W. Trevor King2010-06-261-1/+1
| | | | | | | | | | | | | | | | This fixes Chris' ====================================================================== ERROR: Adding entries with the same ID should not increase the number of children. ---------------------------------------------------------------------- Traceback (most recent call last): ... CommandError: Command failed (1): mtn: misuse: workspace required but not found while executing ['mtn', 'automate', 'get_workspace_root']
* Add a Storage driver for the Monotone VCSW. Trevor King2010-06-262-1/+371
|
* Fix failure message 'X.get' -> 'X.children' in VersionedStorage ↵W. Trevor King2010-06-261-1/+1
| | | | test_get_previous_children
* Removed libbe.storage.vcs.base._get_versionW. Trevor King2010-06-263-21/+14
| | | | | | | | It had been catching exceptions from ._vcs_version, but ._vcs_version should catch its own exceptions. Also use cached results from .version in Darcs and Bzr.version_cmp() rather than calling ._vcs_version directly.
* Ran update_copyright.pyW. Trevor King2010-06-2216-172/+189
|
* Darcs should look in ~/.darcs/author not ~/.darcs/prefs/authorwking2010-06-221-3/+3
| | | | | From: http://darcs.net/manual/node7.html#env:DARCS_EMAIL
* Darcs._vcs_get_user_id() now also checks ~/.darcs/prefs/author|email.wking2010-06-221-4/+6
| | | | Thanks to Gour for pointing out that it should.