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

Software update popup should not be presented during Sparkle update process #9562

Open
mbacchi opened this issue Apr 30, 2020 · 25 comments · Fixed by brave/brave-core#12335
Open

Comments

@mbacchi
Copy link
Contributor

mbacchi commented Apr 30, 2020

In issue #9274 there is discussion of the Changelog content which is raw html. That issue notes that Brave should simply update in the background and not present a choice to the user to install the update, skip it or remind them later.

This might be a permissions issue with Sparkle (described here). We will investigate this and attempt to make it auto update for all cases.

@kjozwiak
Copy link
Member

kjozwiak commented May 2, 2020

Reproduced the issue on macOS 👍 As @mbacchi mentioned, it's basically due to not being an admin while an update occurs:

Screen Shot 2020-05-01 at 12 53 07 AM

STR:

  • install Brave on macOS on a none admin user
  • check for an update and you'll get the above when there's an update available

@rebron rebron added the priority/P3 The next thing for us to work on. It'll ride the trains. label May 5, 2020
@twood02
Copy link

twood02 commented May 8, 2020

I experience this issue on OS X 10.15.1 even though my account is an administrator account.

image

image

@srirambv srirambv changed the title Software update popup should not be presented during Sparkle update process [Desktop] Software update popup should not be presented during Sparkle update process Sep 9, 2020
@rebron rebron changed the title [Desktop] Software update popup should not be presented during Sparkle update process Software update popup should not be presented during Sparkle update process Jul 20, 2021
@mherrmann
Copy link

I can't reproduce this issue with an admin user. But it reproduces immediately when Brave is installed in /Applications and a guest user goes to brave://settings/help.

@mherrmann
Copy link

I believe the problem is that Sparkle (at least in our version 1.x) checks for writeability of the app directory before performing a background update.

Our call stack:

  1. checkForUpdatesInBackground()
  2. automaticallyDownloadsUpdates()
  3. systemAllowsAutomaticUpdatesForHost

This last call checks the writeability. If the app directory is not writeable, then checkForUpdatesInBackground() uses SUScheduledUpdateDriver, which is a SU_UI_Based_UpdateDriver (emphasis mine). This is unlike the normal SUAutomaticUpdateDriver, which apparently does not show a UI.

@mherrmann
Copy link

Also in Sparkle 2, the analogous SPUScheduledUpdateDriver appears to be UI-based:

@interface SPUScheduledUpdateDriver() <SPUUIBasedUpdateDriverDelegate>

This makes me believe that it is unlikely that upgrading to Sparkle 2 would fix the problem.

@mherrmann
Copy link

mherrmann commented Feb 10, 2022

@mihaiplesa @bsclifton I think we may be hitting a "by design" issue here. Can I get input from you (and potentially other people you might tag)?

As this issue explains, Brave on macOS shows an unnecessary "Update Available" popup when run as non-admin user and an update becomes available:

image

But consider the constraints: A non-admin user tries to update a usually system-wide installation of Brave. This is not possible without admin rights.

What happens when the non-admin user selects that the update should be installed is that after a restart of Brave they get the following dialog:

image

If they don't have any admin credentials (or cancel the dialog for another reason), then the dialog disappears and Brave does not launch. Brave can be started again, but runs at the old version.

