Skip to content

Commit

Permalink
Merge branch 'main' into sam/reduce-vpn-manager-instances
Browse files Browse the repository at this point in the history
# By Dax the Duck (3) and others
# Via GitHub (3) and Dominik Kapusta (1)
* main:
  Add attribute for checking for deprecated Mac remote message interaction (#2995)
  SERP version flag removed (#2998)
  Fix VPN configuration removal to stop the tunnel (#2991)
  Readme & Contribute changes (#2982)
  Automatic updates (#2938)
  Add support for skipping sending usage pixels for remote messages (#2994)
  Bump version to 1.97.0 (229)
  Update vertical spacing in New Tab Page (#2986)
  Bump version to 1.97.0 (228)
  Bump Submodules/privacy-reference-tests from `a603ff9` to `afb4f61` (#2984)
  Updates BSK 171.2.3
  VPN no longer binds to a fixed listening port (#2992)
  Bump version to 1.97.0 (227)

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
  • Loading branch information
samsymons committed Jul 19, 2024
2 parents 989ceed + fa767fc commit d564dd0
Show file tree
Hide file tree
Showing 83 changed files with 4,143 additions and 826 deletions.
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

Thank you for taking the time to contribute to DuckDuckGo! :sparkles:

We are pleased to open up the project to you - our community. How can you contribute?
We are pleased to open up this project to you our community. We want to build the best browser out there. Here's how you can help us make that happen!

## Share feedback
Contact us at https://duckduckgo.com/feedback if you have feedback, questions or want to chat. You can also use the feedback form embedded within our app - to do so please go to Main Menu -> Help -> Send Feedback.
If you have feedback or questions, you can [contact us](https://duckduckgo.com/duckduckgo-help-pages/company/contact-us/). You can also use the feedback form in the browser. To do so, go to the three-dot menu > Send Feedback.

## Report an issue
A great way to contribute to the project is to report an issue when you encounter a problem.
Expand All @@ -19,7 +19,7 @@ We want our app to be as stable as possible thus your bug reports are immensely

If you have encountered a security issue, please reach us through https://hackerone.com/duckduckgo.

## Contributing Code
## Contribute Code
We're always open to contributions from the community! There are different approaches depending on how you wish to contribute:

* **For bug fixes**, feel free to open a pull request along with an associated issue. Someone from the team will review your issue/change within a few days.
Expand Down
2 changes: 1 addition & 1 deletion Configuration/BuildNumber.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1 @@
CURRENT_PROJECT_VERSION = 226
CURRENT_PROJECT_VERSION = 229
112 changes: 103 additions & 9 deletions DuckDuckGo.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

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" : {
"branch" : "sam/reduce-vpn-manager-instances",
"revision" : "bc7c9637fe9491158a8c8a6ac6183a0e20593431"
"revision" : "16686ec1d3a8641b47c55d5271e29c7dbe4c9e73",
"version" : "173.0.0"
}
},
{
Expand Down Expand Up @@ -131,8 +131,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-argument-parser.git",
"state" : {
"revision" : "0fbc8848e389af3bb55c182bc19ca9d5dc2f255b",
"version" : "1.4.0"
"revision" : "41982a3656a71c768319979febd796c6fd111d5c",
"version" : "1.5.0"
}
},
{
Expand Down
4 changes: 4 additions & 0 deletions DuckDuckGo/Application/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,10 @@ final class AppDelegate: NSObject, NSApplicationDelegate {

setUpAutofillPixelReporter()

#if SPARKLE
updateController.checkNewApplicationVersion()
#endif

remoteMessagingClient?.startRefreshingRemoteMessages()

if didCrashDuringCrashHandlersSetUp {
Expand Down
132 changes: 0 additions & 132 deletions DuckDuckGo/Application/UpdateController.swift

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0xEF",
"green" : "0x69",
"red" : "0x39"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"images" : [
{
"filename" : "AboutPageLogo.pdf",
"filename" : "DuckDuckGo.pdf",
"idiom" : "universal"
}
],
Expand Down
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "Icon 22.pdf",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"images" : [
{
"filename" : "Icon 23.pdf",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"template-rendering-intent" : "template"
}
}
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "Icon 21.pdf",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "Icon 19.pdf",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Binary file not shown.
1 change: 1 addition & 0 deletions DuckDuckGo/Bridging.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,5 @@
#ifndef APPSTORE
#import "BWEncryption.h"
#import "PFMoveApplication.h"
#import "Sparkle/SPUStandardUserDriver+Private.h"
#endif
10 changes: 10 additions & 0 deletions DuckDuckGo/Common/Extensions/NSAlertExtension.swift
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,16 @@ extension NSAlert {
return alert
}

static func removeVPNConfigurationAlert() -> NSAlert {
let alert = NSAlert()
alert.messageText = "Remove VPN Configuration?"
alert.informativeText = "This will remove the VPN configuration from System Settings > VPN."
alert.alertStyle = .warning
alert.addButton(withTitle: "Remove")
alert.addButton(withTitle: UserText.cancel)
return alert
}

static func removeAllDBPStateAndDataAlert() -> NSAlert {
let alert = NSAlert()
alert.messageText = "Uninstall Personal Information Removal Login Item?"
Expand Down
5 changes: 5 additions & 0 deletions DuckDuckGo/Common/Extensions/URLExtension.swift
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ extension URL {
static let welcome = URL(string: "duck://welcome")!
static let settings = URL(string: "duck://settings")!
static let bookmarks = URL(string: "duck://bookmarks")!
static let releaseNotes = URL(string: "duck://release-notes")!
// base url for Error Page Alternate HTML loaded into Web View
static let error = URL(string: "duck://error")!

Expand Down Expand Up @@ -364,6 +365,10 @@ extension URL {
return URL(string: "https://duckduckgo.com/about")!
}

static var updates: URL {
return URL(string: "https://duckduckgo.com/updates")!
}

static var webTrackingProtection: URL {
return URL(string: "https://help.duckduckgo.com/duckduckgo-help-pages/privacy/web-tracking-protections/")!
}
Expand Down
19 changes: 19 additions & 0 deletions DuckDuckGo/Common/Localizables/UserText.swift
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,7 @@ struct UserText {
static let tabPreferencesTitle = NSLocalizedString("tab.preferences.title", value: "Settings", comment: "Tab preferences title")
static let tabBookmarksTitle = NSLocalizedString("tab.bookmarks.title", value: "Bookmarks", comment: "Tab bookmarks title")
static let tabOnboardingTitle = NSLocalizedString("tab.onboarding.title", value: "Welcome", comment: "Tab onboarding title")
static let releaseNotesTitle = NSLocalizedString("tab.releaseNotes.title", value: "Release Notes", comment: "Title of deticated tab for Release Notes")

// MARK: Error Pages
static let tabErrorTitle = NSLocalizedString("tab.error.title", value: "Failed to open page", comment: "Tab error title")
Expand Down Expand Up @@ -1184,6 +1185,24 @@ struct UserText {
static let downloadsNoRecentDownload = NSLocalizedString("downloads.no-recent-downloads", value: "No recent downloads", comment: "Label in the downloads manager that shows that there are no recently downloaded items")
static let downloadsOpenDownloadsFolder = NSLocalizedString("downloads.open-downloads-folder", value: "Open Downloads Folder", comment: "Button in the downloads manager that allows the user to open the downloads folder")

// MARK: Updates
static let updateAvailableMenuItem = NSLocalizedString("update.available.menu.item", value: "Update Available - Restart Now", comment: "Title of the menu item that informs user that a new update is available. Clicking on the menu item restarts the app and installs the update")
static let releaseNotesMenuItem = NSLocalizedString("release.notes.menu.item", value: "Release Notes", comment: "Title of the dialog menu item that opens release notes")
static let whatsNewMenuItem = NSLocalizedString("whats.new.menu.item", value: "What's New", comment: "Title of the dialog menu item that opens the 'What's New' page")
static let browserUpdatesTitle = NSLocalizedString("settings.browser.updates.title", value: "Browser Updates", comment: "Title of the section in Settings where people set up automatic vs manual updates")
static let automaticUpdates = NSLocalizedString("settings.automatic.updates", value: "Automatically install updates (recommended)", comment: "Title of the checkbox item to set up automatic updates of the browser")
static let manualUpdates = NSLocalizedString("settings.manual.updates", value: "Check for updates but let you choose to install them", comment: "Title of the checkbox item to set up manual updates of the browser")
static let checkingForUpdate = NSLocalizedString("settings.checking.for.update", value: "Checking for update", comment: "Label informing users the app is currently checking for new update")
static let upToDate = NSLocalizedString("settings.up.to.date", value: "DuckDuckGo is up to date", comment: "Label informing users the app is currently up to date and no update is required.")
static let newerVersionAvailable = NSLocalizedString("settings.newer.version.available", value: "Newer version available", comment: "Label informing users the newer version of the app is available to install.")
static let lastChecked = NSLocalizedString("settings.last.checked", value: "Last checked", comment: "Label informing users what is the last time the app checked for the update.")
static let restartToUpdate = NSLocalizedString("settings.restart.to.update", value: "Restart to Update", comment: "Button label trigering restart and update of the application.")
static let browserUpdatedNotification = NSLocalizedString("notification.browser.updated", value: "Browser Updated", comment: "Notification informing user the app has been updated")
static let browserDowngradedNotification = NSLocalizedString("notification.browser.downgraded", value: "Browser Downgraded", comment: "Notification informing user the app has been downgraded")
static let criticalUpdateNotification = NSLocalizedString("notification.critical.update", value: "Critical update required. Restart to update.", comment: "Notification informing user a critical update is required.")
static let updateAvailableNotification = NSLocalizedString("notification.update.available", value: "New version available. Restart to update.", comment: "Notification informing user the a version of app is available")
static let viewDetails = NSLocalizedString("view.details.button", value: "View Details", comment: "Button title to open more details about the update")

enum Bookmarks {
enum Dialog {
enum Title {
Expand Down
2 changes: 2 additions & 0 deletions DuckDuckGo/Common/Logging/Logging.swift
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ extension OSLog {
case navigation = "Navigation"
case duckPlayer = "Duck Player"
case tabSnapshots = "Tab Snapshots"
case updates = "Updates"
case sync = "Sync"
case dbp = "dbp"
}
Expand Down Expand Up @@ -68,6 +69,7 @@ extension OSLog {
@OSLogWrapper(AppCategories.navigation) static var navigation
@OSLogWrapper(AppCategories.duckPlayer) static var duckPlayer
@OSLogWrapper(AppCategories.tabSnapshots) static var tabSnapshots
@OSLogWrapper(AppCategories.updates) static var updates
@OSLogWrapper(AppCategories.sync) static var sync
@OSLogWrapper(AppCategories.dbp) static var dbp

Expand Down
7 changes: 7 additions & 0 deletions DuckDuckGo/Common/Utilities/UserDefaultsWrapper.swift
Original file line number Diff line number Diff line change
Expand Up @@ -185,13 +185,20 @@ public struct UserDefaultsWrapper<T> {
case networkProtectionWaitlistActiveOverrideRawValue = "networkProtectionWaitlistActiveOverrideRawValue"
case networkProtectionWaitlistEnabledOverrideRawValue = "networkProtectionWaitlistEnabledOverrideRawValue"

// Updates
case automaticUpdates = "updates.automatic"

// Experiments
case pixelExperimentInstalled = "pixel.experiment.installed"
case pixelExperimentCohort = "pixel.experiment.cohort"
case pixelExperimentEnrollmentDate = "pixel.experiment.enrollment.date"
case pixelExperimentFiredPixels = "pixel.experiment.pixels.fired"
case campaignVariant = "campaign.variant"

// Updates
case previousAppVersion = "previous.app.version"
case previousBuild = "previous.build"

// Sync

case syncEnvironment = "sync.environment"
Expand Down
Loading

0 comments on commit d564dd0

Please sign in to comment.