| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Now that my pull request has been accepted, we can be fairly confident
that future releases of pygit2 will expose this attribute. The
accepted patch was a bit different from the original submission:
Add 'pygit2.__version__' for easy access from client software.
https://github.com/libgit2/pygit2/pull/128
commit f10d2b7b3f0c67d81b175326035e4813420156bd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If `pygit2` is installed, use it (via PygitGit) rather than calling
the stand-alone `git` executable for all the Git (via ExecGit) for all
the Git storage stuff. This saves one serializing/deserializing and
process setup/teardown. I timed each test suite by commenting out one
of the `make_vcs_testcase_subclasses()` calls at the end of `git.py`
and running
$ time python test.py libbe.storage.vcs.git
The ExecGit tests ran in 13.7s and the PygitGit tests ran in 3.6s for
a 3.8x speedup.
I had to stretch pygit2 a bit to get a clean fit, so if you want to
test this, you'll need to build pygit2 with the following merge
requests:
Add 'pygit2.__version__' for easy access from client software.
https://github.com/libgit2/pygit2/pull/128
commit 0238fb72dfdf2a2308f2da347717cbaafddc4b83
signature: Add keyword argument parsing to Signature().
https://github.com/libgit2/pygit2/pull/129
commit c934858b629f40221406f34166dd77e881b9d5fd
repository: add Repository.revparse_single()
https://github.com/libgit2/pygit2/pull/131
commit 3afdc8b2f59ed137531671fedde36f3a39cbcc9d
|
|
|
|
|
| |
VCS_get_user_id_TestCase.test_gets_existing_user_id is now
VCS_get_user_id_TestCase.test_get_existing_user_id
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 ;).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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).
...
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
The version comparison code will be useful for all VCSs.
|
|\ |
|
| |
| |
| |
| | |
(mercurial.dispatch.dispatch() now takes a single request object with option for capturing output stream)
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
| |
|
| |
|
|
|
|
| |
This patch is based on Julien Muchembled's pwd suggestions.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|\ |
|
| |
| |
| |
| | |
This makes be-commit act more like git-commit.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
The old method failed with Windows-style \r\n endlines, etc.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 ;).
|
|
|
|
|
|
|
| |
I'm not sure where the dirname manipulation came from, but it
was screwing things up ;).
Also some argument order and indentation cleanups.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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']
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
From:
http://darcs.net/manual/node7.html#env:DARCS_EMAIL
|
|
|
|
| |
Thanks to Gour for pointing out that it should.
|
| |
|
| |
|
| |
|