summaryrefslogtreecommitdiff
path: root/devel/bzr-fastimport/files/patch-deletion-case
diff options
context:
space:
mode:
authorRene Ladan <rene@FreeBSD.org>2020-11-15 18:37:28 +0000
committerRene Ladan <rene@FreeBSD.org>2020-11-15 18:37:28 +0000
commita1d58205a00f8ab1c844ef5a4dc33ef603a86764 (patch)
tree71d50e391310cf9197c961ad0ec0d62675323815 /devel/bzr-fastimport/files/patch-deletion-case
parentaudio/gsequencer: Update 3.5.16 -> 3.6.14 (diff)
Remove expired ports:
2020-11-15 archivers/py-pyliblzma: Uses deprecated version of python 2020-11-15 databases/postgis23: Upstream no longer maintained 2020-11-15 databases/py-htsql: Uses deprecated version of python 2020-11-15 devel/bzr-fastimport: Uses deprecated version of python 2020-11-15 devel/py-ToscaWidgets: Uses deprecated version of python 2020-11-15 devel/py-calendar: Uses deprecated version of python 2020-11-15 devel/py-distorm: Uses deprecated version of python 2020-11-15 devel/py-fabric1: Uses deprecated version of python 2020-11-15 devel/py-rcsparse: Uses deprecated version of python 2020-11-15 devel/pyrex: Uses deprecated version of python 2020-11-15 japanese/py-tegaki: Uses deprecated version of python 2020-11-15 math/py-networkx1: Obsolete, please use math/py-networkx instead 2020-11-15 misc/py-progressbar231: Uses deprecated version of python 2020-11-15 multimedia/py-kaa-imlib2: Uses deprecated version of python 2020-11-15 multimedia/py-kaa-metadata: Uses deprecated version of python 2020-11-15 net-im/libtelepathy: Uses deprecated version of python 2020-11-15 security/py-mcrypt: Uses deprecated version of python 2020-11-15 www/py-beautifulsoup32: Uses deprecated version of python 2020-11-15 www/py-evernote: Uses deprecated version of python 2020-04-01 www/py-meld3: EOLed upstream 2020-11-15 www/py-requestbuilder: Uses deprecated version of python 2020-11-15 x11-toolkits/py-SquareMap: Uses deprecated version of python
Diffstat (limited to 'devel/bzr-fastimport/files/patch-deletion-case')
-rw-r--r--devel/bzr-fastimport/files/patch-deletion-case66
1 files changed, 0 insertions, 66 deletions
diff --git a/devel/bzr-fastimport/files/patch-deletion-case b/devel/bzr-fastimport/files/patch-deletion-case
deleted file mode 100644
index 656a490a2401..000000000000
--- a/devel/bzr-fastimport/files/patch-deletion-case
+++ /dev/null
@@ -1,66 +0,0 @@
-Description: Fix a case where deleteion of an entry in a renamed directory is not reproduced
- correctly in fast-export. Thanks to Harry Hirsch, Nuno Araujo, and Andrew Huff for the patch.
-Bugs: https://launchpad.net/bugs/430347 https://launchpad.net/bugs/1167690 https://launchpad.net/bugs/1014291
-
-=== modified file 'exporter.py'
---- a/exporter.py 2014-05-15 09:26:03 +0000
-+++ b/exporter.py 2015-05-04 13:08:57 +0000
-@@ -514,6 +514,7 @@
- #
- # 1) bzr rm a; bzr mv b a; bzr commit
- # 2) bzr mv x/y z; bzr rm x; commmit
-+ # 3) bzr mv x y; bzr rm y/z; bzr commit
- #
- # The first must come out with the delete first like this:
- #
-@@ -525,6 +526,11 @@
- # R x/y z
- # D x
- #
-+ # The third case must come out with delete first like this:
-+ #
-+ # D x/z
-+ # R x y
-+ #
- # So outputting all deletes first or all renames first won't work.
- # Instead, we need to make multiple passes over the various lists to
- # get the ordering right.
-@@ -532,6 +538,7 @@
- must_be_renamed = {}
- old_to_new = {}
- deleted_paths = set([p for p, _, _ in deletes])
-+ deleted_child_paths = set()
- for (oldpath, newpath, id_, kind,
- text_modified, meta_modified) in renames:
- emit = kind != 'directory' or not self.plain_format
-@@ -543,6 +550,20 @@
- self.note("Skipping empty dir %s in rev %s" % (oldpath,
- revision_id))
- continue
-+
-+ if kind == 'directory':
-+ # handling deleted children in renamed directory (case 3 above)
-+ for p, e in tree_old.inventory.iter_entries_by_dir(from_dir=id_):
-+ if e.kind == 'directory' or not self.plain_format:
-+ continue
-+ old_child_path = osutils.pathjoin(oldpath, p)
-+ new_child_path = osutils.pathjoin(newpath, p)
-+ if old_child_path in deleted_paths:
-+ file_cmds.append(commands.FileDeleteCommand(old_child_path.encode("utf-8")))
-+ deleted_paths.remove(old_child_path)
-+ deleted_child_paths.add(old_child_path)
-+
-+
- #oldpath = self._adjust_path_for_renames(oldpath, renamed,
- # revision_id)
- renamed.append([oldpath, newpath])
-@@ -561,6 +582,8 @@
- continue
- old_child_path = osutils.pathjoin(oldpath, p)
- new_child_path = osutils.pathjoin(newpath, p)
-+ if old_child_path in deleted_child_paths:
-+ continue
- must_be_renamed[old_child_path] = new_child_path
-
- # Add children not already renamed
-