Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Malicious site protection iOS #1208

Merged
merged 6 commits into from
Feb 6, 2025

Conversation

alessandroboron
Copy link
Contributor

@alessandroboron alessandroboron commented Jan 31, 2025

Required:
Task/Issue URL: https://app.asana.com/0/1206329551987282/1209233394358451/f
iOS PR: duckduckgo/iOS#3901
macOS PR: duckduckgo/macos-browser#3750
What kind of version bump will this require?: Major

Optional:

Tech Design URL: https://app.asana.com/0/481882893211075/1207273224076495/f

Description:

Add Malicious Site Protection feature to iOS. This PR has already been reviewed incrementally.

Steps to test this PR:
See iOS and macOS PRs for testing instructions.

Before Merging

  • Update references of c-s-s and Privacy Dashboard.

OS Testing:

  • iOS 14
  • iOS 15
  • iOS 16
  • macOS 10.15
  • macOS 11
  • macOS 12

Internal references:

Software Engineering Expectations
Technical Design Template

Package.resolved Outdated
@@ -14,8 +14,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/duckduckgo/content-scope-scripts",
"state" : {
"revision" : "5a463e35ce86fc11394fe62392d32960de22f7d7",
"version" : "7.11.0"
"branch" : "pr-releases/pr-1443",
Copy link
Contributor Author

@alessandroboron alessandroboron Jan 31, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will update this as soon as c-s-s is deployed

Package.resolved Outdated
@@ -59,8 +59,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/duckduckgo/privacy-dashboard",
"state" : {
"revision" : "c52bd5d851b1f8f0482e82b8720852670f525497",
"version" : "8.1.0"
"branch" : "pr-releases/pr-319",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will update this as soon as the new privacy-dashboard version is deployed


extension PixelKit: UpdateManagerPixelFiring {
static func fireFailedToDownloadInitialDatasets(threat: ThreatKind, datasetType: DataManager.StoredDataType.Kind) {
fire(DebugEvent(MaliciousSiteProtection.Event.failedToDownloadInitialDataSets(category: threat, type: datasetType)))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a strong opinion here, but I‘d expect it to use the same eventMapping used in the other place, why this has to break the pattern?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thinking of it, probably best to delegate the event to the client. In the end the client needs to handle the event anyway and it will be consistent with the eventMapping approach without creating another pattern. Fixed.

@alessandroboron alessandroboron force-pushed the alessandro/malicious-site-protection-ios branch 2 times, most recently from 2bcd5c5 to 01631b4 Compare February 4, 2025 02:39
Copy link
Collaborator

@mallexxx mallexxx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

alessandroboron and others added 6 commits February 6, 2025 09:44
**Required**:
Task/Issue URL:  https://app.asana.com/0/72649045549333/1209158005098852
iOS PR: duckduckgo/iOS#3837
macOS PR: duckduckgo/macos-browser#3750
What kind of version bump will this require?: Minor 

**Optional**:
Tech Design URL:
https://app.asana.com/0/1206329551987282/1209133564224796/f

**Description**:
This PR exposes a method to fetch Malicious Site Protection Datasets and store last update dates for datasets.
)

**Required**:
Task/Issue URL:
https://app.asana.com/0/1206329551987282/1209242004458518/f
iOS PR: duckduckgo/iOS#3891
macOS PR: duckduckgo/macos-browser#3796
What kind of version bump will this require?: Minor

**Description**:
This PR makes `MaliciousSiteProtection.Event.errorPageShown` `clientSideHit` parameter optional. See dicussion in [AsanaTask](https://app.asana.com/0/1206329551987282/1209242004458518/f)
@alessandroboron alessandroboron force-pushed the alessandro/malicious-site-protection-ios branch from 8345dda to a73f098 Compare February 5, 2025 22:46
@alessandroboron alessandroboron merged commit 1169c55 into main Feb 6, 2025
7 checks passed
@alessandroboron alessandroboron deleted the alessandro/malicious-site-protection-ios branch February 6, 2025 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants