summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarien Zwart <marienz@gentoo.org>2006-05-25 01:40:53 +0000
committerMarien Zwart <marienz@gentoo.org>2006-05-25 01:40:53 +0000
commit625994a0bebc228e8b15f753ba4969bd8064a1e0 (patch)
tree6fec49e56902a45d1766890ccaaf64c2567e71ac /dev-util/bzr
parentVersion bump with new ruby bindings. Now also builds the java bindings if req... (diff)
downloadgentoo-2-625994a0bebc228e8b15f753ba4969bd8064a1e0.tar.gz
gentoo-2-625994a0bebc228e8b15f753ba4969bd8064a1e0.tar.bz2
gentoo-2-625994a0bebc228e8b15f753ba4969bd8064a1e0.zip
Add a patch from upstream for "bzr push" pushing too much. Do not include the .el extension when loading bzr-mode so the .elc gets picked up.
(Portage version: 2.1_rc2-r2)
Diffstat (limited to 'dev-util/bzr')
-rw-r--r--dev-util/bzr/ChangeLog10
-rw-r--r--dev-util/bzr/bzr-0.8.2-r1.ebuild72
-rw-r--r--dev-util/bzr/files/70bzr-gentoo.el2
-rw-r--r--dev-util/bzr/files/bzr-0.8.2-push-repository.patch90
-rw-r--r--dev-util/bzr/files/digest-bzr-0.8.2-r13
5 files changed, 175 insertions, 2 deletions
diff --git a/dev-util/bzr/ChangeLog b/dev-util/bzr/ChangeLog
index 32dcd362e556..9901b6e60161 100644
--- a/dev-util/bzr/ChangeLog
+++ b/dev-util/bzr/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-util/bzr
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/bzr/ChangeLog,v 1.15 2006/05/17 17:03:13 marienz Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/bzr/ChangeLog,v 1.16 2006/05/25 01:40:53 marienz Exp $
+
+*bzr-0.8.2-r1 (25 May 2006)
+
+ 25 May 2006; Marien Zwart <marienz@gentoo.org>
+ +files/bzr-0.8.2-push-repository.patch, files/70bzr-gentoo.el,
+ +bzr-0.8.2-r1.ebuild:
+ Add a patch from upstream for "bzr push" pushing too much. Do not include
+ the .el extension when loading bzr-mode so the .elc gets picked up.
*bzr-0.8.2 (17 May 2006)
diff --git a/dev-util/bzr/bzr-0.8.2-r1.ebuild b/dev-util/bzr/bzr-0.8.2-r1.ebuild
new file mode 100644
index 000000000000..af768580ee94
--- /dev/null
+++ b/dev-util/bzr/bzr-0.8.2-r1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/bzr/bzr-0.8.2-r1.ebuild,v 1.1 2006/05/25 01:40:53 marienz Exp $
+
+inherit distutils bash-completion elisp-common eutils
+
+DESCRIPTION="next generation distributed version control"
+HOMEPAGE="http://bazaar-vcs.org/"
+SRC_URI="http://bazaar-vcs.org/pkg/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+IUSE="emacs"
+
+DEPEND=">=dev-lang/python-2.4
+ dev-python/celementtree
+ emacs? ( virtual/emacs )
+ >=dev-python/paramiko-1.5"
+
+PYTHON_MODNAME="bzrlib"
+
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # Install manpage in /usr/share/man instead of /usr/man
+ epatch "${FILESDIR}/${PN}-0.8-fix-manpage-location.patch"
+
+ # Make the tests and paramiko-1.6 cooperate better (applied upstream)
+ epatch "${FILESDIR}/${P}-paramiko-1.6-compat.patch"
+
+ # Make pushing a branch in a repo not push the entire repo (from upstream)
+ epatch "${FILESDIR}/${P}-push-repository.patch"
+}
+
+src_compile() {
+ distutils_src_compile
+ if use emacs; then
+ elisp-compile contrib/emacs/bzr-mode.el || die "Emacs modules failed!"
+ fi
+}
+
+src_install() {
+ distutils_src_install
+ if use emacs; then
+ insinto "${SITELISP}"
+ doins contrib/emacs/bzr-mode.el*
+ elisp-site-file-install "${FILESDIR}/70bzr-gentoo.el"
+ fi
+ insinto /usr/share/zsh/site-functions
+ doins contrib/zsh/_bzr
+ dobashcompletion contrib/bash/bzr
+}
+
+pkg_postinst() {
+ distutils_pkg_postinst
+ use emacs && elisp-site-regen
+ bash-completion_pkg_postinst
+}
+
+pkg_postrm() {
+ distutils_pkg_postrm
+ # regenerate site-gentoo if we are merged USE=emacs and unmerged
+ # USE=-emacs
+ has_version virtual/emacs && elisp-site-regen
+}
+
+src_test() {
+ "${python}" bzr --no-plugins selftest || die "bzr selftest failed"
+}
diff --git a/dev-util/bzr/files/70bzr-gentoo.el b/dev-util/bzr/files/70bzr-gentoo.el
index bd51edc6fcd2..0f31c8d0dedc 100644
--- a/dev-util/bzr/files/70bzr-gentoo.el
+++ b/dev-util/bzr/files/70bzr-gentoo.el
@@ -1,3 +1,3 @@
;;; bzr site-lisp configuration
-(load "bzr-mode.el")
+(load "bzr-mode")
diff --git a/dev-util/bzr/files/bzr-0.8.2-push-repository.patch b/dev-util/bzr/files/bzr-0.8.2-push-repository.patch
new file mode 100644
index 000000000000..86649d66dfb0
--- /dev/null
+++ b/dev-util/bzr/files/bzr-0.8.2-push-repository.patch
@@ -0,0 +1,90 @@
+=== modified file 'NEWS'
+--- NEWS
++++ NEWS
+@@ -1,3 +1,11 @@
++IN DEVELOPMENT
++
++ INTERNALS:
++
++ * 'bzr push' should only push the ancestry of the current revision, not
++ all of the history in the repository. This is especially important for
++ shared repositories. (John Arbash Meinel)
++
+ bzr 0.8.2 2006-05-17
+
+ BUG FIXES:
+
+=== modified file 'bzrlib/builtins.py'
+--- bzrlib/builtins.py
++++ bzrlib/builtins.py
+@@ -516,7 +516,8 @@
+ if new_transport.base == transport.base:
+ raise BzrCommandError("Could not create "
+ "path prefix.")
+- dir_to = br_from.bzrdir.clone(location)
++ dir_to = br_from.bzrdir.clone(location,
++ revision_id=br_from.last_revision())
+ br_to = dir_to.open_branch()
+ old_rh = br_to.revision_history()
+ try:
+
+=== modified file 'bzrlib/tests/blackbox/test_push.py'
+--- bzrlib/tests/blackbox/test_push.py
++++ bzrlib/tests/blackbox/test_push.py
+@@ -22,9 +22,12 @@
+
+ import bzrlib
+ from bzrlib.branch import Branch
++from bzrlib.bzrdir import BzrDirMetaFormat1
+ from bzrlib.osutils import abspath
++from bzrlib.repository import RepositoryFormatKnit1
+ from bzrlib.tests.blackbox import ExternalBase
+ from bzrlib.uncommit import uncommit
++from bzrlib.workingtree import WorkingTree
+
+
+ class TestPush(ExternalBase):
+@@ -80,3 +83,42 @@
+ self.assertEqual('0 revision(s) pushed.\n', err)
+ b2 = bzrlib.branch.Branch.open('pushed-location')
+ self.assertEndsWith(b2.base, 'pushed-location/')
++
++ def test_push_only_pushes_history(self):
++ # Knit branches should only push the history for the current revision.
++ format = BzrDirMetaFormat1()
++ format.repository_format = RepositoryFormatKnit1()
++ shared_repo = self.make_repository('repo', format=format, shared=True)
++ shared_repo.set_make_working_trees(True)
++
++ def make_shared_tree(path):
++ shared_repo.bzrdir.root_transport.mkdir(path)
++ shared_repo.bzrdir.create_branch_convenience('repo/' + path)
++ return WorkingTree.open('repo/' + path)
++ tree_a = make_shared_tree('a')
++ self.build_tree(['repo/a/file'])
++ tree_a.add('file')
++ tree_a.commit('commit a-1', rev_id='a-1')
++ f = open('repo/a/file', 'ab')
++ f.write('more stuff\n')
++ f.close()
++ tree_a.commit('commit a-2', rev_id='a-2')
++
++ tree_b = make_shared_tree('b')
++ self.build_tree(['repo/b/file'])
++ tree_b.add('file')
++ tree_b.commit('commit b-1', rev_id='b-1')
++
++ self.assertTrue(shared_repo.has_revision('a-1'))
++ self.assertTrue(shared_repo.has_revision('a-2'))
++ self.assertTrue(shared_repo.has_revision('b-1'))
++
++ # Now that we have a repository with shared files, make sure
++ # that things aren't copied out by a 'push'
++ os.chdir('repo/b')
++ self.run_bzr('push', '../../push-b')
++ pushed_tree = WorkingTree.open('../../push-b')
++ pushed_repo = pushed_tree.branch.repository
++ self.assertFalse(pushed_repo.has_revision('a-1'))
++ self.assertFalse(pushed_repo.has_revision('a-2'))
++ self.assertTrue(pushed_repo.has_revision('b-1'))
+
diff --git a/dev-util/bzr/files/digest-bzr-0.8.2-r1 b/dev-util/bzr/files/digest-bzr-0.8.2-r1
new file mode 100644
index 000000000000..bddfa5c5c678
--- /dev/null
+++ b/dev-util/bzr/files/digest-bzr-0.8.2-r1
@@ -0,0 +1,3 @@
+MD5 9bcfcc2a60156a5a74e247846ebe7473 bzr-0.8.2.tar.gz 720152
+RMD160 5cdbfa3f9a87fc1b999e1bef187f1e83fc7cb251 bzr-0.8.2.tar.gz 720152
+SHA256 81d982a6aa875b30e4c1ba2d1ade17b34f90fa533e815e3a744bc244745e3144 bzr-0.8.2.tar.gz 720152