Skip to content

Commit

Permalink
Merge branch 'main' into sam/remove-cgnat
Browse files Browse the repository at this point in the history
# By Daniel Bernal (3) and others
# Via GitHub
* main:
  fix opening tabs with transitional (#2542)
  Integrate confirm entitlements endpoint (#2541)
  Makes dbSaveBloomFilterError daily and count (#2526)
  16. Subscription: Display "Activation in progress" message (#2535)
  Autofill support for deleting all passwords  (#2497)
  Bump BrowserServicesKit (#2532)
  Release 7.111.0-0 (#2534)
  if dax dialogs are showing then dismiss (#2506)
  Remove local BSK reference (#2529)
  15. Subscription sign-out notification observers and Design Feedback (#2528)
  Upgrade to Xcode 15.2 (#2517)
  Report Apple Ad attribution using pixel (#2510)
  15. Subscriptions: Properly sign out users and cache state (#2520)
  Check entitlement periodically and while rekeying NetP (#2461)

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
  • Loading branch information
samsymons committed Mar 6, 2024
2 parents 90999a6 + 5201147 commit 3ecd362
Show file tree
Hide file tree
Showing 103 changed files with 5,601 additions and 382 deletions.
1 change: 1 addition & 0 deletions .github/workflows/end-to-end.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ name: End-to-End tests
on:
schedule:
- cron: '0 4 * * *' # run at 4 AM UTC
workflow_dispatch:

jobs:
end-to-end-tests:
Expand Down
10 changes: 9 additions & 1 deletion .maestro/data_clearing_tests/02_duckduckgo_settings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@ tags:
---

# Set up
- clearKeychain
- clearState
- launchApp
- runFlow:
- runFlow:
when:
visible:
text: "Let’s Do It!"
Expand All @@ -22,6 +23,13 @@ tags:
- inputText: "privacy blogs"
- pressKey: Enter

# Dismiss Dax Dialogs if visible
- runFlow:
when:
visible: "Phew!"
commands:
- tapOn: "Phew!"

# Change settings
- tapOn: "Safe search: moderate ▼"
- tapOn: "Off"
Expand Down
2 changes: 1 addition & 1 deletion .xcode-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
15.1
15.2
2 changes: 1 addition & 1 deletion Configuration/Version.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1 @@
MARKETING_VERSION = 7.110.0
MARKETING_VERSION = 7.111.0
4 changes: 2 additions & 2 deletions Core/AppPrivacyConfigurationDataProvider.swift
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ import BrowserServicesKit
final public class AppPrivacyConfigurationDataProvider: EmbeddedDataProvider {

public struct Constants {
public static let embeddedDataETag = "\"20ceae04600e9d3c46898ac4471fcd70\""
public static let embeddedDataSHA = "987f63a393724a34fe9d190c335f14b58398d2e9e02ccf38b84a7bd57c37b8ab"
public static let embeddedDataETag = "\"a427a69043b2baa27604bc10edb13de1\""
public static let embeddedDataSHA = "1d5c2e4113713fbf02bc617fc689981604ea53be172569a9fd744054b7355c39"
}

public var embeddedDataEtag: String {
Expand Down
1 change: 1 addition & 0 deletions Core/NetworkProtectionNotificationIdentifier.swift
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,5 @@ public enum NetworkProtectionNotificationIdentifier: String {
case connection = "network-protection.notification.connection"
case superseded = "network-protection.notification.superseded"
case test = "network-protection.notification.test"
case entitlement = "network-protection.notification.entitlement"
}
9 changes: 9 additions & 0 deletions Core/Pixel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,15 @@ public struct PixelParameters {
public static let returnUserErrorCode = "error_code"
public static let returnUserOldATB = "old_atb"
public static let returnUserNewATB = "new_atb"

// Ad Attribution
public static let adAttributionOrgID = "org_id"
public static let adAttributionCampaignID = "campaign_id"
public static let adAttributionConversionType = "conversion_type"
public static let adAttributionAdGroupID = "ad_group_id"
public static let adAttributionCountryOrRegion = "country_or_region"
public static let adAttributionKeywordID = "keyword_id"
public static let adAttributionAdID = "ad_id"
}

public struct PixelValues {
Expand Down
5 changes: 5 additions & 0 deletions Core/PixelEvent.swift
Original file line number Diff line number Diff line change
Expand Up @@ -527,6 +527,8 @@ extension Pixel {

case appRatingPromptFetchError

case appleAdAttribution

case userBehaviorReloadTwice
case userBehaviorReloadAndRestart
case userBehaviorReloadAndFireButton
Expand Down Expand Up @@ -1032,6 +1034,9 @@ extension Pixel.Event {
case .debugReturnUserUpdateATB: return "m_debug_return_user_update_atb"

case .appRatingPromptFetchError: return "m_d_app_rating_prompt_fetch_error"

// MARK: - Apple Ad Attribution
case .appleAdAttribution: return "m_apple-ad-attribution"

// MARK: - User behavior
case .userBehaviorReloadTwice: return "m_reload-twice"
Expand Down
10 changes: 7 additions & 3 deletions Core/PrivacyFeatures.swift
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,21 @@ public final class PrivacyFeatures {
}
private static let httpsUpgradeDebugEvents = EventMapping<AppHTTPSUpgradeStore.ErrorEvents> { event, error, parameters, onComplete in
let domainEvent: Pixel.Event
let dailyAndCount: Bool

switch event {
case .dbSaveBloomFilterError:
domainEvent = .dbSaveBloomFilterError
dailyAndCount = true
case .dbSaveExcludedHTTPSDomainsError:
domainEvent = .dbSaveExcludedHTTPSDomainsError
dailyAndCount = false
}

if let error {
Pixel.fire(pixel: domainEvent, error: error, withAdditionalParameters: parameters ?? [:], onComplete: onComplete)
if dailyAndCount {
DailyPixel.fireDailyAndCount(pixel: domainEvent, error: error, withAdditionalParameters: parameters ?? [:], onCountComplete: onComplete)
} else {
Pixel.fire(pixel: domainEvent, withAdditionalParameters: parameters ?? [:], onComplete: onComplete)
Pixel.fire(pixel: domainEvent, error: error, withAdditionalParameters: parameters ?? [:], onComplete: onComplete)
}
}
private static var httpsUpgradeStore: AppHTTPSUpgradeStore {
Expand Down
3 changes: 2 additions & 1 deletion Core/UserDefaultsPropertyWrapper.swift
Original file line number Diff line number Diff line change
Expand Up @@ -124,9 +124,10 @@ public struct UserDefaultsWrapper<T> {

case subscriptionIsActive = "com.duckduckgo.ios.subscruption.isActive"

case appleAdAttributionReportCompleted = "com.duckduckgo.ios.appleAdAttributionReport.completed"

case didRefreshTimestamp = "com.duckduckgo.ios.userBehavior.didRefreshTimestamp"
case didBurnTimestamp = "com.duckduckgo.ios.userBehavior.didBurnTimestamp"

}

private let key: Key
Expand Down
Loading

0 comments on commit 3ecd362

Please sign in to comment.