Skip to content

Commit 9ea8c15

Browse files
authored
Merge pull request #7 from Dashlane/misc/spm
Add support for Swift Package Manager
2 parents e78781c + b51aa8a commit 9ea8c15

File tree

6 files changed

+58
-15
lines changed

6 files changed

+58
-15
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
fastlane/report.xml
44
fastlane/test_output
55
.idea/
6+
.build/
67
.DS_Store
78
/Carthage/

.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

DomainParser/DomainParser.xcodeproj/project.pbxproj

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
1C4E065F2107547700FEF50B /* public_suffix_list.dat in Resources */ = {isa = PBXBuildFile; fileRef = 1C4E065E2107547700FEF50B /* public_suffix_list.dat */; };
1110
1C75D1FE210082740057B32D /* DomainParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C75D1FD210082740057B32D /* DomainParser.swift */; };
1211
1C75D2022100BCBA0057B32D /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C75D2012100BCBA0057B32D /* Rule.swift */; };
1312
1C75D2042100BE040057B32D /* RuleLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C75D2032100BE040057B32D /* RuleLabel.swift */; };
@@ -27,8 +26,9 @@
2726
1CE0027120FF7AD5008E6415 /* DomainParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CE0026720FF7AD5008E6415 /* DomainParser.framework */; };
2827
1CE0027620FF7AD5008E6415 /* DomainParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CE0027520FF7AD5008E6415 /* DomainParserTests.swift */; };
2928
1CE0027820FF7AD5008E6415 /* DomainParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 1CE0026A20FF7AD5008E6415 /* DomainParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
29+
93B3C99425598A19007A6674 /* public_suffix_list.dat in Resources */ = {isa = PBXBuildFile; fileRef = 93B3C99325598A19007A6674 /* public_suffix_list.dat */; };
30+
93B3C99525598A19007A6674 /* public_suffix_list.dat in Resources */ = {isa = PBXBuildFile; fileRef = 93B3C99325598A19007A6674 /* public_suffix_list.dat */; };
3031
A75E495E22259C4B00B3C15A /* RulesParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C7FFE69213F299100538E0B /* RulesParser.swift */; };
31-
A7F9173B22132FC5001A36DC /* public_suffix_list.dat in Resources */ = {isa = PBXBuildFile; fileRef = 1C4E065E2107547700FEF50B /* public_suffix_list.dat */; };
3232
/* End PBXBuildFile section */
3333

3434
/* Begin PBXContainerItemProxy section */
@@ -49,7 +49,6 @@
4949
/* End PBXContainerItemProxy section */
5050

5151
/* Begin PBXFileReference section */
52-
1C4E065E2107547700FEF50B /* public_suffix_list.dat */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = public_suffix_list.dat; sourceTree = "<group>"; };
5352
1C75D1FD210082740057B32D /* DomainParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainParser.swift; sourceTree = "<group>"; };
5453
1C75D2012100BCBA0057B32D /* Rule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Rule.swift; sourceTree = "<group>"; };
5554
1C75D2032100BE040057B32D /* RuleLabel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RuleLabel.swift; sourceTree = "<group>"; };
@@ -65,6 +64,7 @@
6564
1CE0027020FF7AD5008E6415 /* DomainParserTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DomainParserTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
6665
1CE0027520FF7AD5008E6415 /* DomainParserTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainParserTests.swift; sourceTree = "<group>"; };
6766
1CE0027720FF7AD5008E6415 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
67+
93B3C99325598A19007A6674 /* public_suffix_list.dat */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = public_suffix_list.dat; sourceTree = "<group>"; };
6868
/* End PBXFileReference section */
6969

7070
/* Begin PBXFrameworksBuildPhase section */
@@ -101,15 +101,6 @@
101101
/* End PBXFrameworksBuildPhase section */
102102

103103
/* Begin PBXGroup section */
104-
1C4E065D2107547700FEF50B /* Resources */ = {
105-
isa = PBXGroup;
106-
children = (
107-
1C4E065E2107547700FEF50B /* public_suffix_list.dat */,
108-
);
109-
name = Resources;
110-
path = ../../Resources;
111-
sourceTree = "<group>";
112-
};
113104
1C75D2052100BE870057B32D /* Model */ = {
114105
isa = PBXGroup;
115106
children = (
@@ -148,9 +139,9 @@
148139
1C75D2052100BE870057B32D /* Model */,
149140
1CE0026A20FF7AD5008E6415 /* DomainParser.h */,
150141
1CE0026B20FF7AD5008E6415 /* Info.plist */,
151-
1C4E065D2107547700FEF50B /* Resources */,
152142
1C75D20A2100CD700057B32D /* ParsedHost.swift */,
153143
1C75D2062100C9600057B32D /* Constant.swift */,
144+
93B3C98F255989FA007A6674 /* Resources */,
154145
);
155146
path = DomainParser;
156147
sourceTree = "<group>";
@@ -164,6 +155,14 @@
164155
path = DomainParserTests;
165156
sourceTree = "<group>";
166157
};
158+
93B3C98F255989FA007A6674 /* Resources */ = {
159+
isa = PBXGroup;
160+
children = (
161+
93B3C99325598A19007A6674 /* public_suffix_list.dat */,
162+
);
163+
path = Resources;
164+
sourceTree = "<group>";
165+
};
167166
/* End PBXGroup section */
168167

169168
/* Begin PBXHeadersBuildPhase section */
@@ -309,7 +308,7 @@
309308
isa = PBXResourcesBuildPhase;
310309
buildActionMask = 2147483647;
311310
files = (
312-
A7F9173B22132FC5001A36DC /* public_suffix_list.dat in Resources */,
311+
93B3C99525598A19007A6674 /* public_suffix_list.dat in Resources */,
313312
);
314313
runOnlyForDeploymentPostprocessing = 0;
315314
};
@@ -324,7 +323,7 @@
324323
isa = PBXResourcesBuildPhase;
325324
buildActionMask = 2147483647;
326325
files = (
327-
1C4E065F2107547700FEF50B /* public_suffix_list.dat in Resources */,
326+
93B3C99425598A19007A6674 /* public_suffix_list.dat in Resources */,
328327
);
329328
runOnlyForDeploymentPostprocessing = 0;
330329
};

DomainParser/DomainParser/DomainParser.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,12 @@ public struct DomainParser {
5151
private extension Bundle {
5252

5353
static var current: Bundle {
54+
#if SWIFT_PACKAGE
55+
return Bundle.module
56+
#else
5457
class ClassInCurrentBundle {}
5558
return Bundle.init(for: ClassInCurrentBundle.self)
59+
#endif
5660
}
5761
}
5862

Package.swift

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// swift-tools-version:5.3
2+
3+
import PackageDescription
4+
5+
let package = Package(
6+
name: "DomainParser",
7+
platforms: [
8+
.iOS(.v13),
9+
.macOS(.v10_14)
10+
],
11+
products: [
12+
.library(
13+
name: "DomainParser",
14+
targets: ["DomainParser"]),
15+
],
16+
dependencies: [],
17+
targets: [
18+
.target(
19+
name: "DomainParser",
20+
dependencies: [],
21+
path: "DomainParser/DomainParser",
22+
exclude: ["Info.plist"],
23+
resources: [.process("Resources")]
24+
),
25+
.testTarget(
26+
name: "DomainParserTests",
27+
dependencies: ["DomainParser"],
28+
path: "DomainParser/DomainParserTests",
29+
exclude: ["Info.plist"]
30+
)
31+
]
32+
)

0 commit comments

Comments
 (0)