Rename Data.framework to Articles.framework. Rename Database.framework to ArticlesDatabase.framework.

This commit is contained in:
Brent Simmons 2018-07-23 18:29:08 -07:00
parent 2cd23cf008
commit b7575c687c
104 changed files with 354 additions and 289 deletions

View File

@ -10,7 +10,7 @@ import Foundation
import RSCore
import RSTree
import Account
import Data
import Articles
final class DeleteFromSidebarCommand: UndoableCommand {

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
// Mark articles read/unread, starred/unstarred, deleted/undeleted.

View File

@ -8,7 +8,7 @@
import AppKit
import RSCore
import Data
import Articles
final class SendToMarsEditCommand: SendToCommand {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSCore
// Not undoable.

View File

@ -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;

View File

@ -8,7 +8,7 @@
import AppKit
import DB5
import Data
import Articles
import RSTree
import RSWeb
import Account

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
extension Notification.Name {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import Account
// These handle multiple accounts.

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import Account
protocol SmallIconProvider {

View File

@ -8,7 +8,7 @@
import Foundation
import RSTree
import Data
import Articles
import RSCore
extension Array where Element == Node {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSCore
extension Notification.Name {

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
final class FeedListFolder: Hashable, DisplayNameProvider {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
extension Notification.Name {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSParser
final class FeaturedImageDownloader {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSWeb
import RSParser

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import DB5
final class FeedInspectorViewController: NSViewController, Inspector {

View File

@ -9,7 +9,7 @@
import AppKit
import RSCore
import RSTree
import Data
import Articles
import Account
import RSParser

View File

@ -9,7 +9,7 @@
import AppKit
import RSCore
import RSTree
import Data
import Articles
import Account
protocol AddFeedWindowControllerDelegate: class {

View File

@ -9,7 +9,7 @@
import Foundation
import RSCore
import RSTree
import Data
import Articles
import Account
final class FolderTreeControllerDelegate: TreeControllerDelegate {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import Account
class AddFolderWindowController : NSWindowController {

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
var cachedStyleString = ""
var cachedTemplate = ""

View File

@ -8,7 +8,7 @@
import AppKit
import DB5
import Data
import Articles
final class DetailStatusBarView: NSView {

View File

@ -9,7 +9,7 @@
import Foundation
import WebKit
import RSCore
import Data
import Articles
import RSWeb
final class DetailViewController: NSViewController, WKUIDelegate {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import Account
import RSCore

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSCore
extension Feed: PasteboardWriterOwner {

View File

@ -8,7 +8,7 @@
import AppKit
import RSTree
import Data
import Articles
import RSCore
@objc final class SidebarOutlineDataSource: NSObject, NSOutlineViewDataSource {

View File

@ -8,7 +8,7 @@
import AppKit
import RSCore
import Data
import Articles
import RSWeb
import Account

View File

@ -8,7 +8,7 @@
import Foundation
import RSTree
import Data
import Articles
import Account
final class SidebarTreeControllerDelegate: TreeControllerDelegate {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import Account
import RSCore

View File

@ -8,7 +8,7 @@
import AppKit
import RSTree
import Data
import Articles
import Account
import RSCore

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
typealias ArticleArray = [Article]

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import RSCore
extension Article: PasteboardWriterOwner {

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
struct TimelineCellData {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSParser
// TODO: Dont make all this at top level.

View File

@ -7,7 +7,7 @@
//
import AppKit
import Data
import Articles
import Account
extension TimelineViewController {

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
import Account
class TimelineViewController: NSViewController, UndoableCommandRunner {

View File

@ -8,7 +8,7 @@
import AppKit
import Account
import Data
import Articles
import RSCore
@objc(ScriptableAccount)

View File

@ -17,7 +17,7 @@
*/
import Foundation
import Data
import Articles
protocol AppDelegateAppleEvents {
func installAppleEventHandlers()

View File

@ -8,7 +8,7 @@
import Foundation
import Account
import Data
import Articles
@objc(ScriptableArticle)
class ScriptableArticle: NSObject, UniqueIdScriptingObject, ScriptingObjectContainer {

View File

@ -8,7 +8,7 @@
import Foundation
import Account
import Data
import Articles
@objc(ScriptableAuthor)
class ScriptableAuthor: NSObject, UniqueIdScriptingObject {

View File

@ -9,7 +9,7 @@
import Foundation
import RSParser
import Account
import Data
import Articles
@objc(ScriptableFeed)
class ScriptableFeed: NSObject, UniqueIdScriptingObject, ScriptingObjectContainer{

View File

@ -8,7 +8,7 @@
import Foundation
import Account
import Data
import Articles
import RSCore
@objc(ScriptableFolder)

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
protocol ScriptingMainWindowController {
var scriptingCurrentArticle: Article? { get }

View File

@ -8,7 +8,7 @@
import AppKit
import Account
import Data
import Articles
extension NSApplication : ScriptingObjectContainer {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSCore
protocol PseudoFeed: class, DisplayNameProvider, UnreadCountProvider, SmallIconProvider, PasteboardWriterOwner {

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
import Account
protocol SmartFeedDelegate: DisplayNameProvider, ArticleFetcher {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import Account

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import Account
struct TodayFeedDelegate: SmartFeedDelegate {

View File

@ -8,7 +8,7 @@
import AppKit
import Account
import Data
import Articles
// This just shows the global unread count, which appDelegate already has. Easy.

View File

@ -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)

View File

@ -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 */,

View File

@ -8,7 +8,7 @@
import Foundation
import RSCore
import Data
import Articles
let AccountsDidChangeNotification = "AccountsDidChangeNotification"

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
public protocol ArticleFetcher {

View File

@ -9,7 +9,7 @@
import Foundation
import RSCore
import Data
import Articles
extension Notification.Name {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSParser
public extension Notification.Name {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSCore
public final class Folder: DisplayNameProvider, Container, UnreadCountProvider, Hashable {

View File

@ -10,7 +10,7 @@ import Foundation
import RSCore
import RSParser
import RSWeb
import Data
import Articles
final class LocalAccountRefresher {

View File

@ -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 */,

View File

@ -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>

View File

@ -7,7 +7,7 @@
//
import XCTest
@testable import Data
@testable import Articles
class DataTests: XCTestCase {

View File

@ -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)

View File

@ -1,4 +1,4 @@
#include "./Data_project.xcconfig"
#include "./ArticlesData_project.xcconfig"
DEBUG_INFORMATION_FORMAT = dwarf
ENABLE_TESTABILITY = YES

View File

@ -1,4 +1,4 @@
#include "./Database_project.xcconfig"
#include "./ArticlesData_project.xcconfig"
DEBUG_INFORMATION_FORMAT = dwarf-with-dsym
ENABLE_NS_ASSERTIONS = NO

View File

@ -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

View File

@ -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

View File

@ -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 */,

View File

@ -10,7 +10,7 @@ import Foundation
import RSCore
import RSDatabase
import RSParser
import Data
import Articles
final class ArticlesTable: DatabaseTable {

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
final class AttachmentsTable: DatabaseRelatedObjectsTable {

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
// article->authors is a many-to-many relationship.
// Theres a lookup table relating authorID and articleID.

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
// Intermediate representation of an Article. Doesnt include related objects.
// Used by ArticlesTable as part of fetching articles.

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
extension Array where Element == DatabaseObject {

View File

@ -7,7 +7,7 @@
//
import XCTest
@testable import Database
@testable import ArticlesDatabase
class ArticleChangesTests: XCTestCase {

View File

@ -7,7 +7,7 @@
//
import XCTest
@testable import Database
@testable import ArticlesDatabase
class DatabaseTests: XCTestCase {

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
import RSParser
extension Article {

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
extension ArticleStatus {

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSDatabase
import RSParser

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
import RSDatabase
import RSParser

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
extension Set where Element == Feed {

View File

@ -8,7 +8,7 @@
import Foundation
import RSParser
import Data
import Articles
extension ParsedItem {

View File

@ -8,7 +8,7 @@
import Foundation
import RSDatabase
import Data
import Articles
extension RelatedObjectsMap {

View File

@ -9,7 +9,7 @@
import Foundation
import RSCore
import RSDatabase
import Data
import Articles
// Article->ArticleStatus is a to-one relationship.
//

View File

@ -7,7 +7,7 @@
//
import Foundation
import Data
import Articles
public struct UnreadCountDictionary {

View File

@ -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