Rev 4372: (igc) added osutils.parent_directories() (Ian Clatworthy) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Mon May 18 23:41:48 BST 2009
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 4372
revision-id: pqm at pqm.ubuntu.com-20090518224144-3izdthppda5ievhg
parent: pqm at pqm.ubuntu.com-20090517161026-97fgnk254qwvj4wf
parent: ian.clatworthy at canonical.com-20090518214844-r8drldt0v3kt7ue6
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2009-05-18 23:41:44 +0100
message:
(igc) added osutils.parent_directories() (Ian Clatworthy)
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/osutils.py osutils.py-20050309040759-eeaff12fbf77ac86
bzrlib/tests/test_osutils.py test_osutils.py-20051201224856-e48ee24c12182989
------------------------------------------------------------
revno: 4371.1.1
revision-id: ian.clatworthy at canonical.com-20090518214844-r8drldt0v3kt7ue6
parent: pqm at pqm.ubuntu.com-20090517161026-97fgnk254qwvj4wf
parent: ian.clatworthy at canonical.com-20090518105413-0xa2e47x8x77h9w9
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: integration
timestamp: Tue 2009-05-19 07:48:44 +1000
message:
(igc) added osutils.parent_directories() (Ian Clatworthy)
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/osutils.py osutils.py-20050309040759-eeaff12fbf77ac86
bzrlib/tests/test_osutils.py test_osutils.py-20051201224856-e48ee24c12182989
------------------------------------------------------------
revno: 4370.1.1
revision-id: ian.clatworthy at canonical.com-20090518105413-0xa2e47x8x77h9w9
parent: pqm at pqm.ubuntu.com-20090516091716-x8ozyp5uuvsgmsfg
committer: Ian Clatworthy <ian.clatworthy at canonical.com>
branch nick: parent-directories
timestamp: Mon 2009-05-18 20:54:13 +1000
message:
add osutils.parent_directories() API
modified:
bzrlib/osutils.py osutils.py-20050309040759-eeaff12fbf77ac86
bzrlib/tests/test_osutils.py test_osutils.py-20051201224856-e48ee24c12182989
=== modified file 'NEWS'
--- a/NEWS 2009-05-16 08:21:11 +0000
+++ b/NEWS 2009-05-18 21:48:44 +0000
@@ -9,6 +9,33 @@
In Development
##############
+Compatibility Breaks
+********************
+
+New Features
+************
+
+Improvements
+************
+
+Bug Fixes
+*********
+
+Documentation
+*************
+
+API Changes
+***********
+
+* Added osutils.parent_directories(). (Ian Clatworthy)
+
+Internals
+*********
+
+Testing
+*******
+
+
bzr 1.15
########
:1.15rc1: 2009-04-06
=== modified file 'bzrlib/osutils.py'
--- a/bzrlib/osutils.py 2009-05-16 08:21:11 +0000
+++ b/bzrlib/osutils.py 2009-05-18 21:48:44 +0000
@@ -867,6 +867,19 @@
return pathjoin(*p)
+def parent_directories(filename):
+ """Return the list of parent directories, deepest first.
+
+ For example, parent_directories("a/b/c") -> ["a/b", "a"].
+ """
+ parents = []
+ parts = splitpath(dirname(filename))
+ while parts:
+ parents.append(joinpath(parts))
+ parts.pop()
+ return parents
+
+
try:
from bzrlib._chunks_to_lines_pyx import chunks_to_lines
except ImportError:
=== modified file 'bzrlib/tests/test_osutils.py'
--- a/bzrlib/tests/test_osutils.py 2009-05-07 05:08:46 +0000
+++ b/bzrlib/tests/test_osutils.py 2009-05-18 10:54:13 +0000
@@ -860,6 +860,15 @@
self.assertRaises(errors.BzrError, osutils.splitpath, 'a/../b')
+class TestParentDirectories(tests.TestCaseInTempDir):
+ """Test osutils.parent_directories()"""
+
+ def test_parent_directories(self):
+ self.assertEqual([], osutils.parent_directories('a'))
+ self.assertEqual(['a'], osutils.parent_directories('a/b'))
+ self.assertEqual(['a/b', 'a'], osutils.parent_directories('a/b/c'))
+
+
class TestMacFuncsDirs(tests.TestCaseInTempDir):
"""Test mac special functions that require directories."""
More information about the bazaar-commits
mailing list