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

Prevent redeeming invite codes after the VPN test ends #2559

Merged

Conversation

samsymons
Copy link
Contributor

Task/Issue URL: https://app.asana.com/0/414235014887631/1206789264380520/f
Tech Design URL:
CC:

Description:

This is the iOS equivalent of duckduckgo/macos-browser#2347.

Steps to test this PR:

This is harder to test since the staging waitlist endpoint won't work here, but you can do the following:

  1. Change let inviteCode = waitlistStorage.getWaitlistInviteCode() to be hardcoded to a real string (doesn't have to be a real invite code, just needs to not be nil)
  2. Change waitlistBetaActive to be hardcoded to false
  3. Run the app and check that it doesn't try (and fail) to redeem the code, it should stop due to waitlistBetaActive not being true

OS Testing:

  • iOS 14
  • iOS 15
  • iOS 16

Internal references:

Software Engineering Expectations
Technical Design Template

@samsymons samsymons requested a review from diegoreymendez March 7, 2024 21:40
@@ -51,12 +52,17 @@ extension AppDelegate {

VPNWaitlist.shared.fetchInviteCodeIfAvailable { [weak self] error in
guard error == nil else {
#if !DEBUG
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Removed this since there's no reason this code shouldn't run in debug code any more. It was better this way early on, but now we can enable this.

@samsymons samsymons merged commit 6f79d96 into release/7.111.0 Mar 7, 2024
13 checks passed
@samsymons samsymons deleted the sam/fix-token-redemption-after-waitlist-end branch March 7, 2024 21:56
samsymons added a commit that referenced this pull request Mar 8, 2024
* main:
  Point to BSK hotfix (#2558)
  Prevent redeeming invite codes after the VPN test ends (#2559)
  Updates Kingfisher to 7.11.0 (#2545)
  Makes network path metadata description anonymous (#2544)
  Adds pixels to track main VPN funnels (#2543)
  Cleanup after rolling out autoconsent enabled by default (#2537)
  Add #URL macro (#2540)
  Handle expired entitlement in NetP (#2525)
  Remove isSubscriptionEnabled check when attempting to delete NetP token (#2548)
  Validate correct environment (#2546)
  Remove CGNAT range (#2524)
  Add preliminary support for subscription keychain sharing (#2538)
  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)
samsymons added a commit that referenced this pull request Mar 8, 2024
…-lottie-animation

* sam/vpn-ui-improvements:
  Point to BSK hotfix (#2558)
  Prevent redeeming invite codes after the VPN test ends (#2559)
  Updates Kingfisher to 7.11.0 (#2545)
  Makes network path metadata description anonymous (#2544)
  Adds pixels to track main VPN funnels (#2543)
  Cleanup after rolling out autoconsent enabled by default (#2537)
  Add #URL macro (#2540)
  Handle expired entitlement in NetP (#2525)
  Remove isSubscriptionEnabled check when attempting to delete NetP token (#2548)
  Validate correct environment (#2546)
  Remove CGNAT range (#2524)
  Add preliminary support for subscription keychain sharing (#2538)
  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)
samsymons added a commit that referenced this pull request Mar 8, 2024
…n-ui-improvements-3-combine-notification-settings

* sam/vpn-ui-improvements-2-lottie-animation: (22 commits)
  Point to BSK hotfix (#2558)
  Prevent redeeming invite codes after the VPN test ends (#2559)
  Updates Kingfisher to 7.11.0 (#2545)
  Makes network path metadata description anonymous (#2544)
  Adds pixels to track main VPN funnels (#2543)
  Cleanup after rolling out autoconsent enabled by default (#2537)
  Add #URL macro (#2540)
  Handle expired entitlement in NetP (#2525)
  Remove isSubscriptionEnabled check when attempting to delete NetP token (#2548)
  Add dark mode animation.
  Allow the animation intro to be skipped
  Validate correct environment (#2546)
  Remove CGNAT range (#2524)
  Add preliminary support for subscription keychain sharing (#2538)
  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)
  ...
samsymons added a commit that referenced this pull request Mar 8, 2024
…' into sam/vpn-ui-improvements-4-location-setting-change

# By Sam Symons (4) and others
# Via Sam Symons (3) and others
* sam/vpn-ui-improvements-3-combine-notification-settings: (22 commits)
  Point to BSK hotfix (#2558)
  Prevent redeeming invite codes after the VPN test ends (#2559)
  Updates Kingfisher to 7.11.0 (#2545)
  Makes network path metadata description anonymous (#2544)
  Adds pixels to track main VPN funnels (#2543)
  Cleanup after rolling out autoconsent enabled by default (#2537)
  Add #URL macro (#2540)
  Handle expired entitlement in NetP (#2525)
  Remove isSubscriptionEnabled check when attempting to delete NetP token (#2548)
  Add dark mode animation.
  Allow the animation intro to be skipped
  Validate correct environment (#2546)
  Remove CGNAT range (#2524)
  Add preliminary support for subscription keychain sharing (#2538)
  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)
  ...

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
samsymons added a commit that referenced this pull request Mar 11, 2024
* main: (28 commits)
  Fix VPN view model memory leak (#2570)
  Bump submodules/privacy-reference-tests from `40ce868` to `a603ff9` (#2500)
  18. Subscription Entitlements caching (#2556)
  Release 7.111.0-2 (#2563)
  Revert "Report Apple Ad attribution using pixel (#2510)" (#2562)
  Vanilla browser integration (#2550)
  Fix blank space after URL bar hides (#2549)
  Release 7.111.0-1 (#2561)
  Point to BSK hotfix (#2558)
  Prevent redeeming invite codes after the VPN test ends (#2559)
  Updates Kingfisher to 7.11.0 (#2545)
  Makes network path metadata description anonymous (#2544)
  Adds pixels to track main VPN funnels (#2543)
  Cleanup after rolling out autoconsent enabled by default (#2537)
  Add #URL macro (#2540)
  Handle expired entitlement in NetP (#2525)
  Remove isSubscriptionEnabled check when attempting to delete NetP token (#2548)
  Validate correct environment (#2546)
  Remove CGNAT range (#2524)
  Add preliminary support for subscription keychain sharing (#2538)
  ...
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