Rename Data.framework to Articles.framework. Rename Database.framework to ArticlesDatabase.framework.
This commit is contained in:
parent
2cd23cf008
commit
b7575c687c
|
@ -10,7 +10,7 @@ import Foundation
|
|||
import RSCore
|
||||
import RSTree
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class DeleteFromSidebarCommand: UndoableCommand {
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// Mark articles read/unread, starred/unstarred, deleted/undeleted.
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class SendToMarsEditCommand: SendToCommand {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
// Not undoable.
|
||||
|
|
|
@ -21,6 +21,8 @@
|
|||
841ABA4E20145E7300980E11 /* NothingInspectorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841ABA4D20145E7300980E11 /* NothingInspectorViewController.swift */; };
|
||||
841ABA5E20145E9200980E11 /* FolderInspectorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841ABA5D20145E9200980E11 /* FolderInspectorViewController.swift */; };
|
||||
841ABA6020145EC100980E11 /* BuiltinSmartFeedInspectorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841ABA5F20145EC100980E11 /* BuiltinSmartFeedInspectorViewController.swift */; };
|
||||
841D4D6B2106B3ED00DD04E6 /* Articles.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841D4D5B2106B3D600DD04E6 /* Articles.framework */; };
|
||||
841D4D6C2106B3ED00DD04E6 /* Articles.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 841D4D5B2106B3D600DD04E6 /* Articles.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
8426118A1FCB67AA0086A189 /* FeedIconDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842611891FCB67AA0086A189 /* FeedIconDownloader.swift */; };
|
||||
8426119E1FCB6ED40086A189 /* HTMLMetadataDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8426119D1FCB6ED40086A189 /* HTMLMetadataDownloader.swift */; };
|
||||
842611A01FCB72600086A189 /* FeaturedImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8426119F1FCB72600086A189 /* FeaturedImageDownloader.swift */; };
|
||||
|
@ -48,8 +50,6 @@
|
|||
845F52ED1FB2B9FC00C10BF0 /* FeedPasteboardWriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 845F52EC1FB2B9FC00C10BF0 /* FeedPasteboardWriter.swift */; };
|
||||
846E773D1F6EF67A00A165E2 /* Account.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 846E773A1F6EF5D700A165E2 /* Account.framework */; };
|
||||
846E773E1F6EF67A00A165E2 /* Account.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 846E773A1F6EF5D700A165E2 /* Account.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
846E77411F6EF6A100A165E2 /* Database.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 846E77211F6EF5D100A165E2 /* Database.framework */; };
|
||||
846E77421F6EF6A100A165E2 /* Database.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 846E77211F6EF5D100A165E2 /* Database.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
84702AA41FA27AC0006B8943 /* MarkStatusCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84702AA31FA27AC0006B8943 /* MarkStatusCommand.swift */; };
|
||||
8472058120142E8900AD578B /* FeedInspectorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8472058020142E8900AD578B /* FeedInspectorViewController.swift */; };
|
||||
847FA121202BA34100BB56C8 /* SidebarContextualMenuDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 847FA120202BA34100BB56C8 /* SidebarContextualMenuDelegate.swift */; };
|
||||
|
@ -114,8 +114,6 @@
|
|||
84B99C691FAE36B800ECDEDB /* FeedListFolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84B99C681FAE36B800ECDEDB /* FeedListFolder.swift */; };
|
||||
84B99C6B1FAE370B00ECDEDB /* FeedListFeed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84B99C6A1FAE370B00ECDEDB /* FeedListFeed.swift */; };
|
||||
84B99C9D1FAE83C600ECDEDB /* DeleteFromSidebarCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84B99C9C1FAE83C600ECDEDB /* DeleteFromSidebarCommand.swift */; };
|
||||
84BB4B771F11753300858766 /* Data.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84BB4B681F1174D400858766 /* Data.framework */; };
|
||||
84BB4B781F11753300858766 /* Data.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 84BB4B681F1174D400858766 /* Data.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
84BBB12D20142A4700F054F5 /* Inspector.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 84BBB12B20142A4700F054F5 /* Inspector.storyboard */; };
|
||||
84BBB12E20142A4700F054F5 /* InspectorWindowController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84BBB12C20142A4700F054F5 /* InspectorWindowController.swift */; };
|
||||
84C12A151FF5B0080009A267 /* FeedList.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 84C12A141FF5B0080009A267 /* FeedList.storyboard */; };
|
||||
|
@ -221,19 +219,40 @@
|
|||
remoteGlobalIDString = 840D617B2029031C009BC708;
|
||||
remoteInfo = "Evergreen-iOS";
|
||||
};
|
||||
846E77201F6EF5D100A165E2 /* PBXContainerItemProxy */ = {
|
||||
841D4D5A2106B3D600DD04E6 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 846E77161F6EF5D000A165E2 /* Database.xcodeproj */;
|
||||
containerPortal = 841D4D542106B3D500DD04E6 /* Articles.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE5B1F0AB3C8004AB7CD;
|
||||
remoteInfo = Articles;
|
||||
};
|
||||
841D4D5C2106B3D600DD04E6 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 841D4D542106B3D500DD04E6 /* Articles.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE641F0AB3C9004AB7CD;
|
||||
remoteInfo = ArticlesTests;
|
||||
};
|
||||
841D4D672106B3E100DD04E6 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE371F0AB3AA004AB7CD;
|
||||
remoteInfo = Database;
|
||||
remoteInfo = ArticlesDatabase;
|
||||
};
|
||||
846E77221F6EF5D100A165E2 /* PBXContainerItemProxy */ = {
|
||||
841D4D692106B3E100DD04E6 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 846E77161F6EF5D000A165E2 /* Database.xcodeproj */;
|
||||
containerPortal = 841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE401F0AB3AB004AB7CD;
|
||||
remoteInfo = DatabaseTests;
|
||||
remoteInfo = ArticlesDatabaseTests;
|
||||
};
|
||||
841D4D6D2106B3ED00DD04E6 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 841D4D542106B3D500DD04E6 /* Articles.xcodeproj */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = 844BEE5A1F0AB3C8004AB7CD;
|
||||
remoteInfo = Articles;
|
||||
};
|
||||
846E77391F6EF5D700A165E2 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
|
@ -256,13 +275,6 @@
|
|||
remoteGlobalIDString = 848934F51F62484F00CEBD24;
|
||||
remoteInfo = Account;
|
||||
};
|
||||
846E77431F6EF6A100A165E2 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 846E77161F6EF5D000A165E2 /* Database.xcodeproj */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = 844BEE361F0AB3AA004AB7CD;
|
||||
remoteInfo = Database;
|
||||
};
|
||||
849C64721ED37A5D003D8FC0 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 849C64581ED37A5D003D8FC0 /* Project object */;
|
||||
|
@ -270,27 +282,6 @@
|
|||
remoteGlobalIDString = 849C645F1ED37A5D003D8FC0;
|
||||
remoteInfo = Evergreen;
|
||||
};
|
||||
84BB4B671F1174D400858766 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84BB4B611F1174D400858766 /* Data.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE5B1F0AB3C8004AB7CD;
|
||||
remoteInfo = Data;
|
||||
};
|
||||
84BB4B691F1174D400858766 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84BB4B611F1174D400858766 /* Data.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 844BEE641F0AB3C9004AB7CD;
|
||||
remoteInfo = DataTests;
|
||||
};
|
||||
84BB4B791F11753300858766 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84BB4B611F1174D400858766 /* Data.xcodeproj */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = 844BEE5A1F0AB3C8004AB7CD;
|
||||
remoteInfo = Data;
|
||||
};
|
||||
84C37F2720DD8CCE00CA8CF5 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 84C37F2220DD8CCD00CA8CF5 /* DB5.xcodeproj */;
|
||||
|
@ -448,15 +439,14 @@
|
|||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
84C37FAA20DD8D9000CA8CF5 /* RSWeb.framework in Embed Frameworks */,
|
||||
84BB4B781F11753300858766 /* Data.framework in Embed Frameworks */,
|
||||
84C37FC620DD8E1D00CA8CF5 /* RSDatabase.framework in Embed Frameworks */,
|
||||
84C37FAE20DD8D9900CA8CF5 /* RSTree.framework in Embed Frameworks */,
|
||||
84FB9A301EDCD6C4003D53B9 /* Sparkle.framework in Embed Frameworks */,
|
||||
84C37FB220DD8DA100CA8CF5 /* DB5.framework in Embed Frameworks */,
|
||||
84C37FB620DD8DBB00CA8CF5 /* RSParser.framework in Embed Frameworks */,
|
||||
846E77421F6EF6A100A165E2 /* Database.framework in Embed Frameworks */,
|
||||
84C37FA620DD8D8400CA8CF5 /* RSCore.framework in Embed Frameworks */,
|
||||
846E773E1F6EF67A00A165E2 /* Account.framework in Embed Frameworks */,
|
||||
841D4D6C2106B3ED00DD04E6 /* Articles.framework in Embed Frameworks */,
|
||||
);
|
||||
name = "Embed Frameworks";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
|
@ -509,6 +499,8 @@
|
|||
841ABA4D20145E7300980E11 /* NothingInspectorViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NothingInspectorViewController.swift; sourceTree = "<group>"; };
|
||||
841ABA5D20145E9200980E11 /* FolderInspectorViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FolderInspectorViewController.swift; sourceTree = "<group>"; };
|
||||
841ABA5F20145EC100980E11 /* BuiltinSmartFeedInspectorViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BuiltinSmartFeedInspectorViewController.swift; sourceTree = "<group>"; };
|
||||
841D4D542106B3D500DD04E6 /* Articles.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Articles.xcodeproj; path = Frameworks/Articles/Articles.xcodeproj; sourceTree = "<group>"; };
|
||||
841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ArticlesDatabase.xcodeproj; path = Frameworks/ArticlesDatabase/ArticlesDatabase.xcodeproj; sourceTree = "<group>"; };
|
||||
842611891FCB67AA0086A189 /* FeedIconDownloader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedIconDownloader.swift; sourceTree = "<group>"; };
|
||||
8426119D1FCB6ED40086A189 /* HTMLMetadataDownloader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HTMLMetadataDownloader.swift; sourceTree = "<group>"; };
|
||||
8426119F1FCB72600086A189 /* FeaturedImageDownloader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeaturedImageDownloader.swift; sourceTree = "<group>"; };
|
||||
|
@ -536,7 +528,6 @@
|
|||
845EE7B01FC2366500854A1F /* StarredFeedDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StarredFeedDelegate.swift; sourceTree = "<group>"; };
|
||||
845EE7C01FC2488C00854A1F /* SmartFeed.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SmartFeed.swift; sourceTree = "<group>"; };
|
||||
845F52EC1FB2B9FC00C10BF0 /* FeedPasteboardWriter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedPasteboardWriter.swift; sourceTree = "<group>"; };
|
||||
846E77161F6EF5D000A165E2 /* Database.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Database.xcodeproj; path = Frameworks/Database/Database.xcodeproj; sourceTree = "<group>"; };
|
||||
846E77301F6EF5D600A165E2 /* Account.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Account.xcodeproj; path = Frameworks/Account/Account.xcodeproj; sourceTree = "<group>"; };
|
||||
84702AA31FA27AC0006B8943 /* MarkStatusCommand.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MarkStatusCommand.swift; sourceTree = "<group>"; };
|
||||
8472058020142E8900AD578B /* FeedInspectorViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedInspectorViewController.swift; sourceTree = "<group>"; };
|
||||
|
@ -609,7 +600,6 @@
|
|||
84B99C681FAE36B800ECDEDB /* FeedListFolder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedListFolder.swift; sourceTree = "<group>"; };
|
||||
84B99C6A1FAE370B00ECDEDB /* FeedListFeed.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedListFeed.swift; sourceTree = "<group>"; };
|
||||
84B99C9C1FAE83C600ECDEDB /* DeleteFromSidebarCommand.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeleteFromSidebarCommand.swift; sourceTree = "<group>"; };
|
||||
84BB4B611F1174D400858766 /* Data.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Data.xcodeproj; path = Frameworks/Data/Data.xcodeproj; sourceTree = "<group>"; };
|
||||
84BBB12B20142A4700F054F5 /* Inspector.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Inspector.storyboard; sourceTree = "<group>"; };
|
||||
84BBB12C20142A4700F054F5 /* InspectorWindowController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InspectorWindowController.swift; sourceTree = "<group>"; };
|
||||
84C12A141FF5B0080009A267 /* FeedList.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = FeedList.storyboard; sourceTree = "<group>"; };
|
||||
|
@ -710,15 +700,14 @@
|
|||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
84C37FA920DD8D9000CA8CF5 /* RSWeb.framework in Frameworks */,
|
||||
84BB4B771F11753300858766 /* Data.framework in Frameworks */,
|
||||
84C37FC520DD8E1D00CA8CF5 /* RSDatabase.framework in Frameworks */,
|
||||
84C37FAD20DD8D9900CA8CF5 /* RSTree.framework in Frameworks */,
|
||||
846E77411F6EF6A100A165E2 /* Database.framework in Frameworks */,
|
||||
84C37FB120DD8DA100CA8CF5 /* DB5.framework in Frameworks */,
|
||||
84C37FB520DD8DBB00CA8CF5 /* RSParser.framework in Frameworks */,
|
||||
846E773D1F6EF67A00A165E2 /* Account.framework in Frameworks */,
|
||||
84C37FA520DD8D8400CA8CF5 /* RSCore.framework in Frameworks */,
|
||||
84FB9A2F1EDCD6C4003D53B9 /* Sparkle.framework in Frameworks */,
|
||||
841D4D6B2106B3ED00DD04E6 /* Articles.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -764,6 +753,24 @@
|
|||
path = "Evergreen-iOSUITests";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
841D4D552106B3D500DD04E6 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
841D4D5B2106B3D600DD04E6 /* Articles.framework */,
|
||||
841D4D5D2106B3D600DD04E6 /* ArticlesTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
841D4D5F2106B3E100DD04E6 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
841D4D682106B3E100DD04E6 /* ArticlesDatabase.framework */,
|
||||
841D4D6A2106B3E100DD04E6 /* ArticlesDatabaseTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8426119C1FCB6ED40086A189 /* HTMLMetadata */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -860,15 +867,6 @@
|
|||
path = Cell;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
846E77171F6EF5D000A165E2 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
846E77211F6EF5D100A165E2 /* Database.framework */,
|
||||
846E77231F6EF5D100A165E2 /* DatabaseTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
846E77311F6EF5D600A165E2 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -1100,8 +1098,8 @@
|
|||
D5907CDA2002F084005947E5 /* xcconfig */,
|
||||
849C64611ED37A5D003D8FC0 /* Products */,
|
||||
846E77301F6EF5D600A165E2 /* Account.xcodeproj */,
|
||||
84BB4B611F1174D400858766 /* Data.xcodeproj */,
|
||||
846E77161F6EF5D000A165E2 /* Database.xcodeproj */,
|
||||
841D4D542106B3D500DD04E6 /* Articles.xcodeproj */,
|
||||
841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */,
|
||||
84C37F2220DD8CCD00CA8CF5 /* DB5.xcodeproj */,
|
||||
84C37F7A20DD8CF200CA8CF5 /* RSCore.xcodeproj */,
|
||||
84C37FB920DD8E0C00CA8CF5 /* RSDatabase.xcodeproj */,
|
||||
|
@ -1152,15 +1150,6 @@
|
|||
path = Evergreen/Dinosaurs;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
84BB4B621F1174D400858766 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
84BB4B681F1174D400858766 /* Data.framework */,
|
||||
84BB4B6A1F1174D400858766 /* DataTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
84BBB12A20142A4700F054F5 /* Inspector */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -1438,15 +1427,14 @@
|
|||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
84BB4B7A1F11753300858766 /* PBXTargetDependency */,
|
||||
846E77401F6EF67A00A165E2 /* PBXTargetDependency */,
|
||||
846E77441F6EF6A100A165E2 /* PBXTargetDependency */,
|
||||
84C37FA820DD8D8400CA8CF5 /* PBXTargetDependency */,
|
||||
84C37FAC20DD8D9000CA8CF5 /* PBXTargetDependency */,
|
||||
84C37FB020DD8D9900CA8CF5 /* PBXTargetDependency */,
|
||||
84C37FB420DD8DA100CA8CF5 /* PBXTargetDependency */,
|
||||
84C37FB820DD8DBB00CA8CF5 /* PBXTargetDependency */,
|
||||
84C37FC820DD8E1D00CA8CF5 /* PBXTargetDependency */,
|
||||
841D4D6E2106B3ED00DD04E6 /* PBXTargetDependency */,
|
||||
);
|
||||
name = Evergreen;
|
||||
productName = Evergreen;
|
||||
|
@ -1529,12 +1517,12 @@
|
|||
ProjectRef = 846E77301F6EF5D600A165E2 /* Account.xcodeproj */;
|
||||
},
|
||||
{
|
||||
ProductGroup = 84BB4B621F1174D400858766 /* Products */;
|
||||
ProjectRef = 84BB4B611F1174D400858766 /* Data.xcodeproj */;
|
||||
ProductGroup = 841D4D552106B3D500DD04E6 /* Products */;
|
||||
ProjectRef = 841D4D542106B3D500DD04E6 /* Articles.xcodeproj */;
|
||||
},
|
||||
{
|
||||
ProductGroup = 846E77171F6EF5D000A165E2 /* Products */;
|
||||
ProjectRef = 846E77161F6EF5D000A165E2 /* Database.xcodeproj */;
|
||||
ProductGroup = 841D4D5F2106B3E100DD04E6 /* Products */;
|
||||
ProjectRef = 841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */;
|
||||
},
|
||||
{
|
||||
ProductGroup = 84C37F2320DD8CCD00CA8CF5 /* Products */;
|
||||
|
@ -1573,18 +1561,32 @@
|
|||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXReferenceProxy section */
|
||||
846E77211F6EF5D100A165E2 /* Database.framework */ = {
|
||||
841D4D5B2106B3D600DD04E6 /* Articles.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = Database.framework;
|
||||
remoteRef = 846E77201F6EF5D100A165E2 /* PBXContainerItemProxy */;
|
||||
path = Articles.framework;
|
||||
remoteRef = 841D4D5A2106B3D600DD04E6 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
846E77231F6EF5D100A165E2 /* DatabaseTests.xctest */ = {
|
||||
841D4D5D2106B3D600DD04E6 /* ArticlesTests.xctest */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.cfbundle;
|
||||
path = DatabaseTests.xctest;
|
||||
remoteRef = 846E77221F6EF5D100A165E2 /* PBXContainerItemProxy */;
|
||||
path = ArticlesTests.xctest;
|
||||
remoteRef = 841D4D5C2106B3D600DD04E6 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
841D4D682106B3E100DD04E6 /* ArticlesDatabase.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = ArticlesDatabase.framework;
|
||||
remoteRef = 841D4D672106B3E100DD04E6 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
841D4D6A2106B3E100DD04E6 /* ArticlesDatabaseTests.xctest */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.cfbundle;
|
||||
path = ArticlesDatabaseTests.xctest;
|
||||
remoteRef = 841D4D692106B3E100DD04E6 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
846E773A1F6EF5D700A165E2 /* Account.framework */ = {
|
||||
|
@ -1601,20 +1603,6 @@
|
|||
remoteRef = 846E773B1F6EF5D700A165E2 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
84BB4B681F1174D400858766 /* Data.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = Data.framework;
|
||||
remoteRef = 84BB4B671F1174D400858766 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
84BB4B6A1F1174D400858766 /* DataTests.xctest */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.cfbundle;
|
||||
path = DataTests.xctest;
|
||||
remoteRef = 84BB4B691F1174D400858766 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
84C37F2820DD8CCE00CA8CF5 /* DB5.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
|
@ -1987,26 +1975,21 @@
|
|||
target = 840D617B2029031C009BC708 /* Evergreen-iOS */;
|
||||
targetProxy = 840D619D2029031E009BC708 /* PBXContainerItemProxy */;
|
||||
};
|
||||
841D4D6E2106B3ED00DD04E6 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = Articles;
|
||||
targetProxy = 841D4D6D2106B3ED00DD04E6 /* PBXContainerItemProxy */;
|
||||
};
|
||||
846E77401F6EF67A00A165E2 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = Account;
|
||||
targetProxy = 846E773F1F6EF67A00A165E2 /* PBXContainerItemProxy */;
|
||||
};
|
||||
846E77441F6EF6A100A165E2 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = Database;
|
||||
targetProxy = 846E77431F6EF6A100A165E2 /* PBXContainerItemProxy */;
|
||||
};
|
||||
849C64731ED37A5D003D8FC0 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 849C645F1ED37A5D003D8FC0 /* Evergreen */;
|
||||
targetProxy = 849C64721ED37A5D003D8FC0 /* PBXContainerItemProxy */;
|
||||
};
|
||||
84BB4B7A1F11753300858766 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = Data;
|
||||
targetProxy = 84BB4B791F11753300858766 /* PBXContainerItemProxy */;
|
||||
};
|
||||
84C37FA820DD8D8400CA8CF5 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
name = RSCore;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import DB5
|
||||
import Data
|
||||
import Articles
|
||||
import RSTree
|
||||
import RSWeb
|
||||
import Account
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension Notification.Name {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
// These handle multiple accounts.
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
protocol SmallIconProvider {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
extension Array where Element == Node {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
extension Notification.Name {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class FeedListFolder: Hashable, DisplayNameProvider {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension Notification.Name {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSParser
|
||||
|
||||
final class FeaturedImageDownloader {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSWeb
|
||||
import RSParser
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import DB5
|
||||
|
||||
final class FeedInspectorViewController: NSViewController, Inspector {
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
import AppKit
|
||||
import RSCore
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
import RSParser
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
import AppKit
|
||||
import RSCore
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
protocol AddFeedWindowControllerDelegate: class {
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
import Foundation
|
||||
import RSCore
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
final class FolderTreeControllerDelegate: TreeControllerDelegate {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
class AddFolderWindowController : NSWindowController {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
var cachedStyleString = ""
|
||||
var cachedTemplate = ""
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import DB5
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class DetailStatusBarView: NSView {
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
import Foundation
|
||||
import WebKit
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
import RSWeb
|
||||
|
||||
final class DetailViewController: NSViewController, WKUIDelegate {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
import RSCore
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
extension Feed: PasteboardWriterOwner {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
@objc final class SidebarOutlineDataSource: NSObject, NSOutlineViewDataSource {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
import RSWeb
|
||||
import Account
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
final class SidebarTreeControllerDelegate: TreeControllerDelegate {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
import RSCore
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import RSTree
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
import RSCore
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
typealias ArticleArray = [Article]
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
extension Article: PasteboardWriterOwner {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
struct TimelineCellData {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSParser
|
||||
|
||||
// TODO: Don’t make all this at top level.
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import AppKit
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
extension TimelineViewController {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
class TimelineViewController: NSViewController, UndoableCommandRunner {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
@objc(ScriptableAccount)
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
*/
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
protocol AppDelegateAppleEvents {
|
||||
func installAppleEventHandlers()
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
@objc(ScriptableArticle)
|
||||
class ScriptableArticle: NSObject, UniqueIdScriptingObject, ScriptingObjectContainer {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
@objc(ScriptableAuthor)
|
||||
class ScriptableAuthor: NSObject, UniqueIdScriptingObject {
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
import Foundation
|
||||
import RSParser
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
@objc(ScriptableFeed)
|
||||
class ScriptableFeed: NSObject, UniqueIdScriptingObject, ScriptingObjectContainer{
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
@objc(ScriptableFolder)
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
protocol ScriptingMainWindowController {
|
||||
var scriptingCurrentArticle: Article? { get }
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension NSApplication : ScriptingObjectContainer {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
protocol PseudoFeed: class, DisplayNameProvider, UnreadCountProvider, SmallIconProvider, PasteboardWriterOwner {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
protocol SmartFeedDelegate: DisplayNameProvider, ArticleFetcher {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import Account
|
||||
|
||||
struct TodayFeedDelegate: SmartFeedDelegate {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import AppKit
|
||||
import Account
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// This just shows the global unread count, which appDelegate already has. Easy.
|
||||
|
||||
|
|
|
@ -8,9 +8,9 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
import RSParser
|
||||
import Database
|
||||
import ArticlesDatabase
|
||||
import RSWeb
|
||||
|
||||
public extension Notification.Name {
|
||||
|
@ -53,7 +53,7 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container,
|
|||
var idToFeedDictionary = [String: Feed]()
|
||||
let settingsFile: String
|
||||
let dataFolder: String
|
||||
let database: Database
|
||||
let database: ArticlesDatabase
|
||||
let delegate: AccountDelegate
|
||||
var username: String?
|
||||
static let saveQueue = CoalescingQueue(name: "Account Save Queue", interval: 1.0)
|
||||
|
@ -109,7 +109,7 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container,
|
|||
self.hashValue = accountID.hashValue
|
||||
|
||||
let databaseFilePath = (dataFolder as NSString).appendingPathComponent("DB.sqlite3")
|
||||
self.database = Database(databaseFilePath: databaseFilePath, accountID: accountID)
|
||||
self.database = ArticlesDatabase(databaseFilePath: databaseFilePath, accountID: accountID)
|
||||
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(downloadProgressDidChange(_:)), name: .DownloadProgressDidChange, object: nil)
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(unreadCountDidChange(_:)), name: .UnreadCountDidChange, object: nil)
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
841973FD1F6DD1B7006346C4 /* Data.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841973E51F6DD195006346C4 /* Data.framework */; };
|
||||
841973FE1F6DD1BC006346C4 /* RSCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841973EF1F6DD19E006346C4 /* RSCore.framework */; };
|
||||
841973FF1F6DD1C5006346C4 /* RSParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841973FA1F6DD1AC006346C4 /* RSParser.framework */; };
|
||||
841974011F6DD1EC006346C4 /* Folder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841974001F6DD1EC006346C4 /* Folder.swift */; };
|
||||
841974251F6DDCE4006346C4 /* AccountDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841974241F6DDCE4006346C4 /* AccountDelegate.swift */; };
|
||||
841D4D702106B40400DD04E6 /* ArticlesDatabase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841D4D6F2106B40400DD04E6 /* ArticlesDatabase.framework */; };
|
||||
841D4D722106B40A00DD04E6 /* Articles.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841D4D712106B40A00DD04E6 /* Articles.framework */; };
|
||||
84245C7F1FDDD2580074AFBB /* FeedbinAccountDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84245C7E1FDDD2580074AFBB /* FeedbinAccountDelegate.swift */; };
|
||||
84245C811FDDD42A0074AFBB /* Feedbin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84245C801FDDD42A0074AFBB /* Feedbin.swift */; };
|
||||
84245C831FDDD8160074AFBB /* FeedbinGetSubscriptionsDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84245C821FDDD8160074AFBB /* FeedbinGetSubscriptionsDelegate.swift */; };
|
||||
84245C851FDDD8CB0074AFBB /* FeedbinSubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84245C841FDDD8CB0074AFBB /* FeedbinSubscription.swift */; };
|
||||
8469F8171F6DD0AD0084783E /* Database.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8401A17D1F6DC388002B1BE2 /* Database.framework */; };
|
||||
8469F81C1F6DD15E0084783E /* Account.swift in Sources */ = {isa = PBXBuildFile; fileRef = 848935101F62486800CEBD24 /* Account.swift */; };
|
||||
846E77451F6EF9B900A165E2 /* Container.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8419740D1F6DD25F006346C4 /* Container.swift */; };
|
||||
846E774F1F6EF9C000A165E2 /* LocalAccountDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8419742C1F6DDE84006346C4 /* LocalAccountDelegate.swift */; };
|
||||
|
@ -114,6 +114,8 @@
|
|||
841974241F6DDCE4006346C4 /* AccountDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountDelegate.swift; sourceTree = "<group>"; };
|
||||
8419742C1F6DDE84006346C4 /* LocalAccountDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalAccountDelegate.swift; sourceTree = "<group>"; };
|
||||
8419742D1F6DDE96006346C4 /* LocalAccountRefresher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalAccountRefresher.swift; sourceTree = "<group>"; };
|
||||
841D4D6F2106B40400DD04E6 /* ArticlesDatabase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = ArticlesDatabase.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
841D4D712106B40A00DD04E6 /* Articles.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Articles.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84245C7E1FDDD2580074AFBB /* FeedbinAccountDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FeedbinAccountDelegate.swift; sourceTree = "<group>"; };
|
||||
84245C801FDDD42A0074AFBB /* Feedbin.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Feedbin.swift; sourceTree = "<group>"; };
|
||||
84245C821FDDD8160074AFBB /* FeedbinGetSubscriptionsDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbinGetSubscriptionsDelegate.swift; sourceTree = "<group>"; };
|
||||
|
@ -142,10 +144,10 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
841D4D722106B40A00DD04E6 /* Articles.framework in Frameworks */,
|
||||
841D4D702106B40400DD04E6 /* ArticlesDatabase.framework in Frameworks */,
|
||||
841973FE1F6DD1BC006346C4 /* RSCore.framework in Frameworks */,
|
||||
841973FF1F6DD1C5006346C4 /* RSParser.framework in Frameworks */,
|
||||
841973FD1F6DD1B7006346C4 /* Data.framework in Frameworks */,
|
||||
8469F8171F6DD0AD0084783E /* Database.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -221,6 +223,8 @@
|
|||
8469F80F1F6DC3C10084783E /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
841D4D712106B40A00DD04E6 /* Articles.framework */,
|
||||
841D4D6F2106B40400DD04E6 /* ArticlesDatabase.framework */,
|
||||
8401A1721F6DC387002B1BE2 /* Database.xcodeproj */,
|
||||
841973DF1F6DD194006346C4 /* Data.xcodeproj */,
|
||||
841973F41F6DD1AC006346C4 /* RSParser.xcodeproj */,
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
let AccountsDidChangeNotification = "AccountsDidChangeNotification"
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
public protocol ArticleFetcher {
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSCore
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension Notification.Name {
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSParser
|
||||
|
||||
public extension Notification.Name {
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSCore
|
||||
|
||||
public final class Folder: DisplayNameProvider, Container, UnreadCountProvider, Hashable {
|
||||
|
|
|
@ -10,7 +10,7 @@ import Foundation
|
|||
import RSCore
|
||||
import RSParser
|
||||
import RSWeb
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class LocalAccountRefresher {
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
/* Begin PBXBuildFile section */
|
||||
840405CA1F1A8E4300DF0296 /* DatabaseID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840405C91F1A8E4300DF0296 /* DatabaseID.swift */; };
|
||||
8419741C1F6DD613006346C4 /* UnreadCountProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8419741B1F6DD613006346C4 /* UnreadCountProvider.swift */; };
|
||||
844BEE651F0AB3C9004AB7CD /* Data.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 844BEE5B1F0AB3C8004AB7CD /* Data.framework */; };
|
||||
844BEE651F0AB3C9004AB7CD /* Articles.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 844BEE5B1F0AB3C8004AB7CD /* Articles.framework */; };
|
||||
844BEE6A1F0AB3C9004AB7CD /* DataTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 844BEE691F0AB3C9004AB7CD /* DataTests.swift */; };
|
||||
844BEE7D1F0AB4C4004AB7CD /* Feed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 844BEE7C1F0AB4C4004AB7CD /* Feed.swift */; };
|
||||
844BEE7F1F0AB4CA004AB7CD /* Article.swift in Sources */ = {isa = PBXBuildFile; fileRef = 844BEE7E1F0AB4CA004AB7CD /* Article.swift */; };
|
||||
|
@ -54,8 +54,8 @@
|
|||
/* Begin PBXFileReference section */
|
||||
840405C91F1A8E4300DF0296 /* DatabaseID.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabaseID.swift; sourceTree = "<group>"; };
|
||||
8419741B1F6DD613006346C4 /* UnreadCountProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnreadCountProvider.swift; sourceTree = "<group>"; };
|
||||
844BEE5B1F0AB3C8004AB7CD /* Data.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Data.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE641F0AB3C9004AB7CD /* DataTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DataTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE5B1F0AB3C8004AB7CD /* Articles.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Articles.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE641F0AB3C9004AB7CD /* ArticlesTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ArticlesTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE691F0AB3C9004AB7CD /* DataTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataTests.swift; sourceTree = "<group>"; };
|
||||
844BEE6B1F0AB3C9004AB7CD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
844BEE761F0AB444004AB7CD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
|
@ -67,16 +67,11 @@
|
|||
844BEE9C1F0AB512004AB7CD /* RSCore.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RSCore.xcodeproj; path = ../RSCore/RSCore.xcodeproj; sourceTree = "<group>"; };
|
||||
848E3EB320FBCFAE0004B7ED /* RSCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = RSCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84C490F51F705D5F003131D2 /* RSWeb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = RSWeb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
D511EEC420242DF400712EC3 /* DataTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DataTests_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEC520242DF400712EC3 /* Data_project_debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project_debug.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEC620242DF400712EC3 /* Data_project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEC720242DF400712EC3 /* Data_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEC820242DF400712EC3 /* Data_project_release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project_release.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE020242DFB00712EC3 /* DataTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DataTests_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE120242DFB00712EC3 /* Data_project_debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project_debug.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE220242DFB00712EC3 /* Data_project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE320242DFB00712EC3 /* Data_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE420242DFB00712EC3 /* Data_project_release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Data_project_release.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE020242DFB00712EC3 /* ArticlesDataTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDataTests_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE120242DFB00712EC3 /* Articles_project_debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Articles_project_debug.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE220242DFB00712EC3 /* Articles_project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Articles_project.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE320242DFB00712EC3 /* Articles_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Articles_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE420242DFB00712EC3 /* Articles_project_release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Articles_project_release.xcconfig; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
|
@ -93,7 +88,7 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
844BEE651F0AB3C9004AB7CD /* Data.framework in Frameworks */,
|
||||
844BEE651F0AB3C9004AB7CD /* Articles.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -103,7 +98,6 @@
|
|||
844BEE511F0AB3C8004AB7CD = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
D511EEC320242DF400712EC3 /* xcconfig */,
|
||||
844BEE7C1F0AB4C4004AB7CD /* Feed.swift */,
|
||||
844BEE7E1F0AB4CA004AB7CD /* Article.swift */,
|
||||
844BEE801F0AB4D0004AB7CD /* Author.swift */,
|
||||
|
@ -122,8 +116,8 @@
|
|||
844BEE5C1F0AB3C8004AB7CD /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
844BEE5B1F0AB3C8004AB7CD /* Data.framework */,
|
||||
844BEE641F0AB3C9004AB7CD /* DataTests.xctest */,
|
||||
844BEE5B1F0AB3C8004AB7CD /* Articles.framework */,
|
||||
844BEE641F0AB3C9004AB7CD /* ArticlesTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
|
@ -157,26 +151,14 @@
|
|||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D511EEC320242DF400712EC3 /* xcconfig */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
D511EEC420242DF400712EC3 /* DataTests_target.xcconfig */,
|
||||
D511EEC520242DF400712EC3 /* Data_project_debug.xcconfig */,
|
||||
D511EEC620242DF400712EC3 /* Data_project.xcconfig */,
|
||||
D511EEC720242DF400712EC3 /* Data_target.xcconfig */,
|
||||
D511EEC820242DF400712EC3 /* Data_project_release.xcconfig */,
|
||||
);
|
||||
path = xcconfig;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D511EEE520242DFB00712EC3 /* xcconfig */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
D511EEE220242DFB00712EC3 /* Data_project.xcconfig */,
|
||||
D511EEE120242DFB00712EC3 /* Data_project_debug.xcconfig */,
|
||||
D511EEE420242DFB00712EC3 /* Data_project_release.xcconfig */,
|
||||
D511EEE320242DFB00712EC3 /* Data_target.xcconfig */,
|
||||
D511EEE020242DFB00712EC3 /* DataTests_target.xcconfig */,
|
||||
D511EEE220242DFB00712EC3 /* Articles_project.xcconfig */,
|
||||
D511EEE120242DFB00712EC3 /* Articles_project_debug.xcconfig */,
|
||||
D511EEE420242DFB00712EC3 /* Articles_project_release.xcconfig */,
|
||||
D511EEE320242DFB00712EC3 /* Articles_target.xcconfig */,
|
||||
D511EEE020242DFB00712EC3 /* ArticlesDataTests_target.xcconfig */,
|
||||
);
|
||||
path = xcconfig;
|
||||
sourceTree = "<group>";
|
||||
|
@ -194,9 +176,9 @@
|
|||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
844BEE5A1F0AB3C8004AB7CD /* Data */ = {
|
||||
844BEE5A1F0AB3C8004AB7CD /* Articles */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 844BEE6F1F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "Data" */;
|
||||
buildConfigurationList = 844BEE6F1F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "Articles" */;
|
||||
buildPhases = (
|
||||
844BEE561F0AB3C8004AB7CD /* Sources */,
|
||||
844BEE571F0AB3C8004AB7CD /* Frameworks */,
|
||||
|
@ -207,14 +189,14 @@
|
|||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Data;
|
||||
name = Articles;
|
||||
productName = Data;
|
||||
productReference = 844BEE5B1F0AB3C8004AB7CD /* Data.framework */;
|
||||
productReference = 844BEE5B1F0AB3C8004AB7CD /* Articles.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
844BEE631F0AB3C9004AB7CD /* DataTests */ = {
|
||||
844BEE631F0AB3C9004AB7CD /* ArticlesTests */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 844BEE721F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "DataTests" */;
|
||||
buildConfigurationList = 844BEE721F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesTests" */;
|
||||
buildPhases = (
|
||||
844BEE601F0AB3C9004AB7CD /* Sources */,
|
||||
844BEE611F0AB3C9004AB7CD /* Frameworks */,
|
||||
|
@ -225,9 +207,9 @@
|
|||
dependencies = (
|
||||
844BEE671F0AB3C9004AB7CD /* PBXTargetDependency */,
|
||||
);
|
||||
name = DataTests;
|
||||
name = ArticlesTests;
|
||||
productName = DataTests;
|
||||
productReference = 844BEE641F0AB3C9004AB7CD /* DataTests.xctest */;
|
||||
productReference = 844BEE641F0AB3C9004AB7CD /* ArticlesTests.xctest */;
|
||||
productType = "com.apple.product-type.bundle.unit-test";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
@ -253,7 +235,7 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 844BEE551F0AB3C8004AB7CD /* Build configuration list for PBXProject "Data" */;
|
||||
buildConfigurationList = 844BEE551F0AB3C8004AB7CD /* Build configuration list for PBXProject "Articles" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
|
@ -271,8 +253,8 @@
|
|||
);
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
844BEE5A1F0AB3C8004AB7CD /* Data */,
|
||||
844BEE631F0AB3C9004AB7CD /* DataTests */,
|
||||
844BEE5A1F0AB3C8004AB7CD /* Articles */,
|
||||
844BEE631F0AB3C9004AB7CD /* ArticlesTests */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
@ -346,7 +328,7 @@
|
|||
/* Begin PBXTargetDependency section */
|
||||
844BEE671F0AB3C9004AB7CD /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 844BEE5A1F0AB3C8004AB7CD /* Data */;
|
||||
target = 844BEE5A1F0AB3C8004AB7CD /* Articles */;
|
||||
targetProxy = 844BEE661F0AB3C9004AB7CD /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
|
@ -354,50 +336,58 @@
|
|||
/* Begin XCBuildConfiguration section */
|
||||
844BEE6D1F0AB3C9004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC520242DF400712EC3 /* Data_project_debug.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
SWIFT_VERSION = 4.2;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
844BEE6E1F0AB3C9004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC820242DF400712EC3 /* Data_project_release.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
SWIFT_VERSION = 4.2;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
844BEE701F0AB3C9004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC720242DF400712EC3 /* Data_target.xcconfig */;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Info.plist";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.Articles;
|
||||
PRODUCT_NAME = Articles;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
844BEE711F0AB3C9004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC720242DF400712EC3 /* Data_target.xcconfig */;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Info.plist";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.Articles;
|
||||
PRODUCT_NAME = Articles;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
844BEE731F0AB3C9004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC420242DF400712EC3 /* DataTests_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_NAME = ArticlesTests;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
844BEE741F0AB3C9004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEC420242DF400712EC3 /* DataTests_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_NAME = ArticlesTests;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
844BEE551F0AB3C8004AB7CD /* Build configuration list for PBXProject "Data" */ = {
|
||||
844BEE551F0AB3C8004AB7CD /* Build configuration list for PBXProject "Articles" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE6D1F0AB3C9004AB7CD /* Debug */,
|
||||
|
@ -406,7 +396,7 @@
|
|||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
844BEE6F1F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "Data" */ = {
|
||||
844BEE6F1F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "Articles" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE701F0AB3C9004AB7CD /* Debug */,
|
||||
|
@ -415,7 +405,7 @@
|
|||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
844BEE721F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "DataTests" */ = {
|
||||
844BEE721F0AB3C9004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesTests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE731F0AB3C9004AB7CD /* Debug */,
|
|
@ -0,0 +1,80 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1000"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "844BEE5A1F0AB3C8004AB7CD"
|
||||
BuildableName = "Articles.framework"
|
||||
BlueprintName = "Articles"
|
||||
ReferencedContainer = "container:Articles.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "844BEE5A1F0AB3C8004AB7CD"
|
||||
BuildableName = "Articles.framework"
|
||||
BlueprintName = "Articles"
|
||||
ReferencedContainer = "container:Articles.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "844BEE5A1F0AB3C8004AB7CD"
|
||||
BuildableName = "Articles.framework"
|
||||
BlueprintName = "Articles"
|
||||
ReferencedContainer = "container:Articles.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import XCTest
|
||||
@testable import Data
|
||||
@testable import Articles
|
||||
|
||||
class DataTests: XCTestCase {
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks
|
||||
INFOPLIST_FILE = DataTests/Info.plist
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.DataTests
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.ArticlesDataTests
|
||||
PRODUCT_NAME = $(TARGET_NAME)
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
#include "./Data_project.xcconfig"
|
||||
#include "./ArticlesData_project.xcconfig"
|
||||
|
||||
DEBUG_INFORMATION_FORMAT = dwarf
|
||||
ENABLE_TESTABILITY = YES
|
|
@ -1,4 +1,4 @@
|
|||
#include "./Database_project.xcconfig"
|
||||
#include "./ArticlesData_project.xcconfig"
|
||||
|
||||
DEBUG_INFORMATION_FORMAT = dwarf-with-dsym
|
||||
ENABLE_NS_ASSERTIONS = NO
|
|
@ -8,7 +8,7 @@ LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_pa
|
|||
DEFINES_MODULE = YES
|
||||
FRAMEWORK_VERSION = A
|
||||
INFOPLIST_FILE = Info.plist
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.Data
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.Articles
|
||||
PRODUCT_NAME = $(TARGET_NAME)
|
||||
CLANG_ENABLE_MODULES = YES
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
//
|
||||
// Database.swift
|
||||
// ArticlesDatabase.swift
|
||||
// Evergreen
|
||||
//
|
||||
// Created by Brent Simmons on 7/20/15.
|
||||
|
@ -10,7 +10,7 @@ import Foundation
|
|||
import RSCore
|
||||
import RSDatabase
|
||||
import RSParser
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// This file and UnreadCountDictionary are the entirety of the public API for Database.framework.
|
||||
// Everything else is implementation.
|
||||
|
@ -19,7 +19,7 @@ public typealias ArticleResultBlock = (Set<Article>) -> Void
|
|||
public typealias UnreadCountCompletionBlock = (UnreadCountDictionary) -> Void
|
||||
public typealias UpdateArticlesWithFeedCompletionBlock = (Set<Article>?, Set<Article>?) -> Void //newArticles, updatedArticles
|
||||
|
||||
public final class Database {
|
||||
public final class ArticlesDatabase {
|
||||
|
||||
private let accountID: String
|
||||
private let articlesTable: ArticlesTable
|
|
@ -8,13 +8,14 @@
|
|||
|
||||
/* Begin PBXBuildFile section */
|
||||
840405CF1F1A963700DF0296 /* AttachmentsTable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840405CE1F1A963700DF0296 /* AttachmentsTable.swift */; };
|
||||
841D4D742106B59F00DD04E6 /* Articles.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 841D4D732106B59F00DD04E6 /* Articles.framework */; };
|
||||
84288A001F6A3C4400395871 /* DatabaseObject+Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842889FF1F6A3C4400395871 /* DatabaseObject+Database.swift */; };
|
||||
84288A021F6A3D8000395871 /* RelatedObjectsMap+Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84288A011F6A3D8000395871 /* RelatedObjectsMap+Database.swift */; };
|
||||
843577161F744FC800F460AE /* DatabaseArticle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843577151F744FC800F460AE /* DatabaseArticle.swift */; };
|
||||
843577221F749C6200F460AE /* ArticleChangesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843577211F749C6200F460AE /* ArticleChangesTests.swift */; };
|
||||
843702C31F70D15D00B18807 /* ParsedArticle+Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843702C21F70D15D00B18807 /* ParsedArticle+Database.swift */; };
|
||||
843CB9961F34174100EE6581 /* Author+Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F20F901F1810DD00D8E682 /* Author+Database.swift */; };
|
||||
844BEE411F0AB3AB004AB7CD /* Database.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 844BEE371F0AB3AA004AB7CD /* Database.framework */; };
|
||||
844BEE411F0AB3AB004AB7CD /* ArticlesDatabase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 844BEE371F0AB3AA004AB7CD /* ArticlesDatabase.framework */; };
|
||||
844BEE461F0AB3AB004AB7CD /* DatabaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 844BEE451F0AB3AB004AB7CD /* DatabaseTests.swift */; };
|
||||
845580671F0AEBCD003CCFA1 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 845580661F0AEBCD003CCFA1 /* Constants.swift */; };
|
||||
845580761F0AF670003CCFA1 /* Article+Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 845580751F0AF670003CCFA1 /* Article+Database.swift */; };
|
||||
|
@ -25,11 +26,10 @@
|
|||
848E3EB920FBCFD20004B7ED /* RSCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 848E3EB820FBCFD20004B7ED /* RSCore.framework */; };
|
||||
848E3EBB20FBCFD80004B7ED /* RSParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 848E3EBA20FBCFD80004B7ED /* RSParser.framework */; };
|
||||
848E3EBD20FBCFDE0004B7ED /* RSDatabase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 848E3EBC20FBCFDE0004B7ED /* RSDatabase.framework */; };
|
||||
84E156EA1F0AB80500F8CC05 /* Database.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84E156E91F0AB80500F8CC05 /* Database.swift */; };
|
||||
84E156EA1F0AB80500F8CC05 /* ArticlesDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84E156E91F0AB80500F8CC05 /* ArticlesDatabase.swift */; };
|
||||
84E156EC1F0AB80E00F8CC05 /* ArticlesTable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84E156EB1F0AB80E00F8CC05 /* ArticlesTable.swift */; };
|
||||
84E156EE1F0AB81400F8CC05 /* StatusesTable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84E156ED1F0AB81400F8CC05 /* StatusesTable.swift */; };
|
||||
84E156F01F0AB81F00F8CC05 /* CreateStatements.sql in Resources */ = {isa = PBXBuildFile; fileRef = 84E156EF1F0AB81F00F8CC05 /* CreateStatements.sql */; };
|
||||
84E156FD1F0AB86100F8CC05 /* Data.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84E156F81F0AB83600F8CC05 /* Data.framework */; };
|
||||
84F20F8F1F180D8700D8E682 /* AuthorsTable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F20F8E1F180D8700D8E682 /* AuthorsTable.swift */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
|
@ -115,13 +115,14 @@
|
|||
|
||||
/* Begin PBXFileReference section */
|
||||
840405CE1F1A963700DF0296 /* AttachmentsTable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentsTable.swift; sourceTree = "<group>"; };
|
||||
841D4D732106B59F00DD04E6 /* Articles.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Articles.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
842889FF1F6A3C4400395871 /* DatabaseObject+Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DatabaseObject+Database.swift"; sourceTree = "<group>"; };
|
||||
84288A011F6A3D8000395871 /* RelatedObjectsMap+Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "RelatedObjectsMap+Database.swift"; sourceTree = "<group>"; };
|
||||
843577151F744FC800F460AE /* DatabaseArticle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabaseArticle.swift; sourceTree = "<group>"; };
|
||||
843577211F749C6200F460AE /* ArticleChangesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArticleChangesTests.swift; sourceTree = "<group>"; };
|
||||
843702C21F70D15D00B18807 /* ParsedArticle+Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = "ParsedArticle+Database.swift"; path = "Extensions/ParsedArticle+Database.swift"; sourceTree = "<group>"; };
|
||||
844BEE371F0AB3AA004AB7CD /* Database.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Database.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE401F0AB3AB004AB7CD /* DatabaseTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DatabaseTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE371F0AB3AA004AB7CD /* ArticlesDatabase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ArticlesDatabase.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE401F0AB3AB004AB7CD /* ArticlesDatabaseTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ArticlesDatabaseTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
844BEE451F0AB3AB004AB7CD /* DatabaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabaseTests.swift; sourceTree = "<group>"; };
|
||||
844BEE471F0AB3AB004AB7CD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
845580661F0AEBCD003CCFA1 /* Constants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = "<group>"; };
|
||||
|
@ -136,7 +137,7 @@
|
|||
848E3EBC20FBCFDE0004B7ED /* RSDatabase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = RSDatabase.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
84BB4B8F1F119C4900858766 /* RSCore.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RSCore.xcodeproj; path = ../RSCore/RSCore.xcodeproj; sourceTree = "<group>"; };
|
||||
84E156E81F0AB75600F8CC05 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
84E156E91F0AB80500F8CC05 /* Database.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Database.swift; sourceTree = "<group>"; };
|
||||
84E156E91F0AB80500F8CC05 /* ArticlesDatabase.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ArticlesDatabase.swift; sourceTree = "<group>"; };
|
||||
84E156EB1F0AB80E00F8CC05 /* ArticlesTable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ArticlesTable.swift; sourceTree = "<group>"; };
|
||||
84E156ED1F0AB81400F8CC05 /* StatusesTable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StatusesTable.swift; sourceTree = "<group>"; };
|
||||
84E156EF1F0AB81F00F8CC05 /* CreateStatements.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CreateStatements.sql; sourceTree = "<group>"; };
|
||||
|
@ -144,11 +145,11 @@
|
|||
84E157001F0AB89B00F8CC05 /* RSDatabase.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RSDatabase.xcodeproj; path = ../RSDatabase/RSDatabase.xcodeproj; sourceTree = "<group>"; };
|
||||
84F20F8E1F180D8700D8E682 /* AuthorsTable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthorsTable.swift; sourceTree = "<group>"; };
|
||||
84F20F901F1810DD00D8E682 /* Author+Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = "Author+Database.swift"; path = "Extensions/Author+Database.swift"; sourceTree = "<group>"; };
|
||||
D511EEE720242E0800712EC3 /* DatabaseTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DatabaseTests_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE820242E0800712EC3 /* Database_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Database_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE920242E0800712EC3 /* Database_project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Database_project.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEEA20242E0800712EC3 /* Database_project_debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Database_project_debug.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEEB20242E0800712EC3 /* Database_project_release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Database_project_release.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE720242E0800712EC3 /* ArticlesDatabaseTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDatabaseTests_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE820242E0800712EC3 /* ArticlesDatabase_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDatabase_target.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEE920242E0800712EC3 /* ArticlesDatabase_project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDatabase_project.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEEA20242E0800712EC3 /* ArticlesDatabase_project_debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDatabase_project_debug.xcconfig; sourceTree = "<group>"; };
|
||||
D511EEEB20242E0800712EC3 /* ArticlesDatabase_project_release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ArticlesDatabase_project_release.xcconfig; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
|
@ -156,10 +157,10 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
841D4D742106B59F00DD04E6 /* Articles.framework in Frameworks */,
|
||||
848E3EBD20FBCFDE0004B7ED /* RSDatabase.framework in Frameworks */,
|
||||
848E3EBB20FBCFD80004B7ED /* RSParser.framework in Frameworks */,
|
||||
848E3EB920FBCFD20004B7ED /* RSCore.framework in Frameworks */,
|
||||
84E156FD1F0AB86100F8CC05 /* Data.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -167,7 +168,7 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
844BEE411F0AB3AB004AB7CD /* Database.framework in Frameworks */,
|
||||
844BEE411F0AB3AB004AB7CD /* ArticlesDatabase.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -177,7 +178,7 @@
|
|||
844BEE2D1F0AB3AA004AB7CD = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
84E156E91F0AB80500F8CC05 /* Database.swift */,
|
||||
84E156E91F0AB80500F8CC05 /* ArticlesDatabase.swift */,
|
||||
848AD2951F58A91E004FB0EC /* UnreadCountDictionary.swift */,
|
||||
845580661F0AEBCD003CCFA1 /* Constants.swift */,
|
||||
84E156EB1F0AB80E00F8CC05 /* ArticlesTable.swift */,
|
||||
|
@ -198,8 +199,8 @@
|
|||
844BEE381F0AB3AA004AB7CD /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
844BEE371F0AB3AA004AB7CD /* Database.framework */,
|
||||
844BEE401F0AB3AB004AB7CD /* DatabaseTests.xctest */,
|
||||
844BEE371F0AB3AA004AB7CD /* ArticlesDatabase.framework */,
|
||||
844BEE401F0AB3AB004AB7CD /* ArticlesDatabaseTests.xctest */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
|
@ -260,6 +261,7 @@
|
|||
84E156FB1F0AB83A00F8CC05 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
841D4D732106B59F00DD04E6 /* Articles.framework */,
|
||||
848E3EBC20FBCFDE0004B7ED /* RSDatabase.framework */,
|
||||
848E3EBA20FBCFD80004B7ED /* RSParser.framework */,
|
||||
848E3EB820FBCFD20004B7ED /* RSCore.framework */,
|
||||
|
@ -284,11 +286,11 @@
|
|||
D511EEE620242E0800712EC3 /* xcconfig */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
D511EEE720242E0800712EC3 /* DatabaseTests_target.xcconfig */,
|
||||
D511EEE820242E0800712EC3 /* Database_target.xcconfig */,
|
||||
D511EEE920242E0800712EC3 /* Database_project.xcconfig */,
|
||||
D511EEEA20242E0800712EC3 /* Database_project_debug.xcconfig */,
|
||||
D511EEEB20242E0800712EC3 /* Database_project_release.xcconfig */,
|
||||
D511EEE720242E0800712EC3 /* ArticlesDatabaseTests_target.xcconfig */,
|
||||
D511EEE820242E0800712EC3 /* ArticlesDatabase_target.xcconfig */,
|
||||
D511EEE920242E0800712EC3 /* ArticlesDatabase_project.xcconfig */,
|
||||
D511EEEA20242E0800712EC3 /* ArticlesDatabase_project_debug.xcconfig */,
|
||||
D511EEEB20242E0800712EC3 /* ArticlesDatabase_project_release.xcconfig */,
|
||||
);
|
||||
path = xcconfig;
|
||||
sourceTree = "<group>";
|
||||
|
@ -306,9 +308,9 @@
|
|||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
844BEE361F0AB3AA004AB7CD /* Database */ = {
|
||||
844BEE361F0AB3AA004AB7CD /* ArticlesDatabase */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 844BEE4B1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "Database" */;
|
||||
buildConfigurationList = 844BEE4B1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesDatabase" */;
|
||||
buildPhases = (
|
||||
844BEE321F0AB3AA004AB7CD /* Sources */,
|
||||
844BEE331F0AB3AA004AB7CD /* Frameworks */,
|
||||
|
@ -319,14 +321,14 @@
|
|||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Database;
|
||||
name = ArticlesDatabase;
|
||||
productName = Database;
|
||||
productReference = 844BEE371F0AB3AA004AB7CD /* Database.framework */;
|
||||
productReference = 844BEE371F0AB3AA004AB7CD /* ArticlesDatabase.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
844BEE3F1F0AB3AB004AB7CD /* DatabaseTests */ = {
|
||||
844BEE3F1F0AB3AB004AB7CD /* ArticlesDatabaseTests */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 844BEE4E1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "DatabaseTests" */;
|
||||
buildConfigurationList = 844BEE4E1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesDatabaseTests" */;
|
||||
buildPhases = (
|
||||
844BEE3C1F0AB3AB004AB7CD /* Sources */,
|
||||
844BEE3D1F0AB3AB004AB7CD /* Frameworks */,
|
||||
|
@ -337,9 +339,9 @@
|
|||
dependencies = (
|
||||
844BEE431F0AB3AB004AB7CD /* PBXTargetDependency */,
|
||||
);
|
||||
name = DatabaseTests;
|
||||
name = ArticlesDatabaseTests;
|
||||
productName = DatabaseTests;
|
||||
productReference = 844BEE401F0AB3AB004AB7CD /* DatabaseTests.xctest */;
|
||||
productReference = 844BEE401F0AB3AB004AB7CD /* ArticlesDatabaseTests.xctest */;
|
||||
productType = "com.apple.product-type.bundle.unit-test";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
@ -365,7 +367,7 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 844BEE311F0AB3AA004AB7CD /* Build configuration list for PBXProject "Database" */;
|
||||
buildConfigurationList = 844BEE311F0AB3AA004AB7CD /* Build configuration list for PBXProject "ArticlesDatabase" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
|
@ -395,8 +397,8 @@
|
|||
);
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
844BEE361F0AB3AA004AB7CD /* Database */,
|
||||
844BEE3F1F0AB3AB004AB7CD /* DatabaseTests */,
|
||||
844BEE361F0AB3AA004AB7CD /* ArticlesDatabase */,
|
||||
844BEE3F1F0AB3AB004AB7CD /* ArticlesDatabaseTests */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
@ -512,7 +514,7 @@
|
|||
843702C31F70D15D00B18807 /* ParsedArticle+Database.swift in Sources */,
|
||||
84E156EC1F0AB80E00F8CC05 /* ArticlesTable.swift in Sources */,
|
||||
84E156EE1F0AB81400F8CC05 /* StatusesTable.swift in Sources */,
|
||||
84E156EA1F0AB80500F8CC05 /* Database.swift in Sources */,
|
||||
84E156EA1F0AB80500F8CC05 /* ArticlesDatabase.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -530,7 +532,7 @@
|
|||
/* Begin PBXTargetDependency section */
|
||||
844BEE431F0AB3AB004AB7CD /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 844BEE361F0AB3AA004AB7CD /* Database */;
|
||||
target = 844BEE361F0AB3AA004AB7CD /* ArticlesDatabase */;
|
||||
targetProxy = 844BEE421F0AB3AB004AB7CD /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
|
@ -538,7 +540,7 @@
|
|||
/* Begin XCBuildConfiguration section */
|
||||
844BEE491F0AB3AB004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEEA20242E0800712EC3 /* Database_project_debug.xcconfig */;
|
||||
baseConfigurationReference = D511EEEA20242E0800712EC3 /* ArticlesDatabase_project_debug.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
|
@ -547,7 +549,7 @@
|
|||
};
|
||||
844BEE4A1F0AB3AB004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEEB20242E0800712EC3 /* Database_project_release.xcconfig */;
|
||||
baseConfigurationReference = D511EEEB20242E0800712EC3 /* ArticlesDatabase_project_release.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
|
@ -556,36 +558,42 @@
|
|||
};
|
||||
844BEE4C1F0AB3AB004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEE820242E0800712EC3 /* Database_target.xcconfig */;
|
||||
baseConfigurationReference = D511EEE820242E0800712EC3 /* ArticlesDatabase_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.ArticlesDatabase;
|
||||
PRODUCT_NAME = ArticlesDatabase;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
844BEE4D1F0AB3AB004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEE820242E0800712EC3 /* Database_target.xcconfig */;
|
||||
baseConfigurationReference = D511EEE820242E0800712EC3 /* ArticlesDatabase_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.ArticlesDatabase;
|
||||
PRODUCT_NAME = ArticlesDatabase;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
844BEE4F1F0AB3AB004AB7CD /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEE720242E0800712EC3 /* DatabaseTests_target.xcconfig */;
|
||||
baseConfigurationReference = D511EEE720242E0800712EC3 /* ArticlesDatabaseTests_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_NAME = ArticlesDatabaseTests;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
844BEE501F0AB3AB004AB7CD /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = D511EEE720242E0800712EC3 /* DatabaseTests_target.xcconfig */;
|
||||
baseConfigurationReference = D511EEE720242E0800712EC3 /* ArticlesDatabaseTests_target.xcconfig */;
|
||||
buildSettings = {
|
||||
PRODUCT_NAME = ArticlesDatabaseTests;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
844BEE311F0AB3AA004AB7CD /* Build configuration list for PBXProject "Database" */ = {
|
||||
844BEE311F0AB3AA004AB7CD /* Build configuration list for PBXProject "ArticlesDatabase" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE491F0AB3AB004AB7CD /* Debug */,
|
||||
|
@ -594,7 +602,7 @@
|
|||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
844BEE4B1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "Database" */ = {
|
||||
844BEE4B1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesDatabase" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE4C1F0AB3AB004AB7CD /* Debug */,
|
||||
|
@ -603,7 +611,7 @@
|
|||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
844BEE4E1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "DatabaseTests" */ = {
|
||||
844BEE4E1F0AB3AB004AB7CD /* Build configuration list for PBXNativeTarget "ArticlesDatabaseTests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
844BEE4F1F0AB3AB004AB7CD /* Debug */,
|
|
@ -10,7 +10,7 @@ import Foundation
|
|||
import RSCore
|
||||
import RSDatabase
|
||||
import RSParser
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class ArticlesTable: DatabaseTable {
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
final class AttachmentsTable: DatabaseRelatedObjectsTable {
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// article->authors is a many-to-many relationship.
|
||||
// There’s a lookup table relating authorID and articleID.
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// Intermediate representation of an Article. Doesn’t include related objects.
|
||||
// Used by ArticlesTable as part of fetching articles.
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension Array where Element == DatabaseObject {
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import XCTest
|
||||
@testable import Database
|
||||
@testable import ArticlesDatabase
|
||||
|
||||
class ArticleChangesTests: XCTestCase {
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import XCTest
|
||||
@testable import Database
|
||||
@testable import ArticlesDatabase
|
||||
|
||||
class DatabaseTests: XCTestCase {
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
import RSParser
|
||||
|
||||
extension Article {
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension ArticleStatus {
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSDatabase
|
||||
import RSParser
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
import RSDatabase
|
||||
import RSParser
|
||||
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension Set where Element == Feed {
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSParser
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension ParsedItem {
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
import Foundation
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
extension RelatedObjectsMap {
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
import Foundation
|
||||
import RSCore
|
||||
import RSDatabase
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
// Article->ArticleStatus is a to-one relationship.
|
||||
//
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
|
||||
import Foundation
|
||||
import Data
|
||||
import Articles
|
||||
|
||||
public struct UnreadCountDictionary {
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks
|
||||
INFOPLIST_FILE = DatabaseTests/Info.plist
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.DatabaseTests
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.ranchero.ArticlesDatabaseTests
|
||||
PRODUCT_NAME = $(TARGET_NAME)
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue