Skip to content

Commit e0237f9

Browse files
committed
Add better namespace support
1 parent 93e2135 commit e0237f9

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

cpdsa/cocoapods.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,24 @@ def findCocoaPods(path: str) -> list[str]:
1515
return results
1616

1717
def parsePod(pod: str) -> Dependency:
18+
namespace = None
19+
version = None
20+
1821
if " " in pod:
1922
name, version = pod.split(" ", 1)
2023
# process `(`, `)`
2124
version = version.replace("(", "").replace(")", "")
2225
# process `= `, `~> `
2326
if " " in version:
2427
_, version = version.split(" ", 1)
28+
if "/" in name:
29+
namespace, name = name.split("/", 1)
2530
else:
2631
name = pod
27-
version = None
2832

2933
dep = Dependency(
3034
name,
35+
namespace=namespace,
3136
version=version,
3237
manager="cocoapods"
3338
)

tests/test_cocoapods.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ def test_parse_pods(self):
2828
self.assertEqual(dep2.name, "Yoga")
2929
self.assertEqual(dep2.version, "1.14")
3030

31+
def test_namespace(self):
32+
data = "React-Core/CoreModulesHeaders (1000.0.0)"
33+
dep = parsePod(data)
34+
self.assertEqual(dep.name, "CoreModulesHeaders")
35+
self.assertEqual(dep.namespace, "React-Core")
36+
self.assertEqual(dep.version, "1000.0.0")
37+
38+
3139
def test_no_version(self):
3240
data = "Flipper-Boost-iOSX"
3341
dep = parsePod(data)

0 commit comments

Comments
 (0)