I can think of the following options for addressing this issue. They are quite different in their UX and implications:

  1. Attempt to download and install updates in the background. In this case, non-admin users will regularly get the second popup shown above.
  2. Disable all updates when Brave is run as non-admin user (or more specifically: when Brave's app directory is not writeable.) In this case, brave://settings/help should display a red text to that effect.
  3. Disable background updates but do attempt (without a popup) to update when the user goes to brave://settings/help. This has the advantage that it gives users a way to attempt an update. But if they went to that page for another reason, then they will "unnecessarily" get the second popup shown above after the next relaunch.

What do you think we should do?

@mihaiplesa
Copy link
Contributor

Inclined towards 3. @kjozwiak and @rebron might have some feedback as well.

@rebron
Copy link
Collaborator

rebron commented Feb 11, 2022

@diracdeltas Thoughts on the options @mherrmann proposed here: #9562 (comment)

@diracdeltas
Copy link
Member

option 3 also sounds like the best compromise to me

@rebron
Copy link
Collaborator

rebron commented Feb 11, 2022

@mherrmann @mihaiplesa Let's proceed with option 3 here.

@mherrmann mherrmann added this to the 1.37.x - Nightly milestone Feb 23, 2022
@LaurenWags
Copy link
Member

LaurenWags commented Mar 3, 2022

@brave/legacy_qa when testing this on macOS we should be sure to do multiple checks (x64 v arm64 as well as different versions:

  • Monterey (x64/Intel and arm64/M1)
  • Big Sur (x64/Intel and arm64/M1)
  • Catalina (x64/Intel only)
  • spot check upgrades still work on older version (probably Sierra or El Capitan) but not run through all cases from the PR

@stephendonner stephendonner added the QA/In-Progress Indicates that QA is currently in progress for that particular issue label Mar 22, 2022
@stephendonner
Copy link

stephendonner commented Mar 22, 2022

Verification COMPLETE using various Brave builds on an Intel/x86 machine running macOS Monterey version 12.3

Case 1: background updates, Admin user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate dmg build
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml
  3. launch Brave and shut down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. confirm you’re on the latest 1.37.x build
  11. confirm there’s no Update available popup (edited)
example example example example
Screen Shot 2022-03-21 at 2 17 41 PM Screen Shot 2022-03-21 at 5 18 52 PM Screen Shot 2022-03-21 at 5 19 02 PM Screen Shot 2022-03-21 at 5 19 59 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml
  3. launch Brave and shut down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. confirm you’re on the latest 1.37.x build
  11. confirm there’s no Update available popup (edited)

Actual Result:

I got the Update available popup

example example example
Screen Shot 2022-03-23 at 1 35 42 PM Screen Shot 2022-03-23 at 1 36 19 PM Screen Shot 2022-03-23 at 4 37 55 PM
Case 2: update from release, Admin user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. confirm you’re on the latest 1.37.x build
  8. confirm there’s no Update available popup
example example example example
Screen Shot 2022-03-21 at 5 18 52 PM Screen Shot 2022-03-21 at 2 28 24 PM Screen Shot 2022-03-21 at 5 19 59 PM Screen Shot 2022-03-21 at 4 41 49 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. get prompt for username/password
  8. select Cancel
  9. confirm you’re on the latest 1.37.x build
  10. confirm there’s no Update available popup

Actual Result:

Cancelling the permissions prompt doesn't install the update in the background

example example example example
Screen Shot 2022-03-23 at 1 11 01 PM Screen Shot 2022-03-23 at 1 11 10 PM Screen Shot 2022-03-23 at 1 12 16 PM Screen Shot 2022-03-23 at 12 20 24 PM
Case 3a: update with granted permissions, Guest user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.37.x build
  10. confirm there’s no Update available popup
example example example example
Screen Shot 2022-03-21 at 4 24 00 PM Screen Shot 2022-03-21 at 4 24 46 PM Screen Shot 2022-03-21 at 4 25 10 PM Screen Shot 2022-03-21 at 4 25 44 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.37.x build
  10. confirm there’s no Update available popup

Actual Results:

Got Check for updates automatically? dialog
Got Software Update dialog

example example example
Screen Shot 2022-03-24 at 9 26 36 AM Screen Shot 2022-03-24 at 9 21 07 AM Screen Shot 2022-03-24 at 9 20 56 AM
Case 3b: no update from release, Guest user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups
example example example
Screen Shot 2022-03-21 at 4 51 37 PM Screen Shot 2022-03-21 at 4 52 08 PM Screen Shot 2022-03-21 at 4 53 57 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups

Actual Result:
After cancelling the permissions prompt, I got a Check for updates automatically? dialog

example example example example
Screen Shot 2022-03-23 at 1 22 40 PM Screen Shot 2022-03-23 at 1 23 05 PM Screen Shot 2022-03-23 at 1 23 19 PM Screen Shot 2022-03-23 at 1 23 31 PM
Case 4: disabled background updates, Guest user - 2 FAILED
Using .dmg - FAILED
  1. as an Admin, download and install an old version of the appropriate .dmg builds - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. time-travel 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.37.x version
  10. confirm there are no Update available popups

Actual Results:

Got Check for updates automatically? dialog
Got Software Update available! dialog

example example example example
Screen Shot 2022-03-24 at 1 12 48 PM Screen Shot 2022-03-24 at 1 08 19 PM Screen Shot 2022-03-24 at 10 05 04 AM Screen Shot 2022-03-24 at 10 05 55 AM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. time-travel 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.37.x version
  10. confirm there are no Update available popups

Actual Result:

After launching for the 2nd time, I was prompted to Check for updates? (Not supposed to get this dialog.). Also, after confirming this dialog, was presented with the Updates available! one

example example example
Screen Shot 2022-03-23 at 2 02 12 PM Screen Shot 2022-03-23 at 2 02 23 PM Screen Shot 2022-03-23 at 2 02 31 PM

@LaurenWags
Copy link
Member

LaurenWags commented Mar 22, 2022

Verification for macOS x64 10.15.7 Catalina complete per cases below:

Case 1: background updates, Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)
  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. launch (I didn't use any cmd line args, since there are versions on the normal beta channel to upgrade to)
    ---> got update popup immediately
  3. shut down and relaunch
    ---> no update popup now
  4. close browser, advance system time 3+ hours
  5. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
    ---> get update popup immediately
  6. watch logs, saw mention of an update, but no indication that the update was being downloaded (brave update: did find valid update with AppcastItem(Date: Fri, 18 Mar 2022 00:21:26 +0000, Version: 1.37.97.0))
  7. shut down
  8. launch Brave
  9. check brave://version
    ---> still on 1.37.92, no update was performed
    ---> no update popup
  10. shut down Brave
  11. advance computer clock 3hr again
  12. relaunch brave
    ---> update popup is shown immediately
updatepopup

Logged #21813 for this

Using .dmg - PASSED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support, Cache folder from Caches, com.brave.Browser.* from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. launch (I didn't use any cmd line args, since there are versions on the normal beta channel to upgrade to)
  3. shut down and relaunch
    ---> no update popup (as expected)
  4. close browser, advance system time 3+ hours
  5. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
    ---> no update popup (as expected)
  6. watch logs, saw mention of an update, and mention that update will install on close: brave update: will install update on quit with AppcastItem(Date: Fri, 18 Mar 2022 00:21:26 +0000, Version: 1.37.97.0)
  7. shut down
  8. launch Brave
  9. check brave://version
    ---> update was performed, version is 1.37.97 per log above
    ---> no update popup (as expected)
Case 2: update from brave://settings/help, Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
    ---> get prompt to enter username/password
    ---> if I enter credentials, browser is updated. If I select cancel, browser is not updated.

Note, this also happens on 1.36.x but with additional update prompts, so this is a better experience for the user than it was previously.

prompt3

Updated #21813 with this case.

Using .dmg - PASSED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. Confirm version is updated
  8. Confirm no update prompts/popups at all during this case
Case 3a: update from brave://settings/help (grant permissions), Non-Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
    ---> after entering admin permissions, got prompt below, selected to check automatically
  9. confirm Brave relaunches
  10. confirm update is applied

Added this case to #21813

prompt2
Using .dmg - PASSED
Brave	1.37.92 Chromium: 99.0.4844.51 (Official Build) beta (x86_64) 
Revision	d537ec02474b5afe23684e7963d538896c63ac77-refs/branch-heads/4844@{#875}
OS	macOS Version 10.15.7 (Build 19H1713)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.92 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.92
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
  9. confirm Brave relaunches
  10. confirm update is applied
Case 3b: no update from brave://settings/help (deny permissions), Non-Admin user - PASSED
Using .pkg - PASSED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (x86_64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 10.15.7 (Build 19H1824)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
    --> get prompt for credentials per Prevent the "Update available" Sparkle popup on Mac brave-core#12335
  8. when prompted, deny Admin permissions
  9. relaunch Brave (it may fail to open after denying, so reopen again)
  10. open brave://settings/help and confirm the update was not applied
  11. confirm no other Update available popups
Using .dmg - PASSED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (x86_64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 10.15.7 (Build 19H1824)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
    --> get prompt for credentials
  8. when prompted, deny Admin permissions
  9. relaunch Brave (it may fail to open after denying, so reopen again)
  10. open brave://settings/help and confirm the update was not applied
  11. confirm no other Update available popups
Case 4: no background updates, Non-Admin user - 2 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (x86_64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 10.15.7 (Build 19H1824)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test/appcast.xml
  6. Open brave://version, shut down browser
  7. advance system time 3+ hours
  8. restart Brave with same command line parameters as step 5
    ---> get update popup
    ---> Logs show update was found

Per brave/brave-core#12335 there shouldn't be any popup and there shouldn't be an update applied/offered. Added this case to #21813.

Image 3-24-22 at 1 35 PM

Using .dmg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (x86_64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 10.15.7 (Build 19H1824)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test/appcast.xml
  6. Open brave://version, shut down browser
  7. advance system time 3+ hours
  8. restart Brave with same command line parameters as step 5
    ---> get update popup
    ---> Logs show update was found

Per brave/brave-core#12335 there shouldn't be any popup and there shouldn't be an update applied/offered. Added this case to #21813.

Image 3-24-22 at 1 35 PM

Follow up issue(s): Logged #21813

@stephendonner
Copy link

stephendonner commented Mar 23, 2022

M1, Big Sur

Verification COMPLETE using various Brave builds on an arm64/M1 macOS Big Sur, version 11.6.4

Case 1: background updates, Admin user
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate dmg build
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. shut Brave down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  11. confirm there’s no Update available popup (edited)
example example example example
Screen Shot 2022-03-24 at 12 05 43 PM Screen Shot 2022-03-24 at 11 32 11 AM Screen Shot 2022-03-24 at 3 06 24 PM Screen Shot 2022-03-24 at 3 07 26 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. shut Brave down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  11. confirm there’s no Update available popup (edited)

Actual Result:

Got the Updates available! dialog, instead of being silently upgraded

example example example
Screen Shot 2022-03-23 at 3 17 04 PM Screen Shot 2022-03-23 at 3 17 47 PM Screen Shot 2022-03-23 at 6 18 24 PM
Case 2: update from release, Admin user
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  8. confirm there’s no Update available popup
example example example
Screen Shot 2022-03-23 at 2 47 16 PM Screen Shot 2022-03-23 at 2 47 37 PM Screen Shot 2022-03-23 at 2 48 36 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. get prompt for username/password
  8. select Cancel
  9. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  10. confirm there’s no Update available popup

Actual Result:

Was prompted to log in as Admin to elevate permissions, to install.

example example example example example
Screen Shot 2022-03-23 at 2 57 44 PM Screen Shot 2022-03-23 at 2 58 01 PM Screen Shot 2022-03-23 at 2 58 21 PM Screen Shot 2022-03-23 at 2 58 33 PM Screen Shot 2022-03-23 at 2 58 55 PM
Case 3a: update with granted permissions, Guest user
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  10. confirm there’s no Update available popup
example example example example example example
Screen Shot 2022-03-24 at 2 18 32 PM Screen Shot 2022-03-24 at 2 18 47 PM Screen Shot 2022-03-24 at 2 18 55 PM Screen Shot 2022-03-24 at 2 19 06 PM Screen Shot 2022-03-24 at 2 19 29 PM Screen Shot 2022-03-24 at 2 19 42 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.37.x/1.38.x (beta-branch build)
  10. confirm there’s no Update available popup

Actual Results:

Got Check for updates automatically? dialog
Got Software Update Available! dialog

example example example
Screen Shot 2022-03-24 at 4 01 38 PM Screen Shot 2022-03-24 at 7 01 40 PM Screen Shot 2022-03-24 at 7 03 11 PM
Case 3b: no update from release, Guest user
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups
example example example example example example
Screen Shot 2022-03-24 at 1 10 48 PM Screen Shot 2022-03-24 at 1 11 36 PM Screen Shot 2022-03-24 at 1 12 23 PM Screen Shot 2022-03-24 at 1 14 37 PM Screen Shot 2022-03-24 at 1 14 48 PM Screen Shot 2022-03-24 at 1 16 01 PM
Using .pkg - PASSED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups
example example example example example example
Screen Shot 2022-03-24 at 1 54 35 PM Screen Shot 2022-03-24 at 1 54 50 PM Screen Shot 2022-03-24 at 1 55 33 PM Screen Shot 2022-03-24 at 1 55 46 PM Screen Shot 2022-03-24 at 1 56 07 PM Screen Shot 2022-03-24 at 1 58 24 PM
Case 4: disabled background updates, Guest user Using .dmg - FAILED
  1. as an Admin, download and install an old version of the appropriate .dmg builds - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. advance system time 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.37.x version
  10. confirm there are no Update available popups

Actual Results:

Got Check for updates automatically? dialog
Got Software Update Available! dialog

example example example example
Screen Shot 2022-03-24 at 2 06 26 PM Screen Shot 2022-03-24 at 11 02 38 AM Screen Shot 2022-03-24 at 2 03 30 PM Screen Shot 2022-03-24 at 2 04 18 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. advance system time 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.37.x version
  10. confirm there are no Update available popups
example example example example example
Screen Shot 2022-03-24 at 5 45 36 PM Screen Shot 2022-03-24 at 2 42 21 PM Screen Shot 2022-03-24 at 5 42 26 PM Screen Shot 2022-03-24 at 5 42 39 PM Screen Shot 2022-03-24 at 5 43 10 PM

Actual Results:

Got Check for updates automatically? dialog
Got Software Update Available! dialog

@LaurenWags
Copy link
Member

LaurenWags commented Mar 24, 2022

Verification for macOS arm64 12.3 Monterey complete per cases below:

Case 1: background updates, Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)
  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
    ---> got update popup immediately
  3. shut down and relaunch
    ---> no update popup now
  4. close browser, advance system time 3+ hours
  5. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
    ---> get update popup immediately
  6. watch logs, saw mention of an update, but no indication that the update was being downloaded
  7. shut down
  8. launch Brave
  9. check brave://version
    ---> still on 1.37.104, no update was performed
    ---> no update popup
  10. shut down Brave
  11. advance computer clock 3hr again
  12. relaunch brave
    ---> update popup is shown immediately
1
Using .dmg - PASSED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support, Cache folder from Caches, com.brave.Browser.* from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  3. shut down and relaunch
    ---> no update popup (as expected)
  4. close browser, advance system time 3+ hours
  5. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
    ---> no update popup (as expected)
  6. watch logs, saw mention of an update, and mention that update will install on close
  7. shut down
  8. launch Brave
  9. check brave://version
    ---> update was performed, version is 1.37.105 per logs
    ---> no update popup (as expected)
Case 2: update from brave://settings/help, Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
    ---> get prompt to enter username/password
    ---> if I enter credentials, browser is updated. If I select cancel, browser is not updated.
  7. After entering credentials I get the below prompt as well:
3
Using .dmg - PASSED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. Confirm version is updated
  8. Confirm no update prompts/popups at all during this case
Case 3a: update from brave://settings/help (grant permissions), Non-Admin user - 2 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
    ---> after entering admin permissions, got prompt below, selected to check automatically
  9. confirm Brave relaunches
  10. confirm update is applied

Added this case to #21813

3
Using .dmg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
    ---> got prompt below
  9. confirm Brave relaunches
  10. confirm update is applied
3
Case 3b: no update from brave://settings/help (deny permissions), Non-Admin user - 1 PASSED, 1 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
    --> get prompt for credentials per Prevent the "Update available" Sparkle popup on Mac brave-core#12335
  8. when prompted, deny Admin permissions
  9. relaunch Brave (it may fail to open after denying, so reopen again)
    ---> got prompt below
  10. open brave://settings/help and confirm the update was not applied
3
Using .dmg - PASSED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
    --> get prompt for credentials
  8. when prompted, deny Admin permissions
  9. relaunch Brave (it may fail to open after denying, so reopen again)
  10. open brave://settings/help and confirm the update was not applied
  11. confirm no other Update available popups
Case 4: no background updates, Non-Admin user - 2 FAILED
Using .pkg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Open brave://version, shut down browser
  7. advance system time 3+ hours
  8. restart Brave with same command line parameters as step 5
    ---> get first prompt below, selected check automatically
    ---> get second prompt below
    ---> Logs show update was found
    ---> confirmed able to update via prompts even though I shouldn't see them

Per brave/brave-core#12335 there shouldn't be any popup and there shouldn't be an update applied/offered.

Prompt 1 Prompt 2
3
1
Using .dmg - FAILED
Brave	1.37.104 Chromium: 100.0.4896.46 (Official Build) (arm64) 
Revision	5ca33821b2211805855c77d334353d27c616a7ca-refs/branch-heads/4896@{#584}
OS	macOS Version 12.3 (Build 21E230)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Open brave://version, shut down browser
  7. advance system time 3+ hours
  8. restart Brave with same command line parameters as step 5
    ---> get first prompt below, selected check automatically
    ---> get second prompt below
    ---> Logs show update was found
    ---> confirmed able to update via prompts even though I shouldn't see them

Per brave/brave-core#12335 there shouldn't be any popup and there shouldn't be an update applied/offered.

Prompt 1 Prompt 2
3
1

Follow up issue(s): Logged #21813 to cover failed cases

@stephendonner
Copy link

stephendonner commented Mar 25, 2022

Intel, Big Sur

Verification COMPLETE using various Brave builds on an Intel macOS Big Sur version 11.6.5

Case 1: background updates, Admin user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate dmg build
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. shut Brave down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. shut down
  11. advance system time 3+ hours
  12. relaunch Brave
  13. confirm you’re on the latest 1.38.x beta-branch build
  14. confirm there’s no Update available popup
example example example example
Screen Shot 2022-03-25 at 1 10 17 PM Screen Shot 2022-03-25 at 1 10 39 PM Screen Shot 2022-03-25 at 4 11 13 PM Screen Shot 2022-03-25 at 4 11 58 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. shut Brave down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. shut down
  11. advance system time 3+ hours
  12. relaunch Brave
  13. confirm you’re on the latest 1.38.x beta-branch build
  14. confirm there’s no Update available popup

Actual Results:

Got Software Update Available! popup

example example example example example
Screen Shot 2022-03-25 at 2 17 53 PM Screen Shot 2022-03-25 at 2 18 16 PM Screen Shot 2022-03-25 at 4 11 13 PM Screen Shot 2022-03-25 at 4 11 58 PM Screen Shot 2022-03-25 at 8 24 47 PM
Case 2: update from release, Admin user - 2 PASSED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. confirm you’re on the latest 1.38.x beta-branch build
  8. confirm there’s no Update available popup
example example example example
Screen Shot 2022-03-25 at 12 14 46 PM Screen Shot 2022-03-25 at 12 15 50 PM Screen Shot 2022-03-25 at 12 15 58 PM Screen Shot 2022-03-25 at 12 16 20 PM
Using .pkg - PASSED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. get prompt for username/password
  8. select Cancel
  9. confirm you’re on the latest 1.38.x beta-branch build
  10. confirm there’s no Update available popup
example example example example example example
Screen Shot 2022-03-25 at 12 51 37 PM Screen Shot 2022-03-25 at 12 52 09 PM Screen Shot 2022-03-25 at 12 52 37 PM Screen Shot 2022-03-25 at 12 52 56 PM Screen Shot 2022-03-25 at 12 53 19 PM Screen Shot 2022-03-25 at 1 00 30 PM
Case 3a: update with granted permissions, Guest user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.38.x beta-branch build
  10. confirm there’s no Update available popup
example example example example
Screen Shot 2022-03-25 at 8 43 01 PM Screen Shot 2022-03-25 at 8 43 19 PM Screen Shot 2022-03-25 at 8 43 44 PM Screen Shot 2022-03-25 at 8 44 31 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, grant Admin permissions
  8. confirm Brave relaunches
  9. confirm you’re on the latest 1.38.x beta-branch build
  10. confirm there’s no Update available popup

Actual Results:

Unable to launch Brave after updating, stack from console is:

standarduser@Stephens-MacBook-Pro MacOS % ./Brave\ Browser\ Beta --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,relaunch_handler_mac=5 2>&1
[13161:259:0329/153503.634555:WARNING:external_provider_impl.cc(506)] Malformed extension dictionary for extension: odbfpeeihdkbihmopkbjmoonfanlbfcl.  Key external_update_url has value "", which is not a valid URL.
[0329/153503.999871:WARNING:crash_report_exception_handler.cc(235)] UniversalExceptionRaise: (os/kern) failure (5)
[13172:259:0329/153504.005966:ERROR:child_thread_impl.cc(231)] Invalid PlatformChannel receive right
[13173:259:0329/153504.007614:ERROR:child_thread_impl.cc(231)] Invalid PlatformChannel receive right
zsh: trace trap  ./Brave\ Browser\ Beta  --enable-logging=stderr  2>&1
example example example example
Screen Shot 2022-03-29 at 3 33 56 PM Screen Shot 2022-03-29 at 3 34 26 PM Screen Shot 2022-03-29 at 3 34 36 PM Screen Shot 2022-03-29 at 3 35 12 PM
Case 3b: no update from release, Guest user - 2 PASSED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate .dmg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups
example example example example
Screen Shot 2022-03-25 at 1 37 43 PM Screen Shot 2022-03-25 at 1 38 32 PM Screen Shot 2022-03-25 at 1 41 05 PM Screen Shot 2022-03-25 at 1 41 31 PM
Using .pkg - PASSED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. when prompted, deny Admin permissions
  8. relaunch Brave
  9. open brave://settings/help and confirm you’re still on 1.37.92
  10. confirm no Update available popups
example example example example
Screen Shot 2022-03-25 at 1 53 04 PM Screen Shot 2022-03-25 at 1 54 08 PM Screen Shot 2022-03-25 at 1 54 29 PM Screen Shot 2022-03-25 at 1 55 15 PM
Case 4: disabled background updates, Guest user - 2 FAILED Using .dmg - FAILED
  1. as an Admin, download and install an old version of the appropriate .dmg builds - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. advance system time 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.38.x version
  10. confirm there are no Update available popups

Actual Results:

Confirmed I was NOT updated automatically
Got Software Update available! popup

example

Screen Shot 2022-03-29 at 2 45 01 PM
Using .pkg - FAILED
  1. as an Admin, download and install an old version of the appropriate .pkg build - I chose 1.37.92
  2. open Users & Groups in macOS System Preferences
  3. select Guest User
  4. click to toggle Allow guests to log in to this computer to ON
  5. log out and log back in as Guest User
  6. launch Brave using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-beta/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  7. advance system time 3+ hours
  8. restart Brave
  9. confirm you are NOT upgraded to the latest 1.38.x version
  10. confirm there are no Update available popups

Actual Results:

Confirmed I was NOT updated automatically
Got Check for updates automatically? popup

example example example example example
Screen Shot 2022-03-25 at 11 48 00 AM Screen Shot 2022-03-25 at 11 48 52 AM Screen Shot 2022-03-25 at 2 48 51 PM Screen Shot 2022-03-25 at 2 49 29 PM Screen Shot 2022-03-25 at 2 50 27 PM

@kjozwiak
Copy link
Member

Verification PASSED on macOS 10.13.6 High Sierra

Case 1: background updates, Admin user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
  1. as an Admin, download and install an old version of the appropriate dmg build
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  3. shut Brave down
  4. advance system time 3+ hours
  5. launch using --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test/appcast.xml --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1
  6. watch logs, wait a few minutes until you see something like brave update: will install update on quit with AppcastItem(Date:...
  7. shut down
  8. launch Brave
  9. check brave://version
  10. shut down
  11. advance system time 3+ hours
  12. relaunch Brave
  13. confirm you’re on the latest 1.37.x build
  14. confirm there’s no Update available popup
example example example
Screen Shot 2022-03-30 at 11 18 52 AM Screen Shot 2022-03-30 at 2 21 24 PM Screen Shot 2022-03-30 at 2 23 19 PM
Using .pkg - FAILED
Brave | 1.36.122 Chromium: 99.0.4844.88 (Official Build) (x86_64) 
--- | ---
Revision | 55132f110218a75dc6a4c2c20269efd6e3059177-refs/branch-heads/4844_73@{#2}
OS | macOS Version 10.13.6 (Build 17G14042)
  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.37.104 arm64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
    ---> got update popup immediately
  3. shut down and relaunch
    ---> no update popup now
  4. close browser, advance system time 3+ hours
  5. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
    ---> get update popup immediately
  6. watch logs, saw mention of an update, but no indication that the update was being downloaded
  7. shut down
  8. launch Brave
  9. check brave://version
    ---> still on 1.37.104, no update was performed
    ---> no update popup
  10. shut down Brave
  11. advance computer clock 3hr again
  12. relaunch brave
    ---> update popup is shown immediately
Screen Shot 2022-03-30 at 2 47 21 PM
Case 2: update from brave://settings/help, Admin user - 1 PASSED, 1 FAILED
Using .dmg - PASSED
Brave | 1.36.122 Chromium: 99.0.4844.88 (Official Build) (x86_64) 
--- | ---
Revision | 55132f110218a75dc6a4c2c20269efd6e3059177-refs/branch-heads/4844_73@{#2}
OS | macOS Version 10.13.6 (Build 17G14042)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.36.122` x64.dmg file from https://github.com/brave/brave-browser/releases/tag/v1.36.122
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
  7. Confirm version is updated
  8. Confirm no update prompts/popups at all during this case
Using .pkg - FAILED
Brave | 1.36.122 Chromium: 99.0.4844.88 (Official Build) (x86_64) 
--- | ---
Revision | 55132f110218a75dc6a4c2c20269efd6e3059177-refs/branch-heads/4844_73@{#2}
OS | macOS Version 10.13.6 (Build 17G14042)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.36.122` x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. launch using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  3. click on Brave on the top menu bar
  4. click on About Brave (brave://settings/help)
  5. ensure it checks for and downloads an update
  6. click Relaunch
    ---> get prompt to enter username/password
    ---> if I enter credentials, browser is updated. If I select cancel, browser is not updated.

Received the "Update available prompt/window"

Case 3a: update from brave://settings/help (grant permissions), Non-Admin user - 2 FAILED
Using .pkg - FAILED
Brave | 1.36.122 Chromium: 99.0.4844.88 (Official Build) (x86_64) 
--- | ---
Revision | 55132f110218a75dc6a4c2c20269efd6e3059177-refs/branch-heads/4844_73@{#2}
OS | macOS Version 10.13.6 (Build 17G14042)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.36.122` x64 .pkg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
    ---> after entering admin permissions, got prompt below, selected to check automatically
  9. confirm Brave relaunches
  10. confirm update is applied
Screen Shot 2022-03-30 at 12 15 56 PM
Using .dmg - FAILED
Brave | 1.36.122 Chromium: 99.0.4844.88 (Official Build) (x86_64) 
--- | ---
Revision | 55132f110218a75dc6a4c2c20269efd6e3059177-refs/branch-heads/4844_73@{#2}
OS | macOS Version 10.13.6 (Build 17G14042)

Remove as many Brave artifacts from previous installations as possible (.app from Applications, profile folder from Application Support/BraveSoftware, corresponding ache folder from Caches/BraveSoftware, com.brave.Browser.* folder from Caches, com.brave.Browser.* from Caches/Preferences)

  1. as an Admin, download and install an old version of the appropriate build - I downloaded 1.36.122 x64 .dmg file from https://github.com/brave/brave-browser/releases/tag/v1.37.104
  2. open Users & Groups in macOS System Preferences
  3. Add a non-admin user if one does not exist.
  4. log out and log back in as the non admin user
  5. launch Brave using --enable-logging=stderr --vmodule=sparkle_glue=5,brave_relaunch_handler_mac=5 2>&1 --update-feed-url=https://updates.bravesoftware.com/sparkle/Brave-Browser/test-arm64/appcast.xml
  6. Navigate to brave://settings/help in some way
  7. Once update is downloaded, click "Relaunch"
  8. when prompted, grant Admin permissions
    ---> got prompt below
  9. confirm Brave relaunches
  10. confirm update is applied
Screen Shot 2022-03-30 at 12 15 56 PM

@stephendonner
Copy link

stephendonner commented Mar 30, 2022

Verified PASSED using

Brave 1.37.109 Chromium: 100.0.4896.60 (Official Build) (x86_64)
Revision 6a5d10861ce8de5fce22564658033b43cb7de047-refs/branch-heads/4896@{#875}
OS macOS Version 11.6.5 (Build 20G527)

onmacOS versions (Big Sur, Catalina, High Sierra,Monterey), listed in their respective verification notes.

QA:

@LaurenWags LaurenWags removed the QA/In-Progress Indicates that QA is currently in progress for that particular issue label Sep 28, 2022
@simonhong simonhong reopened this Oct 17, 2022
@simonhong
Copy link
Member

User reported this still happens - https://twitter.com/patrick99e99/status/1581458270295756800

@mherrmann
Copy link

User further reported that they are admin and used the .dmg to install Brave.

The initial fix for this issue consisted of two PRs:

The latter in particularly disabled popups for .pkg files. But it was decided that popups should still be shown there, so the PR was reverted.

We should try to reproduce the scenario - unwanted popups when Brave.dmg was installed and user is admin. If it reproduces, then we should probably fix for that scenario while retaining the current functionality for .pkg. If not, then we need to find how the user's setup is different.

@mherrmann
Copy link

@mihaiplesa and I were unable to reproduce the issue on his macOS machine with a clean admin install via Brave.dmg.

@mherrmann
Copy link

My current suspicion is that the user is still seeing the popups because of an old, persisted Sparkle preference. I've asked them on Twitter to clear the Sparkle preferences. They said they will report back to us.

@mherrmann
Copy link

This issue is closely related to #39567.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants