Skip to content

Commit

Permalink
Avoid caching a PrivacyConfig instance in FeatureFlagger (#2692)
Browse files Browse the repository at this point in the history
Task/Issue URL: https://app.asana.com/0/414235014887631/1206053496104935/f
Tech Design URL:
CC:

Description:

This PR updates FeatureFlagger to no longer cache a PrivacyConfig instance.
  • Loading branch information
samsymons authored Apr 8, 2024
1 parent dcbc78a commit 93bdf47
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 7 deletions.
2 changes: 1 addition & 1 deletion DuckDuckGo.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -10037,7 +10037,7 @@
repositoryURL = "https://github.com/DuckDuckGo/BrowserServicesKit";
requirement = {
kind = exactVersion;
version = 132.0.2;
version = 133.0.0;
};
};
9F8FE9472BAE50E50071E372 /* XCRemoteSwiftPackageReference "lottie-spm" */ = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/DuckDuckGo/BrowserServicesKit",
"state" : {
"revision" : "5199a6964e183c3d001b188286bbabeca93c8849",
"version" : "132.0.2"
"revision" : "c0b0cb55e7ac2f69d10452e1a5c06713155d798e",
"version" : "133.0.0"
}
},
{
Expand Down
6 changes: 4 additions & 2 deletions DuckDuckGo/AppDependencyProvider.swift
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,10 @@ class AppDependencyProvider: DependencyProvider {
let variantManager: VariantManager = DefaultVariantManager()

let internalUserDecider: InternalUserDecider = ContentBlocking.shared.privacyConfigurationManager.internalUserDecider
private lazy var privacyConfig: PrivacyConfiguration = ContentBlocking.shared.privacyConfigurationManager.privacyConfig
lazy var featureFlagger: FeatureFlagger = DefaultFeatureFlagger(internalUserDecider: internalUserDecider, privacyConfig: privacyConfig)
lazy var featureFlagger: FeatureFlagger = DefaultFeatureFlagger(
internalUserDecider: internalUserDecider,
privacyConfigManager: ContentBlocking.shared.privacyConfigurationManager
)

let remoteMessagingStore: RemoteMessagingStore = RemoteMessagingStore()
lazy var homePageConfiguration: HomePageConfiguration = HomePageConfiguration(variantManager: variantManager,
Expand Down
2 changes: 1 addition & 1 deletion DuckDuckGoTests/AppUserDefaultsTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ class AppUserDefaultsTests: XCTestCase {
mockManager.privacyConfig = mockConfiguration(subfeatureEnabled: enabled)

let internalUserDecider = DefaultInternalUserDecider(store: internalUserDeciderStore)
return DefaultFeatureFlagger(internalUserDecider: internalUserDecider, privacyConfig: mockManager.privacyConfig)
return DefaultFeatureFlagger(internalUserDecider: internalUserDecider, privacyConfigManager: mockManager)
}

private func mockConfiguration(subfeatureEnabled: Bool) -> PrivacyConfiguration {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ final class NetworkProtectionAccessControllerTests: XCTestCase {
mockManager.privacyConfig = mockConfiguration(subfeatureEnabled: enabled)

let internalUserDecider = DefaultInternalUserDecider(store: internalUserDeciderStore)
return DefaultFeatureFlagger(internalUserDecider: internalUserDecider, privacyConfig: mockManager.privacyConfig)
return DefaultFeatureFlagger(internalUserDecider: internalUserDecider, privacyConfigManager: mockManager)
}

private func mockConfiguration(subfeatureEnabled: Bool) -> PrivacyConfiguration {
Expand Down

0 comments on commit 93bdf47

Please sign in to comment.